pax_global_header00006660000000000000000000000064136202505660014517gustar00rootroot0000000000000052 comment=159fd5e4c589c358283cf5f950d7ad8b498c001e catkin_lint-1.6.6/000077500000000000000000000000001362025056600140305ustar00rootroot00000000000000catkin_lint-1.6.6/.gitattributes000066400000000000000000000000511362025056600167170ustar00rootroot00000000000000src/catkin_lint/_version.py export-subst catkin_lint-1.6.6/.github/000077500000000000000000000000001362025056600153705ustar00rootroot00000000000000catkin_lint-1.6.6/.github/workflows/000077500000000000000000000000001362025056600174255ustar00rootroot00000000000000catkin_lint-1.6.6/.github/workflows/ci.yml000066400000000000000000000022051362025056600205420ustar00rootroot00000000000000name: CI on: push: branches: - master pull_request: branches: - master jobs: build: runs-on: ubuntu-latest strategy: max-parallel: 2 fail-fast: false matrix: python-version: [2.7, 3.5] steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install codecov coverage mock nose pip install -r requirements.txt - name: Run tests run: | nosetests --verbose --with-coverage --cover-erase --cover-xml --cover-package=catkin_lint - name: Upload code coverage if: github.event_name == 'push' env: CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} run: | codecov || true catkin_lint-1.6.6/.github/workflows/publish.yml000066400000000000000000000014041362025056600216150ustar00rootroot00000000000000name: Publish package on: release: types: [created] jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python uses: actions/setup-python@v1 with: python-version: '3.x' - name: Install dependencies run: | python -m pip install --upgrade pip pip install setuptools wheel twine - name: Build and publish env: TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} run: | python setup.py sdist bdist_wheel twine upload dist/* catkin_lint-1.6.6/.gitignore000066400000000000000000000001741362025056600160220ustar00rootroot00000000000000/.project /.pydevproject /.settings /.coverage /.vscode /build /coverage.xml /dist /MANIFEST *.pyc __pycache__/ *.egg-info/ catkin_lint-1.6.6/LICENSE000066400000000000000000000027571362025056600150500ustar00rootroot00000000000000BSD 3-Clause License Copyright (c) 2014-2017 Fraunhofer FKIE All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. catkin_lint-1.6.6/MANIFEST.in000066400000000000000000000001651362025056600155700ustar00rootroot00000000000000include *.rst *.txt *.xsd *.py include bash/catkin_lint include test/*.py test/sources.cache/* include versioneer.py catkin_lint-1.6.6/README.rst000066400000000000000000000037331362025056600155250ustar00rootroot00000000000000catkin_lint ############ |github_release| |pypi_badge| |debian_badge| |ci_badge| |codecov_master| **catkin_lint** checks package configurations for the `catkin `_ build system of `ROS `_. I generally recommend that you install **catkin_lint** from my Ubuntu PPA or use the pre-built packages for your Linux distribution. Use the PyPI version if your distribution does not ship **catkin_lint** or you absolutely need the latest release. The version in the ROS Package Archives is updated only once in a while. * `Debian packages `_ * `Fedora packages `_ * `Ubuntu packages `_ * `ROS Package Archive `_ * `Timo's Ubuntu PPA `_ * `PyPI `_ * `Github `_ You can find the documentation with detailed installation instructions at `http://fkie.github.io/catkin_lint `_. .. |ci_badge| image:: https://github.com/fkie/catkin_lint/workflows/CI/badge.svg :target: https://github.com/fkie/catkin_lint/actions .. |codecov_master| image:: https://img.shields.io/codecov/c/github/fkie/catkin_lint/master.svg :target: https://codecov.io/github/fkie/catkin_lint?branch=master .. |pypi_badge| image:: https://img.shields.io/pypi/v/catkin_lint.svg :target: https://pypi.org/project/catkin_lint .. |github_release| image:: https://img.shields.io/github/release/fkie/catkin_lint.svg :target: https://github.com/fkie/catkin_lint/releases .. |debian_badge| image:: https://img.shields.io/badge/dynamic/json.svg?label=Debian&url=https%3A%2F%2Fsources.debian.org%2Fapi%2Fsrc%2Fros-catkin-lint&query=%24.versions%5B0%5D.version&colorB=blue :target: https://packages.debian.org/source/sid/ros-catkin-lint catkin_lint-1.6.6/bash/000077500000000000000000000000001362025056600147455ustar00rootroot00000000000000catkin_lint-1.6.6/bash/catkin_lint000066400000000000000000000020661362025056600171730ustar00rootroot00000000000000# *-* mode: shell-script;-*- if type catkin_lint &> /dev/null; then _catkin_lint_complete() { local arg="${COMP_WORDS[COMP_CWORD]}" local prev="${COMP_WORDS[COMP_CWORD-1]}" if [ "$prev" == "--pkg" -o "$prev" == "--skip-pkg" ] then COMPREPLY=( $( compgen -W "$( rospack list-names 2>/dev/null )" -- "$arg" ) ) return 0 fi if [ "$prev" == "--rosdistro" ] then COMPREPLY=( $( compgen -W "groovy hydro indigo jade kinetic lunar melodic" -- "$arg" ) ) return 0 fi if [ "$prev" == "--ignore" -o "$prev" == "--error" -o "$prev" == "--warning" -o "$prev" == "--notice" ] then COMPREPLY=( $( compgen -W "$( catkin_lint --list-check-ids )" -- "$arg" ) ) return 0 fi compopt -o filenames 2>/dev/null COMPREPLY=( $( compgen -W "-h -q --help --version -W0 -W1 -W2 --strict --text --explain --xml --json --quiet --offline --clear-cache --pkg --skip-pkg --ignore --package-path --rosdistro --resolve-env --error --warning --notice --show-ignored" -- "$arg" ) ) COMPREPLY+=( $( compgen -d -- "$arg" ) ) return 0 } complete -F _catkin_lint_complete catkin_lint fi catkin_lint-1.6.6/bin/000077500000000000000000000000001362025056600146005ustar00rootroot00000000000000catkin_lint-1.6.6/bin/catkin_lint000077500000000000000000000044131362025056600170270ustar00rootroot00000000000000#!/usr/bin/env python # coding=utf-8 # # catkin_lint # Copyright (c) 2013-2019 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import sys import os # Determine the real location of this script, resolving all symlinks bindir = os.path.dirname(os.path.realpath(__file__)) # If catkin_lint uses private modules, they are in the same folder as # the script. The script will be symlinked from e.g. /usr/bin if os.path.isfile(os.path.join(bindir, "catkin_lint", "__init__.py")): sys.path.insert(0, bindir) # If catkin_lint is called from the source tree, we use that module if os.path.isfile(os.path.join(bindir, os.path.pardir, "src", "catkin_lint", "__init__.py")): sys.path.insert(0, os.path.normpath(os.path.join(bindir, os.path.pardir, "src"))) del bindir del os if __name__ == "__main__": from catkin_lint.main import main main() catkin_lint-1.6.6/catkin_lint.xsd000066400000000000000000000026731362025056600170570ustar00rootroot00000000000000 catkin_lint-1.6.6/changelog.txt000066400000000000000000000246321362025056600165270ustar00rootroot00000000000000Version 1.6.6 * Add API call to register custom messages for plugins * Use versioneer for version number management * A few minor bugfixes Version 1.6.5 * Remove unneeded "rosunit" dependency suggestion * Add support for installation with private modules * Add new option --skip-path to exclude paths * More PEP8 style fixes in the source code Version 1.6.4 * Scan launch files for package dependencies * New JSON output format * PEP8 style fixes in the source code Version 1.6.3 * Update sources.cache for unit tests * Gracefully handle missing rosdistro package Version 1.6.2 * Ignore missing depends if nothing is built * Complain about improper inclusion of catkin packages * Add support for interface libraries * A few minor bugfixes Version 1.6.1 * Symlinks in package paths will no longer be resolved * Update list of useless buzzwords * Add support for new list manipulation functions * Add explicit support for Qt5 components * Rename --show-suppressed to --show-ignored for consistency Version 1.6.0 * Consolidated diagnostic messages and removed obsolete ones * Improve support for files generated at build time * Improve support for predefined variables (CMake or catkin) * Show offending location for more diagnostic messages * A few minor bugfixes * Update documentation Version 1.5.6 * New option --show-suppressed to show ignored messages * Improve checks regarding find_package() * Improve checks regarding string comparison operators Version 1.5.5 * Fix problem with relative path checks * Update documentation Version 1.5.4 * Switch to catkin_pkg implementation for package path discovery * Add new check if package folder matches package name * Allow severity overrides for reported problems * Add new "skip" parser directive * Minor bugfixes Version 1.5.3 * Add support for CATKIN_DEVEL_PREFIX and CATKIN_INSTALL_PREFIX * Fix output formatting for detailed explanations * Be more forgiving with empty arguments to PROPERTIES Version 1.5.2 * More bugfixes Version 1.5.1 * Fix a few corner cases which have been missed by the 1.5.0 release Version 1.5.0 * API changes in LintInfo object * Remove CMAKE_MODULE_PATH fromm critical variables list * Introduce new pragmas "ignore_once" and "report" * Add support for generated files via configure_file or add_custom_command * Improve file path handling Version 1.4.21 * Improve handling of static libraries * Return appropriate error code if no input given * Fix regression bug with bash completion Version 1.4.20 * Fix regression bug in subdirectory handling * Make catkin_lint executable with `python -m catkin_lint` Version 1.4.19 * Set values for project version variables * Properly keep track of current project subdirectory * Add color to terminal output Version 1.4.18 * Fix insufficient exception handling on corrupted cache Version 1.4.17 * Fix erroneous missing depend error if a package uses its own plugin * Add support for dynamic_reconfigure scripts Version 1.4.16 * Fix typo in catkin_install_python() command Version 1.4.15 * Clean up check for cmake_minimum_required() * Add support for catkin_install_python() command Version 1.4.14 * Do not complain about setting a default for CMAKE_BUILD_TYPE * Handle argument parse errors in a more transparent way Version 1.4.13 * Handle roswtf plugin special case * Check if installed directories actually exist * Fix conditional logic check * Improved performance Version 1.4.12 * Detect if scripts are installed with install(DIRECTORY) Version 1.4.11 * Revert check if dependency tags in package.xml are sorted Version 1.4.10 * Check if dependency tags in package.xml are sorted * Add exceptions to check for uninstalled executable scripts * Improved test coverage Version 1.4.9 * Improved test coverage * Improved documentation * Check for uninstalled executable scripts Version 1.4.8 * Fix regression bug in --pkg option Version 1.4.7 * Fix workspace overlay bug * Reformat source code for better PEP8 compliance * Warn about Eigen module being deprecated in favor of Eigen3 Version 1.4.6 * Fix parser bug with escaped characters Version 1.4.5 * Make -W1 the new default diagnostic level * Implement policy checks on variables and conditions * Full coverage for unit tests * Bugfixes Version 1.4.4 * New option --resolve-env to resolve $ENV{} references from OS environment * Add missing unit tests for sorted lists Version 1.4.3 * Promote uninstalled target notices to warning * Demote unconfigured build errors to warnings if there are no build targets * Fix diagnostic about test dependenceis which are also run dependencies Version 1.4.2 * Fix off-by-one error in check for sorted lists Version 1.4.1 * Check for sorted lists * Bugfixes Version 1.4.0 * Add rosdistro support and refactor rosdep integration * Improved cache * Bugfixes and code cleanup Version 1.3.11 * Fix wrong column count (exposed by indentation check) * Fix indentation check * Add XML schema to XML output Version 1.3.10 * Improve handling of message_runtime in package format 2 * Check for sensible indentation Version 1.3.9 * Improve handling of tests and their dependencies Version 1.3.8 * Fix cache corruption with relative paths * Check for unknown packages where catkin packages are required Version 1.3.7 * Entry point for integration with catkin_tools * New command line option --skip-pkg * Minor bugfixes and code cleanup Version 1.3.6 * Support for #catkin_lint pragma comments * New command line option --package-path * Support for package format 2 Version 1.3.5 * Preliminary checks for Indigo compatibility * Experimental manifest cache to speed up execution * Let the user ignore specific messages via command line switch * Minor bugfixes Version 1.3.4 * Downgrade upper-case command warning to notice * Fix message about missing build includes * Warn about ambiguous include paths Version 1.3.3 * Bugfix for incorrect file install destination * Check if packages in find_package() need to be REQUIRED * Check that command names are lower-case as recommended * Minor code cleanup Version 1.3.2 * Additional coding style checks * Bugfix for nested loop parsing * Install exception for example programs Version 1.3.1 * Fix copy&paste bug in bash completion * Check for missing COMPONENTS keyword * Refine pkg-config check Version 1.3.0 * New CMake parser * Support macros * Support variable scopes * Check for pkg-config calls * Check for environment variable usage * Check for global variables * Various bugfixes Version 1.2.6 * Bump minimum Python version to 2.7 * Make path handling OS agnostic * More unit tests * Minor bugfixes Version 1.2.5 * Warn about subprojects * Support for add_subdirectory() commands * Support for multi-line strings * Add common path functions to LintInfo Version 1.2.4 * Parser support for escaped characters * Add option to run additional lint checks * Parser support for include() * Fix improper handling of Windows EOL * Build check for existing source files * Move debian folder to its own branch Version 1.2.3 * Allow parentheses in command arguments * Allow catkin as run_depend or test_depend * Use relative imports * Special handling for catkin itself * Include file name in error message if parsing fails * Let setup.py install bash auto completion code Version 1.2.2 * Provide explicit sort order for lint messages Version 1.2.1 * Move include path check to correct unit * More unit tests for build checks * Add more unit tests for build checks * Add missing files to setup manifest * Check for find_package() of message dependencies * Add XML output format * Link to author in README * Convert README to rst markup Version 1.2.0 * Make package downloadable by easy_install * Major rewrite Version 1.1.13 * Support for ROS packages with non-catkin build type Version 1.1.12 * Update documentation * Check for invalid dependencies Version 1.1.11 * Fix regression bug if --pkg is not used * Label all diagnostics as errors in strict mode Version 1.1.10 * Add --pkg option to check packages by name Version 1.1.9 * Remove trailing whitespace * New regex for message packages * Check for CMAKE_BUILD_TYPE modifications * Refactor buzzword list * Make CATKIN_ variables critical * Relax test exception for installed binaries * Fix typo Version 1.1.8 * Improve name collision check Version 1.1.7 * Revert lib suffix check Version 1.1.6 * Improve target name collision check * Remove debug 'raise' which was left in accidentally * Make include check more robust * Reword a few diagnostic messages * Check for redundant test depends * Check for redundant lib prefixes and suffixes Version 1.1.5 * Check include paths Version 1.1.4 * Be more precise about ignored diagnostics Version 1.1.3 * Reword include_directories() warning * Distinguish between warnings and notices Version 1.1.2 * Be more strict about include paths * Check if exported libraries are actually libraries * Check for include()s which should use find_package() * Add support for upper-case prefix in find_package() Version 1.1.1 * Read version directly from module * Fix packaging bug Version 1.1.0 * Refactor source code * Add explanation to diagnostic messages * Fix python installation path Version 1.0.8 * Improve check of special variables * Fix rosbuild_compat_fkie usage check * Use better substitute values for includes and libs Version 1.0.7 * Do not warn twice about not installed export libraries Version 1.0.6 * Relax package version check * Reword warnings and add more filler words * Skip macro() and function() definitions * Use os.pathsep instead of hardcoded colon * Check output names of targets Version 1.0.5 * Add support for rosrepo Version 1.0.4 * Check package descriptions for typical filler words * Forbid unset() of critical variables * Refine header installation test * Tweak filler word list Version 1.0.3 * Reword rosbuild_compat_fkie warning * Check plugin exports * Warn about uninstalled executables Version 1.0.2 * Fix typo * Treat check_catkin_pkg() exceptions as lint errors * Add bash shell completion code Version 1.0.1 * Support find_path() and find_library() for catkin_package() depends Version 1.0.0 * Initial public release catkin_lint-1.6.6/gh-pages/000077500000000000000000000000001362025056600155235ustar00rootroot00000000000000catkin_lint-1.6.6/gh-pages/.gitignore000066400000000000000000000000071362025056600175100ustar00rootroot00000000000000/site/ catkin_lint-1.6.6/gh-pages/docs/000077500000000000000000000000001362025056600164535ustar00rootroot00000000000000catkin_lint-1.6.6/gh-pages/docs/api.md000066400000000000000000000161071362025056600175530ustar00rootroot00000000000000# Register your own checks **catkin_lint** checks are implemented as submodules, and interact with the main program via callbacks. You can write your own checks for **catkin_lint** and load them with the `-c` command line option. Each check is included via an entry function which setups the callbacks for the check. The entry function has a single parameter `linter`. The Linter object provides the following methods: ## require() ```python linter.require(check_name) ``` Checks may depend on the results of other checks. The `require` method ensures that `check_name` is called exactly once. Circular dependencies of the form `A->B->C->A` will be detected and cause an exception. In particular, tests must not require themselves. ## register_message() ```python linter.register_message(msg_id, text, description=None) ``` Adds a custom message that can be issued with [`report()`](#report). Message IDs must be unique. Valid characters are upper-case letters, digits, and underscores only. Custom message IDs are also required to start with `X_`, to avoid conflicts with built-in IDs. The text should be a short one-liner that concisely describes the problem. The description can be a paragraph or two for a more in-depth explanation. The description will reformat line breaks automatically to adjust for different terminal widths. Also, you can have placeholders of the form `${keyword}s`. This method was added in version 1.6.6 ## add_init_hook() ```python def callback(info): ... linter.add_init_hook(callback) ``` Registers an initialization hook that is called when the lint check for a particular package begins. ## add_command_hook() ```python def callback(info, cmd, args): ... linter.add_command_hook(name, callback) ``` Registers a command hook that is called each time the CMake parser encounters the command `name`. The command name and a list of its arguments are passed to the callback. All command names are converted to lower-case. ## add_final_hook() ```python def callback(info): ... linter.add_final_hook(callback) ``` Registers a final hook that is called when the CMake parser has finished parsing the `CMakeLists.txt` file. ## execute_hook() ```python linter.execute_hook(info, cmd, args) ``` Executes all registered command hooks for `cmd`. This is useful for CMake wrapper macros, so you don't have to duplicate all checks for the wrapped call. For example, the `cuda_add_executable` command hook calls the `add_executable` hooks this way. # Info Object For each linted package, **catkin_lint** creates a dedicated info object that is passed to all callbacks. The info object can be used to store relevant data. Typically, the init hook is used to initialize check-specific variables in the info object. As a general rule, checks must not modify variables they do not own, and each check must ensure it uses unique variable names that do not conflict with other checks. The following variables are defined by **catkin_lint** itself: - `env`: A `CatkinEnvironment` object that provides information about the ROS environment. - `path`: The filesystem path to the package source folder - `manifest`: A `catkin_pkg.packages.Package` object that is created from information in the `package.xml`. - `file`: The currently parsed CMake file, relative to the package source folder. Is either `CMakeLists.txt` or an include file. Only valid in command hooks. - `line`: The line number of the currently processed CMake command. Only valid in command hooks. - `commands`: A set of all command names that have been encountered up to this point. - `find_packages`: A set of all packages that have been configured with `find_package()` up to this point. - `targets`: A set of all make targets that have been defined up to this point. - `executables`: A set of all executables that have been defined up to this point. - `libraries`: A set of all libraries that have been defined up to this point. - `var`: A dictionary of all known CMake variables. Note that many variables have mocked values. ## report() ```python info.report(level, msg_id, **kwargs) ``` Reports a problem to the user. `level` must be one of `catkin_lint.linter.ERROR`, `catkin_lint.linter.WARNING`, or `catkin_lint.linter.NOTICE`. The `msg_id` refers to one of the defined diagnostic messages. Certain messages have placeholder variables that must be specified, e.g. `cmd` for the command name. ## source_relative_path() ```python info.source_relative_path(path) ``` Returns a path relative to the package source directory or an absolute path if the path is not within the package. Can handle `${CMAKE_CURRENT_SOURCE_DIR}` correctly. ## binary_relative_path() ```python info.binary_relative_path(path) ``` Returns a path relative to the package build directory or an absolute path if the path is not inside the build directory. Can handle `${CMAKE_CURRENT_BINARY_DIR}` correctly. ## real_path() ```python info.real_path(path) ``` Returns the actual file system path for relative package path as returned by `source_relative_path()`. ## is_internal_path() ```python info.is_internal_path(path) ``` Returns `True` if the path is either below the package source directory or the package build directory. ## path_class() ```python info.path_class(path) ``` Returns a value from the `PathClass` class, which can be one of `SOURCE`, `BINARY`, `DISCOVERED`, or `OTHER`. ## is_valid_path() ```python info.is_valid_path(path, valid=[PathClass.SOURCE, PathClass.BINARY, PathClass.DISCOVERED]) ``` Returns `True` if the path belongs to any of the valid path classes. By default, any path is accepted which is either in the source tree, the a built file, or a path discovered by the appropriate CMake functions such as `find_file()`. ## is_existing_path() ```python info.is_existing_path(path, check=os.path.exists, require_source_folder=False, discovered_path_ok=True) ``` Returns `True` if the path is a valid path argument for a catkin command, which means it's either an existing file or a file that will be generated by `configure_file` or `add_custom_command`. If `discovered_path_ok` is `True`, then a path discovered by `find_package()`, `find_path()`, `find_file()` or `find_library()` will be accepted as well. If `require_source_folder` is `True`, then any files which are not physically located within the source folder will be rejected. ## is_catkin_install_destination() ```python info.is_catkin_install_destination(path, subdir=None) ``` Returns `True` if the path points to the install space of the catkin workspace. If `subdir` is not `None`, it checks if the path points to the specified subdirectory in the install space. # CatkinEnvironment object ## is_catkin_pkg() ```python env.is_catkin_pkg(name) ``` Returns `True` if `name` is a catkin package. ## is_known_pkg() ```python env.is_known_pkg(name) ``` Returns `True` if `name` is a known package. ## ok ```python env.ok ``` Is `True` if the list of ROS dependencies was properly initialized. If it is `False`, the function `is_catkin_pkg()` may return wrong results, so checks for invalid dependencies should be skipped to prevent false positives. catkin_lint-1.6.6/gh-pages/docs/index.md000066400000000000000000000102171362025056600201050ustar00rootroot00000000000000# catkin_lint ## Overview **catkin_lint** checks package configurations for the [catkin](https://github.com/ros/catkin) build system of [ROS](http://www.ros.org>). It runs a static analysis of the `package.xml` and `CMakeLists.txt` files in your package, and it will detect and report a number of common problems. ## Installation ### Install Ubuntu packages Prebuilt packages are available from the official Ubuntu archive and the [ROS repository](http://packages.ros.org/). If you have installed ROS already, downloading **catkin_lint** is as simple as: ```sh $ sudo apt install python-catkin-lint ``` Alternatively, you can use [Timo's PPA](https://launchpad.net/~roehling/+archive/latest) on Launchpad, which will always ship the latest release: ```sh $ sudo add-apt-repository ppa:roehling/latest $ sudo apt update $ sudo apt install python-catkin-lint ``` ### Install Debian packages Prebuilt packages are available from the official Debian archive. Install with ```sh $ sudo apt install python-catkin-lint ``` ### Install Fedora packages Prebuilt packages have been made available by [Ankur Sinha](https://fedoraproject.org/wiki/User:Ankursinha). Install with ```sh $ sudo dnf install python-catkin_lint ``` ### Download from PyPI You can download and install **catkin_lint** from the [Python Package Index](https://pypi.python.org/pypi/catkin_lint) with: ```sh $ sudo pip install catkin_lint ``` ### Install from Source You can clone **catkin_lint** from [GitHub](https://github.com/fkie/catkin_lint): ```sh $ git clone https://github.com/fkie/catkin_lint $ cd catkin_lint $ sudo python setup.py install ``` ## Running If **catkin_lint** is invoked with one or more paths as parameters, it searches for packages recursively and checks all of them. Alternatively, the `--pkg` option can be used to add the path of a particular ROS package. If neither paths nor packages are specified, **catkin_lint** looks for a package in the current working directory. A more detailed list of command line options can be obtained by running ```sh $ catkin_lint --help ``` ## Limitations **catkin_lint** works by emulating the way CMake processes your package during a build. However, since it does not _really_ build anything, the emulation is not perfect. For instance, - **catkin_lint** does not evaluate boolean expressions in `if()` clauses There is some special purpose code to detect `if(CATKIN_ENABLE_TESTING)` blocks, but in general, **catkin_lint** will just execute all statements, even mutually exclusive `if()`/`else()` blocks. - **catkin_lint** uses mock values for `find_package()`, `find_file()`, and `find_library()` calls. That means that those function calls will always succeed and "find" something. - **catkin_lint** ignores `function()` definitions. It does, however, expand macros and `foreach()` loops. ## Diagnostic Levels **catkin_lint** has [messages](messages.md) in three different categories: errors, warnings, and notices. The `-W` option controls which problems are reported to the user: - `-W0`: only errors are reported - `-W1`: errors and warnings are reported (this is the default) - `-W2`: errors, warnings, and notices are reported Normally, **catkin_lint** returns a non-zero exit code if and only if errors occurred. The `--strict` option causes **catkin_lint** to treat any reported problem as error. You can also customize the category for particular diagnostics with `--error ID`, `--warning ID`, or `--notice ID`. You can also ignore messages entirely with `--ignore ID`. ### Errors Errors are severe enough to break the build and/or produce unintended side effects. Usually, they violate the rules outlined in the [catkin manual](http://docs.ros.org/api/catkin/html/). ### Warnings Potential errors which may indicate a bug in your package but may be justified for reasons **catkin_lint** cannot discern. Constructs which trigger a warning can usually be modified in a way that is functionally equivalent but more robust. ### Notices Issues which are not objectionable from a technical view point but should be addressed to improve the quality of the package. Many notices highlight violations of the recommendations and best practises from the catkin manual. catkin_lint-1.6.6/gh-pages/docs/messages.md000066400000000000000000000702701362025056600206120ustar00rootroot00000000000000# catkin_lint diagnostic messages This is a list of all messages which might be shown by **catkin_lint**. Each diagnostic has a unique ID (such as *catkin_order_violation*), which you can use to disable certain messages, either with the command line option `--ignore ID`, or by adding a pragma line `#catkin_lint: ignore ID` at the beginning of the CMakeLists.txt file. As a third option, you can add a pragma line `#catkin_lint: ignore_once ID` right before the offending statement. Use this if you want to ignore a particular instance of a problem but still be notified if the same problem occurs someplace else. You may also use `#catkin_lint: report ID` at any point to override a previous `ignore`. Since version 1.5.4, you may also customize the severity with the command line options `--error ID`, `--warning ID`, or `--notice ID`. You can also add the pragma line `#catkin_lint: skip` in any `if()`, `foreach()`, or `macro()` block, which will instruct the parser to ignore all remaining commands in the block until the `else()`, `endif()`, `endforeach()`, or `endmacro()` statement. ## 'pkg' in find_package(catkin) is not a catkin package - **ID**: no_catkin_component - **Severity**: error - **Explanation**: The find_package(catkin) call can list other catkin packages as dependencies with the COMPONENTS keyword. This is shorter than multiple find_package() calls, but does not work for system dependencies. ## cmd() is called before find_package(catkin) - **ID**: catkin_order_violation - **Severity**: error - **Explanation**: Catkin macros cannot be called before catkin has been configured with find_package(catkin). ## cmd() is not allowed in meta packages - **ID**: invalid_meta_command - **Severity**: error - **Explanation**: Meta packages do not contain code or data and are merely dependency lists with very strict requirements for the format of the CMakeLists.txt file. ## cmd() needs missing directory 'directory' - **ID**: missing_directory - **Severity**: error - **Explanation**: This catkin command processes a particular directory which is missing from the package source folder. ## cmd() needs missing file 'file' - **ID**: missing_file - **Severity**: error - **Explanation**: This catkin command processes a particular file which is missing from the package source folder. ## cmd() should be all lower-case - **ID**: cmd_case - **Severity**: notice - **Explanation**: The catkin manual recommends that all commands be written in lower case. ## cmd() used without if(CATKIN_ENABLE_TESTING) - **ID**: unguarded_test_cmd - **Severity**: error - **Explanation**: You have used a test command without properly guarding it by a if(CATKIN_ENABLE_TESTING) block. ## cmd() uses directory 'directory' which is not in package - **ID**: external_directory - **Severity**: warning - **Explanation**: This catkin command uses a directory which lies outside of the package source folder. While this may work in your particular setup, you cannot assume file locations in general. Use find_path() to detect external locations insteed. ## cmd() uses file 'file' which is not in package - **ID**: external_file - **Severity**: warning, error - **Explanation**: This catkin command uses a file which lies outside of the package source folder. While this may work in your particular setup, you cannot assume file locations in general. Use find_file() to detect external locations insteed. ## export plugin file 'file' is not installed to ${CATKIN_PACKAGE_SHARE_DESTINATION} - **ID**: uninstalled_plugin - **Severity**: warning, error - **Explanation**: Your package can be used from the devel space but cannot be installed properly, because a plugin declaration file which is listed in your package.xml is not installed to the correct location. ## export plugin file reference must start with '${prefix}/' - **ID**: plugin_export_prefix - **Severity**: error - **Explanation**: The ${prefix} variable is carefully overloaded to work with both devel space and install space and must be used in all tags. ## export plugin refers to missing file 'file' - **ID**: missing_plugin - **Severity**: error - **Explanation**: A plugin declaration file which is listed in your package.xml is missing from the package source folder. ## first_cmd() is called before second_cmd() - **ID**: order_violation - **Severity**: error - **Explanation**: Certain configuration macros must be called in a specific order as specified by the catkin build manual. Failure to do so may lead to improper configuration of the package and build problems. ## old_cmd() is deprecated, use new_cmd() instead - **ID**: deprecated_cmd - **Severity**: error - **Explanation**: Some macros have been deprecated and replaced by newer versions. Please upgrade your CMakeLists.txt to ensure compatibility with future caktin versions. ## type_depend 'pkg' is not listed in catkin_package() - **ID**: missing_catkin_depend - **Severity**: error - **Explanation**: You have a catkin runtime dependency which is not exported in the CATKIN_DEPENDS stanza of the catkin_package(). ## wrong_type_depend 'pkg' should be a right_type_depend - **ID**: wrong_depend - **Severity**: error - **Explanation**: You have listed a package as the wrong dependency type. build_depends are needed to build your package (as in compile the declared executables and libraries). run_depends are needed at runtime to run the nodes or use the libraries and exported headers in other projects. buildtool_depends are significant only for cross-compiling; in that case, buildtool_depends are host architecture (and run during the build process) while build_depends are target architecture (and are linked against). test_depends are additional run_depends which only apply to unit tests. ## CMake module 'old_module' is deprecated, use 'new_module' instead - **ID**: deprecated_cmake_module - **Severity**: warning - **Explanation**: Some CMake modules have been provided by cmake_modules in the past, but are now provided by the system package or CMake itself. Please upgrade your CMakeLists.txt to ensure compatibility with future catkin versions. ## OS error: msg - **ID**: os_error - **Severity**: error - **Explanation**: An operating system error has occured. This is not a linting problem per se but might be caused by a missing or unreadable file. ## call to find_package(pkg) shadows previously selected components - **ID**: shadowed_find - **Severity**: error - **Explanation**: You have more than one find_package() call for a package, and the COMPONENTS list of the later call does not include a previously chosen component. ## catkin_metapackage() in regular package - **ID**: wrong_catkin_metapackage - **Severity**: error - **Explanation**: The catkin_metapackage() command signals your intent to declare a meta package, but the package.xml does not contain a tag. ## catkin_package() exports non-package include path - **ID**: external_include_path - **Severity**: error - **Explanation**: You listed one or more include paths in the INCLUDE_DIRS stanza of your catkin_package() call which are not part of your package. If you want to export include paths of other modules, use find_package(), find_path(), and/or find_library() and add the dependency to the DEPENDS stanza. ## catkin_package() exports package include path that is not installed - **ID**: uninstalled_include_path - **Severity**: warning, error - **Explanation**: Your package can be used from the devel space but cannot be installed properly, because the header files will not be copied to the proper location. ## catkin_package() exports pkg-config module 'pkg' - **ID**: exported_pkg_config - **Severity**: error - **Explanation**: Although CMake can invoke pkg-config to detect other modules, this does not work well with catkin, as pkg-config may require you to add link directories. Use the results of pkg_check_module() as hint for find_path() and find_library() instead. ## catkin_package() in meta package - **ID**: wrong_catkin_package - **Severity**: error - **Explanation**: Meta packages use the catkin_metapackage() command to declare a meta package. This performs additional checks and ensures that all requirements are met. ## catkin_package() lists 'pkg' as catkin package but it is not - **ID**: system_as_catkin_depend - **Severity**: error - **Explanation**: In your catkin_package() call, you have listed a system dependency in the CATKIN_DEPENDS stanza, but it belongs in the DEPENDS stanza instead. ## catkin_package() lists 'pkg' as system package but it is not - **ID**: catkin_as_system_depend - **Severity**: error - **Explanation**: In your catkin_package() call, you have listed a catkin package in the DEPENDS stanza, but it belongs in the CATKIN_DEPENDS stanza instead. ## catkin_package() lists unconfigured system package 'pkg' - **ID**: unconfigured_system_depend - **Severity**: error - **Explanation**: In order to export a system package as dependency, you must either call find_package(pkg) first or initialize the pkg_INCLUDE_DIRS and pkg_LIBRARIES variables manually. ## condition 'cond' is ambiguous - **ID**: ambiguous_condition - **Severity**: warning - **Explanation**: Historically, the if() command will interpret a single token as a variable name and transparently resolve it if possible. Explicit variable references like if(${var}) can lead to incorrect results if ${var} resolves to a different variable name. Use if(var) instead. ## duplicate cmd() - **ID**: duplicate_cmd - **Severity**: error - **Explanation**: You have called this command more than once, but this does not make sense. If the calls use different arguments, consolidate them into a single call, otherwise simply remove the second. ## duplicate find_package(pkg) - **ID**: duplicate_find - **Severity**: warning - **Explanation**: You called find_package() more than once for a particular package, which is not needed except for very specific, advanced circumstances. ## duplicate include path ${pkg_INCLUDE_DIRS} - **ID**: duplicate_include_path - **Severity**: warning - **Explanation**: Include paths of packages listed in the find_package(catkin) command are added implicitly by the ${catkin_INCLUDE_DIRS} variable. There is no need to add it a second time. ## environment variables should not be used - **ID**: env_var - **Severity**: warning - **Explanation**: The behavior of your build should not depend on any environment variables. ## executable file is not installed to bin destination - **ID**: wrong_bin_install_destination - **Severity**: warning - **Explanation**: Your package installs one or more files to an unexpected location. Executable files should end up in either ${CATKIN_GLOBAL_BIN_DESTINATION} or ${CATKIN_PACKAGE_BIN_DESTINATION}. ## exported include path 'path' does not exist - **ID**: missing_include_path - **Severity**: error - **Explanation**: You have listed an invalid include path in the INCLUDE_DIRS stanza of the catkin_package() command. ## exported library 'target' cannot have different output name - **ID**: export_lib_renamed - **Severity**: error - **Explanation**: Due to a limitation of the catkin build system, the catkin_package() library export function will break if the logical target name is not equal to the actual library name. ## exported library 'target' is not a library - **ID**: export_lib_not_lib - **Severity**: error - **Explanation**: You listed a library in the LIBRARIES stanza of your catkin_package() call, but it really is an executable. ## exported library 'target' is not installed - **ID**: uninstalled_export_lib - **Severity**: warning, error - **Explanation**: Your package can be used from the devel space but cannot be installed properly, because a library that is exported via catkin_package() will not be copied to the proper location. ## exported package include path but no exported library - **ID**: missing_export_lib - **Severity**: warning - **Explanation**: Your package exports a package include path and builds at least one library, which suggests that you may want to export the library to other packages as well. ## extra arguments in cmd() - **ID**: endblock_args - **Severity**: notice - **Explanation**: The catkin manual recommends that cmd and other end-of-block statements have no arguments. If you have nested blocks, you should indent them properly instead. ## file 'script' is executable but not installed - **ID**: uninstalled_script - **Severity**: warning - **Explanation**: Your package contains a file that is marked as executable but not installed. If it is a script intended to be run (e.g. with rosrun), it will not work outside the devel tree. If it is not an executable script, you should fix the file permissions. ## file setup.py found but no catkin_python_setup() call - **ID**: missing_python_setup - **Severity**: error - **Explanation**: The catkin_python_setup() call is required to properly configure python modules, and the existing setup.py indicates that your package provides one or more python modules. ## find_package(pkg) before find_package(cmake_modules) - **ID**: missing_cmake_modules - **Severity**: warning - **Explanation**: You need to find_package() cmake_modules before you can use one of its custom configuration modules. ## find_package(pkg) has no REQUIRED option - **ID**: missing_required - **Severity**: warning, error - **Explanation**: The package cannot build without this dependency, so it should be marked as REQUIRED accordingly. Use if(pkg_FOUND) clauses to use optional packages. ## generate_messages() called but no message declared - **ID**: unused_generate_msg - **Severity**: warning - **Explanation**: The generate_messages() call creates the messages, services, and actions which are declared in your package. If your package does not supply any of these, you do not have to call generate_messages() at all. ## global variable 'var' should contain project name - **ID**: global_var_collision - **Severity**: notice - **Explanation**: Global variables and options are stored in the cache. You should prefix your variable names with the project name to avoid name collisions with other packages. ## include path 'path' is exported but not used for the build - **ID**: unused_include_path - **Severity**: warning - **Explanation**: You have listed an include path in the INCLUDE_DIRS stanza of the catkin_package() command, but that path is not mentioned in any include_directories() call. ## include paths 'path' and 'parent_path' are ambiguous - **ID**: ambiguous_include_path - **Severity**: warning - **Explanation**: You have used two include paths where one is a parent of the other. Thus the same headers can be included with two different include paths which may confuse users. It is recommended that you keep your include paths consistent. ## install(type ... dest) does not install to ${CATKIN_INSTALL_PREFIX} - **ID**: wrong_install_destination - **Severity**: warning - **Explanation**: Your package installs one or more files to an unexpected location. Catkin provides a number of standard variables ${CATKIN_*_DESTINATION} to specify installation folders. You should use those to ensure that your package will continue to work if the file system layout is changed in the future. ## launch configuration needs type_depend on 'pkg' - **ID**: launch_depend - **Severity**: warning - **Explanation**: Your package refers to another package in one of its launch files, but you do not have this dependency in your package.xml ## library output name 'output' has redundant 'lib' prefix - **ID**: redundant_lib_prefix - **Severity**: notice - **Explanation**: Libraries are automatically prefixed with 'lib', so your library will end up with a file name like 'liboutput.so'. You can use set_target_properties(... PROPERTIES OUTPUT_NAME ...) to give your library a different file name without changing the target name. ## line is not indented properly - **ID**: indentation - **Severity**: notice - **Explanation**: For better readability, each command should be placed on its own line. if() and foreach() bodies should be indented by one or more extra spaces. ## link_directories() must not be used for system depends - **ID**: external_link_directory - **Severity**: error - **Explanation**: Directories which are added to the search path with link_directories() will not be propagated to dependent packages. Use find_package() or find_library() with the appropriate PATHS or HINTS instead. ## list name should be sorted - **ID**: unsorted_list - **Severity**: notice - **Explanation**: The catkin manual recommends that list element be kept in order. ## malformed argument list: msg - **ID**: argument_error - **Severity**: warning - **Explanation**: You invoked a CMake command with a malformed argument list. Most likely, you forgot to properly quote variables which may be empty or undefined. ## meaningless package description 'text' - **ID**: description_meaningless - **Severity**: notice - **Explanation**: Your package description merely consists of typical filler words which do not actually describe the contents of your package in a meaningful way. ## meta packages must not have type_depends - **ID**: invalid_meta_depend - **Severity**: error - **Explanation**: Meta packages do not contain code or data and are merely dependency lists. As meta packages do neither build nor test anything, the only valid dependency type is the run_depend. ## misconfigured catkin package 'pkg' - **ID**: misconfigured_catkin_package - **Severity**: error - **Explanation**: You use an unsupported way to include a catkin package in your build. Even though this might work in your particular case, you should use the proper find_package() mechanism to make sure that all relevant CMake macros will be run. ## missing cmd() - **ID**: missing_cmd - **Severity**: error - **Explanation**: You failed to call a command that is required for your package to work. Please refer to the catkin build manual for details. ## missing type_depend on 'pkg' - **ID**: missing_depend - **Severity**: error - **Explanation**: Your package uses features of another package but you failed to list this dependency in your package.xml ## missing COMPONENTS keyword before 'pkg' - **ID**: missing_components - **Severity**: notice - **Explanation**: The find_package(catkin) call can add other catkin packages as dependencies with the COMPONENTS keyword. The find_package() command lists additional packages but has no COMPONENTS keyword. ## missing find_package(pkg) - **ID**: missing_find - **Severity**: error - **Explanation**: You failed to call find_package() for a dependency of your package. ## missing generate_messages() - **ID**: missing_generate_msg - **Severity**: error - **Explanation**: The generate_messages() call creates the messages, services, and actions which are declared in your package by add_message_files(), add_service_files(), and add_action_files() respectively. ## missing include_directories(${catkin_INCLUDE_DIRS}) - **ID**: unused_catkin_include_dirs - **Severity**: error - **Explanation**: You must add the catkin include paths to your include search list, or you might experience build failures. ## operands for operator op should be quoted strings - **ID**: unquoted_string_op - **Severity**: notice - **Explanation**: The catkin manual recommends that if() conditions with string operators should have the operands enclosed in double quotes. ## package 'pkg' should be listed in catkin_package() - **ID**: suggest_catkin_depend - **Severity**: warning - **Explanation**: Your package configures another package as build dependency, it is listed as run_depend in your package.xml, and its name suggests that it contains ROS messages. In that case, you must add it to the CATKIN_DEPENDS stanza of your catkin_package() ## package description starts with boilerplate 'text' - **ID**: description_boilerplate - **Severity**: notice - **Explanation**: Your package description starts with a number of typical filler words which do not actually describe the contents of your package. Typically, you can simply delete these words from the description, and it will still make sense and be much more concise. ## package exports export plugin but does not type_depend on 'pkg' - **ID**: plugin_depend - **Severity**: warning - **Explanation**: Your package exports a plugin for another package, but fails to list said package as a dependency. ## package path name 'path' differs from package name - **ID**: package_path_name - **Severity**: notice - **Explanation**: Your package resides in a folder that has a different name than the package itself. This is confusing and might break the assumptions of some tools. ## parse error: msg - **ID**: parse_error - **Severity**: warning - **Explanation**: Your package has a malformed file that could not be processed for linting. ## project name 'name' differs from package name - **ID**: project_name - **Severity**: error - **Explanation**: The CMake project name must be identical to the package name. For backwards compatibility reasons, both names should also be identical to the name of the source folder that contains the package. ## referenced target 'target' is not defined - **ID**: undefined_target - **Severity**: error - **Explanation**: Your package installs or exports a CMake target which is not defined at all. This could be a typo, or the target is implicitly defined by a macro that is unknown to **catkin_lint**. ## script 'file' has no interpreter shebang line - **ID**: missing_shebang - **Severity**: error - **Explanation**: All interpreter scripts need an appropriate shebang line, i.e. the first line has to start with '#!' and needs to name the full path to the interpreter executable. ## script 'script' must be executable - **ID**: script_not_executable - **Severity**: error - **Explanation**: Your package contains a script file that has to be marked as executable. On Un*x systems, run 'chmod +x "script"' to set the executable bit. ## subdirectory 'subdir' contains a subproject - **ID**: subproject - **Severity**: warning - **Explanation**: Your package has an independent subproject. This can interact with catkin in unusual ways and is strongly discouraged. No further checks are performed in this subdirectory. ## subdirectory 'subdir' is added a second time - **ID**: duplicate_subdir - **Severity**: error - **Explanation**: You added another subdirectory with add_subdirectory() multiple times. This can also happen if you accidentally created a loop where subdir A adds subdir B, which adds subdir A again. ## subdirectory 'subdir' is missing - **ID**: missing_subdir - **Severity**: error - **Explanation**: You specified a subdirectory which does not exists or is unreadable. ## subdirectory subdir is not in package - **ID**: external_subdir - **Severity**: error - **Explanation**: You added another subdirectory with add_subdirectory(), but the specified path points outside of the package source directory. ## target 'export_target' depends on target 'target' which is not installed - **ID**: uninstalled_depend - **Severity**: error - **Explanation**: Your package can be used from the devel space but cannot be installed properly, because one of your installed targets depends on a library from your package that is not installed as well. ## target 'target' has invalid characters in its output file name - **ID**: invalid_target_output - **Severity**: error - **Explanation**: The output file that your target is supposed to generate contains invalid characters in its name. You probably forget to call set_target_properties(... PROPERTIES OUTPUT_NAME ...) ## target 'target' is not installed - **ID**: uninstalled_target - **Severity**: warning - **Explanation**: Your package can be used from the devel space but cannot be installed properly, because the build target will not be copied to the proper location. ## test_depend 'pkg' used without if(CATKIN_ENABLE_TESTING) - **ID**: unguarded_test_depend - **Severity**: error - **Explanation**: You have used a test dependency without properly guarding it by a if(CATKIN_ENABLE_TESTING) block. You must add a proper build dependency if you wish to use this package even if tests are disabled. ## unconfigured build_depend on 'pkg' - **ID**: unconfigured_build_depend - **Severity**: error - **Explanation**: You declare a build dependency on another package but neither call find_package() nor have it listed as catkin component in the find_package(catkin) call. ## unconfigured message dependency 'pkg' - **ID**: unconfigured_msg_depend - **Severity**: error - **Explanation**: Your messages depend on another package which is neither find_package()'d nor listed as a component in the find_package(catkin) call. ## unknown package 'pkg' - **ID**: unknown_package - **Severity**: error - **Explanation**: You are referring to a package which seems to be neither a catkin package nor a known system dependency. You may have misspelled the name, or your rosdep database needs to be refreshed with "rosdep update". ## unused type_depend on 'pkg' - **ID**: unused_depend - **Severity**: error - **Explanation**: You have a listed a package dependency but do not appear to use any of the features it provides. ## use ${PROJECT_NAME} instead of 'name' - **ID**: literal_project_name - **Severity**: notice - **Explanation**: The catkin manual recommends that you use the ${PROJECT_NAME} variable instead of the literal project name. ## use find_package(pkg) instead of include(Findpkg.cmake) - **ID**: find_by_include - **Severity**: error - **Explanation**: The FindXXX.cmake modules are intended to be included by the find_package() command. ## use of link_directories() is strongly discouraged - **ID**: link_directory - **Severity**: warning - **Explanation**: Directories which are added to the search path with link_directories() will not be propagated to dependent packages. You should avoid this command or at least be aware that it might not work as expected in dependent packages. ## variable var is modified - **ID**: critical_var_append - **Severity**: warning - **Explanation**: You have appended extra data to a critical CMake variable. This might break the build on different systems or affect the global catkin workspace in unintended ways. ## variable var is modified - **ID**: immutable_var - **Severity**: error - **Explanation**: You have modified a CMake variable that is initialized by CMake itself and must not be modified under any circumstances. ## variable var is overwritten - **ID**: critical_var_overwrite - **Severity**: error - **Explanation**: You have overwritten a critical CMake variable and its original content is lost. This will most likely break the build on different systems or affect the global catkin workspace in unintended ways. ## variable CMAKE_BUILD_TYPE is overwritten unconditionally - **ID**: cmake_build_type - **Severity**: error - **Explanation**: If you wish to provide a default value for CMAKE_BUILD_TYPE, make sure that you do not overwrite user preferences. You should guard the set() command with an appropriate if(NOT CMAKE_BUILD_TYPE) block. catkin_lint-1.6.6/gh-pages/mk_messages.py000077500000000000000000000062441362025056600204040ustar00rootroot00000000000000#!/usr/bin/python import sys import os import re srcpath = os.path.normpath(os.path.join(os.path.dirname(__file__), os.pardir, "src")) sys.path.insert(0, srcpath) if __name__ == "__main__": from catkin_lint.diagnostics import message_list severity = {} for curdir, _, files in os.walk(os.path.join(srcpath, "catkin_lint")): for fn in files: with open(os.path.join(curdir, fn), "r") as f: for line in f.readlines(): m = re.search(r'info.report\((.*?), "(.*?)"', line) if m: if m.group(2) not in severity: severity[m.group(2)] = set() for s in ["ERROR", "WARNING", "NOTICE"]: if s in m.group(1): severity[m.group(2)].add(s.lower()) with open(os.path.join(os.path.dirname(__file__), "docs", "messages.md"), "w") as f: f.write("""\ # catkin_lint diagnostic messages This is a list of all messages which might be shown by **catkin_lint**. Each diagnostic has a unique ID (such as *catkin_order_violation*), which you can use to disable certain messages, either with the command line option `--ignore ID`, or by adding a pragma line `#catkin_lint: ignore ID` at the beginning of the CMakeLists.txt file. As a third option, you can add a pragma line `#catkin_lint: ignore_once ID` right before the offending statement. Use this if you want to ignore a particular instance of a problem but still be notified if the same problem occurs someplace else. You may also use `#catkin_lint: report ID` at any point to override a previous `ignore`. Since version 1.5.4, you may also customize the severity with the command line options `--error ID`, `--warning ID`, or `--notice ID`. You can also add the pragma line `#catkin_lint: skip` in any `if()`, `foreach()`, or `macro()` block, which will instruct the parser to ignore all remaining commands in the block until the `else()`, `endif()`, `endforeach()`, or `endmacro()` statement. """) messages = {} for key in sorted(message_list.keys()): if key not in severity: print("Warning: unused message '%s'" % key) continue short_text, long_text = message_list[key] long_text = long_text.replace("\n", " ") long_text = long_text.replace("catkin_lint", "**catkin_lint**") short_text = re.sub(r"%\((.*?)\)s", r"\1", short_text) long_text = re.sub(r"%\((.*?)\)s", r"\1", long_text) long_text = re.sub(r"([a-z_]+\(.*?\))", r"\1", long_text) long_text = re.sub(r" +", " ", long_text) long_text = long_text.strip() short_text = short_text.strip() messages[(short_text, key.lower())] = (long_text, ", ".join(list(severity[key]))) for msg, key in sorted(messages.keys()): long_text, severities = messages[(msg, key)] f.write("## %s\n\n" % msg) f.write("- **ID**: %s\n" % key) f.write("- **Severity**: %s\n" % severities) f.write("- **Explanation**: %s\n" % long_text) f.write("\n") catkin_lint-1.6.6/gh-pages/mkdocs.yml000066400000000000000000000001601362025056600175230ustar00rootroot00000000000000site_name: "catkin_lint" theme: readthedocs pages: - Home: 'index.md' - Messages: 'messages.md' - API: 'api.md' catkin_lint-1.6.6/requirements.txt000066400000000000000000000000421362025056600173100ustar00rootroot00000000000000catkin_pkg lxml rosdep rosdistro catkin_lint-1.6.6/setup.cfg000066400000000000000000000003161362025056600156510ustar00rootroot00000000000000[bdist_wheel] universal = 1 [versioneer] VCS = git style = pep440 versionfile_source = src/catkin_lint/_version.py versionfile_build = catkin_lint/_version.py tag_prefix = parentdir_prefix = catkin-lint- catkin_lint-1.6.6/setup.py000066400000000000000000000025521362025056600155460ustar00rootroot00000000000000#!/usr/bin/env python # coding=utf-8 from setuptools import setup import versioneer import os def read(fname): return open(os.path.join(os.path.dirname(__file__), fname)).read() setup( name="catkin_lint", description="Check catkin packages for common errors", long_description=read("README.rst"), author="Timo Röhling", author_email="timo.roehling@fkie.fraunhofer.de", license="BSD", url="https://github.com/fkie/catkin_lint", keywords=["catkin", "ROS"], packages=["catkin_lint", "catkin_lint.checks"], package_dir={"": "src"}, data_files=[("share/bash-completion/completions", ["bash/catkin_lint"])], scripts=["bin/catkin_lint"], version=versioneer.get_version(), cmdclass=versioneer.get_cmdclass(), install_requires=["catkin_pkg", "lxml"], test_suite="nose.collector", classifiers=[ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Topic :: Software Development :: Quality Assurance", "Environment :: Console", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3" ], entry_points={ "catkin_tools.commands.catkin.verbs": [ "lint = catkin_lint.main:description", ], }, ) catkin_lint-1.6.6/src/000077500000000000000000000000001362025056600146175ustar00rootroot00000000000000catkin_lint-1.6.6/src/catkin_lint/000077500000000000000000000000001362025056600171165ustar00rootroot00000000000000catkin_lint-1.6.6/src/catkin_lint/__init__.py000066400000000000000000000035521362025056600212340ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. __author__ = "Timo Röhling " __copyright__ = "Copyright (c) 2013-2016 Fraunhofer FKIE" __license__ = "BSD" __all__ = ["cmake", "diagnostics", "linter", "environment", "main", "output", "ros", "util"] from ._version import get_versions __version__ = get_versions()['version'] del get_versions catkin_lint-1.6.6/src/catkin_lint/__main__.py000066400000000000000000000031011362025056600212030ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. from .main import main main() catkin_lint-1.6.6/src/catkin_lint/_version.py000066400000000000000000000441341362025056600213220ustar00rootroot00000000000000 # This file helps to compute a version number in source trees obtained from # git-archive tarball (such as those provided by githubs download-from-tag # feature). Distribution tarballs (built by setup.py sdist) and build # directories (produced by setup.py build) will contain a much shorter file # that just contains the computed version number. # This file is released into the public domain. Generated by # versioneer-0.18 (https://github.com/warner/python-versioneer) """Git implementation of _version.py.""" import errno import os import re import subprocess import sys def get_keywords(): """Get the keywords needed to look up the version information.""" # these strings will be replaced by git during git-archive. # setup.py/versioneer.py will grep for the variable names, so they must # each be defined on a line of their own. _version.py will just call # get_keywords(). git_refnames = " (HEAD -> master, tag: 1.6.6)" git_full = "159fd5e4c589c358283cf5f950d7ad8b498c001e" git_date = "2020-02-10 13:49:58 +0100" keywords = {"refnames": git_refnames, "full": git_full, "date": git_date} return keywords class VersioneerConfig: """Container for Versioneer configuration parameters.""" def get_config(): """Create, populate and return the VersioneerConfig() object.""" # these strings are filled in when 'setup.py versioneer' creates # _version.py cfg = VersioneerConfig() cfg.VCS = "git" cfg.style = "pep440" cfg.tag_prefix = "" cfg.parentdir_prefix = "catkin-lint-" cfg.versionfile_source = "src/catkin_lint/_version.py" cfg.verbose = False return cfg class NotThisMethod(Exception): """Exception raised if a method is not valid for the current scenario.""" LONG_VERSION_PY = {} HANDLERS = {} def register_vcs_handler(vcs, method): # decorator """Decorator to mark a method as the handler for a particular VCS.""" def decorate(f): """Store f in HANDLERS[vcs][method].""" if vcs not in HANDLERS: HANDLERS[vcs] = {} HANDLERS[vcs][method] = f return f return decorate def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, env=None): """Call the given command(s).""" assert isinstance(commands, list) p = None for c in commands: try: dispcmd = str([c] + args) # remember shell=False, so use git.cmd on windows, not just git p = subprocess.Popen([c] + args, cwd=cwd, env=env, stdout=subprocess.PIPE, stderr=(subprocess.PIPE if hide_stderr else None)) break except EnvironmentError: e = sys.exc_info()[1] if e.errno == errno.ENOENT: continue if verbose: print("unable to run %s" % dispcmd) print(e) return None, None else: if verbose: print("unable to find command, tried %s" % (commands,)) return None, None stdout = p.communicate()[0].strip() if sys.version_info[0] >= 3: stdout = stdout.decode() if p.returncode != 0: if verbose: print("unable to run %s (error)" % dispcmd) print("stdout was %s" % stdout) return None, p.returncode return stdout, p.returncode def versions_from_parentdir(parentdir_prefix, root, verbose): """Try to determine the version from the parent directory name. Source tarballs conventionally unpack into a directory that includes both the project name and a version string. We will also support searching up two directory levels for an appropriately named parent directory """ rootdirs = [] for i in range(3): dirname = os.path.basename(root) if dirname.startswith(parentdir_prefix): return {"version": dirname[len(parentdir_prefix):], "full-revisionid": None, "dirty": False, "error": None, "date": None} else: rootdirs.append(root) root = os.path.dirname(root) # up a level if verbose: print("Tried directories %s but none started with prefix %s" % (str(rootdirs), parentdir_prefix)) raise NotThisMethod("rootdir doesn't start with parentdir_prefix") @register_vcs_handler("git", "get_keywords") def git_get_keywords(versionfile_abs): """Extract version information from the given file.""" # the code embedded in _version.py can just fetch the value of these # keywords. When used from setup.py, we don't want to import _version.py, # so we do it with a regexp instead. This function is not used from # _version.py. keywords = {} try: f = open(versionfile_abs, "r") for line in f.readlines(): if line.strip().startswith("git_refnames ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["refnames"] = mo.group(1) if line.strip().startswith("git_full ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["full"] = mo.group(1) if line.strip().startswith("git_date ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["date"] = mo.group(1) f.close() except EnvironmentError: pass return keywords @register_vcs_handler("git", "keywords") def git_versions_from_keywords(keywords, tag_prefix, verbose): """Get version information from git keywords.""" if not keywords: raise NotThisMethod("no keywords at all, weird") date = keywords.get("date") if date is not None: # git-2.2.0 added "%cI", which expands to an ISO-8601 -compliant # datestamp. However we prefer "%ci" (which expands to an "ISO-8601 # -like" string, which we must then edit to make compliant), because # it's been around since git-1.5.3, and it's too difficult to # discover which version we're using, or to work around using an # older one. date = date.strip().replace(" ", "T", 1).replace(" ", "", 1) refnames = keywords["refnames"].strip() if refnames.startswith("$Format"): if verbose: print("keywords are unexpanded, not using") raise NotThisMethod("unexpanded keywords, not a git-archive tarball") refs = set([r.strip() for r in refnames.strip("()").split(",")]) # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of # just "foo-1.0". If we see a "tag: " prefix, prefer those. TAG = "tag: " tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) if not tags: # Either we're using git < 1.8.3, or there really are no tags. We use # a heuristic: assume all version tags have a digit. The old git %d # expansion behaves like git log --decorate=short and strips out the # refs/heads/ and refs/tags/ prefixes that would let us distinguish # between branches and tags. By ignoring refnames without digits, we # filter out many common branch names like "release" and # "stabilization", as well as "HEAD" and "master". tags = set([r for r in refs if re.search(r'\d', r)]) if verbose: print("discarding '%s', no digits" % ",".join(refs - tags)) if verbose: print("likely tags: %s" % ",".join(sorted(tags))) for ref in sorted(tags): # sorting will prefer e.g. "2.0" over "2.0rc1" if ref.startswith(tag_prefix): r = ref[len(tag_prefix):] if verbose: print("picking %s" % r) return {"version": r, "full-revisionid": keywords["full"].strip(), "dirty": False, "error": None, "date": date} # no suitable tags, so version is "0+unknown", but full hex is still there if verbose: print("no suitable tags, using unknown + full revision id") return {"version": "0+unknown", "full-revisionid": keywords["full"].strip(), "dirty": False, "error": "no suitable tags", "date": None} @register_vcs_handler("git", "pieces_from_vcs") def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): """Get version from 'git describe' in the root of the source tree. This only gets called if the git-archive 'subst' keywords were *not* expanded, and _version.py hasn't already been rewritten with a short version string, meaning we're inside a checked out source tree. """ GITS = ["git"] if sys.platform == "win32": GITS = ["git.cmd", "git.exe"] out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, hide_stderr=True) if rc != 0: if verbose: print("Directory %s not under git control" % root) raise NotThisMethod("'git rev-parse --git-dir' returned error") # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] # if there isn't one, this yields HEX[-dirty] (no NUM) describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", "--always", "--long", "--match", "%s*" % tag_prefix], cwd=root) # --long was added in git-1.5.5 if describe_out is None: raise NotThisMethod("'git describe' failed") describe_out = describe_out.strip() full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) if full_out is None: raise NotThisMethod("'git rev-parse' failed") full_out = full_out.strip() pieces = {} pieces["long"] = full_out pieces["short"] = full_out[:7] # maybe improved later pieces["error"] = None # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] # TAG might have hyphens. git_describe = describe_out # look for -dirty suffix dirty = git_describe.endswith("-dirty") pieces["dirty"] = dirty if dirty: git_describe = git_describe[:git_describe.rindex("-dirty")] # now we have TAG-NUM-gHEX or HEX if "-" in git_describe: # TAG-NUM-gHEX mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) if not mo: # unparseable. Maybe git-describe is misbehaving? pieces["error"] = ("unable to parse git-describe output: '%s'" % describe_out) return pieces # tag full_tag = mo.group(1) if not full_tag.startswith(tag_prefix): if verbose: fmt = "tag '%s' doesn't start with prefix '%s'" print(fmt % (full_tag, tag_prefix)) pieces["error"] = ("tag '%s' doesn't start with prefix '%s'" % (full_tag, tag_prefix)) return pieces pieces["closest-tag"] = full_tag[len(tag_prefix):] # distance: number of commits since tag pieces["distance"] = int(mo.group(2)) # commit: short hex revision ID pieces["short"] = mo.group(3) else: # HEX: no tags pieces["closest-tag"] = None count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], cwd=root) pieces["distance"] = int(count_out) # total number of commits # commit date: see ISO-8601 comment in git_versions_from_keywords() date = run_command(GITS, ["show", "-s", "--format=%ci", "HEAD"], cwd=root)[0].strip() pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) return pieces def plus_or_dot(pieces): """Return a + if we don't already have one, else return a .""" if "+" in pieces.get("closest-tag", ""): return "." return "+" def render_pep440(pieces): """Build up version string, with post-release "local version identifier". Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you get a tagged build and then dirty it, you'll get TAG+0.gHEX.dirty Exceptions: 1: no tags. git_describe was just HEX. 0+untagged.DISTANCE.gHEX[.dirty] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += plus_or_dot(pieces) rendered += "%d.g%s" % (pieces["distance"], pieces["short"]) if pieces["dirty"]: rendered += ".dirty" else: # exception #1 rendered = "0+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) if pieces["dirty"]: rendered += ".dirty" return rendered def render_pep440_pre(pieces): """TAG[.post.devDISTANCE] -- No -dirty. Exceptions: 1: no tags. 0.post.devDISTANCE """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"]: rendered += ".post.dev%d" % pieces["distance"] else: # exception #1 rendered = "0.post.dev%d" % pieces["distance"] return rendered def render_pep440_post(pieces): """TAG[.postDISTANCE[.dev0]+gHEX] . The ".dev0" means dirty. Note that .dev0 sorts backwards (a dirty tree will appear "older" than the corresponding clean one), but you shouldn't be releasing software with -dirty anyways. Exceptions: 1: no tags. 0.postDISTANCE[.dev0] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += ".post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" rendered += plus_or_dot(pieces) rendered += "g%s" % pieces["short"] else: # exception #1 rendered = "0.post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" rendered += "+g%s" % pieces["short"] return rendered def render_pep440_old(pieces): """TAG[.postDISTANCE[.dev0]] . The ".dev0" means dirty. Eexceptions: 1: no tags. 0.postDISTANCE[.dev0] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += ".post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" else: # exception #1 rendered = "0.post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" return rendered def render_git_describe(pieces): """TAG[-DISTANCE-gHEX][-dirty]. Like 'git describe --tags --dirty --always'. Exceptions: 1: no tags. HEX[-dirty] (note: no 'g' prefix) """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"]: rendered += "-%d-g%s" % (pieces["distance"], pieces["short"]) else: # exception #1 rendered = pieces["short"] if pieces["dirty"]: rendered += "-dirty" return rendered def render_git_describe_long(pieces): """TAG-DISTANCE-gHEX[-dirty]. Like 'git describe --tags --dirty --always -long'. The distance/hash is unconditional. Exceptions: 1: no tags. HEX[-dirty] (note: no 'g' prefix) """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] rendered += "-%d-g%s" % (pieces["distance"], pieces["short"]) else: # exception #1 rendered = pieces["short"] if pieces["dirty"]: rendered += "-dirty" return rendered def render(pieces, style): """Render the given version pieces into the requested style.""" if pieces["error"]: return {"version": "unknown", "full-revisionid": pieces.get("long"), "dirty": None, "error": pieces["error"], "date": None} if not style or style == "default": style = "pep440" # the default if style == "pep440": rendered = render_pep440(pieces) elif style == "pep440-pre": rendered = render_pep440_pre(pieces) elif style == "pep440-post": rendered = render_pep440_post(pieces) elif style == "pep440-old": rendered = render_pep440_old(pieces) elif style == "git-describe": rendered = render_git_describe(pieces) elif style == "git-describe-long": rendered = render_git_describe_long(pieces) else: raise ValueError("unknown style '%s'" % style) return {"version": rendered, "full-revisionid": pieces["long"], "dirty": pieces["dirty"], "error": None, "date": pieces.get("date")} def get_versions(): """Get version information or return default if unable to do so.""" # I am in _version.py, which lives at ROOT/VERSIONFILE_SOURCE. If we have # __file__, we can work backwards from there to the root. Some # py2exe/bbfreeze/non-CPython implementations don't do __file__, in which # case we can only use expanded keywords. cfg = get_config() verbose = cfg.verbose try: return git_versions_from_keywords(get_keywords(), cfg.tag_prefix, verbose) except NotThisMethod: pass try: root = os.path.realpath(__file__) # versionfile_source is the relative path from the top of the source # tree (where the .git directory might live) to this file. Invert # this to find the root from __file__. for i in cfg.versionfile_source.split('/'): root = os.path.dirname(root) except NameError: return {"version": "0+unknown", "full-revisionid": None, "dirty": None, "error": "unable to find root of source tree", "date": None} try: pieces = git_pieces_from_vcs(cfg.tag_prefix, root, verbose) return render(pieces, cfg.style) except NotThisMethod: pass try: if cfg.parentdir_prefix: return versions_from_parentdir(cfg.parentdir_prefix, root, verbose) except NotThisMethod: pass return {"version": "0+unknown", "full-revisionid": None, "dirty": None, "error": "unable to compute version", "date": None} catkin_lint-1.6.6/src/catkin_lint/checks/000077500000000000000000000000001362025056600203565ustar00rootroot00000000000000catkin_lint-1.6.6/src/catkin_lint/checks/__init__.py000066400000000000000000000040501362025056600224660ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. __author__ = "Timo Röhling " __copyright__ = "Copyright (c) 2013-2015 Fraunhofer FKIE" __license__ = "BSD" def all(linter): from .build import all as build_all from .cuda import all as cuda_all from .manifest import all as manifest_all from .misc import all as misc_all from .python import all as python_all linter.require(build_all) linter.require(cuda_all) linter.require(manifest_all) linter.require(misc_all) linter.require(python_all) catkin_lint-1.6.6/src/catkin_lint/checks/build.py000066400000000000000000001072351362025056600220370ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os import posixpath import re import stat from ..linter import ERROR, WARNING, NOTICE, PathConstants from ..cmake import argparse as cmake_argparse from ..util import iteritems, is_sorted from .manifest import depends as manifest_depends from functools import partial def includes(linter): def on_init(info): info.build_includes = set() def on_include_directories(info, cmd, args): _, args = cmake_argparse(args, {"AFTER": "-", "BEFORE": "-", "SYSTEM": "-"}) for incl in args: if not info.is_valid_path(incl): info.report(WARNING, "EXTERNAL_DIRECTORY", cmd=cmd, directory=info.report_path(incl)) if not info.is_existing_path(incl, check=os.path.isdir): info.report(ERROR, "MISSING_DIRECTORY", cmd=cmd, directory=info.report_path(incl)) includes = set([info.source_relative_path(d) for d in args]) info.build_includes |= includes linter.add_init_hook(on_init) linter.add_command_hook("include_directories", on_include_directories) def targets(linter): def on_init(info): info.target_outputs = {} info.target_links = {} info.target_order_violation = set() def on_set_target_properties(info, cmd, args): opts, args = cmake_argparse(args, {"PROPERTIES": "p"}) for target in args: if "OUTPUT_NAME" in opts["PROPERTIES"]: info.target_outputs[target] = opts["PROPERTIES"]["OUTPUT_NAME"] def on_add_target(info, cmd, args): if info.manifest.is_metapackage(): info.report(ERROR, "INVALID_META_COMMAND", cmd=cmd) return if "catkin" not in info.find_packages: info.report(ERROR, "CATKIN_ORDER_VIOLATION", cmd=cmd) if "catkin_package" not in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd=cmd, second_cmd="catkin_package") if args[0] in info.target_order_violation: info.report(ERROR, "ORDER_VIOLATION", first_cmd="target_link_libraries", second_cmd=cmd) if not args[0] in info.target_outputs: info.target_outputs[args[0]] = args[0] if not args[0] in info.target_links: info.target_links[args[0]] = set() def on_target_link_libraries(info, cmd, args): if args[0] in info.target_links: info.target_links[args[0]] |= set([d for d in args[1:] if not os.path.isabs(d)]) else: info.target_order_violation.add(args[0]) def on_final(info): catkin_include_path = info.find_package_path("catkin", "include") if (info.executables or info.libraries) and info.catkin_components and catkin_include_path not in info.build_includes: info.report(ERROR, "UNUSED_CATKIN_INCLUDE_DIRS", file_location=("CMakeLists.txt", 0)) if catkin_include_path in info.build_includes: for pkg in info.catkin_components: if info.find_package_path(pkg, "include") in info.build_includes: info.report(WARNING, "DUPLICATE_INCLUDE_PATH", pkg=pkg, file_location=("CMakeLists.txt", 0)) linter.require(includes) linter.require(depends) linter.add_init_hook(on_init) linter.add_command_hook("set_target_properties", on_set_target_properties) linter.add_command_hook("add_executable", on_add_target) linter.add_command_hook("add_library", on_add_target) linter.add_command_hook("target_link_libraries", on_target_link_libraries) linter.add_final_hook(on_final) def generated_files(linter): def on_configure_file(info, cmd, args): if not info.is_valid_path(args[0]): info.report(ERROR, "EXTERNAL_FILE", cmd=cmd, file=info.report_path(args[0])) elif not info.is_existing_path(args[0], check=os.path.isfile): info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(args[0])) info.generated_files.add(info.binary_relative_path(args[1])) def on_add_custom_command(info, cmd, args): opts, args = cmake_argparse(args, {"OUTPUT": "*", "COMMAND": "*", "ARGS": "*", "BYPRODUCTS": "*", "WORKING_DIRECTORY": "?", "MAIN_DEPENDENCY": "?", "DEPENDS": "*"}) for f in opts["OUTPUT"] + opts["BYPRODUCTS"]: info.generated_files.add(info.binary_relative_path(f)) def on_generate_export_header(info, cmd, args): opts, args = cmake_argparse(args, {"BASE_NAME": "?", "EXPORT_FILE_NAME": "?"}) f = args[0] + "_export.h" if opts["BASE_NAME"]: f = opts["BASE_NAME"] + "_export.h" if opts["EXPORT_FILE_NAME"]: f = opts["EXPORT_FILE_NAME"] info.generated_files.add(info.binary_relative_path(f)) def on_xacro_add_xacro_file(info, cmd, args): opts, args = cmake_argparse(args, {"INORDER": "-", "LEGACY": "-", "OUTPUT": "?", "REMAP": "*", "DEPENDS": "*"}) if not info.is_existing_path(args[0], check=os.path.isfile): info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(args[0])) output_var = opts["OUTPUT"] or "XACRO_OUTPUT_FILE" if len(args) < 2: f = info.source_relative_path(args[0]) if f.endswith(".xacro"): f = f[:-6] args.append(f) info.var[output_var] = posixpath.join(PathConstants.PACKAGE_BINARY, info.binary_relative_path(args[1])) info.generated_files.add(info.binary_relative_path(args[1])) def on_xacro_add_files(info, cmd, args): opts, args = cmake_argparse(args, {"INORDER": "-", "LEGACY": "-", "INSTALL": "-", "OUTPUT": "?", "TARGET": "?", "DESTINATION": "?", "REMAP": "*", "DEPENDS": "*"}) for f in args: if not info.is_existing_path(f, check=os.path.isfile): info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(f)) f_src = info.source_relative_path(f) if f_src.endswith(".xacro"): f_src = f_src[:-6] info.generated_files.add(info.binary_relative_path(f_src)) linter.add_command_hook("configure_file", on_configure_file) linter.add_command_hook("generate_export_header", on_generate_export_header) linter.add_command_hook("add_custom_command", on_add_custom_command) linter.add_command_hook("xacro_add_xacro_file", on_xacro_add_xacro_file) linter.add_command_hook("xacro_add_files", on_xacro_add_files) def source_files(linter): def on_add_executable(info, cmd, args): if "IMPORTED" in args or "ALIAS" in args: return _, args = cmake_argparse(args, {"WIN32": "-", "MACOSX_BUNDLE": "-", "EXCLUDE_FROM_ALL": "-"}) if not is_sorted(args[1:]): info.report(NOTICE, "UNSORTED_LIST", name="of source files") for source_file in args[1:]: if not info.is_valid_path(source_file): info.report(ERROR, "EXTERNAL_FILE", cmd=cmd, file=info.report_path(source_file)) if not info.is_existing_path(source_file, check=os.path.isfile): info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(source_file)) def on_add_library(info, cmd, args): if "IMPORTED" in args or "ALIAS" in args or "INTERFACE" in args: return _, args = cmake_argparse(args, {"GLOBAL": "-", "STATIC": "-", "SHARED": "-", "MODULE": "-", "OBJECT": "-", "UNKNOWN": "-", "EXCLUDE_FROM_ALL": "-"}) if not is_sorted(args[1:]): info.report(NOTICE, "UNSORTED_LIST", name="of source files") for source_file in args[1:]: if not info.is_valid_path(source_file): info.report(ERROR, "EXTERNAL_FILE", cmd=cmd, file=info.report_path(source_file)) if not info.is_existing_path(source_file, check=os.path.isfile): info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(source_file)) linter.require(generated_files) linter.add_command_hook("add_executable", on_add_executable) linter.add_command_hook("add_library", on_add_library) def link_directories(linter): def on_link_directories(info, cmd, args): externals = [p for p in args if not info.is_internal_path(p)] if externals: info.report(ERROR, "EXTERNAL_LINK_DIRECTORY") else: info.report(WARNING, "LINK_DIRECTORY") linter.add_command_hook("link_directories", on_link_directories) def depends(linter): def on_init(info): info.package_components = {} info.required_packages = set() info.test_packages = set() info.catkin_components = set() info.checked_packages = set() def on_find_package(info, cmd, args): opts, args = cmake_argparse(args, {"REQUIRED": "-", "COMPONENTS": "*", "OPTIONAL_COMPONENTS": "*"}) this_components = opts["COMPONENTS"] if opts["COMPONENTS"] else args[1:] if "project" not in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd=cmd, second_cmd="project") if args[0] in info.find_packages: previous_components = info.package_components.get(args[0], set()) if previous_components - set(this_components): info.report(ERROR, "SHADOWED_FIND", pkg=args[0]) elif previous_components == set(this_components): info.report(WARNING, "DUPLICATE_FIND", pkg=args[0]) if opts["REQUIRED"]: info.required_packages.add(args[0]) if info.condition_is_checked("CATKIN_ENABLE_TESTING"): info.test_packages.add(args[0]) else: if args[0] in info.test_dep - info.build_dep - info.buildtool_dep: info.report(ERROR, "UNGUARDED_TEST_DEPEND", pkg=args[0]) if args[0] not in info.package_components: info.package_components[args[0]] = set() info.package_components[args[0]] |= set(this_components) info.var["%s_EXTRAS_DIR" % args[0]] = info.find_package_path(args[0], "extras") if args[0] == "Qt5": for pkg in this_components: info.var["Qt5%s_INCLUDE_DIRS" % pkg] = info.find_package_path("Qt5%s" % pkg, "include") info.var["Qt5%s_LIBRARIES" % pkg] = posixpath.join(info.find_package_path("Qt5%s" % pkg, "lib"), "library.so") info.find_packages.add("Qt5%s" % pkg) if args[0] != "catkin": return if "catkin_package" in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd="catkin_package", second_cmd=cmd) if not opts["REQUIRED"]: info.report(WARNING, "MISSING_REQUIRED", pkg="catkin") info.required_packages.add("catkin") if not is_sorted(this_components): info.report(NOTICE, "UNSORTED_LIST", name="COMPONENTS") for pkg in this_components: info.var["%s_INCLUDE_DIRS" % pkg] = info.find_package_path(pkg, "include") info.var["%s_LIBRARIES" % pkg] = posixpath.join(info.find_package_path(pkg, "lib"), "library.so") info.var["%s_PACKAGE_PATH" % pkg] = posixpath.normpath(info.find_package_path(pkg, "")) info.var["%s_EXTRAS_DIR" % pkg] = info.find_package_path(pkg, "extras") if pkg in info.find_packages: previous_components = info.package_components.get(pkg, set()) if previous_components: info.report(ERROR, "SHADOWED_FIND", pkg=pkg) else: info.report(WARNING, "DUPLICATE_FIND", pkg=pkg) if not info.env.is_known_pkg(pkg): if info.env.ok: info.report(ERROR, "UNKNOWN_PACKAGE", pkg=pkg) elif not info.env.is_catkin_pkg(pkg): if info.env.ok: info.report(ERROR, "NO_CATKIN_COMPONENT", pkg=pkg) for pkg in args[1:]: if info.env.is_known_pkg(pkg): info.report(NOTICE, "MISSING_COMPONENTS", pkg=pkg) info.find_packages |= set(this_components) info.required_packages |= set(this_components) info.catkin_components |= set(this_components) def on_if(info, cmd, args): for arg in args: if arg.endswith("_FOUND"): info.checked_packages.add(arg[0:-6]) def on_final(info): for pkg in info.required_packages - info.build_dep - info.buildtool_dep - info.test_dep: if info.env.is_known_pkg(pkg): info.report(ERROR, "MISSING_DEPEND", pkg=pkg, type="build", file_location=("package.xml", 0)) for pkg in info.find_packages - info.required_packages - info.checked_packages: if info.env.is_catkin_pkg(pkg): info.report(ERROR, "MISSING_REQUIRED", pkg=pkg, file_location=("CMakeLists.txt", 0)) for pkg in info.build_dep - (info.find_packages - info.test_packages): if info.env.is_catkin_pkg(pkg): # Ignore pure Python packages (or at least packages that look like it), following the # Jack O'Quin heuristic from issue fkie/catkin_lint#22 if pkg not in info.pkg_modules and (info.executables or info.libraries or "catkin_python_setup" not in info.commands): info.report(ERROR, "UNCONFIGURED_BUILD_DEPEND", pkg=pkg, file_location=("CMakeLists.txt", 0)) linter.require(manifest_depends) linter.require(pkg_config) linter.add_init_hook(on_init) linter.add_command_hook("find_package", on_find_package) linter.add_command_hook("if", on_if) linter.add_final_hook(on_final) def tests(linter): def on_test_cmd(info, cmd, args, dep=None): if not info.condition_is_checked("CATKIN_ENABLE_TESTING"): info.report(ERROR, "UNGUARDED_TEST_CMD", cmd=cmd) if dep is None: return if dep not in info.test_dep | info.build_dep | info.exec_dep: info.report(ERROR, "MISSING_DEPEND", type="test", pkg=dep) linter.require(manifest_depends) linter.add_command_hook("catkin_download_test_data", on_test_cmd) linter.add_command_hook("catkin_add_gtest", on_test_cmd) linter.add_command_hook("catkin_add_nosetests", on_test_cmd) linter.add_command_hook("add_rostest", partial(on_test_cmd, dep="rostest")) linter.add_command_hook("add_rostest_gtest", partial(on_test_cmd, dep="rostest")) linter.add_command_hook("add_rostest_gmock", partial(on_test_cmd, dep="rostest")) def exports(linter): def on_init(info): info.export_packages = set() info.export_includes = set() info.export_libs = set() info.export_targets = set() def on_catkin_package(info, cmd, args): opts, args = cmake_argparse(args, {"INCLUDE_DIRS": "*", "LIBRARIES": "*", "DEPENDS": "*", "CATKIN_DEPENDS": "*", "CFG_EXTRAS": "*", "EXPORTED_TARGETS": "*"}) for list_name in ["CATKIN_DEPENDS", "DEPENDS", "CFG_EXTRAS", "EXPORTED_TARGETS"]: if not is_sorted(opts[list_name]): info.report(NOTICE, "UNSORTED_LIST", name=list_name) for pkg in opts["CATKIN_DEPENDS"]: if not info.env.is_known_pkg(pkg): if info.env.ok: info.report(ERROR, "UNKNOWN_PACKAGE", pkg=pkg) elif not info.env.is_catkin_pkg(pkg): if info.env.ok: info.report(ERROR, "SYSTEM_AS_CATKIN_DEPEND", pkg=pkg) for pkg in opts["DEPENDS"]: if info.env.is_catkin_pkg(pkg): if info.env.ok: info.report(ERROR, "CATKIN_AS_SYSTEM_DEPEND", pkg=pkg) elif pkg in info.pkg_modules_prefix: info.report(ERROR, "EXPORTED_PKG_CONFIG", pkg=pkg) elif pkg not in info.find_packages and not ("%s_INCLUDE_DIRS" % pkg in info.var and "%s_LIBRARIES" % pkg in info.var): info.report(ERROR, "UNCONFIGURED_SYSTEM_DEPEND", pkg=pkg) includes = [info.source_relative_path(d) for d in opts["INCLUDE_DIRS"]] ext_includes = [d for d in includes if not info.is_internal_path(d)] if ext_includes: info.report(ERROR, "EXTERNAL_INCLUDE_PATH") info.export_libs |= set(opts["LIBRARIES"]) info.export_includes |= set([d for d in includes if not os.path.isabs(d)]) info.export_packages |= set(opts["CATKIN_DEPENDS"]) info.export_targets |= set(opts["EXPORTED_TARGETS"]) def on_final(info): for pkg in info.export_packages - info.export_dep: if info.env.is_known_pkg(pkg): if pkg == "message_runtime": if pkg not in info.exec_dep: info.report(ERROR, "MISSING_DEPEND", pkg=pkg, type="run" if info.manifest.package_format < 2 else "exec", file_location=("package.xml", 0)) else: info.report(ERROR, "MISSING_DEPEND", pkg=pkg, type="run" if info.manifest.package_format < 2 else "build_export", file_location=("package.xml", 0)) for pkg in (info.find_packages & info.build_dep & info.export_dep) - info.export_packages: if re.search(r"_(msg|message)s?(_|$)", pkg) and info.env.is_catkin_pkg(pkg): info.report(WARNING, "SUGGEST_CATKIN_DEPEND", pkg=pkg, file_location=info.location_of("catkin_package")) if info.export_includes and info.libraries and not info.export_libs: info.report(WARNING, "MISSING_EXPORT_LIB", file_location=info.location_of("catkin_package")) if info.executables or info.libraries: for incl in info.export_includes - info.build_includes: info.report(WARNING, "UNUSED_INCLUDE_PATH", path=incl, file_location=info.location_of("catkin_package")) for incl in info.export_includes: if not info.is_existing_path(incl, check=os.path.isdir, require_source_folder=True): info.report(ERROR, "MISSING_INCLUDE_PATH", path=incl, file_location=info.location_of("catkin_package")) includes = info.build_includes | info.export_includes for d1 in includes: if not posixpath.isabs(d1): for d2 in includes: if d1.startswith("%s/" % d2): info.report(WARNING, "AMBIGUOUS_INCLUDE_PATH", path=info.report_path(d1), parent_path=info.report_path(d2)) for lib in info.export_libs: if lib in info.targets: if info.target_outputs[lib] != lib: info.report(ERROR, "EXPORT_LIB_RENAMED", target=lib, file_location=info.location_of("catkin_package")) if lib in info.executables: info.report(ERROR, "EXPORT_LIB_NOT_LIB", target=lib, file_location=info.location_of("catkin_package")) linter.require(manifest_depends) linter.require(pkg_config) linter.require(includes) linter.require(targets) linter.add_init_hook(on_init) linter.add_command_hook("catkin_package", on_catkin_package) linter.add_final_hook(on_final) def name_check(linter): def on_final(info): for target, output in iteritems(info.target_outputs): if "/" in output or "\\" in output: info.report(ERROR, "INVALID_TARGET_OUTPUT", target=target) if target in info.libraries and output.startswith("lib"): info.report(NOTICE, "REDUNDANT_LIB_PREFIX", output=output) linter.require(targets) linter.require(exports) linter.add_final_hook(on_final) def pkg_config(linter): def on_init(info): info.pkg_modules = set() info.pkg_modules_prefix = set() def on_pkg_check_modules(info, cmd, args): opts, args = cmake_argparse(args, {"REQUIRED": "-", "QUIET": "-", "NO_CMAKE_PATH": "-", "NO_CMAKE_ENVIRONMENT_PATH": "-", "IMPORTED_TARGET": "-"}) info.pkg_modules_prefix.add(args[0]) for pkg in args[1:]: if "=" in pkg: pkg = pkg.split("=")[0].rstrip("<>=") info.pkg_modules.add(pkg) if info.env.is_catkin_pkg(pkg): info.report(ERROR, "MISCONFIGURED_CATKIN_PACKAGE", pkg=pkg) linter.add_init_hook(on_init) linter.add_command_hook("pkg_check_modules", on_pkg_check_modules) def installs(linter): def on_init(info): info.install_targets = set() info.install_programs = set() info.install_includes = False info.install_files = set() def on_catkin_install_python(info, cmd, args): opts, args = cmake_argparse(args, {"PROGRAMS": "+", "DESTINATION": "!"}) for f in opts["PROGRAMS"]: if f: if not info.is_valid_path(f): info.report(ERROR, "EXTERNAL_FILE", cmd=cmd, file=info.report_path(f)) if info.is_existing_path(f, check=os.path.isfile): real_f = info.real_path(info.source_relative_path(f)) if os.path.isfile(real_f): with open(real_f, "r") as fd: shebang = fd.readline() if not shebang.startswith("#!") or "python" not in shebang: info.report(ERROR, "MISSING_SHEBANG", file=info.report_path(f), interpreter="python") else: info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(f)) info.install_programs.add(info.source_relative_path(f)) if not info.is_catkin_bin_install_destination(opts["DESTINATION"]): info.report(WARNING, "WRONG_BIN_INSTALL_DESTINATION") def on_install(info, cmd, args): install_type = None opts, args = cmake_argparse(args, {"PROGRAMS": "*", "FILES": "*", "TARGETS": "*", "DIRECTORY": "*", "DESTINATION": "?", "ARCHIVE DESTINATION": "?", "LIBRARY DESTINATION": "?", "RUNTIME DESTINATION": "?", "USE_SOURCE_PERMISSIONS": "-"}) if opts["PROGRAMS"]: install_type = "PROGRAMS" for f in opts["PROGRAMS"]: if f: if not info.is_valid_path(f): info.report(WARNING, "EXTERNAL_FILE", cmd=cmd, file=info.report_path(f)) if not info.is_existing_path(f, check=os.path.isfile): info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(f)) info.install_programs.add(info.source_relative_path(f)) if opts["DIRECTORY"]: install_type = "DIRECTORY" for d in opts["DIRECTORY"]: if d: if not info.is_valid_path(d): info.report(WARNING, "EXTERNAL_DIRECTORY", cmd=cmd, directory=info.report_path(d)) if info.is_existing_path(d, check=os.path.isdir): real_d = info.real_path(info.source_relative_path(d)) if os.path.isdir(real_d): if opts["USE_SOURCE_PERMISSIONS"]: for dirpath, _, filenames in os.walk(real_d, topdown=True): for filename in filenames: real_filename = os.path.join(dirpath, filename) pkg_filename = info.source_relative_path(real_filename[len(info.path) + 1:]) mode = os.stat(real_filename).st_mode if mode & stat.S_IXUSR: info.install_programs.add(pkg_filename) else: info.report(ERROR, "MISSING_DIRECTORY", cmd=cmd, directory=info.report_path(d)) if opts["FILES"]: install_type = "FILES" for f in opts["FILES"]: if f: if not info.is_valid_path(f): info.report(WARNING, "EXTERNAL_FILE", cmd=cmd, file=info.report_path(f)) if not info.is_existing_path(f, check=os.path.isfile): info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(f)) info.install_files |= set([posixpath.normpath(posixpath.join(PathConstants.CATKIN_INSTALL, opts["DESTINATION"], posixpath.basename(f))) for f in opts["FILES"]]) if opts["TARGETS"]: install_type = "TARGETS" info.install_targets |= set(opts["TARGETS"]) if install_type is None: return if not is_sorted(opts[install_type]): info.report(NOTICE, "UNSORTED_LIST", name=install_type) for dest in ["DESTINATION", "ARCHIVE DESTINATION", "LIBRARY DESTINATION", "RUNTIME DESTINATION"]: if opts[dest] is not None: if install_type == "PROGRAMS" and not info.is_catkin_bin_install_destination(opts[dest]): info.report(WARNING, "WRONG_BIN_INSTALL_DESTINATION") elif not info.is_catkin_install_destination(opts[dest]): info.report(WARNING, "WRONG_INSTALL_DESTINATION", type=install_type, dest=dest) if info.is_catkin_install_destination(opts[dest], "include"): info.install_includes = True def on_final(info): for lib in info.export_libs: if lib in info.targets and lib not in info.install_targets: info.report(ERROR if "install" in info.commands else WARNING, "UNINSTALLED_EXPORT_LIB", target=lib, file_location=info.location_of("catkin_package")) for tgt in info.executables - info.install_targets: if "test" not in tgt.lower() and "example" not in tgt.lower(): info.report(WARNING, "UNINSTALLED_TARGET", target=tgt, file_location=("CMakeLists.txt", 0)) if info.export_includes and not info.install_includes: info.report(ERROR if "install" in info.commands else WARNING, "UNINSTALLED_INCLUDE_PATH", file_location=info.location_of("catkin_package")) for target, depends in iteritems(info.target_links): if target in info.install_targets: for lib in depends: if lib in info.libraries and lib not in info.install_targets and lib not in info.static_libraries and lib not in info.interface_libraries: info.report(ERROR, "UNINSTALLED_DEPEND", export_target=target, target=lib, file_location=info.location_of("catkin_package")) for target in info.install_targets: if target not in info.targets: info.report(ERROR, "UNDEFINED_TARGET", target=target, file_location=("CMakeLists.txt", 0)) linter.require(targets) linter.require(exports) linter.require(generated_files) linter.add_init_hook(on_init) linter.add_command_hook("catkin_install_python", on_catkin_install_python) linter.add_command_hook("install", on_install) linter.add_final_hook(on_final) def plugins(linter): PLUGIN_WHITELIST = ["roswtf"] def on_final(info): plugin_dep = set() for export in info.manifest.exports: if "plugin" in export.attributes and export.tagname not in PLUGIN_WHITELIST: plugin = export.attributes["plugin"] if export.tagname != info.manifest.name: plugin_dep.add(export.tagname) if not plugin.startswith("${prefix}/"): info.report(ERROR, "PLUGIN_EXPORT_PREFIX", export=export.tagname, file_location=("package.xml", 0)) elif not os.path.isfile(info.real_path(plugin[10:])): info.report(ERROR, "MISSING_PLUGIN", export=export.tagname, file=plugin, file_location=("package.xml", 0)) elif posixpath.normpath("%s/share/%s/%s" % (PathConstants.CATKIN_INSTALL, info.manifest.name, plugin[10:])) not in info.install_files: info.report(ERROR if "install" in info.commands else WARNING, "UNINSTALLED_PLUGIN", export=export.tagname, file=plugin[10:], file_location=("CMakeLists.txt", 0)) for dep in plugin_dep - info.exec_dep: info.report(WARNING, "PLUGIN_DEPEND", export=dep, type="run" if info.manifest.package_format < 2 else "exec", pkg=dep, file_location=("package.xml", 0)) linter.require(manifest_depends) linter.require(installs) linter.add_final_hook(on_final) def dynamic_reconfigure(linter): def on_init(info): info.dynamic_reconfigure_files = set() info.dynamic_reconfigure_loc = None def on_generate_dynamic_reconfigure_options(info, cmd, args): for f in args: if f: real_f = info.real_path(info.source_relative_path(f)) if not info.is_valid_path(f): info.report(ERROR, "EXTERNAL_FILE", cmd=cmd, file=info.report_path(f)) elif os.path.isfile(real_f): mode = os.stat(real_f).st_mode if not mode & stat.S_IXUSR: info.report(ERROR, "SCRIPT_NOT_EXECUTABLE", script=info.report_path(f)) else: info.report(ERROR, "MISSING_FILE", cmd=cmd, file=info.report_path(f)) info.dynamic_reconfigure_files.add(info.source_relative_path(f)) def on_final(info): if "generate_dynamic_reconfigure_options" in info.commands and "dynamic_reconfigure" not in info.find_packages: info.report(ERROR, "UNCONFIGURED_BUILD_DEPEND", pkg="dynamic_reconfigure", file_location=info.location_of("generate_dynamic_reconfigure_options")) linter.require(depends) linter.add_init_hook(on_init) linter.add_command_hook("generate_dynamic_reconfigure_options", on_generate_dynamic_reconfigure_options) linter.add_final_hook(on_final) def scripts(linter): def is_installed(info, pkg_filename): return pkg_filename in info.install_programs or pkg_filename in info.dynamic_reconfigure_files def on_final(info): for dirpath, dirnames, filenames in os.walk(info.path, topdown=True): for filename in filenames: if "test" not in filename.lower() and "example" not in filename.lower(): full_filename = os.path.join(dirpath, filename) pkg_filename = info.source_relative_path(full_filename[len(info.path) + 1:]) mode = os.stat(full_filename).st_mode if mode & stat.S_IXUSR and not is_installed(info, pkg_filename): info.report(WARNING, "UNINSTALLED_SCRIPT", script=pkg_filename) dirnames[:] = [d for d in dirnames if not d.startswith(".") and "test" not in d and "build" not in d and "example" not in d] linter.require(installs) linter.require(dynamic_reconfigure) linter.add_final_hook(on_final) def message_generation(linter): def on_init(info): info.declares_messages = False info.msg_dep = set() def on_add_msg_files(info, cmd, args): info.uses_catkin = True if info.manifest.is_metapackage(): info.report(ERROR, "INVALID_META_COMMAND", cmd=cmd) info.declares_messages = True if "generate_messages" in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd="generate_messages", second_cmd=cmd) if "catkin" not in info.find_packages: info.report(ERROR, "CATKIN_ORDER_VIOLATION", cmd=cmd) if "catkin_package" in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd="catkin_package", second_cmd=cmd) opts, args = cmake_argparse(args, {"DIRECTORY": "?", "FILES": "*", "PACKAGE": "?", "BASE_DIR": "?", "NOINSTALL": "-"}) if not is_sorted(opts["FILES"]): info.report(NOTICE, "UNSORTED_LIST", name="FILES") def on_generate_msg(info, cmd, args): info.uses_catkin = True if info.manifest.is_metapackage(): info.report(ERROR, "INVALID_META_COMMAND", cmd=cmd) if "catkin" not in info.find_packages: info.report(ERROR, "CATKIN_ORDER_VIOLATION", cmd=cmd) if "catkin_package" in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd="catkin_package", second_cmd=cmd) opts, args = cmake_argparse(args, {"DEPENDENCIES": "*", "LANGS": "*"}) if not is_sorted(opts["DEPENDENCIES"]): info.report(NOTICE, "UNSORTED_LIST", name="DEPENDENCIES") info.msg_dep |= set(opts["DEPENDENCIES"]) def on_final(info): if info.manifest.is_metapackage(): return for pkg in info.msg_dep - info.find_packages: info.report(ERROR, "UNCONFIGURED_MSG_DEPEND", pkg=pkg, file_location=("CMakeLists.txt", 0)) for pkg in info.msg_dep - info.export_packages: info.report(ERROR, "MISSING_CATKIN_DEPEND", pkg=pkg, type="run" if info.manifest.package_format < 2 else "build_export", file_location=info.location_of("catkin_package")) for pkg in info.msg_dep - info.build_dep: info.report(ERROR, "MISSING_DEPEND", pkg=pkg, type="build", file_location=("package.xml", 0)) for pkg in info.msg_dep - info.export_dep: info.report(ERROR, "MISSING_DEPEND", pkg=pkg, type="run" if info.manifest.package_format < 2 else "build_export", file_location=("package.xml", 0)) if info.declares_messages and "generate_messages" not in info.commands: info.report(ERROR, "MISSING_GENERATE_MSG", file_location=("CMakeLists.txt", 0)) if not info.declares_messages and "generate_messages" in info.commands: info.report(WARNING, "UNUSED_GENERATE_MSG", file_location=info.location_of("generate_messages")) if info.declares_messages and "message_generation" not in info.find_packages: info.report(ERROR, "UNCONFIGURED_BUILD_DEPEND", pkg="message_generation") if info.declares_messages and "message_runtime" not in info.export_packages: info.report(ERROR, "MISSING_CATKIN_DEPEND", type="run" if info.manifest.package_format < 2 else "build_export", pkg="message_runtime", file_location=info.location_of("catkin_package")) linter.require(manifest_depends) linter.require(depends) linter.require(exports) linter.add_init_hook(on_init) linter.add_command_hook("add_message_files", on_add_msg_files) linter.add_command_hook("add_service_files", on_add_msg_files) linter.add_command_hook("add_action_files", on_add_msg_files) linter.add_command_hook("generate_messages", on_generate_msg) linter.add_final_hook(on_final) def all(linter): linter.require(includes) linter.require(targets) linter.require(generated_files) linter.require(source_files) linter.require(link_directories) linter.require(depends) linter.require(tests) linter.require(exports) linter.require(name_check) linter.require(pkg_config) linter.require(installs) linter.require(dynamic_reconfigure) linter.require(plugins) linter.require(scripts) linter.require(message_generation) catkin_lint-1.6.6/src/catkin_lint/checks/cuda.py000066400000000000000000000040131362025056600216420ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. from .build import source_files def targets(linter): def on_cuda_add_executable(info, cmd, args): linter.execute_hook(info, "add_executable", args) def on_cuda_add_library(info, cmd, args): linter.execute_hook(info, "add_library", args) linter.require(source_files) linter.add_command_hook("cuda_add_executable", on_cuda_add_executable) linter.add_command_hook("cuda_add_library", on_cuda_add_library) def all(linter): linter.require(targets) catkin_lint-1.6.6/src/catkin_lint/checks/manifest.py000066400000000000000000000272331362025056600225450ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import re import os from lxml import etree as ET from ..linter import ERROR, WARNING, NOTICE from ..cmake import argparse as cmake_argparse from .misc import project def depends(linter): def on_init(info): info.buildtool_dep = set([dep.name for dep in info.manifest.buildtool_depends]) info.build_dep = set([dep.name for dep in info.manifest.build_depends]) info.export_dep = set() info.exec_dep = set() if info.manifest.package_format > 1: deps = set([dep.name for dep in info.manifest.build_export_depends]) info.export_dep.update(deps) deps = set([dep.name for dep in info.manifest.buildtool_export_depends]) info.export_dep.update(deps) deps = set([dep.name for dep in info.manifest.exec_depends]) info.exec_dep.update(deps) if info.manifest.package_format < 2: deps = set([dep.name for dep in info.manifest.run_depends]) info.export_dep.update(deps) info.exec_dep.update(deps) info.test_dep = set([dep.name for dep in info.manifest.test_depends]) if info.env.ok: for pkg in info.buildtool_dep | info.build_dep | info.export_dep | info.exec_dep | info.test_dep: if not info.env.is_known_pkg(pkg): info.report(ERROR, "UNKNOWN_PACKAGE", pkg=pkg, file_location=("package.xml", 0)) if info.manifest.is_metapackage() and info.build_dep: info.report(ERROR, "INVALID_META_DEPEND", type="build", file_location=("package.xml", 0)) if info.manifest.is_metapackage() and info.test_dep: info.report(ERROR, "INVALID_META_DEPEND", type="test", file_location=("package.xml", 0)) linter.add_init_hook(on_init) def launch_depends(linter): # We assume that the following packages are always present in a sane ROS environment, so we do # not litter the log with warnings about missing exec_depends if these are used in launch files essential_packages = set(["rosbag", "rosnode", "rosservice", "rostopic"]) def on_final(info): for dirpath, dirnames, filenames in os.walk(info.path, topdown=True): for filename in filenames: fl = filename.lower() if fl.endswith(".launch") and "test" not in fl and "example" not in fl: full_filename = os.path.join(dirpath, filename) src_filename = os.path.relpath(full_filename, info.path) with open(full_filename, "r") as f: content = f.read() try: root = ET.fromstring(content) for node in root.getiterator(): if node.tag is not ET.Comment: pkg = node.get("pkg") if pkg is not None and pkg != info.manifest.name and info.env.is_catkin_pkg(pkg) and pkg not in info.exec_dep and pkg not in essential_packages: info.report(WARNING, "LAUNCH_DEPEND", type="exec" if info.manifest.package_format > 1 else "run", pkg=pkg, file_location=(src_filename, node.sourceline or 0)) for mo in re.finditer(r"\$\(find\s+([^<>)]+)\)", "<>".join(node.values() + [node.text or "", node.tail or ""])): pkg = mo.group(1) if pkg is not None and pkg != info.manifest.name and info.env.is_catkin_pkg(pkg) and pkg not in info.exec_dep and pkg not in essential_packages: info.report(WARNING, "LAUNCH_DEPEND", type="exec" if info.manifest.package_format > 1 else "run", pkg=pkg, file_location=(src_filename, node.sourceline or 0)) except ET.Error as err: info.report(WARNING, "PARSE_ERROR", msg=str(err), file_location=(src_filename, 0)) dirnames[:] = [d for d in dirnames if not d.startswith(".") and "test" not in d and "build" not in d and "example" not in d] linter.require(depends) linter.add_final_hook(on_final) def catkin_build(linter): def on_init(info): info.uses_catkin = False def any_catkin_cmd(info, cmd, args): info.uses_catkin = True def on_find_package(info, cmd, args): if args[0] == "catkin": info.uses_catkin = True def on_catkin_package(info, cmd, args): info.uses_catkin = True if info.manifest.is_metapackage(): info.report(ERROR, "WRONG_CATKIN_PACKAGE") if "catkin" not in info.find_packages and not info.is_catkin: info.report(ERROR, "CATKIN_ORDER_VIOLATION", cmd=cmd) def on_catkin_metapackage(info, cmd, args): info.uses_catkin = True if not info.manifest.is_metapackage(): info.report(ERROR, "WRONG_CATKIN_METAPACKAGE") if "catkin" not in info.find_packages and not info.is_catkin: info.report(ERROR, "CATKIN_ORDER_VIOLATION", cmd=cmd) def on_final(info): if "catkin" in info.build_dep: info.report(ERROR, "WRONG_DEPEND", pkg="catkin", wrong_type="build", right_type="buildtool", file_location=("package.xml", 0)) if not info.uses_catkin: if "catkin" not in info.find_packages and "catkin" in info.buildtool_dep: info.report(ERROR, "UNUSED_DEPEND", pkg="catkin", type="buildtool", file_location=("package.xml", 0)) return if "catkin" not in info.find_packages and not info.is_catkin: info.report(ERROR, "MISSING_FIND", pkg="catkin", file_location=("CMakeLists.txt", 0)) if "catkin" not in info.buildtool_dep and not info.is_catkin: info.report(ERROR, "MISSING_DEPEND", pkg="catkin", type="buildtool", file_location=("package.xml", 0)) if "catkin_package" not in info.commands and "catkin_metapackage" not in info.commands: if info.manifest.is_metapackage(): info.report(ERROR, "MISSING_CMD", cmd="catkin_metapackage", file_location=("CMakeLists.txt", 0)) else: info.report(ERROR, "MISSING_CMD", cmd="catkin_package", file_location=("CMakeLists.txt", 0)) linter.require(project) linter.require(depends) linter.add_init_hook(on_init) linter.add_command_hook("add_message_files", any_catkin_cmd) linter.add_command_hook("add_action_files", any_catkin_cmd) linter.add_command_hook("add_service_files", any_catkin_cmd) linter.add_command_hook("generate_messages", any_catkin_cmd) linter.add_command_hook("catkin_python_setup", any_catkin_cmd) linter.add_command_hook("find_package", on_find_package) linter.add_command_hook("catkin_package", on_catkin_package) linter.add_command_hook("catkin_metapackage", on_catkin_metapackage) linter.add_final_hook(on_final) def export_targets(linter): def on_init(info): info.export_targets = set() def on_catkin_package(info, cmd, args): opts, args = cmake_argparse(args, {"INCLUDE_DIRS": "*", "LIBRARIES": "*", "DEPENDS": "*", "CATKIN_DEPENDS": "*", "CFG_EXTRAS": "*", "EXPORTED_TARGETS": "*"}) info.export_targets |= set(opts["EXPORTED_TARGETS"]) def on_final(info): for tgt in info.export_targets - info.targets: info.report(ERROR, "UNDEFINED_TARGET", target=tgt, file_location=info.location_of("catkin_package")) linter.add_init_hook(on_init) linter.add_command_hook("catkin_package", on_catkin_package) linter.add_final_hook(on_final) def package_description(linter): # Check for meaningless package descriptions buzzwords = [ r"\d+", r"(an)?other", r"add(s|ed)?", r"all", r"an?", r"and", r"are", r"be", r"boilerplate", r"both", r"c(\+\+)?", r"can", r"comprise(s|d)?", r"contain(s|ed)?", r"describe(s|d)?", r"descriptions?", r"did", r"different", r"do(es)?", r"done", r"examples?", r"executables?", r"for", r"from", r"functionalit(y|ies)", r"had", r"has", r"have", r"implementations?", r"in", r"include(s|d)?", r"interfaces?", r"into", r"is", r"java", r"librar(y|ies)", r"meaningless", r"metapackages?", r"meta", r"miscellaneous", r"multiple", r"nodes?", r"no(thing|ne|t)?", r"of", r"offer(s|ed)", r"one", r"or", r"packages?", r"programs?", r"progress" r"provide(s|d)?", r"purpose", r"python", r"ros", r"routines?", r"runs?", r"sets?", r"several", r"snippets?", r"some", r"suppl(y|ies|ied)", r"that", r"the", r"these", r"this", r"those", r"three", r"to", r"todo", r"tools?", r"two", r"use[sd]?", r"useful", r"various", r"versions?", r"which", r"with", r"wrapper", r"work", r"yet", ] buzzwords_re = re.compile(r"^(%s)$" % "|".join(buzzwords)) def on_init(info): words = info.manifest.description.strip().split() name = info.manifest.name.lower() chatter = [] for word in words: word_lc = word.lower() if word_lc == name or buzzwords_re.match(word_lc): chatter.append(word) else: break buzzwordiness = len(chatter) if buzzwordiness > 1: s = " ".join(chatter) if buzzwordiness == len(words): info.report(NOTICE, "DESCRIPTION_MEANINGLESS", text=s, file_location=("package.xml", 0)) elif buzzwordiness > 1: info.report(NOTICE, "DESCRIPTION_BOILERPLATE", text=s, file_location=("package.xml", 0)) linter.add_init_hook(on_init) def all(linter): linter.require(depends) linter.require(launch_depends) linter.require(catkin_build) linter.require(export_targets) linter.require(package_description) catkin_lint-1.6.6/src/catkin_lint/checks/misc.py000066400000000000000000000211311362025056600216610ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import re from ..linter import ERROR, WARNING, NOTICE from ..cmake import argparse as cmake_argparse from distutils.version import LooseVersion as Version def project(linter): def on_init(info): info.is_catkin = False def on_project(info, cmd, args): if args[0] != info.manifest.name: info.report(ERROR, "PROJECT_NAME", name=args[0]) if args[0] == "catkin": info.is_catkin = True linter.add_init_hook(on_init) linter.add_command_hook("project", on_project) def special_vars(linter): # Immutable variables must not be changed at all immutable_vars = frozenset([ "CMAKE_C_COMPILER", "CMAKE_CXX_COMPILER", "PROJECT_NAME", "EXECUTABLE_OUTPUT_PATH", "LIBRARY_OUTPUT_PATH", "CATKIN_PACKAGE_BIN_DESTINATION", "CATKIN_PACKAGE_ETC_DESTINATION", "CATKIN_PACKAGE_INCLUDE_DESTINATION", "CATKIN_PACKAGE_LIB_DESTINATION", "CATKIN_PACKAGE_PYTHON_DESTINATION", "CATKIN_PACKAGE_SHARE_DESTINATION", "CATKIN_GLOBAL_BIN_DESTINATION", "CATKIN_GLOBAL_ETC_DESTINATION", "CATKIN_GLOBAL_INCLUDE_DESTINATION", "CATKIN_GLOBAL_LIB_DESTINATION", "CATKIN_GLOBAL_LIBEXEC_DESTINATION", "CATKIN_GLOBAL_PYTHON_DESTINATION", "CATKIN_GLOBAL_SHARE_DESTINATION" ]) # Critical variables contain important values that must not be overwritten, # but appending additional items is okay critical_vars = frozenset([ "CMAKE_C_FLAGS", "CMAKE_CXX_FLAGS", "CMAKE_INCLUDE_PATH", "CMAKE_LIBRARY_PATH", "CMAKE_FIND_ROOT_PATH", "CMAKE_PREFIX_PATH" ]) def on_init(info): for key in critical_vars: info.var[key] = "@%s@" % key def on_set_or_unset(info, cmd, args): if args[0] == "CMAKE_BUILD_TYPE": # Some developers prefer to set CMAKE_BUILD_TYPE to a # default value if it is not specified by the user, so # we accomodate them here if not info.condition_is_checked("NOT CMAKE_BUILD_TYPE") and not info.condition_is_checked("NOT DEFINED CMAKE_BUILD_TYPE"): info.report(ERROR, "CMAKE_BUILD_TYPE") if args[0] in immutable_vars or args[0].startswith("ENV{"): info.report(ERROR, "IMMUTABLE_VAR", var=args[0]) if args[0] in critical_vars: value = ';'.join(args[1:]) if cmd == "unset" or not "@%s@" % args[0] in value: info.report(ERROR, "CRITICAL_VAR_OVERWRITE", var=args[0]) else: info.report(WARNING, "CRITICAL_VAR_APPEND", var=args[0]) def on_list(info, cmd, args): if args[0] in ["LENGTH", "GET", "FIND"]: return if args[1] in immutable_vars: info.report(ERROR, "IMMUTABLE_VAR", var=args[1]) if args[1] in critical_vars: if args[0] in ["APPEND", "INSERT"]: info.report(WARNING, "CRITICAL_VAR_APPEND", var=args[1]) else: info.report(ERROR, "CRITICAL_VAR_OVERWRITE", var=args[1]) linter.add_init_hook(on_init) linter.add_command_hook("set", on_set_or_unset) linter.add_command_hook("unset", on_set_or_unset) linter.add_command_hook("list", on_list) def global_vars(linter): def on_set(info, cmd, args): if "CACHE" not in args: return if info.manifest.name not in args[0]: info.report(NOTICE, "GLOBAL_VAR_COLLISION", var=args[0]) def on_option(info, cmd, args): if info.manifest.name not in args[0]: info.report(NOTICE, "GLOBAL_VAR_COLLISION", var=args[0]) linter.add_command_hook("set", on_set) linter.add_command_hook("option", on_option) def singleton_commands(linter): # Singleton commands may not appear more than once singleton_cmds = frozenset([ "cmake_minimum_required", "project", "generate_messages", "catkin_package", "catkin_metapackage", "catkin_python_setup" ]) def on_command(info, cmd, args): if cmd in info.commands: info.report(ERROR, "DUPLICATE_CMD", cmd=cmd) for cmd in singleton_cmds: linter.add_command_hook(cmd, on_command) def cmake_includes(linter): def on_include(info, cmd, args): _, args = cmake_argparse(args, {"OPTIONAL": "-", "RESULT_VARIABLE": "?", "NO_POLICY_SCOPE": "-"}) if args: mo = re.match(r"^Find([A-Za-z0-9_-]+)$", args[0]) if mo: pkg = mo.group(1) if pkg == "PackageHandleStandardArgs": return info.report(ERROR, "FIND_BY_INCLUDE", pkg=pkg) linter.add_command_hook("include", on_include) def endblock(linter): def on_command(info, cmd, args): if args: info.report(NOTICE, "ENDBLOCK_ARGS", cmd=cmd) linter.add_command_hook("else", on_command) linter.add_command_hook("endif", on_command) linter.add_command_hook("endmacro", on_command) linter.add_command_hook("endfunction", on_command) linter.add_command_hook("endforeach", on_command) def deprecated(linter): def on_catkin_command(info, cmd, args): info.report(ERROR, "DEPRECATED_CMD", old_cmd=cmd, new_cmd="catkin_%s" % cmd) def on_cmake_command(info, cmd, args): info.report(ERROR, "DEPRECATED_CMD", old_cmd=cmd, new_cmd="cmake_%s" % cmd) linter.add_command_hook("add_gtest", on_catkin_command) linter.add_command_hook("add_nosetests", on_catkin_command) linter.add_command_hook("download_test_data", on_catkin_command) linter.add_command_hook("parse_arguments", on_cmake_command) def cmake_modules(linter): modules = set([ "GSL", "NUMPY", "Poco", "TBB", "TinyXML", "UUID", "Xenomai", ]) upgrades = {"Eigen": "Eigen3"} def on_find_package(info, cmd, args): if args[0] in modules: if "cmake_modules" not in info.find_packages: info.report(WARNING, "MISSING_CMAKE_MODULES", pkg=args[0]) if args[0] in upgrades: info.report(WARNING, "DEPRECATED_CMAKE_MODULE", old_module=args[0], new_module=upgrades[args[0]]) linter.add_command_hook("find_package", on_find_package) def minimum_version(linter): def on_init(info): info.minimum_version = Version("0.0.0") def on_cmake_minimum_required(info, cmd, args): if info.commands and "cmake_minimum_required" not in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd=list(info.commands)[0], second_cmd=cmd) opts, args = cmake_argparse(args, {"VERSION": "!"}) info.minimum_version = Version(opts["VERSION"]) linter.add_init_hook(on_init) linter.add_command_hook("cmake_minimum_required", on_cmake_minimum_required) def all(linter): linter.require(project) linter.require(special_vars) linter.require(global_vars) linter.require(singleton_commands) linter.require(cmake_includes) linter.require(endblock) linter.require(deprecated) linter.require(cmake_modules) linter.require(minimum_version) catkin_lint-1.6.6/src/catkin_lint/checks/python.py000066400000000000000000000050531362025056600222540ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os from ..linter import ERROR from .misc import project def setup(linter): def on_catkin_python_setup(info, cmd, args): if "catkin" not in info.find_packages and not info.is_catkin: info.report(ERROR, "CATKIN_ORDER_VIOLATION", cmd=cmd) if "generate_messages" in info.commands: info.report(ERROR, "ORDER_VIOLATION", first_cmd="generate_messages", second_cmd=cmd) if not info.is_existing_path("setup.py", check=os.path.isfile, require_source_folder=True): info.report(ERROR, "MISSING_FILE", cmd=cmd, file="setup.py") def on_final(info): if "catkin_python_setup" not in info.commands and info.is_existing_path("setup.py", check=os.path.isfile, require_source_folder=True): info.report(ERROR, "MISSING_PYTHON_SETUP", file_location=("CMakeLists.txt", 0)) linter.require(project) linter.add_command_hook("catkin_python_setup", on_catkin_python_setup) linter.add_final_hook(on_final) def all(linter): linter.require(setup) catkin_lint-1.6.6/src/catkin_lint/cmake.py000066400000000000000000000375441362025056600205650ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import re from .util import iteritems, zip_longest from copy import copy class CMakeSyntaxError(RuntimeError): pass def _escape(s): return re.sub(r'([\\$"])', r"\\\1", s) def _unescape(s): return s if "\\" not in s else re.sub(r'\\(.)', r"\1", s) _find_var = re.compile(r'(?]+))>', re.IGNORECASE).search # TODO We just replace all generator expressions by empty strings. # This may or may not be a smart thing to do in this context def _resolve_generator_expressions(s): mo = _find_genexp(s) while mo is not None: s = s[:mo.start(0)] + s[mo.end(0):] mo = _find_genexp(s) return s _token_spec = [ ('NL', r'\r\n|\r|\n'), ('SKIP', r'[ \t]+'), ('LPAREN', r'\('), ('RPAREN', r'\)'), ('STRING', r'"(?:\\.|[^\\"])*"'), ('SEMICOLON', r';'), ('WORD', r'(?:\\.|[^\\\(\)"# \t\r\n;])+'), ('PRAGMA', r'#catkin_lint:.*?$'), ('COMMENT', r'#.*?$'), ] _next_token = re.compile('|'.join('(?P<%s>%s)' % pair for pair in _token_spec), re.MULTILINE | re.IGNORECASE).match def _lexer(s): line = 1 col = 1 mo = _next_token(s) pos = 0 while mo is not None: typ = mo.lastgroup if typ == 'NL': line += 1 col = 1 else: if typ != 'SKIP': val = mo.group(typ) if typ == "STRING": val = val[1:-1] yield (typ, val, line, col) col += mo.end() - mo.start() pos = mo.end() mo = _next_token(s, pos) if pos != len(s): raise CMakeSyntaxError("Unexpected character %r on line %d" % (s[pos], line)) _arg_spec = [ ('SKIP', r';'), ('ARG', r'(?:\\.|[^;])+'), ] _next_arg = re.compile('|'.join('(?P<%s>%s)' % pair for pair in _arg_spec)).match def _resolve_args(arg_tokens, var, env_var): args = [] for typ, val in arg_tokens: if typ == "STRING": val = _resolve_vars(val, var, env_var) # Treat quoted strings as a single word args.append(_unescape(val)) elif typ == "WORD": val = _resolve_vars(val, var, env_var) # Split unquoted text into list items mo = _next_arg(val) while mo is not None: typ = mo.lastgroup if typ != "SKIP": arg = mo.group(typ) args.append(_unescape(arg)) pos = mo.end() mo = _next_arg(val, pos) elif typ != "SEMICOLON": args.append(val) return args class Command(object): def __init__(self, name, args, filename, line, column): self.name = name self.args = args self.filename = filename self.line = line self.column = column class BasicBlock(object): def __init__(self): self.commands = [] class Callable(BasicBlock): def __init__(self, params, new_context): BasicBlock.__init__(self) self.name = params[0] self.params = params[1:] self.new_context = new_context def _parse_commands(s, filename): commands = [] state = 0 line = 0 s = _resolve_generator_expressions(s) for typ, val, line, col in _lexer(s): if typ == "COMMENT": continue if typ == "PRAGMA": args = re.split(r'\s+', val[13:]) commands.append(Command("#catkin_lint", [("LITERAL", arg) for arg in args if len(arg) > 0], filename, line, col)) continue if state == 0: if typ != "WORD": raise CMakeSyntaxError("%s(%d): expected command identifier and got '%s'" % (filename, line, val)) cmdname = val cmdargs = [] cmdline = line cmdcol = col state = 1 elif state == 1: if typ != "LPAREN": raise CMakeSyntaxError("%s(%d): expected '(' and got '%s'" % (filename, line, val)) paren = 1 state = 2 elif state == 2: if typ == "LPAREN": paren += 1 elif typ == "RPAREN": paren -= 1 if paren == 0: commands.append(Command(cmdname, cmdargs, filename, cmdline, cmdcol)) state = 0 continue cmdargs.append((typ, val)) if state == 1: raise CMakeSyntaxError("%s(%d): expected '(' and got end of file" % (filename, line)) if state == 2: raise CMakeSyntaxError("%s(%d): expected ')' and got end of file" % (filename, line)) return commands def _parse_block(filename, cmds, block_name, result_type, *args): result = result_type(*args) nesting = 1 while cmds: if cmds[0].name.lower() == block_name.lower(): nesting += 1 if cmds[0].name.lower() == "end%s" % block_name.lower(): nesting -= 1 if nesting == 0: return result cmd = cmds.pop(0) result.commands.append(cmd) raise CMakeSyntaxError("%s: expected 'end%s()' and got end of file" % (filename, block_name)) class ParserContext(object): def __init__(self, parent=None): self.parent = parent self.callable = copy(parent.callable) if parent is not None else {} self._call_stack = set([]) self._skip_block = False self._block_level = -1 def call_depth(self): return len(self._call_stack) def _call(self, name, args, var, env_var=None, skip_callable=False): lname = name.lower() if lname in self._call_stack: return f = self.callable[lname] argn = [] save_vars = {} try: for key, value in zip_longest(f.params, args): if key is None: argn.append(value) elif key: save_vars[key] = var[key] if key in var else None var[key] = value if value is not None else "" var["ARGN"] = ';'.join(argn) cmds = copy(f.commands) self._call_stack.add(lname) for cmd, args, arg_tokens, loc in self._yield(cmds, var, env_var, skip_callable): yield (cmd, args, arg_tokens, loc) finally: self._call_stack.remove(lname) for key, value in iteritems(save_vars): if value is not None: var[key] = value else: del var[key] if "ARGN" in var: del var["ARGN"] def _yield(self, cmds, var, env_var, skip_callable): if var is None: var = {} self._block_level = self._block_level + 1 while cmds: if self._block_level == 0: self._skip_block = False cmd = cmds.pop(0) cmdname = _resolve_vars(cmd.name, var, env_var) cmdname_lower = cmdname.lower() if not re.match(r'^#?[a-z_][a-z_0-9]*$', cmdname_lower): raise CMakeSyntaxError("%s(%d): invalid command identifier '%s'" % (cmd.filename, cmd.line, cmdname)) args = _resolve_args(cmd.args, var, env_var) if cmd.name.lower() == "macro": if not args: raise CMakeSyntaxError("%s(%d): malformed macro() definition" % (cmd.filename, cmd.line)) f = _parse_block(cmd.filename, cmds, cmdname, Callable, args, False) self.callable[f.name.lower()] = f yield (cmdname, args, cmd.args, (cmd.filename, cmd.line, cmd.column)) elif cmd.name.lower() == "function": if not args: raise CMakeSyntaxError("%s(%d): malformed function() definition" % (cmd.filename, cmd.line)) f = _parse_block(cmd.filename, cmds, cmdname, Callable, args, True) self.callable[f.name.lower()] = f yield (cmdname, args, cmd.args, (cmd.filename, cmd.line, cmd.column)) elif cmd.name.lower() == "if": f = _parse_block(cmd.filename, cmds, cmdname, BasicBlock) if not self._skip_block: yield (cmdname, args, cmd.args, (cmd.filename, cmd.line, cmd.column)) for cmd, args, arg_tokens, loc in self._yield(f.commands, var, env_var, skip_callable): if cmd.lower() == "else": self._skip_block = False if not self._skip_block: yield (cmd, args, arg_tokens, loc) self._skip_block = False elif cmd.name.lower() == "foreach": if not args: raise CMakeSyntaxError("%s(%d): malformed foreach() loop" % (cmd.filename, cmd.line)) f = _parse_block(cmd.filename, cmds, cmdname, BasicBlock) if not self._skip_block: yield (cmdname, args, cmd.args, (cmd.filename, cmd.line, cmd.column)) loop_var = args[0] if len(args) == 1: continue if args[1] == "RANGE": try: if len(args) == 3: loop_args = range(int(args[2]) + 1) elif len(args) == 4: loop_args = range(int(args[2]), int(args[3]) + 1) elif len(args) == 5: loop_args = range(int(args[2]), int(args[3]) + 1, int(args[4])) else: raise CMakeSyntaxError("%s(%d): RANGE expects one, two, or three integers" % (cmd.filename, cmd.line)) except ValueError: raise CMakeSyntaxError("%s(%d): invalid RANGE parameters" % (cmd.filename, cmd.line)) elif args[1:3] == ["IN", "LISTS"]: loop_args = [] for l in args[3:]: if l in var: loop_args += var[l].split(";") elif args[1:3] == ["IN", "ITEMS"]: loop_args = args[3:] else: loop_args = args[1:] for loop_value in loop_args: var[loop_var] = str(loop_value) loop_cmds = copy(f.commands) for cmd, args, arg_tokens, loc in self._yield(loop_cmds, var, env_var, skip_callable): yield (cmd, args, arg_tokens, loc) if self._skip_block: break self._skip_block = False elif cmdname_lower in self.callable: f = self.callable[cmdname_lower] if skip_callable or f.new_context: yield (cmdname, args, cmd.args, (cmd.filename, cmd.line, cmd.column)) elif not self._skip_block: for cmd, args, arg_tokens, loc in self._call(cmdname, args, var, env_var, skip_callable): yield (cmd, args, arg_tokens, loc) if self._skip_block: break self._skip_block = False else: yield (cmdname, args, cmd.args, (cmd.filename, cmd.line, cmd.column)) self._block_level = self._block_level - 1 def parse(self, s, var=None, env_var=None, filename=None, skip_callable=False): if filename is None: filename = "" cmds = _parse_commands(s, filename) self._block_level = -1 for cmd, args, arg_tokens, loc in self._yield(cmds, var, env_var, skip_callable): yield (cmd, args, arg_tokens, loc) def skip_block(self): self._skip_block = True def argparse(args, opts): result = {} remaining = [] for optname, opttype in iteritems(opts): if opttype == "*" or opttype == "+": result[optname] = [] elif opttype == "?" or opttype == "!": result[optname] = None elif opttype == "-": result[optname] = False elif opttype == "p": result[optname] = {} else: raise RuntimeError("invalid option '%s': %s" % (optname, opttype)) curname = None curtype = None t_args = args[:] while t_args: L = 0 for k, v in iteritems(opts): kl = k.split() ll = len(kl) if kl == t_args[:ll]: if L < ll: L = ll curname = k curtype = v if L > 0: del t_args[:L] if curtype == "-": result[curname] = True curname = None curtype = None elif curname is not None: if curtype == "?" or curtype == "!": result[curname] = t_args[0] curname = None curtype = None del t_args[0] elif curtype == "p": if len(t_args) < 2: t_args.append("") result[curname][t_args[0]] = t_args[1] del t_args[:2] else: result[curname].append(t_args[0]) del t_args[0] else: remaining.append(t_args[0]) del t_args[0] for optname, opttype in iteritems(opts): if opttype == "+" and not result[optname]: raise CMakeSyntaxError("option '%s' has empty, unquoted argument" % optname) if opttype == "!" and not result[optname]: raise CMakeSyntaxError("option '%s' has empty, unquoted argument" % optname) return result, remaining catkin_lint-1.6.6/src/catkin_lint/diagnostics.py000066400000000000000000000710221362025056600220010ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import re message_list = { "ARGUMENT_ERROR": ("malformed argument list: %(msg)s", """\ You invoked a CMake command with a malformed argument list. Most likely, you forgot to properly quote variables which may be empty or undefined. """), "DUPLICATE_CMD": ("duplicate %(cmd)s()", """\ You have called this command more than once, but this does not make sense. If the calls use different arguments, consolidate them into a single call, otherwise simply remove the second. """), "MISSING_CMD": ("missing %(cmd)s()", """\ You failed to call a command that is required for your package to work. Please refer to the catkin build manual for details. """), "DUPLICATE_FIND": ("duplicate find_package(%(pkg)s)", """\ You called find_package() more than once for a particular package, which is not needed except for very specific, advanced circumstances. """), "SHADOWED_FIND": ("call to find_package(%(pkg)s) shadows previously selected components", """\ You have more than one find_package() call for a package, and the COMPONENTS list of the later call does not include a previously chosen component. """), "MISSING_FIND": ("missing find_package(%(pkg)s)", """\ You failed to call find_package() for a dependency of your package. """), "PROJECT_NAME": ("project name '%(name)s' differs from package name", """\ The CMake project name must be identical to the package name. For backwards compatibility reasons, both names should also be identical to the name of the source folder that contains the package. """), "PACKAGE_PATH_NAME": ("package path name '%(path)s' differs from package name", """\ Your package resides in a folder that has a different name than the package itself. This is confusing and might break the assumptions of some tools. """), "LITERAL_PROJECT_NAME": ("use ${PROJECT_NAME} instead of '%(name)s'", """\ The catkin manual recommends that you use the ${PROJECT_NAME} variable instead of the literal project name. """), "ORDER_VIOLATION": ("%(first_cmd)s() is called before %(second_cmd)s()", """\ Certain configuration macros must be called in a specific order as specified by the catkin build manual. Failure to do so may lead to improper configuration of the package and build problems. """), "CATKIN_ORDER_VIOLATION": ("%(cmd)s() is called before find_package(catkin)", """\ Catkin macros cannot be called before catkin has been configured with find_package(catkin). """), "DEPRECATED_CMD": ("%(old_cmd)s() is deprecated, use %(new_cmd)s() instead", """\ Some macros have been deprecated and replaced by newer versions. Please upgrade your CMakeLists.txt to ensure compatibility with future caktin versions. """), "DEPRECATED_CMAKE_MODULE": ("CMake module '%(old_module)s' is deprecated, use '%(new_module)s' instead", """\ Some CMake modules have been provided by cmake_modules in the past, but are now provided by the system package or CMake itself. Please upgrade your CMakeLists.txt to ensure compatibility with future catkin versions. """), "MISSING_CMAKE_MODULES": ("find_package(%(pkg)s) before find_package(cmake_modules)", """\ You need to find_package() cmake_modules before you can use one of its custom configuration modules. """), "MISSING_REQUIRED": ("find_package(%(pkg)s) has no REQUIRED option", """\ The package cannot build without this dependency, so it should be marked as REQUIRED accordingly. Use if(%(pkg)s_FOUND) clauses to use optional packages. """), "MISSING_COMPONENTS": ("missing COMPONENTS keyword before '%(pkg)s'", """\ The find_package(catkin) call can add other catkin packages as dependencies with the COMPONENTS keyword. The find_package() command lists additional packages but has no COMPONENTS keyword. """), "NO_CATKIN_COMPONENT": ("'%(pkg)s' in find_package(catkin) is not a catkin package", """\ The find_package(catkin) call can list other catkin packages as dependencies with the COMPONENTS keyword. This is shorter than multiple find_package() calls, but does not work for system dependencies. """), "UNKNOWN_PACKAGE": ("unknown package '%(pkg)s'", """\ You are referring to a package which seems to be neither a catkin package nor a known system dependency. You may have misspelled the name, or your rosdep database needs to be refreshed with "rosdep update". """), "MISSING_CATKIN_DEPEND": ("%(type)s_depend '%(pkg)s' is not listed in catkin_package()", """\ You have a catkin runtime dependency which is not exported in the CATKIN_DEPENDS stanza of the catkin_package(). """), "INVALID_META_COMMAND": ("%(cmd)s() is not allowed in meta packages", """\ Meta packages do not contain code or data and are merely dependency lists with very strict requirements for the format of the CMakeLists.txt file. """), "INVALID_META_DEPEND": ("meta packages must not have %(type)s_depends", """\ Meta packages do not contain code or data and are merely dependency lists. As meta packages do neither build nor test anything, the only valid dependency type is the run_depend. """), "WRONG_CATKIN_PACKAGE": ("catkin_package() in meta package", """\ Meta packages use the catkin_metapackage() command to declare a meta package. This performs additional checks and ensures that all requirements are met. """), "WRONG_CATKIN_METAPACKAGE": ("catkin_metapackage() in regular package", """\ The catkin_metapackage() command signals your intent to declare a meta package, but the package.xml does not contain a tag. """), "CMAKE_BUILD_TYPE": ("variable CMAKE_BUILD_TYPE is overwritten unconditionally", """\ If you wish to provide a default value for CMAKE_BUILD_TYPE, make sure that you do not overwrite user preferences. You should guard the set() command with an appropriate if(NOT CMAKE_BUILD_TYPE) block. """), "IMMUTABLE_VAR": ("variable %(var)s is modified", """\ You have modified a CMake variable that is initialized by CMake itself and must not be modified under any circumstances. """), "CRITICAL_VAR_OVERWRITE": ("variable %(var)s is overwritten", """\ You have overwritten a critical CMake variable and its original content is lost. This will most likely break the build on different systems or affect the global catkin workspace in unintended ways. """), "CRITICAL_VAR_APPEND": ("variable %(var)s is modified", """\ You have appended extra data to a critical CMake variable. This might break the build on different systems or affect the global catkin workspace in unintended ways. """), "MISSING_SHEBANG": ("script '%(file)s' has no %(interpreter)s shebang line", """\ All %(interpreter)s scripts need an appropriate shebang line, i.e. the first line has to start with '#!' and needs to name the full path to the %(interpreter)s executable. """), "EXTERNAL_FILE": ("%(cmd)s() uses file '%(file)s' which is not in package", """\ This catkin command uses a file which lies outside of the package source folder. While this may work in your particular setup, you cannot assume file locations in general. Use find_file() to detect external locations insteed. """), "MISSING_FILE": ("%(cmd)s() needs missing file '%(file)s'", """\ This catkin command processes a particular file which is missing from the package source folder. """), "EXTERNAL_DIRECTORY": ("%(cmd)s() uses directory '%(directory)s' which is not in package", """\ This catkin command uses a directory which lies outside of the package source folder. While this may work in your particular setup, you cannot assume file locations in general. Use find_path() to detect external locations insteed. """), "MISSING_DIRECTORY": ("%(cmd)s() needs missing directory '%(directory)s'", """\ This catkin command processes a particular directory which is missing from the package source folder. """), "WRONG_INSTALL_DESTINATION": ("install(%(type)s ... %(dest)s) does not install to ${CATKIN_INSTALL_PREFIX}", """\ Your package installs one or more files to an unexpected location. Catkin provides a number of standard variables ${CATKIN_*_DESTINATION} to specify installation folders. You should use those to ensure that your package will continue to work if the file system layout is changed in the future. """), "WRONG_BIN_INSTALL_DESTINATION": ("executable file is not installed to bin destination", """\ Your package installs one or more files to an unexpected location. Executable files should end up in either ${CATKIN_GLOBAL_BIN_DESTINATION} or ${CATKIN_PACKAGE_BIN_DESTINATION}. """), "UNUSED_DEPEND": ("unused %(type)s_depend on '%(pkg)s'", """\ You have a listed a package dependency but do not appear to use any of the features it provides. """), "MISSING_DEPEND": ("missing %(type)s_depend on '%(pkg)s'", """\ Your package uses features of another package but you failed to list this dependency in your package.xml """), "LAUNCH_DEPEND": ("launch configuration needs %(type)s_depend on '%(pkg)s'", """\ Your package refers to another package in one of its launch files, but you do not have this dependency in your package.xml """), "UNCONFIGURED_BUILD_DEPEND": ("unconfigured build_depend on '%(pkg)s'", """\ You declare a build dependency on another package but neither call find_package() nor have it listed as catkin component in the find_package(catkin) call. """), "MISCONFIGURED_CATKIN_PACKAGE": ("misconfigured catkin package '%(pkg)s'", """\ You use an unsupported way to include a catkin package in your build. Even though this might work in your particular case, you should use the proper find_package() mechanism to make sure that all relevant CMake macros will be run. """), "WRONG_DEPEND": ("%(wrong_type)s_depend '%(pkg)s' should be a %(right_type)s_depend", """\ You have listed a package as the wrong dependency type. build_depends are needed to build your package (as in compile the declared executables and libraries). run_depends are needed at runtime to run the nodes or use the libraries and exported headers in other projects. buildtool_depends are significant only for cross-compiling; in that case, buildtool_depends are host architecture (and run during the build process) while build_depends are target architecture (and are linked against). test_depends are additional run_depends which only apply to unit tests. """), "UNUSED_GENERATE_MSG": ("generate_messages() called but no message declared", """\ The generate_messages() call creates the messages, services, and actions which are declared in your package. If your package does not supply any of these, you do not have to call generate_messages() at all. """), "MISSING_GENERATE_MSG": ("missing generate_messages()", """\ The generate_messages() call creates the messages, services, and actions which are declared in your package by add_message_files(), add_service_files(), and add_action_files() respectively. """), "SYSTEM_AS_CATKIN_DEPEND": ("catkin_package() lists '%(pkg)s' as catkin package but it is not", """\ In your catkin_package() call, you have listed a system dependency in the CATKIN_DEPENDS stanza, but it belongs in the DEPENDS stanza instead. """), "CATKIN_AS_SYSTEM_DEPEND": ("catkin_package() lists '%(pkg)s' as system package but it is not", """\ In your catkin_package() call, you have listed a catkin package in the DEPENDS stanza, but it belongs in the CATKIN_DEPENDS stanza instead. """), "UNCONFIGURED_SYSTEM_DEPEND": ("catkin_package() lists unconfigured system package '%(pkg)s'", """\ In order to export a system package as dependency, you must either call find_package(%(pkg)s) first or initialize the %(pkg)s_INCLUDE_DIRS and %(pkg)s_LIBRARIES variables manually. """), "UNUSED_INCLUDE_PATH": ("include path '%(path)s' is exported but not used for the build", """\ You have listed an include path in the INCLUDE_DIRS stanza of the catkin_package() command, but that path is not mentioned in any include_directories() call. """), "DUPLICATE_INCLUDE_PATH": ("duplicate include path ${%(pkg)s_INCLUDE_DIRS}", """\ Include paths of packages listed in the find_package(catkin) command are added implicitly by the ${catkin_INCLUDE_DIRS} variable. There is no need to add it a second time. """), "AMBIGUOUS_INCLUDE_PATH": ("include paths '%(path)s' and '%(parent_path)s' are ambiguous", """\ You have used two include paths where one is a parent of the other. Thus the same headers can be included with two different include paths which may confuse users. It is recommended that you keep your include paths consistent. """), "MISSING_INCLUDE_PATH": ("exported include path '%(path)s' does not exist", """\ You have listed an invalid include path in the INCLUDE_DIRS stanza of the catkin_package() command. """), "EXTERNAL_INCLUDE_PATH": ("catkin_package() exports non-package include path", """\ You listed one or more include paths in the INCLUDE_DIRS stanza of your catkin_package() call which are not part of your package. If you want to export include paths of other modules, use find_package(), find_path(), and/or find_library() and add the dependency to the DEPENDS stanza. """), "UNUSED_CATKIN_INCLUDE_DIRS": ("missing include_directories(${catkin_INCLUDE_DIRS})", """\ You must add the catkin include paths to your include search list, or you might experience build failures. """), "UNINSTALLED_INCLUDE_PATH": ("catkin_package() exports package include path that is not installed", """\ Your package can be used from the devel space but cannot be installed properly, because the header files will not be copied to the proper location. """), "UNINSTALLED_TARGET": ("target '%(target)s' is not installed", """\ Your package can be used from the devel space but cannot be installed properly, because the build target will not be copied to the proper location. """), "MISSING_PYTHON_SETUP": ("file setup.py found but no catkin_python_setup() call", """\ The catkin_python_setup() call is required to properly configure python modules, and the existing setup.py indicates that your package provides one or more python modules. """), "MISSING_EXPORT_LIB": ("exported package include path but no exported library", """\ Your package exports a package include path and builds at least one library, which suggests that you may want to export the library to other packages as well. """), "UNCONFIGURED_MSG_DEPEND": ("unconfigured message dependency '%(pkg)s'", """\ Your messages depend on another package which is neither find_package()'d nor listed as a component in the find_package(catkin) call. """), "UNINSTALLED_EXPORT_LIB": ("exported library '%(target)s' is not installed", """\ Your package can be used from the devel space but cannot be installed properly, because a library that is exported via catkin_package() will not be copied to the proper location. """), "EXPORT_LIB_NOT_LIB": ("exported library '%(target)s' is not a library", """\ You listed a library in the LIBRARIES stanza of your catkin_package() call, but it really is an executable. """), "EXPORT_LIB_RENAMED": ("exported library '%(target)s' cannot have different output name", """\ Due to a limitation of the catkin build system, the catkin_package() library export function will break if the logical target name is not equal to the actual library name. """), "SUGGEST_CATKIN_DEPEND": ("package '%(pkg)s' should be listed in catkin_package()", """\ Your package configures another package as build dependency, it is listed as run_depend in your package.xml, and its name suggests that it contains ROS messages. In that case, you must add it to the CATKIN_DEPENDS stanza of your catkin_package() """), "UNDEFINED_TARGET": ("referenced target '%(target)s' is not defined", """\ Your package installs or exports a CMake target which is not defined at all. This could be a typo, or the target is implicitly defined by a macro that is unknown to catkin_lint. """), "INVALID_TARGET_OUTPUT": ("target '%(target)s' has invalid characters in its output file name", """\ The output file that your target is supposed to generate contains invalid characters in its name. You probably forget to call set_target_properties(... PROPERTIES OUTPUT_NAME ...) """), "UNINSTALLED_DEPEND": ("target '%(export_target)s' depends on target '%(target)s' which is not installed", """\ Your package can be used from the devel space but cannot be installed properly, because one of your installed targets depends on a library from your package that is not installed as well. """), "UNINSTALLED_SCRIPT": ("file '%(script)s' is executable but not installed", """\ Your package contains a file that is marked as executable but not installed. If it is a script intended to be run (e.g. with rosrun), it will not work outside the devel tree. If it is not an executable script, you should fix the file permissions. """), "SCRIPT_NOT_EXECUTABLE": ("script '%(script)s' must be executable", """\ Your package contains a script file that has to be marked as executable. On Un*x systems, run 'chmod +x "%(script)s"' to set the executable bit. """), "LINK_DIRECTORY": ("use of link_directories() is strongly discouraged", """\ Directories which are added to the search path with link_directories() will not be propagated to dependent packages. You should avoid this command or at least be aware that it might not work as expected in dependent packages. """), "EXTERNAL_LINK_DIRECTORY": ("link_directories() must not be used for system depends", """\ Directories which are added to the search path with link_directories() will not be propagated to dependent packages. Use find_package() or find_library() with the appropriate PATHS or HINTS instead. """), "PLUGIN_EXPORT_PREFIX": ("%(export)s plugin file reference must start with '${prefix}/'", """\ The ${prefix} variable is carefully overloaded to work with both devel space and install space and must be used in all tags. """), "MISSING_PLUGIN": ("%(export)s plugin refers to missing file '%(file)s'", """\ A plugin declaration file which is listed in your package.xml is missing from the package source folder. """), "UNINSTALLED_PLUGIN": ("%(export)s plugin file '%(file)s' is not installed to ${CATKIN_PACKAGE_SHARE_DESTINATION}", """\ Your package can be used from the devel space but cannot be installed properly, because a plugin declaration file which is listed in your package.xml is not installed to the correct location. """), "PLUGIN_DEPEND": ("package exports %(export)s plugin but does not %(type)s_depend on '%(pkg)s'", """\ Your package exports a plugin for another package, but fails to list said package as a dependency. """), "DESCRIPTION_BOILERPLATE": ("package description starts with boilerplate '%(text)s'", """\ Your package description starts with a number of typical filler words which do not actually describe the contents of your package. Typically, you can simply delete these words from the description, and it will still make sense and be much more concise. """), "DESCRIPTION_MEANINGLESS": ("meaningless package description '%(text)s'", """\ Your package description merely consists of typical filler words which do not actually describe the contents of your package in a meaningful way. """), "FIND_BY_INCLUDE": ("use find_package(%(pkg)s) instead of include(Find%(pkg)s.cmake)", """\ The FindXXX.cmake modules are intended to be included by the find_package() command. """), "REDUNDANT_LIB_PREFIX": ("library output name '%(output)s' has redundant 'lib' prefix", """\ Libraries are automatically prefixed with 'lib', so your library will end up with a file name like 'lib%(output)s.so'. You can use set_target_properties(... PROPERTIES OUTPUT_NAME ...) to give your library a different file name without changing the target name. """), "EXTERNAL_SUBDIR": ("subdirectory %(subdir)s is not in package", """\ You added another subdirectory with add_subdirectory(), but the specified path points outside of the package source directory. """), "MISSING_SUBDIR": ("subdirectory '%(subdir)s' is missing", """\ You specified a subdirectory which does not exists or is unreadable. """), "DUPLICATE_SUBDIR": ("subdirectory '%(subdir)s' is added a second time", """\ You added another subdirectory with add_subdirectory() multiple times. This can also happen if you accidentally created a loop where subdir A adds subdir B, which adds subdir A again. """), "SUBPROJECT": ("subdirectory '%(subdir)s' contains a subproject", """\ Your package has an independent subproject. This can interact with catkin in unusual ways and is strongly discouraged. No further checks are performed in this subdirectory. """), "GLOBAL_VAR_COLLISION": ("global variable '%(var)s' should contain project name", """\ Global variables and options are stored in the cache. You should prefix your variable names with the project name to avoid name collisions with other packages. """), "ENV_VAR": ("environment variables should not be used", """\ The behavior of your build should not depend on any environment variables. """), "EXPORTED_PKG_CONFIG": ("catkin_package() exports pkg-config module '%(pkg)s'", """\ Although CMake can invoke pkg-config to detect other modules, this does not work well with catkin, as pkg-config may require you to add link directories. Use the results of pkg_check_module() as hint for find_path() and find_library() instead. """), "OS_ERROR": ("OS error: %(msg)s", """\ An operating system error has occured. This is not a linting problem per se but might be caused by a missing or unreadable file. """), "PARSE_ERROR": ("parse error: %(msg)s", """\ Your package has a malformed file that could not be processed for linting. """), "ENDBLOCK_ARGS": ("extra arguments in %(cmd)s()", """\ The catkin manual recommends that %(cmd)s and other end-of-block statements have no arguments. If you have nested blocks, you should indent them properly instead. """), "CMD_CASE": ("%(cmd)s() should be all lower-case", """\ The catkin manual recommends that all commands be written in lower case. """), "UNGUARDED_TEST_DEPEND": ("test_depend '%(pkg)s' used without if(CATKIN_ENABLE_TESTING)", """\ You have used a test dependency without properly guarding it by a if(CATKIN_ENABLE_TESTING) block. You must add a proper build dependency if you wish to use this package even if tests are disabled. """), "UNGUARDED_TEST_CMD": ("%(cmd)s() used without if(CATKIN_ENABLE_TESTING)", """\ You have used a test command without properly guarding it by a if(CATKIN_ENABLE_TESTING) block. """), "INDENTATION": ("line is not indented properly", """\ For better readability, each command should be placed on its own line. if() and foreach() bodies should be indented by one or more extra spaces. """), "UNSORTED_LIST": ("list %(name)s should be sorted", """\ The catkin manual recommends that list element be kept in order. """), "UNQUOTED_STRING_OP": ("operands for operator %(op)s should be quoted strings", """\ The catkin manual recommends that if() conditions with string operators should have the operands enclosed in double quotes. """), "AMBIGUOUS_CONDITION": ("condition '%(cond)s' is ambiguous", """\ Historically, the if() command will interpret a single token as a variable name and transparently resolve it if possible. Explicit variable references like if(${var}) can lead to incorrect results if ${var} resolves to a different variable name. Use if(var) instead. """), } def msg(msg_id, **kwargs): text, explanation = message_list[msg_id] explanation = re.sub(r"\s+", " ", explanation).strip() return (msg_id, text % kwargs, explanation % kwargs) def add_user_defined_msg(msg_id, text, explanation): if msg_id in message_list: raise ValueError("duplicate message ID: %s" % msg_id) message_list[msg_id] = (text, explanation) catkin_lint-1.6.6/src/catkin_lint/environment.py000066400000000000000000000237441362025056600220460ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os import gc import sys from time import time try: import cPickle as pickle except ImportError: import pickle from catkin_pkg.package import parse_package, PACKAGE_MANIFEST_FILENAME from catkin_pkg.packages import find_package_paths from .ros import get_rosdep, get_rosdistro from .util import iteritems, write_atomic DOWNLOAD_CACHE_EXPIRY = 2592000 # 30 days CACHE_VERSION = 1 class Cache(object): def __init__(self): self.version = CACHE_VERSION self.local_paths = {} self.packages = {} class CacheItem(object): def __init__(self, data, timestamp): self.data = data self.timestamp = timestamp class PackageCacheData(object): def __init__(self, path, manifest): self.path = path # if path is None, we know the package but it is not installed self.manifest = manifest def find_packages(basepath, use_cache=True): global _cache if use_cache: _load_cache() distro_id = os.environ.get("ROS_DISTRO", None) packages = {} package_paths = find_package_paths(basepath) cache_updated = False for path in package_paths: pkg_dir = os.path.realpath(os.path.join(basepath, path)) if use_cache: last_modified = os.path.getmtime(os.path.join(pkg_dir, PACKAGE_MANIFEST_FILENAME)) path_ts = _cache.local_paths[pkg_dir].timestamp if pkg_dir in _cache.local_paths else 0 if last_modified > path_ts: manifest = parse_package(pkg_dir) _cache.local_paths[pkg_dir] = CacheItem(manifest, last_modified) cache_updated = True else: manifest = _cache.local_paths[pkg_dir].data if distro_id not in _cache.packages: _cache.packages[distro_id] = {} manifest_ts = _cache.packages[distro_id][manifest.name].timestamp if manifest.name in _cache.packages[distro_id] else 0 if last_modified > manifest_ts: _cache.packages[distro_id][manifest.name] = CacheItem(PackageCacheData(path=pkg_dir, manifest=manifest), last_modified) cache_updated = True else: manifest = parse_package(pkg_dir) packages[path] = manifest if cache_updated: _store_cache() return packages def is_catkin_package(manifest): if manifest is None: return False for e in manifest.exports: if e.tagname == "build_type" and e.content != "catkin": return False return True class CatkinEnvironment(object): def __init__(self, os_env=None, use_rosdep=True, use_rosdistro=True, use_cache=True, quiet=False): self.package_path_order = [] self.searched_paths = {} self.known_catkin_pkgs = set() self.known_other_pkgs = set() self.ok = True self.os_env = os_env self.use_cache = use_cache self.use_rosdistro = use_rosdistro self.rosdistro = None self.rosdep = None self.quiet = quiet if use_rosdep: try: gc.disable() self.rosdep = get_rosdep(quiet=self.quiet) except Exception as err: if not self.quiet: sys.stderr.write("catkin_lint: cannot load rosdep database: %s\n" % str(err)) sys.stderr.write("catkin_lint: unknown dependencies will be ignored\n") self.ok = False finally: gc.enable() def add_path(self, path): if not os.path.isdir(path): return [] realpath = os.path.realpath(path) if realpath in self.searched_paths: return self.searched_paths[realpath] self.package_path_order.append(realpath) pkgs = find_packages(path, use_cache=self.use_cache) found = [] for p, m in iteritems(pkgs): if is_catkin_package(m): self.known_catkin_pkgs.add(m.name) pm = (os.path.join(path, p), m) found.append(pm) else: self.known_other_pkgs.add(m.name) self.searched_paths[realpath] = found return found def find_local_pkg(self, name): for path in self.package_path_order: for p, m in self.searched_paths[path]: if m.name == name: return p, m raise KeyError() def is_catkin_pkg(self, name): if name in self.known_catkin_pkgs: return True if name in self.known_other_pkgs: return False if self.rosdep is not None: if not self.rosdep.is_ros(name): return False try: return is_catkin_package(self.get_manifest(name)) except (IOError, KeyError): return True return False def get_manifest(self, name): global _cache if self.use_cache: cache_updated = False distro_id = os.environ.get("ROS_DISTRO", None) _load_cache() if distro_id not in _cache.packages: _cache.packages[distro_id] = {} if name in _cache.packages[distro_id]: data = _cache.packages[distro_id][name].data ts = _cache.packages[distro_id][name].timestamp if data.path is not None and not os.path.isdir(data.path): if data.path in _cache.local_paths: del _cache.local_paths[data.path] del _cache.packages[distro_id][name] cache_updated = True elif self.use_rosdistro and data.path is None and ts + DOWNLOAD_CACHE_EXPIRY < time(): del _cache.packages[distro_id][name] cache_updated = True else: return data.manifest if cache_updated: _store_cache() if self.use_rosdistro: if self.rosdistro is None: self.rosdistro = get_rosdistro(quiet=self.quiet) if not self.rosdistro.ok(): if not self.quiet and self.ok: sys.stderr.write("catkin_lint: unknown dependencies will be ignored\n") self.ok = False raise KeyError() manifest = self.rosdistro.download_manifest(name) if self.use_cache: _cache.packages[distro_id][name] = CacheItem(PackageCacheData(path=None, manifest=manifest), time()) _store_cache() return manifest raise KeyError() def is_known_pkg(self, name): if name in self.known_catkin_pkgs or name in self.known_other_pkgs: return True if self.rosdep is not None: return self.rosdep.has_key(name) # noqa return False _cache = None try: from rospkg import get_ros_home _cache_dir = os.path.join(get_ros_home(), "catkin_lint") except ImportError: _cache_dir = os.path.join(os.path.expanduser("~"), ".ros", "catkin_lint") def _load_cache(): global _cache global _cache_dir if _cache is None: try: gc.disable() with open(os.path.join(_cache_dir, "packages.pickle"), "rb") as f: _cache = pickle.loads(f.read()) if not isinstance(_cache, Cache) or _cache.version != 1: raise RuntimeError() except Exception: _cache = Cache() finally: gc.enable() def _store_cache(): global _cache global _cache_dir try: os.makedirs(_cache_dir) except OSError: pass write_atomic(os.path.join(_cache_dir, "packages.pickle"), pickle.dumps(_cache, -1)) def _clear_cache(): global _cache _cache = Cache() _store_cache() def _dump_cache(): global _cache _load_cache() sys.stdout.write("Cache version is %d\n" % _cache.version) sys.stdout.write("Cached local paths: %d\n" % len(_cache.local_paths)) t0 = time() for p, c in iteritems(_cache.local_paths): sys.stdout.write(" * %s\n => %s (%ds)\n" % (p, c.data.name, t0 - c.timestamp)) for distro_id in _cache.packages: sys.stdout.write("Cached packages for distribution %s: %d\n" % (distro_id if distro_id is not None else "(None)", len(_cache.packages[distro_id]))) for p, c in iteritems(_cache.packages[distro_id]): sys.stdout.write(" * %s (%s, %ds)\n" % (p, "available" if c.data.path is not None else "not found" if c.data.manifest is None else "not installed", t0 - c.timestamp)) catkin_lint-1.6.6/src/catkin_lint/linter.py000066400000000000000000000731701362025056600207750ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os import posixpath import re import random import string from fnmatch import fnmatch from copy import copy from .cmake import ParserContext, argparse as cmake_argparse, CMakeSyntaxError from .diagnostics import msg, add_user_defined_msg ERROR = 0 WARNING = 1 NOTICE = 2 class Message(object): def __init__(self, package, file_name, line, level, msg_id, text, description): self.package = package self.file = file_name self.line = line self.level = level self.id = msg_id self.text = text self.description = description def __lt__(self, other): return (self.package, self.level, self.file, self.line, self.id) < (other.package, other.level, other.file, other.line, other.id) def generate_random_id(L=16): return "".join(random.choice(string.ascii_letters + string.digits) for _ in range(L)) class PathClass(object): SOURCE = 0 BINARY = 1 DISCOVERED = 3 CATKIN = 4 OTHER = 5 class PathConstants(object): PACKAGE_SOURCE = "/%s" % generate_random_id() PACKAGE_BINARY = "/%s" % generate_random_id() CATKIN_DEVEL = "/%s" % generate_random_id() CATKIN_INSTALL = "/%s" % generate_random_id() DISCOVERED_PATH = "/%s" % generate_random_id() class LintInfo(object): def __init__(self, env): self.env = env self.path = None self.subdir = "" self.subdirs = set() self.manifest = None self.file = "" self.line = 0 self.ignore_message_ids = set() self.ignore_message_ids_once = set() self.ignored_messages = [] self.command_loc = {} self.commands = set() self.find_packages = set() self.targets = set() self.executables = set() self.libraries = set() self.static_libraries = set() self.interface_libraries = set() self.conditionals = [] self.var = {} self.parent_var = {} self.messages = [] self.generated_files = set([""]) def report(self, level, msg_id, **kwargs): file_name, line = self.file, self.line loc = kwargs.get("file_location", None) if loc: file_name, line = loc del kwargs["file_location"] msg_id, text, description = msg(msg_id, **kwargs) if msg_id in self.ignore_message_ids or msg_id in self.ignore_message_ids_once: self.ignored_messages.append(Message( package=self.manifest.name, file_name=file_name, line=line, level=level, msg_id=msg_id, text=text, description=description )) return self.messages.append(Message( package=self.manifest.name, file_name=file_name, line=line, level=level, msg_id=msg_id, text=text, description=description )) def current_location(self): return (self.file, self.line) if self.file and self.line else None def location_of(self, command): return self.command_loc.get(command, None) def source_relative_path(self, path): new_path = posixpath.normpath(posixpath.join(self.var["CMAKE_CURRENT_SOURCE_DIR"], path.replace(os.path.sep, "/"))) if new_path.startswith(PathConstants.PACKAGE_SOURCE): new_path = new_path[len(PathConstants.PACKAGE_SOURCE) + 1:] return new_path def binary_relative_path(self, path): new_path = posixpath.normpath(posixpath.join(self.var["CMAKE_CURRENT_BINARY_DIR"], path.replace(os.path.sep, "/"))) if new_path.startswith(PathConstants.PACKAGE_BINARY): new_path = new_path[len(PathConstants.PACKAGE_BINARY) + 1:] return new_path def report_path(self, path): new_path = path.replace(PathConstants.PACKAGE_BINARY, "${PROJECT_BUILD_DIR}") new_path = new_path.replace(PathConstants.CATKIN_DEVEL, "${CATKIN_DEVEL_PREFIX}") new_path = new_path.replace(PathConstants.CATKIN_INSTALL, "${CATKIN_INSTALL_PREFIX}") if new_path.startswith(PathConstants.PACKAGE_SOURCE): return posixpath.normpath(path[len(PathConstants.PACKAGE_SOURCE) + 1:]) return posixpath.normpath(new_path) def real_path(self, path): return os.path.normpath(os.path.join(self.path, path)) def find_package_path(self, pkg, path): return posixpath.join(PathConstants.DISCOVERED_PATH, pkg, path) def path_class(self, path): tmp = posixpath.normpath(posixpath.join(self.var["CMAKE_CURRENT_SOURCE_DIR"], path.replace(os.path.sep, "/"))) if tmp.startswith(PathConstants.PACKAGE_SOURCE): return PathClass.SOURCE if tmp.startswith(PathConstants.PACKAGE_BINARY): return PathClass.BINARY if tmp.startswith(PathConstants.DISCOVERED_PATH): return PathClass.DISCOVERED if tmp.startswith(PathConstants.CATKIN_DEVEL) or tmp.startswith(PathConstants.CATKIN_INSTALL): return PathClass.CATKIN return PathClass.OTHER def is_valid_path(self, path, valid=[PathClass.SOURCE, PathClass.BINARY, PathClass.DISCOVERED]): return self.path_class(path) in valid def is_existing_path(self, path, check=os.path.exists, require_source_folder=False, discovered_path_ok=True): if self.condition_is_checked("EXISTS %s" % path) or (check == os.path.isdir and self.condition_is_checked("IS_DIRECTORY %s" % path)): return True tmp = path.replace(os.path.sep, "/") if tmp.startswith(PathConstants.PACKAGE_SOURCE): tmp = path[len(PathConstants.PACKAGE_SOURCE) + 1:] if check(os.path.normpath(os.path.join(self.path, self.subdir, tmp))): return True tmp = posixpath.normpath(posixpath.join(self.var["CMAKE_CURRENT_SOURCE_DIR"], path.replace(os.path.sep, "/"))) if tmp.startswith(PathConstants.PACKAGE_SOURCE): if not require_source_folder and not posixpath.isabs(path) and tmp[len(PathConstants.PACKAGE_SOURCE) + 1:] in self.generated_files: return True if not require_source_folder and tmp in self.generated_files: return True return check(os.path.join(self.path, os.path.normpath(tmp[len(PathConstants.PACKAGE_SOURCE) + 1:]))) if not require_source_folder and tmp.startswith(PathConstants.PACKAGE_BINARY): return tmp[len(PathConstants.PACKAGE_BINARY) + 1:] in self.generated_files if not require_source_folder and tmp in self.generated_files: return True if not require_source_folder and tmp.startswith(PathConstants.CATKIN_DEVEL): s = tmp[len(PathConstants.CATKIN_DEVEL) + 1:] for t in ["include", "lib", "share", "bin"]: if s.startswith(t): return True if not require_source_folder and tmp.startswith(PathConstants.CATKIN_INSTALL): s = tmp[len(PathConstants.CATKIN_INSTALL) + 1:] for t in ["include", "lib", "share", "bin"]: if s.startswith(t): return True return tmp.startswith(PathConstants.DISCOVERED_PATH) and discovered_path_ok def is_internal_path(self, path): tmp = posixpath.normpath(posixpath.join(self.var["CMAKE_CURRENT_SOURCE_DIR"], path)) return tmp.startswith(PathConstants.PACKAGE_SOURCE) or tmp.startswith(PathConstants.PACKAGE_BINARY) def is_catkin_install_destination(self, path, subdir=None): full_path = posixpath.normpath(posixpath.join(PathConstants.CATKIN_INSTALL, path)) catkin_dir = posixpath.join(PathConstants.CATKIN_INSTALL, subdir or "") return full_path.startswith(catkin_dir) def is_catkin_bin_install_destination(self, path): return self.is_catkin_install_destination(path, "bin") or self.is_catkin_install_destination(path, "lib/%s" % self.manifest.name) def condition_is_checked(self, expr): for c in self.conditionals: if expr in c.expr and c.value: return True return False class IfCondition(object): def __init__(self, expr, value): self.expr = expr self.value = value class CMakeLinter(object): def __init__(self, env): self.env = env self.messages = [] self.ignore_message_ids = set() self.ignored_messages = [] self._cmd_hooks = {} self._running_hooks = set([]) self._init_hooks = [] self._final_hooks = [] self._added_checks = set([]) self._catch_circular_deps = set([]) self._include_blacklist = {"catkin": ["*"]} self._ctx = None def require(self, check): if check in self._catch_circular_deps: raise RuntimeError("Circular dependency detected") if check in self._added_checks: return self._added_checks.add(check) self._catch_circular_deps.add(check) check(self) self._catch_circular_deps.remove(check) def register_message(self, msg_id, text, description=None): if not re.match(r"X_[A-Z0-9_]+$", msg_id): raise ValueError("custom message IDs must start with X_ and only use the characters [A-Z0-9_]") if not text: raise ValueError("message text for %s must not be empty" % msg_id) if re.search(r"[\r\n\t]", text): raise ValueError("message text for %s must not contain TAB or newline characters" % msg_id) add_user_defined_msg(msg_id, text, description or "This message has been defined by a third-party plugin and has no description") def add_init_hook(self, cb): self._init_hooks.append(cb) def add_command_hook(self, cmd, cb): if cmd not in self._cmd_hooks: self._cmd_hooks[cmd] = [cb] else: self._cmd_hooks[cmd].append(cb) def add_final_hook(self, cb): self._final_hooks.append(cb) def _read_file(self, filename): with open(filename, "r") as f: content = f.read() return content def _include_file(self, info, args): opts, args = cmake_argparse(args, {"OPTIONAL": "-", "RESULT_VARIABLE": "?", "NO_POLICY_SCOPE": "-"}) if not args: return if "/" not in args[0] and "." not in args[0]: incl_file = "NOTFOUND" else: incl_file = info.source_relative_path(args[0]) if incl_file.startswith(PathConstants.DISCOVERED_PATH): return skip_parsing = False if info.manifest.name in self._include_blacklist: for glob_pattern in self._include_blacklist[info.manifest.name]: if fnmatch(incl_file, glob_pattern): skip_parsing = True break real_file = os.path.join(info.path, os.path.normpath(incl_file)) if os.path.isfile(real_file): if not skip_parsing: self._parse_file(info, real_file) else: if not opts["OPTIONAL"]: if posixpath.isabs(incl_file): info.report(ERROR, "EXTERNAL_FILE", cmd="include", file=args[0]) else: info.report(ERROR, "MISSING_FILE", cmd="include", file=incl_file) incl_file = "NOTFOUND" if opts["RESULT_VARIABLE"]: info.var[opts["RESULT_VARIABLE"]] = incl_file def _subdirectory(self, info, args): _, args = cmake_argparse(args, {"EXCLUDE_FROM_ALL": "-"}) subdir = info.source_relative_path(args[0]) real_subdir = info.real_path(subdir) if posixpath.isabs(subdir): info.report(ERROR, "EXTERNAL_SUBDIR", subdir=subdir) return if not os.path.isdir(real_subdir): info.report(ERROR, "MISSING_SUBDIR", subdir=subdir) return if subdir in info.subdirs: info.report(ERROR, "DUPLICATE_SUBDIR", subdir=subdir) return info.subdirs.add(subdir) old_subdir = info.subdir old_parent_var = info.parent_var old_find_packages = info.find_packages info.parent_var = info.var info.var = copy(info.var) info.find_packages = copy(info.find_packages) try: info.var["CMAKE_CURRENT_SOURCE_DIR"] = posixpath.join(PathConstants.PACKAGE_SOURCE, subdir) info.var["CMAKE_CURRENT_BINARY_DIR"] = posixpath.join(PathConstants.PACKAGE_BINARY, subdir) info.generated_files.add(subdir) info.subdir = subdir self._parse_file(info, os.path.join(real_subdir, "CMakeLists.txt")) finally: info.var = info.parent_var info.parent_var = old_parent_var info.subdir = old_subdir info.find_packages = old_find_packages def _handle_list(self, info, args): try: op = args.pop(0) name = args.pop(0) items = info.var[name].split(';') if name in info.var and info.var[name] != "" else [] if op == "APPEND": items += args elif op == "PREPEND": items = args + items elif op == "INSERT": pos = int(args.pop(0)) items[pos:pos] = args elif op == "REVERSE": items.reverse() elif op == "SORT": items.sort() elif op == "POP_FRONT": for a in args: info.var[a] = items.pop(0) if not args: items.pop(0) elif op == "POP_BACK": for a in args: info.var[a] = items.pop(-1) if not args: items.pop(-1) elif op == "REMOVE_ITEM": for a in args: while a in items: items.remove(a) elif op == "REMOVE_AT": args = [int(a) for a in args] args.sort() args.reverse() for a in args: try: del items[a] except IndexError: pass elif op == "REMOVE_DUPLICATES": new_items = [] for i in items: if i not in new_items: new_items.append(i) items = new_items elif op == "LENGTH": output = args.pop(-1) info.var[output] = str(len(items)) return elif op == "GET": output = args.pop(-1) sub_list = [] for a in args: try: sub_list.append(items[int(a)]) except IndexError: pass info.var[output] = ';'.join(sub_list) return elif op == "FIND": output = args.pop(-1) a = args.pop(0) info.var[output] = str(items.index(a)) if a in items else "-1" return elif op == "JOIN": glue, output = args info.var[output] = glue.join(items) return elif op == "SUBLIST": first, length, output = int(args[0]), int(args[1]), args[2] if first < 0: first = max(0, len(items) + first) if length == -1 or first + length > len(items): length = len(items) - first info.var[output] = ";".join(items[first:first + length]) return else: return info.var[name] = ';'.join(items) except Exception: pass def _handle_pragma(self, info, args): pragma = args.pop(0) if pragma == "ignore": info.ignore_message_ids |= set([a.upper() for a in args]) if pragma == "report": info.ignore_message_ids -= set([a.upper() for a in args]) if pragma == "ignore_once": info.ignore_message_ids_once |= set([a.upper() for a in args]) if pragma == "skip": self._ctx.skip_block() def _handle_if(self, info, cmd, args, arg_tokens): def is_string_comparison_op(x): return x in ["MATCHES", "IS_NEWER_THAN", "STRLESS", "STRGREATER", "STREQUAL", "STRLESS_EQUAL", "STRGREATER_EQUAL", "VERSION_LESS", "VERSION_GREATER", "VERSION_EQUAL", "VERSION_LESS_EQUAL", "VERSION_GREATER_EQUAL"] if cmd == "if": info.conditionals.append(IfCondition(" ".join(args), True)) if len(arg_tokens) == 1 and re.match(r"\${[a-z_0-9]+}$", arg_tokens[0][1]): info.report(WARNING, "AMBIGUOUS_CONDITION", cond=arg_tokens[0][1]) for i, tok in enumerate(arg_tokens): if tok[0] != "WORD": continue if is_string_comparison_op(tok[1]): if i == 0 or i == len(arg_tokens) - 1: raise CMakeSyntaxError("%s(%d): missing argument for binary operator %s" % (info.file, info.line, tok[1])) if (arg_tokens[i - 1][0] != "STRING" and "${" in arg_tokens[i - 1][1]) or (arg_tokens[i + 1][0] != "STRING" and "${" in arg_tokens[i + 1][1]): info.report(NOTICE, "UNQUOTED_STRING_OP", op=tok[1]) if tok[1] in ["EXISTS", "IS_DIRECTORY", "IS_SYMLINK", "IS_ABSOLUTE"]: if i == len(arg_tokens) - 1: raise CMakeSyntaxError("%s(%d): missing argument for unary operator %s" % (info.file, info.line, tok[1])) if arg_tokens[i + 1][0] != "STRING": info.report(NOTICE, "UNQUOTED_STRING_OP", op=tok[1]) if cmd == "else": if len(info.conditionals) > 0: info.conditionals[-1].value = False if cmd == "endif": if len(info.conditionals) > 0: info.conditionals.pop() def execute_hook(self, info, other_cmd, args): cmd = other_cmd.lower() if cmd not in self._running_hooks: self._running_hooks.add(cmd) try: if cmd == "project": opts, args = cmake_argparse(args, {"VERSION": "?"}) version = opts["VERSION"] or "" version_parts = version.split(".") while len(version_parts) < 4: version_parts.append("0") info.var["PROJECT_NAME"] = args[0] info.var["PROJECT_VERSION"] = info.var["%s_VERSION" % args[0]] = version info.var["PROJECT_VERSION_MAJOR"] = info.var["%s_VERSION_MAJOR" % args[0]] = version_parts[0] info.var["PROJECT_VERSION_MINOR"] = info.var["%s_VERSION_MINOR" % args[0]] = version_parts[1] info.var["PROJECT_VERSION_PATCH"] = info.var["%s_VERSION_PATCH" % args[0]] = version_parts[2] info.var["PROJECT_VERSION_TWEAK"] = info.var["%s_VERSION_TWEAK" % args[0]] = version_parts[3] info.var["PROJECT_SOURCE_DIR"] = info.var["CMAKE_CURRENT_SOURCE_DIR"] info.var["PROJECT_BINARY_DIR"] = info.var["CMAKE_CURRENT_BINARY_DIR"] if cmd in self._cmd_hooks: for cb in self._cmd_hooks[cmd]: cb(info, cmd, args) if cmd == "set": opts, args = cmake_argparse(args, {"PARENT_SCOPE": "-", "FORCE": "-", "CACHE": "*"}) if opts["PARENT_SCOPE"]: info.parent_var[args[0]] = ';'.join(args[1:]) else: info.var[args[0]] = ';'.join(args[1:]) if cmd == "unset": opts, args = cmake_argparse(args, {"CACHE": "-"}) info.var[args[0]] = "" if cmd == "list": self._handle_list(info, args) if cmd == "include": self._include_file(info, args) if cmd == "add_subdirectory": saved_hooks = self._running_hooks self._running_hooks = set() self._subdirectory(info, args) self._running_hooks = saved_hooks if cmd == "find_package": info.var["%s_INCLUDE_DIRS" % args[0]] = info.find_package_path(args[0], "include") info.var["%s_INCLUDE_DIRS" % args[0].upper()] = info.find_package_path(args[0], "include") info.var["%s_LIBRARIES" % args[0]] = posixpath.join(info.find_package_path(args[0], "lib"), "library.so") info.var["%s_LIBRARIES" % args[0].upper()] = posixpath.join(info.find_package_path(args[0], "lib"), "library.so") info.find_packages.add(args[0]) if cmd == "add_executable": info.targets.add(args[0]) if "IMPORTED" not in args and "ALIAS" not in args: info.executables.add(args[0]) if cmd == "add_library": info.targets.add(args[0]) if "IMPORTED" not in args and "ALIAS" not in args and "OBJECT" not in args: info.libraries.add(args[0]) if "STATIC" in args: info.static_libraries.add(args[0]) if "INTERFACE" in args: info.interface_libraries.add(args[0]) if cmd == "add_custom_target": info.targets.add(args[0]) if cmd == "find_path": info.var[args[0]] = info.find_package_path(args[0], "folder") if cmd == "find_library": info.var[args[0]] = info.find_package_path(args[0], "library.so") if cmd == "find_file": info.var[args[0]] = info.find_package_path(args[0], "filename.ext") except CMakeSyntaxError as e: info.report(WARNING, "ARGUMENT_ERROR", msg=str(e)) finally: self._running_hooks.discard(cmd) def _parse_file(self, info, filename): save_file = info.file save_line = info.line save_ctx = self._ctx try: self._ctx = ParserContext() cur_file = os.path.relpath(filename, info.path) info.var["CMAKE_CURRENT_LIST_FILE"] = cur_file info.var["CMAKE_CURRENT_LIST_DIR"] = os.path.dirname(cur_file) or "." info.file = cur_file info.line = 0 content = self._read_file(filename) # cur_col is a len(call_stack) list of indentation lists # i.e. each function/macro invocation has its own indentation list cur_col = [[None]] cur_depth = 0 for cmd, args, arg_tokens, (fname, line, column) in self._ctx.parse(content, var=info.var, env_var=self.env.os_env, filename=cur_file): info.file = fname info.line = line if cmd == "#catkin_lint": self._handle_pragma(info, args) continue if "$ENV{" in ";".join(args): info.report(WARNING, "ENV_VAR") if cmd != cmd.lower(): info.report(NOTICE, "CMD_CASE", cmd=cmd) cmd = cmd.lower() if cmd != "project" and "PROJECT_NAME" in info.var: for _, val in arg_tokens: if info.var["PROJECT_NAME"] in val: info.report(NOTICE, "LITERAL_PROJECT_NAME", name=info.var["PROJECT_NAME"]) break # We do not complain about the project name in source file names if cmd in ["add_executable", "add_library"]: break depth = self._ctx.call_depth() if depth > cur_depth: cur_col += [[None]] * (depth - cur_depth) cur_depth = depth if depth < cur_depth: del cur_col[depth + 1:] cur_depth = depth if cmd == "else": if len(cur_col[-1]) < 2: raise CMakeSyntaxError("%s(%d): else() without if()" % (info.file, info.line)) if column != cur_col[-1][-2]: info.report(NOTICE, "INDENTATION") cur_col[-1][-1] = None elif cmd in ["endif", "endforeach"]: cur_col[-1].pop(-1) if len(cur_col[-1]) == 0: raise CMakeSyntaxError("%s(%d): %s() without %s()" % (info.file, info.line, cmd, cmd[3:])) if column != cur_col[-1][-1]: info.report(NOTICE, "INDENTATION") else: if cur_col[-1][-1] is None: cur_col[-1][-1] = column if len(cur_col[-1]) >= 2 and cur_col[-1][-2] >= cur_col[-1][-1]: info.report(NOTICE, "INDENTATION") if column != cur_col[-1][-1]: info.report(NOTICE, "INDENTATION") if cmd in ["if", "foreach"]: cur_col[-1].append(None) if cmd in ["if", "else", "endif"]: self._handle_if(info, cmd, args, arg_tokens) if cmd == "project" and info.subdir: info.report(WARNING, "SUBPROJECT", subdir=info.subdir) return self.execute_hook(info, cmd, args) info.commands.add(cmd) info.command_loc[cmd] = info.current_location() info.ignore_message_ids_once.clear() finally: info.file = save_file info.line = save_line info.ignore_message_ids_once.clear() self._ctx = save_ctx def lint(self, path, manifest, info=None): if info is None: info = LintInfo(self.env) info.ignore_message_ids = copy(self.ignore_message_ids) info.path = os.path.abspath(path) info.manifest = manifest info.conditionals = [] info.var = { "CMAKE_CURRENT_SOURCE_DIR": PathConstants.PACKAGE_SOURCE, "CMAKE_CURRENT_BINARY_DIR": PathConstants.PACKAGE_BINARY, "CMAKE_ARCHIVE_OUTPUT_DIRECTORY": "%s/lib" % PathConstants.CATKIN_DEVEL, "CMAKE_LIBRARY_OUTPUT_DIRECTORY": "%s/lib" % PathConstants.CATKIN_DEVEL, "CMAKE_RUNTIME_OUTPUT_DIRECTORY": "%s/lib/%s" % (PathConstants.CATKIN_DEVEL, info.manifest.name), "CATKIN_INSTALL_PREFIX": PathConstants.CATKIN_INSTALL, "CMAKE_INSTALL_PREFIX": PathConstants.CATKIN_INSTALL, "CATKIN_DEVEL_PREFIX": PathConstants.CATKIN_DEVEL, "CATKIN_PACKAGE_BIN_DESTINATION": "lib/%s" % info.manifest.name, "CATKIN_PACKAGE_ETC_DESTINATION": "etc/%s" % info.manifest.name, "CATKIN_PACKAGE_INCLUDE_DESTINATION": "include/%s" % info.manifest.name, "CATKIN_PACKAGE_LIB_DESTINATION": "lib", "CATKIN_PACKAGE_PYTHON_DESTINATION": "lib/python/%s" % info.manifest.name, "CATKIN_PACKAGE_SHARE_DESTINATION": "share/%s" % info.manifest.name, "CATKIN_GLOBAL_BIN_DESTINATION": "bin", "CATKIN_GLOBAL_ETC_DESTINATION": "etc", "CATKIN_GLOBAL_INCLUDE_DESTINATION": "include", "CATKIN_GLOBAL_LIB_DESTINATION": "lib", "CATKIN_GLOBAL_LIBEXEC_DESTINATION": "lib", "CATKIN_GLOBAL_PYTHON_DESTINATION": "lib/python/packages", "CATKIN_GLOBAL_SHARE_DESTINATION": "share", "PYTHON_INSTALL_DIR": "lib/python/packages", } try: if os.path.basename(info.path) != manifest.name: info.report(NOTICE, "PACKAGE_PATH_NAME", path=info.path) for cb in self._init_hooks: cb(info) self._parse_file(info, os.path.join(path, "CMakeLists.txt")) for cb in self._final_hooks: cb(info) except IOError as err: info.report(ERROR, "OS_ERROR", msg=str(err)) self.messages += info.messages self.ignored_messages += info.ignored_messages catkin_lint-1.6.6/src/catkin_lint/main.py000066400000000000000000000253411362025056600204210ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os import sys import argparse import importlib from . import __version__ as catkin_lint_version from .linter import CMakeLinter, ERROR, WARNING, NOTICE from .environment import CatkinEnvironment from .output import Color, TextOutput, ExplainedTextOutput, JsonOutput, XmlOutput import catkin_lint.checks def add_linter_check(linter, check): if "." in check: pkg, func = check.rsplit(".", 1) check_module = importlib.import_module(pkg, "catkin_lint.checks") else: check_module = catkin_lint.checks func = check linter.require(getattr(check_module, func)) def prepare_arguments(parser): parser.add_argument("--version", action="version", version=catkin_lint_version) parser.add_argument("path", metavar="PATH", nargs="*", default=[], help="path to catkin packages") parser.add_argument("-q", "--quiet", action="store_true", help="suppress final summary") parser.add_argument("-W", metavar="LEVEL", type=int, default=1, help="set warning level (0-2)") parser.add_argument("-c", "--check", metavar="MODULE.CHECK", action="append", default=[], help=argparse.SUPPRESS) parser.add_argument("--ignore", action="append", metavar="ID", default=[], help="ignore diagnostic message ID") parser.add_argument("--error", action="append", metavar="ID", default=[], help="treat diagnostic message ID as error") parser.add_argument("--warning", action="append", metavar="ID", default=[], help="treat diagnostic message ID as warning") parser.add_argument("--notice", action="append", metavar="ID", default=[], help="treat diagnostic message ID as notice") parser.add_argument("--strict", action="store_true", help="treat everything reported as error") parser.add_argument("--show-ignored", action="store_true", help="show messages even if they have been ignored explicitly") parser.add_argument("--pkg", action="append", default=[], help="specify catkin package by name (can be used multiple times)") parser.add_argument("--skip-pkg", metavar="PKG", action="append", default=[], help="skip testing a catkin package (can be used multiple times)") parser.add_argument("--skip-path", metavar="PATH", action="append", default=[], help="skip testing any package in a path that contains PATH (can be used multiple times)") parser.add_argument("--package-path", metavar="PATH", help="additional package path (separate multiple locations with '%s')" % os.pathsep) parser.add_argument("--rosdistro", metavar="DISTRO", help="override ROS distribution (default: ROS_DISTRO environment variable)") parser.add_argument("--resolve-env", action="store_true", help="resolve $ENV{} references from environment variables") group = parser.add_mutually_exclusive_group() group.add_argument("--text", action="store_true", help="output result as text (default)") group.add_argument("--explain", action="store_true", help="output result as text with explanations") group.add_argument("--xml", action="store_true", help="output result as XML") group.add_argument("--json", action="store_true", help="output result as JSON") parser.add_argument("--color", metavar="MODE", choices=["never", "always", "auto"], default="auto", help="colorize text output") parser.add_argument("--offline", action="store_true", help="do not download package index to look for packages") parser.add_argument("--clear-cache", action="store_true", help="clear internal cache and invalidate all downloaded manifests") parser.add_argument("--debug", action="store_true", help=argparse.SUPPRESS) parser.add_argument("--disable-cache", action="store_true", help=argparse.SUPPRESS) parser.add_argument("--dump-cache", action="store_true", help=argparse.SUPPRESS) parser.add_argument("--list-check-ids", action="store_true", help=argparse.SUPPRESS) return parser def run_linter(args): if args.clear_cache: from .environment import _clear_cache _clear_cache() return 0 if args.list_check_ids: from .diagnostics import message_list ids = [k.lower() for k in message_list.keys()] ids.sort() sys.stdout.write("\n".join(ids)) sys.stdout.write("\n") return 0 if args.dump_cache: from .environment import _dump_cache _dump_cache() return 0 nothing_to_do = 0 pkgs_to_check = [] force_error = set([a.upper() for a in args.error]) force_warning = set([a.upper() for a in args.warning]) force_notice = set([a.upper() for a in args.notice]) if args.rosdistro: os.environ["ROS_DISTRO"] = args.rosdistro env = CatkinEnvironment(os_env=os.environ if args.resolve_env else None, use_rosdistro=not args.offline, use_cache=not args.disable_cache) if not args.path and not args.pkg: if os.path.isfile("package.xml"): pkgs_to_check += env.add_path(os.getcwd()) else: sys.stderr.write("catkin_lint: no path given and no package.xml in current directory\n") return os.EX_NOINPUT if args.package_path: for path in args.package_path.split(os.pathsep): env.add_path(path) if "ROS_PACKAGE_PATH" in os.environ: for path in os.environ["ROS_PACKAGE_PATH"].split(os.pathsep): env.add_path(path) for path in args.path: if not os.path.isdir(path): sys.stderr.write("catkin_lint: not a directory: %s\n" % path) nothing_to_do = 1 continue pkgs_to_check += env.add_path(path) for name in args.pkg: try: path, manifest = env.find_local_pkg(name) pkgs_to_check.append((path, manifest)) except KeyError: sys.stderr.write("catkin_lint: no such package: %s\n" % name) nothing_to_do = 1 pkgs_to_check = [(p, m) for p, m in pkgs_to_check if m.name not in args.skip_pkg and all((sp not in p) for sp in args.skip_path)] if not pkgs_to_check: sys.stderr.write("catkin_lint: no packages to check\n") return nothing_to_do if "ROS_DISTRO" not in os.environ: if env.ok and not args.quiet: sys.stderr.write("catkin_lint: neither ROS_DISTRO environment variable nor --rosdistro option set\n") sys.stderr.write("catkin_lint: unknown dependencies will be ignored\n") env.ok = False use_color = {"never": Color.Never, "always": Color.Always, "auto": Color.Auto} if args.xml: output = XmlOutput() # this is never colored elif args.json: output = JsonOutput() # also never colored elif args.explain: output = ExplainedTextOutput(use_color[args.color]) else: output = TextOutput(use_color[args.color]) linter = CMakeLinter(env) for a in args.ignore: linter.ignore_message_ids |= set(a.upper().split(",")) for check in args.check: try: add_linter_check(linter, check) except Exception as err: sys.stderr.write("catkin_lint: cannot import '%s': %s\n" % (check, str(err))) if args.debug: raise return 1 if not args.check: add_linter_check(linter, "all") for path, manifest in pkgs_to_check: try: linter.lint(path, manifest) except Exception as err: # pragma: no cover sys.stderr.write("catkin_lint: cannot lint %s: %s\n" % (manifest.name, str(err))) if args.debug: raise extras = {ERROR: 0, WARNING: 0, NOTICE: 0} problems = 0 exit_code = 0 diagnostic_label = {ERROR: "error", WARNING: "warning", NOTICE: "notice"} output.prolog(fd=sys.stdout) if args.show_ignored: linter.messages += linter.ignored_messages linter.ignored_messages = [] for msg in sorted(linter.messages): if msg.id in force_notice: msg.level = NOTICE if msg.id in force_warning: msg.level = WARNING if msg.id in force_error: msg.level = ERROR if args.W < msg.level: extras[msg.level] += 1 continue if args.strict: msg.level = ERROR if msg.level == ERROR: exit_code = 1 output.message(msg, fd=sys.stdout) problems += 1 output.epilog(fd=sys.stdout) if not args.quiet: sys.stderr.write("catkin_lint: checked %d packages and found %d problems\n" % (len(pkgs_to_check), problems)) for level in [ERROR, WARNING, NOTICE]: if extras[level] > 0: sys.stderr.write("catkin_lint: option -W%d will show %d additional %ss\n" % (level, extras[level], diagnostic_label[level])) if linter.ignored_messages: sys.stderr.write("catkin_lint: %d messages have been ignored. Use --show-ignored to see them\n" % len(linter.ignored_messages)) return exit_code def main(): # pragma: no cover try: parser = prepare_arguments(argparse.ArgumentParser()) args = parser.parse_args() sys.exit(run_linter(args)) except Exception as err: sys.stderr.write("catkin_lint: internal error: %s\n\n" % str(err)) if args and args.debug: raise sys.exit(2) description = dict( verb="lint", description="Checks catkin packages for common errors", main=run_linter, prepare_arguments=prepare_arguments ) catkin_lint-1.6.6/src/catkin_lint/output.py000066400000000000000000000121711362025056600210320ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import sys import textwrap import json from .linter import ERROR, WARNING, NOTICE from . import __version__ def isatty(fd): return hasattr(fd, "isatty") and fd.isatty() class Color(object): Never = 0 Always = 1 Auto = 2 switch_on = {False: {ERROR: "", WARNING: "", NOTICE: ""}, True: {ERROR: "\033[1;31m", WARNING: "\033[1;33m", NOTICE: "\033[36m"}} switch_off = {False: "", True: "\033[0m"} class TextOutput(object): diagnostic_label = {ERROR: "error", WARNING: "warning", NOTICE: "notice"} def __init__(self, color): self.color = color def prolog(self, fd=sys.stdout): pass def message(self, msg, fd=sys.stdout): use_color = self.color == Color.Always or (self.color == Color.Auto and isatty(fd)) loc = msg.package if msg.file: if msg.line: fn = "%s(%d)" % (msg.file, msg.line) else: fn = msg.file loc = "%s: %s" % (msg.package, fn) fd.write("%s: %s%s%s: %s\n" % (loc, Color.switch_on[use_color][msg.level], self.diagnostic_label[msg.level], Color.switch_off[use_color], msg.text)) def epilog(self, fd=sys.stdout): pass class ExplainedTextOutput(TextOutput): def __init__(self, color): TextOutput.__init__(self, color) self.explained = set() def message(self, msg, fd=sys.stdout): TextOutput.message(self, msg, fd) if msg.id not in self.explained: self.explained.add(msg.id) fd.write("%s\n" % textwrap.fill(msg.description, initial_indent=" * ", subsequent_indent=" * ")) fd.write(" * You can ignore this problem with --ignore %s\n" % msg.id.lower()) class XmlOutput(object): tag_label = {ERROR: "error", WARNING: "warning", NOTICE: "notice"} def _quote(self, s): return s.replace('&', '&').replace('<', '<').replace('>', '>').replace('"', '"e;') def prolog(self, fd=sys.stdout): fd.write('' % {"version": __version__}) def message(self, msg, fd=sys.stdout): fd.write('<%s>%s' % (self.tag_label[msg.level], self._quote(msg.package))) if msg.file: fd.write('%s' % self._quote(msg.file)) if msg.line: fd.write('%s' % msg.line) fd.write('%s%s' % (msg.id, self._quote(msg.text))) fd.write('' % self.tag_label[msg.level]) def epilog(self, fd=sys.stdout): fd.write('\n') class JsonOutput(object): def __init__(self): self._json = {"errors": [], "warnings": [], "notices": [], "version": __version__} def prolog(self, fd=sys.stdout): pass def message(self, msg, fd=sys.stdout): location = {"package": msg.package} if msg.file: location["file"] = msg.file if msg.line: location["line"] = msg.line entry = {"id": msg.id, "text": msg.text, "location": location} if msg.level == ERROR: self._json["errors"].append(entry) elif msg.level == WARNING: self._json["warnings"].append(entry) elif msg.level == NOTICE: self._json["notices"].append(entry) def epilog(self, fd=sys.stdout): json.dump(self._json, fd, ensure_ascii=False, indent=None, sort_keys=True) fd.write("\n") catkin_lint-1.6.6/src/catkin_lint/ros.py000066400000000000000000000076311362025056600203020ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os import sys from catkin_pkg.package import parse_package_string class DummyRospkg(object): def list(self): return [] class Rosdep(object): def __init__(self, view=None, quiet=False): self.view = view self.quiet = quiet def is_ros(self, name): try: if self.view is not None: return self.view.lookup(name).data["_is_ros"] except KeyError: pass return False def has_key(self, name): return self.view is not None and name in self.view.keys() def get_rosdep(quiet): from rosdep2.lookup import RosdepLookup from rosdep2.rospkg_loader import DEFAULT_VIEW_KEY from rosdep2.sources_list import SourcesListLoader dummy = DummyRospkg() sources_loader = SourcesListLoader.create_default() lookup = RosdepLookup.create_from_rospkg(rospack=dummy, rosstack=dummy, sources_loader=sources_loader) return Rosdep(view=lookup.get_rosdep_view(DEFAULT_VIEW_KEY), quiet=quiet) class Rosdistro(object): def __init__(self, dist=None, quiet=False): self.dist = dist self.quiet = quiet def ok(self): return self.dist is not None def download_manifest(self, name): if not self.quiet: sys.stderr.write("catkin_lint: downloading package manifest for '%s'\n" % name) package_xml = self.dist.get_release_package_xml(name) return parse_package_string(package_xml) if package_xml else None _rosdistro_cache = {} def get_rosdistro(quiet): global _rosdistro_cache dist = None if "ROS_DISTRO" in os.environ: distro_id = os.environ["ROS_DISTRO"] if distro_id not in _rosdistro_cache: try: from rosdistro import get_index, get_index_url, get_cached_distribution url = get_index_url() if not quiet: sys.stderr.write("catkin_lint: downloading %s package index from %s\n" % (distro_id, url)) index = get_index(url) dist = get_cached_distribution(index, distro_id, allow_lazy_load=True) except Exception as err: if not quiet: sys.stderr.write("catkin_lint: cannot initialize rosdistro: %s\n" % str(err)) _rosdistro_cache[distro_id] = dist dist = _rosdistro_cache[distro_id] return Rosdistro(dist=dist, quiet=quiet) catkin_lint-1.6.6/src/catkin_lint/util.py000066400000000000000000000054431362025056600204530ustar00rootroot00000000000000# coding=utf-8 # # catkin_lint # Copyright (c) 2013-2018 Fraunhofer FKIE # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Fraunhofer organization nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS # IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED # TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A # PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import os import re import tempfile def word_split(s): ws = re.compile(r"(\W|_)+|(?<=[^A-Z])(?=[A-Z])|(?<=\w)(?=[A-Z][a-z])") mo = ws.search(s) result = [] while mo: result.append(s[:mo.start()].lower()) s = s[mo.end():] mo = ws.search(s) result.append(s.lower()) return result try: from itertools import zip_longest except ImportError: def zip_longest(*args): return map(None, *args) def write_atomic(filepath, data): fd, filepath_tmp = tempfile.mkstemp(prefix=os.path.basename(filepath) + ".tmp.", dir=os.path.dirname(filepath)) with os.fdopen(fd, "wb") as f: f.write(data) f.close() try: os.rename(filepath_tmp, filepath) except OSError: try: os.unlink(filepath) except OSError: pass try: os.rename(filepath_tmp, filepath) except OSError: os.unlink(filepath_tmp) def is_sorted(lst, key=lambda x, y: x < y): for i, el in enumerate(lst[1:]): if key(el, lst[i]): return False return True # Python 3 compatibility without sacrificing the speed gain of iteritems in Python 2 try: iteritems = dict.iteritems except AttributeError: iteritems = dict.items catkin_lint-1.6.6/test/000077500000000000000000000000001362025056600150075ustar00rootroot00000000000000catkin_lint-1.6.6/test/__init__.py000066400000000000000000000001371362025056600171210ustar00rootroot00000000000000import os import sys sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "src")) catkin_lint-1.6.6/test/helper.py000066400000000000000000000075761362025056600166570ustar00rootroot00000000000000from catkin_lint.linter import CMakeLinter, LintInfo from catkin_lint.environment import CatkinEnvironment from catkin_pkg.package import Package, Dependency, Person, Export from catkin_lint.checks import all from catkin_lint.util import iteritems from functools import wraps import os try: from mock import patch, mock_open # noqa except ImportError: from unittest.mock import patch, mock_open # noqa import posixpath import ntpath # Decorator to run test functions for both POSIX and Windows file systems def posix_and_nt(func): @wraps(func) def wrapper(*args, **kwargs): with patch("os.path", posixpath): func(*args, **kwargs) with patch("os.path", ntpath): func(*args, **kwargs) if wrapper.__doc__ is not None: wrapper.__doc__ += " (POSIX/NT)" return wrapper def create_env(catkin_pkgs=["catkin", "message_generation", "message_runtime", "dynamic_reconfigure", "other_catkin", "other_msgs", "first_pkg", "second_pkg"], system_pkgs=["other_system"]): env = CatkinEnvironment(use_rosdep=False, use_cache=False) env.known_catkin_pkgs = set(catkin_pkgs) env.known_other_pkgs = set(system_pkgs) return env def create_manifest(name, description="", buildtool_depends=["catkin"], build_depends=[], run_depends=[], test_depends=[], meta=False): return Package( name=name, version="0.0.0", package_format=1, description=description, maintainers=[Person("John Foo", "foo@bar.com")], buildtool_depends=[Dependency(d) for d in buildtool_depends], build_depends=[Dependency(d) for d in build_depends], run_depends=[Dependency(d) for d in run_depends], test_depends=[Dependency(d) for d in test_depends], exports=[Export("metapackage")] if meta else [] ) def create_manifest2(name, description="", buildtool_depends=["catkin"], build_depends=[], depends=[], buildtool_export_depends=[], build_export_depends=[], exec_depends=[], test_depends=[], meta=False): return Package( name=name, version="0.0.0", package_format=2, description=description, maintainers=[Person("John Foo", "foo@bar.com")], depends=[Dependency(d) for d in depends], buildtool_depends=[Dependency(d) for d in buildtool_depends], build_depends=[Dependency(d) for d in build_depends], buildtool_export_depends=[Dependency(d) for d in buildtool_export_depends], build_export_depends=[Dependency(d) for d in build_export_depends], exec_depends=[Dependency(d) for d in exec_depends], test_depends=[Dependency(d) for d in test_depends], exports=[Export("metapackage")] if meta else [] ) def mock_lint(env, manifest, cmakelist, checks=all, indentation=False, return_var=False, package_path=None): linter = CMakeLinter(env) if package_path is None: package_path = "/package-path/%s" % manifest.name if type(cmakelist) is dict: tmp = {} for key, value in iteritems(cmakelist): tmp[os.path.normpath(key)] = value cmakelist = tmp def get_cmakelist(filename): if type(cmakelist) is dict: if filename in cmakelist: return cmakelist[filename] else: raise OSError("Mock CMake file not found: %s" % filename) else: if filename == os.path.normpath(package_path + "/CMakeLists.txt"): return cmakelist raise OSError("Mock CMake file not found: %s" % filename) linter._read_file = get_cmakelist if checks is not None: linter.require(checks) info = LintInfo(env) linter.lint(os.path.normpath(package_path), manifest, info) if not indentation: linter.messages = [m for m in linter.messages if m.id != "INDENTATION"] if return_var: return info.var else: return [m.id for m in linter.messages] catkin_lint-1.6.6/test/sources.cache/000077500000000000000000000000001362025056600175345ustar00rootroot00000000000000catkin_lint-1.6.6/test/sources.cache/5d76dbb61bf5385acb00a1ffce292b2eb2e000a8.pickle000066400000000000000000015075561362025056600266550ustar00rootroot00000000000000€}q(U rh_p12_rn_guiq}q(Uosxq}qUhomebrewq}qUpackagesq]q Uros/kinetic/rh_p12_rnq assU_is_rosq ˆUubuntuq }q Uxenialq}qUaptq}qh]qUros-kinetic-rh-p12-rn-guiqasssuU rosconsoleq}q(h}qh}qh]qUros/kinetic/ros_commqassh ˆh }qh}qh}qh]qUros-kinetic-rosconsoleqasssuUthormang3_offset_tuner_serverq}q (h}q!h}q"h]q#Uros/kinetic/thormang3_toolsq$assh ˆh }q%h}q&h}q'h]q(U)ros-kinetic-thormang3-offset-tuner-serverq)asssuUlibg2oq*}q+(h}q,h}q-h]q.Uros/kinetic/libg2oq/assh ˆh }q0h}q1h}q2h]q3Uros-kinetic-libg2oq4asssuUfanuc_m10ia_supportq5}q6(h}q7h}q8h]q9Uros/kinetic/fanucq:assh ˆh }q;h}qUros-kinetic-fanuc-m10ia-supportq?asssuU astra_cameraq@}qA(h}qBh}qCh]qDUros/kinetic/astra_cameraqEassh ˆh }qFh}qGh}qHh]qIUros-kinetic-astra-cameraqJasssuUaudibotqK}qL(h}qMh}qNh]qOUros/kinetic/audibotqPassh ˆh }qQh}qRh}qSh]qTUros-kinetic-audibotqUasssuUthormang3_walking_moduleqV}qW(h}qXh}qYh]qZUros/kinetic/thormang3_mpcq[assh ˆh }q\h}q]h}q^h]q_U$ros-kinetic-thormang3-walking-moduleq`asssuUorocos_kinematics_dynamicsqa}qb(h}qch}qdh]qeU&ros/kinetic/orocos_kinematics_dynamicsqfassh ˆh }qgh}qhh}qih]qjU&ros-kinetic-orocos-kinematics-dynamicsqkasssuUflir_ptu_driverql}qm(h}qnh}qoh]qpUros/kinetic/flir_ptuqqassh ˆh }qrh}qsh}qth]quUros-kinetic-flir-ptu-driverqvasssuU pr2_move_baseqw}qx(h}qyh}qzh]q{Uros/kinetic/pr2_navigationq|assh ˆh }q}h}q~h}qh]q€Uros-kinetic-pr2-move-baseqasssuUlibsensors_monitorq‚}qƒ(h}q„h}q…h]q†U'ros/kinetic/linux_peripheral_interfacesq‡assh ˆh }qˆh}q‰h}qŠh]q‹Uros-kinetic-libsensors-monitorqŒasssuUtra1_moveit_configq}qŽ(h}qh}qh]q‘Uros/kinetic/minasq’assh ˆh }q“h}q”h}q•h]q–Uros-kinetic-tra1-moveit-configq—asssuU fiducial_slamq˜}q™(h}qšh}q›h]qœUros/kinetic/fiducialsqassh ˆh }qžh}qŸh}q h]q¡Uros-kinetic-fiducial-slamq¢asssuUrobotis_controller_msgsq£}q¤(h}q¥h}q¦h]q§U#ros/kinetic/robotis_controller_msgsq¨assh ˆh }q©h}qªh}q«h]q¬U#ros-kinetic-robotis-controller-msgsq­asssuUtensorflow_ros_rqtq®}q¯(h}q°h}q±h]q²Uros/kinetic/image_recognitionq³assh ˆh }q´h}qµh}q¶h]q·Uros-kinetic-tensorflow-ros-rqtq¸asssuUdelphi_mrr_msgsq¹}qº(h}q»h}q¼h]q½Uros/kinetic/astuff_sensor_msgsq¾assh ˆh }q¿h}qÀh}qÁh]qÂUros-kinetic-delphi-mrr-msgsqÃasssuUuwsim_osgbulletqÄ}qÅ(h}qÆh}qÇh]qÈUros/kinetic/uwsim_osgbulletqÉassh ˆh }qÊh}qËh}qÌh]qÍUros-kinetic-uwsim-osgbulletqÎasssuUcartographer_rvizqÏ}qÐ(h}qÑh}qÒh]qÓUros/kinetic/cartographer_rosqÔassh ˆh }qÕh}qÖh}q×h]qØUros-kinetic-cartographer-rvizqÙasssuUcob_collision_velocity_filterqÚ}qÛ(h}qÜh}qÝh]qÞUros/kinetic/cob_controlqßassh ˆh }qàh}qáh}qâh]qãU)ros-kinetic-cob-collision-velocity-filterqäasssuU moveit_msgsqå}qæ(h}qçh}qèh]qéUros/kinetic/moveit_msgsqêassh ˆh }qëh}qìh}qíh]qîUros-kinetic-moveit-msgsqïasssuU tracetoolsqð}qñ(h}qòh}qóh]qôUros/kinetic/tracetoolsqõassh ˆh }qöh}q÷h}qøh]qùUros-kinetic-tracetoolsqúasssuUturtlebot3_follow_filterqû}qü(h}qýh}qþh]qÿU#ros/kinetic/turtlebot3_applicationsrassh ˆh }rh}rh}rh]rU$ros-kinetic-turtlebot3-follow-filterrasssuUh264_encoder_corer}r(h}rh}r h]r Uros/kinetic/h264_encoder_corer assh ˆh }r h}r h}rh]rUros-kinetic-h264-encoder-corerasssuUnanomsgr}r(h}rh}rh]rUros/kinetic/nanomsgrassh ˆh }rh}rh}rh]rUros-kinetic-nanomsgrasssuUcanopen_motor_noder}r(h}rh}rh]r Uros/kinetic/ros_canopenr!assh ˆh }r"h}r#h}r$h]r%Uros-kinetic-canopen-motor-noder&asssuUstate_exchangerr'}r((h}r)h}r*h]r+Uros/kinetic/swarm_functionsr,assh ˆh }r-h}r.h}r/h]r0Uros-kinetic-state-exchangerr1asssuUneonavigation_commonr2}r3(h}r4h}r5h]r6Uros/kinetic/neonavigationr7assh ˆh }r8h}r9h}r:h]r;U ros-kinetic-neonavigation-commonr<asssuU ypspur_rosr=}r>(h}r?h}r@h]rAUros/kinetic/ypspur_rosrBassh ˆh }rCh}rDh}rEh]rFUros-kinetic-ypspur-rosrGasssuU cob_robotsrH}rI(h}rJh}rKh]rLUros/kinetic/cob_robotsrMassh ˆh }rNh}rOh}rPh]rQUros-kinetic-cob-robotsrRasssuUfanuc_m6ib_supportrS}rT(h}rUh}rVh]rWUros/kinetic/fanucrXassh ˆh }rYh}rZh}r[h]r\Uros-kinetic-fanuc-m6ib-supportr]asssuUuuv_control_msgsr^}r_(h}r`h}rah]rbUros/kinetic/uuv_simulatorrcassh ˆh }rdh}reh}rfh]rgUros-kinetic-uuv-control-msgsrhasssuUconcert_workflow_engine_msgsri}rj(h}rkh}rlh]rmUros/kinetic/rocon_msgsrnassh ˆh }roh}rph}rqh]rrU(ros-kinetic-concert-workflow-engine-msgsrsasssuUdynamixel_msgsrt}ru(h}rvh}rwh]rxUros/kinetic/dynamixel_motorryassh ˆh }rzh}r{h}r|h]r}Uros-kinetic-dynamixel-msgsr~asssuU rqt_pose_viewr}r€(h}rh}r‚h]rƒUros/kinetic/rqt_pose_viewr„assh ˆh }r…h}r†h}r‡h]rˆUros-kinetic-rqt-pose-viewr‰asssuUfranka_gripperrŠ}r‹(h}rŒh}rh]rŽUros/kinetic/franka_rosrassh ˆh }rh}r‘h}r’h]r“Uros-kinetic-franka-gripperr”asssuUjsk_visualizationr•}r–(h}r—h}r˜h]r™Uros/kinetic/jsk_visualizationršassh ˆh }r›h}rœh}rh]ržUros-kinetic-jsk-visualizationrŸasssuU static_tfr }r¡(h}r¢h}r£h]r¤Uros/kinetic/static_tfr¥assh ˆh }r¦h}r§h}r¨h]r©Uros-kinetic-static-tfrªasssuUrr_swiftnav_piksir«}r¬(h}r­h}r®h]r¯Uros/kinetic/rr_swiftnav_piksir°assh ˆh }r±h}r²h}r³h]r´Uros-kinetic-rr-swiftnav-piksirµasssuUpilz_testutilsr¶}r·(h}r¸h}r¹h]rºUros/kinetic/pilz_robotsr»assh ˆh }r¼h}r½h}r¾h]r¿Uros-kinetic-pilz-testutilsrÀasssuUcob_navigation_configrÁ}rÂ(h}rÃh}rÄh]rÅUros/kinetic/cob_navigationrÆassh ˆh }rÇh}rÈh}rÉh]rÊU!ros-kinetic-cob-navigation-configrËasssuU mavros_msgsrÌ}rÍ(h}rÎh}rÏh]rÐUros/kinetic/mavrosrÑassh ˆh }rÒh}rÓh}rÔh]rÕUros-kinetic-mavros-msgsrÖasssuUjoint_limits_interfacer×}rØ(h}rÙh}rÚh]rÛUros/kinetic/ros_controlrÜassh ˆh }rÝh}rÞh}rßh]ràU"ros-kinetic-joint-limits-interfaceráasssuUmultisense_cal_checkrâ}rã(h}räh}råh]ræUros/kinetic/multisense_rosrçassh ˆh }rèh}réh}rêh]rëU ros-kinetic-multisense-cal-checkrìasssuUfake_joint_launchrí}rî(h}rïh}rðh]rñUros/kinetic/fake_jointròassh ˆh }róh}rôh}rõh]röUros-kinetic-fake-joint-launchr÷asssuUcob_object_detection_msgsrø}rù(h}rúh}rûh]rüU!ros/kinetic/cob_perception_commonrýassh ˆh }rþh}rÿh}rh]rU%ros-kinetic-cob-object-detection-msgsrasssuU message_to_tfr}r(h}rh}rh]rUros/kinetic/hector_localizationrassh ˆh }r h}r h}r h]r Uros-kinetic-message-to-tfr asssuUnav2d_tutorialsr}r(h}rh}rh]rUros/kinetic/navigation_2drassh ˆh }rh}rh}rh]rUros-kinetic-nav2d-tutorialsrasssuUpheeno_ros_descriptionr}r(h}rh}rh]rU"ros/kinetic/pheeno_ros_descriptionrassh ˆh }rh}r h}r!h]r"U"ros-kinetic-pheeno-ros-descriptionr#asssuUdynamixel_workbench_msgsr$}r%(h}r&h}r'h]r(U$ros/kinetic/dynamixel-workbench-msgsr)assh ˆh }r*h}r+h}r,h]r-U$ros-kinetic-dynamixel-workbench-msgsr.asssuUsummit_x_sim_bringupr/}r0(h}r1h}r2h]r3Uros/kinetic/summit_x_simr4assh ˆh }r5h}r6h}r7h]r8U ros-kinetic-summit-x-sim-bringupr9asssuUrosserial_embeddedlinuxr:}r;(h}r<h}r=h]r>Uros/kinetic/rosserialr?assh ˆh }r@h}rAh}rBh]rCU#ros-kinetic-rosserial-embeddedlinuxrDasssuUdistance_map_toolsrE}rF(h}rGh}rHh]rIUros/kinetic/distance_maprJassh ˆh }rKh}rLh}rMh]rNUros-kinetic-distance-map-toolsrOasssuUindustrial_utilsrP}rQ(h}rRh}rSh]rTUros/kinetic/industrial_corerUassh ˆh }rVh}rWh}rXh]rYUros-kinetic-industrial-utilsrZasssuUteraranger_descriptionr[}r\(h}r]h}r^h]r_U"ros/kinetic/teraranger_descriptionr`assh ˆh }rah}rbh}rch]rdU"ros-kinetic-teraranger-descriptionreasssuUrobotis_manipulatorrf}rg(h}rhh}rih]rjUros/kinetic/robotis_manipulatorrkassh ˆh }rlh}rmh}rnh]roUros-kinetic-robotis-manipulatorrpasssuUvisualization_msgsrq}rr(h}rsh}rth]ruUros/kinetic/common_msgsrvassh ˆh }rwh}rxh}ryh]rzUros-kinetic-visualization-msgsr{asssuUmessage_generationr|}r}(h}r~h}rh]r€Uros/kinetic/message_generationrassh ˆh }r‚h}rƒh}r„h]r…Uros-kinetic-message-generationr†asssuUkhi_rs007n_moveit_configr‡}rˆ(h}r‰h}rŠh]r‹Uros/kinetic/khi_robotrŒassh ˆh }rh}rŽh}rh]rU$ros-kinetic-khi-rs007n-moveit-configr‘asssuUeclr’}r“(h}r”h}r•h]r–Uros/kinetic/ecl_manipulationr—assh ˆh }r˜h}r™h}ršh]r›Uros-kinetic-eclrœasssuU urdf_tutorialr}rž(h}rŸh}r h]r¡Uros/kinetic/urdf_tutorialr¢assh ˆh }r£h}r¤h}r¥h]r¦Uros-kinetic-urdf-tutorialr§asssuU libqt_devr¨}r©(h}rªh}r«h]r¬Uros/kinetic/qt_metapackagesr­assh ˆh }r®h}r¯h}r°h]r±Uros-kinetic-libqt-devr²asssuUauv_msgsr³}r´(h}rµh}r¶h]r·Uros/kinetic/auv_msgsr¸assh ˆh }r¹h}rºh}r»h]r¼Uros-kinetic-auv-msgsr½asssuUpython_orocos_kdlr¾}r¿(h}rÀh}rÁh]rÂU&ros/kinetic/orocos_kinematics_dynamicsrÃassh ˆh }rÄh}rÅh}rÆh]rÇUros-kinetic-python-orocos-kdlrÈasssuUxiaoqiang_driverrÉ}rÊ(h}rËh}rÌh]rÍUros/kinetic/xiaoqiangrÎassh ˆh }rÏh}rÐh}rÑh]rÒUros-kinetic-xiaoqiang-driverrÓasssuUop3_action_module_msgsrÔ}rÕ(h}rÖh}r×h]rØUros/kinetic/robotis_op3_msgsrÙassh ˆh }rÚh}rÛh}rÜh]rÝU"ros-kinetic-op3-action-module-msgsrÞasssuUpr2eus_tutorialsrß}rà(h}ráh}râh]rãUros/kinetic/jsk_pr2eusräassh ˆh }råh}ræh}rçh]rèUros-kinetic-pr2eus-tutorialsréasssuUbarrett_hand_controlrê}rë(h}rìh}ríh]rîUros/kinetic/barrett_hand_simrïassh ˆh }rðh}rñh}ròh]róU ros-kinetic-barrett-hand-controlrôasssuUdlux_global_plannerrõ}rö(h}r÷h}røh]rùUros/kinetic/robot_navigationrúassh ˆh }rûh}rüh}rýh]rþUros-kinetic-dlux-global-plannerrÿasssuUpepper_moveit_configr}r(h}rh}rh]rU ros/kinetic/pepper_moveit_configrassh ˆh }rh}rh}rh]r U ros-kinetic-pepper-moveit-configr asssuUmrpt_mapr }r (h}r h}rh]rUros/kinetic/mrpt_navigationrassh ˆh }rh}rh}rh]rUros-kinetic-mrpt-maprasssuUblender_gazebor}r(h}rh}rh]rUros/kinetic/blender_gazeborassh ˆh }rh}rh}rh]rUros-kinetic-blender-gazebor asssuUdartsimr!}r"(h}r#h}r$h]r%Uros/kinetic/dartsimr&assh ˆh }r'h}r(h}r)h]r*Uros-kinetic-dartsimr+asssuUarucor,}r-(h}r.h}r/h]r0Uros/kinetic/aruco_rosr1assh ˆh }r2h}r3h}r4h]r5Uros-kinetic-arucor6asssuUarbotix_controllersr7}r8(h}r9h}r:h]r;Uros/kinetic/arbotixr<assh ˆh }r=h}r>h}r?h]r@Uros-kinetic-arbotix-controllersrAasssuU novatel_msgsrB}rC(h}rDh}rEh]rFUros/kinetic/novatel_span_driverrGassh ˆh }rHh}rIh}rJh]rKUros-kinetic-novatel-msgsrLasssuUmoveit_planners_omplrM}rN(h}rOh}rPh]rQUros/kinetic/moveitrRassh ˆh }rSh}rTh}rUh]rVU ros-kinetic-moveit-planners-omplrWasssuUneonavigation_rviz_pluginsrX}rY(h}rZh}r[h]r\U&ros/kinetic/neonavigation_rviz_pluginsr]assh ˆh }r^h}r_h}r`h]raU&ros-kinetic-neonavigation-rviz-pluginsrbasssuUvelodyne_gazebo_pluginsrc}rd(h}reh}rfh]rgUros/kinetic/velodyne_simulatorrhassh ˆh }rih}rjh}rkh]rlU#ros-kinetic-velodyne-gazebo-pluginsrmasssuUpybind11_catkinrn}ro(h}rph}rqh]rrUros/kinetic/pybind11_catkinrsassh ˆh }rth}ruh}rvh]rwUros-kinetic-pybind11-catkinrxasssuUcob_generic_canry}rz(h}r{h}r|h]r}Uros/kinetic/cob_driverr~assh ˆh }rh}r€h}rh]r‚Uros-kinetic-cob-generic-canrƒasssuUpr2_power_driversr„}r…(h}r†h}r‡h]rˆUros/kinetic/pr2_power_driversr‰assh ˆh }rŠh}r‹h}rŒh]rUros-kinetic-pr2-power-driversrŽasssuUbehaviortree_cppr}r(h}r‘h}r’h]r“Uros/kinetic/behaviortree_cppr”assh ˆh }r•h}r–h}r—h]r˜Uros-kinetic-behaviortree-cppr™asssuU rocon_toolsrš}r›(h}rœh}rh]ržUros/kinetic/rocon_toolsrŸassh ˆh }r h}r¡h}r¢h]r£Uros-kinetic-rocon-toolsr¤asssuUturtlebot3_applicationsr¥}r¦(h}r§h}r¨h]r©U#ros/kinetic/turtlebot3_applicationsrªassh ˆh }r«h}r¬h}r­h]r®U#ros-kinetic-turtlebot3-applicationsr¯asssuU"exotica_levenberg_marquardt_solverr°}r±(h}r²h}r³h]r´Uros/kinetic/exoticarµassh ˆh }r¶h}r·h}r¸h]r¹U.ros-kinetic-exotica-levenberg-marquardt-solverrºasssuUrosjava_build_toolsr»}r¼(h}r½h}r¾h]r¿Uros/kinetic/rosjava_build_toolsrÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-kinetic-rosjava-build-toolsrÅasssuUyocs_controllersrÆ}rÇ(h}rÈh}rÉh]rÊUros/kinetic/yujin_ocsrËassh ˆh }rÌh}rÍh}rÎh]rÏUros-kinetic-yocs-controllersrÐasssuUunique_identifierrÑ}rÒ(h}rÓh}rÔh]rÕUros/kinetic/unique_identifierrÖassh ˆh }r×h}rØh}rÙh]rÚUros-kinetic-unique-identifierrÛasssuUddynamic_reconfigure_pythonrÜ}rÝ(h}rÞh}rßh]ràU'ros/kinetic/ddynamic_reconfigure_pythonráassh ˆh }râh}rãh}räh]råU'ros-kinetic-ddynamic-reconfigure-pythonræasssuUbin_pose_emulatorrç}rè(h}réh}rêh]rëUros/kinetic/binpicking_utilsrìassh ˆh }ríh}rîh}rïh]rðUros-kinetic-bin-pose-emulatorrñasssuUinteractive_marker_tutorialsrò}ró(h}rôh}rõh]röU#ros/kinetic/visualization_tutorialsr÷assh ˆh }røh}rùh}rúh]rûU(ros-kinetic-interactive-marker-tutorialsrüasssuUteb_local_planner_tutorialsrý}rþ(h}rÿh}rh]rU'ros/kinetic/teb_local_planner_tutorialsrassh ˆh }rh}rh}rh]rU'ros-kinetic-teb-local-planner-tutorialsrasssuUlaser_scan_matcherr}r (h}r h}r h]r Uros/kinetic/scan_toolsr assh ˆh }rh}rh}rh]rUros-kinetic-laser-scan-matcherrasssuUomron_os32c_driverr}r(h}rh}rh]rUros/kinetic/omron_os32c_driverrassh ˆh }rh}rh}rh]rUros-kinetic-omron-os32c-driverrasssuU sensor_msgsr}r(h}r h}r!h]r"Uros/kinetic/common_msgsr#assh ˆh }r$h}r%h}r&h]r'Uros-kinetic-sensor-msgsr(asssuUrealtime_toolsr)}r*(h}r+h}r,h]r-Uros/kinetic/realtime_toolsr.assh ˆh }r/h}r0h}r1h]r2Uros-kinetic-realtime-toolsr3asssuU roch_bringupr4}r5(h}r6h}r7h]r8Uros/kinetic/roch_robotr9assh ˆh }r:h}r;h}r<h]r=Uros-kinetic-roch-bringupr>asssuU rqt_launchr?}r@(h}rAh}rBh]rCUros/kinetic/rqt_launchrDassh ˆh }rEh}rFh}rGh]rHUros-kinetic-rqt-launchrIasssuUhironx_ros_bridgerJ}rK(h}rLh}rMh]rNUros/kinetic/rtmros_hironxrOassh ˆh }rPh}rQh}rRh]rSUros-kinetic-hironx-ros-bridgerTasssuUdsr_msgsrU}rV(h}rWh}rXh]rYUros/kinetic/doosan_robotrZassh ˆh }r[h}r\h}r]h]r^Uros-kinetic-dsr-msgsr_asssuU melfa_robotr`}ra(h}rbh}rch]rdUros/kinetic/melfa_robotreassh ˆh }rfh}rgh}rhh]riUros-kinetic-melfa-robotrjasssuUthormang3_balance_controlrk}rl(h}rmh}rnh]roUros/kinetic/thormang3_mpcrpassh ˆh }rqh}rrh}rsh]rtU%ros-kinetic-thormang3-balance-controlruasssuUcob_control_msgsrv}rw(h}rxh}ryh]rzUros/kinetic/cob_controlr{assh ˆh }r|h}r}h}r~h]rUros-kinetic-cob-control-msgsr€asssuUlaser_joint_processorr}r‚(h}rƒh}r„h]r…Uros/kinetic/pr2_calibrationr†assh ˆh }r‡h}rˆh}r‰h]rŠU!ros-kinetic-laser-joint-processorr‹asssuUcob_lookat_actionrŒ}r(h}rŽh}rh]rUros/kinetic/cob_manipulationr‘assh ˆh }r’h}r“h}r”h]r•Uros-kinetic-cob-lookat-actionr–asssuU shape_msgsr—}r˜(h}r™h}ršh]r›Uros/kinetic/common_msgsrœassh ˆh }rh}ržh}rŸh]r Uros-kinetic-shape-msgsr¡asssuUopencv_candidater¢}r£(h}r¤h}r¥h]r¦Uros/kinetic/opencv_candidater§assh ˆh }r¨h}r©h}rªh]r«Uros-kinetic-opencv-candidater¬asssuUrtctreer­}r®(h}r¯h}r°h]r±Uros/kinetic/rtctreer²assh ˆh }r³h}r´h}rµh]r¶Uros-kinetic-rtctreer·asssuUrospy_message_converterr¸}r¹(h}rºh}r»h]r¼U#ros/kinetic/rospy_message_converterr½assh ˆh }r¾h}r¿h}rÀh]rÁU#ros-kinetic-rospy-message-converterrÂasssuU magni_robotrÃ}rÄ(h}rÅh}rÆh]rÇUros/kinetic/magni_robotrÈassh ˆh }rÉh}rÊh}rËh]rÌUros-kinetic-magni-robotrÍasssuUmkrÎ}rÏ(h}rÐh}rÑh]rÒUros/kinetic/rosrÓassh ˆh }rÔh}rÕh}rÖh]r×Uros-kinetic-mkrØasssuUusb_cam_controllersrÙ}rÚ(h}rÛh}rÜh]rÝUros/kinetic/usb_cam_hardwarerÞassh ˆh }rßh}ràh}ráh]râUros-kinetic-usb-cam-controllersrãasssuUrocon_app_platformrä}rå(h}ræh}rçh]rèUros/kinetic/rocon_app_platformréassh ˆh }rêh}rëh}rìh]ríUros-kinetic-rocon-app-platformrîasssuUsimple_messagerï}rð(h}rñh}ròh]róUros/kinetic/industrial_corerôassh ˆh }rõh}röh}r÷h]røUros-kinetic-simple-messagerùasssuU gridmap_2drú}rû(h}rüh}rýh]rþUros/kinetic/humanoid_navigationrÿassh ˆh }rh}rh}rh]rUros-kinetic-gridmap-2drasssuUur_descriptionr}r(h}rh}rh]r Uros/kinetic/universal_robotr assh ˆh }r h}r h}r h]rUros-kinetic-ur-descriptionrasssuUcob_trajectory_controllerr}r(h}rh}rh]rUros/kinetic/cob_controlrassh ˆh }rh}rh}rh]rU%ros-kinetic-cob-trajectory-controllerrasssuUrc_cloud_accumulatorr}r(h}rh}rh]rU ros/kinetic/rc_cloud_accumulatorr assh ˆh }r!h}r"h}r#h]r$U ros-kinetic-rc-cloud-accumulatorr%asssuUroomblock_mappingr&}r'(h}r(h}r)h]r*Uros/kinetic/roomblockr+assh ˆh }r,h}r-h}r.h]r/Uros-kinetic-roomblock-mappingr0asssuUhrpsysr1}r2(h}r3h}r4h]r5Uros/kinetic/hrpsysr6assh ˆh }r7h}r8h}r9h]r:Uros-kinetic-hrpsysr;asssuUdense_laser_assemblerr<}r=(h}r>h}r?h]r@Uros/kinetic/pr2_calibrationrAassh ˆh }rBh}rCh}rDh]rEU!ros-kinetic-dense-laser-assemblerrFasssuUhardware_interfacerG}rH(h}rIh}rJh]rKUros/kinetic/ros_controlrLassh ˆh }rMh}rNh}rOh]rPUros-kinetic-hardware-interfacerQasssuUwave_gazebo_pluginsrR}rS(h}rTh}rUh]rVUros/kinetic/vrxrWassh ˆh }rXh}rYh}rZh]r[Uros-kinetic-wave-gazebo-pluginsr\asssuUdataspeed_can_toolsr]}r^(h}r_h}r`h]raUros/kinetic/dataspeed_canrbassh ˆh }rch}rdh}reh]rfUros-kinetic-dataspeed-can-toolsrgasssuUskybiometry_rosrh}ri(h}rjh}rkh]rlUros/kinetic/image_recognitionrmassh ˆh }rnh}roh}rph]rqUros-kinetic-skybiometry-rosrrasssuUearth_rover_localizationrs}rt(h}ruh}rvh]rwU$ros/kinetic/earth_rover_localizationrxassh ˆh }ryh}rzh}r{h]r|U$ros-kinetic-earth-rover-localizationr}asssuUpilz_industrial_motionr~}r(h}r€h}rh]r‚U"ros/kinetic/pilz_industrial_motionrƒassh ˆh }r„h}r…h}r†h]r‡U"ros-kinetic-pilz-industrial-motionrˆasssuUuuv_gazebo_ros_plugins_msgsr‰}rŠ(h}r‹h}rŒh]rUros/kinetic/uuv_simulatorrŽassh ˆh }rh}rh}r‘h]r’U'ros-kinetic-uuv-gazebo-ros-plugins-msgsr“asssuUswri_serial_utilr”}r•(h}r–h}r—h]r˜Uros/kinetic/marti_commonr™assh ˆh }ršh}r›h}rœh]rUros-kinetic-swri-serial-utilržasssuUop3_offset_tuner_serverrŸ}r (h}r¡h}r¢h]r£Uros/kinetic/robotis_op3_toolsr¤assh ˆh }r¥h}r¦h}r§h]r¨U#ros-kinetic-op3-offset-tuner-serverr©asssuU nerian_stereorª}r«(h}r¬h}r­h]r®Uros/kinetic/nerian_stereor¯assh ˆh }r°h}r±h}r²h]r³Uros-kinetic-nerian-stereor´asssuU grizzly_msgsrµ}r¶(h}r·h}r¸h]r¹Uros/kinetic/grizzlyrºassh ˆh }r»h}r¼h}r½h]r¾Uros-kinetic-grizzly-msgsr¿asssuUecl_ipcrÀ}rÁ(h}rÂh}rÃh]rÄUros/kinetic/ecl_corerÅassh ˆh }rÆh}rÇh}rÈh]rÉUros-kinetic-ecl-ipcrÊasssuUinteractive_marker_twist_serverrË}rÌ(h}rÍh}rÎh]rÏU+ros/kinetic/interactive_marker_twist_serverrÐassh ˆh }rÑh}rÒh}rÓh]rÔU+ros-kinetic-interactive-marker-twist-serverrÕasssuU jog_launchrÖ}r×(h}rØh}rÙh]rÚUros/kinetic/jog_controlrÛassh ˆh }rÜh}rÝh}rÞh]rßUros-kinetic-jog-launchràasssuUopenrave_planningrá}râ(h}rãh}räh]råUros/kinetic/openrave_planningræassh ˆh }rçh}rèh}réh]rêUros-kinetic-openrave-planningrëasssuUkhi_duaro_ikfast_pluginrì}rí(h}rîh}rïh]rðUros/kinetic/khi_robotrñassh ˆh }ròh}róh}rôh]rõU#ros-kinetic-khi-duaro-ikfast-pluginröasssuUpepper_dcm_bringupr÷}rø(h}rùh}rúh]rûUros/kinetic/pepper_dcm_robotrüassh ˆh }rýh}rþh}rÿh]rUros-kinetic-pepper-dcm-bringuprasssuUzeroconf_avahi_suiter}r(h}rh}rh]rU ros/kinetic/zeroconf_avahi_suiterassh ˆh }rh}r h}r h]r U ros-kinetic-zeroconf-avahi-suiter asssuUseed_r7_robot_interfacer }r(h}rh}rh]rUros/kinetic/seed_r7_ros_pkgrassh ˆh }rh}rh}rh]rU#ros-kinetic-seed-r7-robot-interfacerasssuUearth_rover_piksir}r(h}rh}rh]rUros/kinetic/earth_rover_piksirassh ˆh }rh}rh}r h]r!Uros-kinetic-earth-rover-piksir"asssuUgscamr#}r$(h}r%h}r&h]r'Uros/kinetic/gscamr(assh ˆh }r)h}r*h}r+h]r,Uros-kinetic-gscamr-asssuU uvc_camerar.}r/(h}r0h}r1h]r2Uros/kinetic/camera_umdr3assh ˆh }r4h}r5h}r6h]r7Uros-kinetic-uvc-camerar8asssuUdiff_drive_controllerr9}r:(h}r;h}r<h]r=Uros/kinetic/ros_controllersr>assh ˆh }r?h}r@h}rAh]rBU!ros-kinetic-diff-drive-controllerrCasssuUcloudwatch_loggerrD}rE(h}rFh}rGh]rHUros/kinetic/cloudwatch_loggerrIassh ˆh }rJh}rKh}rLh]rMUros-kinetic-cloudwatch-loggerrNasssuU fiducialsrO}rP(h}rQh}rRh]rSUros/kinetic/fiducialsrTassh ˆh }rUh}rVh}rWh]rXUros-kinetic-fiducialsrYasssuUyocs_ar_pair_trackingrZ}r[(h}r\h}r]h]r^Uros/kinetic/yujin_ocsr_assh ˆh }r`h}rah}rbh]rcU!ros-kinetic-yocs-ar-pair-trackingrdasssuUtarget_monitorre}rf(h}rgh}rhh]riUros/kinetic/swarm_functionsrjassh ˆh }rkh}rlh}rmh]rnUros-kinetic-target-monitorroasssuUuuv_cpc_sensorrp}rq(h}rrh}rsh]rtUros/kinetic/uuv_plume_simulatorruassh ˆh }rvh}rwh}rxh]ryUros-kinetic-uuv-cpc-sensorrzasssuUlaser_assemblerr{}r|(h}r}h}r~h]rUros/kinetic/laser_assemblerr€assh ˆh }rh}r‚h}rƒh]r„Uros-kinetic-laser-assemblerr…asssuUurg_cr†}r‡(h}rˆh}r‰h]rŠUros/kinetic/urg_cr‹assh ˆh }rŒh}rh}rŽh]rUros-kinetic-urg-crasssuU imu_compassr‘}r’(h}r“h}r”h]r•Uros/kinetic/imu_compassr–assh ˆh }r—h}r˜h}r™h]ršUros-kinetic-imu-compassr›asssuU tf2_eigenrœ}r(h}ržh}rŸh]r Uros/kinetic/geometry2r¡assh ˆh }r¢h}r£h}r¤h]r¥Uros-kinetic-tf2-eigenr¦asssuUaccess_point_controlr§}r¨(h}r©h}rªh]r«Uros/kinetic/linux_networkingr¬assh ˆh }r­h}r®h}r¯h]r°U ros-kinetic-access-point-controlr±asssuU pddl_msgsr²}r³(h}r´h}rµh]r¶Uros/kinetic/jsk_planningr·assh ˆh }r¸h}r¹h}rºh]r»Uros-kinetic-pddl-msgsr¼asssuUopen_manipulator_moveitr½}r¾(h}r¿h}rÀh]rÁUros/kinetic/open_manipulatorrÂassh ˆh }rÃh}rÄh}rÅh]rÆU#ros-kinetic-open-manipulator-moveitrÇasssuUdistance_map_deadreckrÈ}rÉ(h}rÊh}rËh]rÌUros/kinetic/distance_maprÍassh ˆh }rÎh}rÏh}rÐh]rÑU!ros-kinetic-distance-map-deadreckrÒasssuUderived_object_msgsrÓ}rÔ(h}rÕh}rÖh]r×Uros/kinetic/astuff_sensor_msgsrØassh ˆh }rÙh}rÚh}rÛh]rÜUros-kinetic-derived-object-msgsrÝasssuUnao_interactionrÞ}rß(h}ràh}ráh]râUros/kinetic/nao_interactionrãassh ˆh }räh}råh}ræh]rçUros-kinetic-nao-interactionrèasssuUddynamic_reconfigureré}rê(h}rëh}rìh]ríU ros/kinetic/ddynamic_reconfigurerîassh ˆh }rïh}rðh}rñh]ròU ros-kinetic-ddynamic-reconfigureróasssuUdr_cmakerô}rõ(h}röh}r÷h]røUros/kinetic/dr_baserùassh ˆh }rúh}rûh}rüh]rýUros-kinetic-dr-cmakerþasssuUqb_chain_controlrÿ}r(h}rh}rh]rUros/kinetic/qb_chainrassh ˆh }rh}rh}rh]rUros-kinetic-qb-chain-controlr asssuU rxcpp_vendorr }r (h}r h}r h]rUros/kinetic/rxcpp_vendorrassh ˆh }rh}rh}rh]rUros-kinetic-rxcpp-vendorrasssuUmarti_visualization_msgsr}r(h}rh}rh]rUros/kinetic/marti_messagesrassh ˆh }rh}rh}rh]rU$ros-kinetic-marti-visualization-msgsrasssuUdoosan_roboticsr }r!(h}r"h}r#h]r$Uros/kinetic/doosan_robotr%assh ˆh }r&h}r'h}r(h]r)Uros-kinetic-doosan-roboticsr*asssuU nodelet_corer+}r,(h}r-h}r.h]r/Uros/kinetic/nodelet_corer0assh ˆh }r1h}r2h}r3h]r4Uros-kinetic-nodelet-corer5asssuU bcap_corer6}r7(h}r8h}r9h]r:Uros/kinetic/denso_robot_rosr;assh ˆh }r<h}r=h}r>h]r?Uros-kinetic-bcap-corer@asssuUturtlebot_teleoprA}rB(h}rCh}rDh]rEUros/kinetic/turtlebotrFassh ˆh }rGh}rHh}rIh]rJUros-kinetic-turtlebot-teleoprKasssuUhealth_metric_collectorrL}rM(h}rNh}rOh]rPU#ros/kinetic/health_metric_collectorrQassh ˆh }rRh}rSh}rTh]rUU#ros-kinetic-health-metric-collectorrVasssuUop3_localizationrW}rX(h}rYh}rZh]r[Uros/kinetic/robotis_op3r\assh ˆh }r]h}r^h}r_h]r`Uros-kinetic-op3-localizationraasssuUwebtestrb}rc(h}rdh}reh]rfUros/kinetic/webtestrgassh ˆh }rhh}rih}rjh]rkUros-kinetic-webtestrlasssuUomplrm}rn(h}roh}rph]rqUros/kinetic/omplrrassh ˆh }rsh}rth}ruh]rvUros-kinetic-omplrwasssuUradar_omnipresenserx}ry(h}rzh}r{h]r|Uros/kinetic/radar_omnipresenser}assh ˆh }r~h}rh}r€h]rUros-kinetic-radar-omnipresenser‚asssuUdbw_mkzrƒ}r„(h}r…h}r†h]r‡Uros/kinetic/dbw_mkz_rosrˆassh ˆh }r‰h}rŠh}r‹h]rŒUros-kinetic-dbw-mkzrasssuU uwsim_bulletrŽ}r(h}rh}r‘h]r’Uros/kinetic/uwsim_bulletr“assh ˆh }r”h}r•h}r–h]r—Uros-kinetic-uwsim-bulletr˜asssuUgcloud_speech_msgsr™}rš(h}r›h}rœh]rUros/kinetic/gcloud_speechržassh ˆh }rŸh}r h}r¡h]r¢Uros-kinetic-gcloud-speech-msgsr£asssuUroscpp_serializationr¤}r¥(h}r¦h}r§h]r¨Uros/kinetic/roscpp_corer©assh ˆh }rªh}r«h}r¬h]r­U ros-kinetic-roscpp-serializationr®asssuUtuw_marker_detectionr¯}r°(h}r±h}r²h]r³U ros/kinetic/tuw_marker_detectionr´assh ˆh }rµh}r¶h}r·h]r¸U ros-kinetic-tuw-marker-detectionr¹asssuUfsrobo_rrº}r»(h}r¼h}r½h]r¾Uros/kinetic/fsrobo_rr¿assh ˆh }rÀh}rÁh}rÂh]rÃUros-kinetic-fsrobo-rrÄasssuU libmavconnrÅ}rÆ(h}rÇh}rÈh]rÉUros/kinetic/mavrosrÊassh ˆh }rËh}rÌh}rÍh]rÎUros-kinetic-libmavconnrÏasssuUjog_msgsrÐ}rÑ(h}rÒh}rÓh]rÔUros/kinetic/jog_controlrÕassh ˆh }rÖh}r×h}rØh]rÙUros-kinetic-jog-msgsrÚasssuUps3joyrÛ}rÜ(h}rÝh}rÞh]rßUros/kinetic/joystick_driversràassh ˆh }ráh}râh}rãh]räUros-kinetic-ps3joyråasssuUnextage_gazeboræ}rç(h}rèh}réh]rêUros/kinetic/rtmros_nextagerëassh ˆh }rìh}ríh}rîh]rïUros-kinetic-nextage-gazeborðasssuUdefault_cfg_fkierñ}rò(h}róh}rôh]rõUros/kinetic/multimaster_fkieröassh ˆh }r÷h}røh}rùh]rúUros-kinetic-default-cfg-fkierûasssuU kobuki_driverrü}rý(h}rþh}rÿh]rUros/kinetic/kobuki_corerassh ˆh }rh}rh}rh]rUros-kinetic-kobuki-driverrasssuU openrtm_aistr}r(h}r h}r h]r Uros/kinetic/openrtm_aistr assh ˆh }r h}rh}rh]rUros-kinetic-openrtm-aistrasssuUdbw_fca_joystick_demor}r(h}rh}rh]rUros/kinetic/dbw_fca_rosrassh ˆh }rh}rh}rh]rU!ros-kinetic-dbw-fca-joystick-demorasssuUpr2_calibration_launchr}r(h}rh}r h]r!Uros/kinetic/pr2_calibrationr"assh ˆh }r#h}r$h}r%h]r&U"ros-kinetic-pr2-calibration-launchr'asssuU costmap_2dr(}r)(h}r*h}r+h]r,Uros/kinetic/navigationr-assh ˆh }r.h}r/h}r0h]r1Uros-kinetic-costmap-2dr2asssuU wave_gazebor3}r4(h}r5h}r6h]r7Uros/kinetic/vrxr8assh ˆh }r9h}r:h}r;h]r<Uros-kinetic-wave-gazebor=asssuUmoveit_ros_robot_interactionr>}r?(h}r@h}rAh]rBUros/kinetic/moveitrCassh ˆh }rDh}rEh}rFh]rGU(ros-kinetic-moveit-ros-robot-interactionrHasssuU nav_2d_utilsrI}rJ(h}rKh}rLh]rMUros/kinetic/robot_navigationrNassh ˆh }rOh}rPh}rQh]rRUros-kinetic-nav-2d-utilsrSasssuU python_treprT}rU(h}rVh}rWh]rXUros/kinetic/python_treprYassh ˆh }rZh}r[h}r\h]r]Uros-kinetic-python-trepr^asssuU assimp_develr_}r`(h}rah}rbh]rcUros/kinetic/jsk_3rdpartyrdassh ˆh }reh}rfh}rgh]rhUros-kinetic-assimp-develriasssuUgrizzly_descriptionrj}rk(h}rlh}rmh]rnUros/kinetic/grizzlyroassh ˆh }rph}rqh}rrh]rsUros-kinetic-grizzly-descriptionrtasssuUpr2_navigation_teleopru}rv(h}rwh}rxh]ryUros/kinetic/pr2_navigationrzassh ˆh }r{h}r|h}r}h]r~U!ros-kinetic-pr2-navigation-teleoprasssuU turtlebot3r€}r(h}r‚h}rƒh]r„Uros/kinetic/turtlebot3r…assh ˆh }r†h}r‡h}rˆh]r‰Uros-kinetic-turtlebot3rŠasssuU pluginlibr‹}rŒ(h}rh}rŽh]rUros/kinetic/pluginlibrassh ˆh }r‘h}r’h}r“h]r”Uros-kinetic-pluginlibr•asssuU flexbe_corer–}r—(h}r˜h}r™h]ršUros/kinetic/flexber›assh ˆh }rœh}rh}ržh]rŸUros-kinetic-flexbe-corer asssuU leg_detectorr¡}r¢(h}r£h}r¤h]r¥Uros/kinetic/peopler¦assh ˆh }r§h}r¨h}r©h]rªUros-kinetic-leg-detectorr«asssuU rosdoc_liter¬}r­(h}r®h}r¯h]r°Uros/kinetic/rosdoc_liter±assh ˆh }r²h}r³h}r´h]rµUros-kinetic-rosdoc-liter¶asssuUrtt_rosr·}r¸(h}r¹h}rºh]r»Uros/kinetic/rtt_ros_integrationr¼assh ˆh }r½h}r¾h}r¿h]rÀUros-kinetic-rtt-rosrÁasssuU test_mavrosrÂ}rÃ(h}rÄh}rÅh]rÆUros/kinetic/mavrosrÇassh ˆh }rÈh}rÉh}rÊh]rËUros-kinetic-test-mavrosrÌasssuU abseil_cpprÍ}rÎ(h}rÏh}rÐh]rÑUros/kinetic/abseil_cpprÒassh ˆh }rÓh}rÔh}rÕh]rÖUros-kinetic-abseil-cppr×asssuUsophusrØ}rÙ(h}rÚh}rÛh]rÜUros/kinetic/sophusrÝassh ˆh }rÞh}rßh}ràh]ráUros-kinetic-sophusrâasssuUnetwork_interfacerã}rä(h}råh}ræh]rçUros/kinetic/network_interfacerèassh ˆh }réh}rêh}rëh]rìUros-kinetic-network-interfaceríasssuUbondrî}rï(h}rðh}rñh]ròUros/kinetic/bond_coreróassh ˆh }rôh}rõh}röh]r÷Uros-kinetic-bondrøasssuUcob_model_identifierrù}rú(h}rûh}rüh]rýUros/kinetic/cob_controlrþassh ˆh }rÿh}r h}r h]r U ros-kinetic-cob-model-identifierr asssuUmultikey_teleopr }r (h}r h}r h]r Uros/kinetic/multikey_teleopr assh ˆh }r h}r h}r h]r Uros-kinetic-multikey-teleopr asssuU jsk_pr2eusr }r (h}r h}r h]r Uros/kinetic/jsk_pr2eusr assh ˆh }r h}r h}r h]r Uros-kinetic-jsk-pr2eusr asssuUainstein_radar_driversr }r (h}r h}r h]r Uros/kinetic/ainstein_radarr assh ˆh }r h}r! h}r" h]r# U"ros-kinetic-ainstein-radar-driversr$ asssuUarbotix_firmwarer% }r& (h}r' h}r( h]r) Uros/kinetic/arbotixr* assh ˆh }r+ h}r, h}r- h]r. Uros-kinetic-arbotix-firmwarer/ asssuUhector_geotiffr0 }r1 (h}r2 h}r3 h]r4 Uros/kinetic/hector_slamr5 assh ˆh }r6 h}r7 h}r8 h]r9 Uros-kinetic-hector-geotiffr: asssuU cob_lightr; }r< (h}r= h}r> h]r? Uros/kinetic/cob_driverr@ assh ˆh }rA h}rB h}rC h]rD Uros-kinetic-cob-lightrE asssuUagvs_descriptionrF }rG (h}rH h}rI h]rJ Uros/kinetic/agvs_commonrK assh ˆh }rL h}rM h}rN h]rO Uros-kinetic-agvs-descriptionrP asssuUjsk_rviz_pluginsrQ }rR (h}rS h}rT h]rU Uros/kinetic/jsk_visualizationrV assh ˆh }rW h}rX h}rY h]rZ Uros-kinetic-jsk-rviz-pluginsr[ asssuU loki_robotr\ }r] (h}r^ h}r_ h]r` Uros/kinetic/loki_robotra assh ˆh }rb h}rc h}rd h]re Uros-kinetic-loki-robotrf asssuUthormang3_action_script_playerrg }rh (h}ri h}rj h]rk Uros/kinetic/thormang3_opcrl assh ˆh }rm h}rn h}ro h]rp U*ros-kinetic-thormang3-action-script-playerrq asssuUrvizrr }rs (h}rt h}ru h]rv Uros/kinetic/rvizrw assh ˆh }rx h}ry h}rz h]r{ Uros-kinetic-rvizr| asssuUpr2_camera_synchronizerr} }r~ (h}r h}r€ h]r Uros/kinetic/pr2_robotr‚ assh ˆh }rƒ h}r„ h}r… h]r† U#ros-kinetic-pr2-camera-synchronizerr‡ asssuUflir_boson_usbrˆ }r‰ (h}rŠ h}r‹ h]rŒ Uros/kinetic/flir_boson_usbr assh ˆh }rŽ h}r h}r h]r‘ Uros-kinetic-flir-boson-usbr’ asssuUdistance_map_corer“ }r” (h}r• h}r– h]r— Uros/kinetic/distance_mapr˜ assh ˆh }r™ h}rš h}r› h]rœ Uros-kinetic-distance-map-corer asssuU laser_filtersrž }rŸ (h}r  h}r¡ h]r¢ Uros/kinetic/laser_filtersr£ assh ˆh }r¤ h}r¥ h}r¦ h]r§ Uros-kinetic-laser-filtersr¨ asssuUum7r© }rª (h}r« h}r¬ h]r­ Uros/kinetic/um7r® assh ˆh }r¯ h}r° h}r± h]r² Uros-kinetic-um7r³ asssuUrr_openrover_stackr´ }rµ (h}r¶ h}r· h]r¸ Uros/kinetic/rr_openrover_stackr¹ assh ˆh }rº h}r» h}r¼ h]r½ Uros-kinetic-rr-openrover-stackr¾ asssuUcob_calibration_datar¿ }rÀ (h}rÁ h}r h]rà U ros/kinetic/cob_calibration_datarÄ assh ˆh }rÅ h}rÆ h}rÇ h]rÈ U ros-kinetic-cob-calibration-datarÉ asssuU rocon_gatewayrÊ }rË (h}rÌ h}rÍ h]rÎ Uros/kinetic/rocon_multimasterrÏ assh ˆh }rÐ h}rÑ h}rÒ h]rÓ Uros-kinetic-rocon-gatewayrÔ asssuU perceptionrÕ }rÖ (h}r× h}rØ h]rÙ Uros/kinetic/metapackagesrÚ assh ˆh }rÛ h}rÜ h}rÝ h]rÞ Uros-kinetic-perceptionrß asssuU exotica_corerà }rá (h}râ h}rã h]rä Uros/kinetic/exoticarå assh ˆh }ræ h}rç h}rè h]ré Uros-kinetic-exotica-corerê asssuUop3_online_walking_module_msgsrë }rì (h}rí h}rî h]rï Uros/kinetic/robotis_op3_msgsrð assh ˆh }rñ h}rò h}ró h]rô U*ros-kinetic-op3-online-walking-module-msgsrõ asssuUsick_timrö }r÷ (h}rø h}rù h]rú Uros/kinetic/sick_timrû assh ˆh }rü h}rý h}rþ h]rÿ Uros-kinetic-sick-timr asssuUpepperl_fuchs_r2000r }r (h}r h}r h]r Uros/kinetic/pepperl_fuchsr assh ˆh }r h}r h}r h]r Uros-kinetic-pepperl-fuchs-r2000r asssuU flatbuffersr }r (h}r h}r h]r Uros/kinetic/flatbuffersr assh ˆh }r h}r h}r h]r Uros-kinetic-flatbuffersr asssuUopen_manipulator_libsr }r (h}r h}r h]r Uros/kinetic/open_manipulatorr assh ˆh }r h}r h}r h]r U!ros-kinetic-open-manipulator-libsr! asssuU rocon_ebnfr" }r# (h}r$ h}r% h]r& Uros/kinetic/rocon_toolsr' assh ˆh }r( h}r) h}r* h]r+ Uros-kinetic-rocon-ebnfr, asssuUpr2_gripper_actionr- }r. (h}r/ h}r0 h]r1 Uros/kinetic/pr2_controllersr2 assh ˆh }r3 h}r4 h}r5 h]r6 Uros-kinetic-pr2-gripper-actionr7 asssuU cob_soundr8 }r9 (h}r: h}r; h]r< Uros/kinetic/cob_driverr= assh ˆh }r> h}r? h}r@ h]rA Uros-kinetic-cob-soundrB asssuUpr2_controllers_msgsrC }rD (h}rE h}rF h]rG Uros/kinetic/pr2_controllersrH assh ˆh }rI h}rJ h}rK h]rL U ros-kinetic-pr2-controllers-msgsrM asssuUtf2_geometry_msgsrN }rO (h}rP h}rQ h]rR Uros/kinetic/geometry2rS assh ˆh }rT h}rU h}rV h]rW Uros-kinetic-tf2-geometry-msgsrX asssuU mm_messagesrY }rZ (h}r[ h}r\ h]r] U ros/kinetic/message_multiplexingr^ assh ˆh }r_ h}r` h}ra h]rb Uros-kinetic-mm-messagesrc asssuUaddwa_local_plannerrd }re (h}rf h}rg h]rh Uros/kinetic/xiaoqiangri assh ˆh }rj h}rk h}rl h]rm Uros-kinetic-addwa-local-plannerrn asssuUthormang3_msgsro }rp (h}rq h}rr h]rs Uros/kinetic/thormang3_msgsrt assh ˆh }ru h}rv h}rw h]rx Uros-kinetic-thormang3-msgsry asssuUcob_footprint_observerrz }r{ (h}r| h}r} h]r~ Uros/kinetic/cob_controlr assh ˆh }r€ h}r h}r‚ h]rƒ U"ros-kinetic-cob-footprint-observerr„ asssuU pyros_testr… }r† (h}r‡ h}rˆ h]r‰ Uros/kinetic/pyros_testrŠ assh ˆh }r‹ h}rŒ h}r h]rŽ Uros-kinetic-pyros-testr asssuUpr2_mechanism_controllersr }r‘ (h}r’ h}r“ h]r” Uros/kinetic/pr2_controllersr• assh ˆh }r– h}r— h}r˜ h]r™ U%ros-kinetic-pr2-mechanism-controllersrš asssuUseed_r7_moveit_configr› }rœ (h}r h}rž h]rŸ Uros/kinetic/seed_r7_ros_pkgr  assh ˆh }r¡ h}r¢ h}r£ h]r¤ U!ros-kinetic-seed-r7-moveit-configr¥ asssuUstd_capabilitiesr¦ }r§ (h}r¨ h}r© h]rª Uros/kinetic/std_capabilitiesr« assh ˆh }r¬ h}r­ h}r® h]r¯ Uros-kinetic-std-capabilitiesr° asssuU minas_controlr± }r² (h}r³ h}r´ h]rµ Uros/kinetic/minasr¶ assh ˆh }r· h}r¸ h}r¹ h]rº Uros-kinetic-minas-controlr» asssuU allocatorsr¼ }r½ (h}r¾ h}r¿ h]rÀ Uros/kinetic/ros_realtimerÁ assh ˆh }r h}rà h}rÄ h]rÅ Uros-kinetic-allocatorsrÆ asssuUturtlebot3_gazeborÇ }rÈ (h}rÉ h}rÊ h]rË U"ros/kinetic/turtlebot3_simulationsrÌ assh ˆh }rÍ h}rÎ h}rÏ h]rÐ Uros-kinetic-turtlebot3-gazeborÑ asssuUpointgrey_camera_descriptionrÒ }rÓ (h}rÔ h}rÕ h]rÖ U#ros/kinetic/pointgrey_camera_driverr× assh ˆh }rØ h}rÙ h}rÚ h]rÛ U(ros-kinetic-pointgrey-camera-descriptionrÜ asssuUcostmap_prohibition_layerrÝ }rÞ (h}rß h}rà h]rá U%ros/kinetic/costmap_prohibition_layerrâ assh ˆh }rã h}rä h}rå h]ræ U%ros-kinetic-costmap-prohibition-layerrç asssuUpepper_gazebo_pluginrè }ré (h}rê h}rë h]rì Uros/kinetic/pepper_virtualrí assh ˆh }rî h}rï h}rð h]rñ U ros-kinetic-pepper-gazebo-pluginrò asssuUtrajectory_msgsró }rô (h}rõ h}rö h]r÷ Uros/kinetic/common_msgsrø assh ˆh }rù h}rú h}rû h]rü Uros-kinetic-trajectory-msgsrý asssuUwaypoint_touringrþ }rÿ (h}r h}r h]r Uros/kinetic/waypointr assh ˆh }r h}r h}r h]r Uros-kinetic-waypoint-touringr asssuUroomblock_navigationr }r (h}r h}r h]r Uros/kinetic/roomblockr assh ˆh }r h}r h}r h]r U ros-kinetic-roomblock-navigationr asssuU app_managerr }r (h}r h}r h]r Uros/kinetic/app_managerr assh ˆh }r h}r h}r h]r Uros-kinetic-app-managerr asssuUkinesis_video_msgsr }r (h}r! h}r" h]r# U"ros/kinetic/kinesis_video_streamerr$ assh ˆh }r% h}r& h}r' h]r( Uros-kinetic-kinesis-video-msgsr) asssuUrobot_navigationr* }r+ (h}r, h}r- h]r. Uros/kinetic/robot_navigationr/ assh ˆh }r0 h}r1 h}r2 h]r3 Uros-kinetic-robot-navigationr4 asssuUrslidar_pointcloudr5 }r6 (h}r7 h}r8 h]r9 Uros/kinetic/robosenser: assh ˆh }r; h}r< h}r= h]r> Uros-kinetic-rslidar-pointcloudr? asssuU xiaoqiangr@ }rA (h}rB h}rC h]rD Uros/kinetic/xiaoqiangrE assh ˆh }rF h}rG h}rH h]rI Uros-kinetic-xiaoqiangrJ asssuUimage_publisherrK }rL (h}rM h}rN h]rO Uros/kinetic/image_pipelinerP assh ˆh }rQ h}rR h}rS h]rT Uros-kinetic-image-publisherrU asssuU marker_msgsrV }rW (h}rX h}rY h]rZ Uros/kinetic/marker_msgsr[ assh ˆh }r\ h}r] h}r^ h]r_ Uros-kinetic-marker-msgsr` asssuUrobotis_utilityra }rb (h}rc h}rd h]re Uros/kinetic/robotis_utilityrf assh ˆh }rg h}rh h}ri h]rj Uros-kinetic-robotis-utilityrk asssuUdynamixel_driverrl }rm (h}rn h}ro h]rp Uros/kinetic/dynamixel_motorrq assh ˆh }rr h}rs h}rt h]ru Uros-kinetic-dynamixel-driverrv asssuU people_msgsrw }rx (h}ry h}rz h]r{ Uros/kinetic/peopler| assh ˆh }r} h}r~ h}r h]r€ Uros-kinetic-people-msgsr asssuUuwsim_osgworksr‚ }rƒ (h}r„ h}r… h]r† Uros/kinetic/uwsim_osgworksr‡ assh ˆh }rˆ h}r‰ h}rŠ h]r‹ Uros-kinetic-uwsim-osgworksrŒ asssuUsafety_limiter_msgsr }rŽ (h}r h}r h]r‘ Uros/kinetic/neonavigation_msgsr’ assh ˆh }r“ h}r” h}r• h]r– Uros-kinetic-safety-limiter-msgsr— asssuUxiaoqiang_bringupr˜ }r™ (h}rš h}r› h]rœ Uros/kinetic/xiaoqiangr assh ˆh }rž h}rŸ h}r  h]r¡ Uros-kinetic-xiaoqiang-bringupr¢ asssuU tuw_nav_msgsr£ }r¤ (h}r¥ h}r¦ h]r§ Uros/kinetic/tuw_msgsr¨ assh ˆh }r© h}rª h}r« h]r¬ Uros-kinetic-tuw-nav-msgsr­ asssuU robotis_op3r® }r¯ (h}r° h}r± h]r² Uros/kinetic/robotis_op3r³ assh ˆh }r´ h}rµ h}r¶ h]r· Uros-kinetic-robotis-op3r¸ asssuU zeroconf_msgsr¹ }rº (h}r» h}r¼ h]r½ Uros/kinetic/zeroconf_msgsr¾ assh ˆh }r¿ h}rÀ h}rÁ h]r Uros-kinetic-zeroconf-msgsrà asssuUsainsmart_relay_usbrÄ }rÅ (h}rÆ h}rÇ h]rÈ Uros/kinetic/sainsmart_relay_usbrÉ assh ˆh }rÊ h}rË h}rÌ h]rÍ Uros-kinetic-sainsmart-relay-usbrÎ asssuUscratch4robotsrÏ }rÐ (h}rÑ h}rÒ h]rÓ Uros/kinetic/scratch4robotsrÔ assh ˆh }rÕ h}rÖ h}r× h]rØ Uros-kinetic-scratch4robotsrÙ asssuUueye_camrÚ }rÛ (h}rÜ h}rÝ h]rÞ Uros/kinetic/ueye_camrß assh ˆh }rà h}rá h}râ h]rã Uros-kinetic-ueye-camrä asssuU jpeg_streamerrå }ræ (h}rç h}rè h]ré Uros/kinetic/camera_umdrê assh ˆh }rë h}rì h}rí h]rî Uros-kinetic-jpeg-streamerrï asssuUuuv_world_ros_pluginsrð }rñ (h}rò h}ró h]rô Uros/kinetic/uuv_simulatorrõ assh ˆh }rö h}r÷ h}rø h]rù U!ros-kinetic-uuv-world-ros-pluginsrú asssuUffharû }rü (h}rý h}rþ h]rÿ Uros/kinetic/jsk_3rdpartyr assh ˆh }r h}r h}r h]r Uros-kinetic-ffhar asssuU lex_commonr }r (h}r h}r h]r Uros/kinetic/lex_commonr assh ˆh }r h}r h}r h]r Uros-kinetic-lex-commonr asssuUmanipulator_h_base_module_msgsr }r (h}r h}r h]r Uros/kinetic/manipulator_hr assh ˆh }r h}r h}r h]r U*ros-kinetic-manipulator-h-base-module-msgsr asssuUecl_navigationr }r (h}r h}r h]r Uros/kinetic/ecl_navigationr! assh ˆh }r" h}r# h}r$ h]r% Uros-kinetic-ecl-navigationr& asssuU ecl_utilitiesr' }r( (h}r) h}r* h]r+ Uros/kinetic/ecl_corer, assh ˆh }r- h}r. h}r/ h]r0 Uros-kinetic-ecl-utilitiesr1 asssuUraspigibbon_bringupr2 }r3 (h}r4 h}r5 h]r6 Uros/kinetic/raspigibbon_rosr7 assh ˆh }r8 h}r9 h}r: h]r; Uros-kinetic-raspigibbon-bringupr< asssuUknir= }r> (h}r? h}r@ h]rA Uros/kinetic/katana_driverrB assh ˆh }rC h}rD h}rE h]rF Uros-kinetic-knirG asssuU swri_roscpprH }rI (h}rJ h}rK h]rL Uros/kinetic/marti_commonrM assh ˆh }rN h}rO h}rP h]rQ Uros-kinetic-swri-roscpprR asssuUmoveit_ros_warehouserS }rT (h}rU h}rV h]rW Uros/kinetic/moveitrX assh ˆh }rY h}rZ h}r[ h]r\ U ros-kinetic-moveit-ros-warehouser] asssuU jointstickr^ }r_ (h}r` h}ra h]rb Uros/kinetic/jointstickrc assh ˆh }rd h}re h}rf h]rg Uros-kinetic-jointstickrh asssuUroseus_tutorialsri }rj (h}rk h}rl h]rm Uros/kinetic/jsk_roseusrn assh ˆh }ro h}rp h}rq h]rr Uros-kinetic-roseus-tutorialsrs asssuUrocon_app_managerrt }ru (h}rv h}rw h]rx Uros/kinetic/rocon_app_platformry assh ˆh }rz h}r{ h}r| h]r} Uros-kinetic-rocon-app-managerr~ asssuU cob_gazebor }r€ (h}r h}r‚ h]rƒ Uros/kinetic/cob_simulationr„ assh ˆh }r… h}r† h}r‡ h]rˆ Uros-kinetic-cob-gazebor‰ asssuUlibconcorde_tsp_solverrŠ }r‹ (h}rŒ h}r h]rŽ U#ros/kinetic/cob_extern_unmaintainedr assh ˆh }r h}r‘ h}r’ h]r“ U"ros-kinetic-libconcorde-tsp-solverr” asssuUrosflight_firmwarer• }r– (h}r— h}r˜ h]r™ Uros/kinetic/rosflightrš assh ˆh }r› h}rœ h}r h]rž Uros-kinetic-rosflight-firmwarerŸ asssuUuniversal_robotr  }r¡ (h}r¢ h}r£ h]r¤ Uros/kinetic/universal_robotr¥ assh ˆh }r¦ h}r§ h}r¨ h]r© Uros-kinetic-universal-robotrª asssuUrosemacsr« }r¬ (h}r­ h}r® h]r¯ Uros/kinetic/ros_emacs_utilsr° assh ˆh }r± h}r² h}r³ h]r´ Uros-kinetic-rosemacsrµ asssuUmarti_status_msgsr¶ }r· (h}r¸ h}r¹ h]rº Uros/kinetic/marti_messagesr» assh ˆh }r¼ h}r½ h}r¾ h]r¿ Uros-kinetic-marti-status-msgsrÀ asssuUsmachrÁ }r (h}rà h}rÄ h]rÅ Uros/kinetic/executive_smachrÆ assh ˆh }rÇ h}rÈ h}rÉ h]rÊ Uros-kinetic-smachrË asssuUjderobot_assetsrÌ }rÍ (h}rÎ h}rÏ h]rÐ Uros/kinetic/jderobot_assetsrÑ assh ˆh }rÒ h}rÓ h}rÔ h]rÕ Uros-kinetic-jderobot-assetsrÖ asssuUaudibot_gazebor× }rØ (h}rÙ h}rÚ h]rÛ Uros/kinetic/audibotrÜ assh ˆh }rÝ h}rÞ h}rß h]rà Uros-kinetic-audibot-gazeborá asssuUroch_descriptionrâ }rã (h}rä h}rå h]ræ Uros/kinetic/roch_robotrç assh ˆh }rè h}ré h}rê h]rë Uros-kinetic-roch-descriptionrì asssuUdistance_map_opencvrí }rî (h}rï h}rð h]rñ Uros/kinetic/distance_maprò assh ˆh }ró h}rô h}rõ h]rö Uros-kinetic-distance-map-opencvr÷ asssuUur3_e_moveit_configrø }rù (h}rú h}rû h]rü Uros/kinetic/universal_robotrý assh ˆh }rþ h}rÿ h}r h]r Uros-kinetic-ur3-e-moveit-configr asssuUmecanum_gazebo_pluginr }r (h}r h}r h]r Uros/kinetic/ridgeback_simulatorr assh ˆh }r h}r h}r h]r U!ros-kinetic-mecanum-gazebo-pluginr asssuUkatana_gazebo_pluginsr }r (h}r h}r h]r Uros/kinetic/katana_driverr assh ˆh }r h}r h}r h]r U!ros-kinetic-katana-gazebo-pluginsr asssuUubiquity_motorr }r (h}r h}r h]r Uros/kinetic/ubiquity_motorr assh ˆh }r h}r h}r! h]r" Uros-kinetic-ubiquity-motorr# asssuUcanopen_masterr$ }r% (h}r& h}r' h]r( Uros/kinetic/ros_canopenr) assh ˆh }r* h}r+ h}r, h]r- Uros-kinetic-canopen-masterr. asssuU kobuki_softr/ }r0 (h}r1 h}r2 h]r3 Uros/kinetic/kobuki_softr4 assh ˆh }r5 h}r6 h}r7 h]r8 Uros-kinetic-kobuki-softr9 asssuUfranka_descriptionr: }r; (h}r< h}r= h]r> Uros/kinetic/franka_rosr? assh ˆh }r@ h}rA h}rB h]rC Uros-kinetic-franka-descriptionrD asssuUdistance_map_msgsrE }rF (h}rG h}rH h]rI Uros/kinetic/distance_maprJ assh ˆh }rK h}rL h}rM h]rN Uros-kinetic-distance-map-msgsrO asssuUindustrial_msgsrP }rQ (h}rR h}rS h]rT Uros/kinetic/industrial_corerU assh ˆh }rV h}rW h}rX h]rY Uros-kinetic-industrial-msgsrZ asssuU uuv_gazebor[ }r\ (h}r] h}r^ h]r_ Uros/kinetic/uuv_simulatorr` assh ˆh }ra h}rb h}rc h]rd Uros-kinetic-uuv-gazebore asssuUoxford_gps_ethrf }rg (h}rh h}ri h]rj Uros/kinetic/oxford_gps_ethrk assh ˆh }rl h}rm h}rn h]ro Uros-kinetic-oxford-gps-ethrp asssuUlaser_filteringrq }rr (h}rs h}rt h]ru Uros/kinetic/laser_filteringrv assh ˆh }rw h}rx h}ry h]rz Uros-kinetic-laser-filteringr{ asssuUmbf_costmap_corer| }r} (h}r~ h}r h]r€ Uros/kinetic/move_base_flexr assh ˆh }r‚ h}rƒ h}r„ h]r… Uros-kinetic-mbf-costmap-corer† asssuUcob_navigation_slamr‡ }rˆ (h}r‰ h}rŠ h]r‹ Uros/kinetic/cob_navigationrŒ assh ˆh }r h}rŽ h}r h]r Uros-kinetic-cob-navigation-slamr‘ asssuUainstein_radar_filtersr’ }r“ (h}r” h}r• h]r– Uros/kinetic/ainstein_radarr— assh ˆh }r˜ h}r™ h}rš h]r› U"ros-kinetic-ainstein-radar-filtersrœ asssuU robotis_mathr }rž (h}rŸ h}r  h]r¡ Uros/kinetic/robotis_mathr¢ assh ˆh }r£ h}r¤ h}r¥ h]r¦ Uros-kinetic-robotis-mathr§ asssuUop3_navigationr¨ }r© (h}rª h}r« h]r¬ Uros/kinetic/robotis_op3_toolsr­ assh ˆh }r® h}r¯ h}r° h]r± Uros-kinetic-op3-navigationr² asssuUmoveit_ros_move_groupr³ }r´ (h}rµ h}r¶ h]r· Uros/kinetic/moveitr¸ assh ˆh }r¹ h}rº h}r» h]r¼ U!ros-kinetic-moveit-ros-move-groupr½ asssuUcob_base_drive_chainr¾ }r¿ (h}rÀ h}rÁ h]r Uros/kinetic/cob_driverrà assh ˆh }rÄ h}rÅ h}rÆ h]rÇ U ros-kinetic-cob-base-drive-chainrÈ asssuUusv_gazebo_pluginsrÉ }rÊ (h}rË h}rÌ h]rÍ Uros/kinetic/vrxrÎ assh ˆh }rÏ h}rÐ h}rÑ h]rÒ Uros-kinetic-usv-gazebo-pluginsrÓ asssuU scan_toolsrÔ }rÕ (h}rÖ h}r× h]rØ Uros/kinetic/scan_toolsrÙ assh ˆh }rÚ h}rÛ h}rÜ h]rÝ Uros-kinetic-scan-toolsrÞ asssuUfanuc_m900ib_supportrß }rà (h}rá h}râ h]rã Uros/kinetic/fanucrä assh ˆh }rå h}ræ h}rç h]rè U ros-kinetic-fanuc-m900ib-supportré asssuUmarti_data_structuresrê }rë (h}rì h}rí h]rî Uros/kinetic/marti_commonrï assh ˆh }rð h}rñ h}rò h]ró U!ros-kinetic-marti-data-structuresrô asssuU cob_dashboardrõ }rö (h}r÷ h}rø h]rù Uros/kinetic/cob_command_toolsrú assh ˆh }rû h}rü h}rý h]rþ Uros-kinetic-cob-dashboardrÿ asssuUseed_r7_descriptionr}r(h}rh}rh]rUros/kinetic/seed_r7_ros_pkgrassh ˆh }rh}rh}rh]r Uros-kinetic-seed-r7-descriptionr asssuU op3_managerr }r (h}r h}rh]rUros/kinetic/robotis_op3rassh ˆh }rh}rh}rh]rUros-kinetic-op3-managerrasssuU kobuki_keyopr}r(h}rh}rh]rUros/kinetic/kobukirassh ˆh }rh}rh}rh]rUros-kinetic-kobuki-keyopr asssuUhector_mappingr!}r"(h}r#h}r$h]r%Uros/kinetic/hector_slamr&assh ˆh }r'h}r(h}r)h]r*Uros-kinetic-hector-mappingr+asssuUpheeno_ros_simr,}r-(h}r.h}r/h]r0Uros/kinetic/pheeno_ros_simr1assh ˆh }r2h}r3h}r4h]r5Uros-kinetic-pheeno-ros-simr6asssuU easy_markersr7}r8(h}r9h}r:h]r;Uros/kinetic/wu_ros_toolsr<assh ˆh }r=h}r>h}r?h]r@Uros-kinetic-easy-markersrAasssuU orocos_kdlrB}rC(h}rDh}rEh]rFU&ros/kinetic/orocos_kinematics_dynamicsrGassh ˆh }rHh}rIh}rJh]rKUros-kinetic-orocos-kdlrLasssuUpr2_arm_kinematicsrM}rN(h}rOh}rPh]rQUros/kinetic/pr2_kinematicsrRassh ˆh }rSh}rTh}rUh]rVUros-kinetic-pr2-arm-kinematicsrWasssuUbarrett_hand_gazeborX}rY(h}rZh}r[h]r\Uros/kinetic/barrett_hand_simr]assh ˆh }r^h}r_h}r`h]raUros-kinetic-barrett-hand-gazeborbasssuUasmach_tutorialsrc}rd(h}reh}rfh]rgUros/kinetic/linux_networkingrhassh ˆh }rih}rjh}rkh]rlUros-kinetic-asmach-tutorialsrmasssuUqb_handrn}ro(h}rph}rqh]rrUros/kinetic/qb_handrsassh ˆh }rth}ruh}rvh]rwUros-kinetic-qb-handrxasssuUcob_frame_trackerry}rz(h}r{h}r|h]r}Uros/kinetic/cob_controlr~assh ˆh }rh}r€h}rh]r‚Uros-kinetic-cob-frame-trackerrƒasssuUsimple_graspingr„}r…(h}r†h}r‡h]rˆUros/kinetic/simple_graspingr‰assh ˆh }rŠh}r‹h}rŒh]rUros-kinetic-simple-graspingrŽasssuU lauv_gazebor}r(h}r‘h}r’h]r“Uros/kinetic/lauv_gazebor”assh ˆh }r•h}r–h}r—h]r˜Uros-kinetic-lauv-gazebor™asssuU jackal_vizrš}r›(h}rœh}rh]ržUros/kinetic/jackal_desktoprŸassh ˆh }r h}r¡h}r¢h]r£Uros-kinetic-jackal-vizr¤asssuU webots_rosr¥}r¦(h}r§h}r¨h]r©Uros/kinetic/webots_rosrªassh ˆh }r«h}r¬h}r­h]r®Uros-kinetic-webots-rosr¯asssuUhebiros_descriptionr°}r±(h}r²h}r³h]r´Uros/kinetic/hebirosrµassh ˆh }r¶h}r·h}r¸h]r¹Uros-kinetic-hebiros-descriptionrºasssuU naoqi_appsr»}r¼(h}r½h}r¾h]r¿Uros/kinetic/naoqi_bridgerÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-kinetic-naoqi-appsrÅasssuUiiwa_rosrÆ}rÇ(h}rÈh}rÉh]rÊUros/kinetic/iiwa_stackrËassh ˆh }rÌh}rÍh}rÎh]rÏUros-kinetic-iiwa-rosrÐasssuUswri_transform_utilrÑ}rÒ(h}rÓh}rÔh]rÕUros/kinetic/marti_commonrÖassh ˆh }r×h}rØh}rÙh]rÚUros-kinetic-swri-transform-utilrÛasssuUcatkinrÜ}rÝ(h}rÞh}rßh]ràUros/kinetic/catkinráassh ˆh }râh}rãh}räh]råUros-kinetic-catkinræasssuUectorç}rè(h}réh}rêh]rëUros/kinetic/ectorìassh ˆh }ríh}rîh}rïh]rðUros-kinetic-ectorñasssuUturtlebot3_applications_msgsrò}ró(h}rôh}rõh]röU(ros/kinetic/turtlebot3_applications_msgsr÷assh ˆh }røh}rùh}rúh]rûU(ros-kinetic-turtlebot3-applications-msgsrüasssuUlaser_cb_detectorrý}rþ(h}rÿh}rh]rUros/kinetic/calibrationrassh ˆh }rh}rh}rh]rUros-kinetic-laser-cb-detectorrasssuUthormang3_gripper_moduler}r (h}r h}r h]r Uros/kinetic/thormang3_mpcr assh ˆh }rh}rh}rh]rU$ros-kinetic-thormang3-gripper-modulerasssuUoclr}r(h}rh}rh]rUros/kinetic/oclrassh ˆh }rh}rh}rh]rUros-kinetic-oclrasssuU pinocchior}r(h}r h}r!h]r"Uros/kinetic/pinocchior#assh ˆh }r$h}r%h}r&h]r'Uros-kinetic-pinocchior(asssuU face_detectorr)}r*(h}r+h}r,h]r-Uros/kinetic/peopler.assh ˆh }r/h}r0h}r1h]r2Uros-kinetic-face-detectorr3asssuU aruco_detectr4}r5(h}r6h}r7h]r8Uros/kinetic/fiducialsr9assh ˆh }r:h}r;h}r<h]r=Uros-kinetic-aruco-detectr>asssuUcare_o_bot_robotr?}r@(h}rAh}rBh]rCUros/kinetic/care_o_botrDassh ˆh }rEh}rFh}rGh]rHUros-kinetic-care-o-bot-robotrIasssuUcostmap_cspace_msgsrJ}rK(h}rLh}rMh]rNUros/kinetic/neonavigation_msgsrOassh ˆh }rPh}rQh}rRh]rSUros-kinetic-costmap-cspace-msgsrTasssuUconvex_decompositionrU}rV(h}rWh}rXh]rYU ros/kinetic/convex_decompositionrZassh ˆh }r[h}r\h}r]h]r^U ros-kinetic-convex-decompositionr_asssuUgeometric_shapesr`}ra(h}rbh}rch]rdUros/kinetic/geometric_shapesreassh ˆh }rfh}rgh}rhh]riUros-kinetic-geometric-shapesrjasssuUwebrtcrk}rl(h}rmh}rnh]roUros/kinetic/webrtc_rosrpassh ˆh }rqh}rrh}rsh]rtUros-kinetic-webrtcruasssuUhironx_moveit_configrv}rw(h}rxh}ryh]rzUros/kinetic/rtmros_hironxr{assh ˆh }r|h}r}h}r~h]rU ros-kinetic-hironx-moveit-configr€asssuU imu_pipeliner}r‚(h}rƒh}r„h]r…Uros/kinetic/imu_pipeliner†assh ˆh }r‡h}rˆh}r‰h]rŠUros-kinetic-imu-pipeliner‹asssuUecl_containersrŒ}r(h}rŽh}rh]rUros/kinetic/ecl_corer‘assh ˆh }r’h}r“h}r”h]r•Uros-kinetic-ecl-containersr–asssuUhomer_ptu_msgsr—}r˜(h}r™h}ršh]r›Uros/kinetic/homer_ptu_msgsrœassh ˆh }rh}ržh}rŸh]r Uros-kinetic-homer-ptu-msgsr¡asssuUcob_image_flipr¢}r£(h}r¤h}r¥h]r¦U!ros/kinetic/cob_perception_commonr§assh ˆh }r¨h}r©h}rªh]r«Uros-kinetic-cob-image-flipr¬asssuU visualstatesr­}r®(h}r¯h}r°h]r±Uros/kinetic/visualstatesr²assh ˆh }r³h}r´h}rµh]r¶Uros-kinetic-visualstatesr·asssuUxacror¸}r¹(h}rºh}r»h]r¼Uros/kinetic/xacror½assh ˆh }r¾h}r¿h}rÀh]rÁUros-kinetic-xacrorÂasssuUecto_pclrÃ}rÄ(h}rÅh}rÆh]rÇUros/kinetic/ecto_pclrÈassh ˆh }rÉh}rÊh}rËh]rÌUros-kinetic-ecto-pclrÍasssuUrqt_msgrÎ}rÏ(h}rÐh}rÑh]rÒUros/kinetic/rqt_msgrÓassh ˆh }rÔh}rÕh}rÖh]r×Uros-kinetic-rqt-msgrØasssuUemlrÙ}rÚ(h}rÛh}rÜh]rÝUros/kinetic/emlrÞassh ˆh }rßh}ràh}ráh]râUros-kinetic-emlrãasssuUmultiwiirä}rå(h}ræh}rçh]rèUros/kinetic/multiwiiréassh ˆh }rêh}rëh}rìh]ríUros-kinetic-multiwiirîasssuU mm_core_msgsrï}rð(h}rñh}ròh]róU ros/kinetic/message_multiplexingrôassh ˆh }rõh}röh}r÷h]røUros-kinetic-mm-core-msgsrùasssuUpoint_cloud_publisher_tutorialrú}rû(h}rüh}rýh]rþU ros/kinetic/navigation_tutorialsrÿassh ˆh }rh}rh}rh]rU*ros-kinetic-point-cloud-publisher-tutorialrasssuUodva_ethernetipr}r(h}rh}rh]r Uros/kinetic/odva_ethernetipr assh ˆh }r h}r h}r h]rUros-kinetic-odva-ethernetiprasssuUrobot_controllers_interfacer}r(h}rh}rh]rUros/kinetic/robot_controllersrassh ˆh }rh}rh}rh]rU'ros-kinetic-robot-controllers-interfacerasssuUswri_console_utilr}r(h}rh}rh]rUros/kinetic/marti_commonr assh ˆh }r!h}r"h}r#h]r$Uros-kinetic-swri-console-utilr%asssuU ur_bringupr&}r'(h}r(h}r)h]r*Uros/kinetic/universal_robotr+assh ˆh }r,h}r-h}r.h]r/Uros-kinetic-ur-bringupr0asssuUmaster_discovery_fkier1}r2(h}r3h}r4h]r5Uros/kinetic/multimaster_fkier6assh ˆh }r7h}r8h}r9h]r:U!ros-kinetic-master-discovery-fkier;asssuUrosnoder<}r=(h}r>h}r?h]r@Uros/kinetic/ros_commrAassh ˆh }rBh}rCh}rDh]rEUros-kinetic-rosnoderFasssuU xpp_examplesrG}rH(h}rIh}rJh]rKUros/kinetic/xpprLassh ˆh }rMh}rNh}rOh]rPUros-kinetic-xpp-examplesrQasssuU openrtm_toolsrR}rS(h}rTh}rUh]rVUros/kinetic/rtmros_commonrWassh ˆh }rXh}rYh}rZh]r[Uros-kinetic-openrtm-toolsr\asssuU lgsvl_msgsr]}r^(h}r_h}r`h]raUros/kinetic/lgsvl_msgsrbassh ˆh }rch}rdh}reh]rfUros-kinetic-lgsvl-msgsrgasssuU grizzly_vizrh}ri(h}rjh}rkh]rlUros/kinetic/grizzly_desktoprmassh ˆh }rnh}roh}rph]rqUros-kinetic-grizzly-vizrrasssuU haros_catkinrs}rt(h}ruh}rvh]rwUros/kinetic/haros_catkinrxassh ˆh }ryh}rzh}r{h]r|Uros-kinetic-haros-catkinr}asssuUturtlebot_interactionsr~}r(h}r€h}rh]r‚U"ros/kinetic/turtlebot_interactionsrƒassh ˆh }r„h}r…h}r†h]r‡U"ros-kinetic-turtlebot-interactionsrˆasssuU joy_mouser‰}rŠ(h}r‹h}rŒh]rUros/kinetic/jsk_controlrŽassh ˆh }rh}rh}r‘h]r’Uros-kinetic-joy-mouser“asssuUpr2_moveit_pluginsr”}r•(h}r–h}r—h]r˜Uros/kinetic/moveit_pr2r™assh ˆh }ršh}r›h}rœh]rUros-kinetic-pr2-moveit-pluginsržasssuUmaster_sync_fkierŸ}r (h}r¡h}r¢h]r£Uros/kinetic/multimaster_fkier¤assh ˆh }r¥h}r¦h}r§h]r¨Uros-kinetic-master-sync-fkier©asssuUur_msgsrª}r«(h}r¬h}r­h]r®Uros/kinetic/universal_robotr¯assh ˆh }r°h}r±h}r²h]r³Uros-kinetic-ur-msgsr´asssuU pepper_robotrµ}r¶(h}r·h}r¸h]r¹Uros/kinetic/pepper_robotrºassh ˆh }r»h}r¼h}r½h]r¾Uros-kinetic-pepper-robotr¿asssuU roscpp_traitsrÀ}rÁ(h}rÂh}rÃh]rÄUros/kinetic/roscpp_corerÅassh ˆh }rÆh}rÇh}rÈh]rÉUros-kinetic-roscpp-traitsrÊasssuUnextage_descriptionrË}rÌ(h}rÍh}rÎh]rÏUros/kinetic/rtmros_nextagerÐassh ˆh }rÑh}rÒh}rÓh]rÔUros-kinetic-nextage-descriptionrÕasssuUsummit_xl_gazeborÖ}r×(h}rØh}rÙh]rÚUros/kinetic/summit_xl_simrÛassh ˆh }rÜh}rÝh}rÞh]rßUros-kinetic-summit-xl-gazeboràasssuUackermann_msgsrá}râ(h}rãh}räh]råUros/kinetic/ackermann_msgsræassh ˆh }rçh}rèh}réh]rêUros-kinetic-ackermann-msgsrëasssuUsoemrì}rí(h}rîh}rïh]rðUros/kinetic/soemrñassh ˆh }ròh}róh}rôh]rõUros-kinetic-soemröasssuUneonavigation_launchr÷}rø(h}rùh}rúh]rûUros/kinetic/neonavigationrüassh ˆh }rýh}rþh}rÿh]rU ros-kinetic-neonavigation-launchrasssuU terarangerr}r(h}rh}rh]rUros/kinetic/terarangerrassh ˆh }rh}r h}r h]r Uros-kinetic-terarangerr asssuUrslidar_driverr }r(h}rh}rh]rUros/kinetic/robosenserassh ˆh }rh}rh}rh]rUros-kinetic-rslidar-driverrasssuUpr2_mechanism_diagnosticsr}r(h}rh}rh]rUros/kinetic/pr2_mechanismrassh ˆh }rh}rh}r h]r!U%ros-kinetic-pr2-mechanism-diagnosticsr"asssuUcob_navigationr#}r$(h}r%h}r&h]r'Uros/kinetic/cob_navigationr(assh ˆh }r)h}r*h}r+h]r,Uros-kinetic-cob-navigationr-asssuU rcdiscoverr.}r/(h}r0h}r1h]r2Uros/kinetic/rcdiscoverr3assh ˆh }r4h}r5h}r6h]r7Uros-kinetic-rcdiscoverr8asssuU p2os_teleopr9}r:(h}r;h}r<h]r=Uros/kinetic/p2osr>assh ˆh }r?h}r@h}rAh]rBUros-kinetic-p2os-teleoprCasssuUfsrobo_r_bringuprD}rE(h}rFh}rGh]rHUros/kinetic/fsrobo_rrIassh ˆh }rJh}rKh}rLh]rMUros-kinetic-fsrobo-r-bringuprNasssuUrc_pick_clientrO}rP(h}rQh}rRh]rSUros/kinetic/rc_visardrTassh ˆh }rUh}rVh}rWh]rXUros-kinetic-rc-pick-clientrYasssuU nav2d_kartorZ}r[(h}r\h}r]h]r^Uros/kinetic/navigation_2dr_assh ˆh }r`h}rah}rbh]rcUros-kinetic-nav2d-kartordasssuU ecl_geometryre}rf(h}rgh}rhh]riUros/kinetic/ecl_corerjassh ˆh }rkh}rlh}rmh]rnUros-kinetic-ecl-geometryroasssuUgrid_map_filtersrp}rq(h}rrh}rsh]rtUros/kinetic/grid_mapruassh ˆh }rvh}rwh}rxh]ryUros-kinetic-grid-map-filtersrzasssuUcost_mapr{}r|(h}r}h}r~h]rUros/kinetic/cost_mapr€assh ˆh }rh}r‚h}rƒh]r„Uros-kinetic-cost-mapr…asssuUimagezero_image_transportr†}r‡(h}rˆh}r‰h]rŠUros/kinetic/imagezero_transportr‹assh ˆh }rŒh}rh}rŽh]rU%ros-kinetic-imagezero-image-transportrasssuUros_introspectionr‘}r’(h}r“h}r”h]r•Uros/kinetic/roscompiler–assh ˆh }r—h}r˜h}r™h]ršUros-kinetic-ros-introspectionr›asssuU roch_msgsrœ}r(h}ržh}rŸh]r Uros/kinetic/roch_robotr¡assh ˆh }r¢h}r£h}r¤h]r¥Uros-kinetic-roch-msgsr¦asssuU gateway_msgsr§}r¨(h}r©h}rªh]r«Uros/kinetic/rocon_msgsr¬assh ˆh }r­h}r®h}r¯h]r°Uros-kinetic-gateway-msgsr±asssuUros_type_introspectionr²}r³(h}r´h}rµh]r¶U"ros/kinetic/ros_type_introspectionr·assh ˆh }r¸h}r¹h}rºh]r»U"ros-kinetic-ros-type-introspectionr¼asssuU rb1_base_simr½}r¾(h}r¿h}rÀh]rÁUros/kinetic/rb1_base_simrÂassh ˆh }rÃh}rÄh}rÅh]rÆUros-kinetic-rb1-base-simrÇasssuUfsrobo_r_moveit_configrÈ}rÉ(h}rÊh}rËh]rÌUros/kinetic/fsrobo_rrÍassh ˆh }rÎh}rÏh}rÐh]rÑU"ros-kinetic-fsrobo-r-moveit-configrÒasssuUarbotix_sensorsrÓ}rÔ(h}rÕh}rÖh]r×Uros/kinetic/arbotixrØassh ˆh }rÙh}rÚh}rÛh]rÜUros-kinetic-arbotix-sensorsrÝasssuUthormang3_descriptionrÞ}rß(h}ràh}ráh]râUros/kinetic/thormang3_commonrãassh ˆh }räh}råh}ræh]rçU!ros-kinetic-thormang3-descriptionrèasssuU py_trees_rosré}rê(h}rëh}rìh]ríUros/kinetic/py_trees_rosrîassh ˆh }rïh}rðh}rñh]ròUros-kinetic-py-trees-rosróasssuU rc_visardrô}rõ(h}röh}r÷h]røUros/kinetic/rc_visardrùassh ˆh }rúh}rûh}rüh]rýUros-kinetic-rc-visardrþasssuUhebi_descriptionrÿ}r(h}rh}rh]rUros/kinetic/hebi_descriptionrassh ˆh }rh}rh}rh]rUros-kinetic-hebi-descriptionr asssuUmapviz_pluginsr }r (h}r h}r h]rUros/kinetic/mapvizrassh ˆh }rh}rh}rh]rUros-kinetic-mapviz-pluginsrasssuUlibqt_opengl_devr}r(h}rh}rh]rUros/kinetic/qt_metapackagesrassh ˆh }rh}rh}rh]rUros-kinetic-libqt-opengl-devrasssuUjsk_common_msgsr }r!(h}r"h}r#h]r$Uros/kinetic/jsk_common_msgsr%assh ˆh }r&h}r'h}r(h]r)Uros-kinetic-jsk-common-msgsr*asssuU ncd_parserr+}r,(h}r-h}r.h]r/Uros/kinetic/scan_toolsr0assh ˆh }r1h}r2h}r3h]r4Uros-kinetic-ncd-parserr5asssuUplanner_cspace_msgsr6}r7(h}r8h}r9h]r:Uros/kinetic/neonavigation_msgsr;assh ˆh }r<h}r=h}r>h]r?Uros-kinetic-planner-cspace-msgsr@asssuUrobot_pose_publisherrA}rB(h}rCh}rDh]rEU ros/kinetic/robot_pose_publisherrFassh ˆh }rGh}rHh}rIh]rJU ros-kinetic-robot-pose-publisherrKasssuU rtt_roscommrL}rM(h}rNh}rOh]rPUros/kinetic/rtt_ros_integrationrQassh ˆh }rRh}rSh}rTh]rUUros-kinetic-rtt-roscommrVasssuUmav_msgsrW}rX(h}rYh}rZh]r[Uros/kinetic/mav_commr\assh ˆh }r]h}r^h}r_h]r`Uros-kinetic-mav-msgsraasssuUrosjava_messagesrb}rc(h}rdh}reh]rfUros/kinetic/rosjava_messagesrgassh ˆh }rhh}rih}rjh]rkUros-kinetic-rosjava-messagesrlasssuUyoubot_descriptionrm}rn(h}roh}rph]rqUros/kinetic/youbot_descriptionrrassh ˆh }rsh}rth}ruh]rvUros-kinetic-youbot-descriptionrwasssuUrocon_python_redisrx}ry(h}rzh}r{h]r|Uros/kinetic/rocon_toolsr}assh ˆh }r~h}rh}r€h]rUros-kinetic-rocon-python-redisr‚asssuUschunk_canopen_driverrƒ}r„(h}r…h}r†h]r‡U!ros/kinetic/schunk_canopen_driverrˆassh ˆh }r‰h}rŠh}r‹h]rŒU!ros-kinetic-schunk-canopen-driverrasssuU'open_manipulator_with_tb3_waffle_moveitrŽ}r(h}rh}r‘h]r’U%ros/kinetic/open_manipulator_with_tb3r“assh ˆh }r”h}r•h}r–h]r—U3ros-kinetic-open-manipulator-with-tb3-waffle-moveitr˜asssuU myahrs_driverr™}rš(h}r›h}rœh]rUros/kinetic/myahrs_driverržassh ˆh }rŸh}r h}r¡h]r¢Uros-kinetic-myahrs-driverr£asssuUifoptr¤}r¥(h}r¦h}r§h]r¨Uros/kinetic/ifoptr©assh ˆh }rªh}r«h}r¬h]r­Uros-kinetic-ifoptr®asssuUhomer_mapnav_msgsr¯}r°(h}r±h}r²h]r³Uros/kinetic/homer_mapnav_msgsr´assh ˆh }rµh}r¶h}r·h]r¸Uros-kinetic-homer-mapnav-msgsr¹asssuU heron_controlrº}r»(h}r¼h}r½h]r¾Uros/kinetic/heronr¿assh ˆh }rÀh}rÁh}rÂh]rÃUros-kinetic-heron-controlrÄasssuU husky_msgsrÅ}rÆ(h}rÇh}rÈh]rÉUros/kinetic/huskyrÊassh ˆh }rËh}rÌh}rÍh]rÎUros-kinetic-husky-msgsrÏasssuUlaser_filters_jsk_patchrÐ}rÑ(h}rÒh}rÓh]rÔUros/kinetic/jsk_3rdpartyrÕassh ˆh }rÖh}r×h}rØh]rÙU#ros-kinetic-laser-filters-jsk-patchrÚasssuUsummit_xl_descriptionrÛ}rÜ(h}rÝh}rÞh]rßUros/kinetic/summit_xl_commonràassh ˆh }ráh}râh}rãh]räU!ros-kinetic-summit-xl-descriptionråasssuUobject_recognition_captureræ}rç(h}rèh}réh]rêU&ros/kinetic/object_recognition_capturerëassh ˆh }rìh}ríh}rîh]rïU&ros-kinetic-object-recognition-capturerðasssuUcob_default_robot_behaviorrñ}rò(h}róh}rôh]rõUros/kinetic/cob_robotsröassh ˆh }r÷h}røh}rùh]rúU&ros-kinetic-cob-default-robot-behaviorrûasssuUraspigibbon_gazeborü}rý(h}rþh}rÿh]rUros/kinetic/raspigibbon_simrassh ˆh }rh}rh}rh]rUros-kinetic-raspigibbon-gazeborasssuUmrpt_ekf_slam_2dr}r(h}r h}r h]r Uros/kinetic/mrpt_slamr assh ˆh }r h}rh}rh]rUros-kinetic-mrpt-ekf-slam-2drasssuUfrontier_explorationr}r(h}rh}rh]rU ros/kinetic/frontier_explorationrassh ˆh }rh}rh}rh]rU ros-kinetic-frontier-explorationrasssuUkhi_rs_descriptionr}r(h}rh}r h]r!Uros/kinetic/khi_robotr"assh ˆh }r#h}r$h}r%h]r&Uros-kinetic-khi-rs-descriptionr'asssuUloki_navr(}r)(h}r*h}r+h]r,Uros/kinetic/loki_robotr-assh ˆh }r.h}r/h}r0h]r1Uros-kinetic-loki-navr2asssuU autoware_msgsr3}r4(h}r5h}r6h]r7Uros/kinetic/autoware_msgsr8assh ˆh }r9h}r:h}r;h]r<Uros-kinetic-autoware-msgsr=asssuUjackal_simulatorr>}r?(h}r@h}rAh]rBUros/kinetic/jackal_simulatorrCassh ˆh }rDh}rEh}rFh]rGUros-kinetic-jackal-simulatorrHasssuUpepper_controlrI}rJ(h}rKh}rLh]rMUros/kinetic/pepper_virtualrNassh ˆh }rOh}rPh}rQh]rRUros-kinetic-pepper-controlrSasssuUcob_android_script_serverrT}rU(h}rVh}rWh]rXUros/kinetic/cob_androidrYassh ˆh }rZh}r[h}r\h]r]U%ros-kinetic-cob-android-script-serverr^asssuUkhi_duaro_descriptionr_}r`(h}rah}rbh]rcUros/kinetic/khi_robotrdassh ˆh }reh}rfh}rgh]rhU!ros-kinetic-khi-duaro-descriptionriasssuUuuv_trajectory_controlrj}rk(h}rlh}rmh]rnUros/kinetic/uuv_simulatorroassh ˆh }rph}rqh}rrh]rsU"ros-kinetic-uuv-trajectory-controlrtasssuUlaser_tilt_controller_filterru}rv(h}rwh}rxh]ryUros/kinetic/pr2_navigationrzassh ˆh }r{h}r|h}r}h]r~U(ros-kinetic-laser-tilt-controller-filterrasssuUflexbe_behavior_enginer€}r(h}r‚h}rƒh]r„Uros/kinetic/flexber…assh ˆh }r†h}r‡h}rˆh]r‰U"ros-kinetic-flexbe-behavior-enginerŠasssuUur5_e_moveit_configr‹}rŒ(h}rh}rŽh]rUros/kinetic/universal_robotrassh ˆh }r‘h}r’h}r“h]r”Uros-kinetic-ur5-e-moveit-configr•asssuUigvc_self_drive_gazebor–}r—(h}r˜h}r™h]ršUros/kinetic/igvc_self_drive_simr›assh ˆh }rœh}rh}ržh]rŸU"ros-kinetic-igvc-self-drive-gazebor asssuUrb1_base_controlr¡}r¢(h}r£h}r¤h]r¥Uros/kinetic/rb1_base_simr¦assh ˆh }r§h}r¨h}r©h]rªUros-kinetic-rb1-base-controlr«asssuUrqt_launchtreer¬}r­(h}r®h}r¯h]r°Uros/kinetic/rqt_launchtreer±assh ˆh }r²h}r³h}r´h]rµUros-kinetic-rqt-launchtreer¶asssuU catkin_pipr·}r¸(h}r¹h}rºh]r»Uros/kinetic/catkin_pipr¼assh ˆh }r½h}r¾h}r¿h]rÀUros-kinetic-catkin-piprÁasssuUpeople_velocity_trackerrÂ}rÃ(h}rÄh}rÅh]rÆUros/kinetic/peoplerÇassh ˆh }rÈh}rÉh}rÊh]rËU#ros-kinetic-people-velocity-trackerrÌasssuU roscompilerÍ}rÎ(h}rÏh}rÐh]rÑUros/kinetic/roscompilerÒassh ˆh }rÓh}rÔh}rÕh]rÖUros-kinetic-roscompiler×asssuUyocs_navi_toolkitrØ}rÙ(h}rÚh}rÛh]rÜUros/kinetic/yujin_ocsrÝassh ˆh }rÞh}rßh}ràh]ráUros-kinetic-yocs-navi-toolkitrâasssuUimage_geometryrã}rä(h}råh}ræh]rçUros/kinetic/vision_opencvrèassh ˆh }réh}rêh}rëh]rìUros-kinetic-image-geometryríasssuUnmea_gps_pluginrî}rï(h}rðh}rñh]ròUros/kinetic/nmea_gps_pluginróassh ˆh }rôh}rõh}röh]r÷Uros-kinetic-nmea-gps-pluginrøasssuU fetch_rosrù}rú(h}rûh}rüh]rýUros/kinetic/fetch_rosrþassh ˆh }rÿh}rh}rh]rUros-kinetic-fetch-rosrasssuUvisualization_tutorialsr}r(h}rh}rh]rU#ros/kinetic/visualization_tutorialsr assh ˆh }r h}r h}r h]r U#ros-kinetic-visualization-tutorialsrasssuUuuv_sensor_ros_plugins_msgsr}r(h}rh}rh]rUros/kinetic/uuv_simulatorrassh ˆh }rh}rh}rh]rU'ros-kinetic-uuv-sensor-ros-plugins-msgsrasssuU gmplot_rosr}r(h}rh}rh]rUros/kinetic/gmplot_rosrassh ˆh }r h}r!h}r"h]r#Uros-kinetic-gmplot-rosr$asssuUturtlebot_descriptionr%}r&(h}r'h}r(h]r)Uros/kinetic/turtlebotr*assh ˆh }r+h}r,h}r-h]r.U!ros-kinetic-turtlebot-descriptionr/asssuUtest_diagnostic_aggregatorr0}r1(h}r2h}r3h]r4Uros/kinetic/diagnosticsr5assh ˆh }r6h}r7h}r8h]r9U&ros-kinetic-test-diagnostic-aggregatorr:asssuU rospatliter;}r<(h}r=h}r>h]r?Uros/kinetic/jsk_3rdpartyr@assh ˆh }rAh}rBh}rCh]rDUros-kinetic-rospatliterEasssuU gcloud_speechrF}rG(h}rHh}rIh]rJUros/kinetic/gcloud_speechrKassh ˆh }rLh}rMh}rNh]rOUros-kinetic-gcloud-speechrPasssuUqb_device_utilsrQ}rR(h}rSh}rTh]rUUros/kinetic/qb_devicerVassh ˆh }rWh}rXh}rYh]rZUros-kinetic-qb-device-utilsr[asssuUrealsense2_descriptionr\}r](h}r^h}r_h]r`Uros/kinetic/realsense2_cameraraassh ˆh }rbh}rch}rdh]reU"ros-kinetic-realsense2-descriptionrfasssuU pr2_gazeborg}rh(h}rih}rjh]rkUros/kinetic/pr2_simulatorrlassh ˆh }rmh}rnh}roh]rpUros-kinetic-pr2-gazeborqasssuUmarti_nav_msgsrr}rs(h}rth}ruh]rvUros/kinetic/marti_messagesrwassh ˆh }rxh}ryh}rzh]r{Uros-kinetic-marti-nav-msgsr|asssuUtf2_sensor_msgsr}}r~(h}rh}r€h]rUros/kinetic/geometry2r‚assh ˆh }rƒh}r„h}r…h]r†Uros-kinetic-tf2-sensor-msgsr‡asssuU libqt_svg_devrˆ}r‰(h}rŠh}r‹h]rŒUros/kinetic/qt_metapackagesrassh ˆh }rŽh}rh}rh]r‘Uros-kinetic-libqt-svg-devr’asssuU rtt_nav_msgsr“}r”(h}r•h}r–h]r—Uros/kinetic/rtt_ros_integrationr˜assh ˆh }r™h}ršh}r›h]rœUros-kinetic-rtt-nav-msgsrasssuUmanipulator_h_managerrž}rŸ(h}r h}r¡h]r¢Uros/kinetic/manipulator_hr£assh ˆh }r¤h}r¥h}r¦h]r§U!ros-kinetic-manipulator-h-managerr¨asssuU cht10_noder©}rª(h}r«h}r¬h]r­Uros/kinetic/cht10_noder®assh ˆh }r¯h}r°h}r±h]r²Uros-kinetic-cht10-noder³asssuU eca_a9_gazebor´}rµ(h}r¶h}r·h]r¸Uros/kinetic/eca_a9r¹assh ˆh }rºh}r»h}r¼h]r½Uros-kinetic-eca-a9-gazebor¾asssuUjsk_tilt_laserr¿}rÀ(h}rÁh}rÂh]rÃUros/kinetic/jsk_commonrÄassh ˆh }rÅh}rÆh}rÇh]rÈUros-kinetic-jsk-tilt-laserrÉasssuU dsr_launcherrÊ}rË(h}rÌh}rÍh]rÎUros/kinetic/doosan_robotrÏassh ˆh }rÐh}rÑh}rÒh]rÓUros-kinetic-dsr-launcherrÔasssuUrqt_py_consolerÕ}rÖ(h}r×h}rØh]rÙUros/kinetic/rqt_py_consolerÚassh ˆh }rÛh}rÜh}rÝh]rÞUros-kinetic-rqt-py-consolerßasssuUpr2eusrà}rá(h}râh}rãh]räUros/kinetic/jsk_pr2eusråassh ˆh }ræh}rçh}rèh]réUros-kinetic-pr2eusrêasssuUhector_imu_toolsrë}rì(h}ríh}rîh]rïUros/kinetic/hector_slamrðassh ˆh }rñh}ròh}róh]rôUros-kinetic-hector-imu-toolsrõasssuUnavigation_tutorialsrö}r÷(h}røh}rùh]rúU ros/kinetic/navigation_tutorialsrûassh ˆh }rüh}rýh}rþh]rÿU ros-kinetic-navigation-tutorialsrasssuUturtlebot_rappsr}r(h}rh}rh]rUros/kinetic/turtlebot_appsrassh ˆh }rh}rh}r h]r Uros-kinetic-turtlebot-rappsr asssuUcob_bringup_simr }r (h}rh}rh]rUros/kinetic/cob_simulationrassh ˆh }rh}rh}rh]rUros-kinetic-cob-bringup-simrasssuU open_kartor}r(h}rh}rh]rUros/kinetic/open_kartorassh ˆh }rh}rh}rh]r Uros-kinetic-open-kartor!asssuUraspigibbon_msgsr"}r#(h}r$h}r%h]r&Uros/kinetic/raspigibbon_rosr'assh ˆh }r(h}r)h}r*h]r+Uros-kinetic-raspigibbon-msgsr,asssuUvrpnr-}r.(h}r/h}r0h]r1Uros/kinetic/vrpnr2assh ˆh }r3h}r4h}r5h]r6Uros-kinetic-vrpnr7asssuUpr2_navigation_slamr8}r9(h}r:h}r;h]r<Uros/kinetic/pr2_navigationr=assh ˆh }r>h}r?h}r@h]rAUros-kinetic-pr2-navigation-slamrBasssuU magni_bringuprC}rD(h}rEh}rFh]rGUros/kinetic/magni_robotrHassh ˆh }rIh}rJh}rKh]rLUros-kinetic-magni-bringuprMasssuUjsk_recognition_msgsrN}rO(h}rPh}rQh]rRUros/kinetic/jsk_recognitionrSassh ˆh }rTh}rUh}rVh]rWU ros-kinetic-jsk-recognition-msgsrXasssuUkhi_rs007l_moveit_configrY}rZ(h}r[h}r\h]r]Uros/kinetic/khi_robotr^assh ˆh }r_h}r`h}rah]rbU$ros-kinetic-khi-rs007l-moveit-configrcasssuUrbcar_sim_bringuprd}re(h}rfh}rgh]rhUros/kinetic/rbcar_simriassh ˆh }rjh}rkh}rlh]rmUros-kinetic-rbcar-sim-bringuprnasssuUgenlispro}rp(h}rqh}rrh]rsUros/kinetic/genlisprtassh ˆh }ruh}rvh}rwh]rxUros-kinetic-genlispryasssuUmrpt_navigationrz}r{(h}r|h}r}h]r~Uros/kinetic/mrpt_navigationrassh ˆh }r€h}rh}r‚h]rƒUros-kinetic-mrpt-navigationr„asssuUosg_interactive_markersr…}r†(h}r‡h}rˆh]r‰Uros/kinetic/visualization_osgrŠassh ˆh }r‹h}rŒh}rh]rŽU#ros-kinetic-osg-interactive-markersrasssuU mqtt_bridger}r‘(h}r’h}r“h]r”Uros/kinetic/mqtt_bridger•assh ˆh }r–h}r—h}r˜h]r™Uros-kinetic-mqtt-bridgeršasssuU fiducial_msgsr›}rœ(h}rh}ržh]rŸUros/kinetic/fiducialsr assh ˆh }r¡h}r¢h}r£h]r¤Uros-kinetic-fiducial-msgsr¥asssuU ouster_driverr¦}r§(h}r¨h}r©h]rªUros/kinetic/ousterr«assh ˆh }r¬h}r­h}r®h]r¯Uros-kinetic-ouster-driverr°asssuU mongodb_logr±}r²(h}r³h}r´h]rµUros/kinetic/mongodb_storer¶assh ˆh }r·h}r¸h}r¹h]rºUros-kinetic-mongodb-logr»asssuU!moveit_controller_manager_exampler¼}r½(h}r¾h}r¿h]rÀUros/kinetic/moveitrÁassh ˆh }rÂh}rÃh}rÄh]rÅU-ros-kinetic-moveit-controller-manager-examplerÆasssuUdepthcloud_encoderrÇ}rÈ(h}rÉh}rÊh]rËUros/kinetic/depthcloud_encoderrÌassh ˆh }rÍh}rÎh}rÏh]rÐUros-kinetic-depthcloud-encoderrÑasssuU laser_procrÒ}rÓ(h}rÔh}rÕh]rÖUros/kinetic/laser_procr×assh ˆh }rØh}rÙh}rÚh]rÛUros-kinetic-laser-procrÜasssuUrqt_toprÝ}rÞ(h}rßh}ràh]ráUros/kinetic/rqt_toprâassh ˆh }rãh}räh}råh]ræUros-kinetic-rqt-toprçasssuUexecutive_smachrè}ré(h}rêh}rëh]rìUros/kinetic/executive_smachríassh ˆh }rîh}rïh}rðh]rñUros-kinetic-executive-smachròasssuUgenmsgró}rô(h}rõh}röh]r÷Uros/kinetic/genmsgrøassh ˆh }rùh}rúh}rûh]rüUros-kinetic-genmsgrýasssuU turtle_tf2rþ}rÿ(h}rh}rh]rUros/kinetic/geometry_tutorialsrassh ˆh }rh}rh}rh]rUros-kinetic-turtle-tf2rasssuUslicr }r (h}r h}r h]r Uros/kinetic/jsk_3rdpartyrassh ˆh }rh}rh}rh]rUros-kinetic-slicrasssuUvelodyner}r(h}rh}rh]rUros/kinetic/velodynerassh ˆh }rh}rh}rh]rUros-kinetic-velodynerasssuUigvc_self_drive_descriptionr}r (h}r!h}r"h]r#Uros/kinetic/igvc_self_drive_simr$assh ˆh }r%h}r&h}r'h]r(U'ros-kinetic-igvc-self-drive-descriptionr)asssuUcob_base_controller_utilsr*}r+(h}r,h}r-h]r.Uros/kinetic/cob_controlr/assh ˆh }r0h}r1h}r2h]r3U%ros-kinetic-cob-base-controller-utilsr4asssuU oculusprimer5}r6(h}r7h}r8h]r9Uros/kinetic/oculusprimer:assh ˆh }r;h}r<h}r=h]r>Uros-kinetic-oculusprimer?asssuU rosmasterr@}rA(h}rBh}rCh]rDUros/kinetic/ros_commrEassh ˆh }rFh}rGh}rHh]rIUros-kinetic-rosmasterrJasssuUmovie_publisherrK}rL(h}rMh}rNh]rOUros/kinetic/movie_publisherrPassh ˆh }rQh}rRh}rSh]rTUros-kinetic-movie-publisherrUasssuU kalman_filterrV}rW(h}rXh}rYh]rZUros/kinetic/wu_ros_toolsr[assh ˆh }r\h}r]h}r^h]r_Uros-kinetic-kalman-filterr`asssuUhomer_map_managerra}rb(h}rch}rdh]reUros/kinetic/homer_map_managerrfassh ˆh }rgh}rhh}rih]rjUros-kinetic-homer-map-managerrkasssuUacadorl}rm(h}rnh}roh]rpUros/kinetic/acadorqassh ˆh }rrh}rsh}rth]ruUros-kinetic-acadorvasssuU openface_rosrw}rx(h}ryh}rzh]r{Uros/kinetic/image_recognitionr|assh ˆh }r}h}r~h}rh]r€Uros-kinetic-openface-rosrasssuUmarti_common_msgsr‚}rƒ(h}r„h}r…h]r†Uros/kinetic/marti_messagesr‡assh ˆh }rˆh}r‰h}rŠh]r‹Uros-kinetic-marti-common-msgsrŒasssuUpeopler}rŽ(h}rh}rh]r‘Uros/kinetic/peopler’assh ˆh }r“h}r”h}r•h]r–Uros-kinetic-peopler—asssuUcob_supported_robotsr˜}r™(h}ršh}r›h]rœU ros/kinetic/cob_supported_robotsrassh ˆh }ržh}rŸh}r h]r¡U ros-kinetic-cob-supported-robotsr¢asssuUtransmission_interfacer£}r¤(h}r¥h}r¦h]r§Uros/kinetic/ros_controlr¨assh ˆh }r©h}rªh}r«h]r¬U"ros-kinetic-transmission-interfacer­asssuUdsr_descriptionr®}r¯(h}r°h}r±h]r²Uros/kinetic/doosan_robotr³assh ˆh }r´h}rµh}r¶h]r·Uros-kinetic-dsr-descriptionr¸asssuUsummit_xl_controlr¹}rº(h}r»h}r¼h]r½Uros/kinetic/summit_xl_simr¾assh ˆh }r¿h}rÀh}rÁh]rÂUros-kinetic-summit-xl-controlrÃasssuUtimed_roslaunchrÄ}rÅ(h}rÆh}rÇh]rÈUros/kinetic/timed_roslaunchrÉassh ˆh }rÊh}rËh}rÌh]rÍUros-kinetic-timed-roslaunchrÎasssuU rgbd_launchrÏ}rÐ(h}rÑh}rÒh]rÓUros/kinetic/rgbd_launchrÔassh ˆh }rÕh}rÖh}r×h]rØUros-kinetic-rgbd-launchrÙasssuUpilz_extensionsrÚ}rÛ(h}rÜh}rÝh]rÞU"ros/kinetic/pilz_industrial_motionrßassh ˆh }ràh}ráh}râh]rãUros-kinetic-pilz-extensionsräasssuUrosjava_test_msgsrå}ræ(h}rçh}rèh]réUros/kinetic/rosjava_test_msgsrêassh ˆh }rëh}rìh}ríh]rîUros-kinetic-rosjava-test-msgsrïasssuU op3_gazeborð}rñ(h}ròh}róh]rôUros/kinetic/robotis_op3_commonrõassh ˆh }röh}r÷h}røh]rùUros-kinetic-op3-gazeborúasssuUcontact_states_observerrû}rü(h}rýh}rþh]rÿUros/kinetic/jsk_controlrassh ˆh }rh}rh}rh]rU#ros-kinetic-contact-states-observerrasssuUavt_vimba_camerar}r(h}rh}r h]r Uros/kinetic/avt_vimba_camerar assh ˆh }r h}r h}rh]rUros-kinetic-avt-vimba-camerarasssuUhokuyo3dr}r(h}rh}rh]rUros/kinetic/hokuyo3drassh ˆh }rh}rh}rh]rUros-kinetic-hokuyo3drasssuU gx_sound_msgsr}r(h}rh}rh]r Uros/kinetic/gx_soundr!assh ˆh }r"h}r#h}r$h]r%Uros-kinetic-gx-sound-msgsr&asssuUschunk_svh_driverr'}r((h}r)h}r*h]r+Uros/kinetic/schunk_svh_driverr,assh ˆh }r-h}r.h}r/h]r0Uros-kinetic-schunk-svh-driverr1asssuUrocon_interactionsr2}r3(h}r4h}r5h]r6Uros/kinetic/rocon_toolsr7assh ˆh }r8h}r9h}r:h]r;Uros-kinetic-rocon-interactionsr<asssuUdensor=}r>(h}r?h}r@h]rAUros/kinetic/densorBassh ˆh }rCh}rDh}rEh]rFUros-kinetic-densorGasssuU graph_msgsrH}rI(h}rJh}rKh]rLUros/kinetic/graph_msgsrMassh ˆh }rNh}rOh}rPh]rQUros-kinetic-graph-msgsrRasssuUpr2_kinematicsrS}rT(h}rUh}rVh]rWUros/kinetic/pr2_kinematicsrXassh ˆh }rYh}rZh}r[h]r\Uros-kinetic-pr2-kinematicsr]asssuU rtt_std_msgsr^}r_(h}r`h}rah]rbUros/kinetic/rtt_ros_integrationrcassh ˆh }rdh}reh}rfh]rgUros-kinetic-rtt-std-msgsrhasssuUml_classifiersri}rj(h}rkh}rlh]rmUros/kinetic/ml_classifiersrnassh ˆh }roh}rph}rqh]rrUros-kinetic-ml-classifiersrsasssuU cob_bringuprt}ru(h}rvh}rwh]rxUros/kinetic/cob_robotsryassh ˆh }rzh}r{h}r|h]r}Uros-kinetic-cob-bringupr~asssuU pyros_configr}r€(h}rh}r‚h]rƒUros/kinetic/pyros_configr„assh ˆh }r…h}r†h}r‡h]rˆUros-kinetic-pyros-configr‰asssuUcob_substituterŠ}r‹(h}rŒh}rh]rŽUros/kinetic/cob_substituterassh ˆh }rh}r‘h}r’h]r“Uros-kinetic-cob-substituter”asssuU vs060_gazebor•}r–(h}r—h}r˜h]r™Uros/kinetic/densoršassh ˆh }r›h}rœh}rh]ržUros-kinetic-vs060-gazeborŸasssuUmir_dwb_criticsr }r¡(h}r¢h}r£h]r¤Uros/kinetic/mir_robotr¥assh ˆh }r¦h}r§h}r¨h]r©Uros-kinetic-mir-dwb-criticsrªasssuUqwt_dependencyr«}r¬(h}r­h}r®h]r¯Uros/kinetic/qwt_dependencyr°assh ˆh }r±h}r²h}r³h]r´Uros-kinetic-qwt-dependencyrµasssuU toposens_msgsr¶}r·(h}r¸h}r¹h]rºUros/kinetic/toposensr»assh ˆh }r¼h}r½h}r¾h]r¿Uros-kinetic-toposens-msgsrÀasssuU summit_xl_simrÁ}rÂ(h}rÃh}rÄh]rÅUros/kinetic/summit_xl_simrÆassh ˆh }rÇh}rÈh}rÉh]rÊUros-kinetic-summit-xl-simrËasssuUethercat_hardwarerÌ}rÍ(h}rÎh}rÏh]rÐU ros/kinetic/pr2_ethercat_driversrÑassh ˆh }rÒh}rÓh}rÔh]rÕUros-kinetic-ethercat-hardwarerÖasssuUrqt_ez_publisherr×}rØ(h}rÙh}rÚh]rÛUros/kinetic/rqt_ez_publisherrÜassh ˆh }rÝh}rÞh}rßh]ràUros-kinetic-rqt-ez-publisherráasssuUloki_base_noderâ}rã(h}räh}råh]ræUros/kinetic/loki_base_noderçassh ˆh }rèh}réh}rêh]rëUros-kinetic-loki-base-noderìasssuU rqt_multiplotrí}rî(h}rïh}rðh]rñU ros/kinetic/rqt_multiplot_pluginròassh ˆh }róh}rôh}rõh]röUros-kinetic-rqt-multiplotr÷asssuU ecl_time_literø}rù(h}rúh}rûh]rüUros/kinetic/ecl_literýassh ˆh }rþh}rÿh}rh]rUros-kinetic-ecl-time-literasssuUcob_grasp_generationr}r(h}rh}rh]rUros/kinetic/cob_manipulationrassh ˆh }r h}r h}r h]r U ros-kinetic-cob-grasp-generationr asssuUtf_toolsr}r(h}rh}rh]rUros/kinetic/srv_toolsrassh ˆh }rh}rh}rh]rUros-kinetic-tf-toolsrasssuU schunk_simulated_tactile_sensorsr}r(h}rh}rh]rU#ros/kinetic/schunk_modular_roboticsrassh ˆh }rh}r h}r!h]r"U,ros-kinetic-schunk-simulated-tactile-sensorsr#asssuU jsk_hark_msgsr$}r%(h}r&h}r'h]r(Uros/kinetic/jsk_common_msgsr)assh ˆh }r*h}r+h}r,h]r-Uros-kinetic-jsk-hark-msgsr.asssuUxiaoqiang_navigation_exampler/}r0(h}r1h}r2h]r3Uros/kinetic/xiaoqiangr4assh ˆh }r5h}r6h}r7h]r8U(ros-kinetic-xiaoqiang-navigation-exampler9asssuU moveit_corer:}r;(h}r<h}r=h]r>Uros/kinetic/moveitr?assh ˆh }r@h}rAh}rBh]rCUros-kinetic-moveit-corerDasssuU gps_commonrE}rF(h}rGh}rHh]rIUros/kinetic/gps_umdrJassh ˆh }rKh}rLh}rMh]rNUros-kinetic-gps-commonrOasssuUjsk_datarP}rQ(h}rRh}rSh]rTUros/kinetic/jsk_commonrUassh ˆh }rVh}rWh}rXh]rYUros-kinetic-jsk-datarZasssuUdockerosr[}r\(h}r]h}r^h]r_Uros/kinetic/dockerosr`assh ˆh }rah}rbh}rch]rdUros-kinetic-dockerosreasssuUautoware_system_msgsrf}rg(h}rhh}rih]rjUros/kinetic/autoware_msgsrkassh ˆh }rlh}rmh}rnh]roU ros-kinetic-autoware-system-msgsrpasssuUturtlebot_calibrationrq}rr(h}rsh}rth]ruUros/kinetic/turtlebot_appsrvassh ˆh }rwh}rxh}ryh]rzU!ros-kinetic-turtlebot-calibrationr{asssuUxiaoqiang_controllerr|}r}(h}r~h}rh]r€Uros/kinetic/xiaoqiangrassh ˆh }r‚h}rƒh}r„h]r…U ros-kinetic-xiaoqiang-controllerr†asssuUmvsimr‡}rˆ(h}r‰h}rŠh]r‹Uros/kinetic/mvsimrŒassh ˆh }rh}rŽh}rh]rUros-kinetic-mvsimr‘asssuUcob_phidget_em_stater’}r“(h}r”h}r•h]r–Uros/kinetic/cob_driverr—assh ˆh }r˜h}r™h}ršh]r›U ros-kinetic-cob-phidget-em-staterœasssuUflexbe_onboardr}rž(h}rŸh}r h]r¡Uros/kinetic/flexber¢assh ˆh }r£h}r¤h}r¥h]r¦Uros-kinetic-flexbe-onboardr§asssuUcalibration_launchr¨}r©(h}rªh}r«h]r¬Uros/kinetic/calibrationr­assh ˆh }r®h}r¯h}r°h]r±Uros-kinetic-calibration-launchr²asssuUvisp_camera_calibrationr³}r´(h}rµh}r¶h]r·Uros/kinetic/vision_vispr¸assh ˆh }r¹h}rºh}r»h]r¼U#ros-kinetic-visp-camera-calibrationr½asssuU mcl_3dl_msgsr¾}r¿(h}rÀh}rÁh]rÂUros/kinetic/mcl_3dl_msgsrÃassh ˆh }rÄh}rÅh}rÆh]rÇUros-kinetic-mcl-3dl-msgsrÈasssuUdenso_robot_core_testrÉ}rÊ(h}rËh}rÌh]rÍUros/kinetic/denso_robot_rosrÎassh ˆh }rÏh}rÐh}rÑh]rÒU!ros-kinetic-denso-robot-core-testrÓasssuUpcl_msgsrÔ}rÕ(h}rÖh}r×h]rØUros/kinetic/pcl_msgsrÙassh ˆh }rÚh}rÛh}rÜh]rÝUros-kinetic-pcl-msgsrÞasssuU nerian_sp1rß}rà(h}ráh}râh]rãUros/kinetic/nerian_sp1räassh ˆh }råh}ræh}rçh]rèUros-kinetic-nerian-sp1réasssuU fetch_gazeborê}rë(h}rìh}ríh]rîUros/kinetic/fetch_gazeborïassh ˆh }rðh}rñh}ròh]róUros-kinetic-fetch-gazeborôasssuUnav_grid_iteratorsrõ}rö(h}r÷h}røh]rùUros/kinetic/robot_navigationrúassh ˆh }rûh}rüh}rýh]rþUros-kinetic-nav-grid-iteratorsrÿasssuUgcloud_speech_utilsr}r(h}rh}rh]rUros/kinetic/gcloud_speechrassh ˆh }rh}rh}rh]r Uros-kinetic-gcloud-speech-utilsr asssuUpepper_sensors_pyr }r (h}r h}rh]rUros/kinetic/pepper_robotrassh ˆh }rh}rh}rh]rUros-kinetic-pepper-sensors-pyrasssuUcob_gazebo_toolsr}r(h}rh}rh]rUros/kinetic/cob_simulationrassh ˆh }rh}rh}rh]rUros-kinetic-cob-gazebo-toolsr asssuUipcamera_driverr!}r"(h}r#h}r$h]r%Uros/kinetic/ipcamera_driverr&assh ˆh }r'h}r(h}r)h]r*Uros-kinetic-ipcamera-driverr+asssuU ecl_toolsr,}r-(h}r.h}r/h]r0Uros/kinetic/ecl_toolsr1assh ˆh }r2h}r3h}r4h]r5Uros-kinetic-ecl-toolsr6asssuUwge100_camera_firmwarer7}r8(h}r9h}r:h]r;Uros/kinetic/wge100_driverr<assh ˆh }r=h}r>h}r?h]r@U"ros-kinetic-wge100-camera-firmwarerAasssuUdataspeed_can_usbrB}rC(h}rDh}rEh]rFUros/kinetic/dataspeed_canrGassh ˆh }rHh}rIh}rJh]rKUros-kinetic-dataspeed-can-usbrLasssuU xpp_quadrotorrM}rN(h}rOh}rPh]rQUros/kinetic/xpprRassh ˆh }rSh}rTh}rUh]rVUros-kinetic-xpp-quadrotorrWasssuUrqt_plotrX}rY(h}rZh}r[h]r\Uros/kinetic/rqt_plotr]assh ˆh }r^h}r_h}r`h]raUros-kinetic-rqt-plotrbasssuUthormang3_manipulation_demorc}rd(h}reh}rfh]rgUros/kinetic/thormang3_ppcrhassh ˆh }rih}rjh}rkh]rlU'ros-kinetic-thormang3-manipulation-demormasssuUwarthog_gazeborn}ro(h}rph}rqh]rrUros/kinetic/warthog_simulatorrsassh ˆh }rth}ruh}rvh]rwUros-kinetic-warthog-gazeborxasssuUrviz_imu_pluginry}rz(h}r{h}r|h]r}Uros/kinetic/imu_toolsr~assh ˆh }rh}r€h}rh]r‚Uros-kinetic-rviz-imu-pluginrƒasssuU jaguar_msgsr„}r…(h}r†h}r‡h]rˆUros/kinetic/jaguarr‰assh ˆh }rŠh}r‹h}rŒh]rUros-kinetic-jaguar-msgsrŽasssuUusb_cam_hardware_interfacer}r(h}r‘h}r’h]r“Uros/kinetic/usb_cam_hardwarer”assh ˆh }r•h}r–h}r—h]r˜U&ros-kinetic-usb-cam-hardware-interfacer™asssuU coverage_pathrš}r›(h}rœh}rh]ržUros/kinetic/swarm_functionsrŸassh ˆh }r h}r¡h}r¢h]r£Uros-kinetic-coverage-pathr¤asssuU rqt_wrapperr¥}r¦(h}r§h}r¨h]r©Uros/kinetic/rqt_wrapperrªassh ˆh }r«h}r¬h}r­h]r®Uros-kinetic-rqt-wrapperr¯asssuUpr2_navigation_configr°}r±(h}r²h}r³h]r´Uros/kinetic/pr2_navigationrµassh ˆh }r¶h}r·h}r¸h]r¹U!ros-kinetic-pr2-navigation-configrºasssuUvs060r»}r¼(h}r½h}r¾h]r¿Uros/kinetic/densorÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-kinetic-vs060rÅasssuUindustrial_robot_simulatorrÆ}rÇ(h}rÈh}rÉh]rÊUros/kinetic/industrial_corerËassh ˆh }rÌh}rÍh}rÎh]rÏU&ros-kinetic-industrial-robot-simulatorrÐasssuU rqt_shellrÑ}rÒ(h}rÓh}rÔh]rÕUros/kinetic/rqt_shellrÖassh ˆh }r×h}rØh}rÙh]rÚUros-kinetic-rqt-shellrÛasssuU p2os_driverrÜ}rÝ(h}rÞh}rßh]ràUros/kinetic/p2osráassh ˆh }râh}rãh}räh]råUros-kinetic-p2os-driverræasssuUpr2_teleop_generalrç}rè(h}réh}rêh]rëUros/kinetic/pr2_appsrìassh ˆh }ríh}rîh}rïh]rðUros-kinetic-pr2-teleop-generalrñasssuU#turtlebot3_automatic_parking_visionrò}ró(h}rôh}rõh]röU#ros/kinetic/turtlebot3_applicationsr÷assh ˆh }røh}rùh}rúh]rûU/ros-kinetic-turtlebot3-automatic-parking-visionrüasssuU image_view2rý}rþ(h}rÿh}rh]rUros/kinetic/jsk_commonrassh ˆh }rh}rh}rh]rUros-kinetic-image-view2rasssuUkartech_linear_actuator_msgsr}r (h}r h}r h]r Uros/kinetic/astuff_sensor_msgsr assh ˆh }rh}rh}rh]rU(ros-kinetic-kartech-linear-actuator-msgsrasssuUur_e_descriptionr}r(h}rh}rh]rUros/kinetic/universal_robotrassh ˆh }rh}rh}rh]rUros-kinetic-ur-e-descriptionrasssuUmoveit_experimentalr}r(h}r h}r!h]r"Uros/kinetic/moveitr#assh ˆh }r$h}r%h}r&h]r'Uros-kinetic-moveit-experimentalr(asssuUjog_controllerr)}r*(h}r+h}r,h]r-Uros/kinetic/jog_controlr.assh ˆh }r/h}r0h}r1h]r2Uros-kinetic-jog-controllerr3asssuUvisualization_osgr4}r5(h}r6h}r7h]r8Uros/kinetic/visualization_osgr9assh ˆh }r:h}r;h}r<h]r=Uros-kinetic-visualization-osgr>asssuU parameter_par?}r@(h}rAh}rBh]rCUros/kinetic/parameter_parDassh ˆh }rEh}rFh}rGh]rHUros-kinetic-parameter-parIasssuUforce_torque_sensor_controllerrJ}rK(h}rLh}rMh]rNUros/kinetic/ros_controllersrOassh ˆh }rPh}rQh}rRh]rSU*ros-kinetic-force-torque-sensor-controllerrTasssuUoctomaprU}rV(h}rWh}rXh]rYUros/kinetic/octomaprZassh ˆh }r[h}r\h}r]h]r^Uros-kinetic-octomapr_asssuUcostmap_cspacer`}ra(h}rbh}rch]rdUros/kinetic/neonavigationreassh ˆh }rfh}rgh}rhh]riUros-kinetic-costmap-cspacerjasssuU libphidgetsrk}rl(h}rmh}rnh]roUros/kinetic/cob_externrpassh ˆh }rqh}rrh}rsh]rtUros-kinetic-libphidgetsruasssuUfranka_controlrv}rw(h}rxh}ryh]rzUros/kinetic/franka_rosr{assh ˆh }r|h}r}h}r~h]rUros-kinetic-franka-controlr€asssuUbondpyr}r‚(h}rƒh}r„h]r…Uros/kinetic/bond_corer†assh ˆh }r‡h}rˆh}r‰h]rŠUros-kinetic-bondpyr‹asssuUcob_relayboardrŒ}r(h}rŽh}rh]rUros/kinetic/cob_driverr‘assh ˆh }r’h}r“h}r”h]r•Uros-kinetic-cob-relayboardr–asssuU cnn_bridger—}r˜(h}r™h}ršh]r›Uros/kinetic/cnn_bridgerœassh ˆh }rh}ržh}rŸh]r Uros-kinetic-cnn-bridger¡asssuU rtt_rosnoder¢}r£(h}r¤h}r¥h]r¦Uros/kinetic/rtt_ros_integrationr§assh ˆh }r¨h}r©h}rªh]r«Uros-kinetic-rtt-rosnoder¬asssuU roch_rappsr­}r®(h}r¯h}r°h]r±Uros/kinetic/rochr²assh ˆh }r³h}r´h}rµh]r¶Uros-kinetic-roch-rappsr·asssuUrdl_msgsr¸}r¹(h}rºh}r»h]r¼Uros/kinetic/rdlr½assh ˆh }r¾h}r¿h}rÀh]rÁUros-kinetic-rdl-msgsrÂasssuUraspigibbon_controlrÃ}rÄ(h}rÅh}rÆh]rÇUros/kinetic/raspigibbon_simrÈassh ˆh }rÉh}rÊh}rËh]rÌUros-kinetic-raspigibbon-controlrÍasssuUautomotive_autonomy_msgsrÎ}rÏ(h}rÐh}rÑh]rÒU$ros/kinetic/automotive_autonomy_msgsrÓassh ˆh }rÔh}rÕh}rÖh]r×U$ros-kinetic-automotive-autonomy-msgsrØasssuUhls_lfcd_lds_driverrÙ}rÚ(h}rÛh}rÜh]rÝUros/kinetic/hls-lfcd-lds-driverrÞassh ˆh }rßh}ràh}ráh]râUros-kinetic-hls-lfcd-lds-driverrãasssuU create_noderä}rå(h}ræh}rçh]rèUros/kinetic/turtlebot_createréassh ˆh }rêh}rëh}rìh]ríUros-kinetic-create-noderîasssuU nav2d_remoterï}rð(h}rñh}ròh]róUros/kinetic/navigation_2drôassh ˆh }rõh}röh}r÷h]røUros-kinetic-nav2d-remoterùasssuU rocon_consolerú}rû(h}rüh}rýh]rþUros/kinetic/rocon_toolsrÿassh ˆh }rh}rh}rh]rUros-kinetic-rocon-consolerasssuUrobot_pose_ekfr}r(h}rh}rh]r Uros/kinetic/navigationr assh ˆh }r h}r h}r h]rUros-kinetic-robot-pose-ekfrasssuUros_wildr}r(h}rh}rh]rUros/kinetic/ros_wildrassh ˆh }rh}rh}rh]rUros-kinetic-ros-wildrasssuUhector_slam_launchr}r(h}rh}rh]rUros/kinetic/hector_slamr assh ˆh }r!h}r"h}r#h]r$Uros-kinetic-hector-slam-launchr%asssuU dbw_fca_msgsr&}r'(h}r(h}r)h]r*Uros/kinetic/dbw_fca_rosr+assh ˆh }r,h}r-h}r.h]r/Uros-kinetic-dbw-fca-msgsr0asssuU pr2_desktopr1}r2(h}r3h}r4h]r5Uros/kinetic/pr2_metapackagesr6assh ˆh }r7h}r8h}r9h]r:Uros-kinetic-pr2-desktopr;asssuUcob_android_msgsr<}r=(h}r>h}r?h]r@Uros/kinetic/cob_androidrAassh ˆh }rBh}rCh}rDh]rEUros-kinetic-cob-android-msgsrFasssuUsafe_teleop_baserG}rH(h}rIh}rJh]rKU(ros/kinetic/shared_autonomy_manipulationrLassh ˆh }rMh}rNh}rOh]rPUros-kinetic-safe-teleop-baserQasssuUsocketcan_bridgerR}rS(h}rTh}rUh]rVUros/kinetic/ros_canopenrWassh ˆh }rXh}rYh}rZh]r[Uros-kinetic-socketcan-bridger\asssuU diagnosticsr]}r^(h}r_h}r`h]raUros/kinetic/diagnosticsrbassh ˆh }rch}rdh}reh]rfUros-kinetic-diagnosticsrgasssuUpr2_common_action_msgsrh}ri(h}rjh}rkh]rlUros/kinetic/pr2_common_actionsrmassh ˆh }rnh}roh}rph]rqU"ros-kinetic-pr2-common-action-msgsrrasssuUkvhrs}rt(h}ruh}rvh]rwUros/kinetic/kvh_driversrxassh ˆh }ryh}rzh}r{h]r|Uros-kinetic-kvhr}asssuUecl_sigslots_liter~}r(h}r€h}rh]r‚Uros/kinetic/ecl_literƒassh ˆh }r„h}r…h}r†h]r‡Uros-kinetic-ecl-sigslots-literˆasssuUfetch_navigationr‰}rŠ(h}r‹h}rŒh]rUros/kinetic/fetch_rosrŽassh ˆh }rh}rh}r‘h]r’Uros-kinetic-fetch-navigationr“asssuUmbf_costmap_navr”}r•(h}r–h}r—h]r˜Uros/kinetic/move_base_flexr™assh ˆh }ršh}r›h}rœh]rUros-kinetic-mbf-costmap-navržasssuUwaypoint_generatorrŸ}r (h}r¡h}r¢h]r£Uros/kinetic/waypointr¤assh ˆh }r¥h}r¦h}r§h]r¨Uros-kinetic-waypoint-generatorr©asssuU husky_vizrª}r«(h}r¬h}r­h]r®Uros/kinetic/huskyr¯assh ˆh }r°h}r±h}r²h]r³Uros-kinetic-husky-vizr´asssuUrtt_trajectory_msgsrµ}r¶(h}r·h}r¸h]r¹Uros/kinetic/rtt_ros_integrationrºassh ˆh }r»h}r¼h}r½h]r¾Uros-kinetic-rtt-trajectory-msgsr¿asssuUstdr_resourcesrÀ}rÁ(h}rÂh}rÃh]rÄUros/kinetic/stdr_simulatorrÅassh ˆh }rÆh}rÇh}rÈh]rÉUros-kinetic-stdr-resourcesrÊasssuUecto_rosrË}rÌ(h}rÍh}rÎh]rÏUros/kinetic/ecto_rosrÐassh ˆh }rÑh}rÒh}rÓh]rÔUros-kinetic-ecto-rosrÕasssuUtuw_vehicle_msgsrÖ}r×(h}rØh}rÙh]rÚUros/kinetic/tuw_msgsrÛassh ˆh }rÜh}rÝh}rÞh]rßUros-kinetic-tuw-vehicle-msgsràasssuUthormang3_kinematics_dynamicsrá}râ(h}rãh}räh]råUros/kinetic/thormang3_mpcræassh ˆh }rçh}rèh}réh]rêU)ros-kinetic-thormang3-kinematics-dynamicsrëasssuUjackal_controlrì}rí(h}rîh}rïh]rðUros/kinetic/jackalrñassh ˆh }ròh}róh}rôh]rõUros-kinetic-jackal-controlröasssuUkhi_duaro_gazebor÷}rø(h}rùh}rúh]rûUros/kinetic/khi_robotrüassh ˆh }rýh}rþh}rÿh]rUros-kinetic-khi-duaro-gazeborasssuU ur_gazebor}r(h}rh}rh]rUros/kinetic/universal_robotrassh ˆh }rh}r h}r h]r Uros-kinetic-ur-gazebor asssuUvrpn_client_rosr }r(h}rh}rh]rUros/kinetic/vrpn_client_rosrassh ˆh }rh}rh}rh]rUros-kinetic-vrpn-client-rosrasssuUzeroconf_avahi_demosr}r(h}rh}rh]rU ros/kinetic/zeroconf_avahi_suiterassh ˆh }rh}rh}r h]r!U ros-kinetic-zeroconf-avahi-demosr"asssuUmultisense_bringupr#}r$(h}r%h}r&h]r'Uros/kinetic/multisense_rosr(assh ˆh }r)h}r*h}r+h]r,Uros-kinetic-multisense-bringupr-asssuU leuze_msgsr.}r/(h}r0h}r1h]r2Uros/kinetic/leuze_ros_driversr3assh ˆh }r4h}r5h}r6h]r7Uros-kinetic-leuze-msgsr8asssuUimage_recognition_msgsr9}r:(h}r;h}r<h]r=Uros/kinetic/image_recognitionr>assh ˆh }r?h}r@h}rAh]rBU"ros-kinetic-image-recognition-msgsrCasssuUgrizzly_simulatorrD}rE(h}rFh}rGh]rHUros/kinetic/grizzly_simulatorrIassh ˆh }rJh}rKh}rLh]rMUros-kinetic-grizzly-simulatorrNasssuUrsm_corerO}rP(h}rQh}rRh]rSUros/kinetic/robot_statemachinerTassh ˆh }rUh}rVh}rWh]rXUros-kinetic-rsm-corerYasssuU p2os_launchrZ}r[(h}r\h}r]h]r^Uros/kinetic/p2osr_assh ˆh }r`h}rah}rbh]rcUros-kinetic-p2os-launchrdasssuUrosgraphre}rf(h}rgh}rhh]riUros/kinetic/ros_commrjassh ˆh }rkh}rlh}rmh]rnUros-kinetic-rosgraphroasssuUasync_web_server_cpprp}rq(h}rrh}rsh]rtU ros/kinetic/async_web_server_cppruassh ˆh }rvh}rwh}rxh]ryU ros-kinetic-async-web-server-cpprzasssuUqt_gui_py_commonr{}r|(h}r}h}r~h]rUros/kinetic/qt_gui_corer€assh ˆh }rh}r‚h}rƒh]r„Uros-kinetic-qt-gui-py-commonr…asssuUopenni_descriptionr†}r‡(h}rˆh}r‰h]rŠUros/kinetic/openni_camerar‹assh ˆh }rŒh}rh}rŽh]rUros-kinetic-openni-descriptionrasssuUtoposensr‘}r’(h}r“h}r”h]r•Uros/kinetic/toposensr–assh ˆh }r—h}r˜h}r™h]ršUros-kinetic-toposensr›asssuUrosrœ}r(h}ržh}rŸh]r Uros/kinetic/rosr¡assh ˆh }r¢h}r£h}r¤h]r¥Uros-kinetic-rosr¦asssuUdwb_msgsr§}r¨(h}r©h}rªh]r«Uros/kinetic/robot_navigationr¬assh ˆh }r­h}r®h}r¯h]r°Uros-kinetic-dwb-msgsr±asssuUmodelica_bridger²}r³(h}r´h}rµh]r¶Uros/kinetic/modelica_bridger·assh ˆh }r¸h}r¹h}rºh]r»Uros-kinetic-modelica-bridger¼asssuU pose_cov_opsr½}r¾(h}r¿h}rÀh]rÁUros/kinetic/pose_cov_opsrÂassh ˆh }rÃh}rÄh}rÅh]rÆUros-kinetic-pose-cov-opsrÇasssuUaudibot_descriptionrÈ}rÉ(h}rÊh}rËh]rÌUros/kinetic/audibotrÍassh ˆh }rÎh}rÏh}rÐh]rÑUros-kinetic-audibot-descriptionrÒasssuUrocon_gateway_utilsrÓ}rÔ(h}rÕh}rÖh]r×Uros/kinetic/rocon_multimasterrØassh ˆh }rÙh}rÚh}rÛh]rÜUros-kinetic-rocon-gateway-utilsrÝasssuU teleop_toolsrÞ}rß(h}ràh}ráh]râUros/kinetic/teleop_toolsrãassh ˆh }räh}råh}ræh]rçUros-kinetic-teleop-toolsrèasssuUpr2_position_scriptsré}rê(h}rëh}rìh]ríUros/kinetic/pr2_appsrîassh ˆh }rïh}rðh}rñh]ròU ros-kinetic-pr2-position-scriptsróasssuU nmea_commsrô}rõ(h}röh}r÷h]røUros/kinetic/nmea_commsrùassh ˆh }rúh}rûh}rüh]rýUros-kinetic-nmea-commsrþasssuUecl_literÿ}r(h}rh}rh]rUros/kinetic/ecl_literassh ˆh }rh}rh}rh]rUros-kinetic-ecl-liter asssuUcob_twist_controllerr }r (h}r h}r h]rUros/kinetic/cob_controlrassh ˆh }rh}rh}rh]rU ros-kinetic-cob-twist-controllerrasssuUfanuc_m430ia_supportr}r(h}rh}rh]rUros/kinetic/fanucrassh ˆh }rh}rh}rh]rU ros-kinetic-fanuc-m430ia-supportrasssuU map_organizerr }r!(h}r"h}r#h]r$Uros/kinetic/neonavigationr%assh ˆh }r&h}r'h}r(h]r)Uros-kinetic-map-organizerr*asssuU&dynamixel_workbench_single_manager_guir+}r,(h}r-h}r.h]r/Uros/kinetic/dynamixel-workbenchr0assh ˆh }r1h}r2h}r3h]r4U2ros-kinetic-dynamixel-workbench-single-manager-guir5asssuUthormang3_gazebor6}r7(h}r8h}r9h]r:Uros/kinetic/thormang3_commonr;assh ˆh }r<h}r=h}r>h]r?Uros-kinetic-thormang3-gazebor@asssuUrosjavarA}rB(h}rCh}rDh]rEUros/kinetic/rosjavarFassh ˆh }rGh}rHh}rIh]rJUros-kinetic-rosjavarKasssuUcob_srvsrL}rM(h}rNh}rOh]rPUros/kinetic/cob_commonrQassh ˆh }rRh}rSh}rTh]rUUros-kinetic-cob-srvsrVasssuUpr2_gripper_sensor_actionrW}rX(h}rYh}rZh]r[Uros/kinetic/pr2_gripper_sensorr\assh ˆh }r]h}r^h}r_h]r`U%ros-kinetic-pr2-gripper-sensor-actionraasssuU cob_phidgetsrb}rc(h}rdh}reh]rfUros/kinetic/cob_driverrgassh ˆh }rhh}rih}rjh]rkUros-kinetic-cob-phidgetsrlasssuU iirob_filtersrm}rn(h}roh}rph]rqUros/kinetic/iirob_filtersrrassh ˆh }rsh}rth}ruh]rvUros-kinetic-iirob-filtersrwasssuUagvs_robot_controlrx}ry(h}rzh}r{h]r|Uros/kinetic/agvs_simr}assh ˆh }r~h}rh}r€h]rUros-kinetic-agvs-robot-controlr‚asssuU rosboost_cfgrƒ}r„(h}r…h}r†h]r‡Uros/kinetic/rosrˆassh ˆh }r‰h}rŠh}r‹h]rŒUros-kinetic-rosboost-cfgrasssuU bin_pose_msgsrŽ}r(h}rh}r‘h]r’Uros/kinetic/binpicking_utilsr“assh ˆh }r”h}r•h}r–h]r—Uros-kinetic-bin-pose-msgsr˜asssuUackermann_controllerr™}rš(h}r›h}rœh]rU ros/kinetic/ackermann_controllerržassh ˆh }rŸh}r h}r¡h]r¢U ros-kinetic-ackermann-controllerr£asssuU librealsense2r¤}r¥(h}r¦h}r§h]r¨Uros/kinetic/librealsense2r©assh ˆh }rªh}r«h}r¬h]r­Uros-kinetic-librealsense2r®asssuUrc_roi_manager_guir¯}r°(h}r±h}r²h]r³Uros/kinetic/rc_visardr´assh ˆh }rµh}r¶h}r·h]r¸Uros-kinetic-rc-roi-manager-guir¹asssuU arbotix_msgsrº}r»(h}r¼h}r½h]r¾Uros/kinetic/arbotixr¿assh ˆh }rÀh}rÁh}rÂh]rÃUros-kinetic-arbotix-msgsrÄasssuUhumanoid_nav_msgsrÅ}rÆ(h}rÇh}rÈh]rÉUros/kinetic/humanoid_msgsrÊassh ˆh }rËh}rÌh}rÍh]rÎUros-kinetic-humanoid-nav-msgsrÏasssuUdynamixel_workbench_operatorsrÐ}rÑ(h}rÒh}rÓh]rÔUros/kinetic/dynamixel-workbenchrÕassh ˆh }rÖh}r×h}rØh]rÙU)ros-kinetic-dynamixel-workbench-operatorsrÚasssuUturtlebot_appsrÛ}rÜ(h}rÝh}rÞh]rßUros/kinetic/turtlebot_appsràassh ˆh }ráh}râh}rãh]räUros-kinetic-turtlebot-appsråasssuUroomblock_bringupræ}rç(h}rèh}réh]rêUros/kinetic/roomblockrëassh ˆh }rìh}ríh}rîh]rïUros-kinetic-roomblock-bringuprðasssuUjsk_interactiverñ}rò(h}róh}rôh]rõUros/kinetic/jsk_visualizationröassh ˆh }r÷h}røh}rùh]rúUros-kinetic-jsk-interactiverûasssuU geometry2rü}rý(h}rþh}rÿh]rUros/kinetic/geometry2rassh ˆh }rh}rh}rh]rUros-kinetic-geometry2rasssuUthormang3_mpc_sensorsr}r(h}r h}r h]r U!ros/kinetic/thormang3_mpc_sensorsr assh ˆh }r h}rh}rh]rU!ros-kinetic-thormang3-mpc-sensorsrasssuU pyros_commonr}r(h}rh}rh]rUros/kinetic/pyros_commonrassh ˆh }rh}rh}rh]rUros-kinetic-pyros-commonrasssuUecl_exceptionsr}r(h}rh}r h]r!Uros/kinetic/ecl_corer"assh ˆh }r#h}r$h}r%h]r&Uros-kinetic-ecl-exceptionsr'asssuUurdf_geometry_parserr(}r)(h}r*h}r+h]r,U ros/kinetic/urdf_geometry_parserr-assh ˆh }r.h}r/h}r0h]r1U ros-kinetic-urdf-geometry-parserr2asssuUrqt_guir3}r4(h}r5h}r6h]r7Uros/kinetic/rqtr8assh ˆh }r9h}r:h}r;h]r<Uros-kinetic-rqt-guir=asssuU nao_meshesr>}r?(h}r@h}rAh]rBUros/kinetic/nao_meshesrCassh ˆh }rDh}rEh}rFh]rGUros-kinetic-nao-meshesrHasssuU wifi_ddwrtrI}rJ(h}rKh}rLh]rMUros/kinetic/wifi_ddwrtrNassh ˆh }rOh}rPh}rQh]rRUros-kinetic-wifi-ddwrtrSasssuUdiagnostic_common_diagnosticsrT}rU(h}rVh}rWh]rXUros/kinetic/diagnosticsrYassh ˆh }rZh}r[h}r\h]r]U)ros-kinetic-diagnostic-common-diagnosticsr^asssuUuuv_gazebo_pluginsr_}r`(h}rah}rbh]rcUros/kinetic/uuv_simulatorrdassh ˆh }reh}rfh}rgh]rhUros-kinetic-uuv-gazebo-pluginsriasssuUcartesian_msgsrj}rk(h}rlh}rmh]rnUros/kinetic/cartesian_msgsroassh ˆh }rph}rqh}rrh]rsUros-kinetic-cartesian-msgsrtasssuUjsk_topic_toolsru}rv(h}rwh}rxh]ryUros/kinetic/jsk_commonrzassh ˆh }r{h}r|h}r}h]r~Uros-kinetic-jsk-topic-toolsrasssuUcob_obstacle_distancer€}r(h}r‚h}rƒh]r„Uros/kinetic/cob_controlr…assh ˆh }r†h}r‡h}rˆh]r‰U!ros-kinetic-cob-obstacle-distancerŠasssuUjsk_teleop_joyr‹}rŒ(h}rh}rŽh]rUros/kinetic/jsk_controlrassh ˆh }r‘h}r’h}r“h]r”Uros-kinetic-jsk-teleop-joyr•asssuUcostmap_converterr–}r—(h}r˜h}r™h]ršUros/kinetic/costmap_converterr›assh ˆh }rœh}rh}ržh]rŸUros-kinetic-costmap-converterr asssuU ecl_threadsr¡}r¢(h}r£h}r¤h]r¥Uros/kinetic/ecl_corer¦assh ˆh }r§h}r¨h}r©h]rªUros-kinetic-ecl-threadsr«asssuUswri_dbw_interfacer¬}r­(h}r®h}r¯h]r°Uros/kinetic/marti_commonr±assh ˆh }r²h}r³h}r´h]rµUros-kinetic-swri-dbw-interfacer¶asssuU manipulator_hr·}r¸(h}r¹h}rºh]r»Uros/kinetic/manipulator_hr¼assh ˆh }r½h}r¾h}r¿h]rÀUros-kinetic-manipulator-hrÁasssuUecl_corerÂ}rÃ(h}rÄh}rÅh]rÆUros/kinetic/ecl_corerÇassh ˆh }rÈh}rÉh}rÊh]rËUros-kinetic-ecl-corerÌasssuUrospyrÍ}rÎ(h}rÏh}rÐh]rÑUros/kinetic/ros_commrÒassh ˆh }rÓh}rÔh}rÕh]rÖUros-kinetic-rospyr×asssuUrosbash_paramsrØ}rÙ(h}rÚh}rÛh]rÜUros/kinetic/rosbash_paramsrÝassh ˆh }rÞh}rßh}ràh]ráUros-kinetic-rosbash-paramsrâasssuUhector_marker_drawingrã}rä(h}råh}ræh]rçUros/kinetic/hector_slamrèassh ˆh }réh}rêh}rëh]rìU!ros-kinetic-hector-marker-drawingríasssuUroscpp_tutorialsrî}rï(h}rðh}rñh]ròUros/kinetic/ros_tutorialsróassh ˆh }rôh}rõh}röh]r÷Uros-kinetic-roscpp-tutorialsrøasssuU ecl_buildrù}rú(h}rûh}rüh]rýUros/kinetic/ecl_toolsrþassh ˆh }rÿh}rh}rh]rUros-kinetic-ecl-buildrasssuU driver_commonr}r(h}rh}rh]rUros/kinetic/driver_commonr assh ˆh }r h}r h}r h]r Uros-kinetic-driver-commonrasssuUrobotis_op3_demor}r(h}rh}rh]rUros/kinetic/robotis_op3_demorassh ˆh }rh}rh}rh]rUros-kinetic-robotis-op3-demorasssuUvisp_hand2eye_calibrationr}r(h}rh}rh]rUros/kinetic/vision_visprassh ˆh }r h}r!h}r"h]r#U%ros-kinetic-visp-hand2eye-calibrationr$asssuUsophus_ros_conversionsr%}r&(h}r'h}r(h]r)Uros/kinetic/sophus_ros_toolkitr*assh ˆh }r+h}r,h}r-h]r.U"ros-kinetic-sophus-ros-conversionsr/asssuUibeo_luxr0}r1(h}r2h}r3h]r4Uros/kinetic/ibeo_luxr5assh ˆh }r6h}r7h}r8h]r9Uros-kinetic-ibeo-luxr:asssuU libcreater;}r<(h}r=h}r>h]r?Uros/kinetic/libcreater@assh ˆh }rAh}rBh}rCh]rDUros-kinetic-libcreaterEasssuUrosmsgrF}rG(h}rHh}rIh]rJUros/kinetic/ros_commrKassh ˆh }rLh}rMh}rNh]rOUros-kinetic-rosmsgrPasssuU navigationrQ}rR(h}rSh}rTh]rUUros/kinetic/navigationrVassh ˆh }rWh}rXh}rYh]rZUros-kinetic-navigationr[asssuUabb_irb4400_supportr\}r](h}r^h}r_h]r`Uros/kinetic/abbraassh ˆh }rbh}rch}rdh]reUros-kinetic-abb-irb4400-supportrfasssuUleuze_ros_driversrg}rh(h}rih}rjh]rkUros/kinetic/leuze_ros_driversrlassh ˆh }rmh}rnh}roh]rpUros-kinetic-leuze-ros-driversrqasssuU audio_capturerr}rs(h}rth}ruh]rvUros/kinetic/audio_commonrwassh ˆh }rxh}ryh}rzh]r{Uros-kinetic-audio-capturer|asssuU task_compilerr}}r~(h}rh}r€h]rUros/kinetic/jsk_planningr‚assh ˆh }rƒh}r„h}r…h]r†Uros-kinetic-task-compilerr‡asssuUtrajectory_tracker_rviz_pluginsrˆ}r‰(h}rŠh}r‹h]rŒU&ros/kinetic/neonavigation_rviz_pluginsrassh ˆh }rŽh}rh}rh]r‘U+ros-kinetic-trajectory-tracker-rviz-pluginsr’asssuUfranka_example_controllersr“}r”(h}r•h}r–h]r—Uros/kinetic/franka_rosr˜assh ˆh }r™h}ršh}r›h]rœU&ros-kinetic-franka-example-controllersrasssuU create_driverrž}rŸ(h}r h}r¡h]r¢Uros/kinetic/turtlebot_creater£assh ˆh }r¤h}r¥h}r¦h]r§Uros-kinetic-create-driverr¨asssuUop3_descriptionr©}rª(h}r«h}r¬h]r­Uros/kinetic/robotis_op3_commonr®assh ˆh }r¯h}r°h}r±h]r²Uros-kinetic-op3-descriptionr³asssuUdiagnostic_updaterr´}rµ(h}r¶h}r·h]r¸Uros/kinetic/diagnosticsr¹assh ˆh }rºh}r»h}r¼h]r½Uros-kinetic-diagnostic-updaterr¾asssuUindustrial_corer¿}rÀ(h}rÁh}rÂh]rÃUros/kinetic/industrial_corerÄassh ˆh }rÅh}rÆh}rÇh]rÈUros-kinetic-industrial-corerÉasssuUvelocity_controllersrÊ}rË(h}rÌh}rÍh]rÎUros/kinetic/ros_controllersrÏassh ˆh }rÐh}rÑh}rÒh]rÓU ros-kinetic-velocity-controllersrÔasssuU husky_controlrÕ}rÖ(h}r×h}rØh]rÙUros/kinetic/huskyrÚassh ˆh }rÛh}rÜh}rÝh]rÞUros-kinetic-husky-controlrßasssuUrosmonrà}rá(h}râh}rãh]räUros/kinetic/rosmonråassh ˆh }ræh}rçh}rèh]réUros-kinetic-rosmonrêasssuU pr2_ethercatrë}rì(h}ríh}rîh]rïUros/kinetic/pr2_robotrðassh ˆh }rñh}ròh}róh]rôUros-kinetic-pr2-ethercatrõasssuUhector_trajectory_serverrö}r÷(h}røh}rùh]rúUros/kinetic/hector_slamrûassh ˆh }rüh}rýh}rþh]rÿU$ros-kinetic-hector-trajectory-serverr asssuUkorg_nanokontrolr }r (h}r h}r h]r Uros/kinetic/korg_nanokontrolr assh ˆh }r h}r h}r h]r Uros-kinetic-korg-nanokontrolr asssuU topic_toolsr }r (h}r h}r h]r Uros/kinetic/ros_commr assh ˆh }r h}r h}r h]r Uros-kinetic-topic-toolsr asssuUdbw_mkz_descriptionr }r (h}r h}r h]r Uros/kinetic/dbw_mkz_rosr assh ˆh }r h}r h}r h]r Uros-kinetic-dbw-mkz-descriptionr! asssuUmbf_simple_navr" }r# (h}r$ h}r% h]r& Uros/kinetic/move_base_flexr' assh ˆh }r( h}r) h}r* h]r+ Uros-kinetic-mbf-simple-navr, asssuUp2os_docr- }r. (h}r/ h}r0 h]r1 Uros/kinetic/p2osr2 assh ˆh }r3 h}r4 h}r5 h]r6 Uros-kinetic-p2os-docr7 asssuUroch_navigationr8 }r9 (h}r: h}r; h]r< Uros/kinetic/rochr= assh ˆh }r> h}r? h}r@ h]rA Uros-kinetic-roch-navigationrB asssuUar_track_alvar_msgsrC }rD (h}rE h}rF h]rG Uros/kinetic/ar_track_alvarrH assh ˆh }rI h}rJ h}rK h]rL Uros-kinetic-ar-track-alvar-msgsrM asssuU roscreaterN }rO (h}rP h}rQ h]rR Uros/kinetic/rosrS assh ˆh }rT h}rU h}rV h]rW Uros-kinetic-roscreaterX asssuU rostwitterrY }rZ (h}r[ h}r\ h]r] Uros/kinetic/jsk_3rdpartyr^ assh ˆh }r_ h}r` h}ra h]rb Uros-kinetic-rostwitterrc asssuUum6rd }re (h}rf h}rg h]rh Uros/kinetic/um6ri assh ˆh }rj h}rk h}rl h]rm Uros-kinetic-um6rn asssuU yocs_joyopro }rp (h}rq h}rr h]rs Uros/kinetic/yujin_ocsrt assh ˆh }ru h}rv h}rw h]rx Uros-kinetic-yocs-joyopry asssuU ecl_core_appsrz }r{ (h}r| h}r} h]r~ Uros/kinetic/ecl_corer assh ˆh }r€ h}r h}r‚ h]rƒ Uros-kinetic-ecl-core-appsr„ asssuUsrdfdomr… }r† (h}r‡ h}rˆ h]r‰ Uros/kinetic/srdfdomrŠ assh ˆh }r‹ h}rŒ h}r h]rŽ Uros-kinetic-srdfdomr asssuU gazebo_rosr }r‘ (h}r’ h}r“ h]r” Uros/kinetic/gazebo_ros_pkgsr• assh ˆh }r– h}r— h}r˜ h]r™ Uros-kinetic-gazebo-rosrš asssuU leuze_bringupr› }rœ (h}r h}rž h]rŸ Uros/kinetic/leuze_ros_driversr  assh ˆh }r¡ h}r¢ h}r£ h]r¤ Uros-kinetic-leuze-bringupr¥ asssuUworld_canvas_client_examplesr¦ }r§ (h}r¨ h}r© h]rª Uros/kinetic/world_canvas_libsr« assh ˆh }r¬ h}r­ h}r® h]r¯ U(ros-kinetic-world-canvas-client-examplesr° asssuUswri_opencv_utilr± }r² (h}r³ h}r´ h]rµ Uros/kinetic/marti_commonr¶ assh ˆh }r· h}r¸ h}r¹ h]rº Uros-kinetic-swri-opencv-utilr» asssuUjuliusr¼ }r½ (h}r¾ h}r¿ h]rÀ Uros/kinetic/jsk_3rdpartyrÁ assh ˆh }r h}rà h}rÄ h]rÅ Uros-kinetic-juliusrÆ asssuUjsk_rqt_pluginsrÇ }rÈ (h}rÉ h}rÊ h]rË Uros/kinetic/jsk_visualizationrÌ assh ˆh }rÍ h}rÎ h}rÏ h]rÐ Uros-kinetic-jsk-rqt-pluginsrÑ asssuU image_streamrÒ }rÓ (h}rÔ h}rÕ h]rÖ Uros/kinetic/web_interfacer× assh ˆh }rØ h}rÙ h}rÚ h]rÛ Uros-kinetic-image-streamrÜ asssuUrocon_hub_clientrÝ }rÞ (h}rß h}rà h]rá Uros/kinetic/rocon_multimasterrâ assh ˆh }rã h}rä h}rå h]ræ Uros-kinetic-rocon-hub-clientrç asssuUop3_walking_module_msgsrè }ré (h}rê h}rë h]rì Uros/kinetic/robotis_op3_msgsrí assh ˆh }rî h}rï h}rð h]rñ U#ros-kinetic-op3-walking-module-msgsrò asssuU cm_740_moduleró }rô (h}rõ h}rö h]r÷ Uros/kinetic/robotis_op3rø assh ˆh }rù h}rú h}rû h]rü Uros-kinetic-cm-740-modulerý asssuU eigen_typekitrþ }rÿ (h}r!h}r!h]r!Uros/kinetic/rtt_geometryr!assh ˆh }r!h}r!h}r!h]r!Uros-kinetic-eigen-typekitr!asssuU open_manipulator_with_tb3_gazebor !}r !(h}r !h}r !h]r !U1ros/kinetic/open_manipulator_with_tb3_simulationsr!assh ˆh }r!h}r!h}r!h]r!U,ros-kinetic-open-manipulator-with-tb3-gazebor!asssuUeca_a9_controlr!}r!(h}r!h}r!h]r!Uros/kinetic/eca_a9r!assh ˆh }r!h}r!h}r!h]r!Uros-kinetic-eca-a9-controlr!asssuUschunk_powercube_chainr!}r !(h}r!!h}r"!h]r#!U#ros/kinetic/schunk_modular_roboticsr$!assh ˆh }r%!h}r&!h}r'!h]r(!U"ros-kinetic-schunk-powercube-chainr)!asssuUnextage_ros_bridger*!}r+!(h}r,!h}r-!h]r.!Uros/kinetic/rtmros_nextager/!assh ˆh }r0!h}r1!h}r2!h]r3!Uros-kinetic-nextage-ros-bridger4!asssuU roch_followerr5!}r6!(h}r7!h}r8!h]r9!Uros/kinetic/rochr:!assh ˆh }r;!h}r!Uros-kinetic-roch-followerr?!asssuUxpp_msgsr@!}rA!(h}rB!h}rC!h]rD!Uros/kinetic/xpprE!assh ˆh }rF!h}rG!h}rH!h]rI!Uros-kinetic-xpp-msgsrJ!asssuUmultimaster_msgs_fkierK!}rL!(h}rM!h}rN!h]rO!Uros/kinetic/multimaster_fkierP!assh ˆh }rQ!h}rR!h}rS!h]rT!U!ros-kinetic-multimaster-msgs-fkierU!asssuUimu_processorsrV!}rW!(h}rX!h}rY!h]rZ!Uros/kinetic/imu_pipeliner[!assh ˆh }r\!h}r]!h}r^!h]r_!Uros-kinetic-imu-processorsr`!asssuUcamera_info_manager_pyra!}rb!(h}rc!h}rd!h]re!U"ros/kinetic/camera_info_manager_pyrf!assh ˆh }rg!h}rh!h}ri!h]rj!U"ros-kinetic-camera-info-manager-pyrk!asssuUthormang3_sensorsrl!}rm!(h}rn!h}ro!h]rp!Uros/kinetic/thormang3_ppcrq!assh ˆh }rr!h}rs!h}rt!h]ru!Uros-kinetic-thormang3-sensorsrv!asssuUswri_profiler_toolsrw!}rx!(h}ry!h}rz!h]r{!Uros/kinetic/swri_profilerr|!assh ˆh }r}!h}r~!h}r!h]r€!Uros-kinetic-swri-profiler-toolsr!asssuU nav2d_msgsr‚!}rƒ!(h}r„!h}r…!h]r†!Uros/kinetic/navigation_2dr‡!assh ˆh }rˆ!h}r‰!h}rŠ!h]r‹!Uros-kinetic-nav2d-msgsrŒ!asssuUwiimoter!}rŽ!(h}r!h}r!h]r‘!Uros/kinetic/joystick_driversr’!assh ˆh }r“!h}r”!h}r•!h]r–!Uros-kinetic-wiimoter—!asssuUrecorditr˜!}r™!(h}rš!h}r›!h]rœ!Uros/kinetic/robot_recorderr!assh ˆh }rž!h}rŸ!h}r !h]r¡!Uros-kinetic-recorditr¢!asssuU pr2_tuckarmr£!}r¤!(h}r¥!h}r¦!h]r§!Uros/kinetic/pr2_appsr¨!assh ˆh }r©!h}rª!h}r«!h]r¬!Uros-kinetic-pr2-tuckarmr­!asssuUmove_slow_and_clearr®!}r¯!(h}r°!h}r±!h]r²!Uros/kinetic/navigationr³!assh ˆh }r´!h}rµ!h}r¶!h]r·!Uros-kinetic-move-slow-and-clearr¸!asssuU joy_teleopr¹!}rº!(h}r»!h}r¼!h]r½!Uros/kinetic/teleop_toolsr¾!assh ˆh }r¿!h}rÀ!h}rÁ!h]rÂ!Uros-kinetic-joy-teleoprÃ!asssuUactionlib_enhancedrÄ!}rÅ!(h}rÆ!h}rÇ!h]rÈ!Uros/kinetic/actionlib_enhancedrÉ!assh ˆh }rÊ!h}rË!h}rÌ!h]rÍ!Uros-kinetic-actionlib-enhancedrÎ!asssuU ur_driverrÏ!}rÐ!(h}rÑ!h}rÒ!h]rÓ!Uros/kinetic/universal_robotrÔ!assh ˆh }rÕ!h}rÖ!h}r×!h]rØ!Uros-kinetic-ur-driverrÙ!asssuUsicktoolbox_wrapperrÚ!}rÛ!(h}rÜ!h}rÝ!h]rÞ!Uros/kinetic/sicktoolbox_wrapperrß!assh ˆh }rà!h}rá!h}râ!h]rã!Uros-kinetic-sicktoolbox-wrapperrä!asssuUcollada_parserrå!}ræ!(h}rç!h}rè!h]ré!Uros/kinetic/collada_urdfrê!assh ˆh }rë!h}rì!h}rí!h]rî!Uros-kinetic-collada-parserrï!asssuU respeaker_rosrð!}rñ!(h}rò!h}ró!h]rô!Uros/kinetic/jsk_3rdpartyrõ!assh ˆh }rö!h}r÷!h}rø!h]rù!Uros-kinetic-respeaker-rosrú!asssuU moveit_rosrû!}rü!(h}rý!h}rþ!h]rÿ!Uros/kinetic/moveitr"assh ˆh }r"h}r"h}r"h]r"Uros-kinetic-moveit-rosr"asssuUpolar_scan_matcherr"}r"(h}r"h}r "h]r "Uros/kinetic/scan_toolsr "assh ˆh }r "h}r "h}r"h]r"Uros-kinetic-polar-scan-matcherr"asssuU lpg_plannerr"}r"(h}r"h}r"h]r"Uros/kinetic/jsk_3rdpartyr"assh ˆh }r"h}r"h}r"h]r"Uros-kinetic-lpg-plannerr"asssuUcombined_robot_hw_testsr"}r"(h}r"h}r"h]r "Uros/kinetic/ros_controlr!"assh ˆh }r""h}r#"h}r$"h]r%"U#ros-kinetic-combined-robot-hw-testsr&"asssuUfreenect_launchr'"}r("(h}r)"h}r*"h]r+"Uros/kinetic/freenect_stackr,"assh ˆh }r-"h}r."h}r/"h]r0"Uros-kinetic-freenect-launchr1"asssuU pr2eus_moveitr2"}r3"(h}r4"h}r5"h]r6"Uros/kinetic/jsk_pr2eusr7"assh ˆh }r8"h}r9"h}r:"h]r;"Uros-kinetic-pr2eus-moveitr<"asssuU sick_scanr="}r>"(h}r?"h}r@"h]rA"Uros/kinetic/sick_scanrB"assh ˆh }rC"h}rD"h}rE"h]rF"Uros-kinetic-sick-scanrG"asssuUmoveit_visual_toolsrH"}rI"(h}rJ"h}rK"h]rL"Uros/kinetic/moveit_visual_toolsrM"assh ˆh }rN"h}rO"h}rP"h]rQ"Uros-kinetic-moveit-visual-toolsrR"asssuUgmappingrS"}rT"(h}rU"h}rV"h]rW"Uros/kinetic/slam_gmappingrX"assh ˆh }rY"h}rZ"h}r["h]r\"Uros-kinetic-gmappingr]"asssuUsensor_module_tutorialr^"}r_"(h}r`"h}ra"h]rb"Uros/kinetic/thormang3_mpcrc"assh ˆh }rd"h}re"h}rf"h]rg"U"ros-kinetic-sensor-module-tutorialrh"asssuUdenso_robot_gazebori"}rj"(h}rk"h}rl"h]rm"Uros/kinetic/denso_robot_rosrn"assh ˆh }ro"h}rp"h}rq"h]rr"Uros-kinetic-denso-robot-gazebors"asssuUturtlebot3_simulationsrt"}ru"(h}rv"h}rw"h]rx"U"ros/kinetic/turtlebot3_simulationsry"assh ˆh }rz"h}r{"h}r|"h]r}"U"ros-kinetic-turtlebot3-simulationsr~"asssuUtablet_socket_msgsr"}r€"(h}r"h}r‚"h]rƒ"Uros/kinetic/autoware_msgsr„"assh ˆh }r…"h}r†"h}r‡"h]rˆ"Uros-kinetic-tablet-socket-msgsr‰"asssuUarbotixrŠ"}r‹"(h}rŒ"h}r"h]rŽ"Uros/kinetic/arbotixr"assh ˆh }r"h}r‘"h}r’"h]r“"Uros-kinetic-arbotixr”"asssuUwireless_watcherr•"}r–"(h}r—"h}r˜"h]r™"Uros/kinetic/wirelessrš"assh ˆh }r›"h}rœ"h}r"h]rž"Uros-kinetic-wireless-watcherrŸ"asssuU rqt_tf_treer "}r¡"(h}r¢"h}r£"h]r¤"Uros/kinetic/rqt_tf_treer¥"assh ˆh }r¦"h}r§"h}r¨"h]r©"Uros-kinetic-rqt-tf-treerª"asssuUgazebo_ros_controlr«"}r¬"(h}r­"h}r®"h]r¯"Uros/kinetic/gazebo_ros_pkgsr°"assh ˆh }r±"h}r²"h}r³"h]r´"Uros-kinetic-gazebo-ros-controlrµ"asssuUjoint_trajectory_controllerr¶"}r·"(h}r¸"h}r¹"h]rº"Uros/kinetic/ros_controllersr»"assh ˆh }r¼"h}r½"h}r¾"h]r¿"U'ros-kinetic-joint-trajectory-controllerrÀ"asssuUeuslisprÁ"}rÂ"(h}rÃ"h}rÄ"h]rÅ"Uros/kinetic/euslisprÆ"assh ˆh }rÇ"h}rÈ"h}rÉ"h]rÊ"Uros-kinetic-euslisprË"asssuUyocs_virtual_sensorrÌ"}rÍ"(h}rÎ"h}rÏ"h]rÐ"Uros/kinetic/yujin_ocsrÑ"assh ˆh }rÒ"h}rÓ"h}rÔ"h]rÕ"Uros-kinetic-yocs-virtual-sensorrÖ"asssuUpr2_app_managerr×"}rØ"(h}rÙ"h}rÚ"h]rÛ"Uros/kinetic/pr2_appsrÜ"assh ˆh }rÝ"h}rÞ"h}rß"h]rà"Uros-kinetic-pr2-app-managerrá"asssuU grid_map_cvrâ"}rã"(h}rä"h}rå"h]ræ"Uros/kinetic/grid_maprç"assh ˆh }rè"h}ré"h}rê"h]rë"Uros-kinetic-grid-map-cvrì"asssuU rocon_urirí"}rî"(h}rï"h}rð"h]rñ"Uros/kinetic/rocon_toolsrò"assh ˆh }ró"h}rô"h}rõ"h]rö"Uros-kinetic-rocon-urir÷"asssuUplay_motion_msgsrø"}rù"(h}rú"h}rû"h]rü"Uros/kinetic/play_motionrý"assh ˆh }rþ"h}rÿ"h}r#h]r#Uros-kinetic-play-motion-msgsr#asssuU media_exportr#}r#(h}r#h}r#h]r#Uros/kinetic/media_exportr#assh ˆh }r #h}r #h}r #h]r #Uros-kinetic-media-exportr #asssuUlaptop_battery_monitorr#}r#(h}r#h}r#h]r#U'ros/kinetic/linux_peripheral_interfacesr#assh ˆh }r#h}r#h}r#h]r#U"ros-kinetic-laptop-battery-monitorr#asssuU geometry_msgsr#}r#(h}r#h}r#h]r#Uros/kinetic/common_msgsr#assh ˆh }r#h}r #h}r!#h]r"#Uros-kinetic-geometry-msgsr##asssuUros_controllersr$#}r%#(h}r&#h}r'#h]r(#Uros/kinetic/ros_controllersr)#assh ˆh }r*#h}r+#h}r,#h]r-#Uros-kinetic-ros-controllersr.#asssuU rtt_rospackr/#}r0#(h}r1#h}r2#h]r3#Uros/kinetic/rtt_ros_integrationr4#assh ˆh }r5#h}r6#h}r7#h]r8#Uros-kinetic-rtt-rospackr9#asssuUoctomap_mappingr:#}r;#(h}r<#h}r=#h]r>#Uros/kinetic/octomap_mappingr?#assh ˆh }r@#h}rA#h}rB#h]rC#Uros-kinetic-octomap-mappingrD#asssuUmoveit_runtimerE#}rF#(h}rG#h}rH#h]rI#Uros/kinetic/moveitrJ#assh ˆh }rK#h}rL#h}rM#h]rN#Uros-kinetic-moveit-runtimerO#asssuUttsrP#}rQ#(h}rR#h}rS#h]rT#Uros/kinetic/ttsrU#assh ˆh }rV#h}rW#h}rX#h]rY#Uros-kinetic-ttsrZ#asssuUcob_default_env_configr[#}r\#(h}r]#h}r^#h]r_#Uros/kinetic/cob_environmentsr`#assh ˆh }ra#h}rb#h}rc#h]rd#U"ros-kinetic-cob-default-env-configre#asssuUmir_navigationrf#}rg#(h}rh#h}ri#h]rj#Uros/kinetic/mir_robotrk#assh ˆh }rl#h}rm#h}rn#h]ro#Uros-kinetic-mir-navigationrp#asssuUrotate_recoveryrq#}rr#(h}rs#h}rt#h]ru#Uros/kinetic/navigationrv#assh ˆh }rw#h}rx#h}ry#h]rz#Uros-kinetic-rotate-recoveryr{#asssuUrobot_statemachiner|#}r}#(h}r~#h}r#h]r€#Uros/kinetic/robot_statemachiner#assh ˆh }r‚#h}rƒ#h}r„#h]r…#Uros-kinetic-robot-statemachiner†#asssuUuuv_control_utilsr‡#}rˆ#(h}r‰#h}rŠ#h]r‹#Uros/kinetic/uuv_simulatorrŒ#assh ˆh }r#h}rŽ#h}r#h]r#Uros-kinetic-uuv-control-utilsr‘#asssuU katana_teleopr’#}r“#(h}r”#h}r•#h]r–#Uros/kinetic/katana_driverr—#assh ˆh }r˜#h}r™#h}rš#h]r›#Uros-kinetic-katana-teleoprœ#asssuUmoveit_ros_planning_interfacer#}rž#(h}rŸ#h}r #h]r¡#Uros/kinetic/moveitr¢#assh ˆh }r£#h}r¤#h}r¥#h]r¦#U)ros-kinetic-moveit-ros-planning-interfacer§#asssuUmrpt1r¨#}r©#(h}rª#h}r«#h]r¬#Uros/kinetic/mrpt1r­#assh ˆh }r®#h}r¯#h}r°#h]r±#Uros-kinetic-mrpt1r²#asssuUrtt_stereo_msgsr³#}r´#(h}rµ#h}r¶#h]r·#Uros/kinetic/rtt_ros_integrationr¸#assh ˆh }r¹#h}rº#h}r»#h]r¼#Uros-kinetic-rtt-stereo-msgsr½#asssuU jsk_roseusr¾#}r¿#(h}rÀ#h}rÁ#h]rÂ#Uros/kinetic/jsk_roseusrÃ#assh ˆh }rÄ#h}rÅ#h}rÆ#h]rÇ#Uros-kinetic-jsk-roseusrÈ#asssuUpr2_computer_monitorrÉ#}rÊ#(h}rË#h}rÌ#h]rÍ#Uros/kinetic/pr2_robotrÎ#assh ˆh }rÏ#h}rÐ#h}rÑ#h]rÒ#U ros-kinetic-pr2-computer-monitorrÓ#asssuUpr2_common_actionsrÔ#}rÕ#(h}rÖ#h}r×#h]rØ#Uros/kinetic/pr2_common_actionsrÙ#assh ˆh }rÚ#h}rÛ#h}rÜ#h]rÝ#Uros-kinetic-pr2-common-actionsrÞ#asssuUthormang3_feet_ft_modulerß#}rà#(h}rá#h}râ#h]rã#Uros/kinetic/thormang3_mpcrä#assh ˆh }rå#h}ræ#h}rç#h]rè#U$ros-kinetic-thormang3-feet-ft-moduleré#asssuU loki_bringuprê#}rë#(h}rì#h}rí#h]rî#Uros/kinetic/loki_robotrï#assh ˆh }rð#h}rñ#h}rò#h]ró#Uros-kinetic-loki-bringuprô#asssuUcreate_descriptionrõ#}rö#(h}r÷#h}rø#h]rù#Uros/kinetic/turtlebot_createrú#assh ˆh }rû#h}rü#h}rý#h]rþ#Uros-kinetic-create-descriptionrÿ#asssuU bond_corer$}r$(h}r$h}r$h]r$Uros/kinetic/bond_corer$assh ˆh }r$h}r$h}r$h]r $Uros-kinetic-bond-corer $asssuUkobuki_gazebo_pluginsr $}r $(h}r $h}r$h]r$Uros/kinetic/kobuki_desktopr$assh ˆh }r$h}r$h}r$h]r$U!ros-kinetic-kobuki-gazebo-pluginsr$asssuUopen_manipulator_simulationsr$}r$(h}r$h}r$h]r$U(ros/kinetic/open_manipulator_simulationsr$assh ˆh }r$h}r$h}r$h]r$U(ros-kinetic-open-manipulator-simulationsr $asssuUmavrosr!$}r"$(h}r#$h}r$$h]r%$Uros/kinetic/mavrosr&$assh ˆh }r'$h}r($h}r)$h]r*$Uros-kinetic-mavrosr+$asssuUyosemite_valleyr,$}r-$(h}r.$h}r/$h]r0$Uros/kinetic/uav_testingr1$assh ˆh }r2$h}r3$h}r4$h]r5$Uros-kinetic-yosemite-valleyr6$asssuU dataspeed_canr7$}r8$(h}r9$h}r:$h]r;$Uros/kinetic/dataspeed_canr<$assh ˆh }r=$h}r>$h}r?$h]r@$Uros-kinetic-dataspeed-canrA$asssuU husky_gazeborB$}rC$(h}rD$h}rE$h]rF$Uros/kinetic/huskyrG$assh ˆh }rH$h}rI$h}rJ$h]rK$Uros-kinetic-husky-gazeborL$asssuUqb_device_descriptionrM$}rN$(h}rO$h}rP$h]rQ$Uros/kinetic/qb_devicerR$assh ˆh }rS$h}rT$h}rU$h]rV$U!ros-kinetic-qb-device-descriptionrW$asssuUmobileye_560_660_msgsrX$}rY$(h}rZ$h}r[$h]r\$Uros/kinetic/astuff_sensor_msgsr]$assh ˆh }r^$h}r_$h}r`$h]ra$U!ros-kinetic-mobileye-560-660-msgsrb$asssuUpepper_bringuprc$}rd$(h}re$h}rf$h]rg$Uros/kinetic/pepper_robotrh$assh ˆh }ri$h}rj$h}rk$h]rl$Uros-kinetic-pepper-bringuprm$asssuU agvs_gazeborn$}ro$(h}rp$h}rq$h]rr$Uros/kinetic/agvs_simrs$assh ˆh }rt$h}ru$h}rv$h]rw$Uros-kinetic-agvs-gazeborx$asssuUuuv_descriptionsry$}rz$(h}r{$h}r|$h]r}$Uros/kinetic/uuv_simulatorr~$assh ˆh }r$h}r€$h}r$h]r‚$Uros-kinetic-uuv-descriptionsrƒ$asssuUrospingr„$}r…$(h}r†$h}r‡$h]rˆ$Uros/kinetic/jsk_3rdpartyr‰$assh ˆh }rŠ$h}r‹$h}rŒ$h]r$Uros-kinetic-rospingrŽ$asssuUpilz_trajectory_generationr$}r$(h}r‘$h}r’$h]r“$U"ros/kinetic/pilz_industrial_motionr”$assh ˆh }r•$h}r–$h}r—$h]r˜$U&ros-kinetic-pilz-trajectory-generationr™$asssuUkobuki_testsuiterš$}r›$(h}rœ$h}r$h]rž$Uros/kinetic/kobukirŸ$assh ˆh }r $h}r¡$h}r¢$h]r£$Uros-kinetic-kobuki-testsuiter¤$asssuU mavros_extrasr¥$}r¦$(h}r§$h}r¨$h]r©$Uros/kinetic/mavrosrª$assh ˆh }r«$h}r¬$h}r­$h]r®$Uros-kinetic-mavros-extrasr¯$asssuUrochr°$}r±$(h}r²$h}r³$h]r´$Uros/kinetic/rochrµ$assh ˆh }r¶$h}r·$h}r¸$h]r¹$Uros-kinetic-rochrº$asssuUrdl_urdfreaderr»$}r¼$(h}r½$h}r¾$h]r¿$Uros/kinetic/rdlrÀ$assh ˆh }rÁ$h}rÂ$h}rÃ$h]rÄ$Uros-kinetic-rdl-urdfreaderrÅ$asssuUnode_manager_fkierÆ$}rÇ$(h}rÈ$h}rÉ$h]rÊ$Uros/kinetic/multimaster_fkierË$assh ˆh }rÌ$h}rÍ$h}rÎ$h]rÏ$Uros-kinetic-node-manager-fkierÐ$asssuUraspigibbon_rosrÑ$}rÒ$(h}rÓ$h}rÔ$h]rÕ$Uros/kinetic/raspigibbon_rosrÖ$assh ˆh }r×$h}rØ$h}rÙ$h]rÚ$Uros-kinetic-raspigibbon-rosrÛ$asssuUromeo_descriptionrÜ$}rÝ$(h}rÞ$h}rß$h]rà$Uros/kinetic/romeo_robotrá$assh ˆh }râ$h}rã$h}rä$h]rå$Uros-kinetic-romeo-descriptionræ$asssuUrr_openrover_driver_msgsrç$}rè$(h}ré$h}rê$h]rë$Uros/kinetic/rr_openrover_stackrì$assh ˆh }rí$h}rî$h}rï$h]rð$U$ros-kinetic-rr-openrover-driver-msgsrñ$asssuUrospackrò$}ró$(h}rô$h}rõ$h]rö$Uros/kinetic/rospackr÷$assh ˆh }rø$h}rù$h}rú$h]rû$Uros-kinetic-rospackrü$asssuUcob_script_serverrý$}rþ$(h}rÿ$h}r%h]r%Uros/kinetic/cob_command_toolsr%assh ˆh }r%h}r%h}r%h]r%Uros-kinetic-cob-script-serverr%asssuU mir_actionsr%}r %(h}r %h}r %h]r %Uros/kinetic/mir_robotr %assh ˆh }r%h}r%h}r%h]r%Uros-kinetic-mir-actionsr%asssuUfeed_the_trollr%}r%(h}r%h}r%h]r%Uros/kinetic/feed_the_trollr%assh ˆh }r%h}r%h}r%h]r%Uros-kinetic-feed-the-trollr%asssuU image_rotater%}r%(h}r %h}r!%h]r"%Uros/kinetic/image_pipeliner#%assh ˆh }r$%h}r%%h}r&%h]r'%Uros-kinetic-image-rotater(%asssuU!industrial_robot_status_interfacer)%}r*%(h}r+%h}r,%h]r-%U.ros/kinetic/industrial_robot_status_controllerr.%assh ˆh }r/%h}r0%h}r1%h]r2%U-ros-kinetic-industrial-robot-status-interfacer3%asssuUbayesian_belief_networksr4%}r5%(h}r6%h}r7%h]r8%Uros/kinetic/jsk_3rdpartyr9%assh ˆh }r:%h}r;%h}r<%h]r=%U$ros-kinetic-bayesian-belief-networksr>%asssuUopen_manipulator_msgsr?%}r@%(h}rA%h}rB%h]rC%U!ros/kinetic/open_manipulator_msgsrD%assh ˆh }rE%h}rF%h}rG%h]rH%U!ros-kinetic-open-manipulator-msgsrI%asssuUop3_walking_modulerJ%}rK%(h}rL%h}rM%h]rN%Uros/kinetic/robotis_op3rO%assh ˆh }rP%h}rQ%h}rR%h]rS%Uros-kinetic-op3-walking-modulerT%asssuU yocs_msgsrU%}rV%(h}rW%h}rX%h]rY%Uros/kinetic/yocs_msgsrZ%assh ˆh }r[%h}r\%h}r]%h]r^%Uros-kinetic-yocs-msgsr_%asssuUhpp-fclr`%}ra%(h}rb%h}rc%h]rd%Uros/kinetic/hpp-fclre%assh ˆh }rf%h}rg%h}rh%h]ri%Uros-kinetic-hpp-fclrj%asssuUqb_move_controlrk%}rl%(h}rm%h}rn%h]ro%Uros/kinetic/qb_moverp%assh ˆh }rq%h}rr%h}rs%h]rt%Uros-kinetic-qb-move-controlru%asssuUcartographer_rosrv%}rw%(h}rx%h}ry%h]rz%Uros/kinetic/cartographer_rosr{%assh ˆh }r|%h}r}%h}r~%h]r%Uros-kinetic-cartographer-rosr€%asssuU ibeo_corer%}r‚%(h}rƒ%h}r„%h]r…%Uros/kinetic/ibeo_corer†%assh ˆh }r‡%h}rˆ%h}r‰%h]rŠ%Uros-kinetic-ibeo-corer‹%asssuUcob_safety_controllerrŒ%}r%(h}rŽ%h}r%h]r%Uros/kinetic/cob_substituter‘%assh ˆh }r’%h}r“%h}r”%h]r•%U!ros-kinetic-cob-safety-controllerr–%asssuU!manipulator_h_kinematics_dynamicsr—%}r˜%(h}r™%h}rš%h]r›%Uros/kinetic/manipulator_hrœ%assh ˆh }r%h}rž%h}rŸ%h]r %U-ros-kinetic-manipulator-h-kinematics-dynamicsr¡%asssuU ros_tutorialsr¢%}r£%(h}r¤%h}r¥%h]r¦%Uros/kinetic/ros_tutorialsr§%assh ˆh }r¨%h}r©%h}rª%h]r«%Uros-kinetic-ros-tutorialsr¬%asssuUabb_irb5400_supportr­%}r®%(h}r¯%h}r°%h]r±%Uros/kinetic/abbr²%assh ˆh }r³%h}r´%h}rµ%h]r¶%Uros-kinetic-abb-irb5400-supportr·%asssuU ros_explorerr¸%}r¹%(h}rº%h}r»%h]r¼%Uros/kinetic/ros_explorerr½%assh ˆh }r¾%h}r¿%h}rÀ%h]rÁ%Uros-kinetic-ros-explorerrÂ%asssuUpr2_navigation_appsrÃ%}rÄ%(h}rÅ%h}rÆ%h]rÇ%Uros/kinetic/pr2_navigation_appsrÈ%assh ˆh }rÉ%h}rÊ%h}rË%h]rÌ%Uros-kinetic-pr2-navigation-appsrÍ%asssuUiiwa_descriptionrÎ%}rÏ%(h}rÐ%h}rÑ%h]rÒ%Uros/kinetic/iiwa_stackrÓ%assh ˆh }rÔ%h}rÕ%h}rÖ%h]r×%Uros-kinetic-iiwa-descriptionrØ%asssuUrc_tagdetect_clientrÙ%}rÚ%(h}rÛ%h}rÜ%h]rÝ%Uros/kinetic/rc_visardrÞ%assh ˆh }rß%h}rà%h}rá%h]râ%Uros-kinetic-rc-tagdetect-clientrã%asssuU cob_sick_s300rä%}rå%(h}ræ%h}rç%h]rè%Uros/kinetic/cob_driverré%assh ˆh }rê%h}rë%h}rì%h]rí%Uros-kinetic-cob-sick-s300rî%asssuUrqt_ground_robot_teleoprï%}rð%(h}rñ%h}rò%h]ró%U"ros/kinetic/jderobot_ground_robotsrô%assh ˆh }rõ%h}rö%h}r÷%h]rø%U#ros-kinetic-rqt-ground-robot-teleoprù%asssuUrocon_device_msgsrú%}rû%(h}rü%h}rý%h]rþ%Uros/kinetic/rocon_msgsrÿ%assh ˆh }r&h}r&h}r&h]r&Uros-kinetic-rocon-device-msgsr&asssuU dbw_mkz_msgsr&}r&(h}r&h}r&h]r &Uros/kinetic/dbw_mkz_rosr &assh ˆh }r &h}r &h}r &h]r&Uros-kinetic-dbw-mkz-msgsr&asssuU flexbe_msgsr&}r&(h}r&h}r&h]r&Uros/kinetic/flexber&assh ˆh }r&h}r&h}r&h]r&Uros-kinetic-flexbe-msgsr&asssuUcamera_calibrationr&}r&(h}r&h}r&h]r&Uros/kinetic/image_pipeliner &assh ˆh }r!&h}r"&h}r#&h]r$&Uros-kinetic-camera-calibrationr%&asssuUrtt_common_msgsr&&}r'&(h}r(&h}r)&h]r*&Uros/kinetic/rtt_ros_integrationr+&assh ˆh }r,&h}r-&h}r.&h]r/&Uros-kinetic-rtt-common-msgsr0&asssuUnao_dcm_bringupr1&}r2&(h}r3&h}r4&h]r5&Uros/kinetic/nao_dcm_robotr6&assh ˆh }r7&h}r8&h}r9&h]r:&Uros-kinetic-nao-dcm-bringupr;&asssuUthormang3_walking_demor<&}r=&(h}r>&h}r?&h]r@&Uros/kinetic/thormang3_ppcrA&assh ˆh }rB&h}rC&h}rD&h]rE&U"ros-kinetic-thormang3-walking-demorF&asssuU rosservicerG&}rH&(h}rI&h}rJ&h]rK&Uros/kinetic/ros_commrL&assh ˆh }rM&h}rN&h}rO&h]rP&Uros-kinetic-rosservicerQ&asssuUgripitrR&}rS&(h}rT&h}rU&h]rV&Uros/kinetic/gripitrW&assh ˆh }rX&h}rY&h}rZ&h]r[&Uros-kinetic-gripitr\&asssuU moveit_pr2r]&}r^&(h}r_&h}r`&h]ra&Uros/kinetic/moveit_pr2rb&assh ˆh }rc&h}rd&h}re&h]rf&Uros-kinetic-moveit-pr2rg&asssuUvisualization_marker_tutorialsrh&}ri&(h}rj&h}rk&h]rl&U#ros/kinetic/visualization_tutorialsrm&assh ˆh }rn&h}ro&h}rp&h]rq&U*ros-kinetic-visualization-marker-tutorialsrr&asssuUmrpt_graphslam_2drs&}rt&(h}ru&h}rv&h]rw&Uros/kinetic/mrpt_slamrx&assh ˆh }ry&h}rz&h}r{&h]r|&Uros-kinetic-mrpt-graphslam-2dr}&asssuUpluginlib_tutorialsr~&}r&(h}r€&h}r&h]r‚&Uros/kinetic/common_tutorialsrƒ&assh ˆh }r„&h}r…&h}r†&h]r‡&Uros-kinetic-pluginlib-tutorialsrˆ&asssuU melfa_driverr‰&}rŠ&(h}r‹&h}rŒ&h]r&Uros/kinetic/melfa_robotrŽ&assh ˆh }r&h}r&h}r‘&h]r’&Uros-kinetic-melfa-driverr“&asssuUsbplr”&}r•&(h}r–&h}r—&h]r˜&Uros/kinetic/sbplr™&assh ˆh }rš&h}r›&h}rœ&h]r&Uros-kinetic-sbplrž&asssuUmd49_base_controllerrŸ&}r &(h}r¡&h}r¢&h]r£&U ros/kinetic/md49_base_controllerr¤&assh ˆh }r¥&h}r¦&h}r§&h]r¨&U ros-kinetic-md49-base-controllerr©&asssuUkinesis_video_streamerrª&}r«&(h}r¬&h}r­&h]r®&U"ros/kinetic/kinesis_video_streamerr¯&assh ˆh }r°&h}r±&h}r²&h]r³&U"ros-kinetic-kinesis-video-streamerr´&asssuUrqt_common_pluginsrµ&}r¶&(h}r·&h}r¸&h]r¹&Uros/kinetic/rqt_common_pluginsrº&assh ˆh }r»&h}r¼&h}r½&h]r¾&Uros-kinetic-rqt-common-pluginsr¿&asssuU area_divisionrÀ&}rÁ&(h}rÂ&h}rÃ&h]rÄ&Uros/kinetic/swarm_functionsrÅ&assh ˆh }rÆ&h}rÇ&h}rÈ&h]rÉ&Uros-kinetic-area-divisionrÊ&asssuUcreate_dashboardrË&}rÌ&(h}rÍ&h}rÎ&h]rÏ&U$ros/kinetic/turtlebot_create_desktoprÐ&assh ˆh }rÑ&h}rÒ&h}rÓ&h]rÔ&Uros-kinetic-create-dashboardrÕ&asssuUrqt_robot_monitorrÖ&}r×&(h}rØ&h}rÙ&h]rÚ&Uros/kinetic/rqt_robot_monitorrÛ&assh ˆh }rÜ&h}rÝ&h}rÞ&h]rß&Uros-kinetic-rqt-robot-monitorrà&asssuU slime_wrapperrá&}râ&(h}rã&h}rä&h]rå&Uros/kinetic/ros_emacs_utilsræ&assh ˆh }rç&h}rè&h}ré&h]rê&Uros-kinetic-slime-wrapperrë&asssuU play_motionrì&}rí&(h}rî&h}rï&h]rð&Uros/kinetic/play_motionrñ&assh ˆh }rò&h}ró&h}rô&h]rõ&Uros-kinetic-play-motionrö&asssuU visp_trackerr÷&}rø&(h}rù&h}rú&h]rû&Uros/kinetic/vision_visprü&assh ˆh }rý&h}rþ&h}rÿ&h]r'Uros-kinetic-visp-trackerr'asssuU ecl_errorsr'}r'(h}r'h}r'h]r'Uros/kinetic/ecl_liter'assh ˆh }r'h}r 'h}r 'h]r 'Uros-kinetic-ecl-errorsr 'asssuUhironx_calibrationr '}r'(h}r'h}r'h]r'Uros/kinetic/rtmros_hironxr'assh ˆh }r'h}r'h}r'h]r'Uros-kinetic-hironx-calibrationr'asssuUrobotis_op3_toolsr'}r'(h}r'h}r'h]r'Uros/kinetic/robotis_op3_toolsr'assh ˆh }r'h}r'h}r 'h]r!'Uros-kinetic-robotis-op3-toolsr"'asssuU%open_manipulator_with_tb3_simulationsr#'}r$'(h}r%'h}r&'h]r''U1ros/kinetic/open_manipulator_with_tb3_simulationsr('assh ˆh }r)'h}r*'h}r+'h]r,'U1ros-kinetic-open-manipulator-with-tb3-simulationsr-'asssuU eus_qpoasesr.'}r/'(h}r0'h}r1'h]r2'Uros/kinetic/jsk_controlr3'assh ˆh }r4'h}r5'h}r6'h]r7'Uros-kinetic-eus-qpoasesr8'asssuUworld_canvas_utilsr9'}r:'(h}r;'h}r<'h]r='Uros/kinetic/world_canvas_libsr>'assh ˆh }r?'h}r@'h}rA'h]rB'Uros-kinetic-world-canvas-utilsrC'asssuU prbt_supportrD'}rE'(h}rF'h}rG'h]rH'Uros/kinetic/pilz_robotsrI'assh ˆh }rJ'h}rK'h}rL'h]rM'Uros-kinetic-prbt-supportrN'asssuU yocs_rappsrO'}rP'(h}rQ'h}rR'h]rS'Uros/kinetic/yujin_ocsrT'assh ˆh }rU'h}rV'h}rW'h]rX'Uros-kinetic-yocs-rappsrY'asssuU rtt_pcl_rosrZ'}r['(h}r\'h}r]'h]r^'Uros/kinetic/rtt_pcl_rosr_'assh ˆh }r`'h}ra'h}rb'h]rc'Uros-kinetic-rtt-pcl-rosrd'asssuU velodyne_msgsre'}rf'(h}rg'h}rh'h]ri'Uros/kinetic/velodynerj'assh ˆh }rk'h}rl'h}rm'h]rn'Uros-kinetic-velodyne-msgsro'asssuUhumanoid_localizationrp'}rq'(h}rr'h}rs'h]rt'Uros/kinetic/humanoid_navigationru'assh ˆh }rv'h}rw'h}rx'h]ry'U!ros-kinetic-humanoid-localizationrz'asssuUcob_perception_commonr{'}r|'(h}r}'h}r~'h]r'U!ros/kinetic/cob_perception_commonr€'assh ˆh }r'h}r‚'h}rƒ'h]r„'U!ros-kinetic-cob-perception-commonr…'asssuU control_msgsr†'}r‡'(h}rˆ'h}r‰'h]rŠ'Uros/kinetic/control_msgsr‹'assh ˆh }rŒ'h}r'h}rŽ'h]r'Uros-kinetic-control-msgsr'asssuU cpp_commonr‘'}r’'(h}r“'h}r”'h]r•'Uros/kinetic/roscpp_corer–'assh ˆh }r—'h}r˜'h}r™'h]rš'Uros-kinetic-cpp-commonr›'asssuUinteractive_marker_proxyrœ'}r'(h}rž'h}rŸ'h]r 'U$ros/kinetic/interactive_marker_proxyr¡'assh ˆh }r¢'h}r£'h}r¤'h]r¥'U$ros-kinetic-interactive-marker-proxyr¦'asssuUnavigation_stager§'}r¨'(h}r©'h}rª'h]r«'U ros/kinetic/navigation_tutorialsr¬'assh ˆh }r­'h}r®'h}r¯'h]r°'Uros-kinetic-navigation-stager±'asssuUjsk_network_toolsr²'}r³'(h}r´'h}rµ'h]r¶'Uros/kinetic/jsk_commonr·'assh ˆh }r¸'h}r¹'h}rº'h]r»'Uros-kinetic-jsk-network-toolsr¼'asssuUridgeback_gazebo_pluginsr½'}r¾'(h}r¿'h}rÀ'h]rÁ'Uros/kinetic/ridgeback_simulatorrÂ'assh ˆh }rÃ'h}rÄ'h}rÅ'h]rÆ'U$ros-kinetic-ridgeback-gazebo-pluginsrÇ'asssuU simulatorsrÈ'}rÉ'(h}rÊ'h}rË'h]rÌ'Uros/kinetic/metapackagesrÍ'assh ˆh }rÎ'h}rÏ'h}rÐ'h]rÑ'Uros-kinetic-simulatorsrÒ'asssuU rqt_bhandrÓ'}rÔ'(h}rÕ'h}rÖ'h]r×'Uros/kinetic/barrett_handrØ'assh ˆh }rÙ'h}rÚ'h}rÛ'h]rÜ'Uros-kinetic-rqt-bhandrÝ'asssuU qt_dotgraphrÞ'}rß'(h}rà'h}rá'h]râ'Uros/kinetic/qt_gui_corerã'assh ˆh }rä'h}rå'h}ræ'h]rç'Uros-kinetic-qt-dotgraphrè'asssuUmoveit_ros_perceptionré'}rê'(h}rë'h}rì'h]rí'Uros/kinetic/moveitrî'assh ˆh }rï'h}rð'h}rñ'h]rò'U!ros-kinetic-moveit-ros-perceptionró'asssuUautomotive_navigation_msgsrô'}rõ'(h}rö'h}r÷'h]rø'U$ros/kinetic/automotive_autonomy_msgsrù'assh ˆh }rú'h}rû'h}rü'h]rý'U&ros-kinetic-automotive-navigation-msgsrþ'asssuUcob_gazebo_pluginsrÿ'}r((h}r(h}r(h]r(Uros/kinetic/cob_gazebo_pluginsr(assh ˆh }r(h}r(h}r(h]r(Uros-kinetic-cob-gazebo-pluginsr (asssuUrosbag_storager (}r ((h}r (h}r (h]r(Uros/kinetic/ros_commr(assh ˆh }r(h}r(h}r(h]r(Uros-kinetic-rosbag-storager(asssuUdynamixel_motorr(}r((h}r(h}r(h]r(Uros/kinetic/dynamixel_motorr(assh ˆh }r(h}r(h}r(h]r(Uros-kinetic-dynamixel-motorr(asssuUuwsim_osgoceanr (}r!((h}r"(h}r#(h]r$(Uros/kinetic/uwsim_osgoceanr%(assh ˆh }r&(h}r'(h}r((h]r)(Uros-kinetic-uwsim-osgoceanr*(asssuU yaml_cpp_0_3r+(}r,((h}r-(h}r.(h]r/(Uros/kinetic/yaml_cpp_0_3r0(assh ˆh }r1(h}r2(h}r3(h]r4(Uros-kinetic-yaml-cpp-0-3r5(asssuU openni_launchr6(}r7((h}r8(h}r9(h]r:(Uros/kinetic/openni_camerar;(assh ˆh }r<(h}r=(h}r>(h]r?(Uros-kinetic-openni-launchr@(asssuUop3_camera_setting_toolrA(}rB((h}rC(h}rD(h]rE(Uros/kinetic/robotis_op3_toolsrF(assh ˆh }rG(h}rH(h}rI(h]rJ(U#ros-kinetic-op3-camera-setting-toolrK(asssuU grid_map_corerL(}rM((h}rN(h}rO(h]rP(Uros/kinetic/grid_maprQ(assh ˆh }rR(h}rS(h}rT(h]rU(Uros-kinetic-grid-map-corerV(asssuUur10_moveit_configrW(}rX((h}rY(h}rZ(h]r[(Uros/kinetic/universal_robotr\(assh ˆh }r](h}r^(h}r_(h]r`(Uros-kinetic-ur10-moveit-configra(asssuUtuw_marker_pose_estimationrb(}rc((h}rd(h}re(h]rf(U ros/kinetic/tuw_marker_detectionrg(assh ˆh }rh(h}ri(h}rj(h]rk(U&ros-kinetic-tuw-marker-pose-estimationrl(asssuU dwb_criticsrm(}rn((h}ro(h}rp(h]rq(Uros/kinetic/robot_navigationrr(assh ˆh }rs(h}rt(h}ru(h]rv(Uros-kinetic-dwb-criticsrw(asssuU collada_urdfrx(}ry((h}rz(h}r{(h]r|(Uros/kinetic/collada_urdfr}(assh ˆh }r~(h}r(h}r€(h]r(Uros-kinetic-collada-urdfr‚(asssuUrobot_activity_msgsrƒ(}r„((h}r…(h}r†(h]r‡(Uros/kinetic/robot_activityrˆ(assh ˆh }r‰(h}rŠ(h}r‹(h]rŒ(Uros-kinetic-robot-activity-msgsr(asssuU uuid_msgsrŽ(}r((h}r(h}r‘(h]r’(Uros/kinetic/unique_identifierr“(assh ˆh }r”(h}r•(h}r–(h]r—(Uros-kinetic-uuid-msgsr˜(asssuUpacmod_game_controlr™(}rš((h}r›(h}rœ(h]r(Uros/kinetic/pacmod_game_controlrž(assh ˆh }rŸ(h}r (h}r¡(h]r¢(Uros-kinetic-pacmod-game-controlr£(asssuUscan_to_cloud_converterr¤(}r¥((h}r¦(h}r§(h]r¨(Uros/kinetic/scan_toolsr©(assh ˆh }rª(h}r«(h}r¬(h]r­(U#ros-kinetic-scan-to-cloud-converterr®(asssuUcob_hardware_emulationr¯(}r°((h}r±(h}r²(h]r³(Uros/kinetic/cob_controlr´(assh ˆh }rµ(h}r¶(h}r·(h]r¸(U"ros-kinetic-cob-hardware-emulationr¹(asssuU librealsenserº(}r»((h}r¼(h}r½(h]r¾(Uros/kinetic/librealsenser¿(assh ˆh }rÀ(h}rÁ(h}rÂ(h]rÃ(Uros-kinetic-librealsenserÄ(asssuUyocs_waypoint_providerrÅ(}rÆ((h}rÇ(h}rÈ(h]rÉ(Uros/kinetic/yujin_ocsrÊ(assh ˆh }rË(h}rÌ(h}rÍ(h]rÎ(U"ros-kinetic-yocs-waypoint-providerrÏ(asssuUschunk_descriptionrÐ(}rÑ((h}rÒ(h}rÓ(h]rÔ(U#ros/kinetic/schunk_modular_roboticsrÕ(assh ˆh }rÖ(h}r×(h}rØ(h]rÙ(Uros-kinetic-schunk-descriptionrÚ(asssuUcob_pick_place_actionrÛ(}rÜ((h}rÝ(h}rÞ(h]rß(Uros/kinetic/cob_manipulationrà(assh ˆh }rá(h}râ(h}rã(h]rä(U!ros-kinetic-cob-pick-place-actionrå(asssuUnloptræ(}rç((h}rè(h}ré(h]rê(Uros/kinetic/jsk_3rdpartyrë(assh ˆh }rì(h}rí(h}rî(h]rï(Uros-kinetic-nloptrð(asssuUxiaoqiang_freenect_launchrñ(}rò((h}ró(h}rô(h]rõ(Uros/kinetic/xiaoqiangrö(assh ˆh }r÷(h}rø(h}rù(h]rú(U%ros-kinetic-xiaoqiang-freenect-launchrû(asssuUgrid_maprü(}rý((h}rþ(h}rÿ(h]r)Uros/kinetic/grid_mapr)assh ˆh }r)h}r)h}r)h]r)Uros-kinetic-grid-mapr)asssuUabb_irb2400_moveit_configr)}r)(h}r )h}r )h]r )Uros/kinetic/abbr )assh ˆh }r )h}r)h}r)h]r)U%ros-kinetic-abb-irb2400-moveit-configr)asssuU stdr_samplesr)}r)(h}r)h}r)h]r)Uros/kinetic/stdr_simulatorr)assh ˆh }r)h}r)h}r)h]r)Uros-kinetic-stdr-samplesr)asssuUsummit_x_commonr)}r)(h}r)h}r )h]r!)Uros/kinetic/summit_x_commonr")assh ˆh }r#)h}r$)h}r%)h]r&)Uros-kinetic-summit-x-commonr')asssuUindustrial_robot_clientr()}r))(h}r*)h}r+)h]r,)Uros/kinetic/industrial_corer-)assh ˆh }r.)h}r/)h}r0)h]r1)U#ros-kinetic-industrial-robot-clientr2)asssuUkobuki_bumper2pcr3)}r4)(h}r5)h}r6)h]r7)Uros/kinetic/kobukir8)assh ˆh }r9)h}r:)h}r;)h]r<)Uros-kinetic-kobuki-bumper2pcr=)asssuU!hector_worldmodel_geotiff_pluginsr>)}r?)(h}r@)h}rA)h]rB)Uros/kinetic/hector_worldmodelrC)assh ˆh }rD)h}rE)h}rF)h]rG)U-ros-kinetic-hector-worldmodel-geotiff-pluginsrH)asssuU phidgets_imurI)}rJ)(h}rK)h}rL)h]rM)Uros/kinetic/phidgets_driversrN)assh ˆh }rO)h}rP)h}rQ)h]rR)Uros-kinetic-phidgets-imurS)asssuUigvc_self_drive_gazebo_pluginsrT)}rU)(h}rV)h}rW)h]rX)Uros/kinetic/igvc_self_drive_simrY)assh ˆh }rZ)h}r[)h}r\)h]r])U*ros-kinetic-igvc-self-drive-gazebo-pluginsr^)asssuU openni_camerar_)}r`)(h}ra)h}rb)h]rc)Uros/kinetic/openni_camerard)assh ˆh }re)h}rf)h}rg)h]rh)Uros-kinetic-openni-camerari)asssuUflir_camera_driverrj)}rk)(h}rl)h}rm)h]rn)Uros/kinetic/flir_camera_driverro)assh ˆh }rp)h}rq)h}rr)h]rs)Uros-kinetic-flir-camera-driverrt)asssuUpr2ru)}rv)(h}rw)h}rx)h]ry)Uros/kinetic/pr2_metapackagesrz)assh ˆh }r{)h}r|)h}r})h]r~)Uros-kinetic-pr2r)asssuUfanuc_m900ia_supportr€)}r)(h}r‚)h}rƒ)h]r„)Uros/kinetic/fanucr…)assh ˆh }r†)h}r‡)h}rˆ)h]r‰)U ros-kinetic-fanuc-m900ia-supportrŠ)asssuUcob_environmentsr‹)}rŒ)(h}r)h}rŽ)h]r)Uros/kinetic/cob_environmentsr)assh ˆh }r‘)h}r’)h}r“)h]r”)Uros-kinetic-cob-environmentsr•)asssuU srv_toolsr–)}r—)(h}r˜)h}r™)h]rš)Uros/kinetic/srv_toolsr›)assh ˆh }rœ)h}r)h}rž)h]rŸ)Uros-kinetic-srv-toolsr )asssuUpr2_appsr¡)}r¢)(h}r£)h}r¤)h]r¥)Uros/kinetic/pr2_appsr¦)assh ˆh }r§)h}r¨)h}r©)h]rª)Uros-kinetic-pr2-appsr«)asssuU willow_mapsr¬)}r­)(h}r®)h}r¯)h]r°)Uros/kinetic/willow_mapsr±)assh ˆh }r²)h}r³)h}r´)h]rµ)Uros-kinetic-willow-mapsr¶)asssuUrtt_ros_integrationr·)}r¸)(h}r¹)h}rº)h]r»)Uros/kinetic/rtt_ros_integrationr¼)assh ˆh }r½)h}r¾)h}r¿)h]rÀ)Uros-kinetic-rtt-ros-integrationrÁ)asssuUrc_visard_driverrÂ)}rÃ)(h}rÄ)h}rÅ)h]rÆ)Uros/kinetic/rc_visardrÇ)assh ˆh }rÈ)h}rÉ)h}rÊ)h]rË)Uros-kinetic-rc-visard-driverrÌ)asssuU simple_armrÍ)}rÎ)(h}rÏ)h}rÐ)h]rÑ)Uros/kinetic/simple_armrÒ)assh ˆh }rÓ)h}rÔ)h}rÕ)h]rÖ)Uros-kinetic-simple-armr×)asssuUforce_torque_sensorrØ)}rÙ)(h}rÚ)h}rÛ)h]rÜ)Uros/kinetic/force_torque_sensorrÝ)assh ˆh }rÞ)h}rß)h}rà)h]rá)Uros-kinetic-force-torque-sensorrâ)asssuU romeo_controlrã)}rä)(h}rå)h}ræ)h]rç)Uros/kinetic/romeo_virtualrè)assh ˆh }ré)h}rê)h}rë)h]rì)Uros-kinetic-romeo-controlrí)asssuU khi_robotrî)}rï)(h}rð)h}rñ)h]rò)Uros/kinetic/khi_robotró)assh ˆh }rô)h}rõ)h}rö)h]r÷)Uros-kinetic-khi-robotrø)asssuUrobot_calibrationrù)}rú)(h}rû)h}rü)h]rý)Uros/kinetic/robot_calibrationrþ)assh ˆh }rÿ)h}r*h}r*h]r*Uros-kinetic-robot-calibrationr*asssuUnodelet_topic_toolsr*}r*(h}r*h}r*h]r*Uros/kinetic/nodelet_corer *assh ˆh }r *h}r *h}r *h]r *Uros-kinetic-nodelet-topic-toolsr*asssuUabb_irb6600_supportr*}r*(h}r*h}r*h]r*Uros/kinetic/abbr*assh ˆh }r*h}r*h}r*h]r*Uros-kinetic-abb-irb6600-supportr*asssuU rdl_benchmarkr*}r*(h}r*h}r*h]r*Uros/kinetic/rdlr*assh ˆh }r *h}r!*h}r"*h]r#*Uros-kinetic-rdl-benchmarkr$*asssuUnav2dr%*}r&*(h}r'*h}r(*h]r)*Uros/kinetic/navigation_2dr**assh ˆh }r+*h}r,*h}r-*h]r.*Uros-kinetic-nav2dr/*asssuUimage_pipeliner0*}r1*(h}r2*h}r3*h]r4*Uros/kinetic/image_pipeliner5*assh ˆh }r6*h}r7*h}r8*h]r9*Uros-kinetic-image-pipeliner:*asssuU ecto_opencvr;*}r<*(h}r=*h}r>*h]r?*Uros/kinetic/ecto_opencvr@*assh ˆh }rA*h}rB*h}rC*h]rD*Uros-kinetic-ecto-opencvrE*asssuU astra_launchrF*}rG*(h}rH*h}rI*h]rJ*Uros/kinetic/astra_launchrK*assh ˆh }rL*h}rM*h}rN*h]rO*Uros-kinetic-astra-launchrP*asssuUcob_navigation_globalrQ*}rR*(h}rS*h}rT*h]rU*Uros/kinetic/cob_navigationrV*assh ˆh }rW*h}rX*h}rY*h]rZ*U!ros-kinetic-cob-navigation-globalr[*asssuU eus_assimpr\*}r]*(h}r^*h}r_*h]r`*Uros/kinetic/jsk_model_toolsra*assh ˆh }rb*h}rc*h}rd*h]re*Uros-kinetic-eus-assimprf*asssuUcob_gazebo_ros_controlrg*}rh*(h}ri*h}rj*h]rk*Uros/kinetic/cob_gazebo_pluginsrl*assh ˆh }rm*h}rn*h}ro*h]rp*U"ros-kinetic-cob-gazebo-ros-controlrq*asssuU roch_controlrr*}rs*(h}rt*h}ru*h]rv*Uros/kinetic/roch_robotrw*assh ˆh }rx*h}ry*h}rz*h]r{*Uros-kinetic-roch-controlr|*asssuUdataspeed_pds_canr}*}r~*(h}r*h}r€*h]r*Uros/kinetic/dataspeed_pdsr‚*assh ˆh }rƒ*h}r„*h}r…*h]r†*Uros-kinetic-dataspeed-pds-canr‡*asssuUrtt_diagnostic_msgsrˆ*}r‰*(h}rŠ*h}r‹*h]rŒ*Uros/kinetic/rtt_ros_integrationr*assh ˆh }rŽ*h}r*h}r*h]r‘*Uros-kinetic-rtt-diagnostic-msgsr’*asssuUexotica_collision_scene_fclr“*}r”*(h}r•*h}r–*h]r—*Uros/kinetic/exoticar˜*assh ˆh }r™*h}rš*h}r›*h]rœ*U'ros-kinetic-exotica-collision-scene-fclr*asssuU ecl_licenserž*}rŸ*(h}r *h}r¡*h]r¢*Uros/kinetic/ecl_toolsr£*assh ˆh }r¤*h}r¥*h}r¦*h]r§*Uros-kinetic-ecl-licenser¨*asssuUrb1_base_descriptionr©*}rª*(h}r«*h}r¬*h]r­*Uros/kinetic/rb1_base_commonr®*assh ˆh }r¯*h}r°*h}r±*h]r²*U ros-kinetic-rb1-base-descriptionr³*asssuUraw_descriptionr´*}rµ*(h}r¶*h}r·*h]r¸*Uros/kinetic/cob_commonr¹*assh ˆh }rº*h}r»*h}r¼*h]r½*Uros-kinetic-raw-descriptionr¾*asssuU thormang3_opcr¿*}rÀ*(h}rÁ*h}rÂ*h]rÃ*Uros/kinetic/thormang3_opcrÄ*assh ˆh }rÅ*h}rÆ*h}rÇ*h]rÈ*Uros-kinetic-thormang3-opcrÉ*asssuU pepper_meshesrÊ*}rË*(h}rÌ*h}rÍ*h]rÎ*Uros/kinetic/pepper_meshesrÏ*assh ˆh }rÐ*h}rÑ*h}rÒ*h]rÓ*Uros-kinetic-pepper-meshesrÔ*asssuUworld_canvas_client_cpprÕ*}rÖ*(h}r×*h}rØ*h]rÙ*Uros/kinetic/world_canvas_libsrÚ*assh ˆh }rÛ*h}rÜ*h}rÝ*h]rÞ*U#ros-kinetic-world-canvas-client-cpprß*asssuU rbcar_controlrà*}rá*(h}râ*h}rã*h]rä*Uros/kinetic/rbcar_simrå*assh ˆh }ræ*h}rç*h}rè*h]ré*Uros-kinetic-rbcar-controlrê*asssuUturtlebot3_autorace_corerë*}rì*(h}rí*h}rî*h]rï*Uros/kinetic/turtlebot3_autoracerð*assh ˆh }rñ*h}rò*h}ró*h]rô*U$ros-kinetic-turtlebot3-autorace-corerõ*asssuUlog4cpprö*}r÷*(h}rø*h}rù*h]rú*Uros/kinetic/log4cpprû*assh ˆh }rü*h}rý*h}rþ*h]rÿ*Uros-kinetic-log4cppr+asssuu(Uarm_navigation_msgsr+}r+(h}r+h}r+h]r+Uros/kinetic/openrave_planningr+assh ˆh }r+h}r+h}r +h]r +Uros-kinetic-arm-navigation-msgsr +asssuUsummit_x_robot_controlr +}r +(h}r+h}r+h]r+Uros/kinetic/summit_x_simr+assh ˆh }r+h}r+h}r+h]r+U"ros-kinetic-summit-x-robot-controlr+asssuUwarthog_desktopr+}r+(h}r+h}r+h]r+Uros/kinetic/warthog_desktopr+assh ˆh }r+h}r+h}r+h]r +Uros-kinetic-warthog-desktopr!+asssuU kobuki_corer"+}r#+(h}r$+h}r%+h]r&+Uros/kinetic/kobuki_corer'+assh ˆh }r(+h}r)+h}r*+h]r++Uros-kinetic-kobuki-corer,+asssuUxmlrpcppr-+}r.+(h}r/+h}r0+h]r1+Uros/kinetic/ros_commr2+assh ˆh }r3+h}r4+h}r5+h]r6+Uros-kinetic-xmlrpcppr7+asssuU gl_dependencyr8+}r9+(h}r:+h}r;+h]r<+Uros/kinetic/gl_dependencyr=+assh ˆh }r>+h}r?+h}r@+h]rA+Uros-kinetic-gl-dependencyrB+asssuUhandle_detectorrC+}rD+(h}rE+h}rF+h]rG+Uros/kinetic/handle_detectorrH+assh ˆh }rI+h}rJ+h}rK+h]rL+Uros-kinetic-handle-detectorrM+asssuUkobuki_controller_tutorialrN+}rO+(h}rP+h}rQ+h]rR+Uros/kinetic/kobukirS+assh ˆh }rT+h}rU+h}rV+h]rW+U&ros-kinetic-kobuki-controller-tutorialrX+asssuUopen_manipulator_ar_markersrY+}rZ+(h}r[+h}r\+h]r]+U(ros/kinetic/open_manipulator_perceptionsr^+assh ˆh }r_+h}r`+h}ra+h]rb+U'ros-kinetic-open-manipulator-ar-markersrc+asssuUcpr_multimaster_toolsrd+}re+(h}rf+h}rg+h]rh+U!ros/kinetic/cpr_multimaster_toolsri+assh ˆh }rj+h}rk+h}rl+h]rm+U!ros-kinetic-cpr-multimaster-toolsrn+asssuUxiaoqiang_freenectro+}rp+(h}rq+h}rr+h]rs+Uros/kinetic/xiaoqiangrt+assh ˆh }ru+h}rv+h}rw+h]rx+Uros-kinetic-xiaoqiang-freenectry+asssuUcob_collision_monitorrz+}r{+(h}r|+h}r}+h]r~+Uros/kinetic/cob_manipulationr+assh ˆh }r€+h}r+h}r‚+h]rƒ+U!ros-kinetic-cob-collision-monitorr„+asssuU simple_driver…+}r†+(h}r‡+h}rˆ+h]r‰+Uros/kinetic/simple_driverŠ+assh ˆh }r‹+h}rŒ+h}r+h]rŽ+Uros-kinetic-simple-driver+asssuU py_trees_msgsr+}r‘+(h}r’+h}r“+h]r”+Uros/kinetic/py_trees_msgsr•+assh ˆh }r–+h}r—+h}r˜+h]r™+Uros-kinetic-py-trees-msgsrš+asssuUecl_filesystemr›+}rœ+(h}r+h}rž+h]rŸ+Uros/kinetic/ecl_corer +assh ˆh }r¡+h}r¢+h}r£+h]r¤+Uros-kinetic-ecl-filesystemr¥+asssuUstdr_simulatorr¦+}r§+(h}r¨+h}r©+h]rª+Uros/kinetic/stdr_simulatorr«+assh ˆh }r¬+h}r­+h}r®+h]r¯+Uros-kinetic-stdr-simulatorr°+asssuUroch_vizr±+}r²+(h}r³+h}r´+h]rµ+Uros/kinetic/roch_vizr¶+assh ˆh }r·+h}r¸+h}r¹+h]rº+Uros-kinetic-roch-vizr»+asssuU libuvc_rosr¼+}r½+(h}r¾+h}r¿+h]rÀ+Uros/kinetic/libuvc_rosrÁ+assh ˆh }rÂ+h}rÃ+h}rÄ+h]rÅ+Uros-kinetic-libuvc-rosrÆ+asssuU nao_bringuprÇ+}rÈ+(h}rÉ+h}rÊ+h]rË+Uros/kinetic/nao_robotrÌ+assh ˆh }rÍ+h}rÎ+h}rÏ+h]rÐ+Uros-kinetic-nao-bringuprÑ+asssuU rbcar_padrÒ+}rÓ+(h}rÔ+h}rÕ+h]rÖ+Uros/kinetic/rbcar_commonr×+assh ˆh }rØ+h}rÙ+h}rÚ+h]rÛ+Uros-kinetic-rbcar-padrÜ+asssuUsingle_joint_position_actionrÝ+}rÞ+(h}rß+h}rà+h]rá+Uros/kinetic/pr2_controllersrâ+assh ˆh }rã+h}rä+h}rå+h]ræ+U(ros-kinetic-single-joint-position-actionrç+asssuUclear_costmap_recoveryrè+}ré+(h}rê+h}rë+h]rì+Uros/kinetic/navigationrí+assh ˆh }rî+h}rï+h}rð+h]rñ+U"ros-kinetic-clear-costmap-recoveryrò+asssuUturtlebot3_exampleró+}rô+(h}rõ+h}rö+h]r÷+Uros/kinetic/turtlebot3rø+assh ˆh }rù+h}rú+h}rû+h]rü+Uros-kinetic-turtlebot3-examplerý+asssuUpyrosrþ+}rÿ+(h}r,h}r,h]r,Uros/kinetic/pyrosr,assh ˆh }r,h}r,h}r,h]r,Uros-kinetic-pyrosr,asssuU fzi_icl_corer ,}r ,(h}r ,h}r ,h]r ,Uros/kinetic/fzi_icl_corer,assh ˆh }r,h}r,h}r,h]r,Uros-kinetic-fzi-icl-corer,asssuU slime_rosr,}r,(h}r,h}r,h]r,Uros/kinetic/ros_emacs_utilsr,assh ˆh }r,h}r,h}r,h]r,Uros-kinetic-slime-rosr,asssuUyocs_diff_drive_pose_controllerr,}r ,(h}r!,h}r",h]r#,Uros/kinetic/yujin_ocsr$,assh ˆh }r%,h}r&,h}r',h]r(,U+ros-kinetic-yocs-diff-drive-pose-controllerr),asssuUmultisense_descriptionr*,}r+,(h}r,,h}r-,h]r.,Uros/kinetic/multisense_rosr/,assh ˆh }r0,h}r1,h}r2,h]r3,U"ros-kinetic-multisense-descriptionr4,asssuU rtt_rosclockr5,}r6,(h}r7,h}r8,h]r9,Uros/kinetic/rtt_ros_integrationr:,assh ˆh }r;,h}r<,h}r=,h]r>,Uros-kinetic-rtt-rosclockr?,asssuU cost_map_msgsr@,}rA,(h}rB,h}rC,h]rD,Uros/kinetic/cost_maprE,assh ˆh }rF,h}rG,h}rH,h]rI,Uros-kinetic-cost-map-msgsrJ,asssuU mir_driverrK,}rL,(h}rM,h}rN,h]rO,Uros/kinetic/mir_robotrP,assh ˆh }rQ,h}rR,h}rS,h]rT,Uros-kinetic-mir-driverrU,asssuUwarthog_simulatorrV,}rW,(h}rX,h}rY,h]rZ,Uros/kinetic/warthog_simulatorr[,assh ˆh }r\,h}r],h}r^,h]r_,Uros-kinetic-warthog-simulatorr`,asssuUexotica_val_descriptionra,}rb,(h}rc,h}rd,h]re,U#ros/kinetic/exotica_val_descriptionrf,assh ˆh }rg,h}rh,h}ri,h]rj,U#ros-kinetic-exotica-val-descriptionrk,asssuUturtlebot_navigationrl,}rm,(h}rn,h}ro,h]rp,Uros/kinetic/turtlebot_appsrq,assh ˆh }rr,h}rs,h}rt,h]ru,U ros-kinetic-turtlebot-navigationrv,asssuU cob_externrw,}rx,(h}ry,h}rz,h]r{,Uros/kinetic/cob_externr|,assh ˆh }r},h}r~,h}r,h]r€,Uros-kinetic-cob-externr,asssuUdynamixel_workbench_toolboxr‚,}rƒ,(h}r„,h}r…,h]r†,Uros/kinetic/dynamixel-workbenchr‡,assh ˆh }rˆ,h}r‰,h}rŠ,h]r‹,U'ros-kinetic-dynamixel-workbench-toolboxrŒ,asssuUactionlib_tutorialsr,}rŽ,(h}r,h}r,h]r‘,Uros/kinetic/common_tutorialsr’,assh ˆh }r“,h}r”,h}r•,h]r–,Uros-kinetic-actionlib-tutorialsr—,asssuUcare_o_bot_desktopr˜,}r™,(h}rš,h}r›,h]rœ,Uros/kinetic/care_o_botr,assh ˆh }rž,h}rŸ,h}r ,h]r¡,Uros-kinetic-care-o-bot-desktopr¢,asssuUturtle_actionlibr£,}r¤,(h}r¥,h}r¦,h]r§,Uros/kinetic/common_tutorialsr¨,assh ˆh }r©,h}rª,h}r«,h]r¬,Uros-kinetic-turtle-actionlibr­,asssuU ksql_airportr®,}r¯,(h}r°,h}r±,h]r²,Uros/kinetic/uav_testingr³,assh ˆh }r´,h}rµ,h}r¶,h]r·,Uros-kinetic-ksql-airportr¸,asssuUdataspeed_ulc_canr¹,}rº,(h}r»,h}r¼,h]r½,Uros/kinetic/dataspeed_ulc_rosr¾,assh ˆh }r¿,h}rÀ,h}rÁ,h]rÂ,Uros-kinetic-dataspeed-ulc-canrÃ,asssuUdynamixel_tutorialsrÄ,}rÅ,(h}rÆ,h}rÇ,h]rÈ,Uros/kinetic/dynamixel_motorrÉ,assh ˆh }rÊ,h}rË,h}rÌ,h]rÍ,Uros-kinetic-dynamixel-tutorialsrÎ,asssuUlibqt_concurrentrÏ,}rÐ,(h}rÑ,h}rÒ,h]rÓ,Uros/kinetic/qt_metapackagesrÔ,assh ˆh }rÕ,h}rÖ,h}r×,h]rØ,Uros-kinetic-libqt-concurrentrÙ,asssuUopenhrp3rÚ,}rÛ,(h}rÜ,h}rÝ,h]rÞ,Uros/kinetic/openhrp3rß,assh ˆh }rà,h}rá,h}râ,h]rã,Uros-kinetic-openhrp3rä,asssuUthormang3_action_modulerå,}ræ,(h}rç,h}rè,h]ré,Uros/kinetic/thormang3_mpcrê,assh ˆh }rë,h}rì,h}rí,h]rî,U#ros-kinetic-thormang3-action-modulerï,asssuUdataspeed_can_msg_filtersrð,}rñ,(h}rò,h}ró,h]rô,Uros/kinetic/dataspeed_canrõ,assh ˆh }rö,h}r÷,h}rø,h]rù,U%ros-kinetic-dataspeed-can-msg-filtersrú,asssuUecl_convertersrû,}rü,(h}rý,h}rþ,h]rÿ,Uros/kinetic/ecl_corer-assh ˆh }r-h}r-h}r-h]r-Uros-kinetic-ecl-convertersr-asssuU ati_ft_sensorr-}r-(h}r-h}r -h]r -Uros/kinetic/thormang3_mpcr -assh ˆh }r -h}r -h}r-h]r-Uros-kinetic-ati-ft-sensorr-asssuU adi_driverr-}r-(h}r-h}r-h]r-Uros/kinetic/adi_driverr-assh ˆh }r-h}r-h}r-h]r-Uros-kinetic-adi-driverr-asssuUview_controller_msgsr-}r-(h}r-h}r-h]r -U ros/kinetic/view_controller_msgsr!-assh ˆh }r"-h}r#-h}r$-h]r%-U ros-kinetic-view-controller-msgsr&-asssuUinteractive_markersr'-}r(-(h}r)-h}r*-h]r+-Uros/kinetic/interactive_markersr,-assh ˆh }r--h}r.-h}r/-h]r0-Uros-kinetic-interactive-markersr1-asssuUmoveit_config_m1013r2-}r3-(h}r4-h}r5-h]r6-Uros/kinetic/doosan_robotr7-assh ˆh }r8-h}r9-h}r:-h]r;-Uros-kinetic-moveit-config-m1013r<-asssuUjackal_descriptionr=-}r>-(h}r?-h}r@-h]rA-Uros/kinetic/jackalrB-assh ˆh }rC-h}rD-h}rE-h]rF-Uros-kinetic-jackal-descriptionrG-asssuUnovatel_gps_msgsrH-}rI-(h}rJ-h}rK-h]rL-Uros/kinetic/novatel_gps_driverrM-assh ˆh }rN-h}rO-h}rP-h]rQ-Uros-kinetic-novatel-gps-msgsrR-asssuUpr2_ethercat_driversrS-}rT-(h}rU-h}rV-h]rW-U ros/kinetic/pr2_ethercat_driversrX-assh ˆh }rY-h}rZ-h}r[-h]r\-U ros-kinetic-pr2-ethercat-driversr]-asssuUrsm_rqt_pluginsr^-}r_-(h}r`-h}ra-h]rb-Uros/kinetic/robot_statemachinerc-assh ˆh }rd-h}re-h}rf-h]rg-Uros-kinetic-rsm-rqt-pluginsrh-asssuUjsk_pcl_ros_utilsri-}rj-(h}rk-h}rl-h]rm-Uros/kinetic/jsk_recognitionrn-assh ˆh }ro-h}rp-h}rq-h]rr-Uros-kinetic-jsk-pcl-ros-utilsrs-asssuUopen_manipulator_with_tb3_toolsrt-}ru-(h}rv-h}rw-h]rx-U%ros/kinetic/open_manipulator_with_tb3ry-assh ˆh }rz-h}r{-h}r|-h]r}-U+ros-kinetic-open-manipulator-with-tb3-toolsr~-asssuUflask_reverse_proxyr-}r€-(h}r-h}r‚-h]rƒ-Uros/kinetic/flask_reverse_proxyr„-assh ˆh }r…-h}r†-h}r‡-h]rˆ-Uros-kinetic-flask-reverse-proxyr‰-asssuUsummit_xl_robot_controlrŠ-}r‹-(h}rŒ-h}r-h]rŽ-Uros/kinetic/summit_xl_simr-assh ˆh }r-h}r‘-h}r’-h]r“-U#ros-kinetic-summit-xl-robot-controlr”-asssuU service_toolsr•-}r–-(h}r—-h}r˜-h]r™-Uros/kinetic/cob_command_toolsrš-assh ˆh }r›-h}rœ-h}r-h]rž-Uros-kinetic-service-toolsrŸ-asssuU web_interfacer -}r¡-(h}r¢-h}r£-h]r¤-Uros/kinetic/web_interfacer¥-assh ˆh }r¦-h}r§-h}r¨-h]r©-Uros-kinetic-web-interfacerª-asssuUigvc_self_drive_simr«-}r¬-(h}r­-h}r®-h]r¯-Uros/kinetic/igvc_self_drive_simr°-assh ˆh }r±-h}r²-h}r³-h]r´-Uros-kinetic-igvc-self-drive-simrµ-asssuUpr2_controller_interfacer¶-}r·-(h}r¸-h}r¹-h]rº-Uros/kinetic/pr2_mechanismr»-assh ˆh }r¼-h}r½-h}r¾-h]r¿-U$ros-kinetic-pr2-controller-interfacerÀ-asssuUcodec_image_transportrÁ-}rÂ-(h}rÃ-h}rÄ-h]rÅ-U!ros/kinetic/codec_image_transportrÆ-assh ˆh }rÇ-h}rÈ-h}rÉ-h]rÊ-U!ros-kinetic-codec-image-transportrË-asssuU iot_bridgerÌ-}rÍ-(h}rÎ-h}rÏ-h]rÐ-Uros/kinetic/iot_bridgerÑ-assh ˆh }rÒ-h}rÓ-h}rÔ-h]rÕ-Uros-kinetic-iot-bridgerÖ-asssuUcertifir×-}rØ-(h}rÙ-h}rÚ-h]rÛ-Uros/kinetic/certifirÜ-assh ˆh }rÝ-h}rÞ-h}rß-h]rà-Uros-kinetic-certifirá-asssuUopenraverâ-}rã-(h}rä-h}rå-h]ræ-Uros/kinetic/openrave_planningrç-assh ˆh }rè-h}ré-h}rê-h]rë-Uros-kinetic-openraverì-asssuUros_emacs_utilsrí-}rî-(h}rï-h}rð-h]rñ-Uros/kinetic/ros_emacs_utilsrò-assh ˆh }ró-h}rô-h}rõ-h]rö-Uros-kinetic-ros-emacs-utilsr÷-asssuUturtlebot3_msgsrø-}rù-(h}rú-h}rû-h]rü-Uros/kinetic/turtlebot3_msgsrý-assh ˆh }rþ-h}rÿ-h}r.h]r.Uros-kinetic-turtlebot3-msgsr.asssuUkatana_arm_gazebor.}r.(h}r.h}r.h]r.Uros/kinetic/katana_driverr.assh ˆh }r .h}r .h}r .h]r .Uros-kinetic-katana-arm-gazebor .asssuUcob_simulationr.}r.(h}r.h}r.h]r.Uros/kinetic/cob_simulationr.assh ˆh }r.h}r.h}r.h]r.Uros-kinetic-cob-simulationr.asssuUswarm_functionsr.}r.(h}r.h}r.h]r.Uros/kinetic/swarm_functionsr.assh ˆh }r.h}r .h}r!.h]r".Uros-kinetic-swarm-functionsr#.asssuUtf2_pyr$.}r%.(h}r&.h}r'.h]r(.Uros/kinetic/geometry2r).assh ˆh }r*.h}r+.h}r,.h]r-.Uros-kinetic-tf2-pyr..asssuUcan_msgsr/.}r0.(h}r1.h}r2.h]r3.Uros/kinetic/ros_canopenr4.assh ˆh }r5.h}r6.h}r7.h]r8.Uros-kinetic-can-msgsr9.asssuUnao_descriptionr:.}r;.(h}r<.h}r=.h]r>.Uros/kinetic/nao_robotr?.assh ˆh }r@.h}rA.h}rB.h]rC.Uros-kinetic-nao-descriptionrD.asssuUpython-ftputilrE.}rF.(h}rG.h}rH.h]rI.Uros/kinetic/python-ftputilrJ.assh ˆh }rK.h}rL.h}rM.h]rN.Uros-kinetic-python-ftputilrO.asssuUrocon_app_manager_msgsrP.}rQ.(h}rR.h}rS.h]rT.Uros/kinetic/rocon_msgsrU.assh ˆh }rV.h}rW.h}rX.h]rY.U"ros-kinetic-rocon-app-manager-msgsrZ.asssuUhomer_robbie_architecturer[.}r\.(h}r].h}r^.h]r_.U%ros/kinetic/homer_robbie_architecturer`.assh ˆh }ra.h}rb.h}rc.h]rd.U%ros-kinetic-homer-robbie-architecturere.asssuUrobotis_devicerf.}rg.(h}rh.h}ri.h]rj.Uros/kinetic/robotis_frameworkrk.assh ˆh }rl.h}rm.h}rn.h]ro.Uros-kinetic-robotis-devicerp.asssuUtrajectory_trackerrq.}rr.(h}rs.h}rt.h]ru.Uros/kinetic/neonavigationrv.assh ˆh }rw.h}rx.h}ry.h]rz.Uros-kinetic-trajectory-trackerr{.asssuUrosrtr|.}r}.(h}r~.h}r.h]r€.Uros/kinetic/ros_realtimer.assh ˆh }r‚.h}rƒ.h}r„.h]r….Uros-kinetic-rosrtr†.asssuU rocon_hubr‡.}rˆ.(h}r‰.h}rŠ.h]r‹.Uros/kinetic/rocon_multimasterrŒ.assh ˆh }r.h}rŽ.h}r.h]r.Uros-kinetic-rocon-hubr‘.asssuUgx_soundr’.}r“.(h}r”.h}r•.h]r–.Uros/kinetic/gx_soundr—.assh ˆh }r˜.h}r™.h}rš.h]r›.Uros-kinetic-gx-soundrœ.asssuUminasr.}rž.(h}rŸ.h}r .h]r¡.Uros/kinetic/minasr¢.assh ˆh }r£.h}r¤.h}r¥.h]r¦.Uros-kinetic-minasr§.asssuU ros_apache2r¨.}r©.(h}rª.h}r«.h]r¬.Uros/kinetic/web_interfacer­.assh ˆh }r®.h}r¯.h}r°.h]r±.Uros-kinetic-ros-apache2r².asssuUmrpt_tutorialsr³.}r´.(h}rµ.h}r¶.h]r·.Uros/kinetic/mrpt_navigationr¸.assh ˆh }r¹.h}rº.h}r».h]r¼.Uros-kinetic-mrpt-tutorialsr½.asssuUqb_device_srvsr¾.}r¿.(h}rÀ.h}rÁ.h]rÂ.Uros/kinetic/qb_devicerÃ.assh ˆh }rÄ.h}rÅ.h}rÆ.h]rÇ.Uros-kinetic-qb-device-srvsrÈ.asssuUrosparam_shortcutsrÉ.}rÊ.(h}rË.h}rÌ.h]rÍ.Uros/kinetic/rosparam_shortcutsrÎ.assh ˆh }rÏ.h}rÐ.h}rÑ.h]rÒ.Uros-kinetic-rosparam-shortcutsrÓ.asssuUfanuc_m710ic_supportrÔ.}rÕ.(h}rÖ.h}r×.h]rØ.Uros/kinetic/fanucrÙ.assh ˆh }rÚ.h}rÛ.h}rÜ.h]rÝ.U ros-kinetic-fanuc-m710ic-supportrÞ.asssuU husky_bringuprß.}rà.(h}rá.h}râ.h]rã.Uros/kinetic/huskyrä.assh ˆh }rå.h}ræ.h}rç.h]rè.Uros-kinetic-husky-bringupré.asssuUgrid_map_visualizationrê.}rë.(h}rì.h}rí.h]rî.Uros/kinetic/grid_maprï.assh ˆh }rð.h}rñ.h}rò.h]ró.U"ros-kinetic-grid-map-visualizationrô.asssuUrqt_webrõ.}rö.(h}r÷.h}rø.h]rù.Uros/kinetic/rqt_webrú.assh ˆh }rû.h}rü.h}rý.h]rþ.Uros-kinetic-rqt-webrÿ.asssuUinnok_heros_driverr/}r/(h}r/h}r/h]r/Uros/kinetic/innok_heros_driverr/assh ˆh }r/h}r/h}r/h]r /Uros-kinetic-innok-heros-driverr /asssuUeband_local_plannerr /}r /(h}r /h}r/h]r/Uros/kinetic/eband_local_plannerr/assh ˆh }r/h}r/h}r/h]r/Uros-kinetic-eband-local-plannerr/asssuUfetchit_challenger/}r/(h}r/h}r/h]r/Uros/kinetic/fetch_gazebor/assh ˆh }r/h}r/h}r/h]r/Uros-kinetic-fetchit-challenger /asssuU explore_liter!/}r"/(h}r#/h}r$/h]r%/Uros/kinetic/m_explorer&/assh ˆh }r'/h}r(/h}r)/h]r*/Uros-kinetic-explore-liter+/asssuUnao_appsr,/}r-/(h}r./h}r//h]r0/Uros/kinetic/nao_robotr1/assh ˆh }r2/h}r3/h}r4/h]r5/Uros-kinetic-nao-appsr6/asssuUposedetection_msgsr7/}r8/(h}r9/h}r:/h]r;/Uros/kinetic/jsk_common_msgsr/h}r?/h]r@/Uros-kinetic-posedetection-msgsrA/asssuUstatistics_msgsrB/}rC/(h}rD/h}rE/h]rF/U#ros/kinetic/pointgrey_camera_driverrG/assh ˆh }rH/h}rI/h}rJ/h]rK/Uros-kinetic-statistics-msgsrL/asssuU qt_gui_corerM/}rN/(h}rO/h}rP/h]rQ/Uros/kinetic/qt_gui_corerR/assh ˆh }rS/h}rT/h}rU/h]rV/Uros-kinetic-qt-gui-corerW/asssuUcanopen_chain_noderX/}rY/(h}rZ/h}r[/h]r\/Uros/kinetic/ros_canopenr]/assh ˆh }r^/h}r_/h}r`/h]ra/Uros-kinetic-canopen-chain-noderb/asssuUsmp_rosrc/}rd/(h}re/h}rf/h]rg/Uros/kinetic/smp_rosrh/assh ˆh }ri/h}rj/h}rk/h]rl/Uros-kinetic-smp-rosrm/asssuUoctomap_serverrn/}ro/(h}rp/h}rq/h]rr/Uros/kinetic/octomap_mappingrs/assh ˆh }rt/h}ru/h}rv/h]rw/Uros-kinetic-octomap-serverrx/asssuUnextage_moveit_configry/}rz/(h}r{/h}r|/h]r}/Uros/kinetic/rtmros_nextager~/assh ˆh }r/h}r€/h}r/h]r‚/U!ros-kinetic-nextage-moveit-configrƒ/asssuU md49_messagesr„/}r…/(h}r†/h}r‡/h]rˆ/U ros/kinetic/md49_base_controllerr‰/assh ˆh }rŠ/h}r‹/h}rŒ/h]r/Uros-kinetic-md49-messagesrŽ/asssuU jsk_commonr/}r/(h}r‘/h}r’/h]r“/Uros/kinetic/jsk_commonr”/assh ˆh }r•/h}r–/h}r—/h]r˜/Uros-kinetic-jsk-commonr™/asssuUmavlinkrš/}r›/(h}rœ/h}r/h]rž/Uros/kinetic/mavlinkrŸ/assh ˆh }r /h}r¡/h}r¢/h]r£/Uros-kinetic-mavlinkr¤/asssuUplanner_cspacer¥/}r¦/(h}r§/h}r¨/h]r©/Uros/kinetic/neonavigationrª/assh ˆh }r«/h}r¬/h}r­/h]r®/Uros-kinetic-planner-cspacer¯/asssuU ros_pytestr°/}r±/(h}r²/h}r³/h]r´/Uros/kinetic/ros_pytestrµ/assh ˆh }r¶/h}r·/h}r¸/h]r¹/Uros-kinetic-ros-pytestrº/asssuUrosbridge_suiter»/}r¼/(h}r½/h}r¾/h]r¿/Uros/kinetic/rosbridge_suiterÀ/assh ˆh }rÁ/h}rÂ/h}rÃ/h]rÄ/Uros-kinetic-rosbridge-suiterÅ/asssuUrobot_setup_tf_tutorialrÆ/}rÇ/(h}rÈ/h}rÉ/h]rÊ/U ros/kinetic/navigation_tutorialsrË/assh ˆh }rÌ/h}rÍ/h}rÎ/h]rÏ/U#ros-kinetic-robot-setup-tf-tutorialrÐ/asssuU husky_robotrÑ/}rÒ/(h}rÓ/h}rÔ/h]rÕ/Uros/kinetic/huskyrÖ/assh ˆh }r×/h}rØ/h}rÙ/h]rÚ/Uros-kinetic-husky-robotrÛ/asssuUnavigation_layersrÜ/}rÝ/(h}rÞ/h}rß/h]rà/Uros/kinetic/navigation_layersrá/assh ˆh }râ/h}rã/h}rä/h]rå/Uros-kinetic-navigation-layersræ/asssuUdenso_robot_controlrç/}rè/(h}ré/h}rê/h]rë/Uros/kinetic/denso_robot_rosrì/assh ˆh }rí/h}rî/h}rï/h]rð/Uros-kinetic-denso-robot-controlrñ/asssuU roslaunchrò/}ró/(h}rô/h}rõ/h]rö/Uros/kinetic/ros_commr÷/assh ˆh }rø/h}rù/h}rú/h]rû/Uros-kinetic-roslaunchrü/asssuUdr_baserý/}rþ/(h}rÿ/h}r0h]r0Uros/kinetic/dr_baser0assh ˆh }r0h}r0h}r0h]r0Uros-kinetic-dr-baser0asssuUhsr_descriptionr0}r 0(h}r 0h}r 0h]r 0Uros/kinetic/hsr_descriptionr 0assh ˆh }r0h}r0h}r0h]r0Uros-kinetic-hsr-descriptionr0asssuUlaser_pipeliner0}r0(h}r0h}r0h]r0Uros/kinetic/laser_pipeliner0assh ˆh }r0h}r0h}r0h]r0Uros-kinetic-laser-pipeliner0asssuUopenslam_gmappingr0}r0(h}r 0h}r!0h]r"0Uros/kinetic/openslam_gmappingr#0assh ˆh }r$0h}r%0h}r&0h]r'0Uros-kinetic-openslam-gmappingr(0asssuUxiaoqiang_monitorr)0}r*0(h}r+0h}r,0h]r-0Uros/kinetic/xiaoqiangr.0assh ˆh }r/0h}r00h}r10h]r20Uros-kinetic-xiaoqiang-monitorr30asssuU rbcar_gazebor40}r50(h}r60h}r70h]r80Uros/kinetic/rbcar_simr90assh ˆh }r:0h}r;0h}r<0h]r=0Uros-kinetic-rbcar-gazebor>0asssuU imagesiftr?0}r@0(h}rA0h}rB0h]rC0Uros/kinetic/jsk_recognitionrD0assh ˆh }rE0h}rF0h}rG0h]rH0Uros-kinetic-imagesiftrI0asssuUethercat_grantrJ0}rK0(h}rL0h}rM0h]rN0Uros/kinetic/ethercat_grantrO0assh ˆh }rP0h}rQ0h}rR0h]rS0Uros-kinetic-ethercat-grantrT0asssuU move_basicrU0}rV0(h}rW0h}rX0h]rY0Uros/kinetic/move_basicrZ0assh ˆh }r[0h}r\0h}r]0h]r^0Uros-kinetic-move-basicr_0asssuU image_viewr`0}ra0(h}rb0h}rc0h]rd0Uros/kinetic/image_pipelinere0assh ˆh }rf0h}rg0h}rh0h]ri0Uros-kinetic-image-viewrj0asssuU mir_robotrk0}rl0(h}rm0h}rn0h]ro0Uros/kinetic/mir_robotrp0assh ˆh }rq0h}rr0h}rs0h]rt0Uros-kinetic-mir-robotru0asssuUjog_armrv0}rw0(h}rx0h}ry0h]rz0Uros/kinetic/jog_armr{0assh ˆh }r|0h}r}0h}r~0h]r0Uros-kinetic-jog-armr€0asssuUrocon_tutorial_msgsr0}r‚0(h}rƒ0h}r„0h]r…0Uros/kinetic/rocon_msgsr†0assh ˆh }r‡0h}rˆ0h}r‰0h]rŠ0Uros-kinetic-rocon-tutorial-msgsr‹0asssuUpointcloud_to_laserscanrŒ0}r0(h}rŽ0h}r0h]r0U#ros/kinetic/pointcloud_to_laserscanr‘0assh ˆh }r’0h}r“0h}r”0h]r•0U#ros-kinetic-pointcloud-to-laserscanr–0asssuUcontroller_manager_testsr—0}r˜0(h}r™0h}rš0h]r›0Uros/kinetic/ros_controlrœ0assh ˆh }r0h}rž0h}rŸ0h]r 0U$ros-kinetic-controller-manager-testsr¡0asssuUtuw_airskin_msgsr¢0}r£0(h}r¤0h}r¥0h]r¦0Uros/kinetic/tuw_msgsr§0assh ˆh }r¨0h}r©0h}rª0h]r«0Uros-kinetic-tuw-airskin-msgsr¬0asssuUhusky_navigationr­0}r®0(h}r¯0h}r°0h]r±0Uros/kinetic/huskyr²0assh ˆh }r³0h}r´0h}rµ0h]r¶0Uros-kinetic-husky-navigationr·0asssuUnavfnr¸0}r¹0(h}rº0h}r»0h]r¼0Uros/kinetic/navigationr½0assh ˆh }r¾0h}r¿0h}rÀ0h]rÁ0Uros-kinetic-navfnrÂ0asssuUautoware_can_msgsrÃ0}rÄ0(h}rÅ0h}rÆ0h]rÇ0Uros/kinetic/autoware_msgsrÈ0assh ˆh }rÉ0h}rÊ0h}rË0h]rÌ0Uros-kinetic-autoware-can-msgsrÍ0asssuUdwa_local_plannerrÎ0}rÏ0(h}rÐ0h}rÑ0h]rÒ0Uros/kinetic/navigationrÓ0assh ˆh }rÔ0h}rÕ0h}rÖ0h]r×0Uros-kinetic-dwa-local-plannerrØ0asssuUsmclibrÙ0}rÚ0(h}rÛ0h}rÜ0h]rÝ0Uros/kinetic/bond_corerÞ0assh ˆh }rß0h}rà0h}rá0h]râ0Uros-kinetic-smclibrã0asssuUturtlebot3_followerrä0}rå0(h}ræ0h}rç0h]rè0U#ros/kinetic/turtlebot3_applicationsré0assh ˆh }rê0h}rë0h}rì0h]rí0Uros-kinetic-turtlebot3-followerrî0asssuUdesktoprï0}rð0(h}rñ0h}rò0h]ró0Uros/kinetic/metapackagesrô0assh ˆh }rõ0h}rö0h}r÷0h]rø0Uros-kinetic-desktoprù0asssuUmove_base_to_maniprú0}rû0(h}rü0h}rý0h]rþ0Uros/kinetic/move_base_to_maniprÿ0assh ˆh }r1h}r1h}r1h]r1Uros-kinetic-move-base-to-manipr1asssuUpr2_navigation_localr1}r1(h}r1h}r1h]r 1Uros/kinetic/pr2_navigationr 1assh ˆh }r 1h}r 1h}r 1h]r1U ros-kinetic-pr2-navigation-localr1asssuU tiny_slamr1}r1(h}r1h}r1h]r1Uros/kinetic/tiny_slamr1assh ˆh }r1h}r1h}r1h]r1Uros-kinetic-tiny-slamr1asssuUhandeyer1}r1(h}r1h}r1h]r1Uros/kinetic/handeyer 1assh ˆh }r!1h}r"1h}r#1h]r$1Uros-kinetic-handeyer%1asssuUpr2_bringup_testsr&1}r'1(h}r(1h}r)1h]r*1Uros/kinetic/pr2_self_testr+1assh ˆh }r,1h}r-1h}r.1h]r/1Uros-kinetic-pr2-bringup-testsr01asssuUros_corer11}r21(h}r31h}r41h]r51Uros/kinetic/metapackagesr61assh ˆh }r71h}r81h}r91h]r:1Uros-kinetic-ros-corer;1asssuUbinpicking_simple_utilsr<1}r=1(h}r>1h}r?1h]r@1Uros/kinetic/binpicking_utilsrA1assh ˆh }rB1h}rC1h}rD1h]rE1U#ros-kinetic-binpicking-simple-utilsrF1asssuUuniversal_robotsrG1}rH1(h}rI1h}rJ1h]rK1Uros/kinetic/universal_robotrL1assh ˆh }rM1h}rN1h}rO1h]rP1Uros-kinetic-universal-robotsrQ1asssuUsummit_xl_localizationrR1}rS1(h}rT1h}rU1h]rV1Uros/kinetic/summit_xl_commonrW1assh ˆh }rX1h}rY1h}rZ1h]r[1U"ros-kinetic-summit-xl-localizationr\1asssuUkatanar]1}r^1(h}r_1h}r`1h]ra1Uros/kinetic/katana_driverrb1assh ˆh }rc1h}rd1h}re1h]rf1Uros-kinetic-katanarg1asssuU cv_camerarh1}ri1(h}rj1h}rk1h]rl1Uros/kinetic/cv_camerarm1assh ˆh }rn1h}ro1h}rp1h]rq1Uros-kinetic-cv-camerarr1asssuUopencv3rs1}rt1(h}ru1h}rv1h]rw1Uros/kinetic/opencv3rx1assh ˆh }ry1h}rz1h}r{1h]r|1Uros-kinetic-opencv3r}1asssuU voice_textr~1}r1(h}r€1h}r1h]r‚1Uros/kinetic/jsk_3rdpartyrƒ1assh ˆh }r„1h}r…1h}r†1h]r‡1Uros-kinetic-voice-textrˆ1asssuUthormang3_offset_tuner_msgsr‰1}rŠ1(h}r‹1h}rŒ1h]r1Uros/kinetic/thormang3_msgsrŽ1assh ˆh }r1h}r1h}r‘1h]r’1U'ros-kinetic-thormang3-offset-tuner-msgsr“1asssuUrosbridge_serverr”1}r•1(h}r–1h}r—1h]r˜1Uros/kinetic/rosbridge_suiter™1assh ˆh }rš1h}r›1h}rœ1h]r1Uros-kinetic-rosbridge-serverrž1asssuUurg_noderŸ1}r 1(h}r¡1h}r¢1h]r£1Uros/kinetic/urg_noder¤1assh ˆh }r¥1h}r¦1h}r§1h]r¨1Uros-kinetic-urg-noder©1asssuU move_baserª1}r«1(h}r¬1h}r­1h]r®1Uros/kinetic/navigationr¯1assh ˆh }r°1h}r±1h}r²1h]r³1Uros-kinetic-move-baser´1asssuUepos2_motor_controllerrµ1}r¶1(h}r·1h}r¸1h]r¹1U"ros/kinetic/epos2_motor_controllerrº1assh ˆh }r»1h}r¼1h}r½1h]r¾1U"ros-kinetic-epos2-motor-controllerr¿1asssuUpiksi_rtk_msgsrÀ1}rÁ1(h}rÂ1h}rÃ1h]rÄ1Uros/kinetic/earth_rover_piksirÅ1assh ˆh }rÆ1h}rÇ1h}rÈ1h]rÉ1Uros-kinetic-piksi-rtk-msgsrÊ1asssuU magni_teleoprË1}rÌ1(h}rÍ1h}rÎ1h]rÏ1Uros/kinetic/magni_robotrÐ1assh ˆh }rÑ1h}rÒ1h}rÓ1h]rÔ1Uros-kinetic-magni-teleoprÕ1asssuUturtlebot_loadout_kha1rÖ1}r×1(h}rØ1h}rÙ1h]rÚ1U"ros/kinetic/turtlebot_loadout_kha1rÛ1assh ˆh }rÜ1h}rÝ1h}rÞ1h]rß1U"ros-kinetic-turtlebot-loadout-kha1rà1asssuU rtmros_hironxrá1}râ1(h}rã1h}rä1h]rå1Uros/kinetic/rtmros_hironxræ1assh ˆh }rç1h}rè1h}ré1h]rê1Uros-kinetic-rtmros-hironxrë1asssuUrosserial_pythonrì1}rí1(h}rî1h}rï1h]rð1Uros/kinetic/rosserialrñ1assh ˆh }rò1h}ró1h}rô1h]rõ1Uros-kinetic-rosserial-pythonrö1asssuU qt_creater÷1}rø1(h}rù1h}rú1h]rû1Uros/kinetic/qt_rosrü1assh ˆh }rý1h}rþ1h}rÿ1h]r2Uros-kinetic-qt-creater2asssuU jsk_3rdpartyr2}r2(h}r2h}r2h]r2Uros/kinetic/jsk_3rdpartyr2assh ˆh }r2h}r 2h}r 2h]r 2Uros-kinetic-jsk-3rdpartyr 2asssuUdownwardr 2}r2(h}r2h}r2h]r2Uros/kinetic/jsk_3rdpartyr2assh ˆh }r2h}r2h}r2h]r2Uros-kinetic-downwardr2asssuU cost_map_cvr2}r2(h}r2h}r2h]r2Uros/kinetic/cost_mapr2assh ˆh }r2h}r2h}r 2h]r!2Uros-kinetic-cost-map-cvr"2asssuUros_mpptr#2}r$2(h}r%2h}r&2h]r'2Uros/kinetic/ros_mpptr(2assh ˆh }r)2h}r*2h}r+2h]r,2Uros-kinetic-ros-mpptr-2asssuUxpp_hyqr.2}r/2(h}r02h}r12h]r22Uros/kinetic/xppr32assh ˆh }r42h}r52h}r62h]r72Uros-kinetic-xpp-hyqr82asssuUfetch_descriptionr92}r:2(h}r;2h}r<2h]r=2Uros/kinetic/fetch_rosr>2assh ˆh }r?2h}r@2h}rA2h]rB2Uros-kinetic-fetch-descriptionrC2asssuU slam_gmappingrD2}rE2(h}rF2h}rG2h]rH2Uros/kinetic/slam_gmappingrI2assh ˆh }rJ2h}rK2h}rL2h]rM2Uros-kinetic-slam-gmappingrN2asssuU dynamixel_sdkrO2}rP2(h}rQ2h}rR2h]rS2Uros/kinetic/dynamixel_sdkrT2assh ˆh }rU2h}rV2h}rW2h]rX2Uros-kinetic-dynamixel-sdkrY2asssuU libqt_guirZ2}r[2(h}r\2h}r]2h]r^2Uros/kinetic/qt_metapackagesr_2assh ˆh }r`2h}ra2h}rb2h]rc2Uros-kinetic-libqt-guird2asssuU multisensere2}rf2(h}rg2h}rh2h]ri2Uros/kinetic/multisense_rosrj2assh ˆh }rk2h}rl2h}rm2h]rn2Uros-kinetic-multisensero2asssuUcob_canopen_motorrp2}rq2(h}rr2h}rs2h]rt2Uros/kinetic/cob_driverru2assh ˆh }rv2h}rw2h}rx2h]ry2Uros-kinetic-cob-canopen-motorrz2asssuUlaser_geometryr{2}r|2(h}r}2h}r~2h]r2Uros/kinetic/laser_geometryr€2assh ˆh }r2h}r‚2h}rƒ2h]r„2Uros-kinetic-laser-geometryr…2asssuU leap_motionr†2}r‡2(h}rˆ2h}r‰2h]rŠ2Uros/kinetic/leap_motionr‹2assh ˆh }rŒ2h}r2h}rŽ2h]r2Uros-kinetic-leap-motionr2asssuU key_teleopr‘2}r’2(h}r“2h}r”2h]r•2Uros/kinetic/teleop_toolsr–2assh ˆh }r—2h}r˜2h}r™2h]rš2Uros-kinetic-key-teleopr›2asssuUrqt_bagrœ2}r2(h}rž2h}rŸ2h]r 2Uros/kinetic/rqt_bagr¡2assh ˆh }r¢2h}r£2h}r¤2h]r¥2Uros-kinetic-rqt-bagr¦2asssuUrc_genicam_apir§2}r¨2(h}r©2h}rª2h]r«2Uros/kinetic/rc_genicam_apir¬2assh ˆh }r­2h}r®2h}r¯2h]r°2Uros-kinetic-rc-genicam-apir±2asssuU agvs_controlr²2}r³2(h}r´2h}rµ2h]r¶2Uros/kinetic/agvs_simr·2assh ˆh }r¸2h}r¹2h}rº2h]r»2Uros-kinetic-agvs-controlr¼2asssuUoctomap_rviz_pluginsr½2}r¾2(h}r¿2h}rÀ2h]rÁ2U ros/kinetic/octomap_rviz_pluginsrÂ2assh ˆh }rÃ2h}rÄ2h}rÅ2h]rÆ2U ros-kinetic-octomap-rviz-pluginsrÇ2asssuUlost_comms_recoveryrÈ2}rÉ2(h}rÊ2h}rË2h]rÌ2Uros/kinetic/lost_comms_recoveryrÍ2assh ˆh }rÎ2h}rÏ2h}rÐ2h]rÑ2Uros-kinetic-lost-comms-recoveryrÒ2asssuUcamera_calibration_parsersrÓ2}rÔ2(h}rÕ2h}rÖ2h]r×2Uros/kinetic/image_commonrØ2assh ˆh }rÙ2h}rÚ2h}rÛ2h]rÜ2U&ros-kinetic-camera-calibration-parsersrÝ2asssuU p2os_msgsrÞ2}rß2(h}rà2h}rá2h]râ2Uros/kinetic/p2osrã2assh ˆh }rä2h}rå2h}ræ2h]rç2Uros-kinetic-p2os-msgsrè2asssuUpr2_calibrationré2}rê2(h}rë2h}rì2h]rí2Uros/kinetic/pr2_calibrationrî2assh ˆh }rï2h}rð2h}rñ2h]rò2Uros-kinetic-pr2-calibrationró2asssuUfour_wheel_steering_controllerrô2}rõ2(h}rö2h}r÷2h]rø2Uros/kinetic/ros_controllersrù2assh ˆh }rú2h}rû2h}rü2h]rý2U*ros-kinetic-four-wheel-steering-controllerrþ2asssuUromeo_sensors_pyrÿ2}r3(h}r3h}r3h]r3Uros/kinetic/romeo_robotr3assh ˆh }r3h}r3h}r3h]r3Uros-kinetic-romeo-sensors-pyr 3asssuU naoqi_libqir 3}r 3(h}r 3h}r 3h]r3Uros/kinetic/naoqi_libqir3assh ˆh }r3h}r3h}r3h]r3Uros-kinetic-naoqi-libqir3asssuU launchmanr3}r3(h}r3h}r3h]r3Uros/kinetic/web_interfacer3assh ˆh }r3h}r3h}r3h]r3Uros-kinetic-launchmanr3asssuU nmea_msgsr 3}r!3(h}r"3h}r#3h]r$3Uros/kinetic/nmea_msgsr%3assh ˆh }r&3h}r'3h}r(3h]r)3Uros-kinetic-nmea-msgsr*3asssuUmessage_multiplexingr+3}r,3(h}r-3h}r.3h]r/3U ros/kinetic/message_multiplexingr03assh ˆh }r13h}r23h}r33h]r43U ros-kinetic-message-multiplexingr53asssuUdynamixel_workbench_controllersr63}r73(h}r83h}r93h]r:3Uros/kinetic/dynamixel-workbenchr;3assh ˆh }r<3h}r=3h}r>3h]r?3U+ros-kinetic-dynamixel-workbench-controllersr@3asssuUqt_rosrA3}rB3(h}rC3h}rD3h]rE3Uros/kinetic/qt_rosrF3assh ˆh }rG3h}rH3h}rI3h]rJ3Uros-kinetic-qt-rosrK3asssuU kobuki_noderL3}rM3(h}rN3h}rO3h]rP3Uros/kinetic/kobukirQ3assh ˆh }rR3h}rS3h}rT3h]rU3Uros-kinetic-kobuki-noderV3asssuUcob_navigation_localrW3}rX3(h}rY3h}rZ3h]r[3Uros/kinetic/cob_navigationr\3assh ˆh }r]3h}r^3h}r_3h]r`3U ros-kinetic-cob-navigation-localra3asssuUfake_joint_driverrb3}rc3(h}rd3h}re3h]rf3Uros/kinetic/fake_jointrg3assh ˆh }rh3h}ri3h}rj3h]rk3Uros-kinetic-fake-joint-driverrl3asssuU dnn_detectrm3}rn3(h}ro3h}rp3h]rq3Uros/kinetic/dnn_detectrr3assh ˆh }rs3h}rt3h}ru3h]rv3Uros-kinetic-dnn-detectrw3asssuUrosparam_handlerrx3}ry3(h}rz3h}r{3h]r|3Uros/kinetic/rosparam_handlerr}3assh ˆh }r~3h}r3h}r€3h]r3Uros-kinetic-rosparam-handlerr‚3asssuU libqt_networkrƒ3}r„3(h}r…3h}r†3h]r‡3Uros/kinetic/qt_metapackagesrˆ3assh ˆh }r‰3h}rŠ3h}r‹3h]rŒ3Uros-kinetic-libqt-networkr3asssuU roch_robotrŽ3}r3(h}r3h}r‘3h]r’3Uros/kinetic/roch_robotr“3assh ˆh }r”3h}r•3h}r–3h]r—3Uros-kinetic-roch-robotr˜3asssuUcartographer_ros_msgsr™3}rš3(h}r›3h}rœ3h]r3Uros/kinetic/cartographer_rosrž3assh ˆh }rŸ3h}r 3h}r¡3h]r¢3U!ros-kinetic-cartographer-ros-msgsr£3asssuU smach_viewerr¤3}r¥3(h}r¦3h}r§3h]r¨3U)ros/kinetic/executive_smach_visualizationr©3assh ˆh }rª3h}r«3h}r¬3h]r­3Uros-kinetic-smach-viewerr®3asssuUtrack_odometryr¯3}r°3(h}r±3h}r²3h]r³3Uros/kinetic/neonavigationr´3assh ˆh }rµ3h}r¶3h}r·3h]r¸3Uros-kinetic-track-odometryr¹3asssuUmultisense_rosrº3}r»3(h}r¼3h}r½3h]r¾3Uros/kinetic/multisense_rosr¿3assh ˆh }rÀ3h}rÁ3h}rÂ3h]rÃ3Uros-kinetic-multisense-rosrÄ3asssuU flir_ptu_vizrÅ3}rÆ3(h}rÇ3h}rÈ3h]rÉ3Uros/kinetic/flir_pturÊ3assh ˆh }rË3h}rÌ3h}rÍ3h]rÎ3Uros-kinetic-flir-ptu-vizrÏ3asssuU locomove_baserÐ3}rÑ3(h}rÒ3h}rÓ3h]rÔ3Uros/kinetic/robot_navigationrÕ3assh ˆh }rÖ3h}r×3h}rØ3h]rÙ3Uros-kinetic-locomove-baserÚ3asssuUexoticarÛ3}rÜ3(h}rÝ3h}rÞ3h]rß3Uros/kinetic/exoticarà3assh ˆh }rá3h}râ3h}rã3h]rä3Uros-kinetic-exoticarå3asssuU kdl_typekitræ3}rç3(h}rè3h}ré3h]rê3Uros/kinetic/rtt_geometryrë3assh ˆh }rì3h}rí3h}rî3h]rï3Uros-kinetic-kdl-typekitrð3asssuUop3_offset_tuner_msgsrñ3}rò3(h}ró3h}rô3h]rõ3Uros/kinetic/robotis_op3_msgsrö3assh ˆh }r÷3h}rø3h}rù3h]rú3U!ros-kinetic-op3-offset-tuner-msgsrû3asssuU rosmon_msgsrü3}rý3(h}rþ3h}rÿ3h]r4Uros/kinetic/rosmonr4assh ˆh }r4h}r4h}r4h]r4Uros-kinetic-rosmon-msgsr4asssuU yocs_keyopr4}r4(h}r 4h}r 4h]r 4Uros/kinetic/yujin_ocsr 4assh ˆh }r 4h}r4h}r4h]r4Uros-kinetic-yocs-keyopr4asssuUcontroller_interfacer4}r4(h}r4h}r4h]r4Uros/kinetic/ros_controlr4assh ˆh }r4h}r4h}r4h]r4U ros-kinetic-controller-interfacer4asssuU marshmallowr4}r4(h}r4h}r 4h]r!4Uros/kinetic/marshmallowr"4assh ˆh }r#4h}r$4h}r%4h]r&4Uros-kinetic-marshmallowr'4asssuUyocs_math_toolkitr(4}r)4(h}r*4h}r+4h]r,4Uros/kinetic/yujin_ocsr-4assh ˆh }r.4h}r/4h}r04h]r14Uros-kinetic-yocs-math-toolkitr24asssuUez_interactive_markerr34}r44(h}r54h}r64h]r74U!ros/kinetic/ez_interactive_markerr84assh ˆh }r94h}r:4h}r;4h]r<4U!ros-kinetic-ez-interactive-markerr=4asssuUusb_camr>4}r?4(h}r@4h}rA4h]rB4Uros/kinetic/usb_camrC4assh ˆh }rD4h}rE4h}rF4h]rG4Uros-kinetic-usb-camrH4asssuUjsk_footstep_plannerrI4}rJ4(h}rK4h}rL4h]rM4Uros/kinetic/jsk_controlrN4assh ˆh }rO4h}rP4h}rQ4h]rR4U ros-kinetic-jsk-footstep-plannerrS4asssuUseed_r7_bringuprT4}rU4(h}rV4h}rW4h]rX4Uros/kinetic/seed_r7_ros_pkgrY4assh ˆh }rZ4h}r[4h}r\4h]r]4Uros-kinetic-seed-r7-bringupr^4asssuUjsk_footstep_controllerr_4}r`4(h}ra4h}rb4h]rc4Uros/kinetic/jsk_controlrd4assh ˆh }re4h}rf4h}rg4h]rh4U#ros-kinetic-jsk-footstep-controllerri4asssuUrqt_drone_teleoprj4}rk4(h}rl4h}rm4h]rn4Uros/kinetic/jderobot_dronesro4assh ˆh }rp4h}rq4h}rr4h]rs4Uros-kinetic-rqt-drone-teleoprt4asssuUturtlebot_gazeboru4}rv4(h}rw4h}rx4h]ry4Uros/kinetic/turtlebot_simulatorrz4assh ˆh }r{4h}r|4h}r}4h]r~4Uros-kinetic-turtlebot-gazebor4asssuUrviz_python_tutorialr€4}r4(h}r‚4h}rƒ4h]r„4U#ros/kinetic/visualization_tutorialsr…4assh ˆh }r†4h}r‡4h}rˆ4h]r‰4U ros-kinetic-rviz-python-tutorialrŠ4asssuU wu_ros_toolsr‹4}rŒ4(h}r4h}rŽ4h]r4Uros/kinetic/wu_ros_toolsr4assh ˆh }r‘4h}r’4h}r“4h]r”4Uros-kinetic-wu-ros-toolsr•4asssuUimage_exposure_msgsr–4}r—4(h}r˜4h}r™4h]rš4U#ros/kinetic/pointgrey_camera_driverr›4assh ˆh }rœ4h}r4h}rž4h]rŸ4Uros-kinetic-image-exposure-msgsr 4asssuUrostfulr¡4}r¢4(h}r£4h}r¤4h]r¥4Uros/kinetic/rostfulr¦4assh ˆh }r§4h}r¨4h}r©4h]rª4Uros-kinetic-rostfulr«4asssuUopengmr¬4}r­4(h}r®4h}r¯4h]r°4Uros/kinetic/cob_externr±4assh ˆh }r²4h}r³4h}r´4h]rµ4Uros-kinetic-opengmr¶4asssuUcob_monitoringr·4}r¸4(h}r¹4h}rº4h]r»4Uros/kinetic/cob_command_toolsr¼4assh ˆh }r½4h}r¾4h}r¿4h]rÀ4Uros-kinetic-cob-monitoringrÁ4asssuUeigenpyrÂ4}rÃ4(h}rÄ4h}rÅ4h]rÆ4Uros/kinetic/eigenpyrÇ4assh ˆh }rÈ4h}rÉ4h}rÊ4h]rË4Uros-kinetic-eigenpyrÌ4asssuUteleop_twist_joyrÍ4}rÎ4(h}rÏ4h}rÐ4h]rÑ4Uros/kinetic/teleop_twist_joyrÒ4assh ˆh }rÓ4h}rÔ4h}rÕ4h]rÖ4Uros-kinetic-teleop-twist-joyr×4asssuUfreenect_stackrØ4}rÙ4(h}rÚ4h}rÛ4h]rÜ4Uros/kinetic/freenect_stackrÝ4assh ˆh }rÞ4h}rß4h}rà4h]rá4Uros-kinetic-freenect-stackrâ4asssuUpr2_baserã4}rä4(h}rå4h}ræ4h]rç4Uros/kinetic/pr2_metapackagesrè4assh ˆh }ré4h}rê4h}rë4h]rì4Uros-kinetic-pr2-baserí4asssuU warthog_vizrî4}rï4(h}rð4h}rñ4h]rò4Uros/kinetic/warthog_desktopró4assh ˆh }rô4h}rõ4h}rö4h]r÷4Uros-kinetic-warthog-vizrø4asssuU iiwa_msgsrù4}rú4(h}rû4h}rü4h]rý4Uros/kinetic/iiwa_stackrþ4assh ˆh }rÿ4h}r5h}r5h]r5Uros-kinetic-iiwa-msgsr5asssuU barrett_handr5}r5(h}r5h}r5h]r5Uros/kinetic/barrett_handr 5assh ˆh }r 5h}r 5h}r 5h]r 5Uros-kinetic-barrett-handr5asssuUaxclir5}r5(h}r5h}r5h]r5Uros/kinetic/axclir5assh ˆh }r5h}r5h}r5h]r5Uros-kinetic-axclir5asssuU flexbe_widgetr5}r5(h}r5h}r5h]r5Uros/kinetic/flexber5assh ˆh }r 5h}r!5h}r"5h]r#5Uros-kinetic-flexbe-widgetr$5asssuUrobot_indicatorr%5}r&5(h}r'5h}r(5h]r)5Uros/kinetic/robot_indicatorr*5assh ˆh }r+5h}r,5h}r-5h]r.5Uros-kinetic-robot-indicatorr/5asssuUnextage_calibrationr05}r15(h}r25h}r35h]r45Uros/kinetic/rtmros_nextager55assh ˆh }r65h}r75h}r85h]r95Uros-kinetic-nextage-calibrationr:5asssuUfutaba_serial_servor;5}r<5(h}r=5h}r>5h]r?5Uros/kinetic/raspigibbon_rosr@5assh ˆh }rA5h}rB5h}rC5h]rD5Uros-kinetic-futaba-serial-servorE5asssuUjoint_state_controllerrF5}rG5(h}rH5h}rI5h]rJ5Uros/kinetic/ros_controllersrK5assh ˆh }rL5h}rM5h}rN5h]rO5U"ros-kinetic-joint-state-controllerrP5asssuUroslisp_utilitiesrQ5}rR5(h}rS5h}rT5h]rU5Uros/kinetic/roslisp_commonrV5assh ˆh }rW5h}rX5h}rY5h]rZ5Uros-kinetic-roslisp-utilitiesr[5asssuU cv_bridger\5}r]5(h}r^5h}r_5h]r`5Uros/kinetic/vision_opencvra5assh ˆh }rb5h}rc5h}rd5h]re5Uros-kinetic-cv-bridgerf5asssuUrocon_interaction_msgsrg5}rh5(h}ri5h}rj5h]rk5Uros/kinetic/rocon_msgsrl5assh ˆh }rm5h}rn5h}ro5h]rp5U"ros-kinetic-rocon-interaction-msgsrq5asssuUaudio_common_msgsrr5}rs5(h}rt5h}ru5h]rv5Uros/kinetic/audio_commonrw5assh ˆh }rx5h}ry5h}rz5h]r{5Uros-kinetic-audio-common-msgsr|5asssuUimage_transport_pluginsr}5}r~5(h}r5h}r€5h]r5U#ros/kinetic/image_transport_pluginsr‚5assh ˆh }rƒ5h}r„5h}r…5h]r†5U#ros-kinetic-image-transport-pluginsr‡5asssuUstd_srvsrˆ5}r‰5(h}rŠ5h}r‹5h]rŒ5Uros/kinetic/ros_comm_msgsr5assh ˆh }rŽ5h}r5h}r5h]r‘5Uros-kinetic-std-srvsr’5asssuUyocs_localization_managerr“5}r”5(h}r•5h}r–5h]r—5Uros/kinetic/yujin_ocsr˜5assh ˆh }r™5h}rš5h}r›5h]rœ5U%ros-kinetic-yocs-localization-managerr5asssuUphidgets_driversrž5}rŸ5(h}r 5h}r¡5h]r¢5Uros/kinetic/phidgets_driversr£5assh ˆh }r¤5h}r¥5h}r¦5h]r§5Uros-kinetic-phidgets-driversr¨5asssuUrtt_controller_manager_msgsr©5}rª5(h}r«5h}r¬5h]r­5Uros/kinetic/rtt_ros_controlr®5assh ˆh }r¯5h}r°5h}r±5h]r²5U'ros-kinetic-rtt-controller-manager-msgsr³5asssuUamclr´5}rµ5(h}r¶5h}r·5h]r¸5Uros/kinetic/navigationr¹5assh ˆh }rº5h}r»5h}r¼5h]r½5Uros-kinetic-amclr¾5asssuU franka_hwr¿5}rÀ5(h}rÁ5h}rÂ5h]rÃ5Uros/kinetic/franka_rosrÄ5assh ˆh }rÅ5h}rÆ5h}rÇ5h]rÈ5Uros-kinetic-franka-hwrÉ5asssuUrv4fl_moveit_configrÊ5}rË5(h}rÌ5h}rÍ5h]rÎ5Uros/kinetic/melfa_robotrÏ5assh ˆh }rÐ5h}rÑ5h}rÒ5h]rÓ5Uros-kinetic-rv4fl-moveit-configrÔ5asssuUpuma_motor_driverrÕ5}rÖ5(h}r×5h}rØ5h]rÙ5Uros/kinetic/puma_motor_driverrÚ5assh ˆh }rÛ5h}rÜ5h}rÝ5h]rÞ5Uros-kinetic-puma-motor-driverrß5asssuUvariant_topic_toolsrà5}rá5(h}râ5h}rã5h]rä5Uros/kinetic/variantrå5assh ˆh }ræ5h}rç5h}rè5h]ré5Uros-kinetic-variant-topic-toolsrê5asssuU agni_tf_toolsrë5}rì5(h}rí5h}rî5h]rï5Uros/kinetic/agni_tf_toolsrð5assh ˆh }rñ5h}rò5h}ró5h]rô5Uros-kinetic-agni-tf-toolsrõ5asssuUjackal_navigationrö5}r÷5(h}rø5h}rù5h]rú5Uros/kinetic/jackalrû5assh ˆh }rü5h}rý5h}rþ5h]rÿ5Uros-kinetic-jackal-navigationr6asssuUmcmillan_airfieldr6}r6(h}r6h}r6h]r6Uros/kinetic/uav_testingr6assh ˆh }r6h}r6h}r 6h]r 6Uros-kinetic-mcmillan-airfieldr 6asssuUdbw_fcar 6}r 6(h}r6h}r6h]r6Uros/kinetic/dbw_fca_rosr6assh ˆh }r6h}r6h}r6h]r6Uros-kinetic-dbw-fcar6asssuUmav_commr6}r6(h}r6h}r6h]r6Uros/kinetic/mav_commr6assh ˆh }r6h}r6h}r6h]r 6Uros-kinetic-mav-commr!6asssuU gennodejsr"6}r#6(h}r$6h}r%6h]r&6Uros/kinetic/gennodejsr'6assh ˆh }r(6h}r)6h}r*6h]r+6Uros-kinetic-gennodejsr,6asssuUleuze_phidget_driverr-6}r.6(h}r/6h}r06h]r16Uros/kinetic/leuze_ros_driversr26assh ˆh }r36h}r46h}r56h]r66U ros-kinetic-leuze-phidget-driverr76asssuUloki_descriptionr86}r96(h}r:6h}r;6h]r<6Uros/kinetic/loki_robotr=6assh ˆh }r>6h}r?6h}r@6h]rA6Uros-kinetic-loki-descriptionrB6asssuUcollada_urdf_jsk_patchrC6}rD6(h}rE6h}rF6h]rG6Uros/kinetic/jsk_3rdpartyrH6assh ˆh }rI6h}rJ6h}rK6h]rL6U"ros-kinetic-collada-urdf-jsk-patchrM6asssuUroscpprN6}rO6(h}rP6h}rQ6h]rR6Uros/kinetic/ros_commrS6assh ˆh }rT6h}rU6h}rV6h]rW6Uros-kinetic-roscpprX6asssuUcontroller_managerrY6}rZ6(h}r[6h}r\6h]r]6Uros/kinetic/ros_controlr^6assh ˆh }r_6h}r`6h}ra6h]rb6Uros-kinetic-controller-managerrc6asssuUrviz_plugin_tutorialsrd6}re6(h}rf6h}rg6h]rh6U#ros/kinetic/visualization_tutorialsri6assh ˆh }rj6h}rk6h}rl6h]rm6U!ros-kinetic-rviz-plugin-tutorialsrn6asssuU kobuki_rappsro6}rp6(h}rq6h}rr6h]rs6Uros/kinetic/kobukirt6assh ˆh }ru6h}rv6h}rw6h]rx6Uros-kinetic-kobuki-rappsry6asssuU webrtc_rosrz6}r{6(h}r|6h}r}6h]r~6Uros/kinetic/webrtc_rosr6assh ˆh }r€6h}r6h}r‚6h]rƒ6Uros-kinetic-webrtc-rosr„6asssuUexotica_ik_solverr…6}r†6(h}r‡6h}rˆ6h]r‰6Uros/kinetic/exoticarŠ6assh ˆh }r‹6h}rŒ6h}r6h]rŽ6Uros-kinetic-exotica-ik-solverr6asssuU tuw_arucor6}r‘6(h}r’6h}r“6h]r”6U ros/kinetic/tuw_marker_detectionr•6assh ˆh }r–6h}r—6h}r˜6h]r™6Uros-kinetic-tuw-arucorš6asssuUroscleanr›6}rœ6(h}r6h}rž6h]rŸ6Uros/kinetic/rosr 6assh ˆh }r¡6h}r¢6h}r£6h]r¤6Uros-kinetic-roscleanr¥6asssuUros_mpg321_playerr¦6}r§6(h}r¨6h}r©6h]rª6Uros/kinetic/robotis_utilityr«6assh ˆh }r¬6h}r­6h}r®6h]r¯6Uros-kinetic-ros-mpg321-playerr°6asssuUautoware_map_msgsr±6}r²6(h}r³6h}r´6h]rµ6Uros/kinetic/autoware_msgsr¶6assh ˆh }r·6h}r¸6h}r¹6h]rº6Uros-kinetic-autoware-map-msgsr»6asssuU aruco_rosr¼6}r½6(h}r¾6h}r¿6h]rÀ6Uros/kinetic/aruco_rosrÁ6assh ˆh }rÂ6h}rÃ6h}rÄ6h]rÅ6Uros-kinetic-aruco-rosrÆ6asssuUmbf_msgsrÇ6}rÈ6(h}rÉ6h}rÊ6h]rË6Uros/kinetic/move_base_flexrÌ6assh ˆh }rÍ6h}rÎ6h}rÏ6h]rÐ6Uros-kinetic-mbf-msgsrÑ6asssuUmrpt_ekf_slam_3drÒ6}rÓ6(h}rÔ6h}rÕ6h]rÖ6Uros/kinetic/mrpt_slamr×6assh ˆh }rØ6h}rÙ6h}rÚ6h]rÛ6Uros-kinetic-mrpt-ekf-slam-3drÜ6asssuUrocon_multimasterrÝ6}rÞ6(h}rß6h}rà6h]rá6Uros/kinetic/rocon_multimasterrâ6assh ˆh }rã6h}rä6h}rå6h]ræ6Uros-kinetic-rocon-multimasterrç6asssuUpr2_controller_configurationrè6}ré6(h}rê6h}rë6h]rì6Uros/kinetic/pr2_robotrí6assh ˆh }rî6h}rï6h}rð6h]rñ6U(ros-kinetic-pr2-controller-configurationrò6asssuUstd_msgsró6}rô6(h}rõ6h}rö6h]r÷6Uros/kinetic/std_msgsrø6assh ˆh }rù6h}rú6h}rû6h]rü6Uros-kinetic-std-msgsrý6asssuU fsrobo_r_msgsrþ6}rÿ6(h}r7h}r7h]r7Uros/kinetic/fsrobo_rr7assh ˆh }r7h}r7h}r7h]r7Uros-kinetic-fsrobo-r-msgsr7asssuUkatana_moveit_ikfast_pluginr 7}r 7(h}r 7h}r 7h]r 7Uros/kinetic/katana_driverr7assh ˆh }r7h}r7h}r7h]r7U'ros-kinetic-katana-moveit-ikfast-pluginr7asssuUautomotive_platform_msgsr7}r7(h}r7h}r7h]r7U$ros/kinetic/automotive_autonomy_msgsr7assh ˆh }r7h}r7h}r7h]r7U$ros-kinetic-automotive-platform-msgsr7asssuU nao_audior7}r 7(h}r!7h}r"7h]r#7Uros/kinetic/nao_interactionr$7assh ˆh }r%7h}r&7h}r'7h]r(7Uros-kinetic-nao-audior)7asssuUrandom_numbersr*7}r+7(h}r,7h}r-7h]r.7Uros/kinetic/random_numbersr/7assh ˆh }r07h}r17h}r27h]r37Uros-kinetic-random-numbersr47asssuUgazebo_pluginsr57}r67(h}r77h}r87h]r97Uros/kinetic/gazebo_ros_pkgsr:7assh ˆh }r;7h}r<7h}r=7h]r>7Uros-kinetic-gazebo-pluginsr?7asssuUqb_device_msgsr@7}rA7(h}rB7h}rC7h]rD7Uros/kinetic/qb_devicerE7assh ˆh }rF7h}rG7h}rH7h]rI7Uros-kinetic-qb-device-msgsrJ7asssuUvelodyne_pointcloudrK7}rL7(h}rM7h}rN7h]rO7Uros/kinetic/velodynerP7assh ˆh }rQ7h}rR7h}rS7h]rT7Uros-kinetic-velodyne-pointcloudrU7asssuU voxel_gridrV7}rW7(h}rX7h}rY7h]rZ7Uros/kinetic/navigationr[7assh ˆh }r\7h}r]7h}r^7h]r_7Uros-kinetic-voxel-gridr`7asssuU"thormang3_manipulation_module_msgsra7}rb7(h}rc7h}rd7h]re7Uros/kinetic/thormang3_msgsrf7assh ˆh }rg7h}rh7h}ri7h]rj7U.ros-kinetic-thormang3-manipulation-module-msgsrk7asssuU grasping_msgsrl7}rm7(h}rn7h}ro7h]rp7Uros/kinetic/grasping_msgsrq7assh ˆh }rr7h}rs7h}rt7h]ru7Uros-kinetic-grasping-msgsrv7asssuU octomap_parw7}rx7(h}ry7h}rz7h]r{7Uros/kinetic/octomap_par|7assh ˆh }r}7h}r~7h}r7h]r€7Uros-kinetic-octomap-par7asssuUpr2_calibration_controllersr‚7}rƒ7(h}r„7h}r…7h]r†7Uros/kinetic/pr2_controllersr‡7assh ˆh }rˆ7h}r‰7h}rŠ7h]r‹7U'ros-kinetic-pr2-calibration-controllersrŒ7asssuU'exotica_time_indexed_rrt_connect_solverr7}rŽ7(h}r7h}r7h]r‘7Uros/kinetic/exoticar’7assh ˆh }r“7h}r”7h}r•7h]r–7U3ros-kinetic-exotica-time-indexed-rrt-connect-solverr—7asssuU power_monitorr˜7}r™7(h}rš7h}r›7h]rœ7Uros/kinetic/pr2_power_driversr7assh ˆh }rž7h}rŸ7h}r 7h]r¡7Uros-kinetic-power-monitorr¢7asssuU op3_gui_demor£7}r¤7(h}r¥7h}r¦7h]r§7Uros/kinetic/robotis_op3_toolsr¨7assh ˆh }r©7h}rª7h}r«7h]r¬7Uros-kinetic-op3-gui-demor­7asssuUtalos_descriptionr®7}r¯7(h}r°7h}r±7h]r²7Uros/kinetic/talos_robotr³7assh ˆh }r´7h}rµ7h}r¶7h]r·7Uros-kinetic-talos-descriptionr¸7asssuUkhi_rs080n_moveit_configr¹7}rº7(h}r»7h}r¼7h]r½7Uros/kinetic/khi_robotr¾7assh ˆh }r¿7h}rÀ7h}rÁ7h]rÂ7U$ros-kinetic-khi-rs080n-moveit-configrÃ7asssuUhector_map_serverrÄ7}rÅ7(h}rÆ7h}rÇ7h]rÈ7Uros/kinetic/hector_slamrÉ7assh ˆh }rÊ7h}rË7h}rÌ7h]rÍ7Uros-kinetic-hector-map-serverrÎ7asssuUrc_hand_eye_calibration_clientrÏ7}rÐ7(h}rÑ7h}rÒ7h]rÓ7Uros/kinetic/rc_visardrÔ7assh ˆh }rÕ7h}rÖ7h}r×7h]rØ7U*ros-kinetic-rc-hand-eye-calibration-clientrÙ7asssuUanglesrÚ7}rÛ7(h}rÜ7h}rÝ7h]rÞ7Uros/kinetic/anglesrß7assh ˆh }rà7h}rá7h}râ7h]rã7Uros-kinetic-anglesrä7asssuUcalibration_estimationrå7}ræ7(h}rç7h}rè7h]ré7Uros/kinetic/calibrationrê7assh ˆh }rë7h}rì7h}rí7h]rî7U"ros-kinetic-calibration-estimationrï7asssuUrocon_service_pair_msgsrð7}rñ7(h}rò7h}ró7h]rô7Uros/kinetic/rocon_msgsrõ7assh ˆh }rö7h}r÷7h}rø7h]rù7U#ros-kinetic-rocon-service-pair-msgsrú7asssuUopen_manipulatorrû7}rü7(h}rý7h}rþ7h]rÿ7Uros/kinetic/open_manipulatorr8assh ˆh }r8h}r8h}r8h]r8Uros-kinetic-open-manipulatorr8asssuUaws_ros1_commonr8}r8(h}r8h}r 8h]r 8Uros/kinetic/aws_ros1_commonr 8assh ˆh }r 8h}r 8h}r8h]r8Uros-kinetic-aws-ros1-commonr8asssuUswri_yaml_utilr8}r8(h}r8h}r8h]r8Uros/kinetic/marti_commonr8assh ˆh }r8h}r8h}r8h]r8Uros-kinetic-swri-yaml-utilr8asssuU rosflightr8}r8(h}r8h}r8h]r 8Uros/kinetic/rosflightr!8assh ˆh }r"8h}r#8h}r$8h]r%8Uros-kinetic-rosflightr&8asssuUdynamic_robot_state_publisherr'8}r(8(h}r)8h}r*8h]r+8U)ros/kinetic/dynamic_robot_state_publisherr,8assh ˆh }r-8h}r.8h}r/8h]r08U)ros-kinetic-dynamic-robot-state-publisherr18asssuUromeo_gazebo_pluginr28}r38(h}r48h}r58h]r68Uros/kinetic/romeo_virtualr78assh ˆh }r88h}r98h}r:8h]r;8Uros-kinetic-romeo-gazebo-pluginr<8asssuUgps_umdr=8}r>8(h}r?8h}r@8h]rA8Uros/kinetic/gps_umdrB8assh ˆh }rC8h}rD8h}rE8h]rF8Uros-kinetic-gps-umdrG8asssuUmoveit_sim_controllerrH8}rI8(h}rJ8h}rK8h]rL8U!ros/kinetic/moveit_sim_controllerrM8assh ˆh }rN8h}rO8h}rP8h]rQ8U!ros-kinetic-moveit-sim-controllerrR8asssuUfanuc_m16ib_supportrS8}rT8(h}rU8h}rV8h]rW8Uros/kinetic/fanucrX8assh ˆh }rY8h}rZ8h}r[8h]r\8Uros-kinetic-fanuc-m16ib-supportr]8asssuU pilz_controlr^8}r_8(h}r`8h}ra8h]rb8Uros/kinetic/pilz_robotsrc8assh ˆh }rd8h}re8h}rf8h]rg8Uros-kinetic-pilz-controlrh8asssuUdialogflow_task_executiveri8}rj8(h}rk8h}rl8h]rm8Uros/kinetic/jsk_3rdpartyrn8assh ˆh }ro8h}rp8h}rq8h]rr8U%ros-kinetic-dialogflow-task-executivers8asssuUhomer_mary_ttsrt8}ru8(h}rv8h}rw8h]rx8Uros/kinetic/homer_robot_facery8assh ˆh }rz8h}r{8h}r|8h]r}8Uros-kinetic-homer-mary-ttsr~8asssuUtfr8}r€8(h}r8h}r‚8h]rƒ8Uros/kinetic/geometryr„8assh ˆh }r…8h}r†8h}r‡8h]rˆ8Uros-kinetic-tfr‰8asssuUastuff_sensor_msgsrŠ8}r‹8(h}rŒ8h}r8h]rŽ8Uros/kinetic/astuff_sensor_msgsr8assh ˆh }r8h}r‘8h}r’8h]r“8Uros-kinetic-astuff-sensor-msgsr”8asssuU lkh_solverr•8}r–8(h}r—8h}r˜8h]r™8Uros/kinetic/lkhrš8assh ˆh }r›8h}rœ8h}r8h]rž8Uros-kinetic-lkh-solverrŸ8asssuUvelodyne_laserscanr 8}r¡8(h}r¢8h}r£8h]r¤8Uros/kinetic/velodyner¥8assh ˆh }r¦8h}r§8h}r¨8h]r©8Uros-kinetic-velodyne-laserscanrª8asssuUros_baser«8}r¬8(h}r­8h}r®8h]r¯8Uros/kinetic/metapackagesr°8assh ˆh }r±8h}r²8h}r³8h]r´8Uros-kinetic-ros-baserµ8asssuUdiagnostic_aggregatorr¶8}r·8(h}r¸8h}r¹8h]rº8Uros/kinetic/diagnosticsr»8assh ˆh }r¼8h}r½8h}r¾8h]r¿8U!ros-kinetic-diagnostic-aggregatorrÀ8asssuUteb_local_plannerrÁ8}rÂ8(h}rÃ8h}rÄ8h]rÅ8Uros/kinetic/teb_local_plannerrÆ8assh ˆh }rÇ8h}rÈ8h}rÉ8h]rÊ8Uros-kinetic-teb-local-plannerrË8asssuUthormang3_navigationrÌ8}rÍ8(h}rÎ8h}rÏ8h]rÐ8Uros/kinetic/thormang3_opcrÑ8assh ˆh }rÒ8h}rÓ8h}rÔ8h]rÕ8U ros-kinetic-thormang3-navigationrÖ8asssuUlaser_scan_splitterr×8}rØ8(h}rÙ8h}rÚ8h]rÛ8Uros/kinetic/scan_toolsrÜ8assh ˆh }rÝ8h}rÞ8h}rß8h]rà8Uros-kinetic-laser-scan-splitterrá8asssuUvariant_topic_testrâ8}rã8(h}rä8h}rå8h]ræ8Uros/kinetic/variantrç8assh ˆh }rè8h}ré8h}rê8h]rë8Uros-kinetic-variant-topic-testrì8asssuUrostunerí8}rî8(h}rï8h}rð8h]rñ8Uros/kinetic/rostunerò8assh ˆh }ró8h}rô8h}rõ8h]rö8Uros-kinetic-rostuner÷8asssuUgrizzly_controlrø8}rù8(h}rú8h}rû8h]rü8Uros/kinetic/grizzlyrý8assh ˆh }rþ8h}rÿ8h}r9h]r9Uros-kinetic-grizzly-controlr9asssuU rtt_geometryr9}r9(h}r9h}r9h]r9Uros/kinetic/rtt_geometryr9assh ˆh }r 9h}r 9h}r 9h]r 9Uros-kinetic-rtt-geometryr 9asssuU mbf_utilityr9}r9(h}r9h}r9h]r9Uros/kinetic/move_base_flexr9assh ˆh }r9h}r9h}r9h]r9Uros-kinetic-mbf-utilityr9asssuUimage_recognition_rqtr9}r9(h}r9h}r9h]r9Uros/kinetic/image_recognitionr9assh ˆh }r9h}r 9h}r!9h]r"9U!ros-kinetic-image-recognition-rqtr#9asssuUweb_msgsr$9}r%9(h}r&9h}r'9h]r(9Uros/kinetic/web_interfacer)9assh ˆh }r*9h}r+9h}r,9h]r-9Uros-kinetic-web-msgsr.9asssuUtuw_multi_robot_msgsr/9}r09(h}r19h}r29h]r39Uros/kinetic/tuw_msgsr49assh ˆh }r59h}r69h}r79h]r89U ros-kinetic-tuw-multi-robot-msgsr99asssuUkobuki_dashboardr:9}r;9(h}r<9h}r=9h]r>9Uros/kinetic/kobuki_desktopr?9assh ˆh }r@9h}rA9h}rB9h]rC9Uros-kinetic-kobuki-dashboardrD9asssuUyocs_velocity_smootherrE9}rF9(h}rG9h}rH9h]rI9Uros/kinetic/yujin_ocsrJ9assh ˆh }rK9h}rL9h}rM9h]rN9U"ros-kinetic-yocs-velocity-smootherrO9asssuU nao_robotrP9}rQ9(h}rR9h}rS9h]rT9Uros/kinetic/nao_robotrU9assh ˆh }rV9h}rW9h}rX9h]rY9Uros-kinetic-nao-robotrZ9asssuUcloudwatch_metrics_collectorr[9}r\9(h}r]9h}r^9h]r_9U(ros/kinetic/cloudwatch_metrics_collectorr`9assh ˆh }ra9h}rb9h}rc9h]rd9U(ros-kinetic-cloudwatch-metrics-collectorre9asssuUpcl_conversionsrf9}rg9(h}rh9h}ri9h]rj9Uros/kinetic/pcl_conversionsrk9assh ˆh }rl9h}rm9h}rn9h]ro9Uros-kinetic-pcl-conversionsrp9asssuU rtt_std_srvsrq9}rr9(h}rs9h}rt9h]ru9Uros/kinetic/rtt_ros_integrationrv9assh ˆh }rw9h}rx9h}ry9h]rz9Uros-kinetic-rtt-std-srvsr{9asssuUopen_manipulator_with_tb3r|9}r}9(h}r~9h}r9h]r€9U%ros/kinetic/open_manipulator_with_tb3r9assh ˆh }r‚9h}rƒ9h}r„9h]r…9U%ros-kinetic-open-manipulator-with-tb3r†9asssuUhector_gazebo_pluginsr‡9}rˆ9(h}r‰9h}rŠ9h]r‹9Uros/kinetic/hector_gazeborŒ9assh ˆh }r9h}rŽ9h}r9h]r9U!ros-kinetic-hector-gazebo-pluginsr‘9asssuU rqt_py_treesr’9}r“9(h}r”9h}r•9h]r–9Uros/kinetic/rqt_py_treesr—9assh ˆh }r˜9h}r™9h}rš9h]r›9Uros-kinetic-rqt-py-treesrœ9asssuUlaser_scan_densifierr9}rž9(h}rŸ9h}r 9h]r¡9Uros/kinetic/cob_driverr¢9assh ˆh }r£9h}r¤9h}r¥9h]r¦9U ros-kinetic-laser-scan-densifierr§9asssuUrqt_image_viewr¨9}r©9(h}rª9h}r«9h]r¬9Uros/kinetic/rqt_image_viewr­9assh ˆh }r®9h}r¯9h}r°9h]r±9Uros-kinetic-rqt-image-viewr²9asssuU rqt_consoler³9}r´9(h}rµ9h}r¶9h]r·9Uros/kinetic/rqt_consoler¸9assh ˆh }r¹9h}rº9h}r»9h]r¼9Uros-kinetic-rqt-consoler½9asssuUjoint_state_publisherr¾9}r¿9(h}rÀ9h}rÁ9h]rÂ9U!ros/kinetic/joint_state_publisherrÃ9assh ˆh }rÄ9h}rÅ9h}rÆ9h]rÇ9U!ros-kinetic-joint-state-publisherrÈ9asssuU sicktoolboxrÉ9}rÊ9(h}rË9h}rÌ9h]rÍ9Uros/kinetic/sicktoolboxrÎ9assh ˆh }rÏ9h}rÐ9h}rÑ9h]rÒ9Uros-kinetic-sicktoolboxrÓ9asssuUautoware_external_msgsrÔ9}rÕ9(h}rÖ9h}r×9h]rØ9Uros/kinetic/autoware_msgsrÙ9assh ˆh }rÚ9h}rÛ9h}rÜ9h]rÝ9U"ros-kinetic-autoware-external-msgsrÞ9asssuUrh_p12_rn_descriptionrß9}rà9(h}rá9h}râ9h]rã9Uros/kinetic/rh_p12_rnrä9assh ˆh }rå9h}ræ9h}rç9h]rè9U!ros-kinetic-rh-p12-rn-descriptionré9asssuUabbrê9}rë9(h}rì9h}rí9h]rî9Uros/kinetic/abbrï9assh ˆh }rð9h}rñ9h}rò9h]ró9Uros-kinetic-abbrô9asssuUjaguar_descriptionrõ9}rö9(h}r÷9h}rø9h]rù9Uros/kinetic/jaguarrú9assh ˆh }rû9h}rü9h}rý9h]rþ9Uros-kinetic-jaguar-descriptionrÿ9asssuUxiaoqiang_depth_image_procr:}r:(h}r:h}r:h]r:Uros/kinetic/xiaoqiangr:assh ˆh }r:h}r:h}r:h]r :U&ros-kinetic-xiaoqiang-depth-image-procr :asssuUeigen_conversionsr :}r :(h}r :h}r:h]r:Uros/kinetic/geometryr:assh ˆh }r:h}r:h}r:h]r:Uros-kinetic-eigen-conversionsr:asssuU catch_rosr:}r:(h}r:h}r:h]r:Uros/kinetic/catch_rosr:assh ˆh }r:h}r:h}r:h]r:Uros-kinetic-catch-rosr :asssuU audio_commonr!:}r":(h}r#:h}r$:h]r%:Uros/kinetic/audio_commonr&:assh ˆh }r':h}r(:h}r):h]r*:Uros-kinetic-audio-commonr+:asssuUcob_hand_bridger,:}r-:(h}r.:h}r/:h]r0:Uros/kinetic/cob_handr1:assh ˆh }r2:h}r3:h}r4:h]r5:Uros-kinetic-cob-hand-bridger6:asssuUrosjava_bootstrapr7:}r8:(h}r9:h}r::h]r;:Uros/kinetic/rosjava_bootstrapr<:assh ˆh }r=:h}r>:h}r?:h]r@:Uros-kinetic-rosjava-bootstraprA:asssuUdwb_local_plannerrB:}rC:(h}rD:h}rE:h]rF:Uros/kinetic/robot_navigationrG:assh ˆh }rH:h}rI:h}rJ:h]rK:Uros-kinetic-dwb-local-plannerrL:asssuUmrpt_reactivenav2drM:}rN:(h}rO:h}rP:h]rQ:Uros/kinetic/mrpt_navigationrR:assh ˆh }rS:h}rT:h}rU:h]rV:Uros-kinetic-mrpt-reactivenav2drW:asssuUfkie_potree_rviz_pluginrX:}rY:(h}rZ:h}r[:h]r\:U#ros/kinetic/fkie_potree_rviz_pluginr]:assh ˆh }r^:h}r_:h}r`:h]ra:U#ros-kinetic-fkie-potree-rviz-pluginrb:asssuUrxrosrc:}rd:(h}re:h}rf:h]rg:Uros/kinetic/rxrosrh:assh ˆh }ri:h}rj:h}rk:h]rl:Uros-kinetic-rxrosrm:asssuUridgeback_desktoprn:}ro:(h}rp:h}rq:h]rr:Uros/kinetic/ridgeback_desktoprs:assh ˆh }rt:h}ru:h}rv:h]rw:Uros-kinetic-ridgeback-desktoprx:asssuUswri_profiler_msgsry:}rz:(h}r{:h}r|:h]r}:Uros/kinetic/swri_profilerr~:assh ˆh }r:h}r€:h}r:h]r‚:Uros-kinetic-swri-profiler-msgsrƒ:asssuU robot_modelr„:}r…:(h}r†:h}r‡:h]rˆ:Uros/kinetic/robot_modelr‰:assh ˆh }rŠ:h}r‹:h}rŒ:h]r:Uros-kinetic-robot-modelrŽ:asssuUkobuki_qtestsuiter:}r:(h}r‘:h}r’:h]r“:Uros/kinetic/kobuki_desktopr”:assh ˆh }r•:h}r–:h}r—:h]r˜:Uros-kinetic-kobuki-qtestsuiter™:asssuUmicrostrain_3dmgx2_imurš:}r›:(h}rœ:h}r:h]rž:U"ros/kinetic/microstrain_3dmgx2_imurŸ:assh ˆh }r :h}r¡:h}r¢:h]r£:U"ros-kinetic-microstrain-3dmgx2-imur¤:asssuUtask_allocationr¥:}r¦:(h}r§:h}r¨:h]r©:Uros/kinetic/swarm_functionsrª:assh ˆh }r«:h}r¬:h}r­:h]r®:Uros-kinetic-task-allocationr¯:asssuU hector_modelsr°:}r±:(h}r²:h}r³:h]r´:Uros/kinetic/hector_modelsrµ:assh ˆh }r¶:h}r·:h}r¸:h]r¹:Uros-kinetic-hector-modelsrº:asssuUfanuc_lrmate200ic_supportr»:}r¼:(h}r½:h}r¾:h]r¿:Uros/kinetic/fanucrÀ:assh ˆh }rÁ:h}rÂ:h}rÃ:h]rÄ:U%ros-kinetic-fanuc-lrmate200ic-supportrÅ:asssuUrocon_unreliable_experimentsrÆ:}rÇ:(h}rÈ:h}rÉ:h]rÊ:Uros/kinetic/rocon_multimasterrË:assh ˆh }rÌ:h}rÍ:h}rÎ:h]rÏ:U(ros-kinetic-rocon-unreliable-experimentsrÐ:asssuUcob_voltage_controlrÑ:}rÒ:(h}rÓ:h}rÔ:h]rÕ:Uros/kinetic/cob_driverrÖ:assh ˆh }r×:h}rØ:h}rÙ:h]rÚ:Uros-kinetic-cob-voltage-controlrÛ:asssuU moveit_pythonrÜ:}rÝ:(h}rÞ:h}rß:h]rà:Uros/kinetic/moveit_pythonrá:assh ˆh }râ:h}rã:h}rä:h]rå:Uros-kinetic-moveit-pythonræ:asssuU jsk_planningrç:}rè:(h}ré:h}rê:h]rë:Uros/kinetic/jsk_planningrì:assh ˆh }rí:h}rî:h}rï:h]rð:Uros-kinetic-jsk-planningrñ:asssuUpeople_tracking_filterrò:}ró:(h}rô:h}rõ:h]rö:Uros/kinetic/peopler÷:assh ˆh }rø:h}rù:h}rú:h]rû:U"ros-kinetic-people-tracking-filterrü:asssuUusb_cam_hardwarerý:}rþ:(h}rÿ:h}r;h]r;Uros/kinetic/usb_cam_hardwarer;assh ˆh }r;h}r;h}r;h]r;Uros-kinetic-usb-cam-hardwarer;asssuUrtt_tfr;}r ;(h}r ;h}r ;h]r ;Uros/kinetic/rtt_ros_integrationr ;assh ˆh }r;h}r;h}r;h]r;Uros-kinetic-rtt-tfr;asssuUpyros_interfaces_rosr;}r;(h}r;h}r;h]r;U ros/kinetic/pyros_interfaces_rosr;assh ˆh }r;h}r;h}r;h]r;U ros-kinetic-pyros-interfaces-rosr;asssuUvizr;}r;(h}r ;h}r!;h]r";Uros/kinetic/metapackagesr#;assh ˆh }r$;h}r%;h}r&;h]r';Uros-kinetic-vizr(;asssuUpiksi_multi_rtkr);}r*;(h}r+;h}r,;h]r-;Uros/kinetic/earth_rover_piksir.;assh ˆh }r/;h}r0;h}r1;h]r2;Uros-kinetic-piksi-multi-rtkr3;asssuUmoveit_ros_control_interfacer4;}r5;(h}r6;h}r7;h]r8;Uros/kinetic/moveitr9;assh ˆh }r:;h}r;;h}r<;h]r=;U(ros-kinetic-moveit-ros-control-interfacer>;asssuUrqt_runtime_monitorr?;}r@;(h}rA;h}rB;h]rC;Uros/kinetic/rqt_runtime_monitorrD;assh ˆh }rE;h}rF;h}rG;h]rH;Uros-kinetic-rqt-runtime-monitorrI;asssuU ecl_eigenrJ;}rK;(h}rL;h}rM;h]rN;Uros/kinetic/ecl_corerO;assh ˆh }rP;h}rQ;h}rR;h]rS;Uros-kinetic-ecl-eigenrT;asssuU vision_opencvrU;}rV;(h}rW;h}rX;h]rY;Uros/kinetic/vision_opencvrZ;assh ˆh }r[;h}r\;h}r];h]r^;Uros-kinetic-vision-opencvr_;asssuU lyap_controlr`;}ra;(h}rb;h}rc;h]rd;Uros/kinetic/lyap_controlre;assh ˆh }rf;h}rg;h}rh;h]ri;Uros-kinetic-lyap-controlrj;asssuUtrac_ikrk;}rl;(h}rm;h}rn;h]ro;Uros/kinetic/trac_ikrp;assh ˆh }rq;h}rr;h}rs;h]rt;Uros-kinetic-trac-ikru;asssuUnao_interaction_launchersrv;}rw;(h}rx;h}ry;h]rz;Uros/kinetic/nao_interactionr{;assh ˆh }r|;h}r};h}r~;h]r;U%ros-kinetic-nao-interaction-launchersr€;asssuU ros_realtimer;}r‚;(h}rƒ;h}r„;h]r…;Uros/kinetic/ros_realtimer†;assh ˆh }r‡;h}rˆ;h}r‰;h]rŠ;Uros-kinetic-ros-realtimer‹;asssuUmultisense_librŒ;}r;(h}rŽ;h}r;h]r;Uros/kinetic/multisense_rosr‘;assh ˆh }r’;h}r“;h}r”;h]r•;Uros-kinetic-multisense-libr–;asssuU robot_upstartr—;}r˜;(h}r™;h}rš;h]r›;Uros/kinetic/robot_upstartrœ;assh ˆh }r;h}rž;h}rŸ;h]r ;Uros-kinetic-robot-upstartr¡;asssuU jog_controlr¢;}r£;(h}r¤;h}r¥;h]r¦;Uros/kinetic/jog_controlr§;assh ˆh }r¨;h}r©;h}rª;h]r«;Uros-kinetic-jog-controlr¬;asssuUsemantic_point_annotatorr­;}r®;(h}r¯;h}r°;h]r±;Uros/kinetic/pr2_navigationr²;assh ˆh }r³;h}r´;h}rµ;h]r¶;U$ros-kinetic-semantic-point-annotatorr·;asssuUlibntcanr¸;}r¹;(h}rº;h}r»;h]r¼;Uros/kinetic/cob_externr½;assh ˆh }r¾;h}r¿;h}rÀ;h]rÁ;Uros-kinetic-libntcanrÂ;asssuUcollada_robotsrÃ;}rÄ;(h}rÅ;h}rÆ;h]rÇ;Uros/kinetic/openrave_planningrÈ;assh ˆh }rÉ;h}rÊ;h}rË;h]rÌ;Uros-kinetic-collada-robotsrÍ;asssuUnavigation_experimentalrÎ;}rÏ;(h}rÐ;h}rÑ;h]rÒ;U#ros/kinetic/navigation_experimentalrÓ;assh ˆh }rÔ;h}rÕ;h}rÖ;h]r×;U#ros-kinetic-navigation-experimentalrØ;asssuUswri_system_utilrÙ;}rÚ;(h}rÛ;h}rÜ;h]rÝ;Uros/kinetic/marti_commonrÞ;assh ˆh }rß;h}rà;h}rá;h]râ;Uros-kinetic-swri-system-utilrã;asssuU launch_toolsrä;}rå;(h}ræ;h}rç;h]rè;Uros/kinetic/srv_toolsré;assh ˆh }rê;h}rë;h}rì;h]rí;Uros-kinetic-launch-toolsrî;asssuU youbot_driverrï;}rð;(h}rñ;h}rò;h]ró;Uros/kinetic/youbot_driverrô;assh ˆh }rõ;h}rö;h}r÷;h]rø;Uros-kinetic-youbot-driverrù;asssuUdepthimage_to_laserscanrú;}rû;(h}rü;h}rý;h]rþ;U#ros/kinetic/depthimage_to_laserscanrÿ;assh ˆh }r<h}r<h}r<h]r<U#ros-kinetic-depthimage-to-laserscanr<asssuUuuv_world_ros_plugins_msgsr<}r<(h}r<h}r<h]r <Uros/kinetic/uuv_simulatorr <assh ˆh }r <h}r <h}r <h]r<U&ros-kinetic-uuv-world-ros-plugins-msgsr<asssuUuuv_sensor_ros_pluginsr<}r<(h}r<h}r<h]r<Uros/kinetic/uuv_simulatorr<assh ˆh }r<h}r<h}r<h]r<U"ros-kinetic-uuv-sensor-ros-pluginsr<asssuUnonpersistent_voxel_layerr<}r<(h}r<h}r<h]r<U%ros/kinetic/nonpersistent_voxel_layerr <assh ˆh }r!<h}r"<h}r#<h]r$<U%ros-kinetic-nonpersistent-voxel-layerr%<asssuUrsm_msgsr&<}r'<(h}r(<h}r)<h]r*<Uros/kinetic/robot_statemachiner+<assh ˆh }r,<h}r-<h}r.<h]r/<Uros-kinetic-rsm-msgsr0<asssuUrc_common_msgsr1<}r2<(h}r3<h}r4<h]r5<Uros/kinetic/rc_common_msgsr6<assh ˆh }r7<h}r8<h}r9<h]r:<Uros-kinetic-rc-common-msgsr;<asssuUmanipulation_msgsr<<}r=<(h}r><h}r?<h]r@<Uros/kinetic/manipulation_msgsrA<assh ˆh }rB<h}rC<h}rD<h]rE<Uros-kinetic-manipulation-msgsrF<asssuUvideo_stream_opencvrG<}rH<(h}rI<h}rJ<h]rK<Uros/kinetic/video_stream_opencvrL<assh ˆh }rM<h}rN<h}rO<h]rP<Uros-kinetic-video-stream-opencvrQ<asssuUgrid_map_demosrR<}rS<(h}rT<h}rU<h]rV<Uros/kinetic/grid_maprW<assh ˆh }rX<h}rY<h}rZ<h]r[<Uros-kinetic-grid-map-demosr\<asssuUunderwater_sensor_msgsr]<}r^<(h}r_<h}r`<h]ra<U!ros/kinetic/underwater_simulationrb<assh ˆh }rc<h}rd<h}re<h]rf<U"ros-kinetic-underwater-sensor-msgsrg<asssuUecl_mathrh<}ri<(h}rj<h}rk<h]rl<Uros/kinetic/ecl_corerm<assh ˆh }rn<h}ro<h}rp<h]rq<Uros-kinetic-ecl-mathrr<asssuUexecutive_smach_visualizationrs<}rt<(h}ru<h}rv<h]rw<U)ros/kinetic/executive_smach_visualizationrx<assh ˆh }ry<h}rz<h}r{<h]r|<U)ros-kinetic-executive-smach-visualizationr}<asssuU imagezero_rosr~<}r<(h}r€<h}r<h]r‚<Uros/kinetic/imagezero_transportrƒ<assh ˆh }r„<h}r…<h}r†<h]r‡<Uros-kinetic-imagezero-rosrˆ<asssuUecl_linear_algebrar‰<}rŠ<(h}r‹<h}rŒ<h]r<Uros/kinetic/ecl_corerŽ<assh ˆh }r<h}r<h}r‘<h]r’<Uros-kinetic-ecl-linear-algebrar“<asssuUrqt_pr2_dashboardr”<}r•<(h}r–<h}r—<h]r˜<Uros/kinetic/rqt_pr2_dashboardr™<assh ˆh }rš<h}r›<h}rœ<h]r<Uros-kinetic-rqt-pr2-dashboardrž<asssuU aruco_msgsrŸ<}r <(h}r¡<h}r¢<h]r£<Uros/kinetic/aruco_rosr¤<assh ˆh }r¥<h}r¦<h}r§<h]r¨<Uros-kinetic-aruco-msgsr©<asssuUtowrrª<}r«<(h}r¬<h}r­<h]r®<Uros/kinetic/towrr¯<assh ˆh }r°<h}r±<h}r²<h]r³<Uros-kinetic-towrr´<asssuUop3_web_setting_toolrµ<}r¶<(h}r·<h}r¸<h]r¹<Uros/kinetic/robotis_op3_toolsrº<assh ˆh }r»<h}r¼<h}r½<h]r¾<U ros-kinetic-op3-web-setting-toolr¿<asssuUgazebo_ros_pkgsrÀ<}rÁ<(h}rÂ<h}rÃ<h]rÄ<Uros/kinetic/gazebo_ros_pkgsrÅ<assh ˆh }rÆ<h}rÇ<h}rÈ<h]rÉ<Uros-kinetic-gazebo-ros-pkgsrÊ<asssuU smach_rosrË<}rÌ<(h}rÍ<h}rÎ<h]rÏ<Uros/kinetic/executive_smachrÐ<assh ˆh }rÑ<h}rÒ<h}rÓ<h]rÔ<Uros-kinetic-smach-rosrÕ<asssuU pyclearsilverrÖ<}r×<(h}rØ<h}rÙ<h]rÚ<Uros/kinetic/web_interfacerÛ<assh ˆh }rÜ<h}rÝ<h}rÞ<h]rß<Uros-kinetic-pyclearsilverrà<asssuUjoint_states_settlerrá<}râ<(h}rã<h}rä<h]rå<Uros/kinetic/calibrationræ<assh ˆh }rç<h}rè<h}ré<h]rê<U ros-kinetic-joint-states-settlerrë<asssuUdynamixel_controllersrì<}rí<(h}rî<h}rï<h]rð<Uros/kinetic/dynamixel_motorrñ<assh ˆh }rò<h}ró<h}rô<h]rõ<U!ros-kinetic-dynamixel-controllersrö<asssuUodom_frame_publisherr÷<}rø<(h}rù<h}rú<h]rû<U ros/kinetic/odom_frame_publisherrü<assh ˆh }rý<h}rþ<h}rÿ<h]r=U ros-kinetic-odom-frame-publisherr=asssuU cob_driverr=}r=(h}r=h}r=h]r=Uros/kinetic/cob_driverr=assh ˆh }r=h}r =h}r =h]r =Uros-kinetic-cob-driverr =asssuUsbpl_lattice_plannerr =}r=(h}r=h}r=h]r=U#ros/kinetic/navigation_experimentalr=assh ˆh }r=h}r=h}r=h]r=U ros-kinetic-sbpl-lattice-plannerr=asssuUpr2_moveit_configr=}r=(h}r=h}r=h]r=Uros/kinetic/moveit_pr2r=assh ˆh }r=h}r=h}r =h]r!=Uros-kinetic-pr2-moveit-configr"=asssuU grid_map_pclr#=}r$=(h}r%=h}r&=h]r'=Uros/kinetic/grid_mapr(=assh ˆh }r)=h}r*=h}r+=h]r,=Uros-kinetic-grid-map-pclr-=asssuUosm_cartographyr.=}r/=(h}r0=h}r1=h]r2=Uros/kinetic/open_street_mapr3=assh ˆh }r4=h}r5=h}r6=h]r7=Uros-kinetic-osm-cartographyr8=asssuUpcl_rosr9=}r:=(h}r;=h}r<=h]r==Uros/kinetic/perception_pclr>=assh ˆh }r?=h}r@=h}rA=h]rB=Uros-kinetic-pcl-rosrC=asssuUcsmrD=}rE=(h}rF=h}rG=h]rH=Uros/kinetic/csmrI=assh ˆh }rJ=h}rK=h}rL=h]rM=Uros-kinetic-csmrN=asssuUroslz4rO=}rP=(h}rQ=h}rR=h]rS=Uros/kinetic/ros_commrT=assh ˆh }rU=h}rV=h}rW=h]rX=Uros-kinetic-roslz4rY=asssuU map_laserrZ=}r[=(h}r\=h}r]=h]r^=Uros/kinetic/laser_filteringr_=assh ˆh }r`=h}ra=h}rb=h]rc=Uros-kinetic-map-laserrd=asssuUrqt_srvre=}rf=(h}rg=h}rh=h]ri=Uros/kinetic/rqt_srvrj=assh ˆh }rk=h}rl=h}rm=h]rn=Uros-kinetic-rqt-srvro=asssuU flexbe_mirrorrp=}rq=(h}rr=h}rs=h]rt=Uros/kinetic/flexberu=assh ˆh }rv=h}rw=h}rx=h]ry=Uros-kinetic-flexbe-mirrorrz=asssuUkobuki_safety_controllerr{=}r|=(h}r}=h}r~=h]r=Uros/kinetic/kobukir€=assh ˆh }r=h}r‚=h}rƒ=h]r„=U$ros-kinetic-kobuki-safety-controllerr…=asssuU!object_recognition_reconstructionr†=}r‡=(h}rˆ=h}r‰=h]rŠ=U-ros/kinetic/object_recognition_reconstructionr‹=assh ˆh }rŒ=h}r=h}rŽ=h]r=U-ros-kinetic-object-recognition-reconstructionr=asssuUturtlebot3_autorace_camerar‘=}r’=(h}r“=h}r”=h]r•=Uros/kinetic/turtlebot3_autoracer–=assh ˆh }r—=h}r˜=h}r™=h]rš=U&ros-kinetic-turtlebot3-autorace-camerar›=asssuUeigen_stl_containersrœ=}r=(h}rž=h}rŸ=h]r =U ros/kinetic/eigen_stl_containersr¡=assh ˆh }r¢=h}r£=h}r¤=h]r¥=U ros-kinetic-eigen-stl-containersr¦=asssuUnav_msgsr§=}r¨=(h}r©=h}rª=h]r«=Uros/kinetic/common_msgsr¬=assh ˆh }r­=h}r®=h}r¯=h]r°=Uros-kinetic-nav-msgsr±=asssuUtalos_description_calibrationr²=}r³=(h}r´=h}rµ=h]r¶=Uros/kinetic/talos_robotr·=assh ˆh }r¸=h}r¹=h}rº=h]r»=U)ros-kinetic-talos-description-calibrationr¼=asssuUvariantr½=}r¾=(h}r¿=h}rÀ=h]rÁ=Uros/kinetic/variantrÂ=assh ˆh }rÃ=h}rÄ=h}rÅ=h]rÆ=Uros-kinetic-variantrÇ=asssuUsummit_xl_commonrÈ=}rÉ=(h}rÊ=h}rË=h]rÌ=Uros/kinetic/summit_xl_commonrÍ=assh ˆh }rÎ=h}rÏ=h}rÐ=h]rÑ=Uros-kinetic-summit-xl-commonrÒ=asssuUrocon_bubble_iconsrÓ=}rÔ=(h}rÕ=h}rÖ=h]r×=Uros/kinetic/rocon_toolsrØ=assh ˆh }rÙ=h}rÚ=h}rÛ=h]rÜ=Uros-kinetic-rocon-bubble-iconsrÝ=asssuUffrÞ=}rß=(h}rà=h}rá=h]râ=Uros/kinetic/jsk_3rdpartyrã=assh ˆh }rä=h}rå=h}ræ=h]rç=Uros-kinetic-ffrè=asssuUrtt_sensor_msgsré=}rê=(h}rë=h}rì=h]rí=Uros/kinetic/rtt_ros_integrationrî=assh ˆh }rï=h}rð=h}rñ=h]rò=Uros-kinetic-rtt-sensor-msgsró=asssuUlockfreerô=}rõ=(h}rö=h}r÷=h]rø=Uros/kinetic/ros_realtimerù=assh ˆh }rú=h}rû=h}rü=h]rý=Uros-kinetic-lockfreerþ=asssuUdenso_robot_descriptionsrÿ=}r>(h}r>h}r>h]r>Uros/kinetic/denso_robot_rosr>assh ˆh }r>h}r>h}r>h]r>U$ros-kinetic-denso-robot-descriptionsr >asssuUmoveit_chomp_optimizer_adapterr >}r >(h}r >h}r >h]r>Uros/kinetic/moveitr>assh ˆh }r>h}r>h}r>h]r>U*ros-kinetic-moveit-chomp-optimizer-adapterr>asssuU"industrial_robot_status_controllerr>}r>(h}r>h}r>h]r>U.ros/kinetic/industrial_robot_status_controllerr>assh ˆh }r>h}r>h}r>h]r>U.ros-kinetic-industrial-robot-status-controllerr>asssuU#pr2_controller_configuration_gazebor >}r!>(h}r">h}r#>h]r$>Uros/kinetic/pr2_simulatorr%>assh ˆh }r&>h}r'>h}r(>h]r)>U/ros-kinetic-pr2-controller-configuration-gazebor*>asssuU romeo_robotr+>}r,>(h}r->h}r.>h]r/>Uros/kinetic/romeo_robotr0>assh ˆh }r1>h}r2>h}r3>h]r4>Uros-kinetic-romeo-robotr5>asssuU robotnik_msgsr6>}r7>(h}r8>h}r9>h]r:>Uros/kinetic/robotnik_msgsr;>assh ˆh }r<>h}r=>h}r>>h]r?>Uros-kinetic-robotnik-msgsr@>asssuUdenso_robot_moveit_configrA>}rB>(h}rC>h}rD>h]rE>Uros/kinetic/denso_robot_rosrF>assh ˆh }rG>h}rH>h}rI>h]rJ>U%ros-kinetic-denso-robot-moveit-configrK>asssuUlex_common_msgsrL>}rM>(h}rN>h}rO>h]rP>Uros/kinetic/lex_noderQ>assh ˆh }rR>h}rS>h}rT>h]rU>Uros-kinetic-lex-common-msgsrV>asssuUurdfrW>}rX>(h}rY>h}rZ>h]r[>Uros/kinetic/urdfr\>assh ˆh }r]>h}r^>h}r_>h]r`>Uros-kinetic-urdfra>asssuUresource_retrieverrb>}rc>(h}rd>h}re>h]rf>Uros/kinetic/resource_retrieverrg>assh ˆh }rh>h}ri>h}rj>h]rk>Uros-kinetic-resource-retrieverrl>asssuUrh_p12_rn_gazeborm>}rn>(h}ro>h}rp>h]rq>Uros/kinetic/rh_p12_rnrr>assh ˆh }rs>h}rt>h}ru>h]rv>Uros-kinetic-rh-p12-rn-gazeborw>asssuUdelphi_esr_msgsrx>}ry>(h}rz>h}r{>h]r|>Uros/kinetic/astuff_sensor_msgsr}>assh ˆh }r~>h}r>h}r€>h]r>Uros-kinetic-delphi-esr-msgsr‚>asssuUfiltersrƒ>}r„>(h}r…>h}r†>h]r‡>Uros/kinetic/filtersrˆ>assh ˆh }r‰>h}rŠ>h}r‹>h]rŒ>Uros-kinetic-filtersr>asssuU rdl_cmakerŽ>}r>(h}r>h}r‘>h]r’>Uros/kinetic/rdlr“>assh ˆh }r”>h}r•>h}r–>h]r—>Uros-kinetic-rdl-cmaker˜>asssuUthormang3_toolsr™>}rš>(h}r›>h}rœ>h]r>Uros/kinetic/thormang3_toolsrž>assh ˆh }rŸ>h}r >h}r¡>h]r¢>Uros-kinetic-thormang3-toolsr£>asssuUsummit_xl_sim_bringupr¤>}r¥>(h}r¦>h}r§>h]r¨>Uros/kinetic/summit_xl_simr©>assh ˆh }rª>h}r«>h}r¬>h]r­>U!ros-kinetic-summit-xl-sim-bringupr®>asssuUflir_ptu_descriptionr¯>}r°>(h}r±>h}r²>h]r³>Uros/kinetic/flir_ptur´>assh ˆh }rµ>h}r¶>h}r·>h]r¸>U ros-kinetic-flir-ptu-descriptionr¹>asssuU plot_toolsrº>}r»>(h}r¼>h}r½>h]r¾>Uros/kinetic/srv_toolsr¿>assh ˆh }rÀ>h}rÁ>h}rÂ>h]rÃ>Uros-kinetic-plot-toolsrÄ>asssuUperception_pclrÅ>}rÆ>(h}rÇ>h}rÈ>h]rÉ>Uros/kinetic/perception_pclrÊ>assh ˆh }rË>h}rÌ>h}rÍ>h]rÎ>Uros-kinetic-perception-pclrÏ>asssuU fetch_mapsrÐ>}rÑ>(h}rÒ>h}rÓ>h]rÔ>Uros/kinetic/fetch_rosrÕ>assh ˆh }rÖ>h}r×>h}rØ>h]rÙ>Uros-kinetic-fetch-mapsrÚ>asssuUkhi_robot_controlrÛ>}rÜ>(h}rÝ>h}rÞ>h]rß>Uros/kinetic/khi_robotrà>assh ˆh }rá>h}râ>h}rã>h]rä>Uros-kinetic-khi-robot-controlrå>asssuUdesistek_saga_descriptionræ>}rç>(h}rè>h}ré>h]rê>Uros/kinetic/desistek_sagarë>assh ˆh }rì>h}rí>h}rî>h]rï>U%ros-kinetic-desistek-saga-descriptionrð>asssuUcombined_robot_hwrñ>}rò>(h}ró>h}rô>h]rõ>Uros/kinetic/ros_controlrö>assh ˆh }r÷>h}rø>h}rù>h]rú>Uros-kinetic-combined-robot-hwrû>asssuUpr2_2dnav_slamrü>}rý>(h}rþ>h}rÿ>h]r?Uros/kinetic/pr2_navigation_appsr?assh ˆh }r?h}r?h}r?h]r?Uros-kinetic-pr2-2dnav-slamr?asssuUmoveit_kinematicsr?}r?(h}r ?h}r ?h]r ?Uros/kinetic/moveitr ?assh ˆh }r ?h}r?h}r?h]r?Uros-kinetic-moveit-kinematicsr?asssuU dataspeed_pdsr?}r?(h}r?h}r?h]r?Uros/kinetic/dataspeed_pdsr?assh ˆh }r?h}r?h}r?h]r?Uros-kinetic-dataspeed-pdsr?asssuUfanuc_cr7ia_supportr?}r?(h}r?h}r ?h]r!?Uros/kinetic/fanucr"?assh ˆh }r#?h}r$?h}r%?h]r&?Uros-kinetic-fanuc-cr7ia-supportr'?asssuU urdfdom_pyr(?}r)?(h}r*?h}r+?h]r,?Uros/kinetic/urdfdom_pyr-?assh ˆh }r.?h}r/?h}r0?h]r1?Uros-kinetic-urdfdom-pyr2?asssuU stdr_parserr3?}r4?(h}r5?h}r6?h]r7?Uros/kinetic/stdr_simulatorr8?assh ˆh }r9?h}r:?h}r;?h]r?}r??(h}r@?h}rA?h]rB?Uros/kinetic/rqt_actionrC?assh ˆh }rD?h}rE?h}rF?h]rG?Uros-kinetic-rqt-actionrH?asssuU roseus_mongorI?}rJ?(h}rK?h}rL?h]rM?Uros/kinetic/jsk_roseusrN?assh ˆh }rO?h}rP?h}rQ?h]rR?Uros-kinetic-roseus-mongorS?asssuUgripper_action_controllerrT?}rU?(h}rV?h}rW?h]rX?Uros/kinetic/ros_controllersrY?assh ˆh }rZ?h}r[?h}r\?h]r]?U%ros-kinetic-gripper-action-controllerr^?asssuUrb1_base_2dnavr_?}r`?(h}ra?h}rb?h]rc?Uros/kinetic/rb1_base_simrd?assh ˆh }re?h}rf?h}rg?h]rh?Uros-kinetic-rb1-base-2dnavri?asssuUthormang3_foot_step_generatorrj?}rk?(h}rl?h}rm?h]rn?Uros/kinetic/thormang3_opcro?assh ˆh }rp?h}rq?h}rr?h]rs?U)ros-kinetic-thormang3-foot-step-generatorrt?asssuUworld_canvas_client_pyru?}rv?(h}rw?h}rx?h]ry?Uros/kinetic/world_canvas_libsrz?assh ˆh }r{?h}r|?h}r}?h]r~?U"ros-kinetic-world-canvas-client-pyr?asssuUdynamixel_workbenchr€?}r?(h}r‚?h}rƒ?h]r„?Uros/kinetic/dynamixel-workbenchr…?assh ˆh }r†?h}r‡?h}rˆ?h]r‰?Uros-kinetic-dynamixel-workbenchrŠ?asssuU schunk_sdhr‹?}rŒ?(h}r?h}rŽ?h]r?U#ros/kinetic/schunk_modular_roboticsr?assh ˆh }r‘?h}r’?h}r“?h]r”?Uros-kinetic-schunk-sdhr•?asssuUop3_online_walking_moduler–?}r—?(h}r˜?h}r™?h]rš?Uros/kinetic/robotis_op3r›?assh ˆh }rœ?h}r?h}rž?h]rŸ?U%ros-kinetic-op3-online-walking-moduler ?asssuU mini_maxwellr¡?}r¢?(h}r£?h}r¤?h]r¥?Uros/kinetic/jsk_3rdpartyr¦?assh ˆh }r§?h}r¨?h}r©?h]rª?Uros-kinetic-mini-maxwellr«?asssuUdynamic_edt_3dr¬?}r­?(h}r®?h}r¯?h]r°?Uros/kinetic/octomapr±?assh ˆh }r²?h}r³?h}r´?h]rµ?Uros-kinetic-dynamic-edt-3dr¶?asssuU sand_islandr·?}r¸?(h}r¹?h}rº?h]r»?Uros/kinetic/uav_testingr¼?assh ˆh }r½?h}r¾?h}r¿?h]rÀ?Uros-kinetic-sand-islandrÁ?asssuUthormang3_base_modulerÂ?}rÃ?(h}rÄ?h}rÅ?h]rÆ?Uros/kinetic/thormang3_mpcrÇ?assh ˆh }rÈ?h}rÉ?h}rÊ?h]rË?U!ros-kinetic-thormang3-base-modulerÌ?asssuU tuw_ellipsesrÍ?}rÎ?(h}rÏ?h}rÐ?h]rÑ?U ros/kinetic/tuw_marker_detectionrÒ?assh ˆh }rÓ?h}rÔ?h}rÕ?h]rÖ?Uros-kinetic-tuw-ellipsesr×?asssuUswri_math_utilrØ?}rÙ?(h}rÚ?h}rÛ?h]rÜ?Uros/kinetic/marti_commonrÝ?assh ˆh }rÞ?h}rß?h}rà?h]rá?Uros-kinetic-swri-math-utilrâ?asssuUlocomotor_msgsrã?}rä?(h}rå?h}ræ?h]rç?Uros/kinetic/robot_navigationrè?assh ˆh }ré?h}rê?h}rë?h]rì?Uros-kinetic-locomotor-msgsrí?asssuUyocs_safety_controllerrî?}rï?(h}rð?h}rñ?h]rò?Uros/kinetic/yujin_ocsró?assh ˆh }rô?h}rõ?h}rö?h]r÷?U"ros-kinetic-yocs-safety-controllerrø?asssuUati_force_torquerù?}rú?(h}rû?h}rü?h]rý?Uros/kinetic/ati_force_torquerþ?assh ˆh }rÿ?h}r@h}r@h]r@Uros-kinetic-ati-force-torquer@asssuU prbt_gazebor@}r@(h}r@h}r@h]r@Uros/kinetic/pilz_robotsr @assh ˆh }r @h}r @h}r @h]r @Uros-kinetic-prbt-gazebor@asssuU rslidar_msgsr@}r@(h}r@h}r@h]r@Uros/kinetic/robosenser@assh ˆh }r@h}r@h}r@h]r@Uros-kinetic-rslidar-msgsr@asssuUactionlib_lispr@}r@(h}r@h}r@h]r@Uros/kinetic/roslisp_commonr@assh ˆh }r @h}r!@h}r"@h]r#@Uros-kinetic-actionlib-lispr$@asssuUcalibration_setup_helperr%@}r&@(h}r'@h}r(@h]r)@Uros/kinetic/calibrationr*@assh ˆh }r+@h}r,@h}r-@h]r.@U$ros-kinetic-calibration-setup-helperr/@asssuUvelodyne_descriptionr0@}r1@(h}r2@h}r3@h]r4@Uros/kinetic/velodyne_simulatorr5@assh ˆh }r6@h}r7@h}r8@h]r9@U ros-kinetic-velodyne-descriptionr:@asssuUmbf_abstract_corer;@}r<@(h}r=@h}r>@h]r?@Uros/kinetic/move_base_flexr@@assh ˆh }rA@h}rB@h}rC@h]rD@Uros-kinetic-mbf-abstract-corerE@asssuUrocon_master_inforF@}rG@(h}rH@h}rI@h]rJ@Uros/kinetic/rocon_toolsrK@assh ˆh }rL@h}rM@h}rN@h]rO@Uros-kinetic-rocon-master-inforP@asssuUtango_ros_messagesrQ@}rR@(h}rS@h}rT@h]rU@Uros/kinetic/tango_rosrV@assh ˆh }rW@h}rX@h}rY@h]rZ@Uros-kinetic-tango-ros-messagesr[@asssuUslam_constructorr\@}r]@(h}r^@h}r_@h]r`@Uros/kinetic/slam_constructorra@assh ˆh }rb@h}rc@h}rd@h]re@Uros-kinetic-slam-constructorrf@asssuUhector_compressed_map_transportrg@}rh@(h}ri@h}rj@h]rk@Uros/kinetic/hector_slamrl@assh ˆh }rm@h}rn@h}ro@h]rp@U+ros-kinetic-hector-compressed-map-transportrq@asssuU op3_bringuprr@}rs@(h}rt@h}ru@h]rv@Uros/kinetic/robotis_op3_demorw@assh ˆh }rx@h}ry@h}rz@h]r{@Uros-kinetic-op3-bringupr|@asssuUcob_moveit_interfacer}@}r~@(h}r@h}r€@h]r@Uros/kinetic/cob_manipulationr‚@assh ˆh }rƒ@h}r„@h}r…@h]r†@U ros-kinetic-cob-moveit-interfacer‡@asssuUthormang3_action_module_msgsrˆ@}r‰@(h}rŠ@h}r‹@h]rŒ@Uros/kinetic/thormang3_msgsr@assh ˆh }rŽ@h}r@h}r@h]r‘@U(ros-kinetic-thormang3-action-module-msgsr’@asssuU driver_baser“@}r”@(h}r•@h}r–@h]r—@Uros/kinetic/driver_commonr˜@assh ˆh }r™@h}rš@h}r›@h]rœ@Uros-kinetic-driver-baser@asssuU rtt_rosparamrž@}rŸ@(h}r @h}r¡@h]r¢@Uros/kinetic/rtt_ros_integrationr£@assh ˆh }r¤@h}r¥@h}r¦@h]r§@Uros-kinetic-rtt-rosparamr¨@asssuU rocon_msgsr©@}rª@(h}r«@h}r¬@h]r­@Uros/kinetic/rocon_msgsr®@assh ˆh }r¯@h}r°@h}r±@h]r²@Uros-kinetic-rocon-msgsr³@asssuU yujin_ocsr´@}rµ@(h}r¶@h}r·@h]r¸@Uros/kinetic/yujin_ocsr¹@assh ˆh }rº@h}r»@h}r¼@h]r½@Uros-kinetic-yujin-ocsr¾@asssuUspatio_temporal_voxel_layerr¿@}rÀ@(h}rÁ@h}rÂ@h]rÃ@U'ros/kinetic/spatio_temporal_voxel_layerrÄ@assh ˆh }rÅ@h}rÆ@h}rÇ@h]rÈ@U'ros-kinetic-spatio-temporal-voxel-layerrÉ@asssuU roch_teleoprÊ@}rË@(h}rÌ@h}rÍ@h]rÎ@Uros/kinetic/rochrÏ@assh ˆh }rÐ@h}rÑ@h}rÒ@h]rÓ@Uros-kinetic-roch-teleoprÔ@asssuUcare_o_bot_simulationrÕ@}rÖ@(h}r×@h}rØ@h]rÙ@Uros/kinetic/care_o_botrÚ@assh ˆh }rÛ@h}rÜ@h}rÝ@h]rÞ@U!ros-kinetic-care-o-bot-simulationrß@asssuUjsk_recognitionrà@}rá@(h}râ@h}rã@h]rä@Uros/kinetic/jsk_recognitionrå@assh ˆh }ræ@h}rç@h}rè@h]ré@Uros-kinetic-jsk-recognitionrê@asssuUmagni_descriptionrë@}rì@(h}rí@h}rî@h]rï@Uros/kinetic/magni_robotrð@assh ˆh }rñ@h}rò@h}ró@h]rô@Uros-kinetic-magni-descriptionrõ@asssuU pr2_teleoprö@}r÷@(h}rø@h}rù@h]rú@Uros/kinetic/pr2_appsrû@assh ˆh }rü@h}rý@h}rþ@h]rÿ@Uros-kinetic-pr2-teleoprAasssuUturtlebot_interactive_markersrA}rA(h}rAh}rAh]rAU"ros/kinetic/turtlebot_interactionsrAassh ˆh }rAh}rAh}r Ah]r AU)ros-kinetic-turtlebot-interactive-markersr AasssuUposition_controllersr A}r A(h}rAh}rAh]rAUros/kinetic/ros_controllersrAassh ˆh }rAh}rAh}rAh]rAU ros-kinetic-position-controllersrAasssuUimage_recognitionrA}rA(h}rAh}rAh]rAUros/kinetic/image_recognitionrAassh ˆh }rAh}rAh}rAh]r AUros-kinetic-image-recognitionr!AasssuUneonavigation_msgsr"A}r#A(h}r$Ah}r%Ah]r&AUros/kinetic/neonavigation_msgsr'Aassh ˆh }r(Ah}r)Ah}r*Ah]r+AUros-kinetic-neonavigation-msgsr,AasssuUromeo_moveit_configr-A}r.A(h}r/Ah}r0Ah]r1AUros/kinetic/romeo_moveit_configr2Aassh ˆh }r3Ah}r4Ah}r5Ah]r6AUros-kinetic-romeo-moveit-configr7AasssuUindustrial_deprecatedr8A}r9A(h}r:Ah}r;Ah]rAh}r?Ah}r@Ah]rAAU!ros-kinetic-industrial-deprecatedrBAasssuU phoxi_camerarCA}rDA(h}rEAh}rFAh]rGAUros/kinetic/phoxi_camerarHAassh ˆh }rIAh}rJAh}rKAh]rLAUros-kinetic-phoxi-camerarMAasssuUpr2_2dnav_localrNA}rOA(h}rPAh}rQAh]rRAUros/kinetic/pr2_navigation_appsrSAassh ˆh }rTAh}rUAh}rVAh]rWAUros-kinetic-pr2-2dnav-localrXAasssuUschunk_modular_roboticsrYA}rZA(h}r[Ah}r\Ah]r]AU#ros/kinetic/schunk_modular_roboticsr^Aassh ˆh }r_Ah}r`Ah}raAh]rbAU#ros-kinetic-schunk-modular-roboticsrcAasssuUturtlebot3_slamrdA}reA(h}rfAh}rgAh]rhAUros/kinetic/turtlebot3riAassh ˆh }rjAh}rkAh}rlAh]rmAUros-kinetic-turtlebot3-slamrnAasssuU glkh_solverroA}rpA(h}rqAh}rrAh]rsAUros/kinetic/lkhrtAassh ˆh }ruAh}rvAh}rwAh]rxAUros-kinetic-glkh-solverryAasssuUturtlebot3_bringuprzA}r{A(h}r|Ah}r}Ah]r~AUros/kinetic/turtlebot3rAassh ˆh }r€Ah}rAh}r‚Ah]rƒAUros-kinetic-turtlebot3-bringupr„AasssuUkatana_descriptionr…A}r†A(h}r‡Ah}rˆAh]r‰AUros/kinetic/katana_driverrŠAassh ˆh }r‹Ah}rŒAh}rAh]rŽAUros-kinetic-katana-descriptionrAasssuU husky_desktoprA}r‘A(h}r’Ah}r“Ah]r”AUros/kinetic/huskyr•Aassh ˆh }r–Ah}r—Ah}r˜Ah]r™AUros-kinetic-husky-desktopršAasssuUjoystick_interruptr›A}rœA(h}rAh}ržAh]rŸAUros/kinetic/neonavigationr Aassh ˆh }r¡Ah}r¢Ah}r£Ah]r¤AUros-kinetic-joystick-interruptr¥AasssuUrb1_base_gazebor¦A}r§A(h}r¨Ah}r©Ah]rªAUros/kinetic/rb1_base_simr«Aassh ˆh }r¬Ah}r­Ah}r®Ah]r¯AUros-kinetic-rb1-base-gazebor°AasssuUobject_recognition_msgsr±A}r²A(h}r³Ah}r´Ah]rµAU#ros/kinetic/object_recognition_msgsr¶Aassh ˆh }r·Ah}r¸Ah}r¹Ah]rºAU#ros-kinetic-object-recognition-msgsr»AasssuU tra1_bringupr¼A}r½A(h}r¾Ah}r¿Ah]rÀAUros/kinetic/minasrÁAassh ˆh }rÂAh}rÃAh}rÄAh]rÅAUros-kinetic-tra1-bringuprÆAasssuU pr2_machinerÇA}rÈA(h}rÉAh}rÊAh]rËAUros/kinetic/pr2_commonrÌAassh ˆh }rÍAh}rÎAh}rÏAh]rÐAUros-kinetic-pr2-machinerÑAasssuUrobotis_controllerrÒA}rÓA(h}rÔAh}rÕAh]rÖAUros/kinetic/robotis_frameworkr×Aassh ˆh }rØAh}rÙAh}rÚAh]rÛAUros-kinetic-robotis-controllerrÜAasssuU backward_rosrÝA}rÞA(h}rßAh}ràAh]ráAUros/kinetic/backward_rosrâAassh ˆh }rãAh}räAh}råAh]ræAUros-kinetic-backward-rosrçAasssuUdsr_example_cpprèA}réA(h}rêAh}rëAh]rìAUros/kinetic/doosan_robotríAassh ˆh }rîAh}rïAh}rðAh]rñAUros-kinetic-dsr-example-cppròAasssuUpilz_robot_programmingróA}rôA(h}rõAh}röAh]r÷AU"ros/kinetic/pilz_industrial_motionrøAassh ˆh }rùAh}rúAh}rûAh]rüAU"ros-kinetic-pilz-robot-programmingrýAasssuUtf2rþA}rÿA(h}rBh}rBh]rBUros/kinetic/geometry2rBassh ˆh }rBh}rBh}rBh]rBUros-kinetic-tf2rBasssuUnav_core_adapterr B}r B(h}r Bh}r Bh]r BUros/kinetic/robot_navigationrBassh ˆh }rBh}rBh}rBh]rBUros-kinetic-nav-core-adapterrBasssuUop3_offset_tuner_clientrB}rB(h}rBh}rBh]rBUros/kinetic/robotis_op3_toolsrBassh ˆh }rBh}rBh}rBh]rBU#ros-kinetic-op3-offset-tuner-clientrBasssuUjsk_model_toolsrB}r B(h}r!Bh}r"Bh]r#BUros/kinetic/jsk_model_toolsr$Bassh ˆh }r%Bh}r&Bh}r'Bh]r(BUros-kinetic-jsk-model-toolsr)BasssuU naoqi_bridger*B}r+B(h}r,Bh}r-Bh]r.BUros/kinetic/naoqi_bridger/Bassh ˆh }r0Bh}r1Bh}r2Bh]r3BUros-kinetic-naoqi-bridger4BasssuUtalos_description_inertialr5B}r6B(h}r7Bh}r8Bh]r9BUros/kinetic/talos_robotr:Bassh ˆh }r;Bh}rBU&ros-kinetic-talos-description-inertialr?BasssuU rosbagliver@B}rAB(h}rBBh}rCBh]rDBUros/kinetic/wu_ros_toolsrEBassh ˆh }rFBh}rGBh}rHBh]rIBUros-kinetic-rosbagliverJBasssuUfanuc_m20ia_supportrKB}rLB(h}rMBh}rNBh]rOBUros/kinetic/fanucrPBassh ˆh }rQBh}rRBh}rSBh]rTBUros-kinetic-fanuc-m20ia-supportrUBasssuU rb1_base_padrVB}rWB(h}rXBh}rYBh]rZBUros/kinetic/rb1_base_commonr[Bassh ˆh }r\Bh}r]Bh}r^Bh]r_BUros-kinetic-rb1-base-padr`BasssuUcob_cartesian_controllerraB}rbB(h}rcBh}rdBh]reBUros/kinetic/cob_controlrfBassh ˆh }rgBh}rhBh}riBh]rjBU$ros-kinetic-cob-cartesian-controllerrkBasssuUrostestrlB}rmB(h}rnBh}roBh]rpBUros/kinetic/ros_commrqBassh ˆh }rrBh}rsBh}rtBh]ruBUros-kinetic-rostestrvBasssuU rtt_ros_commrwB}rxB(h}ryBh}rzBh]r{BUros/kinetic/rtt_ros_integrationr|Bassh ˆh }r}Bh}r~Bh}rBh]r€BUros-kinetic-rtt-ros-commrBasssuUseed_r7_ros_controllerr‚B}rƒB(h}r„Bh}r…Bh]r†BUros/kinetic/seed_r7_ros_pkgr‡Bassh ˆh }rˆBh}r‰Bh}rŠBh]r‹BU"ros-kinetic-seed-r7-ros-controllerrŒBasssuUnodeletrB}rŽB(h}rBh}rBh]r‘BUros/kinetic/nodelet_corer’Bassh ˆh }r“Bh}r”Bh}r•Bh]r–BUros-kinetic-nodeletr—BasssuUcriutilsr˜B}r™B(h}ršBh}r›Bh]rœBUros/kinetic/criutilsrBassh ˆh }ržBh}rŸBh}r Bh]r¡BUros-kinetic-criutilsr¢BasssuU mm_mux_demuxr£B}r¤B(h}r¥Bh}r¦Bh]r§BU ros/kinetic/message_multiplexingr¨Bassh ˆh }r©Bh}rªBh}r«Bh]r¬BUros-kinetic-mm-mux-demuxr­BasssuU waypoint_metar®B}r¯B(h}r°Bh}r±Bh]r²BUros/kinetic/waypointr³Bassh ˆh }r´Bh}rµBh}r¶Bh]r·BUros-kinetic-waypoint-metar¸BasssuU pr2_simulatorr¹B}rºB(h}r»Bh}r¼Bh]r½BUros/kinetic/pr2_simulatorr¾Bassh ˆh }r¿Bh}rÀBh}rÁBh]rÂBUros-kinetic-pr2-simulatorrÃBasssuUcob_vision_utilsrÄB}rÅB(h}rÆBh}rÇBh]rÈBU!ros/kinetic/cob_perception_commonrÉBassh ˆh }rÊBh}rËBh}rÌBh]rÍBUros-kinetic-cob-vision-utilsrÎBasssuU log_serverrÏB}rÐB(h}rÑBh}rÒBh]rÓBUros/kinetic/log_serverrÔBassh ˆh }rÕBh}rÖBh}r×Bh]rØBUros-kinetic-log-serverrÙBasssuU hsr_meshesrÚB}rÛB(h}rÜBh}rÝBh]rÞBUros/kinetic/hsr_meshesrßBassh ˆh }ràBh}ráBh}râBh]rãBUros-kinetic-hsr-meshesräBasssuUturtlebot3_teleopråB}ræB(h}rçBh}rèBh]réBUros/kinetic/turtlebot3rêBassh ˆh }rëBh}rìBh}ríBh]rîBUros-kinetic-turtlebot3-teleoprïBasssuUopenni2_launchrðB}rñB(h}ròBh}róBh]rôBUros/kinetic/openni2_camerarõBassh ˆh }röBh}r÷Bh}røBh]rùBUros-kinetic-openni2-launchrúBasssuU fetch_teleoprûB}rüB(h}rýBh}rþBh]rÿBUros/kinetic/fetch_rosrCassh ˆh }rCh}rCh}rCh]rCUros-kinetic-fetch-teleoprCasssuU mrpt_rawlogrC}rC(h}rCh}r Ch]r CUros/kinetic/mrpt_navigationr Cassh ˆh }r Ch}r Ch}rCh]rCUros-kinetic-mrpt-rawlogrCasssuUcob_sick_lms1xxrC}rC(h}rCh}rCh]rCUros/kinetic/cob_driverrCassh ˆh }rCh}rCh}rCh]rCUros-kinetic-cob-sick-lms1xxrCasssuUfingertip_pressurerC}rC(h}rCh}rCh]r CU ros/kinetic/pr2_ethercat_driversr!Cassh ˆh }r"Ch}r#Ch}r$Ch]r%CUros-kinetic-fingertip-pressurer&CasssuUexotica_ompl_solverr'C}r(C(h}r)Ch}r*Ch]r+CUros/kinetic/exoticar,Cassh ˆh }r-Ch}r.Ch}r/Ch]r0CUros-kinetic-exotica-ompl-solverr1CasssuUkhi_rs_ikfast_pluginr2C}r3C(h}r4Ch}r5Ch]r6CUros/kinetic/khi_robotr7Cassh ˆh }r8Ch}r9Ch}r:Ch]r;CU ros-kinetic-khi-rs-ikfast-pluginrC(h}r?Ch}r@Ch]rACUros/kinetic/rh_p12_rnrBCassh ˆh }rCCh}rDCh}rECh]rFCUros-kinetic-rh-p12-rnrGCasssuUridgeback_controlrHC}rIC(h}rJCh}rKCh]rLCUros/kinetic/ridgebackrMCassh ˆh }rNCh}rOCh}rPCh]rQCUros-kinetic-ridgeback-controlrRCasssuU ecto_opennirSC}rTC(h}rUCh}rVCh]rWCUros/kinetic/ecto_opennirXCassh ˆh }rYCh}rZCh}r[Ch]r\CUros-kinetic-ecto-opennir]CasssuUvelodyne_simulatorr^C}r_C(h}r`Ch}raCh]rbCUros/kinetic/velodyne_simulatorrcCassh ˆh }rdCh}reCh}rfCh]rgCUros-kinetic-velodyne-simulatorrhCasssuUraspigibbon_descriptionriC}rjC(h}rkCh}rlCh]rmCUros/kinetic/raspigibbon_rosrnCassh ˆh }roCh}rpCh}rqCh]rrCU#ros-kinetic-raspigibbon-descriptionrsCasssuUpr2_controller_managerrtC}ruC(h}rvCh}rwCh]rxCUros/kinetic/pr2_mechanismryCassh ˆh }rzCh}r{Ch}r|Ch]r}CU"ros-kinetic-pr2-controller-managerr~CasssuUrazor_imu_9dofrC}r€C(h}rCh}r‚Ch]rƒCUros/kinetic/razor_imu_9dofr„Cassh ˆh }r…Ch}r†Ch}r‡Ch]rˆCUros-kinetic-razor-imu-9dofr‰CasssuUuuv_world_pluginsrŠC}r‹C(h}rŒCh}rCh]rŽCUros/kinetic/uuv_simulatorrCassh ˆh }rCh}r‘Ch}r’Ch]r“CUros-kinetic-uuv-world-pluginsr”CasssuUcob_moveit_bringupr•C}r–C(h}r—Ch}r˜Ch]r™CUros/kinetic/cob_manipulationršCassh ˆh }r›Ch}rœCh}rCh]ržCUros-kinetic-cob-moveit-bringuprŸCasssuU rtabmap_rosr C}r¡C(h}r¢Ch}r£Ch]r¤CUros/kinetic/rtabmap_rosr¥Cassh ˆh }r¦Ch}r§Ch}r¨Ch]r©CUros-kinetic-rtabmap-rosrªCasssuUmonocam_settlerr«C}r¬C(h}r­Ch}r®Ch]r¯CUros/kinetic/calibrationr°Cassh ˆh }r±Ch}r²Ch}r³Ch]r´CUros-kinetic-monocam-settlerrµCasssuU pr2_mechanismr¶C}r·C(h}r¸Ch}r¹Ch]rºCUros/kinetic/pr2_mechanismr»Cassh ˆh }r¼Ch}r½Ch}r¾Ch]r¿CUros-kinetic-pr2-mechanismrÀCasssuUira_laser_toolsrÁC}rÂC(h}rÃCh}rÄCh]rÅCUros/kinetic/ira_laser_toolsrÆCassh ˆh }rÇCh}rÈCh}rÉCh]rÊCUros-kinetic-ira-laser-toolsrËCasssuUrtshellrÌC}rÍC(h}rÎCh}rÏCh]rÐCUros/kinetic/rtshellrÑCassh ˆh }rÒCh}rÓCh}rÔCh]rÕCUros-kinetic-rtshellrÖCasssuU fake_jointr×C}rØC(h}rÙCh}rÚCh]rÛCUros/kinetic/fake_jointrÜCassh ˆh }rÝCh}rÞCh}rßCh]ràCUros-kinetic-fake-jointráCasssuU slam_kartorâC}rãC(h}räCh}råCh]ræCUros/kinetic/slam_kartorçCassh ˆh }rèCh}réCh}rêCh]rëCUros-kinetic-slam-kartorìCasssuUimu_complementary_filterríC}rîC(h}rïCh}rðCh]rñCUros/kinetic/imu_toolsròCassh ˆh }róCh}rôCh}rõCh]röCU$ros-kinetic-imu-complementary-filterr÷CasssuU pr2_commonrøC}rùC(h}rúCh}rûCh]rüCUros/kinetic/pr2_commonrýCassh ˆh }rþCh}rÿCh}rDh]rDUros-kinetic-pr2-commonrDasssuUcob_3d_mapping_msgsrD}rD(h}rDh}rDh]rDU!ros/kinetic/cob_perception_commonrDassh ˆh }r Dh}r Dh}r Dh]r DUros-kinetic-cob-3d-mapping-msgsr DasssuUrobotis_framework_commonrD}rD(h}rDh}rDh]rDUros/kinetic/robotis_frameworkrDassh ˆh }rDh}rDh}rDh]rDU$ros-kinetic-robotis-framework-commonrDasssuUnaoqi_libqicorerD}rD(h}rDh}rDh]rDUros/kinetic/naoqi_libqicorerDassh ˆh }rDh}r Dh}r!Dh]r"DUros-kinetic-naoqi-libqicorer#DasssuUmulti_jackal_baser$D}r%D(h}r&Dh}r'Dh]r(DUros/kinetic/multi_jackalr)Dassh ˆh }r*Dh}r+Dh}r,Dh]r-DUros-kinetic-multi-jackal-baser.DasssuUfanuc_lrmate200i_supportr/D}r0D(h}r1Dh}r2Dh]r3DUros/kinetic/fanucr4Dassh ˆh }r5Dh}r6Dh}r7Dh]r8DU$ros-kinetic-fanuc-lrmate200i-supportr9DasssuUecl_type_traitsr:D}r;D(h}rDUros/kinetic/ecl_corer?Dassh ˆh }r@Dh}rADh}rBDh]rCDUros-kinetic-ecl-type-traitsrDDasssuUqb_chainrED}rFD(h}rGDh}rHDh]rIDUros/kinetic/qb_chainrJDassh ˆh }rKDh}rLDh}rMDh]rNDUros-kinetic-qb-chainrODasssuUzbar_rosrPD}rQD(h}rRDh}rSDh]rTDUros/kinetic/zbar_rosrUDassh ˆh }rVDh}rWDh}rXDh]rYDUros-kinetic-zbar-rosrZDasssuU tf2_toolsr[D}r\D(h}r]Dh}r^Dh]r_DUros/kinetic/geometry2r`Dassh ˆh }raDh}rbDh}rcDh]rdDUros-kinetic-tf2-toolsreDasssuU actionlibrfD}rgD(h}rhDh}riDh]rjDUros/kinetic/actionlibrkDassh ˆh }rlDh}rmDh}rnDh]roDUros-kinetic-actionlibrpDasssuUrange_sensor_layerrqD}rrD(h}rsDh}rtDh]ruDUros/kinetic/navigation_layersrvDassh ˆh }rwDh}rxDh}ryDh]rzDUros-kinetic-range-sensor-layerr{DasssuUtuw_msgsr|D}r}D(h}r~Dh}rDh]r€DUros/kinetic/tuw_msgsrDassh ˆh }r‚Dh}rƒDh}r„Dh]r…DUros-kinetic-tuw-msgsr†DasssuU rosnode_rtcr‡D}rˆD(h}r‰Dh}rŠDh]r‹DUros/kinetic/rtmros_commonrŒDassh ˆh }rDh}rŽDh}rDh]rDUros-kinetic-rosnode-rtcr‘DasssuUmoveit_config_m0617r’D}r“D(h}r”Dh}r•Dh]r–DUros/kinetic/doosan_robotr—Dassh ˆh }r˜Dh}r™Dh}ršDh]r›DUros-kinetic-moveit-config-m0617rœDasssuUhumanoid_navigationrD}ržD(h}rŸDh}r Dh]r¡DUros/kinetic/humanoid_navigationr¢Dassh ˆh }r£Dh}r¤Dh}r¥Dh]r¦DUros-kinetic-humanoid-navigationr§DasssuUtuw_object_msgsr¨D}r©D(h}rªDh}r«Dh]r¬DUros/kinetic/tuw_msgsr­Dassh ˆh }r®Dh}r¯Dh}r°Dh]r±DUros-kinetic-tuw-object-msgsr²DasssuUrocon_app_utilitiesr³D}r´D(h}rµDh}r¶Dh]r·DUros/kinetic/rocon_app_platformr¸Dassh ˆh }r¹Dh}rºDh}r»Dh]r¼DUros-kinetic-rocon-app-utilitiesr½DasssuUbase_local_plannerr¾D}r¿D(h}rÀDh}rÁDh]rÂDUros/kinetic/navigationrÃDassh ˆh }rÄDh}rÅDh}rÆDh]rÇDUros-kinetic-base-local-plannerrÈDasssuUrtt_control_msgsrÉD}rÊD(h}rËDh}rÌDh]rÍDUros/kinetic/rtt_ros_controlrÎDassh ˆh }rÏDh}rÐDh}rÑDh]rÒDUros-kinetic-rtt-control-msgsrÓDasssuU franka_rosrÔD}rÕD(h}rÖDh}r×Dh]rØDUros/kinetic/franka_rosrÙDassh ˆh }rÚDh}rÛDh}rÜDh]rÝDUros-kinetic-franka-rosrÞDasssuU async_commrßD}ràD(h}ráDh}râDh]rãDUros/kinetic/async_commräDassh ˆh }råDh}ræDh}rçDh]rèDUros-kinetic-async-commréDasssuUmoveit_commanderrêD}rëD(h}rìDh}ríDh]rîDUros/kinetic/moveitrïDassh ˆh }rðDh}rñDh}ròDh]róDUros-kinetic-moveit-commanderrôDasssuUeusurdfrõD}röD(h}r÷Dh}røDh]rùDUros/kinetic/jsk_model_toolsrúDassh ˆh }rûDh}rüDh}rýDh]rþDUros-kinetic-eusurdfrÿDasssuU opencv_appsrE}rE(h}rEh}rEh]rEUros/kinetic/opencv_appsrEassh ˆh }rEh}rEh}rEh]r EUros-kinetic-opencv-appsr EasssuUyocs_cmd_vel_muxr E}r E(h}r Eh}rEh]rEUros/kinetic/yujin_ocsrEassh ˆh }rEh}rEh}rEh]rEUros-kinetic-yocs-cmd-vel-muxrEasssuU cost_map_rosrE}rE(h}rEh}rEh]rEUros/kinetic/cost_maprEassh ˆh }rEh}rEh}rEh]rEUros-kinetic-cost-map-rosr EasssuUroslisp_commonr!E}r"E(h}r#Eh}r$Eh]r%EUros/kinetic/roslisp_commonr&Eassh ˆh }r'Eh}r(Eh}r)Eh]r*EUros-kinetic-roslisp-commonr+EasssuU homer_mappingr,E}r-E(h}r.Eh}r/Eh]r0EUros/kinetic/homer_mappingr1Eassh ˆh }r2Eh}r3Eh}r4Eh]r5EUros-kinetic-homer-mappingr6EasssuUridgeback_navigationr7E}r8E(h}r9Eh}r:Eh]r;EUros/kinetic/ridgebackrEh}r?Eh]r@EU ros-kinetic-ridgeback-navigationrAEasssuUrc_dynamics_apirBE}rCE(h}rDEh}rEEh]rFEUros/kinetic/rc_dynamics_apirGEassh ˆh }rHEh}rIEh}rJEh]rKEUros-kinetic-rc-dynamics-apirLEasssuU rqt_py_commonrME}rNE(h}rOEh}rPEh]rQEUros/kinetic/rqtrREassh ˆh }rSEh}rTEh}rUEh]rVEUros-kinetic-rqt-py-commonrWEasssuU rocon_iconsrXE}rYE(h}rZEh}r[Eh]r\EUros/kinetic/rocon_toolsr]Eassh ˆh }r^Eh}r_Eh}r`Eh]raEUros-kinetic-rocon-iconsrbEasssuU compressed_depth_image_transportrcE}rdE(h}reEh}rfEh]rgEU#ros/kinetic/image_transport_pluginsrhEassh ˆh }riEh}rjEh}rkEh]rlEU,ros-kinetic-compressed-depth-image-transportrmEasssuUthormang3_feet_ft_module_msgsrnE}roE(h}rpEh}rqEh]rrEUros/kinetic/thormang3_msgsrsEassh ˆh }rtEh}ruEh}rvEh]rwEU)ros-kinetic-thormang3-feet-ft-module-msgsrxEasssuUturtlebot_dashboardryE}rzE(h}r{Eh}r|Eh]r}EU"ros/kinetic/turtlebot_interactionsr~Eassh ˆh }rEh}r€Eh}rEh]r‚EUros-kinetic-turtlebot-dashboardrƒEasssuUpacmodr„E}r…E(h}r†Eh}r‡Eh]rˆEUros/kinetic/pacmodr‰Eassh ˆh }rŠEh}r‹Eh}rŒEh]rEUros-kinetic-pacmodrŽEasssuU uuv_teleoprE}rE(h}r‘Eh}r’Eh]r“EUros/kinetic/uuv_simulatorr”Eassh ˆh }r•Eh}r–Eh}r—Eh]r˜EUros-kinetic-uuv-teleopr™EasssuU flexbe_appršE}r›E(h}rœEh}rEh]ržEUros/kinetic/flexbe_apprŸEassh ˆh }r Eh}r¡Eh}r¢Eh]r£EUros-kinetic-flexbe-appr¤EasssuUkobuki_dock_driver¥E}r¦E(h}r§Eh}r¨Eh]r©EUros/kinetic/kobuki_corerªEassh ˆh }r«Eh}r¬Eh}r­Eh]r®EUros-kinetic-kobuki-dock-driver¯EasssuU rtsprofiler°E}r±E(h}r²Eh}r³Eh]r´EUros/kinetic/rtsprofilerµEassh ˆh }r¶Eh}r·Eh}r¸Eh]r¹EUros-kinetic-rtsprofilerºEasssuUrosbag_migration_ruler»E}r¼E(h}r½Eh}r¾Eh]r¿EU!ros/kinetic/rosbag_migration_rulerÀEassh ˆh }rÁEh}rÂEh}rÃEh]rÄEU!ros-kinetic-rosbag-migration-rulerÅEasssuUqb_moverÆE}rÇE(h}rÈEh}rÉEh]rÊEUros/kinetic/qb_moverËEassh ˆh }rÌEh}rÍEh}rÎEh]rÏEUros-kinetic-qb-moverÐEasssuUhousehold_objects_database_msgsrÑE}rÒE(h}rÓEh}rÔEh]rÕEU+ros/kinetic/household_objects_database_msgsrÖEassh ˆh }r×Eh}rØEh}rÙEh]rÚEU+ros-kinetic-household-objects-database-msgsrÛEasssuUivconrÜE}rÝE(h}rÞEh}rßEh]ràEUros/kinetic/ivconráEassh ˆh }râEh}rãEh}räEh]råEUros-kinetic-ivconræEasssuUrviz_visual_toolsrçE}rèE(h}réEh}rêEh]rëEUros/kinetic/rviz_visual_toolsrìEassh ˆh }ríEh}rîEh}rïEh]rðEUros-kinetic-rviz-visual-toolsrñEasssuUcob_command_toolsròE}róE(h}rôEh}rõEh]röEUros/kinetic/cob_command_toolsr÷Eassh ˆh }røEh}rùEh}rúEh]rûEUros-kinetic-cob-command-toolsrüEasssuUmulti_object_tracking_lidarrýE}rþE(h}rÿEh}rFh]rFU'ros/kinetic/multi_object_tracking_lidarrFassh ˆh }rFh}rFh}rFh]rFU'ros-kinetic-multi-object-tracking-lidarrFasssuU naoqi_toolsrF}r F(h}r Fh}r Fh]r FUros/kinetic/naoqi_bridger Fassh ˆh }rFh}rFh}rFh]rFUros-kinetic-naoqi-toolsrFasssuUrttrF}rF(h}rFh}rFh]rFUros/kinetic/rttrFassh ˆh }rFh}rFh}rFh]rFUros-kinetic-rttrFasssuU pgm_learnerrF}rF(h}r Fh}r!Fh]r"FUros/kinetic/jsk_3rdpartyr#Fassh ˆh }r$Fh}r%Fh}r&Fh]r'FUros-kinetic-pgm-learnerr(FasssuU wge100_driverr)F}r*F(h}r+Fh}r,Fh]r-FUros/kinetic/wge100_driverr.Fassh ˆh }r/Fh}r0Fh}r1Fh]r2FUros-kinetic-wge100-driverr3FasssuUrbcar_robot_controlr4F}r5F(h}r6Fh}r7Fh]r8FUros/kinetic/rbcar_simr9Fassh ˆh }r:Fh}r;Fh}rFasssuUrobotnik_sensorsr?F}r@F(h}rAFh}rBFh]rCFUros/kinetic/robotnik_sensorsrDFassh ˆh }rEFh}rFFh}rGFh]rHFUros-kinetic-robotnik-sensorsrIFasssuUwarthog_controlrJF}rKF(h}rLFh}rMFh]rNFUros/kinetic/warthogrOFassh ˆh }rPFh}rQFh}rRFh]rSFUros-kinetic-warthog-controlrTFasssuUrqt_reconfigurerUF}rVF(h}rWFh}rXFh]rYFUros/kinetic/rqt_reconfigurerZFassh ˆh }r[Fh}r\Fh}r]Fh]r^FUros-kinetic-rqt-reconfigurer_FasssuUrosparamr`F}raF(h}rbFh}rcFh]rdFUros/kinetic/ros_commreFassh ˆh }rfFh}rgFh}rhFh]riFUros-kinetic-rosparamrjFasssuUmove_base_flexrkF}rlF(h}rmFh}rnFh]roFUros/kinetic/move_base_flexrpFassh ˆh }rqFh}rrFh}rsFh]rtFUros-kinetic-move-base-flexruFasssuUjson_transportrvF}rwF(h}rxFh}ryFh]rzFUros/kinetic/json_transportr{Fassh ˆh }r|Fh}r}Fh}r~Fh]rFUros-kinetic-json-transportr€FasssuUwfov_camera_msgsrF}r‚F(h}rƒFh}r„Fh]r…FU#ros/kinetic/pointgrey_camera_driverr†Fassh ˆh }r‡Fh}rˆFh}r‰Fh]rŠFUros-kinetic-wfov-camera-msgsr‹FasssuU wamv_gazeborŒF}rF(h}rŽFh}rFh]rFUros/kinetic/vrxr‘Fassh ˆh }r’Fh}r“Fh}r”Fh]r•FUros-kinetic-wamv-gazebor–FasssuUrbcar_descriptionr—F}r˜F(h}r™Fh}ršFh]r›FUros/kinetic/rbcar_commonrœFassh ˆh }rFh}ržFh}rŸFh]r FUros-kinetic-rbcar-descriptionr¡FasssuU map_serverr¢F}r£F(h}r¤Fh}r¥Fh]r¦FUros/kinetic/navigationr§Fassh ˆh }r¨Fh}r©Fh}rªFh]r«FUros-kinetic-map-serverr¬FasssuUbarrett_hand_descriptionr­F}r®F(h}r¯Fh}r°Fh]r±FUros/kinetic/barrett_hand_commonr²Fassh ˆh }r³Fh}r´Fh}rµFh]r¶FU$ros-kinetic-barrett-hand-descriptionr·FasssuU twist_muxr¸F}r¹F(h}rºFh}r»Fh]r¼FUros/kinetic/twist_muxr½Fassh ˆh }r¾Fh}r¿Fh}rÀFh]rÁFUros-kinetic-twist-muxrÂFasssuU axis_camerarÃF}rÄF(h}rÅFh}rÆFh]rÇFUros/kinetic/axis_camerarÈFassh ˆh }rÉFh}rÊFh}rËFh]rÌFUros-kinetic-axis-camerarÍFasssuUackermann_steering_controllerrÎF}rÏF(h}rÐFh}rÑFh]rÒFUros/kinetic/ros_controllersrÓFassh ˆh }rÔFh}rÕFh}rÖFh]r×FU)ros-kinetic-ackermann-steering-controllerrØFasssuUsummit_x_gazeborÙF}rÚF(h}rÛFh}rÜFh]rÝFUros/kinetic/summit_x_simrÞFassh ˆh }rßFh}ràFh}ráFh]râFUros-kinetic-summit-x-gazeborãFasssuU xpp_statesräF}råF(h}ræFh}rçFh]rèFUros/kinetic/xppréFassh ˆh }rêFh}rëFh}rìFh]ríFUros-kinetic-xpp-statesrîFasssuUcob_perception_msgsrïF}rðF(h}rñFh}ròFh]róFU!ros/kinetic/cob_perception_commonrôFassh ˆh }rõFh}röFh}r÷Fh]røFUros-kinetic-cob-perception-msgsrùFasssuUturtlebot_msgsrúF}rûF(h}rüFh}rýFh]rþFUros/kinetic/turtlebot_msgsrÿFassh ˆh }rGh}rGh}rGh]rGUros-kinetic-turtlebot-msgsrGasssuUrqt_rvizrG}rG(h}rGh}rGh]r GUros/kinetic/rqt_rvizr Gassh ˆh }r Gh}r Gh}r Gh]rGUros-kinetic-rqt-rvizrGasssuUecl_mplrG}rG(h}rGh}rGh]rGUros/kinetic/ecl_corerGassh ˆh }rGh}rGh}rGh]rGUros-kinetic-ecl-mplrGasssuUfranka_visualizationrG}rG(h}rGh}rGh]rGUros/kinetic/franka_rosr Gassh ˆh }r!Gh}r"Gh}r#Gh]r$GU ros-kinetic-franka-visualizationr%GasssuUobject_recognition_corer&G}r'G(h}r(Gh}r)Gh]r*GU#ros/kinetic/object_recognition_corer+Gassh ˆh }r,Gh}r-Gh}r.Gh]r/GU#ros-kinetic-object-recognition-corer0GasssuUopen_manipulator_perceptionsr1G}r2G(h}r3Gh}r4Gh]r5GU(ros/kinetic/open_manipulator_perceptionsr6Gassh ˆh }r7Gh}r8Gh}r9Gh]r:GU(ros-kinetic-open-manipulator-perceptionsr;GasssuU rtt_actionlibrGh}r?Gh]r@GUros/kinetic/rtt_ros_integrationrAGassh ˆh }rBGh}rCGh}rDGh]rEGUros-kinetic-rtt-actionlibrFGasssuU libsiftfastrGG}rHG(h}rIGh}rJGh]rKGUros/kinetic/jsk_3rdpartyrLGassh ˆh }rMGh}rNGh}rOGh]rPGUros-kinetic-libsiftfastrQGasssuUschunk_libm5apirRG}rSG(h}rTGh}rUGh]rVGU#ros/kinetic/schunk_modular_roboticsrWGassh ˆh }rXGh}rYGh}rZGh]r[GUros-kinetic-schunk-libm5apir\GasssuUmulti_jackal_descriptionr]G}r^G(h}r_Gh}r`Gh]raGUros/kinetic/multi_jackalrbGassh ˆh }rcGh}rdGh}reGh]rfGU$ros-kinetic-multi-jackal-descriptionrgGasssuU roch_ftdirhG}riG(h}rjGh}rkGh]rlGUros/kinetic/roch_robotrmGassh ˆh }rnGh}roGh}rpGh]rqGUros-kinetic-roch-ftdirrGasssuU kobuki_gazeborsG}rtG(h}ruGh}rvGh]rwGUros/kinetic/kobuki_desktoprxGassh ˆh }ryGh}rzGh}r{Gh]r|GUros-kinetic-kobuki-gazebor}GasssuU rocon_appsr~G}rG(h}r€Gh}rGh]r‚GUros/kinetic/rocon_app_platformrƒGassh ˆh }r„Gh}r…Gh}r†Gh]r‡GUros-kinetic-rocon-appsrˆGasssuUthormang3_offset_tuner_clientr‰G}rŠG(h}r‹Gh}rŒGh]rGUros/kinetic/thormang3_opcrŽGassh ˆh }rGh}rGh}r‘Gh]r’GU)ros-kinetic-thormang3-offset-tuner-clientr“GasssuU fanuc_driverr”G}r•G(h}r–Gh}r—Gh]r˜GUros/kinetic/fanucr™Gassh ˆh }ršGh}r›Gh}rœGh]rGUros-kinetic-fanuc-driverržGasssuUmulti_interface_roamrŸG}r G(h}r¡Gh}r¢Gh]r£GUros/kinetic/linux_networkingr¤Gassh ˆh }r¥Gh}r¦Gh}r§Gh]r¨GU ros-kinetic-multi-interface-roamr©GasssuUturtlebot3_autorace_detectrªG}r«G(h}r¬Gh}r­Gh]r®GUros/kinetic/turtlebot3_autoracer¯Gassh ˆh }r°Gh}r±Gh}r²Gh]r³GU&ros-kinetic-turtlebot3-autorace-detectr´GasssuUnmea_navsat_driverrµG}r¶G(h}r·Gh}r¸Gh]r¹GUros/kinetic/nmea_navsat_driverrºGassh ˆh }r»Gh}r¼Gh}r½Gh]r¾GUros-kinetic-nmea-navsat-driverr¿GasssuU qt_tutorialsrÀG}rÁG(h}rÂGh}rÃGh]rÄGUros/kinetic/qt_rosrÅGassh ˆh }rÆGh}rÇGh}rÈGh]rÉGUros-kinetic-qt-tutorialsrÊGasssuU cob_commonrËG}rÌG(h}rÍGh}rÎGh]rÏGUros/kinetic/cob_commonrÐGassh ˆh }rÑGh}rÒGh}rÓGh]rÔGUros-kinetic-cob-commonrÕGasssuUpr2_power_boardrÖG}r×G(h}rØGh}rÙGh]rÚGUros/kinetic/pr2_power_driversrÛGassh ˆh }rÜGh}rÝGh}rÞGh]rßGUros-kinetic-pr2-power-boardràGasssuU polled_cameraráG}râG(h}rãGh}räGh]råGUros/kinetic/image_commonræGassh ˆh }rçGh}rèGh}réGh]rêGUros-kinetic-polled-camerarëGasssuUturtlebot_createrìG}ríG(h}rîGh}rïGh]rðGUros/kinetic/turtlebot_createrñGassh ˆh }ròGh}róGh}rôGh]rõGUros-kinetic-turtlebot-createröGasssuU ur_e_gazebor÷G}røG(h}rùGh}rúGh]rûGUros/kinetic/universal_robotrüGassh ˆh }rýGh}rþGh}rÿGh]rHUros-kinetic-ur-e-gazeborHasssuUfollow_waypointsrH}rH(h}rHh}rHh]rHUros/kinetic/follow_waypointsrHassh ˆh }rHh}r Hh}r Hh]r HUros-kinetic-follow-waypointsr HasssuUdepth_image_procr H}rH(h}rHh}rHh]rHUros/kinetic/image_pipelinerHassh ˆh }rHh}rHh}rHh]rHUros-kinetic-depth-image-procrHasssuU libuvc_camerarH}rH(h}rHh}rHh]rHUros/kinetic/libuvc_rosrHassh ˆh }rHh}rHh}r Hh]r!HUros-kinetic-libuvc-camerar"HasssuUpython_qt_bindingr#H}r$H(h}r%Hh}r&Hh]r'HUros/kinetic/python_qt_bindingr(Hassh ˆh }r)Hh}r*Hh}r+Hh]r,HUros-kinetic-python-qt-bindingr-HasssuU denso_launchr.H}r/H(h}r0Hh}r1Hh]r2HUros/kinetic/densor3Hassh ˆh }r4Hh}r5Hh}r6Hh]r7HUros-kinetic-denso-launchr8HasssuUlibcmtr9H}r:H(h}r;Hh}rHassh ˆh }r?Hh}r@Hh}rAHh]rBHUros-kinetic-libcmtrCHasssuU osg_markersrDH}rEH(h}rFHh}rGHh]rHHUros/kinetic/visualization_osgrIHassh ˆh }rJHh}rKHh}rLHh]rMHUros-kinetic-osg-markersrNHasssuU dsr_controlrOH}rPH(h}rQHh}rRHh]rSHUros/kinetic/doosan_robotrTHassh ˆh }rUHh}rVHh}rWHh]rXHUros-kinetic-dsr-controlrYHasssuU smach_msgsrZH}r[H(h}r\Hh}r]Hh]r^HUros/kinetic/executive_smachr_Hassh ˆh }r`Hh}raHh}rbHh]rcHUros-kinetic-smach-msgsrdHasssuUcob_control_mode_adapterreH}rfH(h}rgHh}rhHh]riHUros/kinetic/cob_controlrjHassh ˆh }rkHh}rlHh}rmHh]rnHU$ros-kinetic-cob-control-mode-adapterroHasssuU visp_bridgerpH}rqH(h}rrHh}rsHh]rtHUros/kinetic/vision_vispruHassh ˆh }rvHh}rwHh}rxHh]ryHUros-kinetic-visp-bridgerzHasssuUimage_cb_detectorr{H}r|H(h}r}Hh}r~Hh]rHUros/kinetic/calibrationr€Hassh ˆh }rHh}r‚Hh}rƒHh]r„HUros-kinetic-image-cb-detectorr…HasssuU gazebo_devr†H}r‡H(h}rˆHh}r‰Hh]rŠHUros/kinetic/gazebo_ros_pkgsr‹Hassh ˆh }rŒHh}rHh}rŽHh]rHUros-kinetic-gazebo-devrHasssuU magni_vizr‘H}r’H(h}r“Hh}r”Hh]r•HUros/kinetic/magni_robotr–Hassh ˆh }r—Hh}r˜Hh}r™Hh]ršHUros-kinetic-magni-vizr›HasssuU cartographerrœH}rH(h}ržHh}rŸHh]r HUros/kinetic/cartographerr¡Hassh ˆh }r¢Hh}r£Hh}r¤Hh]r¥HUros-kinetic-cartographerr¦HasssuUrtt_dynamic_reconfigurer§H}r¨H(h}r©Hh}rªHh]r«HUros/kinetic/rtt_ros_integrationr¬Hassh ˆh }r­Hh}r®Hh}r¯Hh]r°HU#ros-kinetic-rtt-dynamic-reconfigurer±HasssuUrh_p12_rn_base_moduler²H}r³H(h}r´Hh}rµHh]r¶HUros/kinetic/rh_p12_rnr·Hassh ˆh }r¸Hh}r¹Hh}rºHh]r»HU!ros-kinetic-rh-p12-rn-base-moduler¼HasssuUpepper_descriptionr½H}r¾H(h}r¿Hh}rÀHh]rÁHUros/kinetic/pepper_robotrÂHassh ˆh }rÃHh}rÄHh}rÅHh]rÆHUros-kinetic-pepper-descriptionrÇHasssuUkdl_conversionsrÈH}rÉH(h}rÊHh}rËHh]rÌHUros/kinetic/geometryrÍHassh ˆh }rÎHh}rÏHh}rÐHh]rÑHUros-kinetic-kdl-conversionsrÒHasssuUraspi_temperaturerÓH}rÔH(h}rÕHh}rÖHh]r×HUros/kinetic/raspi_temperaturerØHassh ˆh }rÙHh}rÚHh}rÛHh]rÜHUros-kinetic-raspi-temperaturerÝHasssuU%open_manipulator_with_tb3_descriptionrÞH}rßH(h}ràHh}ráHh]râHU%ros/kinetic/open_manipulator_with_tb3rãHassh ˆh }räHh}råHh}ræHh]rçHU1ros-kinetic-open-manipulator-with-tb3-descriptionrèHasssuUmap_msgsréH}rêH(h}rëHh}rìHh]ríHUros/kinetic/navigation_msgsrîHassh ˆh }rïHh}rðHh}rñHh]ròHUros-kinetic-map-msgsróHasssuU ros_numpyrôH}rõH(h}röHh}r÷Hh]røHUros/kinetic/ros_numpyrùHassh ˆh }rúHh}rûHh}rüHh]rýHUros-kinetic-ros-numpyrþHasssuUipa_3d_fov_visualizationrÿH}rI(h}rIh}rIh]rIU!ros/kinetic/cob_perception_commonrIassh ˆh }rIh}rIh}rIh]rIU$ros-kinetic-ipa-3d-fov-visualizationr IasssuUnetwork_traffic_controlr I}r I(h}r Ih}r Ih]rIUros/kinetic/linux_networkingrIassh ˆh }rIh}rIh}rIh]rIU#ros-kinetic-network-traffic-controlrIasssuU common_msgsrI}rI(h}rIh}rIh]rIUros/kinetic/common_msgsrIassh ˆh }rIh}rIh}rIh]rIUros-kinetic-common-msgsrIasssuU magni_demosr I}r!I(h}r"Ih}r#Ih]r$IUros/kinetic/magni_robotr%Iassh ˆh }r&Ih}r'Ih}r(Ih]r)IUros-kinetic-magni-demosr*IasssuUinterval_intersectionr+I}r,I(h}r-Ih}r.Ih]r/IUros/kinetic/calibrationr0Iassh ˆh }r1Ih}r2Ih}r3Ih]r4IU!ros-kinetic-interval-intersectionr5IasssuUbhand_controllerr6I}r7I(h}r8Ih}r9Ih]r:IUros/kinetic/barrett_handr;Iassh ˆh }rIh]r?IUros-kinetic-bhand-controllerr@IasssuUbondcpprAI}rBI(h}rCIh}rDIh]rEIUros/kinetic/bond_corerFIassh ˆh }rGIh}rHIh}rIIh]rJIUros-kinetic-bondcpprKIasssuUleuze_rsl_driverrLI}rMI(h}rNIh}rOIh]rPIUros/kinetic/leuze_ros_driversrQIassh ˆh }rRIh}rSIh}rTIh]rUIUros-kinetic-leuze-rsl-driverrVIasssuUnaoqi_bridge_msgsrWI}rXI(h}rYIh}rZIh]r[IUros/kinetic/naoqi_bridge_msgsr\Iassh ˆh }r]Ih}r^Ih}r_Ih]r`IUros-kinetic-naoqi-bridge-msgsraIasssuU"exotica_collision_scene_fcl_latestrbI}rcI(h}rdIh}reIh]rfIUros/kinetic/exoticargIassh ˆh }rhIh}riIh}rjIh]rkIU.ros-kinetic-exotica-collision-scene-fcl-latestrlIasssuUmav_planning_msgsrmI}rnI(h}roIh}rpIh]rqIUros/kinetic/mav_commrrIassh ˆh }rsIh}rtIh}ruIh]rvIUros-kinetic-mav-planning-msgsrwIasssuUimu_transformerrxI}ryI(h}rzIh}r{Ih]r|IUros/kinetic/imu_pipeliner}Iassh ˆh }r~Ih}rIh}r€Ih]rIUros-kinetic-imu-transformerr‚IasssuUgeographic_msgsrƒI}r„I(h}r…Ih}r†Ih]r‡IUros/kinetic/geographic_inforˆIassh ˆh }r‰Ih}rŠIh}r‹Ih]rŒIUros-kinetic-geographic-msgsrIasssuUturtlebot3_autoracerŽI}rI(h}rIh}r‘Ih]r’IUros/kinetic/turtlebot3_autoracer“Iassh ˆh }r”Ih}r•Ih}r–Ih]r—IUros-kinetic-turtlebot3-autoracer˜IasssuUeffort_controllersr™I}ršI(h}r›Ih}rœIh]rIUros/kinetic/ros_controllersržIassh ˆh }rŸIh}r Ih}r¡Ih]r¢IUros-kinetic-effort-controllersr£IasssuU toposens_syncr¤I}r¥I(h}r¦Ih}r§Ih]r¨IUros/kinetic/toposensr©Iassh ˆh }rªIh}r«Ih}r¬Ih]r­IUros-kinetic-toposens-syncr®IasssuUhusky_descriptionr¯I}r°I(h}r±Ih}r²Ih]r³IUros/kinetic/huskyr´Iassh ˆh }rµIh}r¶Ih}r·Ih]r¸IUros-kinetic-husky-descriptionr¹IasssuUcob_msgsrºI}r»I(h}r¼Ih}r½Ih]r¾IUros/kinetic/cob_commonr¿Iassh ˆh }rÀIh}rÁIh}rÂIh]rÃIUros-kinetic-cob-msgsrÄIasssuU pr2_robotrÅI}rÆI(h}rÇIh}rÈIh]rÉIUros/kinetic/pr2_robotrÊIassh ˆh }rËIh}rÌIh}rÍIh]rÎIUros-kinetic-pr2-robotrÏIasssuUroch_simulatorrÐI}rÑI(h}rÒIh}rÓIh]rÔIUros/kinetic/roch_simulatorrÕIassh ˆh }rÖIh}r×Ih}rØIh]rÙIUros-kinetic-roch-simulatorrÚIasssuUhector_localizationrÛI}rÜI(h}rÝIh}rÞIh]rßIUros/kinetic/hector_localizationràIassh ˆh }ráIh}râIh}rãIh]räIUros-kinetic-hector-localizationråIasssuUcob_docker_controlræI}rçI(h}rèIh}réIh]rêIUros/kinetic/cob_substituterëIassh ˆh }rìIh}ríIh}rîIh]rïIUros-kinetic-cob-docker-controlrðIasssuUvs060_moveit_configrñI}ròI(h}róIh}rôIh]rõIUros/kinetic/densoröIassh ˆh }r÷Ih}røIh}rùIh]rúIUros-kinetic-vs060-moveit-configrûIasssuUgeographic_inforüI}rýI(h}rþIh}rÿIh]rJUros/kinetic/geographic_inforJassh ˆh }rJh}rJh}rJh]rJUros-kinetic-geographic-inforJasssuU variant_msgsrJ}rJ(h}r Jh}r Jh]r JUros/kinetic/variantr Jassh ˆh }r Jh}rJh}rJh]rJUros-kinetic-variant-msgsrJasssuU pilz_robotsrJ}rJ(h}rJh}rJh]rJUros/kinetic/pilz_robotsrJassh ˆh }rJh}rJh}rJh]rJUros-kinetic-pilz-robotsrJasssuUfsrobo_r_driverrJ}rJ(h}rJh}r Jh]r!JUros/kinetic/fsrobo_rr"Jassh ˆh }r#Jh}r$Jh}r%Jh]r&JUros-kinetic-fsrobo-r-driverr'JasssuUjsk_calibrationr(J}r)J(h}r*Jh}r+Jh]r,JUros/kinetic/jsk_controlr-Jassh ˆh }r.Jh}r/Jh}r0Jh]r1JUros-kinetic-jsk-calibrationr2JasssuUsick_visionary_tr3J}r4J(h}r5Jh}r6Jh]r7JUros/kinetic/sick_visionary_tr8Jassh ˆh }r9Jh}r:Jh}r;Jh]rJ}r?J(h}r@Jh}rAJh]rBJUros/kinetic/jsk_common_msgsrCJassh ˆh }rDJh}rEJh}rFJh]rGJUros-kinetic-jsk-footstep-msgsrHJasssuUvisp_auto_trackerrIJ}rJJ(h}rKJh}rLJh]rMJUros/kinetic/vision_visprNJassh ˆh }rOJh}rPJh}rQJh]rRJUros-kinetic-visp-auto-trackerrSJasssuUcalibration_msgsrTJ}rUJ(h}rVJh}rWJh]rXJUros/kinetic/calibrationrYJassh ˆh }rZJh}r[Jh}r\Jh]r]JUros-kinetic-calibration-msgsr^JasssuUwarthog_descriptionr_J}r`J(h}raJh}rbJh]rcJUros/kinetic/warthogrdJassh ˆh }reJh}rfJh}rgJh]rhJUros-kinetic-warthog-descriptionriJasssuUcob_reflector_referencingrjJ}rkJ(h}rlJh}rmJh]rnJUros/kinetic/cob_substituteroJassh ˆh }rpJh}rqJh}rrJh]rsJU%ros-kinetic-cob-reflector-referencingrtJasssuUrosauthruJ}rvJ(h}rwJh}rxJh]ryJUros/kinetic/rosauthrzJassh ˆh }r{Jh}r|Jh}r}Jh]r~JUros-kinetic-rosauthrJasssuU nav_2d_msgsr€J}rJ(h}r‚Jh}rƒJh]r„JUros/kinetic/robot_navigationr…Jassh ˆh }r†Jh}r‡Jh}rˆJh]r‰JUros-kinetic-nav-2d-msgsrŠJasssuU abb_driverr‹J}rŒJ(h}rJh}rŽJh]rJUros/kinetic/abbrJassh ˆh }r‘Jh}r’Jh}r“Jh]r”JUros-kinetic-abb-driverr•JasssuUuuv_control_cascaded_pidr–J}r—J(h}r˜Jh}r™Jh]ršJUros/kinetic/uuv_simulatorr›Jassh ˆh }rœJh}rJh}ržJh]rŸJU$ros-kinetic-uuv-control-cascaded-pidr JasssuUnaoqi_driver_pyr¡J}r¢J(h}r£Jh}r¤Jh]r¥JUros/kinetic/naoqi_bridger¦Jassh ˆh }r§Jh}r¨Jh}r©Jh]rªJUros-kinetic-naoqi-driver-pyr«JasssuU summit_xl_padr¬J}r­J(h}r®Jh}r¯Jh]r°JUros/kinetic/summit_xl_commonr±Jassh ˆh }r²Jh}r³Jh}r´Jh]rµJUros-kinetic-summit-xl-padr¶JasssuUmessage_runtimer·J}r¸J(h}r¹Jh}rºJh]r»JUros/kinetic/message_runtimer¼Jassh ˆh }r½Jh}r¾Jh}r¿Jh]rÀJUros-kinetic-message-runtimerÁJasssuUimu_filter_madgwickrÂJ}rÃJ(h}rÄJh}rÅJh]rÆJUros/kinetic/imu_toolsrÇJassh ˆh }rÈJh}rÉJh}rÊJh]rËJUros-kinetic-imu-filter-madgwickrÌJasssuUcl_urdfrÍJ}rÎJ(h}rÏJh}rÐJh]rÑJUros/kinetic/roslisp_commonrÒJassh ˆh }rÓJh}rÔJh}rÕJh]rÖJUros-kinetic-cl-urdfr×JasssuUmicros_swarm_frameworkrØJ}rÙJ(h}rÚJh}rÛJh]rÜJU"ros/kinetic/micros_swarm_frameworkrÝJassh ˆh }rÞJh}rßJh}ràJh]ráJU"ros-kinetic-micros-swarm-frameworkrâJasssuUtrac_ik_pythonrãJ}räJ(h}råJh}ræJh]rçJUros/kinetic/trac_ikrèJassh ˆh }réJh}rêJh}rëJh]rìJUros-kinetic-trac-ik-pythonríJasssuUyocs_waypoints_navirîJ}rïJ(h}rðJh}rñJh]ròJUros/kinetic/yujin_ocsróJassh ˆh }rôJh}rõJh}röJh]r÷JUros-kinetic-yocs-waypoints-navirøJasssuU ifm_o3mxxxrùJ}rúJ(h}rûJh}rüJh]rýJUros/kinetic/ifm_o3mxxxrþJassh ˆh }rÿJh}rKh}rKh]rKUros-kinetic-ifm-o3mxxxrKasssuUkobuki_softnoderK}rK(h}rKh}rKh]rKUros/kinetic/kobuki_softr Kassh ˆh }r Kh}r Kh}r Kh]r KUros-kinetic-kobuki-softnoderKasssuUop3_balance_controlrK}rK(h}rKh}rKh]rKUros/kinetic/robotis_op3rKassh ˆh }rKh}rKh}rKh]rKUros-kinetic-op3-balance-controlrKasssuUstereo_image_procrK}rK(h}rKh}rKh]rKUros/kinetic/image_pipelinerKassh ˆh }r Kh}r!Kh}r"Kh]r#KUros-kinetic-stereo-image-procr$KasssuU simple_navigation_goals_tutorialr%K}r&K(h}r'Kh}r(Kh]r)KU ros/kinetic/navigation_tutorialsr*Kassh ˆh }r+Kh}r,Kh}r-Kh]r.KU,ros-kinetic-simple-navigation-goals-tutorialr/KasssuU goal_passerr0K}r1K(h}r2Kh}r3Kh]r4KU#ros/kinetic/navigation_experimentalr5Kassh ˆh }r6Kh}r7Kh}r8Kh]r9KUros-kinetic-goal-passerr:KasssuUpr2_self_test_msgsr;K}rKh]r?KUros/kinetic/pr2_self_testr@Kassh ˆh }rAKh}rBKh}rCKh]rDKUros-kinetic-pr2-self-test-msgsrEKasssuUturtlebot_followerrFK}rGK(h}rHKh}rIKh]rJKUros/kinetic/turtlebot_appsrKKassh ˆh }rLKh}rMKh}rNKh]rOKUros-kinetic-turtlebot-followerrPKasssuU naoqi_poserQK}rRK(h}rSKh}rTKh]rUKUros/kinetic/naoqi_bridgerVKassh ˆh }rWKh}rXKh}rYKh]rZKUros-kinetic-naoqi-poser[KasssuUabb_irb6640_moveit_configr\K}r]K(h}r^Kh}r_Kh]r`KUros/kinetic/abbraKassh ˆh }rbKh}rcKh}rdKh]reKU%ros-kinetic-abb-irb6640-moveit-configrfKasssuUdataspeed_pds_msgsrgK}rhK(h}riKh}rjKh]rkKUros/kinetic/dataspeed_pdsrlKassh ˆh }rmKh}rnKh}roKh]rpKUros-kinetic-dataspeed-pds-msgsrqKasssuU class_loaderrrK}rsK(h}rtKh}ruKh]rvKUros/kinetic/class_loaderrwKassh ˆh }rxKh}ryKh}rzKh]r{KUros-kinetic-class-loaderr|KasssuU concert_msgsr}K}r~K(h}rKh}r€Kh]rKUros/kinetic/rocon_msgsr‚Kassh ˆh }rƒKh}r„Kh}r…Kh]r†KUros-kinetic-concert-msgsr‡KasssuU o3m151_driverrˆK}r‰K(h}rŠKh}r‹Kh]rŒKUros/kinetic/o3m151_driverrKassh ˆh }rŽKh}rKh}rKh]r‘KUros-kinetic-o3m151-driverr’KasssuU franka_msgsr“K}r”K(h}r•Kh}r–Kh]r—KUros/kinetic/franka_rosr˜Kassh ˆh }r™Kh}ršKh}r›Kh]rœKUros-kinetic-franka-msgsrKasssuUrobot_activityržK}rŸK(h}r Kh}r¡Kh]r¢KUros/kinetic/robot_activityr£Kassh ˆh }r¤Kh}r¥Kh}r¦Kh]r§KUros-kinetic-robot-activityr¨KasssuUfanuc_m20ib_supportr©K}rªK(h}r«Kh}r¬Kh]r­KUros/kinetic/fanucr®Kassh ˆh }r¯Kh}r°Kh}r±Kh]r²KUros-kinetic-fanuc-m20ib-supportr³KasssuUrexrov2_descriptionr´K}rµK(h}r¶Kh}r·Kh]r¸KUros/kinetic/rexrov2r¹Kassh ˆh }rºKh}r»Kh}r¼Kh]r½KUros-kinetic-rexrov2-descriptionr¾KasssuU sync_paramsr¿K}rÀK(h}rÁKh}rÂKh]rÃKUros/kinetic/sync_paramsrÄKassh ˆh }rÅKh}rÆKh}rÇKh]rÈKUros-kinetic-sync-paramsrÉKasssuUcl_transforms_stampedrÊK}rËK(h}rÌKh}rÍKh]rÎKUros/kinetic/roslisp_commonrÏKassh ˆh }rÐKh}rÑKh}rÒKh]rÓKU!ros-kinetic-cl-transforms-stampedrÔKasssuUrb1_base_commonrÕK}rÖK(h}r×Kh}rØKh]rÙKUros/kinetic/rb1_base_commonrÚKassh ˆh }rÛKh}rÜKh}rÝKh]rÞKUros-kinetic-rb1-base-commonrßKasssuU libqt_coreràK}ráK(h}râKh}rãKh]räKUros/kinetic/qt_metapackagesråKassh ˆh }ræKh}rçKh}rèKh]réKUros-kinetic-libqt-corerêKasssuUeus_qprëK}rìK(h}ríKh}rîKh]rïKUros/kinetic/jsk_controlrðKassh ˆh }rñKh}ròKh}róKh]rôKUros-kinetic-eus-qprõKasssuUpr2_arm_move_ikröK}r÷K(h}røKh}rùKh]rúKUros/kinetic/pr2_common_actionsrûKassh ˆh }rüKh}rýKh}rþKh]rÿKUros-kinetic-pr2-arm-move-ikrLasssuUtf2_rosrL}rL(h}rLh}rLh]rLUros/kinetic/geometry2rLassh ˆh }rLh}rLh}r Lh]r LUros-kinetic-tf2-rosr LasssuUlibrviz_tutorialr L}r L(h}rLh}rLh]rLU#ros/kinetic/visualization_tutorialsrLassh ˆh }rLh}rLh}rLh]rLUros-kinetic-librviz-tutorialrLasssuU rbcar_simrL}rL(h}rLh}rLh]rLUros/kinetic/rbcar_simrLassh ˆh }rLh}rLh}rLh]r LUros-kinetic-rbcar-simr!LasssuUswri_geometry_utilr"L}r#L(h}r$Lh}r%Lh]r&LUros/kinetic/marti_commonr'Lassh ˆh }r(Lh}r)Lh}r*Lh]r+LUros-kinetic-swri-geometry-utilr,LasssuU agvs_commonr-L}r.L(h}r/Lh}r0Lh]r1LUros/kinetic/agvs_commonr2Lassh ˆh }r3Lh}r4Lh}r5Lh]r6LUros-kinetic-agvs-commonr7LasssuUmrpt_icp_slam_2dr8L}r9L(h}r:Lh}r;Lh]rLh}r?Lh}r@Lh]rALUros-kinetic-mrpt-icp-slam-2drBLasssuU jsk_gui_msgsrCL}rDL(h}rELh}rFLh]rGLUros/kinetic/jsk_common_msgsrHLassh ˆh }rILh}rJLh}rKLh]rLLUros-kinetic-jsk-gui-msgsrMLasssuU vision_msgsrNL}rOL(h}rPLh}rQLh]rRLUros/kinetic/vision_msgsrSLassh ˆh }rTLh}rULh}rVLh]rWLUros-kinetic-vision-msgsrXLasssuUgenrsrYL}rZL(h}r[Lh}r\Lh]r]LUros/kinetic/genrsr^Lassh ˆh }r_Lh}r`Lh}raLh]rbLUros-kinetic-genrsrcLasssuU octomap_rosrdL}reL(h}rfLh}rgLh]rhLUros/kinetic/octomap_rosriLassh ˆh }rjLh}rkLh}rlLh]rmLUros-kinetic-octomap-rosrnLasssuUrosjava_extrasroL}rpL(h}rqLh}rrLh]rsLUros/kinetic/rosjava_extrasrtLassh ˆh }ruLh}rvLh}rwLh]rxLUros-kinetic-rosjava-extrasryLasssuU*open_manipulator_with_tb3_waffle_pi_moveitrzL}r{L(h}r|Lh}r}Lh]r~LU%ros/kinetic/open_manipulator_with_tb3rLassh ˆh }r€Lh}rLh}r‚Lh]rƒLU6ros-kinetic-open-manipulator-with-tb3-waffle-pi-moveitr„LasssuUmarvelmind_navr…L}r†L(h}r‡Lh}rˆLh]r‰LUros/kinetic/marvelmind_navrŠLassh ˆh }r‹Lh}rŒLh}rLh]rŽLUros-kinetic-marvelmind-navrLasssuUturtlebot_bringuprL}r‘L(h}r’Lh}r“Lh]r”LUros/kinetic/turtlebotr•Lassh ˆh }r–Lh}r—Lh}r˜Lh]r™LUros-kinetic-turtlebot-bringupršLasssuUrobotis_op3_commonr›L}rœL(h}rLh}ržLh]rŸLUros/kinetic/robotis_op3_commonr Lassh ˆh }r¡Lh}r¢Lh}r£Lh]r¤LUros-kinetic-robotis-op3-commonr¥LasssuUtblibr¦L}r§L(h}r¨Lh}r©Lh]rªLUros/kinetic/tblibr«Lassh ˆh }r¬Lh}r­Lh}r®Lh]r¯LUros-kinetic-tblibr°LasssuUrqt_logger_levelr±L}r²L(h}r³Lh}r´Lh]rµLUros/kinetic/rqt_logger_levelr¶Lassh ˆh }r·Lh}r¸Lh}r¹Lh]rºLUros-kinetic-rqt-logger-levelr»LasssuU jackal_gazebor¼L}r½L(h}r¾Lh}r¿Lh]rÀLUros/kinetic/jackal_simulatorrÁLassh ˆh }rÂLh}rÃLh}rÄLh]rÅLUros-kinetic-jackal-gazeborÆLasssuUvirtual_force_publisherrÇL}rÈL(h}rÉLh}rÊLh]rËLUros/kinetic/jsk_commonrÌLassh ˆh }rÍLh}rÎLh}rÏLh]rÐLU#ros-kinetic-virtual-force-publisherrÑLasssuUswri_string_utilrÒL}rÓL(h}rÔLh}rÕLh]rÖLUros/kinetic/marti_commonr×Lassh ˆh }rØLh}rÙLh}rÚLh]rÛLUros-kinetic-swri-string-utilrÜLasssuUrosserial_xbeerÝL}rÞL(h}rßLh}ràLh]ráLUros/kinetic/rosserialrâLassh ˆh }rãLh}räLh}råLh]ræLUros-kinetic-rosserial-xbeerçLasssuUsummit_xl_navigationrèL}réL(h}rêLh}rëLh]rìLUros/kinetic/summit_xl_commonríLassh ˆh }rîLh}rïLh}rðLh]rñLU ros-kinetic-summit-xl-navigationròLasssuUrqt_joint_trajectory_controllerróL}rôL(h}rõLh}röLh]r÷LUros/kinetic/ros_controllersrøLassh ˆh }rùLh}rúLh}rûLh]rüLU+ros-kinetic-rqt-joint-trajectory-controllerrýLasssuUnetwork_monitor_udprþL}rÿL(h}rMh}rMh]rMUros/kinetic/linux_networkingrMassh ˆh }rMh}rMh}rMh]rMUros-kinetic-network-monitor-udprMasssuUgrizzly_desktopr M}r M(h}r Mh}r Mh]r MUros/kinetic/grizzly_desktoprMassh ˆh }rMh}rMh}rMh]rMUros-kinetic-grizzly-desktoprMasssuUrtmros_nextagerM}rM(h}rMh}rMh]rMUros/kinetic/rtmros_nextagerMassh ˆh }rMh}rMh}rMh]rMUros-kinetic-rtmros-nextagerMasssuUmongodb_store_msgsrM}r M(h}r!Mh}r"Mh]r#MUros/kinetic/mongodb_storer$Massh ˆh }r%Mh}r&Mh}r'Mh]r(MUros-kinetic-mongodb-store-msgsr)MasssuUkhi_robot_bringupr*M}r+M(h}r,Mh}r-Mh]r.MUros/kinetic/khi_robotr/Massh ˆh }r0Mh}r1Mh}r2Mh]r3MUros-kinetic-khi-robot-bringupr4MasssuUthormang3_managerr5M}r6M(h}r7Mh}r8Mh]r9MUros/kinetic/thormang3_mpcr:Massh ˆh }r;Mh}rMUros-kinetic-thormang3-managerr?MasssuUweb_video_serverr@M}rAM(h}rBMh}rCMh]rDMUros/kinetic/web_video_serverrEMassh ˆh }rFMh}rGMh}rHMh]rIMUros-kinetic-web-video-serverrJMasssuUrviz_recorder_buttonsrKM}rLM(h}rMMh}rNMh]rOMUros/kinetic/robot_recorderrPMassh ˆh }rQMh}rRMh}rSMh]rTMU!ros-kinetic-rviz-recorder-buttonsrUMasssuU smacha_rosrVM}rWM(h}rXMh}rYMh]rZMUros/kinetic/smachar[Massh ˆh }r\Mh}r]Mh}r^Mh]r_MUros-kinetic-smacha-rosr`MasssuUpr2_mannequin_moderaM}rbM(h}rcMh}rdMh]reMUros/kinetic/pr2_appsrfMassh ˆh }rgMh}rhMh}riMh]rjMUros-kinetic-pr2-mannequin-moderkMasssuUtest_osmrlM}rmM(h}rnMh}roMh]rpMUros/kinetic/open_street_maprqMassh ˆh }rrMh}rsMh}rtMh]ruMUros-kinetic-test-osmrvMasssuUmoveit_ros_planningrwM}rxM(h}ryMh}rzMh]r{MUros/kinetic/moveitr|Massh ˆh }r}Mh}r~Mh}rMh]r€MUros-kinetic-moveit-ros-planningrMasssuU parrot_arsdkr‚M}rƒM(h}r„Mh}r…Mh]r†MUros/kinetic/parrot_arsdkr‡Massh ˆh }rˆMh}r‰Mh}rŠMh]r‹MUros-kinetic-parrot-arsdkrŒMasssuUmultires_imagerM}rŽM(h}rMh}rMh]r‘MUros/kinetic/mapvizr’Massh ˆh }r“Mh}r”Mh}r•Mh]r–MUros-kinetic-multires-imager—MasssuUcob_descriptionr˜M}r™M(h}ršMh}r›Mh]rœMUros/kinetic/cob_commonrMassh ˆh }ržMh}rŸMh}r Mh]r¡MUros-kinetic-cob-descriptionr¢MasssuU kobuki_msgsr£M}r¤M(h}r¥Mh}r¦Mh]r§MUros/kinetic/kobuki_msgsr¨Massh ˆh }r©Mh}rªMh}r«Mh]r¬MUros-kinetic-kobuki-msgsr­MasssuU roch_sensorpcr®M}r¯M(h}r°Mh}r±Mh]r²MUros/kinetic/roch_robotr³Massh ˆh }r´Mh}rµMh}r¶Mh]r·MUros-kinetic-roch-sensorpcr¸MasssuU naoqi_driverr¹M}rºM(h}r»Mh}r¼Mh]r½MUros/kinetic/naoqi_driverr¾Massh ˆh }r¿Mh}rÀMh}rÁMh]rÂMUros-kinetic-naoqi-driverrÃMasssuUagvs_simrÄM}rÅM(h}rÆMh}rÇMh]rÈMUros/kinetic/agvs_simrÉMassh ˆh }rÊMh}rËMh}rÌMh]rÍMUros-kinetic-agvs-simrÎMasssuUdataspeed_pds_rqtrÏM}rÐM(h}rÑMh}rÒMh]rÓMUros/kinetic/dataspeed_pdsrÔMassh ˆh }rÕMh}rÖMh}r×Mh]rØMUros-kinetic-dataspeed-pds-rqtrÙMasssuUmultimaster_fkierÚM}rÛM(h}rÜMh}rÝMh]rÞMUros/kinetic/multimaster_fkierßMassh ˆh }ràMh}ráMh}râMh]rãMUros-kinetic-multimaster-fkieräMasssuU imu_toolsråM}ræM(h}rçMh}rèMh]réMUros/kinetic/imu_toolsrêMassh ˆh }rëMh}rìMh}ríMh]rîMUros-kinetic-imu-toolsrïMasssuUfanuc_r1000ia_supportrðM}rñM(h}ròMh}róMh]rôMUros/kinetic/fanucrõMassh ˆh }röMh}r÷Mh}røMh]rùMU!ros-kinetic-fanuc-r1000ia-supportrúMasssuUmulti_map_serverrûM}rüM(h}rýMh}rþMh]rÿMUros/kinetic/jsk_commonrNassh ˆh }rNh}rNh}rNh]rNUros-kinetic-multi-map-serverrNasssuUcatkin_virtualenvrN}rN(h}rNh}r Nh]r NUros/kinetic/catkin_virtualenvr Nassh ˆh }r Nh}r Nh}rNh]rNUros-kinetic-catkin-virtualenvrNasssuU ecl_devicesrN}rN(h}rNh}rNh]rNUros/kinetic/ecl_corerNassh ˆh }rNh}rNh}rNh]rNUros-kinetic-ecl-devicesrNasssuUps4eyerN}rN(h}rNh}rNh]r NUros/kinetic/ps4eyer!Nassh ˆh }r"Nh}r#Nh}r$Nh]r%NUros-kinetic-ps4eyer&NasssuU mrpt_msgsr'N}r(N(h}r)Nh}r*Nh]r+NUros/kinetic/mrpt_msgsr,Nassh ˆh }r-Nh}r.Nh}r/Nh]r0NUros-kinetic-mrpt-msgsr1NasssuUbaldorr2N}r3N(h}r4Nh}r5Nh]r6NUros/kinetic/baldorr7Nassh ˆh }r8Nh}r9Nh}r:Nh]r;NUros-kinetic-baldorrN(h}r?Nh}r@Nh]rANUros/kinetic/urg_stampedrBNassh ˆh }rCNh}rDNh}rENh]rFNUros-kinetic-urg-stampedrGNasssuUlibpcanrHN}rIN(h}rJNh}rKNh]rLNUros/kinetic/cob_externrMNassh ˆh }rNNh}rONh}rPNh]rQNUros-kinetic-libpcanrRNasssuUsocketcan_interfacerSN}rTN(h}rUNh}rVNh]rWNUros/kinetic/ros_canopenrXNassh ˆh }rYNh}rZNh}r[Nh]r\NUros-kinetic-socketcan-interfacer]NasssuUturtlebot3_faker^N}r_N(h}r`Nh}raNh]rbNU"ros/kinetic/turtlebot3_simulationsrcNassh ˆh }rdNh}reNh}rfNh]rgNUros-kinetic-turtlebot3-fakerhNasssuU cob_teleopriN}rjN(h}rkNh}rlNh]rmNUros/kinetic/cob_command_toolsrnNassh ˆh }roNh}rpNh}rqNh]rrNUros-kinetic-cob-teleoprsNasssuU dwb_pluginsrtN}ruN(h}rvNh}rwNh]rxNUros/kinetic/robot_navigationryNassh ˆh }rzNh}r{Nh}r|Nh]r}NUros-kinetic-dwb-pluginsr~NasssuUrobot_state_publisherrN}r€N(h}rNh}r‚Nh]rƒNU!ros/kinetic/robot_state_publisherr„Nassh ˆh }r…Nh}r†Nh}r‡Nh]rˆNU!ros-kinetic-robot-state-publisherr‰NasssuUainstein_radar_toolsrŠN}r‹N(h}rŒNh}rNh]rŽNUros/kinetic/ainstein_radarrNassh ˆh }rNh}r‘Nh}r’Nh]r“NU ros-kinetic-ainstein-radar-toolsr”NasssuUpr2_hardware_interfacer•N}r–N(h}r—Nh}r˜Nh]r™NUros/kinetic/pr2_mechanismršNassh ˆh }r›Nh}rœNh}rNh]ržNU"ros-kinetic-pr2-hardware-interfacerŸNasssuU joy_listenerr N}r¡N(h}r¢Nh}r£Nh]r¤NUros/kinetic/wu_ros_toolsr¥Nassh ˆh }r¦Nh}r§Nh}r¨Nh]r©NUros-kinetic-joy-listenerrªNasssuU hector_slamr«N}r¬N(h}r­Nh}r®Nh]r¯NUros/kinetic/hector_slamr°Nassh ˆh }r±Nh}r²Nh}r³Nh]r´NUros-kinetic-hector-slamrµNasssuUjskeusr¶N}r·N(h}r¸Nh}r¹Nh]rºNUros/kinetic/jskeusr»Nassh ˆh }r¼Nh}r½Nh}r¾Nh]r¿NUros-kinetic-jskeusrÀNasssuUlinux_peripheral_interfacesrÁN}rÂN(h}rÃNh}rÄNh]rÅNU'ros/kinetic/linux_peripheral_interfacesrÆNassh ˆh }rÇNh}rÈNh}rÉNh]rÊNU'ros-kinetic-linux-peripheral-interfacesrËNasssuUainstein_radar_gazebo_pluginsrÌN}rÍN(h}rÎNh}rÏNh]rÐNUros/kinetic/ainstein_radarrÑNassh ˆh }rÒNh}rÓNh}rÔNh]rÕNU)ros-kinetic-ainstein-radar-gazebo-pluginsrÖNasssuUainstein_radar_rviz_pluginsr×N}rØN(h}rÙNh}rÚNh]rÛNUros/kinetic/ainstein_radarrÜNassh ˆh }rÝNh}rÞNh}rßNh]ràNU'ros-kinetic-ainstein-radar-rviz-pluginsráNasssuU cob_utilitiesrâN}rãN(h}räNh}råNh]ræNUros/kinetic/cob_driverrçNassh ˆh }rèNh}réNh}rêNh]rëNUros-kinetic-cob-utilitiesrìNasssuU pddl_plannerríN}rîN(h}rïNh}rðNh]rñNUros/kinetic/jsk_planningròNassh ˆh }róNh}rôNh}rõNh]röNUros-kinetic-pddl-plannerr÷NasssuU iiwa_moveitrøN}rùN(h}rúNh}rûNh]rüNUros/kinetic/iiwa_stackrýNassh ˆh }rþNh}rÿNh}rOh]rOUros-kinetic-iiwa-moveitrOasssuUrobot_mechanism_controllersrO}rO(h}rOh}rOh]rOUros/kinetic/pr2_controllersrOassh ˆh }r Oh}r Oh}r Oh]r OU'ros-kinetic-robot-mechanism-controllersr OasssuUprbt_moveit_configrO}rO(h}rOh}rOh]rOUros/kinetic/pilz_robotsrOassh ˆh }rOh}rOh}rOh]rOUros-kinetic-prbt-moveit-configrOasssuU aws_commonrO}rO(h}rOh}rOh]rOUros/kinetic/aws_commonrOassh ˆh }rOh}r Oh}r!Oh]r"OUros-kinetic-aws-commonr#OasssuUdistance_map_noder$O}r%O(h}r&Oh}r'Oh]r(OUros/kinetic/distance_mapr)Oassh ˆh }r*Oh}r+Oh}r,Oh]r-OUros-kinetic-distance-map-noder.OasssuUqb_hand_controlr/O}r0O(h}r1Oh}r2Oh]r3OUros/kinetic/qb_handr4Oassh ˆh }r5Oh}r6Oh}r7Oh]r8OUros-kinetic-qb-hand-controlr9OasssuUwebkit_dependencyr:O}r;O(h}rOUros/kinetic/webkit_dependencyr?Oassh ˆh }r@Oh}rAOh}rBOh]rCOUros-kinetic-webkit-dependencyrDOasssuUstdr_launchersrEO}rFO(h}rGOh}rHOh]rIOUros/kinetic/stdr_simulatorrJOassh ˆh }rKOh}rLOh}rMOh]rNOUros-kinetic-stdr-launchersrOOasssuUrosserial_clientrPO}rQO(h}rROh}rSOh]rTOUros/kinetic/rosserialrUOassh ˆh }rVOh}rWOh}rXOh]rYOUros-kinetic-rosserial-clientrZOasssuUfsrobo_r_trajectory_filtersr[O}r\O(h}r]Oh}r^Oh]r_OUros/kinetic/fsrobo_rr`Oassh ˆh }raOh}rbOh}rcOh]rdOU'ros-kinetic-fsrobo-r-trajectory-filtersreOasssuUmarker_rviz_pluginrfO}rgO(h}rhOh}riOh]rjOUros/kinetic/marker_rviz_pluginrkOassh ˆh }rlOh}rmOh}rnOh]roOUros-kinetic-marker-rviz-pluginrpOasssuU spacenav_noderqO}rrO(h}rsOh}rtOh]ruOUros/kinetic/joystick_driversrvOassh ˆh }rwOh}rxOh}ryOh]rzOUros-kinetic-spacenav-noder{OasssuUagvs_sim_bringupr|O}r}O(h}r~Oh}rOh]r€OUros/kinetic/agvs_simrOassh ˆh }r‚Oh}rƒOh}r„Oh]r…OUros-kinetic-agvs-sim-bringupr†OasssuU dlux_pluginsr‡O}rˆO(h}r‰Oh}rŠOh]r‹OUros/kinetic/robot_navigationrŒOassh ˆh }rOh}rŽOh}rOh]rOUros-kinetic-dlux-pluginsr‘OasssuU opt_camerar’O}r“O(h}r”Oh}r•Oh]r–OUros/kinetic/jsk_3rdpartyr—Oassh ˆh }r˜Oh}r™Oh}ršOh]r›OUros-kinetic-opt-camerarœOasssuU roch_baserO}ržO(h}rŸOh}r Oh]r¡OUros/kinetic/roch_robotr¢Oassh ˆh }r£Oh}r¤Oh}r¥Oh]r¦OUros-kinetic-roch-baser§OasssuUridgeback_descriptionr¨O}r©O(h}rªOh}r«Oh]r¬OUros/kinetic/ridgebackr­Oassh ˆh }r®Oh}r¯Oh}r°Oh]r±OU!ros-kinetic-ridgeback-descriptionr²OasssuU euscolladar³O}r´O(h}rµOh}r¶Oh]r·OUros/kinetic/jsk_model_toolsr¸Oassh ˆh }r¹Oh}rºOh}r»Oh]r¼OUros-kinetic-euscolladar½OasssuUrosoutr¾O}r¿O(h}rÀOh}rÁOh]rÂOUros/kinetic/ros_commrÃOassh ˆh }rÄOh}rÅOh}rÆOh]rÇOUros-kinetic-rosoutrÈOasssuUturtlebot3_descriptionrÉO}rÊO(h}rËOh}rÌOh]rÍOUros/kinetic/turtlebot3rÎOassh ˆh }rÏOh}rÐOh}rÑOh]rÒOU"ros-kinetic-turtlebot3-descriptionrÓOasssuU cob_controlrÔO}rÕO(h}rÖOh}r×Oh]rØOUros/kinetic/cob_controlrÙOassh ˆh }rÚOh}rÛOh}rÜOh]rÝOUros-kinetic-cob-controlrÞOasssuUsummit_x_controlrßO}ràO(h}ráOh}râOh]rãOUros/kinetic/summit_x_simräOassh ˆh }råOh}ræOh}rçOh]rèOUros-kinetic-summit-x-controlréOasssuUrosserial_arduinorêO}rëO(h}rìOh}ríOh]rîOUros/kinetic/rosserialrïOassh ˆh }rðOh}rñOh}ròOh]róOUros-kinetic-rosserial-arduinorôOasssuUrostimerõO}röO(h}r÷Oh}røOh]rùOUros/kinetic/roscpp_corerúOassh ˆh }rûOh}rüOh}rýOh]rþOUros-kinetic-rostimerÿOasssuUrosunitrP}rP(h}rPh}rPh]rPUros/kinetic/rosrPassh ˆh }rPh}rPh}rPh]r PUros-kinetic-rosunitr PasssuUmove_base_msgsr P}r P(h}r Ph}rPh]rPUros/kinetic/navigation_msgsrPassh ˆh }rPh}rPh}rPh]rPUros-kinetic-move-base-msgsrPasssuUindoor_localizationrP}rP(h}rPh}rPh]rPUros/kinetic/indoor_localizationrPassh ˆh }rPh}rPh}rPh]rPUros-kinetic-indoor-localizationr PasssuUlaser_ortho_projectorr!P}r"P(h}r#Ph}r$Ph]r%PUros/kinetic/scan_toolsr&Passh ˆh }r'Ph}r(Ph}r)Ph]r*PU!ros-kinetic-laser-ortho-projectorr+PasssuUdelphi_srr_msgsr,P}r-P(h}r.Ph}r/Ph]r0PUros/kinetic/astuff_sensor_msgsr1Passh ˆh }r2Ph}r3Ph}r4Ph]r5PUros-kinetic-delphi-srr-msgsr6PasssuU mrpt_bridger7P}r8P(h}r9Ph}r:Ph]r;PUros/kinetic/mrpt_bridgerPh}r?Ph]r@PUros-kinetic-mrpt-bridgerAPasssuUcamera_info_managerrBP}rCP(h}rDPh}rEPh]rFPUros/kinetic/image_commonrGPassh ˆh }rHPh}rIPh}rJPh]rKPUros-kinetic-camera-info-managerrLPasssuU wireless_msgsrMP}rNP(h}rOPh}rPPh]rQPUros/kinetic/wirelessrRPassh ˆh }rSPh}rTPh}rUPh]rVPUros-kinetic-wireless-msgsrWPasssuUasmachrXP}rYP(h}rZPh}r[Ph]r\PUros/kinetic/linux_networkingr]Passh ˆh }r^Ph}r_Ph}r`Ph]raPUros-kinetic-asmachrbPasssuUstatic_transform_muxrcP}rdP(h}rePh}rfPh]rgPU ros/kinetic/static_transform_muxrhPassh ˆh }riPh}rjPh}rkPh]rlPU ros-kinetic-static-transform-muxrmPasssuU homer_ttsrnP}roP(h}rpPh}rqPh]rrPUros/kinetic/homer_ttsrsPassh ˆh }rtPh}ruPh}rvPh]rwPUros-kinetic-homer-ttsrxPasssuUhomer_navigationryP}rzP(h}r{Ph}r|Ph]r}PUros/kinetic/homer_navigationr~Passh ˆh }rPh}r€Ph}rPh]r‚PUros-kinetic-homer-navigationrƒPasssuUardrone_autonomyr„P}r…P(h}r†Ph}r‡Ph]rˆPUros/kinetic/ardrone_autonomyr‰Passh ˆh }rŠPh}r‹Ph}rŒPh]rPUros-kinetic-ardrone-autonomyrŽPasssuU robot_systemdrP}rP(h}r‘Ph}r’Ph]r“PUros/kinetic/robot_systemdr”Passh ˆh }r•Ph}r–Ph}r—Ph]r˜PUros-kinetic-robot-systemdr™PasssuUquaternion_operationršP}r›P(h}rœPh}rPh]ržPU ros/kinetic/quaternion_operationrŸPassh ˆh }r Ph}r¡Ph}r¢Ph]r£PU ros-kinetic-quaternion-operationr¤PasssuUqb_hand_descriptionr¥P}r¦P(h}r§Ph}r¨Ph]r©PUros/kinetic/qb_handrªPassh ˆh }r«Ph}r¬Ph}r­Ph]r®PUros-kinetic-qb-hand-descriptionr¯PasssuU roslisp_replr°P}r±P(h}r²Ph}r³Ph]r´PUros/kinetic/ros_emacs_utilsrµPassh ˆh }r¶Ph}r·Ph}r¸Ph]r¹PUros-kinetic-roslisp-replrºPasssuU xsens_driverr»P}r¼P(h}r½Ph}r¾Ph]r¿PUros/kinetic/xsens_driverrÀPassh ˆh }rÁPh}rÂPh}rÃPh]rÄPUros-kinetic-xsens-driverrÅPasssuUprbt_ikfast_manipulator_pluginrÆP}rÇP(h}rÈPh}rÉPh]rÊPUros/kinetic/pilz_robotsrËPassh ˆh }rÌPh}rÍPh}rÎPh]rÏPU*ros-kinetic-prbt-ikfast-manipulator-pluginrÐPasssuUmsprÑP}rÒP(h}rÓPh}rÔPh]rÕPUros/kinetic/msprÖPassh ˆh }r×Ph}rØPh}rÙPh]rÚPUros-kinetic-msprÛPasssuUkobuki_desktoprÜP}rÝP(h}rÞPh}rßPh]ràPUros/kinetic/kobuki_desktopráPassh ˆh }râPh}rãPh}räPh]råPUros-kinetic-kobuki-desktopræPasssuUjackal_desktoprçP}rèP(h}réPh}rêPh]rëPUros/kinetic/jackal_desktoprìPassh ˆh }ríPh}rîPh}rïPh]rðPUros-kinetic-jackal-desktoprñPasssuUqb_device_bringupròP}róP(h}rôPh}rõPh]röPUros/kinetic/qb_devicer÷Passh ˆh }røPh}rùPh}rúPh]rûPUros-kinetic-qb-device-bringuprüPasssuUecl_converters_literýP}rþP(h}rÿPh}rQh]rQUros/kinetic/ecl_literQassh ˆh }rQh}rQh}rQh]rQUros-kinetic-ecl-converters-literQasssuUrosbashrQ}r Q(h}r Qh}r Qh]r QUros/kinetic/rosr Qassh ˆh }rQh}rQh}rQh]rQUros-kinetic-rosbashrQasssuUrqt_deprQ}rQ(h}rQh}rQh]rQUros/kinetic/rqt_deprQassh ˆh }rQh}rQh}rQh]rQUros-kinetic-rqt-deprQasssuU gpsd_clientrQ}rQ(h}r Qh}r!Qh]r"QUros/kinetic/gps_umdr#Qassh ˆh }r$Qh}r%Qh}r&Qh]r'QUros-kinetic-gpsd-clientr(QasssuUscheduler_msgsr)Q}r*Q(h}r+Qh}r,Qh]r-QUros/kinetic/rocon_msgsr.Qassh ˆh }r/Qh}r0Qh}r1Qh]r2QUros-kinetic-scheduler-msgsr3QasssuU cost_map_corer4Q}r5Q(h}r6Qh}r7Qh]r8QUros/kinetic/cost_mapr9Qassh ˆh }r:Qh}r;Qh}rQasssuU doosan_robotr?Q}r@Q(h}rAQh}rBQh]rCQUros/kinetic/doosan_robotrDQassh ˆh }rEQh}rFQh}rGQh]rHQUros-kinetic-doosan-robotrIQasssuUuuv_assistantsrJQ}rKQ(h}rLQh}rMQh]rNQUros/kinetic/uuv_simulatorrOQassh ˆh }rPQh}rQQh}rRQh]rSQUros-kinetic-uuv-assistantsrTQasssuUxpprUQ}rVQ(h}rWQh}rXQh]rYQUros/kinetic/xpprZQassh ˆh }r[Qh}r\Qh}r]Qh]r^QUros-kinetic-xppr_QasssuUbcapr`Q}raQ(h}rbQh}rcQh]rdQUros/kinetic/bcapreQassh ˆh }rfQh}rgQh}rhQh]riQUros-kinetic-bcaprjQasssuU oros_toolsrkQ}rlQ(h}rmQh}rnQh]roQUros/kinetic/oros_toolsrpQassh ˆh }rqQh}rrQh}rsQh]rtQUros-kinetic-oros-toolsruQasssuUjsk_interactive_testrvQ}rwQ(h}rxQh}ryQh]rzQUros/kinetic/jsk_visualizationr{Qassh ˆh }r|Qh}r}Qh}r~Qh]rQU ros-kinetic-jsk-interactive-testr€QasssuUcontroller_manager_msgsrQ}r‚Q(h}rƒQh}r„Qh]r…QUros/kinetic/ros_controlr†Qassh ˆh }r‡Qh}rˆQh}r‰Qh]rŠQU#ros-kinetic-controller-manager-msgsr‹QasssuUpr2_run_stop_auto_restartrŒQ}rQ(h}rŽQh}rQh]rQUros/kinetic/pr2_robotr‘Qassh ˆh }r’Qh}r“Qh}r”Qh]r•QU%ros-kinetic-pr2-run-stop-auto-restartr–QasssuUmrpt_local_obstaclesr—Q}r˜Q(h}r™Qh}ršQh]r›QUros/kinetic/mrpt_navigationrœQassh ˆh }rQh}ržQh}rŸQh]r QU ros-kinetic-mrpt-local-obstaclesr¡QasssuUpr2_gripper_sensor_controllerr¢Q}r£Q(h}r¤Qh}r¥Qh]r¦QUros/kinetic/pr2_gripper_sensorr§Qassh ˆh }r¨Qh}r©Qh}rªQh]r«QU)ros-kinetic-pr2-gripper-sensor-controllerr¬QasssuUpr2_gripper_sensor_msgsr­Q}r®Q(h}r¯Qh}r°Qh]r±QUros/kinetic/pr2_gripper_sensorr²Qassh ˆh }r³Qh}r´Qh}rµQh]r¶QU#ros-kinetic-pr2-gripper-sensor-msgsr·QasssuUopen_manipulator_control_guir¸Q}r¹Q(h}rºQh}r»Qh]r¼QUros/kinetic/open_manipulatorr½Qassh ˆh }r¾Qh}r¿Qh}rÀQh]rÁQU(ros-kinetic-open-manipulator-control-guirÂQasssuU ridgeback_vizrÃQ}rÄQ(h}rÅQh}rÆQh]rÇQUros/kinetic/ridgeback_desktoprÈQassh ˆh }rÉQh}rÊQh}rËQh]rÌQUros-kinetic-ridgeback-vizrÍQasssuUautoware_config_msgsrÎQ}rÏQ(h}rÐQh}rÑQh]rÒQUros/kinetic/autoware_msgsrÓQassh ˆh }rÔQh}rÕQh}rÖQh]r×QU ros-kinetic-autoware-config-msgsrØQasssuUpanda_moveit_configrÙQ}rÚQ(h}rÛQh}rÜQh]rÝQUros/kinetic/panda_moveit_configrÞQassh ˆh }rßQh}ràQh}ráQh]râQUros-kinetic-panda-moveit-configrãQasssuUrbcar_joystickräQ}råQ(h}ræQh}rçQh]rèQUros/kinetic/rbcar_simréQassh ˆh }rêQh}rëQh}rìQh]ríQUros-kinetic-rbcar-joystickrîQasssuU libmodbusrïQ}rðQ(h}rñQh}ròQh]róQUros/kinetic/ipr_externrôQassh ˆh }rõQh}röQh}r÷Qh]røQUros-kinetic-libmodbusrùQasssuUturtlebot_rviz_launchersrúQ}rûQ(h}rüQh}rýQh]rþQU"ros/kinetic/turtlebot_interactionsrÿQassh ˆh }rRh}rRh}rRh]rRU$ros-kinetic-turtlebot-rviz-launchersrRasssuUraspigibbon_simrR}rR(h}rRh}rRh]r RUros/kinetic/raspigibbon_simr Rassh ˆh }r Rh}r Rh}r Rh]rRUros-kinetic-raspigibbon-simrRasssuUtoposens_markersrR}rR(h}rRh}rRh]rRUros/kinetic/toposensrRassh ˆh }rRh}rRh}rRh]rRUros-kinetic-toposens-markersrRasssuU swri_consolerR}rR(h}rRh}rRh]rRUros/kinetic/swri_consoler Rassh ˆh }r!Rh}r"Rh}r#Rh]r$RUros-kinetic-swri-consoler%RasssuUxiaoqiang_navigationr&R}r'R(h}r(Rh}r)Rh]r*RUros/kinetic/xiaoqiangr+Rassh ˆh }r,Rh}r-Rh}r.Rh]r/RU ros-kinetic-xiaoqiang-navigationr0RasssuUpr2_tilt_laser_interfacer1R}r2R(h}r3Rh}r4Rh]r5RUros/kinetic/pr2_common_actionsr6Rassh ˆh }r7Rh}r8Rh}r9Rh]r:RU$ros-kinetic-pr2-tilt-laser-interfacer;RasssuUpyzmprRh}r?Rh]r@RUros/kinetic/pyzmprARassh ˆh }rBRh}rCRh}rDRh]rERUros-kinetic-pyzmprFRasssuU jackal_msgsrGR}rHR(h}rIRh}rJRh]rKRUros/kinetic/jackalrLRassh ˆh }rMRh}rNRh}rORh]rPRUros-kinetic-jackal-msgsrQRasssuU fcl_catkinrRR}rSR(h}rTRh}rURh]rVRUros/kinetic/fcl_catkinrWRassh ˆh }rXRh}rYRh}rZRh]r[RUros-kinetic-fcl-catkinr\RasssuUdataspeed_pds_scriptsr]R}r^R(h}r_Rh}r`Rh]raRUros/kinetic/dataspeed_pdsrbRassh ˆh }rcRh}rdRh}reRh]rfRU!ros-kinetic-dataspeed-pds-scriptsrgRasssuUnaoqi_dcm_driverrhR}riR(h}rjRh}rkRh]rlRUros/kinetic/naoqi_dcm_driverrmRassh ˆh }rnRh}roRh}rpRh]rqRUros-kinetic-naoqi-dcm-driverrrRasssuU flask_corsrsR}rtR(h}ruRh}rvRh]rwRUros/kinetic/flask_corsrxRassh ˆh }ryRh}rzRh}r{Rh]r|RUros-kinetic-flask-corsr}RasssuUridgeback_gazebor~R}rR(h}r€Rh}rRh]r‚RUros/kinetic/ridgeback_simulatorrƒRassh ˆh }r„Rh}r…Rh}r†Rh]r‡RUros-kinetic-ridgeback-gazeborˆRasssuUxv_11_laser_driverr‰R}rŠR(h}r‹Rh}rŒRh]rRUros/kinetic/xv_11_laser_driverrŽRassh ˆh }rRh}rRh}r‘Rh]r’RUros-kinetic-xv-11-laser-driverr“RasssuUqb_device_hardware_interfacer”R}r•R(h}r–Rh}r—Rh]r˜RUros/kinetic/qb_devicer™Rassh ˆh }ršRh}r›Rh}rœRh]rRU(ros-kinetic-qb-device-hardware-interfaceržRasssuUmoveit_config_m1509rŸR}r R(h}r¡Rh}r¢Rh]r£RUros/kinetic/doosan_robotr¤Rassh ˆh }r¥Rh}r¦Rh}r§Rh]r¨RUros-kinetic-moveit-config-m1509r©RasssuUnextage_ik_pluginrªR}r«R(h}r¬Rh}r­Rh]r®RUros/kinetic/rtmros_nextager¯Rassh ˆh }r°Rh}r±Rh}r²Rh]r³RUros-kinetic-nextage-ik-pluginr´RasssuU image_procrµR}r¶R(h}r·Rh}r¸Rh]r¹RUros/kinetic/image_pipelinerºRassh ˆh }r»Rh}r¼Rh}r½Rh]r¾RUros-kinetic-image-procr¿RasssuU tello_driverrÀR}rÁR(h}rÂRh}rÃRh]rÄRUros/kinetic/tello_driverrÅRassh ˆh }rÆRh}rÇRh}rÈRh]rÉRUros-kinetic-tello-driverrÊRasssuUfetch_gazebo_demorËR}rÌR(h}rÍRh}rÎRh]rÏRUros/kinetic/fetch_gazeborÐRassh ˆh }rÑRh}rÒRh}rÓRh]rÔRUros-kinetic-fetch-gazebo-demorÕRasssuU neonavigationrÖR}r×R(h}rØRh}rÙRh]rÚRUros/kinetic/neonavigationrÛRassh ˆh }rÜRh}rÝRh}rÞRh]rßRUros-kinetic-neonavigationràRasssuUleuze_descriptionráR}râR(h}rãRh}räRh]råRUros/kinetic/leuze_ros_driversræRassh ˆh }rçRh}rèRh}réRh]rêRUros-kinetic-leuze-descriptionrëRasssuUvelodyne_driverrìR}ríR(h}rîRh}rïRh]rðRUros/kinetic/velodynerñRassh ˆh }ròRh}róRh}rôRh]rõRUros-kinetic-velodyne-driverröRasssuUop3_action_moduler÷R}røR(h}rùRh}rúRh]rûRUros/kinetic/robotis_op3rüRassh ˆh }rýRh}rþRh}rÿRh]rSUros-kinetic-op3-action-modulerSasssuUmulti_jackal_navrS}rS(h}rSh}rSh]rSUros/kinetic/multi_jackalrSassh ˆh }rSh}r Sh}r Sh]r SUros-kinetic-multi-jackal-navr SasssuUcl_tfr S}rS(h}rSh}rSh]rSUros/kinetic/roslisp_commonrSassh ˆh }rSh}rSh}rSh]rSUros-kinetic-cl-tfrSasssuUrosserial_msgsrS}rS(h}rSh}rSh]rSUros/kinetic/rosserialrSassh ˆh }rSh}rSh}r Sh]r!SUros-kinetic-rosserial-msgsr"SasssuUgeodesyr#S}r$S(h}r%Sh}r&Sh]r'SUros/kinetic/geographic_infor(Sassh ˆh }r)Sh}r*Sh}r+Sh]r,SUros-kinetic-geodesyr-SasssuUhector_pose_estimation_corer.S}r/S(h}r0Sh}r1Sh]r2SUros/kinetic/hector_localizationr3Sassh ˆh }r4Sh}r5Sh}r6Sh]r7SU'ros-kinetic-hector-pose-estimation-corer8SasssuUpr2_motor_diagnostic_toolr9S}r:S(h}r;Sh}rSassh ˆh }r?Sh}r@Sh}rASh]rBSU%ros-kinetic-pr2-motor-diagnostic-toolrCSasssuU frame_editorrDS}rES(h}rFSh}rGSh]rHSUros/kinetic/frame_editorrISassh ˆh }rJSh}rKSh}rLSh]rMSUros-kinetic-frame-editorrNSasssuUmulti_jackal_tutorialsrOS}rPS(h}rQSh}rRSh]rSSUros/kinetic/multi_jackalrTSassh ˆh }rUSh}rVSh}rWSh]rXSU"ros-kinetic-multi-jackal-tutorialsrYSasssuU stdr_serverrZS}r[S(h}r\Sh}r]Sh]r^SUros/kinetic/stdr_simulatorr_Sassh ˆh }r`Sh}raSh}rbSh]rcSUros-kinetic-stdr-serverrdSasssuUpointcloud_toolsreS}rfS(h}rgSh}rhSh]riSUros/kinetic/srv_toolsrjSassh ˆh }rkSh}rlSh}rmSh]rnSUros-kinetic-pointcloud-toolsroSasssuU gmplot_msgsrpS}rqS(h}rrSh}rsSh]rtSUros/kinetic/gmplot_rosruSassh ˆh }rvSh}rwSh}rxSh]rySUros-kinetic-gmplot-msgsrzSasssuUrospy_tutorialsr{S}r|S(h}r}Sh}r~Sh]rSUros/kinetic/ros_tutorialsr€Sassh ˆh }rSh}r‚Sh}rƒSh]r„SUros-kinetic-rospy-tutorialsr…SasssuU rqt_gui_pyr†S}r‡S(h}rˆSh}r‰Sh]rŠSUros/kinetic/rqtr‹Sassh ˆh }rŒSh}rSh}rŽSh]rSUros-kinetic-rqt-gui-pyrSasssuUteraranger_array_converterr‘S}r’S(h}r“Sh}r”Sh]r•SU&ros/kinetic/teraranger_array_converterr–Sassh ˆh }r—Sh}r˜Sh}r™Sh]ršSU&ros-kinetic-teraranger-array-converterr›SasssuUkobuki_rviz_launchersrœS}rS(h}ržSh}rŸSh]r SUros/kinetic/kobuki_desktopr¡Sassh ˆh }r¢Sh}r£Sh}r¤Sh]r¥SU!ros-kinetic-kobuki-rviz-launchersr¦SasssuUexotica_core_task_mapsr§S}r¨S(h}r©Sh}rªSh]r«SUros/kinetic/exoticar¬Sassh ˆh }r­Sh}r®Sh}r¯Sh]r°SU"ros-kinetic-exotica-core-task-mapsr±SasssuUdesistek_saga_controlr²S}r³S(h}r´Sh}rµSh]r¶SUros/kinetic/desistek_sagar·Sassh ˆh }r¸Sh}r¹Sh}rºSh]r»SU!ros-kinetic-desistek-saga-controlr¼SasssuUseed_r7_navigationr½S}r¾S(h}r¿Sh}rÀSh]rÁSUros/kinetic/seed_r7_ros_pkgrÂSassh ˆh }rÃSh}rÄSh}rÅSh]rÆSUros-kinetic-seed-r7-navigationrÇSasssuUrosserial_mbedrÈS}rÉS(h}rÊSh}rËSh]rÌSUros/kinetic/rosserialrÍSassh ˆh }rÎSh}rÏSh}rÐSh]rÑSUros-kinetic-rosserial-mbedrÒSasssuUqb_device_controlrÓS}rÔS(h}rÕSh}rÖSh]r×SUros/kinetic/qb_devicerØSassh ˆh }rÙSh}rÚSh}rÛSh]rÜSUros-kinetic-qb-device-controlrÝSasssuU declinationrÞS}rßS(h}ràSh}ráSh]râSUros/kinetic/declinationrãSassh ˆh }räSh}råSh}ræSh]rçSUros-kinetic-declinationrèSasssuUfetch_moveit_configréS}rêS(h}rëSh}rìSh]ríSUros/kinetic/fetch_rosrîSassh ˆh }rïSh}rðSh}rñSh]ròSUros-kinetic-fetch-moveit-configróSasssuUneobotix_usboard_msgsrôS}rõS(h}röSh}r÷Sh]røSUros/kinetic/astuff_sensor_msgsrùSassh ˆh }rúSh}rûSh}rüSh]rýSU!ros-kinetic-neobotix-usboard-msgsrþSasssuU kdl_parserrÿS}rT(h}rTh}rTh]rTUros/kinetic/kdl_parserrTassh ˆh }rTh}rTh}rTh]rTUros-kinetic-kdl-parserr TasssuUmoveitr T}r T(h}r Th}r Th]rTUros/kinetic/moveitrTassh ˆh }rTh}rTh}rTh]rTUros-kinetic-moveitrTasssuU sbg_driverrT}rT(h}rTh}rTh]rTUros/kinetic/sbg_driverrTassh ˆh }rTh}rTh}rTh]rTUros-kinetic-sbg-driverrTasssuU dsr_gazebor T}r!T(h}r"Th}r#Th]r$TUros/kinetic/doosan_robotr%Tassh ˆh }r&Th}r'Th}r(Th]r)TUros-kinetic-dsr-gazebor*TasssuUhector_gazebo_worldsr+T}r,T(h}r-Th}r.Th]r/TUros/kinetic/hector_gazebor0Tassh ˆh }r1Th}r2Th}r3Th]r4TU ros-kinetic-hector-gazebo-worldsr5TasssuU json_msgsr6T}r7T(h}r8Th}r9Th]r:TUros/kinetic/json_transportr;Tassh ˆh }rTh]r?TUros-kinetic-json-msgsr@TasssuU roscpp_corerAT}rBT(h}rCTh}rDTh]rETUros/kinetic/roscpp_corerFTassh ˆh }rGTh}rHTh}rITh]rJTUros-kinetic-roscpp-corerKTasssuUvector_map_msgsrLT}rMT(h}rNTh}rOTh]rPTUros/kinetic/autoware_msgsrQTassh ˆh }rRTh}rSTh}rTTh]rUTUros-kinetic-vector-map-msgsrVTasssuUrocon_python_commsrWT}rXT(h}rYTh}rZTh]r[TUros/kinetic/rocon_toolsr\Tassh ˆh }r]Th}r^Th}r_Th]r`TUros-kinetic-rocon-python-commsraTasssuUtrac_ik_examplesrbT}rcT(h}rdTh}reTh]rfTUros/kinetic/trac_ikrgTassh ˆh }rhTh}riTh}rjTh]rkTUros-kinetic-trac-ik-examplesrlTasssuUabb_irb2400_supportrmT}rnT(h}roTh}rpTh]rqTUros/kinetic/abbrrTassh ˆh }rsTh}rtTh}ruTh]rvTUros-kinetic-abb-irb2400-supportrwTasssuUdataspeed_ulc_msgsrxT}ryT(h}rzTh}r{Th]r|TUros/kinetic/dataspeed_ulc_rosr}Tassh ˆh }r~Th}rTh}r€Th]rTUros-kinetic-dataspeed-ulc-msgsr‚TasssuU pyros_utilsrƒT}r„T(h}r…Th}r†Th]r‡TUros/kinetic/pyros_utilsrˆTassh ˆh }r‰Th}rŠTh}r‹Th]rŒTUros-kinetic-pyros-utilsrTasssuUrexrov2_gazeborŽT}rT(h}rTh}r‘Th]r’TUros/kinetic/rexrov2r“Tassh ˆh }r”Th}r•Th}r–Th]r—TUros-kinetic-rexrov2-gazebor˜TasssuUmanipulator_h_guir™T}ršT(h}r›Th}rœTh]rTUros/kinetic/manipulator_hržTassh ˆh }rŸTh}r Th}r¡Th]r¢TUros-kinetic-manipulator-h-guir£TasssuUlkhr¤T}r¥T(h}r¦Th}r§Th]r¨TUros/kinetic/lkhr©Tassh ˆh }rªTh}r«Th}r¬Th]r­TUros-kinetic-lkhr®TasssuUtra1_descriptionr¯T}r°T(h}r±Th}r²Th]r³TUros/kinetic/minasr´Tassh ˆh }rµTh}r¶Th}r·Th]r¸TUros-kinetic-tra1-descriptionr¹TasssuUtwistimurºT}r»T(h}r¼Th}r½Th]r¾TUros/kinetic/twistimur¿Tassh ˆh }rÀTh}rÁTh}rÂTh]rÃTUros-kinetic-twistimurÄTasssuUpr2_counterbalance_checkrÅT}rÆT(h}rÇTh}rÈTh]rÉTUros/kinetic/pr2_self_testrÊTassh ˆh }rËTh}rÌTh}rÍTh]rÎTU$ros-kinetic-pr2-counterbalance-checkrÏTasssuUfour_wheel_steering_msgsrÐT}rÑT(h}rÒTh}rÓTh]rÔTU$ros/kinetic/four_wheel_steering_msgsrÕTassh ˆh }rÖTh}r×Th}rØTh]rÙTU$ros-kinetic-four-wheel-steering-msgsrÚTasssuUyocs_ar_marker_trackingrÛT}rÜT(h}rÝTh}rÞTh]rßTUros/kinetic/yujin_ocsràTassh ˆh }ráTh}râTh}rãTh]räTU#ros-kinetic-yocs-ar-marker-trackingråTasssuUdarknet_ros_msgsræT}rçT(h}rèTh}réTh]rêTUros/kinetic/darknet_rosrëTassh ˆh }rìTh}ríTh}rîTh]rïTUros-kinetic-darknet-ros-msgsrðTasssuUdenso_robot_corerñT}ròT(h}róTh}rôTh]rõTUros/kinetic/denso_robot_rosröTassh ˆh }r÷Th}røTh}rùTh]rúTUros-kinetic-denso-robot-corerûTasssuU rqt_publisherrüT}rýT(h}rþTh}rÿTh]rUUros/kinetic/rqt_publisherrUassh ˆh }rUh}rUh}rUh]rUUros-kinetic-rqt-publisherrUasssuUturtlebot3_automatic_parkingrU}rU(h}r Uh}r Uh]r UU#ros/kinetic/turtlebot3_applicationsr Uassh ˆh }r Uh}rUh}rUh]rUU(ros-kinetic-turtlebot3-automatic-parkingrUasssuUcob_handrU}rU(h}rUh}rUh]rUUros/kinetic/cob_handrUassh ˆh }rUh}rUh}rUh]rUUros-kinetic-cob-handrUasssuUtimestamp_toolsrU}rU(h}rUh}r Uh]r!UUros/kinetic/driver_commonr"Uassh ˆh }r#Uh}r$Uh}r%Uh]r&UUros-kinetic-timestamp-toolsr'UasssuU hrpsys_toolsr(U}r)U(h}r*Uh}r+Uh]r,UUros/kinetic/rtmros_commonr-Uassh ˆh }r.Uh}r/Uh}r0Uh]r1UUros-kinetic-hrpsys-toolsr2UasssuU ecl_streamsr3U}r4U(h}r5Uh}r6Uh]r7UUros/kinetic/ecl_corer8Uassh ˆh }r9Uh}r:Uh}r;Uh]rU}r?U(h}r@Uh}rAUh]rBUUros/kinetic/robot_self_filterrCUassh ˆh }rDUh}rEUh}rFUh]rGUUros-kinetic-robot-self-filterrHUasssuU rqt_topicrIU}rJU(h}rKUh}rLUh]rMUUros/kinetic/rqt_topicrNUassh ˆh }rOUh}rPUh}rQUh]rRUUros-kinetic-rqt-topicrSUasssuU camera_umdrTU}rUU(h}rVUh}rWUh]rXUUros/kinetic/camera_umdrYUassh ˆh }rZUh}r[Uh}r\Uh]r]UUros-kinetic-camera-umdr^UasssuUrostate_machiner_U}r`U(h}raUh}rbUh]rcUUros/kinetic/rostate_machinerdUassh ˆh }reUh}rfUh}rgUh]rhUUros-kinetic-rostate-machineriUasssuUpr2_head_actionrjU}rkU(h}rlUh}rmUh]rnUUros/kinetic/pr2_controllersroUassh ˆh }rpUh}rqUh}rrUh]rsUUros-kinetic-pr2-head-actionrtUasssuUnav_gridruU}rvU(h}rwUh}rxUh]ryUUros/kinetic/robot_navigationrzUassh ˆh }r{Uh}r|Uh}r}Uh]r~UUros-kinetic-nav-gridrUasssuUgmplotr€U}rU(h}r‚Uh}rƒUh]r„UUros/kinetic/gmplot_rosr…Uassh ˆh }r†Uh}r‡Uh}rˆUh]r‰UUros-kinetic-gmplotrŠUasssuUfetch_calibrationr‹U}rŒU(h}rUh}rŽUh]rUUros/kinetic/fetch_rosrUassh ˆh }r‘Uh}r’Uh}r“Uh]r”UUros-kinetic-fetch-calibrationr•UasssuUecl_ior–U}r—U(h}r˜Uh}r™Uh]ršUUros/kinetic/ecl_liter›Uassh ˆh }rœUh}rUh}ržUh]rŸUUros-kinetic-ecl-ior UasssuUrqt_service_callerr¡U}r¢U(h}r£Uh}r¤Uh]r¥UUros/kinetic/rqt_service_callerr¦Uassh ˆh }r§Uh}r¨Uh}r©Uh]rªUUros-kinetic-rqt-service-callerr«UasssuUfsrobo_r_descriptionr¬U}r­U(h}r®Uh}r¯Uh]r°UUros/kinetic/fsrobo_rr±Uassh ˆh }r²Uh}r³Uh}r´Uh]rµUU ros-kinetic-fsrobo-r-descriptionr¶UasssuUfreenect_camerar·U}r¸U(h}r¹Uh}rºUh]r»UUros/kinetic/freenect_stackr¼Uassh ˆh }r½Uh}r¾Uh}r¿Uh]rÀUUros-kinetic-freenect-camerarÁUasssuU thormang3_mpcrÂU}rÃU(h}rÄUh}rÅUh]rÆUUros/kinetic/thormang3_mpcrÇUassh ˆh }rÈUh}rÉUh}rÊUh]rËUUros-kinetic-thormang3-mpcrÌUasssuU flexbe_statesrÍU}rÎU(h}rÏUh}rÐUh]rÑUUros/kinetic/flexberÒUassh ˆh }rÓUh}rÔUh}rÕUh]rÖUUros-kinetic-flexbe-statesr×UasssuUrobot_controllersrØU}rÙU(h}rÚUh}rÛUh]rÜUUros/kinetic/robot_controllersrÝUassh ˆh }rÞUh}rßUh}ràUh]ráUUros-kinetic-robot-controllersrâUasssuUphidgets_high_speed_encoderrãU}räU(h}råUh}ræUh]rçUUros/kinetic/phidgets_driversrèUassh ˆh }réUh}rêUh}rëUh]rìUU'ros-kinetic-phidgets-high-speed-encoderríUasssuUbinpicking_utilsrîU}rïU(h}rðUh}rñUh]ròUUros/kinetic/binpicking_utilsróUassh ˆh }rôUh}rõUh}röUh]r÷UUros-kinetic-binpicking-utilsrøUasssuu(U fzi_icl_commrùU}rúU(h}rûUh}rüUh]rýUUros/kinetic/fzi_icl_commrþUassh ˆh }rÿUh}rVh}rVh]rVUros-kinetic-fzi-icl-commrVasssuU desktop_fullrV}rV(h}rVh}rVh]rVUros/kinetic/metapackagesr Vassh ˆh }r Vh}r Vh}r Vh]r VUros-kinetic-desktop-fullrVasssuU warehouse_rosrV}rV(h}rVh}rVh]rVUros/kinetic/warehouse_rosrVassh ˆh }rVh}rVh}rVh]rVUros-kinetic-warehouse-rosrVasssuUrosserial_windowsrV}rV(h}rVh}rVh]rVUros/kinetic/rosserialrVassh ˆh }r Vh}r!Vh}r"Vh]r#VUros-kinetic-rosserial-windowsr$VasssuU flexbe_inputr%V}r&V(h}r'Vh}r(Vh]r)VUros/kinetic/flexber*Vassh ˆh }r+Vh}r,Vh}r-Vh]r.VUros-kinetic-flexbe-inputr/VasssuUnav2d_navigatorr0V}r1V(h}r2Vh}r3Vh]r4VUros/kinetic/navigation_2dr5Vassh ˆh }r6Vh}r7Vh}r8Vh]r9VUros-kinetic-nav2d-navigatorr:VasssuUhector_imu_attitude_to_tfr;V}rVh]r?VUros/kinetic/hector_slamr@Vassh ˆh }rAVh}rBVh}rCVh]rDVU%ros-kinetic-hector-imu-attitude-to-tfrEVasssuUgeometry_tutorialsrFV}rGV(h}rHVh}rIVh]rJVUros/kinetic/geometry_tutorialsrKVassh ˆh }rLVh}rMVh}rNVh]rOVUros-kinetic-geometry-tutorialsrPVasssuUros_speech_recognitionrQV}rRV(h}rSVh}rTVh]rUVUros/kinetic/jsk_3rdpartyrVVassh ˆh }rWVh}rXVh}rYVh]rZVU"ros-kinetic-ros-speech-recognitionr[VasssuU thormang3_ppcr\V}r]V(h}r^Vh}r_Vh]r`VUros/kinetic/thormang3_ppcraVassh ˆh }rbVh}rcVh}rdVh]reVUros-kinetic-thormang3-ppcrfVasssuUmulti_jackal_controlrgV}rhV(h}riVh}rjVh]rkVUros/kinetic/multi_jackalrlVassh ˆh }rmVh}rnVh}roVh]rpVU ros-kinetic-multi-jackal-controlrqVasssuUainstein_radar_msgsrrV}rsV(h}rtVh}ruVh]rvVUros/kinetic/ainstein_radarrwVassh ˆh }rxVh}ryVh}rzVh]r{VUros-kinetic-ainstein-radar-msgsr|VasssuU ecl_sigslotsr}V}r~V(h}rVh}r€Vh]rVUros/kinetic/ecl_corer‚Vassh ˆh }rƒVh}r„Vh}r…Vh]r†VUros-kinetic-ecl-sigslotsr‡VasssuUopen_manipulator_descriptionrˆV}r‰V(h}rŠVh}r‹Vh]rŒVUros/kinetic/open_manipulatorrVassh ˆh }rŽVh}rVh}rVh]r‘VU(ros-kinetic-open-manipulator-descriptionr’VasssuUclickr“V}r”V(h}r•Vh}r–Vh]r—VUros/kinetic/clickr˜Vassh ˆh }r™Vh}ršVh}r›Vh]rœVUros-kinetic-clickrVasssuUoctovisržV}rŸV(h}r Vh}r¡Vh]r¢VUros/kinetic/octomapr£Vassh ˆh }r¤Vh}r¥Vh}r¦Vh]r§VUros-kinetic-octovisr¨VasssuUturtlebot3_navigationr©V}rªV(h}r«Vh}r¬Vh]r­VUros/kinetic/turtlebot3r®Vassh ˆh }r¯Vh}r°Vh}r±Vh]r²VU!ros-kinetic-turtlebot3-navigationr³VasssuUswri_prefix_toolsr´V}rµV(h}r¶Vh}r·Vh]r¸VUros/kinetic/marti_commonr¹Vassh ˆh }rºVh}r»Vh}r¼Vh]r½VUros-kinetic-swri-prefix-toolsr¾VasssuUprosilica_gige_sdkr¿V}rÀV(h}rÁVh}rÂVh]rÃVUros/kinetic/prosilica_gige_sdkrÄVassh ˆh }rÅVh}rÆVh}rÇVh]rÈVUros-kinetic-prosilica-gige-sdkrÉVasssuUrslidarrÊV}rËV(h}rÌVh}rÍVh]rÎVUros/kinetic/robosenserÏVassh ˆh }rÐVh}rÑVh}rÒVh]rÓVUros-kinetic-rslidarrÔVasssuUrealsense2_camerarÕV}rÖV(h}r×Vh}rØVh]rÙVUros/kinetic/realsense2_camerarÚVassh ˆh }rÛVh}rÜVh}rÝVh]rÞVUros-kinetic-realsense2-camerarßVasssuUrostopicràV}ráV(h}râVh}rãVh]räVUros/kinetic/ros_commråVassh ˆh }ræVh}rçVh}rèVh]réVUros-kinetic-rostopicrêVasssuUjackal_tutorialsrëV}rìV(h}ríVh}rîVh]rïVUros/kinetic/jackalrðVassh ˆh }rñVh}ròVh}róVh]rôVUros-kinetic-jackal-tutorialsrõVasssuU homer_msgsröV}r÷V(h}røVh}rùVh]rúVUros/kinetic/homer_msgsrûVassh ˆh }rüVh}rýVh}rþVh]rÿVUros-kinetic-homer-msgsrWasssuUecto_image_pipelinerW}rW(h}rWh}rWh]rWUros/kinetic/ecto_image_pipelinerWassh ˆh }rWh}rWh}r Wh]r WUros-kinetic-ecto-image-pipeliner WasssuUmap_organizer_msgsr W}r W(h}rWh}rWh]rWUros/kinetic/neonavigation_msgsrWassh ˆh }rWh}rWh}rWh]rWUros-kinetic-map-organizer-msgsrWasssuUthormang3_walking_module_msgsrW}rW(h}rWh}rWh]rWUros/kinetic/thormang3_msgsrWassh ˆh }rWh}rWh}rWh]r WU)ros-kinetic-thormang3-walking-module-msgsr!WasssuUkobuki_auto_dockingr"W}r#W(h}r$Wh}r%Wh]r&WUros/kinetic/kobukir'Wassh ˆh }r(Wh}r)Wh}r*Wh]r+WUros-kinetic-kobuki-auto-dockingr,WasssuUuuv_plume_simulatorr-W}r.W(h}r/Wh}r0Wh]r1WUros/kinetic/uuv_plume_simulatorr2Wassh ˆh }r3Wh}r4Wh}r5Wh]r6WUros-kinetic-uuv-plume-simulatorr7WasssuUmynt_eye_ros_wrapperr8W}r9W(h}r:Wh}r;Wh]rWh}r?Wh}r@Wh]rAWU ros-kinetic-mynt-eye-ros-wrapperrBWasssuU khi_rs_gazeborCW}rDW(h}rEWh}rFWh]rGWUros/kinetic/khi_robotrHWassh ˆh }rIWh}rJWh}rKWh]rLWUros-kinetic-khi-rs-gazeborMWasssuUpr2_controllersrNW}rOW(h}rPWh}rQWh]rRWUros/kinetic/pr2_controllersrSWassh ˆh }rTWh}rUWh}rVWh]rWWUros-kinetic-pr2-controllersrXWasssuUbarrett_hand_simrYW}rZW(h}r[Wh}r\Wh]r]WUros/kinetic/barrett_hand_simr^Wassh ˆh }r_Wh}r`Wh}raWh]rbWUros-kinetic-barrett-hand-simrcWasssuUhector_sensors_descriptionrdW}reW(h}rfWh}rgWh]rhWUros/kinetic/hector_modelsriWassh ˆh }rjWh}rkWh}rlWh]rmWU&ros-kinetic-hector-sensors-descriptionrnWasssuUlibreflexxestype2roW}rpW(h}rqWh}rrWh]rsWUros/kinetic/ipr_externrtWassh ˆh }ruWh}rvWh}rwWh]rxWUros-kinetic-libreflexxestype2ryWasssuUnav_grid_pub_subrzW}r{W(h}r|Wh}r}Wh]r~WUros/kinetic/robot_navigationrWassh ˆh }r€Wh}rWh}r‚Wh]rƒWUros-kinetic-nav-grid-pub-subr„WasssuUrocon_python_utilsr…W}r†W(h}r‡Wh}rˆWh]r‰WUros/kinetic/rocon_toolsrŠWassh ˆh }r‹Wh}rŒWh}rWh]rŽWUros-kinetic-rocon-python-utilsrWasssuU message_relayrW}r‘W(h}r’Wh}r“Wh]r”WU!ros/kinetic/cpr_multimaster_toolsr•Wassh ˆh }r–Wh}r—Wh}r˜Wh]r™WUros-kinetic-message-relayršWasssuUrdlr›W}rœW(h}rWh}ržWh]rŸWUros/kinetic/rdlr Wassh ˆh }r¡Wh}r¢Wh}r£Wh]r¤WUros-kinetic-rdlr¥WasssuUtrajectory_tracker_msgsr¦W}r§W(h}r¨Wh}r©Wh]rªWUros/kinetic/neonavigation_msgsr«Wassh ˆh }r¬Wh}r­Wh}r®Wh]r¯WU#ros-kinetic-trajectory-tracker-msgsr°WasssuUsparse_bundle_adjustmentr±W}r²W(h}r³Wh}r´Wh]rµWU$ros/kinetic/sparse_bundle_adjustmentr¶Wassh ˆh }r·Wh}r¸Wh}r¹Wh]rºWU$ros-kinetic-sparse-bundle-adjustmentr»WasssuUjoint_trajectory_generatorr¼W}r½W(h}r¾Wh}r¿Wh]rÀWUros/kinetic/pr2_common_actionsrÁWassh ˆh }rÂWh}rÃWh}rÄWh]rÅWU&ros-kinetic-joint-trajectory-generatorrÆWasssuUhector_map_toolsrÇW}rÈW(h}rÉWh}rÊWh]rËWUros/kinetic/hector_slamrÌWassh ˆh }rÍWh}rÎWh}rÏWh]rÐWUros-kinetic-hector-map-toolsrÑWasssuUcob_map_accessibility_analysisrÒW}rÓW(h}rÔWh}rÕWh]rÖWUros/kinetic/cob_navigationr×Wassh ˆh }rØWh}rÙWh}rÚWh]rÛWU*ros-kinetic-cob-map-accessibility-analysisrÜWasssuUimage_overlay_scale_and_compassrÝW}rÞW(h}rßWh}ràWh]ráWU+ros/kinetic/image_overlay_scale_and_compassrâWassh ˆh }rãWh}räWh}råWh]ræWU+ros-kinetic-image-overlay-scale-and-compassrçWasssuUmd49_serialportrèW}réW(h}rêWh}rëWh]rìWU ros/kinetic/md49_base_controllerríWassh ˆh }rîWh}rïWh}rðWh]rñWUros-kinetic-md49-serialportròWasssuUop3_kinematics_dynamicsróW}rôW(h}rõWh}röWh]r÷WUros/kinetic/robotis_op3røWassh ˆh }rùWh}rúWh}rûWh]rüWU#ros-kinetic-op3-kinematics-dynamicsrýWasssuUuuv_gazebo_worldsrþW}rÿW(h}rXh}rXh]rXUros/kinetic/uuv_simulatorrXassh ˆh }rXh}rXh}rXh]rXUros-kinetic-uuv-gazebo-worldsrXasssuUjsk_recognition_utilsr X}r X(h}r Xh}r Xh]r XUros/kinetic/jsk_recognitionrXassh ˆh }rXh}rXh}rXh]rXU!ros-kinetic-jsk-recognition-utilsrXasssuUbflrX}rX(h}rXh}rXh]rXUros/kinetic/bflrXassh ˆh }rXh}rXh}rXh]rXUros-kinetic-bflrXasssuUcob_gazebo_worldsrX}r X(h}r!Xh}r"Xh]r#XUros/kinetic/cob_simulationr$Xassh ˆh }r%Xh}r&Xh}r'Xh]r(XUros-kinetic-cob-gazebo-worldsr)XasssuUpr2_tuck_arms_actionr*X}r+X(h}r,Xh}r-Xh]r.XUros/kinetic/pr2_common_actionsr/Xassh ˆh }r0Xh}r1Xh}r2Xh]r3XU ros-kinetic-pr2-tuck-arms-actionr4XasssuU phidgets_ikr5X}r6X(h}r7Xh}r8Xh]r9XUros/kinetic/phidgets_driversr:Xassh ˆh }r;Xh}rXUros-kinetic-phidgets-ikr?XasssuUmcl_3dlr@X}rAX(h}rBXh}rCXh]rDXUros/kinetic/mcl_3dlrEXassh ˆh }rFXh}rGXh}rHXh]rIXUros-kinetic-mcl-3dlrJXasssuU husky_baserKX}rLX(h}rMXh}rNXh]rOXUros/kinetic/huskyrPXassh ˆh }rQXh}rRXh}rSXh]rTXUros-kinetic-husky-baserUXasssuUmanipulator_h_gazeborVX}rWX(h}rXXh}rYXh]rZXUros/kinetic/manipulator_hr[Xassh ˆh }r\Xh}r]Xh}r^Xh]r_XU ros-kinetic-manipulator-h-gazebor`XasssuUrqt_robot_pluginsraX}rbX(h}rcXh}rdXh]reXUros/kinetic/rqt_robot_pluginsrfXassh ˆh }rgXh}rhXh}riXh]rjXUros-kinetic-rqt-robot-pluginsrkXasssuU stage_rosrlX}rmX(h}rnXh}roXh]rpXUros/kinetic/stage_rosrqXassh ˆh }rrXh}rsXh}rtXh]ruXUros-kinetic-stage-rosrvXasssuUrqt_robot_steeringrwX}rxX(h}ryXh}rzXh]r{XUros/kinetic/rqt_robot_steeringr|Xassh ˆh }r}Xh}r~Xh}rXh]r€XUros-kinetic-rqt-robot-steeringrXasssuUgenpyr‚X}rƒX(h}r„Xh}r…Xh]r†XUros/kinetic/genpyr‡Xassh ˆh }rˆXh}r‰Xh}rŠXh]r‹XUros-kinetic-genpyrŒXasssuU arduino_daqrX}rŽX(h}rXh}rXh]r‘XUros/kinetic/arduino_daqr’Xassh ˆh }r“Xh}r”Xh}r•Xh]r–XUros-kinetic-arduino-daqr—XasssuUgps_goalr˜X}r™X(h}ršXh}r›Xh]rœXUros/kinetic/gps_goalrXassh ˆh }ržXh}rŸXh}r Xh]r¡XUros-kinetic-gps-goalr¢XasssuU wts_driverr£X}r¤X(h}r¥Xh}r¦Xh]r§XUros/kinetic/wts_driverr¨Xassh ˆh }r©Xh}rªXh}r«Xh]r¬XUros-kinetic-wts-driverr­XasssuU jsk_pcl_rosr®X}r¯X(h}r°Xh}r±Xh]r²XUros/kinetic/jsk_recognitionr³Xassh ˆh }r´Xh}rµXh}r¶Xh]r·XUros-kinetic-jsk-pcl-rosr¸XasssuU settlerlibr¹X}rºX(h}r»Xh}r¼Xh]r½XUros/kinetic/calibrationr¾Xassh ˆh }r¿Xh}rÀXh}rÁXh]rÂXUros-kinetic-settlerlibrÃXasssuUrocon_python_wifirÄX}rÅX(h}rÆXh}rÇXh]rÈXUros/kinetic/rocon_toolsrÉXassh ˆh }rÊXh}rËXh}rÌXh]rÍXUros-kinetic-rocon-python-wifirÎXasssuU rosjava_corerÏX}rÐX(h}rÑXh}rÒXh]rÓXUros/kinetic/rosjava_corerÔXassh ˆh }rÕXh}rÖXh}r×Xh]rØXUros-kinetic-rosjava-corerÙXasssuU hector_gazeborÚX}rÛX(h}rÜXh}rÝXh]rÞXUros/kinetic/hector_gazeborßXassh ˆh }ràXh}ráXh}râXh]rãXUros-kinetic-hector-gazeboräXasssuUlibdlibråX}ræX(h}rçXh}rèXh]réXUros/kinetic/cob_externrêXassh ˆh }rëXh}rìXh}ríXh]rîXUros-kinetic-libdlibrïXasssuUpr2_se_calibration_launchrðX}rñX(h}ròXh}róXh]rôXUros/kinetic/pr2_calibrationrõXassh ˆh }röXh}r÷Xh}røXh]rùXU%ros-kinetic-pr2-se-calibration-launchrúXasssuUqb_device_driverrûX}rüX(h}rýXh}rþXh]rÿXUros/kinetic/qb_devicerYassh ˆh }rYh}rYh}rYh]rYUros-kinetic-qb-device-driverrYasssuUrobot_localizationrY}rY(h}rYh}r Yh]r YUros/kinetic/robot_localizationr Yassh ˆh }r Yh}r Yh}rYh]rYUros-kinetic-robot-localizationrYasssuU rplidar_rosrY}rY(h}rYh}rYh]rYUros/kinetic/rplidar_rosrYassh ˆh }rYh}rYh}rYh]rYUros-kinetic-rplidar-rosrYasssuU vision_visprY}rY(h}rYh}rYh]r YUros/kinetic/vision_vispr!Yassh ˆh }r"Yh}r#Yh}r$Yh]r%YUros-kinetic-vision-vispr&YasssuUobject_recognition_todr'Y}r(Y(h}r)Yh}r*Yh]r+YU"ros/kinetic/object_recognition_todr,Yassh ˆh }r-Yh}r.Yh}r/Yh]r0YU"ros-kinetic-object-recognition-todr1YasssuUabb_irb2400_moveit_pluginsr2Y}r3Y(h}r4Yh}r5Yh]r6YUros/kinetic/abbr7Yassh ˆh }r8Yh}r9Yh}r:Yh]r;YU&ros-kinetic-abb-irb2400-moveit-pluginsrY(h}r?Yh}r@Yh]rAYUros/kinetic/iiwa_stackrBYassh ˆh }rCYh}rDYh}rEYh]rFYUros-kinetic-iiwa-controlrGYasssuU pr2_bringuprHY}rIY(h}rJYh}rKYh]rLYUros/kinetic/pr2_robotrMYassh ˆh }rNYh}rOYh}rPYh]rQYUros-kinetic-pr2-bringuprRYasssuUqb_chain_descriptionrSY}rTY(h}rUYh}rVYh]rWYUros/kinetic/qb_chainrXYassh ˆh }rYYh}rZYh}r[Yh]r\YU ros-kinetic-qb-chain-descriptionr]YasssuUrc_visard_descriptionr^Y}r_Y(h}r`Yh}raYh]rbYUros/kinetic/rc_visardrcYassh ˆh }rdYh}reYh}rfYh]rgYU!ros-kinetic-rc-visard-descriptionrhYasssuUpr2_mechanism_msgsriY}rjY(h}rkYh}rlYh]rmYUros/kinetic/pr2_mechanism_msgsrnYassh ˆh }roYh}rpYh}rqYh]rrYUros-kinetic-pr2-mechanism-msgsrsYasssuU stdr_msgsrtY}ruY(h}rvYh}rwYh]rxYUros/kinetic/stdr_simulatorryYassh ˆh }rzYh}r{Yh}r|Yh]r}YUros-kinetic-stdr-msgsr~YasssuUnovatel_gps_driverrY}r€Y(h}rYh}r‚Yh]rƒYUros/kinetic/novatel_gps_driverr„Yassh ˆh }r…Yh}r†Yh}r‡Yh]rˆYUros-kinetic-novatel-gps-driverr‰YasssuUrocon_semantic_versionrŠY}r‹Y(h}rŒYh}rYh]rŽYUros/kinetic/rocon_toolsrYassh ˆh }rYh}r‘Yh}r’Yh]r“YU"ros-kinetic-rocon-semantic-versionr”YasssuUsick_safetyscannersr•Y}r–Y(h}r—Yh}r˜Yh]r™YUros/kinetic/sick_safetyscannersršYassh ˆh }r›Yh}rœYh}rYh]ržYUros-kinetic-sick-safetyscannersrŸYasssuUfetch_depth_layerr Y}r¡Y(h}r¢Yh}r£Yh]r¤YUros/kinetic/fetch_rosr¥Yassh ˆh }r¦Yh}r§Yh}r¨Yh]r©YUros-kinetic-fetch-depth-layerrªYasssuU stdr_robotr«Y}r¬Y(h}r­Yh}r®Yh]r¯YUros/kinetic/stdr_simulatorr°Yassh ˆh }r±Yh}r²Yh}r³Yh]r´YUros-kinetic-stdr-robotrµYasssuU katana_driverr¶Y}r·Y(h}r¸Yh}r¹Yh]rºYUros/kinetic/katana_driverr»Yassh ˆh }r¼Yh}r½Yh}r¾Yh]r¿YUros-kinetic-katana-driverrÀYasssuUserialrÁY}rÂY(h}rÃYh}rÄYh]rÅYUros/kinetic/serialrÆYassh ˆh }rÇYh}rÈYh}rÉYh]rÊYUros-kinetic-serialrËYasssuU hebi_cpp_apirÌY}rÍY(h}rÎYh}rÏYh]rÐYUros/kinetic/hebi_cpp_api_rosrÑYassh ˆh }rÒYh}rÓYh}rÔYh]rÕYUros-kinetic-hebi-cpp-apirÖYasssuUainstein_radarr×Y}rØY(h}rÙYh}rÚYh]rÛYUros/kinetic/ainstein_radarrÜYassh ˆh }rÝYh}rÞYh}rßYh]ràYUros-kinetic-ainstein-radarráYasssuUpacmod3râY}rãY(h}räYh}råYh]ræYUros/kinetic/pacmod3rçYassh ˆh }rèYh}réYh}rêYh]rëYUros-kinetic-pacmod3rìYasssuU trac_ik_libríY}rîY(h}rïYh}rðYh]rñYUros/kinetic/trac_ikròYassh ˆh }róYh}rôYh}rõYh]röYUros-kinetic-trac-ik-libr÷YasssuU$object_recognition_ros_visualizationrøY}rùY(h}rúYh}rûYh]rüYU0ros/kinetic/object_recognition_ros_visualizationrýYassh ˆh }rþYh}rÿYh}rZh]rZU0ros-kinetic-object-recognition-ros-visualizationrZasssuUhector_geotiff_pluginsrZ}rZ(h}rZh}rZh]rZUros/kinetic/hector_slamrZassh ˆh }r Zh}r Zh}r Zh]r ZU"ros-kinetic-hector-geotiff-pluginsr ZasssuUmanipulator_h_bringuprZ}rZ(h}rZh}rZh]rZUros/kinetic/manipulator_hrZassh ˆh }rZh}rZh}rZh]rZU!ros-kinetic-manipulator-h-bringuprZasssuUopenrtm_ros_bridgerZ}rZ(h}rZh}rZh]rZUros/kinetic/rtmros_commonrZassh ˆh }rZh}r Zh}r!Zh]r"ZUros-kinetic-openrtm-ros-bridger#ZasssuU bcap_servicer$Z}r%Z(h}r&Zh}r'Zh]r(ZUros/kinetic/denso_robot_rosr)Zassh ˆh }r*Zh}r+Zh}r,Zh]r-ZUros-kinetic-bcap-servicer.ZasssuUfile_managementr/Z}r0Z(h}r1Zh}r2Zh]r3ZUros/kinetic/cloudwatch_commonr4Zassh ˆh }r5Zh}r6Zh}r7Zh]r8ZUros-kinetic-file-managementr9ZasssuUqb_chain_controllersr:Z}r;Z(h}rZUros/kinetic/qb_chainr?Zassh ˆh }r@Zh}rAZh}rBZh]rCZU ros-kinetic-qb-chain-controllersrDZasssuUcob_object_detection_visualizerrEZ}rFZ(h}rGZh}rHZh]rIZU!ros/kinetic/cob_perception_commonrJZassh ˆh }rKZh}rLZh}rMZh]rNZU+ros-kinetic-cob-object-detection-visualizerrOZasssuUdsr_example_pyrPZ}rQZ(h}rRZh}rSZh]rTZUros/kinetic/doosan_robotrUZassh ˆh }rVZh}rWZh}rXZh]rYZUros-kinetic-dsr-example-pyrZZasssuUgenjavar[Z}r\Z(h}r]Zh}r^Zh]r_ZUros/kinetic/genjavar`Zassh ˆh }raZh}rbZh}rcZh]rdZUros-kinetic-genjavareZasssuUcloudwatch_logs_commonrfZ}rgZ(h}rhZh}riZh]rjZUros/kinetic/cloudwatch_commonrkZassh ˆh }rlZh}rmZh}rnZh]roZU"ros-kinetic-cloudwatch-logs-commonrpZasssuUgrizzly_navigationrqZ}rrZ(h}rsZh}rtZh]ruZUros/kinetic/grizzlyrvZassh ˆh }rwZh}rxZh}ryZh]rzZUros-kinetic-grizzly-navigationr{ZasssuUdenso_robot_bringupr|Z}r}Z(h}r~Zh}rZh]r€ZUros/kinetic/denso_robot_rosrZassh ˆh }r‚Zh}rƒZh}r„Zh]r…ZUros-kinetic-denso-robot-bringupr†ZasssuUobj_to_pointcloudr‡Z}rˆZ(h}r‰Zh}rŠZh]r‹ZUros/kinetic/neonavigationrŒZassh ˆh }rZh}rŽZh}rZh]rZUros-kinetic-obj-to-pointcloudr‘ZasssuU ecl_consoler’Z}r“Z(h}r”Zh}r•Zh]r–ZUros/kinetic/ecl_liter—Zassh ˆh }r˜Zh}r™Zh}ršZh]r›ZUros-kinetic-ecl-consolerœZasssuUpr2_gazebo_pluginsrZ}ržZ(h}rŸZh}r Zh]r¡ZUros/kinetic/pr2_simulatorr¢Zassh ˆh }r£Zh}r¤Zh}r¥Zh]r¦ZUros-kinetic-pr2-gazebo-pluginsr§ZasssuU rqt_moveitr¨Z}r©Z(h}rªZh}r«Zh]r¬ZUros/kinetic/rqt_moveitr­Zassh ˆh }r®Zh}r¯Zh}r°Zh]r±ZUros-kinetic-rqt-moveitr²ZasssuU drone_wrapperr³Z}r´Z(h}rµZh}r¶Zh]r·ZUros/kinetic/jderobot_dronesr¸Zassh ˆh }r¹Zh}rºZh}r»Zh]r¼ZUros-kinetic-drone-wrapperr½ZasssuUrobotr¾Z}r¿Z(h}rÀZh}rÁZh]rÂZUros/kinetic/metapackagesrÃZassh ˆh }rÄZh}rÅZh}rÆZh]rÇZUros-kinetic-robotrÈZasssuUrv7fl_moveit_configrÉZ}rÊZ(h}rËZh}rÌZh]rÍZUros/kinetic/melfa_robotrÎZassh ˆh }rÏZh}rÐZh}rÑZh]rÒZUros-kinetic-rv7fl-moveit-configrÓZasssuUfind_object_2drÔZ}rÕZ(h}rÖZh}r×Zh]rØZUros/kinetic/find_object_2drÙZassh ˆh }rÚZh}rÛZh}rÜZh]rÝZUros-kinetic-find-object-2drÞZasssuUtheora_image_transportrßZ}ràZ(h}ráZh}râZh]rãZU#ros/kinetic/image_transport_pluginsräZassh ˆh }råZh}ræZh}rçZh]rèZU"ros-kinetic-theora-image-transportréZasssuUopen_cr_modulerêZ}rëZ(h}rìZh}ríZh]rîZUros/kinetic/robotis_op3rïZassh ˆh }rðZh}rñZh}ròZh]róZUros-kinetic-open-cr-modulerôZasssuU locomotorrõZ}röZ(h}r÷Zh}røZh]rùZUros/kinetic/robot_navigationrúZassh ˆh }rûZh}rüZh}rýZh]rþZUros-kinetic-locomotorrÿZasssuU unique_idr[}r[(h}r[h}r[h]r[Uros/kinetic/unique_identifierr[assh ˆh }r[h}r[h}r[h]r [Uros-kinetic-unique-idr [asssuUpr2_mechanism_modelr [}r [(h}r [h}r[h]r[Uros/kinetic/pr2_mechanismr[assh ˆh }r[h}r[h}r[h]r[Uros-kinetic-pr2-mechanism-modelr[asssuUhomer_nav_libsr[}r[(h}r[h}r[h]r[Uros/kinetic/homer_nav_libsrssh ˆh }r[h}r[h}r[h]r[Uros-kinetic-homer-nav-libsr [asssuU heron_msgsr![}r"[(h}r#[h}r$[h]r%[Uros/kinetic/heronr&[assh ˆh }r'[h}r([h}r)[h]r*[Uros-kinetic-heron-msgsr+[asssuU serial_utilsr,[}r-[(h}r.[h}r/[h]r0[Uros/kinetic/serial_utilsr1[assh ˆh }r2[h}r3[h}r4[h]r5[Uros-kinetic-serial-utilsr6[asssuU rocon_launchr7[}r8[(h}r9[h}r:[h]r;[Uros/kinetic/rocon_toolsr<[assh ˆh }r=[h}r>[h}r?[h]r@[Uros-kinetic-rocon-launchrA[asssuU mongodb_storerB[}rC[(h}rD[h}rE[h]rF[Uros/kinetic/mongodb_storerG[assh ˆh }rH[h}rI[h}rJ[h]rK[Uros-kinetic-mongodb-storerL[asssuU dataflow_literM[}rN[(h}rO[h}rP[h]rQ[Uros/kinetic/cloudwatch_commonrR[assh ˆh }rS[h}rT[h}rU[h]rV[Uros-kinetic-dataflow-literW[asssuUocean_battery_driverrX[}rY[(h}rZ[h}r[[h]r\[Uros/kinetic/pr2_power_driversr][assh ˆh }r^[h}r_[h}r`[h]ra[U ros-kinetic-ocean-battery-driverrb[asssuUfake_localizationrc[}rd[(h}re[h}rf[h]rg[Uros/kinetic/navigationrh[assh ˆh }ri[h}rj[h}rk[h]rl[Uros-kinetic-fake-localizationrm[asssuUqt_guirn[}ro[(h}rp[h}rq[h]rr[Uros/kinetic/qt_gui_corers[assh ˆh }rt[h}ru[h}rv[h]rw[Uros-kinetic-qt-guirx[asssuUhostapd_access_pointry[}rz[(h}r{[h}r|[h]r}[Uros/kinetic/linux_networkingr~[assh ˆh }r[h}r€[h}r[h]r‚[U ros-kinetic-hostapd-access-pointrƒ[asssuUseed_r7_samplesr„[}r…[(h}r†[h}r‡[h]rˆ[Uros/kinetic/seed_r7_ros_pkgr‰[assh ˆh }rŠ[h}r‹[h}rŒ[h]r[Uros-kinetic-seed-r7-samplesrŽ[asssuUexotica_examplesr[}r[(h}r‘[h}r’[h]r“[Uros/kinetic/exoticar”[assh ˆh }r•[h}r–[h}r—[h]r˜[Uros-kinetic-exotica-examplesr™[asssuUexotica_pythonrš[}r›[(h}rœ[h}r[h]rž[Uros/kinetic/exoticarŸ[assh ˆh }r [h}r¡[h}r¢[h]r£[Uros-kinetic-exotica-pythonr¤[asssuU moveit_simple_controller_managerr¥[}r¦[(h}r§[h}r¨[h]r©[Uros/kinetic/moveitrª[assh ˆh }r«[h}r¬[h}r­[h]r®[U,ros-kinetic-moveit-simple-controller-managerr¯[asssuUcheckerboard_detectorr°[}r±[(h}r²[h}r³[h]r´[Uros/kinetic/jsk_recognitionrµ[assh ˆh }r¶[h}r·[h}r¸[h]r¹[U!ros-kinetic-checkerboard-detectorrº[asssuUcob_manipulationr»[}r¼[(h}r½[h}r¾[h]r¿[Uros/kinetic/cob_manipulationrÀ[assh ˆh }rÁ[h}rÂ[h}rÃ[h]rÄ[Uros-kinetic-cob-manipulationrÅ[asssuUmir_msgsrÆ[}rÇ[(h}rÈ[h}rÉ[h]rÊ[Uros/kinetic/mir_robotrË[assh ˆh }rÌ[h}rÍ[h}rÎ[h]rÏ[Uros-kinetic-mir-msgsrÐ[asssuUwamv_descriptionrÑ[}rÒ[(h}rÓ[h}rÔ[h]rÕ[Uros/kinetic/vrxrÖ[assh ˆh }r×[h}rØ[h}rÙ[h]rÚ[Uros-kinetic-wamv-descriptionrÛ[asssuUturtlebot_stdrrÜ[}rÝ[(h}rÞ[h}rß[h]rà[Uros/kinetic/turtlebot_simulatorrá[assh ˆh }râ[h}rã[h}rä[h]rå[Uros-kinetic-turtlebot-stdrræ[asssuUopen_manipulator_teleoprç[}rè[(h}ré[h}rê[h]rë[Uros/kinetic/open_manipulatorrì[assh ˆh }rí[h}rî[h}rï[h]rð[U#ros-kinetic-open-manipulator-teleoprñ[asssuUbcap_service_testrò[}ró[(h}rô[h}rõ[h]rö[Uros/kinetic/denso_robot_rosr÷[assh ˆh }rø[h}rù[h}rú[h]rû[Uros-kinetic-bcap-service-testrü[asssuU dbw_fca_canrý[}rþ[(h}rÿ[h}r\h]r\Uros/kinetic/dbw_fca_rosr\assh ˆh }r\h}r\h}r\h]r\Uros-kinetic-dbw-fca-canr\asssuUgrpcr\}r \(h}r \h}r \h]r \Uros/kinetic/grpcr \assh ˆh }r\h}r\h}r\h]r\Uros-kinetic-grpcr\asssuUlex_noder\}r\(h}r\h}r\h]r\Uros/kinetic/lex_noder\assh ˆh }r\h}r\h}r\h]r\Uros-kinetic-lex-noder\asssuUrosserial_tivacr\}r\(h}r \h}r!\h]r"\Uros/kinetic/rosserialr#\assh ˆh }r$\h}r%\h}r&\h]r'\Uros-kinetic-rosserial-tivacr(\asssuUecl_manipulatorsr)\}r*\(h}r+\h}r,\h]r-\Uros/kinetic/ecl_manipulationr.\assh ˆh }r/\h}r0\h}r1\h]r2\Uros-kinetic-ecl-manipulatorsr3\asssuUrtabmapr4\}r5\(h}r6\h}r7\h]r8\Uros/kinetic/rtabmapr9\assh ˆh }r:\h}r;\h}r<\h]r=\Uros-kinetic-rtabmapr>\asssuUdiagnostic_msgsr?\}r@\(h}rA\h}rB\h]rC\Uros/kinetic/common_msgsrD\assh ˆh }rE\h}rF\h}rG\h]rH\Uros-kinetic-diagnostic-msgsrI\asssuUmanipulator_h_descriptionrJ\}rK\(h}rL\h}rM\h]rN\Uros/kinetic/manipulator_hrO\assh ˆh }rP\h}rQ\h}rR\h]rS\U%ros-kinetic-manipulator-h-descriptionrT\asssuUrqt_robot_dashboardrU\}rV\(h}rW\h}rX\h]rY\Uros/kinetic/rqt_robot_dashboardrZ\assh ˆh }r[\h}r\\h}r]\h]r^\Uros-kinetic-rqt-robot-dashboardr_\asssuU ur_kinematicsr`\}ra\(h}rb\h}rc\h]rd\Uros/kinetic/universal_robotre\assh ˆh }rf\h}rg\h}rh\h]ri\Uros-kinetic-ur-kinematicsrj\asssuU pose_followerrk\}rl\(h}rm\h}rn\h]ro\U#ros/kinetic/navigation_experimentalrp\assh ˆh }rq\h}rr\h}rs\h]rt\Uros-kinetic-pose-followerru\asssuUcob_base_velocity_smootherrv\}rw\(h}rx\h}ry\h]rz\Uros/kinetic/cob_controlr{\assh ˆh }r|\h}r}\h}r~\h]r\U&ros-kinetic-cob-base-velocity-smootherr€\asssuU pheeno_rosr\}r‚\(h}rƒ\h}r„\h]r…\Uros/kinetic/pheeno_rosr†\assh ˆh }r‡\h}rˆ\h}r‰\h]rŠ\Uros-kinetic-pheeno-rosr‹\asssuU julius_rosrŒ\}r\(h}rŽ\h}r\h]r\Uros/kinetic/jsk_3rdpartyr‘\assh ˆh }r’\h}r“\h}r”\h]r•\Uros-kinetic-julius-rosr–\asssuUddwrt_access_pointr—\}r˜\(h}r™\h}rš\h]r›\Uros/kinetic/linux_networkingrœ\assh ˆh }r\h}rž\h}rŸ\h]r \Uros-kinetic-ddwrt-access-pointr¡\asssuUsafety_limiterr¢\}r£\(h}r¤\h}r¥\h]r¦\Uros/kinetic/neonavigationr§\assh ˆh }r¨\h}r©\h}rª\h]r«\Uros-kinetic-safety-limiterr¬\asssuUxiaoqiang_freenect_camerar­\}r®\(h}r¯\h}r°\h]r±\Uros/kinetic/xiaoqiangr²\assh ˆh }r³\h}r´\h}rµ\h]r¶\U%ros-kinetic-xiaoqiang-freenect-camerar·\asssuUmm_radior¸\}r¹\(h}rº\h}r»\h]r¼\U ros/kinetic/message_multiplexingr½\assh ˆh }r¾\h}r¿\h}rÀ\h]rÁ\Uros-kinetic-mm-radiorÂ\asssuUmotion_module_tutorialrÃ\}rÄ\(h}rÅ\h}rÆ\h]rÇ\Uros/kinetic/thormang3_mpcrÈ\assh ˆh }rÉ\h}rÊ\h}rË\h]rÌ\U"ros-kinetic-motion-module-tutorialrÍ\asssuU self_testrÎ\}rÏ\(h}rÐ\h}rÑ\h]rÒ\Uros/kinetic/diagnosticsrÓ\assh ˆh }rÔ\h}rÕ\h}rÖ\h]r×\Uros-kinetic-self-testrØ\asssuUpr2_navigation_self_filterrÙ\}rÚ\(h}rÛ\h}rÜ\h]rÝ\Uros/kinetic/pr2_navigationrÞ\assh ˆh }rß\h}rà\h}rá\h]râ\U&ros-kinetic-pr2-navigation-self-filterrã\asssuUxpp_visrä\}rå\(h}ræ\h}rç\h]rè\Uros/kinetic/xppré\assh ˆh }rê\h}rë\h}rì\h]rí\Uros-kinetic-xpp-visrî\asssuUmoveit_fake_controller_managerrï\}rð\(h}rñ\h}rò\h]ró\Uros/kinetic/moveitrô\assh ˆh }rõ\h}rö\h}r÷\h]rø\U*ros-kinetic-moveit-fake-controller-managerrù\asssuUrtt_shape_msgsrú\}rû\(h}rü\h}rý\h]rþ\Uros/kinetic/rtt_ros_integrationrÿ\assh ˆh }r]h}r]h}r]h]r]Uros-kinetic-rtt-shape-msgsr]asssuUjaguar_navigationr]}r](h}r]h}r]h]r ]Uros/kinetic/jaguarr ]assh ˆh }r ]h}r ]h}r ]h]r]Uros-kinetic-jaguar-navigationr]asssuUrsm_rviz_pluginsr]}r](h}r]h}r]h]r]Uros/kinetic/robot_statemachiner]assh ˆh }r]h}r]h}r]h]r]Uros-kinetic-rsm-rviz-pluginsr]asssuU fzi_icl_canr]}r](h}r]h}r]h]r]Uros/kinetic/fzi_icl_canr ]assh ˆh }r!]h}r"]h}r#]h]r$]Uros-kinetic-fzi-icl-canr%]asssuUrosserial_serverr&]}r'](h}r(]h}r)]h]r*]Uros/kinetic/rosserialr+]assh ˆh }r,]h}r-]h}r.]h]r/]Uros-kinetic-rosserial-serverr0]asssuUtf2_msgsr1]}r2](h}r3]h}r4]h]r5]Uros/kinetic/geometry2r6]assh ˆh }r7]h}r8]h}r9]h]r:]Uros-kinetic-tf2-msgsr;]asssuU mrpt_slamr<]}r=](h}r>]h}r?]h]r@]Uros/kinetic/mrpt_slamrA]assh ˆh }rB]h}rC]h}rD]h]rE]Uros-kinetic-mrpt-slamrF]asssuUteraranger_arrayrG]}rH](h}rI]h}rJ]h]rK]Uros/kinetic/teraranger_arrayrL]assh ˆh }rM]h}rN]h}rO]h]rP]Uros-kinetic-teraranger-arrayrQ]asssuU heron_vizrR]}rS](h}rT]h}rU]h]rV]Uros/kinetic/heron_desktoprW]assh ˆh }rX]h}rY]h}rZ]h]r[]Uros-kinetic-heron-vizr\]asssuU rqt_gaugesr]]}r^](h}r_]h}r`]h]ra]Uros/kinetic/gaugesrb]assh ˆh }rc]h}rd]h}re]h]rf]Uros-kinetic-rqt-gaugesrg]asssuU pr2_2dnavrh]}ri](h}rj]h}rk]h]rl]Uros/kinetic/pr2_navigation_appsrm]assh ˆh }rn]h}ro]h}rp]h]rq]Uros-kinetic-pr2-2dnavrr]asssuUdynpick_driverrs]}rt](h}ru]h}rv]h]rw]Uros/kinetic/dynpick_driverrx]assh ˆh }ry]h}rz]h}r{]h]r|]Uros-kinetic-dynpick-driverr}]asssuUkhi_duaro_moveit_configr~]}r](h}r€]h}r]h]r‚]Uros/kinetic/khi_robotrƒ]assh ˆh }r„]h}r…]h}r†]h]r‡]U#ros-kinetic-khi-duaro-moveit-configrˆ]asssuUjoint_trajectory_action_toolsr‰]}rŠ](h}r‹]h}rŒ]h]r]Uros/kinetic/pr2_common_actionsrŽ]assh ˆh }r]h}r]h}r‘]h]r’]U)ros-kinetic-joint-trajectory-action-toolsr“]asssuU pilz_msgsr”]}r•](h}r–]h}r—]h]r˜]U"ros/kinetic/pilz_industrial_motionr™]assh ˆh }rš]h}r›]h}rœ]h]r]Uros-kinetic-pilz-msgsrž]asssuUcob_gazebo_objectsrŸ]}r ](h}r¡]h}r¢]h]r£]Uros/kinetic/cob_simulationr¤]assh ˆh }r¥]h}r¦]h}r§]h]r¨]Uros-kinetic-cob-gazebo-objectsr©]asssuU nao_controlrª]}r«](h}r¬]h}r­]h]r®]Uros/kinetic/nao_virtualr¯]assh ˆh }r°]h}r±]h}r²]h]r³]Uros-kinetic-nao-controlr´]asssuU cis_camerarµ]}r¶](h}r·]h}r¸]h]r¹]Uros/kinetic/cis_camerarº]assh ˆh }r»]h}r¼]h}r½]h]r¾]Uros-kinetic-cis-camerar¿]asssuU imu_monitorrÀ]}rÁ](h}rÂ]h}rÃ]h]rÄ]Uros/kinetic/pr2_robotrÅ]assh ˆh }rÆ]h}rÇ]h}rÈ]h]rÉ]Uros-kinetic-imu-monitorrÊ]asssuUhector_object_trackerrË]}rÌ](h}rÍ]h}rÎ]h]rÏ]Uros/kinetic/hector_worldmodelrÐ]assh ˆh }rÑ]h}rÒ]h}rÓ]h]rÔ]U!ros-kinetic-hector-object-trackerrÕ]asssuUtoposens_driverrÖ]}r×](h}rØ]h}rÙ]h]rÚ]Uros/kinetic/toposensrÛ]assh ˆh }rÜ]h}rÝ]h}rÞ]h]rß]Uros-kinetic-toposens-driverrà]asssuUoros_tools_examplesrá]}râ](h}rã]h}rä]h]rå]Uros/kinetic/oros_tools_examplesræ]assh ˆh }rç]h}rè]h}ré]h]rê]Uros-kinetic-oros-tools-examplesrë]asssuUprbt_pg70_supportrì]}rí](h}rî]h}rï]h]rð]Uros/kinetic/prbt_grippersrñ]assh ˆh }rò]h}ró]h}rô]h]rõ]Uros-kinetic-prbt-pg70-supportrö]asssuU turtle_tfr÷]}rø](h}rù]h}rú]h]rû]Uros/kinetic/geometry_tutorialsrü]assh ˆh }rý]h}rþ]h}rÿ]h]r^Uros-kinetic-turtle-tfr^asssuUrexrov2_controlr^}r^(h}r^h}r^h]r^Uros/kinetic/rexrov2r^assh ˆh }r^h}r ^h}r ^h]r ^Uros-kinetic-rexrov2-controlr ^asssuU audio_playr ^}r^(h}r^h}r^h]r^Uros/kinetic/audio_commonr^assh ˆh }r^h}r^h}r^h]r^Uros-kinetic-audio-playr^asssuUmoveit_resourcesr^}r^(h}r^h}r^h]r^Uros/kinetic/moveit_resourcesr^assh ˆh }r^h}r^h}r ^h]r!^Uros-kinetic-moveit-resourcesr"^asssuUrr_control_input_managerr#^}r$^(h}r%^h}r&^h]r'^Uros/kinetic/rr_openrover_stackr(^assh ˆh }r)^h}r*^h}r+^h]r,^U$ros-kinetic-rr-control-input-managerr-^asssuUgeometryr.^}r/^(h}r0^h}r1^h]r2^Uros/kinetic/geometryr3^assh ˆh }r4^h}r5^h}r6^h]r7^Uros-kinetic-geometryr8^asssuU route_networkr9^}r:^(h}r;^h}r<^h]r=^Uros/kinetic/open_street_mapr>^assh ˆh }r?^h}r@^h}rA^h]rB^Uros-kinetic-route-networkrC^asssuUrail_manipulation_msgsrD^}rE^(h}rF^h}rG^h]rH^U"ros/kinetic/rail_manipulation_msgsrI^assh ˆh }rJ^h}rK^h}rL^h]rM^U"ros-kinetic-rail-manipulation-msgsrN^asssuUrobot_recorderrO^}rP^(h}rQ^h}rR^h]rS^Uros/kinetic/robot_recorderrT^assh ˆh }rU^h}rV^h}rW^h]rX^Uros-kinetic-robot-recorderrY^asssuUworld_canvas_serverrZ^}r[^(h}r\^h}r]^h]r^^Uros/kinetic/world_canvasr_^assh ˆh }r`^h}ra^h}rb^h]rc^Uros-kinetic-world-canvas-serverrd^asssuU stereo_msgsre^}rf^(h}rg^h}rh^h]ri^Uros/kinetic/common_msgsrj^assh ˆh }rk^h}rl^h}rm^h]rn^Uros-kinetic-stereo-msgsro^asssuUkobuki_capabilitiesrp^}rq^(h}rr^h}rs^h]rt^Uros/kinetic/kobukiru^assh ˆh }rv^h}rw^h}rx^h]ry^Uros-kinetic-kobuki-capabilitiesrz^asssuUcob_bms_driverr{^}r|^(h}r}^h}r~^h]r^Uros/kinetic/cob_driverr€^assh ˆh }r^h}r‚^h}rƒ^h]r„^Uros-kinetic-cob-bms-driverr…^asssuUthormang3_commonr†^}r‡^(h}rˆ^h}r‰^h]rŠ^Uros/kinetic/thormang3_commonr‹^assh ˆh }rŒ^h}r^h}rŽ^h]r^Uros-kinetic-thormang3-commonr^asssuU nao_visionr‘^}r’^(h}r“^h}r”^h]r•^Uros/kinetic/nao_interactionr–^assh ˆh }r—^h}r˜^h}r™^h]rš^Uros-kinetic-nao-visionr›^asssuUswri_image_utilrœ^}r^(h}rž^h}rŸ^h]r ^Uros/kinetic/marti_commonr¡^assh ˆh }r¢^h}r£^h}r¤^h]r¥^Uros-kinetic-swri-image-utilr¦^asssuUrocon_gateway_testsr§^}r¨^(h}r©^h}rª^h]r«^Uros/kinetic/rocon_multimasterr¬^assh ˆh }r­^h}r®^h}r¯^h]r°^Uros-kinetic-rocon-gateway-testsr±^asssuU libfreenectr²^}r³^(h}r´^h}rµ^h]r¶^Uros/kinetic/libfreenectr·^assh ˆh }r¸^h}r¹^h}rº^h]r»^Uros-kinetic-libfreenectr¼^asssuUmir_descriptionr½^}r¾^(h}r¿^h}rÀ^h]rÁ^Uros/kinetic/mir_robotrÂ^assh ˆh }rÃ^h}rÄ^h}rÅ^h]rÆ^Uros-kinetic-mir-descriptionrÇ^asssuU phidgets_apirÈ^}rÉ^(h}rÊ^h}rË^h]rÌ^Uros/kinetic/phidgets_driversrÍ^assh ˆh }rÎ^h}rÏ^h}rÐ^h]rÑ^Uros-kinetic-phidgets-apirÒ^asssuUmicrostrain_mipsrÓ^}rÔ^(h}rÕ^h}rÖ^h]r×^Uros/kinetic/microstrain_mipsrØ^assh ˆh }rÙ^h}rÚ^h}rÛ^h]rÜ^Uros-kinetic-microstrain-mipsrÝ^asssuUtf_remapper_cpprÞ^}rß^(h}rà^h}rá^h]râ^Uros/kinetic/tf_remapper_cpprã^assh ˆh }rä^h}rå^h}ræ^h]rç^Uros-kinetic-tf-remapper-cpprè^asssuUzeroconf_jmdns_suiteré^}rê^(h}rë^h}rì^h]rí^U ros/kinetic/zeroconf_jmdns_suiterî^assh ˆh }rï^h}rð^h}rñ^h]rò^U ros-kinetic-zeroconf-jmdns-suiteró^asssuUopen_manipulator_controllerrô^}rõ^(h}rö^h}r÷^h]rø^Uros/kinetic/open_manipulatorrù^assh ˆh }rú^h}rû^h}rü^h]rý^U'ros-kinetic-open-manipulator-controllerrþ^asssuUrr_openrover_basicrÿ^}r_(h}r_h}r_h]r_Uros/kinetic/rr_openrover_basicr_assh ˆh }r_h}r_h}r_h]r_Uros-kinetic-rr-openrover-basicr _asssuUecl_timer _}r _(h}r _h}r _h]r_Uros/kinetic/ecl_corer_assh ˆh }r_h}r_h}r_h]r_Uros-kinetic-ecl-timer_asssuUrh_p12_rn_base_module_msgsr_}r_(h}r_h}r_h]r_Uros/kinetic/rh_p12_rnr_assh ˆh }r_h}r_h}r_h]r_U&ros-kinetic-rh-p12-rn-base-module-msgsr_asssuUlaser_joint_projectorr _}r!_(h}r"_h}r#_h]r$_Uros/kinetic/pr2_calibrationr%_assh ˆh }r&_h}r'_h}r(_h]r)_U!ros-kinetic-laser-joint-projectorr*_asssuU sound_playr+_}r,_(h}r-_h}r._h]r/_Uros/kinetic/audio_commonr0_assh ˆh }r1_h}r2_h}r3_h]r4_Uros-kinetic-sound-playr5_asssuUpose_base_controllerr6_}r7_(h}r8_h}r9_h]r:_U#ros/kinetic/navigation_experimentalr;_assh ˆh }r<_h}r=_h}r>_h]r?_U ros-kinetic-pose-base-controllerr@_asssuUtoposens_pointcloudrA_}rB_(h}rC_h}rD_h]rE_Uros/kinetic/toposensrF_assh ˆh }rG_h}rH_h}rI_h]rJ_Uros-kinetic-toposens-pointcloudrK_asssuU ipr_externrL_}rM_(h}rN_h}rO_h]rP_Uros/kinetic/ipr_externrQ_assh ˆh }rR_h}rS_h}rT_h]rU_Uros-kinetic-ipr-externrV_asssuUkobuki_softappsrW_}rX_(h}rY_h}rZ_h]r[_Uros/kinetic/kobuki_softr\_assh ˆh }r]_h}r^_h}r__h]r`_Uros-kinetic-kobuki-softappsra_asssuUcompressed_image_transportrb_}rc_(h}rd_h}re_h]rf_U#ros/kinetic/image_transport_pluginsrg_assh ˆh }rh_h}ri_h}rj_h]rk_U&ros-kinetic-compressed-image-transportrl_asssuU gazebo_msgsrm_}rn_(h}ro_h}rp_h]rq_Uros/kinetic/gazebo_ros_pkgsrr_assh ˆh }rs_h}rt_h}ru_h]rv_Uros-kinetic-gazebo-msgsrw_asssuUindoor_positioningrx_}ry_(h}rz_h}r{_h]r|_Uros/kinetic/indoor_positioningr}_assh ˆh }r~_h}r_h}r€_h]r_Uros-kinetic-indoor-positioningr‚_asssuU octomap_msgsrƒ_}r„_(h}r…_h}r†_h]r‡_Uros/kinetic/octomap_msgsrˆ_assh ˆh }r‰_h}rŠ_h}r‹_h]rŒ_Uros-kinetic-octomap-msgsr_asssuUecl_mobile_robotrŽ_}r_(h}r_h}r‘_h]r’_Uros/kinetic/ecl_navigationr“_assh ˆh }r”_h}r•_h}r–_h]r—_Uros-kinetic-ecl-mobile-robotr˜_asssuUopenrtm_aist_pythonr™_}rš_(h}r›_h}rœ_h]r_Uros/kinetic/openrtm_aist_pythonrž_assh ˆh }rŸ_h}r _h}r¡_h]r¢_Uros-kinetic-openrtm-aist-pythonr£_asssuUcl_utilsr¤_}r¥_(h}r¦_h}r§_h]r¨_Uros/kinetic/roslisp_commonr©_assh ˆh }rª_h}r«_h}r¬_h]r­_Uros-kinetic-cl-utilsr®_asssuU eus_nloptr¯_}r°_(h}r±_h}r²_h]r³_Uros/kinetic/jsk_controlr´_assh ˆh }rµ_h}r¶_h}r·_h]r¸_Uros-kinetic-eus-nloptr¹_asssuUtf2_web_republisherrº_}r»_(h}r¼_h}r½_h]r¾_Uros/kinetic/tf2_web_republisherr¿_assh ˆh }rÀ_h}rÁ_h}rÂ_h]rÃ_Uros-kinetic-tf2-web-republisherrÄ_asssuUturtlebot3_panoramarÅ_}rÆ_(h}rÇ_h}rÈ_h]rÉ_U#ros/kinetic/turtlebot3_applicationsrÊ_assh ˆh }rË_h}rÌ_h}rÍ_h]rÎ_Uros-kinetic-turtlebot3-panoramarÏ_asssuU pilz_industrial_motion_testutilsrÐ_}rÑ_(h}rÒ_h}rÓ_h]rÔ_U"ros/kinetic/pilz_industrial_motionrÕ_assh ˆh }rÖ_h}r×_h}rØ_h]rÙ_U,ros-kinetic-pilz-industrial-motion-testutilsrÚ_asssuU cob_androidrÛ_}rÜ_(h}rÝ_h}rÞ_h]rß_Uros/kinetic/cob_androidrà_assh ˆh }rá_h}râ_h}rã_h]rä_Uros-kinetic-cob-androidrå_asssuU ecl_conceptsræ_}rç_(h}rè_h}ré_h]rê_Uros/kinetic/ecl_corerë_assh ˆh }rì_h}rí_h}rî_h]rï_Uros-kinetic-ecl-conceptsrð_asssuUmanipulator_h_base_modulerñ_}rò_(h}ró_h}rô_h]rõ_Uros/kinetic/manipulator_hrö_assh ˆh }r÷_h}rø_h}rù_h]rú_U%ros-kinetic-manipulator-h-base-modulerû_asssuUkhi_robot_msgsrü_}rý_(h}rþ_h}rÿ_h]r`Uros/kinetic/khi_robotr`assh ˆh }r`h}r`h}r`h]r`Uros-kinetic-khi-robot-msgsr`asssuUpr2_navigation_perceptionr`}r`(h}r `h}r `h]r `Uros/kinetic/pr2_navigationr `assh ˆh }r `h}r`h}r`h]r`U%ros-kinetic-pr2-navigation-perceptionr`asssuUroch_capabilitiesr`}r`(h}r`h}r`h]r`Uros/kinetic/roch_robotr`assh ˆh }r`h}r`h}r`h]r`Uros-kinetic-roch-capabilitiesr`asssuUrfsmr`}r`(h}r`h}r `h]r!`Uros/kinetic/rfsmr"`assh ˆh }r#`h}r$`h}r%`h]r&`Uros-kinetic-rfsmr'`asssuU costmap_queuer(`}r)`(h}r*`h}r+`h]r,`Uros/kinetic/robot_navigationr-`assh ˆh }r.`h}r/`h}r0`h]r1`Uros-kinetic-costmap-queuer2`asssuUtf2_kdlr3`}r4`(h}r5`h}r6`h]r7`Uros/kinetic/geometry2r8`assh ˆh }r9`h}r:`h}r;`h]r<`Uros-kinetic-tf2-kdlr=`asssuUethercat_trigger_controllersr>`}r?`(h}r@`h}rA`h]rB`Uros/kinetic/pr2_controllersrC`assh ˆh }rD`h}rE`h}rF`h]rG`U(ros-kinetic-ethercat-trigger-controllersrH`asssuUthormang3_head_control_modulerI`}rJ`(h}rK`h}rL`h]rM`Uros/kinetic/thormang3_mpcrN`assh ˆh }rO`h}rP`h}rQ`h]rR`U)ros-kinetic-thormang3-head-control-modulerS`asssuUhugin_panoramarT`}rU`(h}rV`h}rW`h]rX`Uros/kinetic/hugin_panoramarY`assh ˆh }rZ`h}r[`h}r\`h]r]`Uros-kinetic-hugin-panoramar^`asssuUtuw_geometry_msgsr_`}r``(h}ra`h}rb`h]rc`Uros/kinetic/tuw_msgsrd`assh ˆh }re`h}rf`h}rg`h]rh`Uros-kinetic-tuw-geometry-msgsri`asssuUrobotis_op3_msgsrj`}rk`(h}rl`h}rm`h]rn`Uros/kinetic/robotis_op3_msgsro`assh ˆh }rp`h}rq`h}rr`h]rs`Uros-kinetic-robotis-op3-msgsrt`asssuU rosserialru`}rv`(h}rw`h}rx`h]ry`Uros/kinetic/rosserialrz`assh ˆh }r{`h}r|`h}r}`h]r~`Uros-kinetic-rosserialr`asssuUrosmaker€`}r`(h}r‚`h}rƒ`h]r„`Uros/kinetic/rosr…`assh ˆh }r†`h}r‡`h}rˆ`h]r‰`Uros-kinetic-rosmakerŠ`asssuUmoveit_setup_assistantr‹`}rŒ`(h}r`h}rŽ`h]r`Uros/kinetic/moveitr`assh ˆh }r‘`h}r’`h}r“`h]r”`U"ros-kinetic-moveit-setup-assistantr•`asssuUsdhlibrary_cppr–`}r—`(h}r˜`h}r™`h]rš`Uros/kinetic/sdhlibrary_cppr›`assh ˆh }rœ`h}r`h}rž`h]rŸ`Uros-kinetic-sdhlibrary-cppr `asssuU libqt_widgetsr¡`}r¢`(h}r£`h}r¤`h]r¥`Uros/kinetic/qt_metapackagesr¦`assh ˆh }r§`h}r¨`h}r©`h]rª`Uros-kinetic-libqt-widgetsr«`asssuU nav_core2r¬`}r­`(h}r®`h}r¯`h]r°`Uros/kinetic/robot_navigationr±`assh ˆh }r²`h}r³`h}r´`h]rµ`Uros-kinetic-nav-core2r¶`asssuU cob_mimicr·`}r¸`(h}r¹`h}rº`h]r»`Uros/kinetic/cob_driverr¼`assh ˆh }r½`h}r¾`h}r¿`h]rÀ`Uros-kinetic-cob-mimicrÁ`asssuU libsegwayrmprÂ`}rÃ`(h}rÄ`h}rÅ`h]rÆ`Uros/kinetic/libsegwayrmprÇ`assh ˆh }rÈ`h}rÉ`h}rÊ`h]rË`Uros-kinetic-libsegwayrmprÌ`asssuUcob_undercarriage_ctrlrÍ`}rÎ`(h}rÏ`h}rÐ`h]rÑ`Uros/kinetic/cob_driverrÒ`assh ˆh }rÓ`h}rÔ`h}rÕ`h]rÖ`U"ros-kinetic-cob-undercarriage-ctrlr×`asssuU vrx_gazeborØ`}rÙ`(h}rÚ`h}rÛ`h]rÜ`Uros/kinetic/vrxrÝ`assh ˆh }rÞ`h}rß`h}rà`h]rá`Uros-kinetic-vrx-gazeborâ`asssuUrtt_kdl_conversionsrã`}rä`(h}rå`h}ræ`h]rç`Uros/kinetic/rtt_ros_integrationrè`assh ˆh }ré`h}rê`h}rë`h]rì`Uros-kinetic-rtt-kdl-conversionsrí`asssuUimage_recognition_utilrî`}rï`(h}rð`h}rñ`h]rò`Uros/kinetic/image_recognitionró`assh ˆh }rô`h}rõ`h}rö`h]r÷`U"ros-kinetic-image-recognition-utilrø`asssuUworld_canvas_msgsrù`}rú`(h}rû`h}rü`h]rý`Uros/kinetic/world_canvas_msgsrþ`assh ˆh }rÿ`h}rah}rah]raUros-kinetic-world-canvas-msgsraasssuUvispra}ra(h}rah}rah]raUros/kinetic/vispr aassh ˆh }r ah}r ah}r ah]r aUros-kinetic-vispraasssuUroslispra}ra(h}rah}rah]raUros/kinetic/roslispraassh ˆh }rah}rah}rah]raUros-kinetic-roslispraasssuUsafe_teleop_stagera}ra(h}rah}rah]raU(ros/kinetic/shared_autonomy_manipulationraassh ˆh }r ah}r!ah}r"ah]r#aUros-kinetic-safe-teleop-stager$aasssuUkatana_tutorialsr%a}r&a(h}r'ah}r(ah]r)aUros/kinetic/katana_driverr*aassh ˆh }r+ah}r,ah}r-ah]r.aUros-kinetic-katana-tutorialsr/aasssuUepson_imu_driverr0a}r1a(h}r2ah}r3ah]r4aU!ros/kinetic/epson_g364_imu_driverr5aassh ˆh }r6ah}r7ah}r8ah]r9aUros-kinetic-epson-imu-driverr:aasssuU"dynamixel_workbench_single_managerr;a}rah]r?aUros/kinetic/dynamixel-workbenchr@aassh ˆh }rAah}rBah}rCah]rDaU.ros-kinetic-dynamixel-workbench-single-managerrEaasssuU grid_map_rosrFa}rGa(h}rHah}rIah]rJaUros/kinetic/grid_maprKaassh ˆh }rLah}rMah}rNah]rOaUros-kinetic-grid-map-rosrPaasssuUrtt_rosdeploymentrQa}rRa(h}rSah}rTah]rUaUros/kinetic/rtt_ros_integrationrVaassh ˆh }rWah}rXah}rYah]rZaUros-kinetic-rtt-rosdeploymentr[aasssuUop3_ball_detectorr\a}r]a(h}r^ah}r_ah]r`aUros/kinetic/robotis_op3_demoraaassh ˆh }rbah}rcah}rdah]reaUros-kinetic-op3-ball-detectorrfaasssuU rsm_additionsrga}rha(h}riah}rjah]rkaUros/kinetic/robot_statemachinerlaassh ˆh }rmah}rnah}roah]rpaUros-kinetic-rsm-additionsrqaasssuUrosjsonrra}rsa(h}rtah}ruah]rvaUros/kinetic/web_interfacerwaassh ˆh }rxah}ryah}rzah]r{aUros-kinetic-rosjsonr|aasssuUlaser_scan_publisher_tutorialr}a}r~a(h}rah}r€ah]raU ros/kinetic/navigation_tutorialsr‚aassh ˆh }rƒah}r„ah}r…ah]r†aU)ros-kinetic-laser-scan-publisher-tutorialr‡aasssuU summit_x_simrˆa}r‰a(h}rŠah}r‹ah]rŒaUros/kinetic/summit_x_simraassh ˆh }rŽah}rah}rah]r‘aUros-kinetic-summit-x-simr’aasssuU segway_rmpr“a}r”a(h}r•ah}r–ah]r—aUros/kinetic/segway_rmpr˜aassh ˆh }r™ah}ršah}r›ah]rœaUros-kinetic-segway-rmpraasssuUmoveit_config_m0609rža}rŸa(h}r ah}r¡ah]r¢aUros/kinetic/doosan_robotr£aassh ˆh }r¤ah}r¥ah}r¦ah]r§aUros-kinetic-moveit-config-m0609r¨aasssuU rocon_testr©a}rªa(h}r«ah}r¬ah]r­aUros/kinetic/rocon_multimasterr®aassh ˆh }r¯ah}r°ah}r±ah]r²aUros-kinetic-rocon-testr³aasssuU abb_resourcesr´a}rµa(h}r¶ah}r·ah]r¸aUros/kinetic/abbr¹aassh ˆh }rºah}r»ah}r¼ah]r½aUros-kinetic-abb-resourcesr¾aasssuUros_monitoring_msgsr¿a}rÀa(h}rÁah}rÂah]rÃaUros/kinetic/ros_monitoring_msgsrÄaassh ˆh }rÅah}rÆah}rÇah]rÈaUros-kinetic-ros-monitoring-msgsrÉaasssuU tf2_relayrÊa}rËa(h}rÌah}rÍah]rÎaU!ros/kinetic/cpr_multimaster_toolsrÏaassh ˆh }rÐah}rÑah}rÒah]rÓaUros-kinetic-tf2-relayrÔaasssuUhector_nav_msgsrÕa}rÖa(h}r×ah}rØah]rÙaUros/kinetic/hector_slamrÚaassh ˆh }rÛah}rÜah}rÝah]rÞaUros-kinetic-hector-nav-msgsrßaasssuUcob_phidget_power_stateràa}ráa(h}râah}rãah]räaUros/kinetic/cob_driverråaassh ˆh }ræah}rçah}rèah]réaU#ros-kinetic-cob-phidget-power-staterêaasssuUkinesis_managerrëa}rìa(h}ríah}rîah]rïaUros/kinetic/kinesis_managerrðaassh ˆh }rñah}ròah}róah]rôaUros-kinetic-kinesis-managerrõaasssuUurdf_parser_pluginröa}r÷a(h}røah}rùah]rúaUros/kinetic/urdfrûaassh ˆh }rüah}rýah}rþah]rÿaUros-kinetic-urdf-parser-pluginrbasssuUpy_treesrb}rb(h}rbh}rbh]rbUros/kinetic/py_treesrbassh ˆh }rbh}rbh}r bh]r bUros-kinetic-py-treesr basssuUethercat_managerr b}r b(h}rbh}rbh]rbUros/kinetic/minasrbassh ˆh }rbh}rbh}rbh]rbUros-kinetic-ethercat-managerrbasssuUpr2_navigationrb}rb(h}rbh}rbh]rbUros/kinetic/pr2_navigationrbassh ˆh }rbh}rbh}rbh]r bUros-kinetic-pr2-navigationr!basssuUhector_components_descriptionr"b}r#b(h}r$bh}r%bh]r&bUros/kinetic/hector_modelsr'bassh ˆh }r(bh}r)bh}r*bh]r+bU)ros-kinetic-hector-components-descriptionr,basssuUfeed_the_troll_msgsr-b}r.b(h}r/bh}r0bh]r1bUros/kinetic/feed_the_troll_msgsr2bassh ˆh }r3bh}r4bh}r5bh]r6bUros-kinetic-feed-the-troll-msgsr7basssuUturtlebot3_autorace_controlr8b}r9b(h}r:bh}r;bh]rbh}r?bh}r@bh]rAbU'ros-kinetic-turtlebot3-autorace-controlrBbasssuU turtlebotrCb}rDb(h}rEbh}rFbh]rGbUros/kinetic/turtlebotrHbassh ˆh }rIbh}rJbh}rKbh]rLbUros-kinetic-turtlebotrMbasssuUwebargsrNb}rOb(h}rPbh}rQbh]rRbUros/kinetic/webargsrSbassh ˆh }rTbh}rUbh}rVbh]rWbUros-kinetic-webargsrXbasssuUieee80211_channelsrYb}rZb(h}r[bh}r\bh]r]bUros/kinetic/linux_networkingr^bassh ˆh }r_bh}r`bh}rabh]rbbUros-kinetic-ieee80211-channelsrcbasssuUcarrot_plannerrdb}reb(h}rfbh}rgbh]rhbUros/kinetic/navigationribassh ˆh }rjbh}rkbh}rlbh]rmbUros-kinetic-carrot-plannerrnbasssuUstdr_guirob}rpb(h}rqbh}rrbh]rsbUros/kinetic/stdr_simulatorrtbassh ˆh }rubh}rvbh}rwbh]rxbUros-kinetic-stdr-guirybasssuUthormang3_demorzb}r{b(h}r|bh}r}bh]r~bUros/kinetic/thormang3_opcrbassh ˆh }r€bh}rbh}r‚bh]rƒbUros-kinetic-thormang3-demor„basssuU osg_utilsr…b}r†b(h}r‡bh}rˆbh]r‰bUros/kinetic/visualization_osgrŠbassh ˆh }r‹bh}rŒbh}rbh]rŽbUros-kinetic-osg-utilsrbasssuUqb_hand_hardware_interfacerb}r‘b(h}r’bh}r“bh]r”bUros/kinetic/qb_handr•bassh ˆh }r–bh}r—bh}r˜bh]r™bU&ros-kinetic-qb-hand-hardware-interfaceršbasssuU rosatomicr›b}rœb(h}rbh}ržbh]rŸbUros/kinetic/ros_realtimer bassh ˆh }r¡bh}r¢bh}r£bh]r¤bUros-kinetic-rosatomicr¥basssuUnodelet_tutorial_mathr¦b}r§b(h}r¨bh}r©bh]rªbUros/kinetic/common_tutorialsr«bassh ˆh }r¬bh}r­bh}r®bh]r¯bU!ros-kinetic-nodelet-tutorial-mathr°basssuUjoystick_driversr±b}r²b(h}r³bh}r´bh]rµbUros/kinetic/joystick_driversr¶bassh ˆh }r·bh}r¸bh}r¹bh]rºbUros-kinetic-joystick-driversr»basssuUcost_map_demosr¼b}r½b(h}r¾bh}r¿bh]rÀbUros/kinetic/cost_maprÁbassh ˆh }rÂbh}rÃbh}rÄbh]rÅbUros-kinetic-cost-map-demosrÆbasssuUroch_safety_controllerrÇb}rÈb(h}rÉbh}rÊbh]rËbUros/kinetic/roch_robotrÌbassh ˆh }rÍbh}rÎbh}rÏbh]rÐbU"ros-kinetic-roch-safety-controllerrÑbasssuUteleop_tools_msgsrÒb}rÓb(h}rÔbh}rÕbh]rÖbUros/kinetic/teleop_toolsr×bassh ˆh }rØbh}rÙbh}rÚbh]rÛbUros-kinetic-teleop-tools-msgsrÜbasssuUrobot_activity_tutorialsrÝb}rÞb(h}rßbh}ràbh]rábUros/kinetic/robot_activityrâbassh ˆh }rãbh}räbh}råbh]ræbU$ros-kinetic-robot-activity-tutorialsrçbasssuU dataspeed_ulcrèb}réb(h}rêbh}rëbh]rìbUros/kinetic/dataspeed_ulc_rosríbassh ˆh }rîbh}rïbh}rðbh]rñbUros-kinetic-dataspeed-ulcròbasssuUhector_xacro_toolsrób}rôb(h}rõbh}röbh]r÷bUros/kinetic/hector_modelsrøbassh ˆh }rùbh}rúbh}rûbh]rübUros-kinetic-hector-xacro-toolsrýbasssuUroslibrþb}rÿb(h}rch}rch]rcUros/kinetic/rosrcassh ˆh }rch}rch}rch]rcUros-kinetic-roslibrcasssuUgeneusr c}r c(h}r ch}r ch]r cUros/kinetic/geneusrcassh ˆh }rch}rch}rch]rcUros-kinetic-geneusrcasssuUmelfa_descriptionrc}rc(h}rch}rch]rcUros/kinetic/melfa_robotrcassh ˆh }rch}rch}rch]rcUros-kinetic-melfa-descriptionrcasssuUur10_e_moveit_configrc}r c(h}r!ch}r"ch]r#cUros/kinetic/universal_robotr$cassh ˆh }r%ch}r&ch}r'ch]r(cU ros-kinetic-ur10-e-moveit-configr)casssuUroswtfr*c}r+c(h}r,ch}r-ch]r.cUros/kinetic/ros_commr/cassh ˆh }r0ch}r1ch}r2ch]r3cUros-kinetic-roswtfr4casssuUrosbridge_msgsr5c}r6c(h}r7ch}r8ch]r9cUros/kinetic/rosbridge_suiter:cassh ˆh }r;ch}rcUros-kinetic-rosbridge-msgsr?casssuUsocial_navigation_layersr@c}rAc(h}rBch}rCch]rDcUros/kinetic/navigation_layersrEcassh ˆh }rFch}rGch}rHch]rIcU$ros-kinetic-social-navigation-layersrJcasssuUrobotis_frameworkrKc}rLc(h}rMch}rNch]rOcUros/kinetic/robotis_frameworkrPcassh ˆh }rQch}rRch}rSch]rTcUros-kinetic-robotis-frameworkrUcasssuUresized_image_transportrVc}rWc(h}rXch}rYch]rZcUros/kinetic/jsk_recognitionr[cassh ˆh }r\ch}r]ch}r^ch]r_cU#ros-kinetic-resized-image-transportr`casssuUftm_msgsrac}rbc(h}rcch}rdch]recUros/kinetic/ftm_msgsrfcassh ˆh }rgch}rhch}rich]rjcUros-kinetic-ftm-msgsrkcasssuUthormang3_imu_3dm_gx4rlc}rmc(h}rnch}roch]rpcU!ros/kinetic/thormang3_mpc_sensorsrqcassh ˆh }rrch}rsch}rtch]rucU!ros-kinetic-thormang3-imu-3dm-gx4rvcasssuUridgeback_simulatorrwc}rxc(h}rych}rzch]r{cUros/kinetic/ridgeback_simulatorr|cassh ˆh }r}ch}r~ch}rch]r€cUros-kinetic-ridgeback-simulatorrcasssuU qb_devicer‚c}rƒc(h}r„ch}r…ch]r†cUros/kinetic/qb_devicer‡cassh ˆh }rˆch}r‰ch}rŠch]r‹cUros-kinetic-qb-devicerŒcasssuUnav_pcontrollerrc}rŽc(h}rch}rch]r‘cUros/kinetic/nav_pcontrollerr’cassh ˆh }r“ch}r”ch}r•ch]r–cUros-kinetic-nav-pcontrollerr—casssuU kdl_parser_pyr˜c}r™c(h}ršch}r›ch]rœcUros/kinetic/kdl_parserrcassh ˆh }ržch}rŸch}r ch]r¡cUros-kinetic-kdl-parser-pyr¢casssuU rosgraph_msgsr£c}r¤c(h}r¥ch}r¦ch]r§cUros/kinetic/ros_comm_msgsr¨cassh ˆh }r©ch}rªch}r«ch]r¬cUros-kinetic-rosgraph-msgsr­casssuU rqt_graphr®c}r¯c(h}r°ch}r±ch]r²cUros/kinetic/rqt_graphr³cassh ˆh }r´ch}rµch}r¶ch]r·cUros-kinetic-rqt-graphr¸casssuU rosflight_simr¹c}rºc(h}r»ch}r¼ch]r½cUros/kinetic/rosflightr¾cassh ˆh }r¿ch}rÀch}rÁch]rÂcUros-kinetic-rosflight-simrÃcasssuUar_track_alvarrÄc}rÅc(h}rÆch}rÇch]rÈcUros/kinetic/ar_track_alvarrÉcassh ˆh }rÊch}rËch}rÌch]rÍcUros-kinetic-ar-track-alvarrÎcasssuUopen_manipulator_gazeborÏc}rÐc(h}rÑch}rÒch]rÓcU(ros/kinetic/open_manipulator_simulationsrÔcassh ˆh }rÕch}rÖch}r×ch]rØcU#ros-kinetic-open-manipulator-gazeborÙcasssuUjsk_perceptionrÚc}rÛc(h}rÜch}rÝch]rÞcUros/kinetic/jsk_recognitionrßcassh ˆh }ràch}rách}râch]rãcUros-kinetic-jsk-perceptionräcasssuU iiwa_gazeboråc}ræc(h}rçch}rèch]récUros/kinetic/iiwa_stackrêcassh ˆh }rëch}rìch}rích]rîcUros-kinetic-iiwa-gazeborïcasssuUhector_worldmodelrðc}rñc(h}ròch}róch]rôcUros/kinetic/hector_worldmodelrõcassh ˆh }röch}r÷ch}røch]rùcUros-kinetic-hector-worldmodelrúcasssuUdbw_mkz_joystick_demorûc}rüc(h}rých}rþch]rÿcUros/kinetic/dbw_mkz_rosrdassh ˆh }rdh}rdh}rdh]rdU!ros-kinetic-dbw-mkz-joystick-demordasssuU wge100_camerard}rd(h}rdh}r dh]r dUros/kinetic/wge100_driverr dassh ˆh }r dh}r dh}rdh]rdUros-kinetic-wge100-camerardasssuU libphidget21rd}rd(h}rdh}rdh]rdUros/kinetic/phidgets_driversrdassh ˆh }rdh}rdh}rdh]rdUros-kinetic-libphidget21rdasssuUchomp_motion_plannerrd}rd(h}rdh}rdh]r dUros/kinetic/moveitr!dassh ˆh }r"dh}r#dh}r$dh]r%dU ros-kinetic-chomp-motion-plannerr&dasssuUglobal_plannerr'd}r(d(h}r)dh}r*dh]r+dUros/kinetic/navigationr,dassh ˆh }r-dh}r.dh}r/dh]r0dUros-kinetic-global-plannerr1dasssuUcob_default_robot_configr2d}r3d(h}r4dh}r5dh]r6dUros/kinetic/cob_robotsr7dassh ˆh }r8dh}r9dh}r:dh]r;dU$ros-kinetic-cob-default-robot-configrd(h}r?dh}r@dh]rAdUros/kinetic/warthogrBdassh ˆh }rCdh}rDdh}rEdh]rFdUros-kinetic-warthog-msgsrGdasssuUmarti_perception_msgsrHd}rId(h}rJdh}rKdh]rLdUros/kinetic/marti_messagesrMdassh ˆh }rNdh}rOdh}rPdh]rQdU!ros-kinetic-marti-perception-msgsrRdasssuUnaoqi_sensors_pyrSd}rTd(h}rUdh}rVdh]rWdUros/kinetic/naoqi_bridgerXdassh ˆh }rYdh}rZdh}r[dh]r\dUros-kinetic-naoqi-sensors-pyr]dasssuU rqt_gui_cppr^d}r_d(h}r`dh}radh]rbdUros/kinetic/rqtrcdassh ˆh }rddh}redh}rfdh]rgdUros-kinetic-rqt-gui-cpprhdasssuUglobal_planner_testsrid}rjd(h}rkdh}rldh]rmdUros/kinetic/robot_navigationrndassh ˆh }rodh}rpdh}rqdh]rrdU ros-kinetic-global-planner-testsrsdasssuU optpp_catkinrtd}rud(h}rvdh}rwdh]rxdUros/kinetic/optpp_catkinrydassh ˆh }rzdh}r{dh}r|dh]r}dUros-kinetic-optpp-catkinr~dasssuUrtt_rosgraph_msgsrd}r€d(h}rdh}r‚dh]rƒdUros/kinetic/rtt_ros_integrationr„dassh ˆh }r…dh}r†dh}r‡dh]rˆdUros-kinetic-rtt-rosgraph-msgsr‰dasssuU jsk_controlrŠd}r‹d(h}rŒdh}rdh]rŽdUros/kinetic/jsk_controlrdassh ˆh }rdh}r‘dh}r’dh]r“dUros-kinetic-jsk-controlr”dasssuU&object_recognition_transparent_objectsr•d}r–d(h}r—dh}r˜dh]r™dU2ros/kinetic/object_recognition_transparent_objectsršdassh ˆh }r›dh}rœdh}rdh]rždU2ros-kinetic-object-recognition-transparent-objectsrŸdasssuUturtlebot_actionsr d}r¡d(h}r¢dh}r£dh]r¤dUros/kinetic/turtlebot_appsr¥dassh ˆh }r¦dh}r§dh}r¨dh]r©dUros-kinetic-turtlebot-actionsrªdasssuU image_commonr«d}r¬d(h}r­dh}r®dh]r¯dUros/kinetic/image_commonr°dassh ˆh }r±dh}r²dh}r³dh]r´dUros-kinetic-image-commonrµdasssuUhumanoid_planner_2dr¶d}r·d(h}r¸dh}r¹dh]rºdUros/kinetic/humanoid_navigationr»dassh ˆh }r¼dh}r½dh}r¾dh]r¿dUros-kinetic-humanoid-planner-2drÀdasssuUcob_elmo_homingrÁd}rÂd(h}rÃdh}rÄdh]rÅdUros/kinetic/cob_driverrÆdassh ˆh }rÇdh}rÈdh}rÉdh]rÊdUros-kinetic-cob-elmo-homingrËdasssuUjoyrÌd}rÍd(h}rÎdh}rÏdh]rÐdUros/kinetic/joystick_driversrÑdassh ˆh }rÒdh}rÓdh}rÔdh]rÕdUros-kinetic-joyrÖdasssuUexotica_aico_solverr×d}rØd(h}rÙdh}rÚdh]rÛdUros/kinetic/exoticarÜdassh ˆh }rÝdh}rÞdh}rßdh]ràdUros-kinetic-exotica-aico-solverrádasssuUpr2_gripper_sensorrâd}rãd(h}rädh}rådh]rædUros/kinetic/pr2_gripper_sensorrçdassh ˆh }rèdh}rédh}rêdh]rëdUros-kinetic-pr2-gripper-sensorrìdasssuUgrid_map_costmap_2dríd}rîd(h}rïdh}rðdh]rñdUros/kinetic/grid_mapròdassh ˆh }ródh}rôdh}rõdh]rödUros-kinetic-grid-map-costmap-2dr÷dasssuUop3_demorød}rùd(h}rúdh}rûdh]rüdUros/kinetic/robotis_op3_demorýdassh ˆh }rþdh}rÿdh}reh]reUros-kinetic-op3-demoreasssuUrtt_geometry_msgsre}re(h}reh}reh]reUros/kinetic/rtt_ros_integrationreassh ˆh }r eh}r eh}r eh]r eUros-kinetic-rtt-geometry-msgsr easssuUmultimaster_msgsre}re(h}reh}reh]reU!ros/kinetic/cpr_multimaster_toolsreassh ˆh }reh}reh}reh]reUros-kinetic-multimaster-msgsreasssuU cog_publisherre}re(h}reh}reh]reUros/kinetic/cog_publisherreassh ˆh }reh}r eh}r!eh]r"eUros-kinetic-cog-publisherr#easssuU rqt_rosmonr$e}r%e(h}r&eh}r'eh]r(eUros/kinetic/rosmonr)eassh ˆh }r*eh}r+eh}r,eh]r-eUros-kinetic-rqt-rosmonr.easssuU rospy_wrapperr/e}r0e(h}r1eh}r2eh]r3eUros/kinetic/rospy_wrapperr4eassh ˆh }r5eh}r6eh}r7eh]r8eUros-kinetic-rospy-wrapperr9easssuU tf2_bulletr:e}r;e(h}reUros/kinetic/geometry2r?eassh ˆh }r@eh}rAeh}rBeh]rCeUros-kinetic-tf2-bulletrDeasssuUop3_action_editorrEe}rFe(h}rGeh}rHeh]rIeUros/kinetic/robotis_op3_toolsrJeassh ˆh }rKeh}rLeh}rMeh]rNeUros-kinetic-op3-action-editorrOeasssuU rosmon_corerPe}rQe(h}rReh}rSeh]rTeUros/kinetic/rosmonrUeassh ˆh }rVeh}rWeh}rXeh]rYeUros-kinetic-rosmon-corerZeasssuU uavc_v4lctlr[e}r\e(h}r]eh}r^eh]r_eUros/kinetic/uavc_v4lctlr`eassh ˆh }raeh}rbeh}rceh]rdeUros-kinetic-uavc-v4lctlreeasssuUforward_command_controllerrfe}rge(h}rheh}rieh]rjeUros/kinetic/ros_controllersrkeassh ˆh }rleh}rmeh}rneh]roeU&ros-kinetic-forward-command-controllerrpeasssuUlinksys_access_pointrqe}rre(h}rseh}rteh]rueUros/kinetic/linux_networkingrveassh ˆh }rweh}rxeh}ryeh]rzeU ros-kinetic-linksys-access-pointr{easssuUrtt_pclr|e}r}e(h}r~eh}reh]r€eUros/kinetic/rtt_pclreassh ˆh }r‚eh}rƒeh}r„eh]r…eUros-kinetic-rtt-pclr†easssuUrqt_bag_pluginsr‡e}rˆe(h}r‰eh}rŠeh]r‹eUros/kinetic/rqt_bagrŒeassh ˆh }reh}rŽeh}reh]reUros-kinetic-rqt-bag-pluginsr‘easssuUur3_moveit_configr’e}r“e(h}r”eh}r•eh]r–eUros/kinetic/universal_robotr—eassh ˆh }r˜eh}r™eh}ršeh]r›eUros-kinetic-ur3-moveit-configrœeasssuU turtlesimre}rže(h}rŸeh}r eh]r¡eUros/kinetic/ros_tutorialsr¢eassh ˆh }r£eh}r¤eh}r¥eh]r¦eUros-kinetic-turtlesimr§easssuUrail_segmentationr¨e}r©e(h}rªeh}r«eh]r¬eUros/kinetic/rail_segmentationr­eassh ˆh }r®eh}r¯eh}r°eh]r±eUros-kinetic-rail-segmentationr²easssuUdiagnostic_analysisr³e}r´e(h}rµeh}r¶eh]r·eUros/kinetic/diagnosticsr¸eassh ˆh }r¹eh}rºeh}r»eh]r¼eUros-kinetic-diagnostic-analysisr½easssuUsummit_x_descriptionr¾e}r¿e(h}rÀeh}rÁeh]rÂeUros/kinetic/summit_x_commonrÃeassh ˆh }rÄeh}rÅeh}rÆeh]rÇeU ros-kinetic-summit-x-descriptionrÈeasssuU camera1394rÉe}rÊe(h}rËeh}rÌeh]rÍeUros/kinetic/camera1394rÎeassh ˆh }rÏeh}rÐeh}rÑeh]rÒeUros-kinetic-camera1394rÓeasssuU libfrankarÔe}rÕe(h}rÖeh}r×eh]rØeUros/kinetic/libfrankarÙeassh ˆh }rÚeh}rÛeh}rÜeh]rÝeUros-kinetic-libfrankarÞeasssuUmapvizrße}ràe(h}ráeh}râeh]rãeUros/kinetic/mapvizräeassh ˆh }råeh}ræeh}rçeh]rèeUros-kinetic-mapvizréeasssuUrosconsole_bridgerêe}rëe(h}rìeh}ríeh]rîeUros/kinetic/rosconsole_bridgerïeassh ˆh }rðeh}rñeh}ròeh]róeUros-kinetic-rosconsole-bridgerôeasssuUpr2_navigation_globalrõe}röe(h}r÷eh}røeh]rùeUros/kinetic/pr2_navigationrúeassh ˆh }rûeh}rüeh}rýeh]rþeU!ros-kinetic-pr2-navigation-globalrÿeasssuU topic_switchrf}rf(h}rfh}rfh]rfUros/kinetic/topic_switchrfassh ˆh }rfh}rfh}rfh]r fUros-kinetic-topic-switchr fasssuUdbw_fca_descriptionr f}r f(h}r fh}rfh]rfUros/kinetic/dbw_fca_rosrfassh ˆh }rfh}rfh}rfh]rfUros-kinetic-dbw-fca-descriptionrfasssuUurdf_sim_tutorialrf}rf(h}rfh}rfh]rfUros/kinetic/urdf_tutorialrfassh ˆh }rfh}rfh}rfh]rfUros-kinetic-urdf-sim-tutorialr fasssuUjsk_interactive_markerr!f}r"f(h}r#fh}r$fh]r%fUros/kinetic/jsk_visualizationr&fassh ˆh }r'fh}r(fh}r)fh]r*fU"ros-kinetic-jsk-interactive-markerr+fasssuUrobot_controllers_msgsr,f}r-f(h}r.fh}r/fh]r0fUros/kinetic/robot_controllersr1fassh ˆh }r2fh}r3fh}r4fh]r5fU"ros-kinetic-robot-controllers-msgsr6fasssuUpuma_motor_msgsr7f}r8f(h}r9fh}r:fh]r;fUros/kinetic/puma_motor_driverrfh}r?fh]r@fUros-kinetic-puma-motor-msgsrAfasssuUprosilica_camerarBf}rCf(h}rDfh}rEfh]rFfUros/kinetic/prosilica_driverrGfassh ˆh }rHfh}rIfh}rJfh]rKfUros-kinetic-prosilica-camerarLfasssuUpr2_dense_laser_snapshotterrMf}rNf(h}rOfh}rPfh]rQfUros/kinetic/pr2_calibrationrRfassh ˆh }rSfh}rTfh}rUfh]rVfU'ros-kinetic-pr2-dense-laser-snapshotterrWfasssuUhector_sensors_gazeborXf}rYf(h}rZfh}r[fh]r\fUros/kinetic/hector_gazebor]fassh ˆh }r^fh}r_fh}r`fh]rafU!ros-kinetic-hector-sensors-gazeborbfasssuUrxros_tfrcf}rdf(h}refh}rffh]rgfUros/kinetic/rxrosrhfassh ˆh }rifh}rjfh}rkfh]rlfUros-kinetic-rxros-tfrmfasssuUtrac_ik_kinematics_pluginrnf}rof(h}rpfh}rqfh]rrfUros/kinetic/trac_ikrsfassh ˆh }rtfh}rufh}rvfh]rwfU%ros-kinetic-trac-ik-kinematics-pluginrxfasssuUtuw_gazebo_msgsryf}rzf(h}r{fh}r|fh]r}fUros/kinetic/tuw_msgsr~fassh ˆh }rfh}r€fh}rfh]r‚fUros-kinetic-tuw-gazebo-msgsrƒfasssuUcob_interactive_teleopr„f}r…f(h}r†fh}r‡fh]rˆfUros/kinetic/cob_command_toolsr‰fassh ˆh }rŠfh}r‹fh}rŒfh]rfU"ros-kinetic-cob-interactive-teleoprŽfasssuU roseus_smachrf}rf(h}r‘fh}r’fh]r“fUros/kinetic/jsk_roseusr”fassh ˆh }r•fh}r–fh}r—fh]r˜fUros-kinetic-roseus-smachr™fasssuUcob_obstacle_distance_moveitršf}r›f(h}rœfh}rfh]ržfUros/kinetic/cob_manipulationrŸfassh ˆh }r fh}r¡fh}r¢fh]r£fU(ros-kinetic-cob-obstacle-distance-moveitr¤fasssuUkobukir¥f}r¦f(h}r§fh}r¨fh]r©fUros/kinetic/kobukirªfassh ˆh }r«fh}r¬fh}r­fh]r®fUros-kinetic-kobukir¯fasssuU libqt_openglr°f}r±f(h}r²fh}r³fh]r´fUros/kinetic/qt_metapackagesrµfassh ˆh }r¶fh}r·fh}r¸fh]r¹fUros-kinetic-libqt-openglrºfasssuUcob_omni_drive_controllerr»f}r¼f(h}r½fh}r¾fh]r¿fUros/kinetic/cob_controlrÀfassh ˆh }rÁfh}rÂfh}rÃfh]rÄfU%ros-kinetic-cob-omni-drive-controllerrÅfasssuUrosapirÆf}rÇf(h}rÈfh}rÉfh]rÊfUros/kinetic/rosbridge_suiterËfassh ˆh }rÌfh}rÍfh}rÎfh]rÏfUros-kinetic-rosapirÐfasssuUlibuvcrÑf}rÒf(h}rÓfh}rÔfh]rÕfUros/kinetic/libuvcrÖfassh ˆh }r×fh}rØfh}rÙfh]rÚfUros-kinetic-libuvcrÛfasssuUtensorflow_rosrÜf}rÝf(h}rÞfh}rßfh]ràfUros/kinetic/image_recognitionráfassh ˆh }râfh}rãfh}räfh]råfUros-kinetic-tensorflow-rosræfasssuU sbpl_recoveryrçf}rèf(h}réfh}rêfh]rëfU#ros/kinetic/navigation_experimentalrìfassh ˆh }rífh}rîfh}rïfh]rðfUros-kinetic-sbpl-recoveryrñfasssuU romeo_bringupròf}róf(h}rôfh}rõfh]röfUros/kinetic/romeo_robotr÷fassh ˆh }røfh}rùfh}rúfh]rûfUros-kinetic-romeo-bringuprüfasssuU rosdiagnosticrýf}rþf(h}rÿfh}rgh]rgUros/kinetic/diagnosticsrgassh ˆh }rgh}rgh}rgh]rgUros-kinetic-rosdiagnosticrgasssuUmarti_can_msgsrg}r g(h}r gh}r gh]r gUros/kinetic/marti_messagesr gassh ˆh }rgh}rgh}rgh]rgUros-kinetic-marti-can-msgsrgasssuU mouse_teleoprg}rg(h}rgh}rgh]rgUros/kinetic/teleop_toolsrgassh ˆh }rgh}rgh}rgh]rgUros-kinetic-mouse-teleoprgasssuUlaser_scan_sparsifierrg}rg(h}r gh}r!gh]r"gUros/kinetic/scan_toolsr#gassh ˆh }r$gh}r%gh}r&gh]r'gU!ros-kinetic-laser-scan-sparsifierr(gasssuU pacmod_msgsr)g}r*g(h}r+gh}r,gh]r-gUros/kinetic/astuff_sensor_msgsr.gassh ˆh }r/gh}r0gh}r1gh]r2gUros-kinetic-pacmod-msgsr3gasssuUnao_moveit_configr4g}r5g(h}r6gh}r7gh]r8gUros/kinetic/nao_moveit_configr9gassh ˆh }r:gh}r;gh}rgasssuUbrics_actuatorr?g}r@g(h}rAgh}rBgh]rCgUros/kinetic/brics_actuatorrDgassh ˆh }rEgh}rFgh}rGgh]rHgUros-kinetic-brics-actuatorrIgasssuU rdl_dynamicsrJg}rKg(h}rLgh}rMgh]rNgUros/kinetic/rdlrOgassh ˆh }rPgh}rQgh}rRgh]rSgUros-kinetic-rdl-dynamicsrTgasssuUsick_visionary_t_driverrUg}rVg(h}rWgh}rXgh]rYgUros/kinetic/sick_visionary_trZgassh ˆh }r[gh}r\gh}r]gh]r^gU#ros-kinetic-sick-visionary-t-driverr_gasssuUop3_base_moduler`g}rag(h}rbgh}rcgh]rdgUros/kinetic/robotis_op3regassh ˆh }rfgh}rggh}rhgh]rigUros-kinetic-op3-base-modulerjgasssuUswri_route_utilrkg}rlg(h}rmgh}rngh]rogUros/kinetic/marti_commonrpgassh ˆh }rqgh}rrgh}rsgh]rtgUros-kinetic-swri-route-utilrugasssuU plotjugglerrvg}rwg(h}rxgh}rygh]rzgUros/kinetic/plotjugglerr{gassh ˆh }r|gh}r}gh}r~gh]rgUros-kinetic-plotjugglerr€gasssuU loki_teleoprg}r‚g(h}rƒgh}r„gh]r…gUros/kinetic/loki_robotr†gassh ˆh }r‡gh}rˆgh}r‰gh]rŠgUros-kinetic-loki-teleopr‹gasssuUmoveit_ros_benchmarksrŒg}rg(h}rŽgh}rgh]rgUros/kinetic/moveitr‘gassh ˆh }r’gh}r“gh}r”gh]r•gU!ros-kinetic-moveit-ros-benchmarksr–gasssuU uuv_simulatorr—g}r˜g(h}r™gh}ršgh]r›gUros/kinetic/uuv_simulatorrœgassh ˆh }rgh}ržgh}rŸgh]r gUros-kinetic-uuv-simulatorr¡gasssuUjoint_qualification_controllersr¢g}r£g(h}r¤gh}r¥gh]r¦gUros/kinetic/pr2_self_testr§gassh ˆh }r¨gh}r©gh}rªgh]r«gU+ros-kinetic-joint-qualification-controllersr¬gasssuUkobuki_descriptionr­g}r®g(h}r¯gh}r°gh]r±gUros/kinetic/kobukir²gassh ˆh }r³gh}r´gh}rµgh]r¶gUros-kinetic-kobuki-descriptionr·gasssuUlusbr¸g}r¹g(h}rºgh}r»gh]r¼gUros/kinetic/lusbr½gassh ˆh }r¾gh}r¿gh}rÀgh]rÁgUros-kinetic-lusbrÂgasssuUecl_formattersrÃg}rÄg(h}rÅgh}rÆgh]rÇgUros/kinetic/ecl_corerÈgassh ˆh }rÉgh}rÊgh}rËgh]rÌgUros-kinetic-ecl-formattersrÍgasssuUrr_openrover_driverrÎg}rÏg(h}rÐgh}rÑgh]rÒgUros/kinetic/rr_openrover_stackrÓgassh ˆh }rÔgh}rÕgh}rÖgh]r×gUros-kinetic-rr-openrover-driverrØgasssuUpx4_msgsrÙg}rÚg(h}rÛgh}rÜgh]rÝgUros/kinetic/px4_msgsrÞgassh ˆh }rßgh}ràgh}rágh]râgUros-kinetic-px4-msgsrãgasssuUfootstep_plannerräg}råg(h}rægh}rçgh]règUros/kinetic/humanoid_navigationrégassh ˆh }rêgh}rëgh}rìgh]rígUros-kinetic-footstep-plannerrîgasssuUuuv_auv_control_allocatorrïg}rðg(h}rñgh}rògh]rógUros/kinetic/uuv_simulatorrôgassh ˆh }rõgh}rögh}r÷gh]røgU%ros-kinetic-uuv-auv-control-allocatorrùgasssuUdenso_ros_controlrúg}rûg(h}rügh}rýgh]rþgUros/kinetic/densorÿgassh ˆh }rhh}rhh}rhh]rhUros-kinetic-denso-ros-controlrhasssuU distance_maprh}rh(h}rhh}rhh]r hUros/kinetic/distance_mapr hassh ˆh }r hh}r hh}r hh]rhUros-kinetic-distance-maprhasssuUsmacharh}rh(h}rhh}rhh]rhUros/kinetic/smacharhassh ˆh }rhh}rhh}rhh]rhUros-kinetic-smacharhasssuUgrid_map_loaderrh}rh(h}rhh}rhh]rhUros/kinetic/grid_mapr hassh ˆh }r!hh}r"hh}r#hh]r$hUros-kinetic-grid-map-loaderr%hasssuUfetch_simulationr&h}r'h(h}r(hh}r)hh]r*hUros/kinetic/fetch_gazebor+hassh ˆh }r,hh}r-hh}r.hh]r/hUros-kinetic-fetch-simulationr0hasssuUecl_command_liner1h}r2h(h}r3hh}r4hh]r5hUros/kinetic/ecl_corer6hassh ˆh }r7hh}r8hh}r9hh]r:hUros-kinetic-ecl-command-liner;hasssuUkinematics_exchangerrhh}r?hh]r@hUros/kinetic/swarm_functionsrAhassh ˆh }rBhh}rChh}rDhh]rEhU ros-kinetic-kinematics-exchangerrFhasssuU ros_canopenrGh}rHh(h}rIhh}rJhh]rKhUros/kinetic/ros_canopenrLhassh ˆh }rMhh}rNhh}rOhh]rPhUros-kinetic-ros-canopenrQhasssuUseed_r7_typef_moveit_configrRh}rSh(h}rThh}rUhh]rVhUros/kinetic/seed_r7_ros_pkgrWhassh ˆh }rXhh}rYhh}rZhh]r[hU'ros-kinetic-seed-r7-typef-moveit-configr\hasssuU care_o_botr]h}r^h(h}r_hh}r`hh]rahUros/kinetic/care_o_botrbhassh ˆh }rchh}rdhh}rehh]rfhUros-kinetic-care-o-botrghasssuU"thormang3_head_control_module_msgsrhh}rih(h}rjhh}rkhh]rlhUros/kinetic/thormang3_msgsrmhassh ˆh }rnhh}rohh}rphh]rqhU.ros-kinetic-thormang3-head-control-module-msgsrrhasssuUyocs_ar_pair_approachrsh}rth(h}ruhh}rvhh]rwhUros/kinetic/yujin_ocsrxhassh ˆh }ryhh}rzhh}r{hh]r|hU!ros-kinetic-yocs-ar-pair-approachr}hasssuU ros_controlr~h}rh(h}r€hh}rhh]r‚hUros/kinetic/ros_controlrƒhassh ˆh }r„hh}r…hh}r†hh]r‡hUros-kinetic-ros-controlrˆhasssuUgrid_map_rviz_pluginr‰h}rŠh(h}r‹hh}rŒhh]rhUros/kinetic/grid_maprŽhassh ˆh }rhh}rhh}r‘hh]r’hU ros-kinetic-grid-map-rviz-pluginr“hasssuUimage_transportr”h}r•h(h}r–hh}r—hh]r˜hUros/kinetic/image_commonr™hassh ˆh }ršhh}r›hh}rœhh]rhUros-kinetic-image-transportržhasssuUtowr_rosrŸh}r h(h}r¡hh}r¢hh]r£hUros/kinetic/towrr¤hassh ˆh }r¥hh}r¦hh}r§hh]r¨hUros-kinetic-towr-rosr©hasssuUcommon_tutorialsrªh}r«h(h}r¬hh}r­hh]r®hUros/kinetic/common_tutorialsr¯hassh ˆh }r°hh}r±hh}r²hh]r³hUros-kinetic-common-tutorialsr´hasssuUros_commrµh}r¶h(h}r·hh}r¸hh]r¹hUros/kinetic/ros_commrºhassh ˆh }r»hh}r¼hh}r½hh]r¾hUros-kinetic-ros-commr¿hasssuUdistance_map_rvizrÀh}rÁh(h}rÂhh}rÃhh]rÄhUros/kinetic/distance_maprÅhassh ˆh }rÆhh}rÇhh}rÈhh]rÉhUros-kinetic-distance-map-rvizrÊhasssuUrosbridge_libraryrËh}rÌh(h}rÍhh}rÎhh]rÏhUros/kinetic/rosbridge_suiterÐhassh ˆh }rÑhh}rÒhh}rÓhh]rÔhUros-kinetic-rosbridge-libraryrÕhasssuUtile_maprÖh}r×h(h}rØhh}rÙhh]rÚhUros/kinetic/mapvizrÛhassh ˆh }rÜhh}rÝhh}rÞhh]rßhUros-kinetic-tile-mapràhasssuUfetch_ikfast_pluginráh}râh(h}rãhh}rähh]råhUros/kinetic/fetch_rosræhassh ˆh }rçhh}rèhh}réhh]rêhUros-kinetic-fetch-ikfast-pluginrëhasssuUcob_helper_toolsrìh}ríh(h}rîhh}rïhh]rðhUros/kinetic/cob_command_toolsrñhassh ˆh }ròhh}róhh}rôhh]rõhUros-kinetic-cob-helper-toolsröhasssuUtf_conversionsr÷h}røh(h}rùhh}rúhh]rûhUros/kinetic/geometryrühassh ˆh }rýhh}rþhh}rÿhh]riUros-kinetic-tf-conversionsriasssuUxiaoqiang_descriptionri}ri(h}rih}rih]riUros/kinetic/xiaoqiangriassh ˆh }rih}r ih}r ih]r iU!ros-kinetic-xiaoqiang-descriptionr iasssuUdynamic_reconfigurer i}ri(h}rih}rih]riUros/kinetic/dynamic_reconfigureriassh ˆh }rih}rih}rih]riUros-kinetic-dynamic-reconfigureriasssuUueyeri}ri(h}rih}rih]riUros/kinetic/ueyeriassh ˆh }rih}rih}r ih]r!iUros-kinetic-ueyer"iasssuUtwist_mux_msgsr#i}r$i(h}r%ih}r&ih]r'iUros/kinetic/twist_mux_msgsr(iassh ˆh }r)ih}r*ih}r+ih]r,iUros-kinetic-twist-mux-msgsr-iasssuUkobuki_random_walkerr.i}r/i(h}r0ih}r1ih]r2iUros/kinetic/kobukir3iassh ˆh }r4ih}r5ih}r6ih]r7iU ros-kinetic-kobuki-random-walkerr8iasssuUcmd_vel_smootherr9i}r:i(h}r;ih}riassh ˆh }r?ih}r@ih}rAih]rBiUros-kinetic-cmd-vel-smootherrCiasssuUcob_moveit_configrDi}rEi(h}rFih}rGih]rHiUros/kinetic/cob_robotsrIiassh ˆh }rJih}rKih}rLih]rMiUros-kinetic-cob-moveit-configrNiasssuUimu_sensor_controllerrOi}rPi(h}rQih}rRih]rSiUros/kinetic/ros_controllersrTiassh ˆh }rUih}rVih}rWih]rXiU!ros-kinetic-imu-sensor-controllerrYiasssuUfanuc_cr35ia_supportrZi}r[i(h}r\ih}r]ih]r^iUros/kinetic/fanucr_iassh ˆh }r`ih}raih}rbih]rciU ros-kinetic-fanuc-cr35ia-supportrdiasssuUop3_head_control_modulerei}rfi(h}rgih}rhih]riiUros/kinetic/robotis_op3rjiassh ˆh }rkih}rlih}rmih]rniU#ros-kinetic-op3-head-control-moduleroiasssuUthormang3_action_editorrpi}rqi(h}rrih}rsih]rtiUros/kinetic/thormang3_toolsruiassh ˆh }rvih}rwih}rxih]ryiU#ros-kinetic-thormang3-action-editorrziasssuUprbt_hardware_supportr{i}r|i(h}r}ih}r~ih]riUros/kinetic/pilz_robotsr€iassh ˆh }rih}r‚ih}rƒih]r„iU!ros-kinetic-prbt-hardware-supportr…iasssuU ecl_configr†i}r‡i(h}rˆih}r‰ih]rŠiUros/kinetic/ecl_liter‹iassh ˆh }rŒih}rih}rŽih]riUros-kinetic-ecl-configriasssuU p2os_urdfr‘i}r’i(h}r“ih}r”ih]r•iUros/kinetic/p2osr–iassh ˆh }r—ih}r˜ih}r™ih]ršiUros-kinetic-p2os-urdfr›iasssuUqt_buildrœi}ri(h}ržih}rŸih]r iUros/kinetic/qt_rosr¡iassh ˆh }r¢ih}r£ih}r¤ih]r¥iUros-kinetic-qt-buildr¦iasssuUnetwork_detectorr§i}r¨i(h}r©ih}rªih]r«iUros/kinetic/linux_networkingr¬iassh ˆh }r­ih}r®ih}r¯ih]r°iUros-kinetic-network-detectorr±iasssuUfanuc_lrmate200ib_supportr²i}r³i(h}r´ih}rµih]r¶iUros/kinetic/fanucr·iassh ˆh }r¸ih}r¹ih}rºih]r»iU%ros-kinetic-fanuc-lrmate200ib-supportr¼iasssuUecl_statisticsr½i}r¾i(h}r¿ih}rÀih]rÁiUros/kinetic/ecl_corerÂiassh ˆh }rÃih}rÄih}rÅih]rÆiUros-kinetic-ecl-statisticsrÇiasssuUyocs_navigatorrÈi}rÉi(h}rÊih}rËih]rÌiUros/kinetic/yujin_ocsrÍiassh ˆh }rÎih}rÏih}rÐih]rÑiUros-kinetic-yocs-navigatorrÒiasssuUmoveit_planners_chomprÓi}rÔi(h}rÕih}rÖih]r×iUros/kinetic/moveitrØiassh ˆh }rÙih}rÚih}rÛih]rÜiU!ros-kinetic-moveit-planners-chomprÝiasssuUmbf_abstract_navrÞi}rßi(h}ràih}ráih]râiUros/kinetic/move_base_flexrãiassh ˆh }räih}råih}ræih]rçiUros-kinetic-mbf-abstract-navrèiasssuUgrid_map_octomapréi}rêi(h}rëih}rìih]ríiUros/kinetic/grid_maprîiassh ˆh }rïih}rðih}rñih]ròiUros-kinetic-grid-map-octomapróiasssuU urdf_testrôi}rõi(h}röih}r÷ih]røiUros/kinetic/urdf_testrùiassh ˆh }rúih}rûih}rüih]rýiUros-kinetic-urdf-testrþiasssuUwebuirÿi}rj(h}rjh}rjh]rjUros/kinetic/web_interfacerjassh ˆh }rjh}rjh}rjh]rjUros-kinetic-webuir jasssuUobject_recognition_rosr j}r j(h}r jh}r jh]rjU"ros/kinetic/object_recognition_rosrjassh ˆh }rjh}rjh}rjh]rjU"ros-kinetic-object-recognition-rosrjasssuU grid_map_msgsrj}rj(h}rjh}rjh]rjUros/kinetic/grid_maprjassh ˆh }rjh}rjh}rjh]rjUros-kinetic-grid-map-msgsrjasssuU sns_ik_libr j}r!j(h}r"jh}r#jh]r$jUros/kinetic/sns-ikr%jassh ˆh }r&jh}r'jh}r(jh]r)jUros-kinetic-sns-ik-libr*jasssuUgrizzly_gazebor+j}r,j(h}r-jh}r.jh]r/jUros/kinetic/grizzly_simulatorr0jassh ˆh }r1jh}r2jh}r3jh]r4jUros-kinetic-grizzly-gazebor5jasssuUseed_smartactuator_sdkr6j}r7j(h}r8jh}r9jh]r:jU"ros/kinetic/seed_smartactuator_sdkr;jassh ˆh }rjh]r?jU"ros-kinetic-seed-smartactuator-sdkr@jasssuUnav2d_operatorrAj}rBj(h}rCjh}rDjh]rEjUros/kinetic/navigation_2drFjassh ˆh }rGjh}rHjh}rIjh]rJjUros-kinetic-nav2d-operatorrKjasssuU swri_rospyrLj}rMj(h}rNjh}rOjh]rPjUros/kinetic/marti_commonrQjassh ˆh }rRjh}rSjh}rTjh]rUjUros-kinetic-swri-rospyrVjasssuUros_madplay_playerrWj}rXj(h}rYjh}rZjh]r[jUros/kinetic/robotis_utilityr\jassh ˆh }r]jh}r^jh}r_jh]r`jUros-kinetic-ros-madplay-playerrajasssuUur5_moveit_configrbj}rcj(h}rdjh}rejh]rfjUros/kinetic/universal_robotrgjassh ˆh }rhjh}rijh}rjjh]rkjUros-kinetic-ur5-moveit-configrljasssuUroswebrmj}rnj(h}rojh}rpjh]rqjUros/kinetic/web_interfacerrjassh ˆh }rsjh}rtjh}rujh]rvjUros-kinetic-roswebrwjasssuU capabilitiesrxj}ryj(h}rzjh}r{jh]r|jUros/kinetic/capabilitiesr}jassh ˆh }r~jh}rjh}r€jh]rjUros-kinetic-capabilitiesr‚jasssuU magni_navrƒj}r„j(h}r…jh}r†jh]r‡jUros/kinetic/magni_robotrˆjassh ˆh }r‰jh}rŠjh}r‹jh]rŒjUros-kinetic-magni-navrjasssuUrosbuildrŽj}rj(h}rjh}r‘jh]r’jUros/kinetic/rosr“jassh ˆh }r”jh}r•jh}r–jh]r—jUros-kinetic-rosbuildr˜jasssuU prbt_grippersr™j}ršj(h}r›jh}rœjh]rjUros/kinetic/prbt_grippersržjassh ˆh }rŸjh}r jh}r¡jh]r¢jUros-kinetic-prbt-grippersr£jasssuU qt_gui_cppr¤j}r¥j(h}r¦jh}r§jh]r¨jUros/kinetic/qt_gui_corer©jassh ˆh }rªjh}r«jh}r¬jh]r­jUros-kinetic-qt-gui-cppr®jasssuUhector_worldmodel_msgsr¯j}r°j(h}r±jh}r²jh]r³jUros/kinetic/hector_worldmodelr´jassh ˆh }rµjh}r¶jh}r·jh]r¸jU"ros-kinetic-hector-worldmodel-msgsr¹jasssuUrb1_base_purepursuitrºj}r»j(h}r¼jh}r½jh]r¾jUros/kinetic/rb1_base_simr¿jassh ˆh }rÀjh}rÁjh}rÂjh]rÃjU ros-kinetic-rb1-base-purepursuitrÄjasssuUroslangrÅj}rÆj(h}rÇjh}rÈjh]rÉjUros/kinetic/rosrÊjassh ˆh }rËjh}rÌjh}rÍjh]rÎjUros-kinetic-roslangrÏjasssuUlibmongocxx_rosrÐj}rÑj(h}rÒjh}rÓjh]rÔjUros/kinetic/mongodb_storerÕjassh ˆh }rÖjh}r×jh}rØjh]rÙjUros-kinetic-libmongocxx-rosrÚjasssuU cl_transformsrÛj}rÜj(h}rÝjh}rÞjh]rßjUros/kinetic/roslisp_commonràjassh ˆh }rájh}râjh}rãjh]räjUros-kinetic-cl-transformsråjasssuU rdl_ros_toolsræj}rçj(h}rèjh}réjh]rêjUros/kinetic/rdlrëjassh ˆh }rìjh}ríjh}rîjh]rïjUros-kinetic-rdl-ros-toolsrðjasssuUbehaviortree_cpp_v3rñj}ròj(h}rójh}rôjh]rõjUros/kinetic/behaviotree_cpp_v3röjassh ˆh }r÷jh}røjh}rùjh]rújUros-kinetic-behaviortree-cpp-v3rûjasssuU mir_gazeborüj}rýj(h}rþjh}rÿjh]rkUros/kinetic/mir_robotrkassh ˆh }rkh}rkh}rkh]rkUros-kinetic-mir-gazeborkasssuUdbw_mkz_twist_controllerrk}rk(h}r kh}r kh]r kUros/kinetic/dbw_mkz_rosr kassh ˆh }r kh}rkh}rkh]rkU$ros-kinetic-dbw-mkz-twist-controllerrkasssuUjoint_trajectory_actionrk}rk(h}rkh}rkh]rkUros/kinetic/pr2_controllersrkassh ˆh }rkh}rkh}rkh]rkU#ros-kinetic-joint-trajectory-actionrkasssuUh264_video_encoderrk}rk(h}rkh}r kh]r!kUros/kinetic/h264_video_encoderr"kassh ˆh }r#kh}r$kh}r%kh]r&kUros-kinetic-h264-video-encoderr'kasssuUconcert_service_msgsr(k}r)k(h}r*kh}r+kh]r,kUros/kinetic/rocon_msgsr-kassh ˆh }r.kh}r/kh}r0kh]r1kU ros-kinetic-concert-service-msgsr2kasssuUflexbe_testingr3k}r4k(h}r5kh}r6kh]r7kUros/kinetic/flexber8kassh ˆh }r9kh}r:kh}r;kh]rk}r?k(h}r@kh}rAkh]rBkUros/kinetic/qb_moverCkassh ˆh }rDkh}rEkh}rFkh]rGkUros-kinetic-qb-move-descriptionrHkasssuUcontrol_toolboxrIk}rJk(h}rKkh}rLkh]rMkUros/kinetic/control_toolboxrNkassh ˆh }rOkh}rPkh}rQkh]rRkUros-kinetic-control-toolboxrSkasssuU lauv_controlrTk}rUk(h}rVkh}rWkh]rXkUros/kinetic/lauv_gazeborYkassh ˆh }rZkh}r[kh}r\kh]r]kUros-kinetic-lauv-controlr^kasssuUrtt_actionlib_msgsr_k}r`k(h}rakh}rbkh]rckUros/kinetic/rtt_ros_integrationrdkassh ˆh }rekh}rfkh}rgkh]rhkUros-kinetic-rtt-actionlib-msgsrikasssuU pcdfilter_parjk}rkk(h}rlkh}rmkh]rnkUros/kinetic/pcdfilter_parokassh ˆh }rpkh}rqkh}rrkh]rskUros-kinetic-pcdfilter-partkasssuUcob_camera_sensorsruk}rvk(h}rwkh}rxkh]rykUros/kinetic/cob_driverrzkassh ˆh }r{kh}r|kh}r}kh]r~kUros-kinetic-cob-camera-sensorsrkasssuUmrpt_rbpf_slamr€k}rk(h}r‚kh}rƒkh]r„kUros/kinetic/mrpt_slamr…kassh ˆh }r†kh}r‡kh}rˆkh]r‰kUros-kinetic-mrpt-rbpf-slamrŠkasssuUcob_cam3d_throttler‹k}rŒk(h}rkh}rŽkh]rkU!ros/kinetic/cob_perception_commonrkassh ˆh }r‘kh}r’kh}r“kh]r”kUros-kinetic-cob-cam3d-throttler•kasssuUspeech_recognition_msgsr–k}r—k(h}r˜kh}r™kh]rškUros/kinetic/jsk_common_msgsr›kassh ˆh }rœkh}rkh}ržkh]rŸkU#ros-kinetic-speech-recognition-msgsr kasssuUridgeback_msgsr¡k}r¢k(h}r£kh}r¤kh]r¥kUros/kinetic/ridgebackr¦kassh ˆh }r§kh}r¨kh}r©kh]rªkUros-kinetic-ridgeback-msgsr«kasssuUcob_mapping_slamr¬k}r­k(h}r®kh}r¯kh]r°kUros/kinetic/cob_navigationr±kassh ˆh }r²kh}r³kh}r´kh]rµkUros-kinetic-cob-mapping-slamr¶kasssuUrosfmtr·k}r¸k(h}r¹kh}rºkh]r»kUros/kinetic/rosfmtr¼kassh ˆh }r½kh}r¾kh}r¿kh]rÀkUros-kinetic-rosfmtrÁkasssuUactionlib_msgsrÂk}rÃk(h}rÄkh}rÅkh]rÆkUros/kinetic/common_msgsrÇkassh ˆh }rÈkh}rÉkh}rÊkh]rËkUros-kinetic-actionlib-msgsrÌkasssuUcloudwatch_metrics_commonrÍk}rÎk(h}rÏkh}rÐkh]rÑkUros/kinetic/cloudwatch_commonrÒkassh ˆh }rÓkh}rÔkh}rÕkh]rÖkU%ros-kinetic-cloudwatch-metrics-commonr×kasssuUrobot_calibration_msgsrØk}rÙk(h}rÚkh}rÛkh]rÜkUros/kinetic/robot_calibrationrÝkassh ˆh }rÞkh}rßkh}ràkh]rákU"ros-kinetic-robot-calibration-msgsrâkasssuUrqtrãk}räk(h}råkh}rækh]rçkUros/kinetic/rqtrèkassh ˆh }rékh}rêkh}rëkh]rìkUros-kinetic-rqtríkasssuUxiaoqiang_msgsrîk}rïk(h}rðkh}rñkh]ròkUros/kinetic/xiaoqiangrókassh ˆh }rôkh}rõkh}rökh]r÷kUros-kinetic-xiaoqiang-msgsrøkasssuUpointgrey_camera_driverrùk}rúk(h}rûkh}rükh]rýkU#ros/kinetic/pointgrey_camera_driverrþkassh ˆh }rÿkh}rlh}rlh]rlU#ros-kinetic-pointgrey-camera-driverrlasssuUnao_interaction_msgsrl}rl(h}rlh}rlh]rlUros/kinetic/nao_interactionr lassh ˆh }r lh}r lh}r lh]r lU ros-kinetic-nao-interaction-msgsrlasssuUrocon_std_msgsrl}rl(h}rlh}rlh]rlUros/kinetic/rocon_msgsrlassh ˆh }rlh}rlh}rlh]rlUros-kinetic-rocon-std-msgsrlasssuUrosflight_utilsrl}rl(h}rlh}rlh]rlUros/kinetic/rosflightrlassh ˆh }r lh}r!lh}r"lh]r#lUros-kinetic-rosflight-utilsr$lasssuUxiaoqiang_serverr%l}r&l(h}r'lh}r(lh]r)lUros/kinetic/xiaoqiangr*lassh ˆh }r+lh}r,lh}r-lh]r.lUros-kinetic-xiaoqiang-serverr/lasssuU ntpd_driverr0l}r1l(h}r2lh}r3lh]r4lUros/kinetic/ntpd_driverr5lassh ˆh }r6lh}r7lh}r8lh]r9lUros-kinetic-ntpd-driverr:lasssuUhrpsys_ros_bridger;l}rlh]r?lUros/kinetic/rtmros_commonr@lassh ˆh }rAlh}rBlh}rClh]rDlUros-kinetic-hrpsys-ros-bridgerElasssuUhomer_robot_facerFl}rGl(h}rHlh}rIlh]rJlUros/kinetic/homer_robot_facerKlassh ˆh }rLlh}rMlh}rNlh]rOlUros-kinetic-homer-robot-facerPlasssuUindustrial_trajectory_filtersrQl}rRl(h}rSlh}rTlh]rUlUros/kinetic/industrial_corerVlassh ˆh }rWlh}rXlh}rYlh]rZlU)ros-kinetic-industrial-trajectory-filtersr[lasssuUgencppr\l}r]l(h}r^lh}r_lh]r`lUros/kinetic/gencppralassh ˆh }rblh}rclh}rdlh]relUros-kinetic-gencpprflasssuUcob_linear_navrgl}rhl(h}rilh}rjlh]rklUros/kinetic/cob_navigationrllassh ˆh }rmlh}rnlh}rolh]rplUros-kinetic-cob-linear-navrqlasssuU roomblockrrl}rsl(h}rtlh}rulh]rvlUros/kinetic/roomblockrwlassh ˆh }rxlh}rylh}rzlh]r{lUros-kinetic-roomblockr|lasssuUlinux_networkingr}l}r~l(h}rlh}r€lh]rlUros/kinetic/linux_networkingr‚lassh ˆh }rƒlh}r„lh}r…lh]r†lUros-kinetic-linux-networkingr‡lasssuUturtlebot_capabilitiesrˆl}r‰l(h}rŠlh}r‹lh]rŒlUros/kinetic/turtlebotrlassh ˆh }rŽlh}rlh}rlh]r‘lU"ros-kinetic-turtlebot-capabilitiesr’lasssuU jsk_toolsr“l}r”l(h}r•lh}r–lh]r—lUros/kinetic/jsk_commonr˜lassh ˆh }r™lh}ršlh}r›lh]rœlUros-kinetic-jsk-toolsrlasssuU jsk_ik_serverržl}rŸl(h}r lh}r¡lh]r¢lUros/kinetic/jsk_controlr£lassh ˆh }r¤lh}r¥lh}r¦lh]r§lUros-kinetic-jsk-ik-serverr¨lasssuUnav2d_localizerr©l}rªl(h}r«lh}r¬lh]r­lUros/kinetic/navigation_2dr®lassh ˆh }r¯lh}r°lh}r±lh]r²lUros-kinetic-nav2d-localizerr³lasssuU grid_map_sdfr´l}rµl(h}r¶lh}r·lh]r¸lUros/kinetic/grid_mapr¹lassh ˆh }rºlh}r»lh}r¼lh]r½lUros-kinetic-grid-map-sdfr¾lasssuUros_environmentr¿l}rÀl(h}rÁlh}rÂlh]rÃlUros/kinetic/ros_environmentrÄlassh ˆh }rÅlh}rÆlh}rÇlh]rÈlUros-kinetic-ros-environmentrÉlasssuUlauv_descriptionrÊl}rËl(h}rÌlh}rÍlh]rÎlUros/kinetic/lauv_gazeborÏlassh ˆh }rÐlh}rÑlh}rÒlh]rÓlUros-kinetic-lauv-descriptionrÔlasssuUteleop_twist_keyboardrÕl}rÖl(h}r×lh}rØlh]rÙlU!ros/kinetic/teleop_twist_keyboardrÚlassh ˆh }rÛlh}rÜlh}rÝlh]rÞlU!ros-kinetic-teleop-twist-keyboardrßlasssuU look_at_poseràl}rál(h}râlh}rãlh]rälUros/kinetic/look_at_poserålassh ˆh }rælh}rçlh}rèlh]rélUros-kinetic-look-at-poserêlasssuU rqt_nav_viewrël}rìl(h}rílh}rîlh]rïlUros/kinetic/rqt_nav_viewrðlassh ˆh }rñlh}ròlh}rólh]rôlUros-kinetic-rqt-nav-viewrõlasssuUroslintröl}r÷l(h}rølh}rùlh]rúlUros/kinetic/roslintrûlassh ˆh }rülh}rýlh}rþlh]rÿlUros-kinetic-roslintrmasssuUfanuc_resourcesrm}rm(h}rmh}rmh]rmUros/kinetic/fanucrmassh ˆh }rmh}rmh}r mh]r mUros-kinetic-fanuc-resourcesr masssuUhector_gazebo_thermal_camerar m}r m(h}rmh}rmh]rmUros/kinetic/hector_gazebormassh ˆh }rmh}rmh}rmh]rmU(ros-kinetic-hector-gazebo-thermal-camerarmasssuUstagerm}rm(h}rmh}rmh]rmUros/kinetic/stagermassh ˆh }rmh}rmh}rmh]r mUros-kinetic-stager!masssuUgx_sound_playerr"m}r#m(h}r$mh}r%mh]r&mUros/kinetic/gx_soundr'massh ˆh }r(mh}r)mh}r*mh]r+mUros-kinetic-gx-sound-playerr,masssuU roomba_stager-m}r.m(h}r/mh}r0mh]r1mU ros/kinetic/navigation_tutorialsr2massh ˆh }r3mh}r4mh}r5mh]r6mUros-kinetic-roomba-stager7masssuUnovatel_span_driverr8m}r9m(h}r:mh}r;mh]rmh}r?mh}r@mh]rAmUros-kinetic-novatel-span-driverrBmasssuU canopen_402rCm}rDm(h}rEmh}rFmh]rGmUros/kinetic/ros_canopenrHmassh ˆh }rImh}rJmh}rKmh]rLmUros-kinetic-canopen-402rMmasssuUpddl_planner_viewerrNm}rOm(h}rPmh}rQmh]rRmUros/kinetic/jsk_planningrSmassh ˆh }rTmh}rUmh}rVmh]rWmUros-kinetic-pddl-planner-viewerrXmasssuUroswwwrYm}rZm(h}r[mh}r\mh]r]mUros/kinetic/roswwwr^massh ˆh }r_mh}r`mh}ramh]rbmUros-kinetic-roswwwrcmasssuUnetwork_autoconfigrdm}rem(h}rfmh}rgmh]rhmUros/kinetic/network_autoconfigrimassh ˆh }rjmh}rkmh}rlmh]rmmUros-kinetic-network-autoconfigrnmasssuU rtt_ros_msgsrom}rpm(h}rqmh}rrmh]rsmUros/kinetic/rtt_ros_integrationrtmassh ˆh }rumh}rvmh}rwmh]rxmUros-kinetic-rtt-ros-msgsrymasssuU ros_reflexxesrzm}r{m(h}r|mh}r}mh]r~mUros/kinetic/ipr_externrmassh ˆh }r€mh}rmh}r‚mh]rƒmUros-kinetic-ros-reflexxesr„masssuUcob_android_settingsr…m}r†m(h}r‡mh}rˆmh]r‰mUros/kinetic/cob_androidrŠmassh ˆh }r‹mh}rŒmh}rmh]rŽmU ros-kinetic-cob-android-settingsrmasssuU mm_eigen_msgsrm}r‘m(h}r’mh}r“mh]r”mU ros/kinetic/message_multiplexingr•massh ˆh }r–mh}r—mh}r˜mh]r™mUros-kinetic-mm-eigen-msgsršmasssuUcob_android_resource_serverr›m}rœm(h}rmh}ržmh]rŸmUros/kinetic/cob_androidr massh ˆh }r¡mh}r¢mh}r£mh]r¤mU'ros-kinetic-cob-android-resource-serverr¥masssuUrqt_joint_trajectory_plotr¦m}r§m(h}r¨mh}r©mh]rªmU%ros/kinetic/rqt_joint_trajectory_plotr«massh ˆh }r¬mh}r­mh}r®mh]r¯mU%ros-kinetic-rqt-joint-trajectory-plotr°masssuU heron_desktopr±m}r²m(h}r³mh}r´mh]rµmUros/kinetic/heron_desktopr¶massh ˆh }r·mh}r¸mh}r¹mh]rºmUros-kinetic-heron-desktopr»masssuUcob_command_guir¼m}r½m(h}r¾mh}r¿mh]rÀmUros/kinetic/cob_command_toolsrÁmassh ˆh }rÂmh}rÃmh}rÄmh]rÅmUros-kinetic-cob-command-guirÆmasssuUmarti_sensor_msgsrÇm}rÈm(h}rÉmh}rÊmh]rËmUros/kinetic/marti_messagesrÌmassh ˆh }rÍmh}rÎmh}rÏmh]rÐmUros-kinetic-marti-sensor-msgsrÑmasssuUnetwork_control_testsrÒm}rÓm(h}rÔmh}rÕmh]rÖmUros/kinetic/linux_networkingr×massh ˆh }rØmh}rÙmh}rÚmh]rÛmU!ros-kinetic-network-control-testsrÜmasssuUlibqsoptrÝm}rÞm(h}rßmh}ràmh]rámU#ros/kinetic/cob_extern_unmaintainedrâmassh ˆh }rãmh}rämh}råmh]ræmUros-kinetic-libqsoptrçmasssuU sesame_rosrèm}rém(h}rêmh}rëmh]rìmUros/kinetic/jsk_3rdpartyrímassh ˆh }rîmh}rïmh}rðmh]rñmUros-kinetic-sesame-rosròmasssuU katana_msgsróm}rôm(h}rõmh}römh]r÷mUros/kinetic/katana_driverrømassh ˆh }rùmh}rúmh}rûmh]rümUros-kinetic-katana-msgsrýmasssuUcob_scan_unifierrþm}rÿm(h}rnh}rnh]rnUros/kinetic/cob_driverrnassh ˆh }rnh}rnh}rnh]rnUros-kinetic-cob-scan-unifierrnasssuU rodi_robotr n}r n(h}r nh}r nh]r nUros/kinetic/rodi_robotrnassh ˆh }rnh}rnh}rnh]rnUros-kinetic-rodi-robotrnasssuUmoveit_ros_manipulationrn}rn(h}rnh}rnh]rnUros/kinetic/moveitrnassh ˆh }rnh}rnh}rnh]rnU#ros-kinetic-moveit-ros-manipulationrnasssuU rosbag_pandasrn}r n(h}r!nh}r"nh]r#nUros/kinetic/rosbag_pandasr$nassh ˆh }r%nh}r&nh}r'nh]r(nUros-kinetic-rosbag-pandasr)nasssuU loki_demosr*n}r+n(h}r,nh}r-nh]r.nUros/kinetic/loki_robotr/nassh ˆh }r0nh}r1nh}r2nh]r3nUros-kinetic-loki-demosr4nasssuU rtmros_commonr5n}r6n(h}r7nh}r8nh]r9nUros/kinetic/rtmros_commonr:nassh ˆh }r;nh}rnUros-kinetic-rtmros-commonr?nasssuU swri_nodeletr@n}rAn(h}rBnh}rCnh]rDnUros/kinetic/marti_commonrEnassh ˆh }rFnh}rGnh}rHnh]rInUros-kinetic-swri-nodeletrJnasssuUqb_move_hardware_interfacerKn}rLn(h}rMnh}rNnh]rOnUros/kinetic/qb_moverPnassh ˆh }rQnh}rRnh}rSnh]rTnU&ros-kinetic-qb-move-hardware-interfacerUnasssuUarbotix_pythonrVn}rWn(h}rXnh}rYnh]rZnUros/kinetic/arbotixr[nassh ˆh }r\nh}r]nh}r^nh]r_nUros-kinetic-arbotix-pythonr`nasssuUrosserial_leonardo_cmakeran}rbn(h}rcnh}rdnh]renU$ros/kinetic/rosserial_leonardo_cmakerfnassh ˆh }rgnh}rhnh}rinh]rjnU$ros-kinetic-rosserial-leonardo-cmakerknasssuUpr2_msgsrln}rmn(h}rnnh}ronh]rpnUros/kinetic/pr2_commonrqnassh ˆh }rrnh}rsnh}rtnh]runUros-kinetic-pr2-msgsrvnasssuUmoveit_plannersrwn}rxn(h}rynh}rznh]r{nUros/kinetic/moveitr|nassh ˆh }r}nh}r~nh}rnh]r€nUros-kinetic-moveit-plannersrnasssuUdesistek_saga_gazebor‚n}rƒn(h}r„nh}r…nh]r†nUros/kinetic/desistek_sagar‡nassh ˆh }rˆnh}r‰nh}rŠnh]r‹nU ros-kinetic-desistek-saga-gazeborŒnasssuU code_coveragern}rŽn(h}rnh}rnh]r‘nUros/kinetic/code_coverager’nassh ˆh }r“nh}r”nh}r•nh]r–nUros-kinetic-code-coverager—nasssuUtwist_recoveryr˜n}r™n(h}ršnh}r›nh]rœnU#ros/kinetic/navigation_experimentalrnassh ˆh }ržnh}rŸnh}r nh]r¡nUros-kinetic-twist-recoveryr¢nasssuUuuv_plume_msgsr£n}r¤n(h}r¥nh}r¦nh]r§nUros/kinetic/uuv_plume_simulatorr¨nassh ˆh }r©nh}rªnh}r«nh]r¬nUros-kinetic-uuv-plume-msgsr­nasssuUturtlebot_simulatorr®n}r¯n(h}r°nh}r±nh]r²nUros/kinetic/turtlebot_simulatorr³nassh ˆh }r´nh}rµnh}r¶nh]r·nUros-kinetic-turtlebot-simulatorr¸nasssuUodometry_publisher_tutorialr¹n}rºn(h}r»nh}r¼nh]r½nU ros/kinetic/navigation_tutorialsr¾nassh ˆh }r¿nh}rÀnh}rÁnh]rÂnU'ros-kinetic-odometry-publisher-tutorialrÃnasssuUgeneric_throttlerÄn}rÅn(h}rÆnh}rÇnh]rÈnUros/kinetic/cob_command_toolsrÉnassh ˆh }rÊnh}rËnh}rÌnh]rÍnUros-kinetic-generic-throttlerÎnasssuU cob_actionsrÏn}rÐn(h}rÑnh}rÒnh]rÓnUros/kinetic/cob_commonrÔnassh ˆh }rÕnh}rÖnh}r×nh]rØnUros-kinetic-cob-actionsrÙnasssuUrosflight_pkgsrÚn}rÛn(h}rÜnh}rÝnh]rÞnUros/kinetic/rosflightrßnassh ˆh }rành}ránh}rânh]rãnUros-kinetic-rosflight-pkgsränasssuUbaggerrån}ræn(h}rçnh}rènh]rénUros/kinetic/baggerrênassh ˆh }rënh}rình}rính]rînUros-kinetic-baggerrïnasssuUmultirobot_map_mergerðn}rñn(h}rònh}rónh]rônUros/kinetic/m_explorerõnassh ˆh }rönh}r÷nh}rønh]rùnU ros-kinetic-multirobot-map-mergerúnasssuUrospilotrûn}rün(h}rýnh}rþnh]rÿnUros/kinetic/rospilotroassh ˆh }roh}roh}roh]roUros-kinetic-rospilotroasssuUop3_direct_control_modulero}ro(h}roh}r oh]r oUros/kinetic/robotis_op3r oassh ˆh }r oh}r oh}roh]roU%ros-kinetic-op3-direct-control-moduleroasssuUmultimaster_launchro}ro(h}roh}roh]roU!ros/kinetic/cpr_multimaster_toolsroassh ˆh }roh}roh}roh]roUros-kinetic-multimaster-launchroasssuUuuv_thruster_managerro}ro(h}roh}roh]r oUros/kinetic/uuv_simulatorr!oassh ˆh }r"oh}r#oh}r$oh]r%oU ros-kinetic-uuv-thruster-managerr&oasssuUuuv_gazebo_ros_pluginsr'o}r(o(h}r)oh}r*oh]r+oUros/kinetic/uuv_simulatorr,oassh ˆh }r-oh}r.oh}r/oh]r0oU"ros-kinetic-uuv-gazebo-ros-pluginsr1oasssuU dbw_mkz_canr2o}r3o(h}r4oh}r5oh]r6oUros/kinetic/dbw_mkz_rosr7oassh ˆh }r8oh}r9oh}r:oh]r;oUros-kinetic-dbw-mkz-canro(h}r?oh}r@oh]rAoUros/kinetic/cob_robotsrBoassh ˆh }rCoh}rDoh}rEoh]rFoUros-kinetic-cob-hardware-configrGoasssuUros_ethercat_emlrHo}rIo(h}rJoh}rKoh]rLoUros/kinetic/ros_ethercat_emlrMoassh ˆh }rNoh}rOoh}rPoh]rQoUros-kinetic-ros-ethercat-emlrRoasssuU radar_msgsrSo}rTo(h}rUoh}rVoh]rWoUros/kinetic/astuff_sensor_msgsrXoassh ˆh }rYoh}rZoh}r[oh]r\oUros-kinetic-radar-msgsr]oasssuUjaguar_controlr^o}r_o(h}r`oh}raoh]rboUros/kinetic/jaguarrcoassh ˆh }rdoh}reoh}rfoh]rgoUros-kinetic-jaguar-controlrhoasssuUhusky_simulatorrio}rjo(h}rkoh}rloh]rmoUros/kinetic/huskyrnoassh ˆh }rooh}rpoh}rqoh]rroUros-kinetic-husky-simulatorrsoasssuUmrpt_localizationrto}ruo(h}rvoh}rwoh]rxoUros/kinetic/mrpt_navigationryoassh ˆh }rzoh}r{oh}r|oh]r}oUros-kinetic-mrpt-localizationr~oasssuU humanoid_msgsro}r€o(h}roh}r‚oh]rƒoUros/kinetic/humanoid_msgsr„oassh ˆh }r…oh}r†oh}r‡oh]rˆoUros-kinetic-humanoid-msgsr‰oasssuU ros_peerjsrŠo}r‹o(h}rŒoh}roh]rŽoUros/kinetic/ros_peerjsroassh ˆh }roh}r‘oh}r’oh]r“oUros-kinetic-ros-peerjsr”oasssuUrtt_visualization_msgsr•o}r–o(h}r—oh}r˜oh]r™oUros/kinetic/rtt_ros_integrationršoassh ˆh }r›oh}rœoh}roh]ržoU"ros-kinetic-rtt-visualization-msgsrŸoasssuUthormang3_manipulation_moduler o}r¡o(h}r¢oh}r£oh]r¤oUros/kinetic/thormang3_mpcr¥oassh ˆh }r¦oh}r§oh}r¨oh]r©oU)ros-kinetic-thormang3-manipulation-modulerªoasssuU clock_relayr«o}r¬o(h}r­oh}r®oh]r¯oU!ros/kinetic/cpr_multimaster_toolsr°oassh ˆh }r±oh}r²oh}r³oh]r´oUros-kinetic-clock-relayrµoasssuUpidr¶o}r·o(h}r¸oh}r¹oh]rºoUros/kinetic/pidr»oassh ˆh }r¼oh}r½oh}r¾oh]r¿oUros-kinetic-pidrÀoasssuUdynamic_tf_publisherrÁo}rÂo(h}rÃoh}rÄoh]rÅoUros/kinetic/jsk_commonrÆoassh ˆh }rÇoh}rÈoh}rÉoh]rÊoU ros-kinetic-dynamic-tf-publisherrËoasssuU imagezerorÌo}rÍo(h}rÎoh}rÏoh]rÐoUros/kinetic/imagezero_transportrÑoassh ˆh }rÒoh}rÓoh}rÔoh]rÕoUros-kinetic-imagezerorÖoasssuUypspurr×o}rØo(h}rÙoh}rÚoh]rÛoUros/kinetic/yp-spurrÜoassh ˆh }rÝoh}rÞoh}rßoh]ràoUros-kinetic-ypspurráoasssuU cmake_modulesrâo}rão(h}räoh}råoh]ræoUros/kinetic/cmake_modulesrçoassh ˆh }rèoh}réoh}rêoh]rëoUros-kinetic-cmake-modulesrìoasssuUnav_corerío}rîo(h}rïoh}rðoh]rñoUros/kinetic/navigationròoassh ˆh }róoh}rôoh}rõoh]röoUros-kinetic-nav-corer÷oasssuUopenni2_camerarøo}rùo(h}rúoh}rûoh]rüoUros/kinetic/openni2_camerarýoassh ˆh }rþoh}rÿoh}rph]rpUros-kinetic-openni2-camerarpasssuUcost_map_visualisationsrp}rp(h}rph}rph]rpUros/kinetic/cost_maprpassh ˆh }r ph}r ph}r ph]r pU#ros-kinetic-cost-map-visualisationsr passsuUmoveit_pluginsrp}rp(h}rph}rph]rpUros/kinetic/moveitrpassh ˆh }rph}rph}rph]rpUros-kinetic-moveit-pluginsrpasssuU kobuki_ftdirp}rp(h}rph}rph]rpUros/kinetic/kobuki_corerpassh ˆh }rph}r ph}r!ph]r"pUros-kinetic-kobuki-ftdir#passsuUrealsense_camerar$p}r%p(h}r&ph}r'ph]r(pUros/kinetic/realsense_camerar)passh ˆh }r*ph}r+ph}r,ph]r-pUros-kinetic-realsense-camerar.passsuUmoveit_ros_visualizationr/p}r0p(h}r1ph}r2ph]r3pUros/kinetic/moveitr4passh ˆh }r5ph}r6ph}r7ph]r8pU$ros-kinetic-moveit-ros-visualizationr9passsuU rosbag_editorr:p}r;p(h}rpUros/kinetic/rosbag_editorr?passh ˆh }r@ph}rAph}rBph]rCpUros-kinetic-rosbag-editorrDpasssuUnav2d_explorationrEp}rFp(h}rGph}rHph]rIpUros/kinetic/navigation_2drJpassh ˆh }rKph}rLph}rMph]rNpUros-kinetic-nav2d-explorationrOpasssuUhector_pose_estimationrPp}rQp(h}rRph}rSph]rTpUros/kinetic/hector_localizationrUpassh ˆh }rVph}rWph}rXph]rYpU"ros-kinetic-hector-pose-estimationrZpasssuU rbcar_commonr[p}r\p(h}r]ph}r^ph]r_pUros/kinetic/rbcar_commonr`passh ˆh }raph}rbph}rcph]rdpUros-kinetic-rbcar-commonrepasssuU calibrationrfp}rgp(h}rhph}riph]rjpUros/kinetic/calibrationrkpassh ˆh }rlph}rmph}rnph]ropUros-kinetic-calibrationrppasssuUzeroconf_avahirqp}rrp(h}rsph}rtph]rupU ros/kinetic/zeroconf_avahi_suitervpassh ˆh }rwph}rxph}ryph]rzpUros-kinetic-zeroconf-avahir{passsuUecl_manipulationr|p}r}p(h}r~ph}rph]r€pUros/kinetic/ecl_manipulationrpassh ˆh }r‚ph}rƒph}r„ph]r…pUros-kinetic-ecl-manipulationr†passsuUrtmbuildr‡p}rˆp(h}r‰ph}rŠph]r‹pUros/kinetic/rtmros_commonrŒpassh ˆh }rph}rŽph}rph]rpUros-kinetic-rtmbuildr‘passsuUturtlebot_stager’p}r“p(h}r”ph}r•ph]r–pUros/kinetic/turtlebot_simulatorr—passh ˆh }r˜ph}r™ph}ršph]r›pUros-kinetic-turtlebot-stagerœpasssuUlms1xxrp}ržp(h}rŸph}r ph]r¡pUros/kinetic/lms1xxr¢passh ˆh }r£ph}r¤ph}r¥ph]r¦pUros-kinetic-lms1xxr§passsuUrosflight_msgsr¨p}r©p(h}rªph}r«ph]r¬pUros/kinetic/rosflightr­passh ˆh }r®ph}r¯ph}r°ph]r±pUros-kinetic-rosflight-msgsr²passsuUabb_irb6640_supportr³p}r´p(h}rµph}r¶ph]r·pUros/kinetic/abbr¸passh ˆh }r¹ph}rºph}r»ph]r¼pUros-kinetic-abb-irb6640-supportr½passsuUcl_tf2r¾p}r¿p(h}rÀph}rÁph]rÂpUros/kinetic/roslisp_commonrÃpassh ˆh }rÄph}rÅph}rÆph]rÇpUros-kinetic-cl-tf2rÈpasssuUpr2_descriptionrÉp}rÊp(h}rËph}rÌph]rÍpUros/kinetic/pr2_commonrÎpassh ˆh }rÏph}rÐph}rÑph]rÒpUros-kinetic-pr2-descriptionrÓpasssuUcamera1394stereorÔp}rÕp(h}rÖph}r×ph]rØpUros/kinetic/camera1394stereorÙpassh ˆh }rÚph}rÛph}rÜph]rÝpUros-kinetic-camera1394stereorÞpasssuUassisted_teleoprßp}ràp(h}ráph}râph]rãpU#ros/kinetic/navigation_experimentalräpassh ˆh }råph}ræph}rçph]rèpUros-kinetic-assisted-teleoprépasssuUmessage_filtersrêp}rëp(h}rìph}ríph]rîpUros/kinetic/ros_commrïpassh ˆh }rðph}rñph}ròph]rópUros-kinetic-message-filtersrôpasssuU qt_gui_apprõp}röp(h}r÷ph}røph]rùpUros/kinetic/qt_gui_corerúpassh ˆh }rûph}rüph}rýph]rþpUros-kinetic-qt-gui-apprÿpasssuUunderwater_vehicle_dynamicsrq}rq(h}rqh}rqh]rqU!ros/kinetic/underwater_simulationrqassh ˆh }rqh}rqh}rqh]r qU'ros-kinetic-underwater-vehicle-dynamicsr qasssuU swri_profilerr q}r q(h}r qh}rqh]rqUros/kinetic/swri_profilerrqassh ˆh }rqh}rqh}rqh]rqUros-kinetic-swri-profilerrqasssuUpr2_dashboard_aggregatorrq}rq(h}rqh}rqh]rqUros/kinetic/pr2_commonrqassh ˆh }rqh}rqh}rqh]rqU$ros-kinetic-pr2-dashboard-aggregatorr qasssuUpal_hardware_interfacesr!q}r"q(h}r#qh}r$qh]r%qU#ros/kinetic/pal_hardware_interfacesr&qassh ˆh }r'qh}r(qh}r)qh]r*qU#ros-kinetic-pal-hardware-interfacesr+qasssuUtoposens_descriptionr,q}r-q(h}r.qh}r/qh]r0qUros/kinetic/toposensr1qassh ˆh }r2qh}r3qh}r4qh]r5qU ros-kinetic-toposens-descriptionr6qasssuUheron_descriptionr7q}r8q(h}r9qh}r:qh]r;qUros/kinetic/heronrqh}r?qh]r@qUros-kinetic-heron-descriptionrAqasssuUswarmrosrBq}rCq(h}rDqh}rEqh]rFqUros/kinetic/swarmrosrGqassh ˆh }rHqh}rIqh}rJqh]rKqUros-kinetic-swarmrosrLqasssuUbarrett_hand_commonrMq}rNq(h}rOqh}rPqh]rQqUros/kinetic/barrett_hand_commonrRqassh ˆh }rSqh}rTqh}rUqh]rVqUros-kinetic-barrett-hand-commonrWqasssuUdenso_robot_rosrXq}rYq(h}rZqh}r[qh]r\qUros/kinetic/denso_robot_rosr]qassh ˆh }r^qh}r_qh}r`qh]raqUros-kinetic-denso-robot-rosrbqasssuUroseusrcq}rdq(h}reqh}rfqh]rgqUros/kinetic/jsk_roseusrhqassh ˆh }riqh}rjqh}rkqh]rlqUros-kinetic-roseusrmqasssuUagvs_padrnq}roq(h}rpqh}rqqh]rrqUros/kinetic/agvs_commonrsqassh ˆh }rtqh}ruqh}rvqh]rwqUros-kinetic-agvs-padrxqasssuUrh_p12_rn_managerryq}rzq(h}r{qh}r|qh]r}qUros/kinetic/rh_p12_rnr~qassh ˆh }rqh}r€qh}rqh]r‚qUros-kinetic-rh-p12-rn-managerrƒqasssuUroomblock_descriptionr„q}r…q(h}r†qh}r‡qh]rˆqUros/kinetic/roomblockr‰qassh ˆh }rŠqh}r‹qh}rŒqh]rqU!ros-kinetic-roomblock-descriptionrŽqasssuUcob_tricycle_controllerrq}rq(h}r‘qh}r’qh]r“qUros/kinetic/cob_controlr”qassh ˆh }r•qh}r–qh}r—qh]r˜qU#ros-kinetic-cob-tricycle-controllerr™qasssuU pr2_self_testršq}r›q(h}rœqh}rqh]ržqUros/kinetic/pr2_self_testrŸqassh ˆh }r qh}r¡qh}r¢qh]r£qUros-kinetic-pr2-self-testr¤qasssuUros_control_boilerplater¥q}r¦q(h}r§qh}r¨qh]r©qU#ros/kinetic/ros_control_boilerplaterªqassh ˆh }r«qh}r¬qh}r­qh]r®qU#ros-kinetic-ros-control-boilerplater¯qasssuU roch_gazebor°q}r±q(h}r²qh}r³qh]r´qUros/kinetic/roch_simulatorrµqassh ˆh }r¶qh}r·qh}r¸qh]r¹qUros-kinetic-roch-gazeborºqasssuUqt_qmaker»q}r¼q(h}r½qh}r¾qh]r¿qUros/kinetic/qt_metapackagesrÀqassh ˆh }rÁqh}rÂqh}rÃqh]rÄqUros-kinetic-qt-qmakerÅqasssuUrqt_controller_managerrÆq}rÇq(h}rÈqh}rÉqh]rÊqUros/kinetic/ros_controlrËqassh ˆh }rÌqh}rÍqh}rÎqh]rÏqU"ros-kinetic-rqt-controller-managerrÐqasssuUiiwa_hwrÑq}rÒq(h}rÓqh}rÔqh]rÕqUros/kinetic/iiwa_stackrÖqassh ˆh }r×qh}rØqh}rÙqh]rÚqUros-kinetic-iiwa-hwrÛqasssuU ibeo_msgsrÜq}rÝq(h}rÞqh}rßqh]ràqUros/kinetic/astuff_sensor_msgsráqassh ˆh }râqh}rãqh}räqh]råqUros-kinetic-ibeo-msgsræqasssuUrosbagrçq}rèq(h}réqh}rêqh]rëqUros/kinetic/ros_commrìqassh ˆh }ríqh}rîqh}rïqh]rðqUros-kinetic-rosbagrñqasssuUeca_a9_descriptionròq}róq(h}rôqh}rõqh]röqUros/kinetic/eca_a9r÷qassh ˆh }røqh}rùqh}rúqh]rûqUros-kinetic-eca-a9-descriptionrüqasssuu.catkin_lint-1.6.6/test/sources.cache/6fbb8434ee1cd44cd9d6761573ef582820b8828f.pickle000066400000000000000000000000061362025056600263320ustar00rootroot00000000000000€}q.catkin_lint-1.6.6/test/sources.cache/7cfbeed211a3f9a6507c86cebaeedb3e3c4387f8.pickle000066400000000000000000005052041362025056600270420ustar00rootroot00000000000000€}q(Upython-pylibftdi-pip}q(Uosx}qUpip]qU pylibftdiqasUfedora}qUpip]qU pylibftdiqasUdebian}q Upip]q U pylibftdiq asUubuntu}q Upip]q U pylibftdiqasuUpython-deepdiff-pip}q(Ufedora}qUpip]qUdeepdiffqasUdebian}qUpip]qUdeepdiffqasUubuntu}qUpip]qUdeepdiffqasuUpython3-rospkg-modules}q(Uosx}qUpip}qUpackages]qUrospkgqassUfedora]qUpython3-rospkgqaUgentoo]q Udev-python/rospkgq!aUfreebsd}q"Upip}q#Upackages]q$Urospkgq%assUopensuse]q&Upython3-rospkgq'aU slackware}q(Upip}q)Upackages]q*Urospkgq+assUubuntu]q,Upython3-rospkg-modulesq-aUarch]q.U python-rospkgq/aUdebian]q0Upython3-rospkg-modulesq1aUalpine}q2Upip}q3Upackages]q4Urospkgq5assuU python-scipy}q6(Uosx}q7Upip}q8(Udepends]q9Ugfortranq:aUpackages]q;UscipyqaUgentoo]q?Usci-libs/scipyq@aUmacports]qAU py27-scipyqBaUopensuse]qCU python-scipyqDaUfreebsd]qEUpy-scipyqFaUubuntu}qG(Uprecise]qHU python-scipyqIaUwily]qJU python-scipyqKaUtrusty_python3]qLU python3-scipyqMaUlucid]qNU python-scipyqOaUutopic_python3]qPU python3-scipyqQaUxenial]qRU python-scipyqSaUxenial_python3]qTU python3-scipyqUaUvivid]qVU python-scipyqWaUbionic]qXU python-scipyqYaUyakkety_python3]qZU python3-scipyq[aU zesty_python3]q\U python3-scipyq]aUraring]q^U python-scipyq_aUsaucy]q`U python-scipyqaaU vivid_python3]qbU python3-scipyqcaUyakkety]qdU python-scipyqeaUtrusty]qfU python-scipyqgaUoneiric]qhU python-scipyqiaUartful_python3]qjU python3-scipyqkaUartful]qlU python-scipyqmaUquantal]qnU python-scipyqoaUutopic]qpU python-scipyqqaUbionic_python3]qrU python3-scipyqsaU wily_python3]qtU python3-scipyquaUzesty]qvU python-scipyqwaUmaverick]qxU python-scipyqyaUnatty]qzU python-scipyq{auUarch]q|U python2-scipyq}aUdebian]q~U python-scipyqauUpython3-matplotlib}q€(Uosx}qUpip}q‚(Udepends]qƒ(U pkg-configq„Ufreetypeq…U libpng12-devq†eUpackages]q‡U matplotlibqˆausUfedora]q‰Upython3-matplotlibqŠaUgentoo]q‹Udev-python/matplotlibqŒaUopensuse]qUpython3-matplotlibqŽaU slackware]qUpython3-matplotlibqaUubuntu]q‘Upython3-matplotlibq’aU openembedded]q“Upython3-matplotlib@meta-pythonq”aUarch]q•Upython-matplotlibq–aUdebian]q—Upython3-matplotlibq˜auU libgv-python}q™(Udebian]qšU libgv-pythonq›aUubuntu]qœU libgv-pythonqauUpython-requests-oauthlib}qž(Ufedora]qŸUpython-requests-oauthlibq aUdebian]q¡Upython-requests-oauthlibq¢aUgentoo]q£Udev-python/requests-oauthlibq¤aUubuntu]q¥Upython-requests-oauthlibq¦auUpython-hypothesis}q§(Ufedora]q¨Upython-hypothesisq©aUdebian]qªUpython-hypothesisq«aUgentoo]q¬Udev-python/hypothesisq­aUubuntu}q®(Uxenial_python3]q¯Upython3-hypothesisq°aUyakkety]q±Upython-hypothesisq²aUzesty]q³Upython-hypothesisq´aUxenial]qµUpython-hypothesisq¶aU zesty_python3]q·Upython3-hypothesisq¸aUyakkety_python3]q¹Upython3-hypothesisqºauuUcython}q»(Ufedora]q¼UCythonq½aUdebian]q¾Ucythonq¿aUgentoo]qÀUdev-python/cythonqÁaUubuntu]qÂUcythonqÃauUpython3-sqlalchemy}qÄ(Udebian]qÅUpython3-sqlalchemyqÆaUubuntu]qÇUpython3-sqlalchemyqÈauU python-oauth2}qÉ(Ufedora]qÊU python-oauth2qËaUarch]qÌU python-oauth2qÍaUdebian}qÎUwheezy]qÏU python-oauth2qÐasUgentoo]qÑUdev-python/oauth2qÒaUubuntu}qÓ(Uprecise]qÔU python-oauth2qÕaUsaucy]qÖU python-oauth2q×aUutopic]qØU python-oauth2qÙaUtrusty]qÚU python-oauth2qÛaUraring]qÜU python-oauth2qÝaUquantal]qÞU python-oauth2qßaUvivid]qàU python-oauth2qáauuUpython-graphviz-pip}qâ(Ufedora}qãUpip}qäUpackages]qåUgraphvizqæassUdebian}qçUpip}qèUpackages]qéUgraphvizqêassUubuntu}qëUpip}qìUpackages]qíUgraphvizqîassuUpython-annoy-pip}qï(Ufedora}qðUpip}qñUpackages]qòUannoyqóassUdebian}qôUpip}qõUpackages]qöUannoyq÷assUubuntu}qøUpip}qùUpackages]qúUannoyqûassuUpython3-django}qü(Ufedora]qýUpython3-djangoqþaUdebian]qÿUpython3-djangoraUubuntu]rUpython3-djangorauUpython-cherrypy}r(Ufedora]rUpython-cherrypyraUdebian]rUpython-cherrypy3raUgentoo]rUdev-python/cherrypyr aUubuntu]r Upython-cherrypy3r auU python-bs4}r (Ufedora]r Upython-beautifulsoup4raUdebian]rU python-bs4raUgentoo]rU=dev-python/beautifulsoup-4*raUubuntu]rU python-bs4rauU exhale-pip}r(Ufedora}rUpip}rUpackages]rUexhalerassUdebian}rUpip}rUpackages]rUexhalerassUubuntu}rUpip}rUpackages]r Uexhaler!assuUpython-impacket}r"(Ufedora]r#Upython-impacketr$aUdebian]r%Upython-impacketr&aUubuntu]r'Upython-impacketr(auUpython-jsonpyes-pip}r)(Udebian}r*Upip}r+Upackages]r,Ujsonpyesr-assUubuntu}r.Upip}r/Upackages]r0Ujsonpyesr1assuU python-falcon}r2(Ufedora]r3U python-falconr4aUdebian]r5U python-falconr6aUgentoo]r7Udev-python/falconr8aUubuntu]r9U python-falconr:auUpython-pytides-pip}r;Uubuntu}r<Upip}r=Upackages]r>Upytidesr?asssUpython-fixtures}r@(Ufedora]rAUpython-fixturesrBaUdebian]rCUpython-fixturesrDaUgentoo]rEUdev-python/fixturesrFaUubuntu]rGUpython-fixturesrHauU python3-pydot}rI(Ufedora]rJU python3-pydotrKaUgentoo]rLUdev-python/pydotrMaUubuntu]rNU python3-pydotrOaU openembedded]rPUpython3-pydot@meta-rosrQaUarch]rRU python-pydotrSaUdebian]rTU python3-pydotrUaUrhel}rV(U*]rWU!python%{python3_pkgversion}-pydotrXaU7NuuU intelhex-pip}rY(Ufedora}rZUpip}r[Upackages]r\Uintelhexr]assUdebian}r^Upip}r_Upackages]r`UintelhexraassUubuntu}rbUpip}rcUpackages]rdUintelhexreassuUpython-tzlocal-pip}rfUubuntu}rgUpip}rhUpackages]riUtzlocalrjasssU python-argh}rk(Ufedora]rlU python-arghrmaUdebian]rnU python-arghroaUgentoo]rpUdev-python/arghrqaUubuntu]rrU python-arghrsauU python-psutil}rt(Uosx}ruUpip}rvUpackages]rwUpsutilrxassUfedora]ryU python-psutilrzaUgentoo]r{Udev-python/psutilr|aUmacports]r}U py27-psutilr~aUfreebsd]rU py27-psutilr€aUopensuse]rU python-psutilr‚aU slackware]rƒUpsutilr„aUubuntu}r…(Uprecise]r†U python-psutilr‡aUtrusty_python3]rˆUpython3-psutilr‰aUlucid]rŠU python-psutilr‹aUxenial]rŒU python-psutilraUvivid]rŽU python-psutilraUbionic]rU python-psutilr‘aUwily]r’U python-psutilr“aUsaucy]r”U python-psutilr•aUyakkety]r–U python-psutilr—aUtrusty]r˜U python-psutilr™aUoneiric]ršU python-psutilr›aUartful]rœU python-psutilraUnatty]ržU python-psutilrŸaUutopic]r U python-psutilr¡aUzesty]r¢U python-psutilr£aUraring]r¤U python-psutilr¥aUmaverick]r¦U python-psutilr§aUquantal]r¨U python-psutilr©auU openembedded]rªUpython-psutil@meta-pythonr«aUarch]r¬Upython2-psutilr­aUdebian]r®U python-psutilr¯auU python-webpy}r°(Ufedora]r±U python-webpyr²aUarch]r³U python2-webpyr´aUdebian]rµU python-webpyr¶aUgentoo]r·Udev-python/webpyr¸aUubuntu]r¹U python-webpyrºauU python-pip}r»(Ufedora]r¼U python-pipr½aUarch]r¾U python2-pipr¿aUdebian]rÀU python-piprÁaUgentoo]rÂUdev-python/piprÃaUubuntu]rÄU python-piprÅauU mercurial}rÆUosx}rÇUpip}rÈUpackages]rÉU mercurialrÊasssUpython-jsonref-pip}rËUubuntu}rÌUpip}rÍUpackages]rÎUjsonrefrÏasssU python-xlrd}rÐ(Ufedora]rÑU python-xlrdrÒaUdebian]rÓU python-xlrdrÔaUubuntu]rÕU python-xlrdrÖauUpython-sysv-ipc}r×(Ufedora]rØUpython2-sysv-ipcrÙaUdebian]rÚUpython-sysv-ipcrÛaUubuntu]rÜUpython-sysv-ipcrÝauUpython-control-pip}rÞ(Udebian}rßUpip}ràUpackages]ráUcontrolrâassUubuntu}rãUpip}räUpackages]råUcontrolræassuUadafruit-ads1x15-pip}rç(Udebian}rèUpip}réUpackages]rêUAdafruit-ADS1x15rëassUubuntu}rìUpip}ríUpackages]rîUAdafruit-ADS1x15rïassuUpython-collada}rð(Udebian]rñUpython-colladaròaUubuntu]róUpython-colladarôauU casadi-pip}rõ(Ufedora}röUpip}r÷Upackages]røUcasadirùassUdebian}rúUpip}rûUpackages]rüUcasadirýassUubuntu}rþUpip}rÿUpackages]rUcasadirassuUpython-pylint3}r(Ufedora]rUpython3-pylintraUdebian]rUpylint3raUgentoo]rUdev-python/pylintraUubuntu]r Upylint3r auUjupyter-notebook}r (Ufedora]r Upython3-notebookr aUdebian}r(Ujessie]rUipython-notebookraU*]rUjupyter-notebookrauUubuntu}r(U*]rUjupyter-notebookraUtrusty]rUipython-notebookraUxenial]rUipython-notebookrauuU quadprog-pip}r(Uosx}rUpip]rUquadprograsUfedora}rUpip]rUquadprogr asUdebian}r!Upip]r"Uquadprogr#asUubuntu}r$Upip]r%Uquadprogr&asuUpython3-catkin-pkg}r'(Ufedora]r(Upython3-catkin_pkgr)aUdebian]r*Upython3-catkin-pkgr+aUgentoo]r,Udev-python/catkin_pkgr-aUubuntu]r.Upython3-catkin-pkgr/auUpython-catkin-sphinx}r0(Uosx}r1Upip}r2Upackages]r3U catkin_sphinxr4assUfedora]r5Upython-catkin-sphinxr6aUubuntu]r7Upython-catkin-sphinxr8auU python-gpxpy}r9(Udebian}r:(Ustretch]r;U python-gpxpyr<aUjessie}r=Upip}r>Upackages]r?Ugpxpyr@assUbuster]rAU python-gpxpyrBauUgentoo]rCUsci-geosciences/gpxpyrDaUubuntu}rE(Uyakkety}rFUpip}rGUpackages]rHUgpxpyrIassUwily}rJUpip}rKUpackages]rLUgpxpyrMassUartful]rNU python-gpxpyrOaUxenial}rPUpip}rQUpackages]rRUgpxpyrSassUutopic}rTUpip}rUUpackages]rVUgpxpyrWassUvivid}rXUpip}rYUpackages]rZUgpxpyr[assUbionic]r\U python-gpxpyr]aUzesty}r^Upip}r_Upackages]r`UgpxpyraassUtrusty}rbUpip}rcUpackages]rdUgpxpyreassuuU python-jinja2}rf(Ufedora]rgU python-jinja2rhaUdebian]riU python-jinja2rjaUgentoo]rkU=dev-python/jinja-2*rlaUubuntu]rmU python-jinja2rnauUpython-selenium-pip}ro(Udebian}rpUpip}rqUpackages]rrUseleniumrsassUubuntu}rtUpip}ruUpackages]rvUseleniumrwassuUpython-pymavlink}rx(Ufedora}ryUpip}rzUpackages]r{U pymavlinkr|assUdebian}r}Upip}r~Upackages]rU pymavlinkr€assUubuntu}rUpip}r‚Upackages]rƒU pymavlinkr„assuUpython-plyfile-pip}r…(Uosx}r†Upip}r‡Upackages]rˆUplyfiler‰assUfedora}rŠUpip}r‹Upackages]rŒUplyfilerassUdebian}rŽUpip}rUpackages]rUplyfiler‘assUubuntu}r’Upip}r“Upackages]r”Uplyfiler•assuUpython3-gitlab}r–(Udebian}r—(Ustretch}r˜Upip}r™Upackages]ršU python-gitlabr›assUjessie}rœUpip}rUpackages]ržU python-gitlabrŸassU*]r Upython3-gitlabr¡auUubuntu}r¢(U*]r£Upython3-gitlabr¤aUtrusty}r¥Upip}r¦Upackages]r§U python-gitlabr¨assUartful}r©Upip}rªUpackages]r«U python-gitlabr¬assUxenial}r­Upip}r®Upackages]r¯U python-gitlabr°assuuUpython-couchdb}r±(Ufedora]r²Upython-couchdbr³aUdebian]r´Upython-couchdbrµaUgentoo]r¶Udev-python/couchdb-pythonr·aUubuntu]r¸Upython-couchdbr¹auUpython-namedlist-pip}rº(Uosx}r»Upip}r¼Upackages]r½U namedlistr¾assUfedora}r¿Upip}rÀUpackages]rÁU namedlistrÂassUdebian}rÃUpip}rÄUpackages]rÅU namedlistrÆassUubuntu}rÇUpip}rÈUpackages]rÉU namedlistrÊassuU python-poster}rË(Udebian]rÌU python-posterrÍaUubuntu]rÎU python-posterrÏauU python-zmq}rÐ(Ufedora]rÑU python-zmqrÒaUarch]rÓU python2-pyzmqrÔaUdebian]rÕU python-zmqrÖaUgentoo]r×Udev-python/pyzmqrØaUubuntu}rÙ(Utrusty_python3]rÚU python3-zmqrÛaU*]rÜU python-zmqrÝauuUpython-chainercv-pip}rÞ(Uosx}rßUpip}rà(Udepends]rá(UcythonrâU python-numpyrãeUpackages]räU chainercvråausUfedora}ræUpip}rç(Udepends]rè(UcythonréU python-numpyrêeUpackages]rëU chainercvrìausUdebian}ríUpip}rî(Udepends]rï(UcythonrðU python-numpyrñeUpackages]ròU chainercvróausUubuntu}rôUpip}rõ(Udepends]rö(Ucythonr÷U python-numpyrøeUpackages]rùU chainercvrúausuUpython-boltons}rû(Uosx}rüUpip}rýUpackages]rþUboltonsrÿassUfedora}rUpip}rUpackages]rUboltonsrassUdebian}r(Ujessie}rUpip}rUpackages]rUboltonsrassU*]r Upython-boltonsr aUwheezy}r Upip}r Upackages]r UboltonsrassuUubuntu}r(Uyakkety}rUpip}rUpackages]rUboltonsrassUtrusty}rUpip}rUpackages]rUboltonsrassUwily}rUpip}rUpackages]rUboltonsrassUzesty}rUpip}rUpackages]rUboltonsrassU*]r Upython-boltonsr!aUxenial}r"Upip}r#Upackages]r$Uboltonsr%assuuUpython-pyusb-pip}r&(Ufedora}r'Upip]r(Upyusbr)asUdebian}r*Upip]r+Upyusbr,asUubuntu}r-Upip]r.Upyusbr/asuU python-smbus}r0(Udebian]r1U python-smbusr2aUubuntu]r3U python-smbusr4auUpython-luis-pip}r5(Uosx}r6Upip}r7Upackages]r8Uluisr9assUfedora}r:Upip}r;Upackages]r<Uluisr=assUdebian}r>Upip}r?Upackages]r@UluisrAassUubuntu}rBUpip}rCUpackages]rDUluisrEassuU python-serial}rF(Ufedora]rGUpyserialrHaUgentoo]rIUdev-python/pyserialrJaUubuntu}rK(Uprecise]rLU python-serialrMaUwily]rNU python-serialrOaUtrusty_python3]rPUpython3-serialrQaUlucid]rRU python-serialrSaUutopic_python3]rTUpython3-serialrUaUxenial]rVU python-serialrWaUxenial_python3]rXUpython3-serialrYaUvivid]rZU python-serialr[aUbionic]r\U python-serialr]aUyakkety_python3]r^Upython3-serialr_aU zesty_python3]r`Upython3-serialraaUraring]rbU python-serialrcaUsaucy]rdU python-serialreaU vivid_python3]rfUpython3-serialrgaUyakkety]rhU python-serialriaUtrusty]rjU python-serialrkaUoneiric]rlU python-serialrmaUartful_python3]rnUpython3-serialroaUartful]rpU python-serialrqaUquantal]rrU python-serialrsaUutopic]rtU python-serialruaUbionic_python3]rvUpython3-serialrwaU wily_python3]rxUpython3-serialryaUzesty]rzU python-serialr{aUmaverick]r|U python-serialr}aUnatty]r~U python-serialrauU openembedded]r€Upython-pyserial@meta-pythonraUarch]r‚Upython2-pyserialrƒaUdebian]r„U python-serialr…auUpython-rosdistro}r†(Uosx}r‡(Upip}rˆUpackages]r‰U rosdistrorŠasUmacports]r‹Upy27-rosdistrorŒauUfedora]rUpython-rosdistrorŽaUdebian]rUpython-rosdistroraUgentoo]r‘Udev-python/rosdistror’aUubuntu}r“(Uprecise]r”Upython-rosdistror•aUtrusty_python3]r–Upython3-rosdistror—aUlucid]r˜Upython-rosdistror™aUyakkety_python3]ršUpython3-rosdistror›aUxenial_python3]rœUpython3-rosdistroraUvivid]ržUpython-rosdistrorŸaUxenial]r Upython-rosdistror¡aU zesty_python3]r¢Upython3-rosdistror£aUwily]r¤Upython-rosdistror¥aUsaucy]r¦Upython-rosdistror§aUyakkety]r¨Upython-rosdistror©aUtrusty]rªUpython-rosdistror«aUoneiric]r¬Upython-rosdistror­aUartful]r®Upython-rosdistror¯aUnatty]r°Upython-rosdistror±aUutopic]r²Upython-rosdistror³aU wily_python3]r´Upython3-rosdistrorµaUzesty]r¶Upython-rosdistror·aUraring]r¸Upython-rosdistror¹aUmaverick]rºUpython-rosdistror»aUquantal]r¼Upython-rosdistror½auuUpython-mechanize}r¾(Ufedora]r¿Upython-mechanizerÀaUarch]rÁUpython2-mechanizerÂaUdebian]rÃUpython-mechanizerÄaUgentoo]rÅUdev-python/mechanizerÆaUubuntu]rÇUpython-mechanizerÈauUpython-pymouse}rÉ(Uosx}rÊUpip}rËUpackages]rÌUpymouserÍassUfedora}rÎUpip}rÏUpackages]rÐUpymouserÑassUdebian}rÒUpip}rÓUpackages]rÔUpymouserÕassUubuntu}rÖUpip}r×Upackages]rØUpymouserÙassuU python3-mock}rÚ(Ufedora]rÛU python3-mockrÜaUgentoo]rÝUdev-python/mockrÞaUubuntu]rßU python3-mockràaU openembedded]ráUpython3-mock@meta-rosrâaUdebian]rãU python3-mockräaUrhel]råU python%{python3_pkgversion}-mockræauU python-git}rç(Ufedora]rèU GitPythonréaUarch]rêUpython2-gobjectrëaUdebian]rìU python-gitríaUgentoo]rîUdev-python/git-pythonrïaUubuntu]rðU python-gitrñauUpython-cython-pip}rò(Ufedora}róUpip}rôUpackages]rõUcythonröassUarch}r÷Upip}røUpackages]rùUcythonrúassUdebian}rûUpip}rüUpackages]rýUcythonrþassUgentoo}rÿUpip}rUpackages]rUcythonrassUubuntu}rUpip}rUpackages]rUcythonrassuUpython-inject-pip}rUubuntu}rUpip}r Upackages]r Uinjectr asssUpython-pkg-resources}r (Udebian]r Upython-pkg-resourcesraUubuntu]rUpython-pkg-resourcesrauUpython-grpc-tools}r(Udebian}r(Ustretch}rUpip]rU grpcio-toolsrasUjessie}rUpip]rU grpcio-toolsrasU*]rUpython-grpc-toolsrauUubuntu}r(U*]rUpython-grpc-toolsraUtrusty}rUpip]rU grpcio-toolsr asUbionic}r!Upip]r"U grpcio-toolsr#asUxenial}r$Upip]r%U grpcio-toolsr&asuuUpython-pyramid}r'(Ufedora]r(Upython-pyramidr)aUdebian]r*Upython-pyramidr+aUgentoo]r,Udev-python/pyramidr-aUubuntu]r.Upython-pyramidr/auU python-genshi}r0(Ufedora]r1U python-genshir2aUdebian]r3U python-genshir4aUgentoo]r5Udev-python/genshir6aUubuntu]r7U python-genshir8auU python-lxml}r9(Uosx}r:Upip}r;Upackages]r<Ulxmlr=assUfedora]r>U python-lxmlr?aUgentoo]r@Udev-python/lxmlrAaUrhel]rBU python-lxmlrCaUfreebsd]rDU py27-lxmlrEaUubuntu]rFU python-lxmlrGaU openembedded]rHUpython-lxml@meta-pythonrIaUarch]rJU python2-lxmlrKaUdebian]rLU python-lxmlrMauU python-sip4}rN(Ufedora]rOUsiprPaUdebian]rQUpython-sip-devrRaUgentoo]rSU=dev-python/sip-4*rTaUmacports]rUU py27-sip4rVauUpython-grpcio-testing-pip}rW(Udebian}rXUpip}rYUpackages]rZUgrpcio-testingr[assUubuntu}r\Upip}r]Upackages]r^Ugrpcio-testingr_assuU python-webob}r`(Ufedora]raU python-webobrbaUdebian]rcU python-webobrdaUgentoo]reUdev-python/webobrfaUubuntu]rgU python-webobrhauUpython3-docker}ri(Ufedora]rjUpython3-dockerrkaUarch]rlU python-dockerrmaUdebian]rnUpython3-dockerroaUubuntu]rpUpython3-dockerrqauU python-typing}rr(Ufedora]rsUpython2-typingrtaUarch]ruUpython2-typingrvaUdebian]rwU python-typingrxaUgentoo]ryUdev-python/typingrzaUubuntu}r{(U*]r|U python-typingr}aUtrustyNUxenialNuuUadafruit-mcp3008-pip}r~(Udebian}rUpip}r€Upackages]rUAdafruit-MCP3008r‚assUubuntu}rƒUpip}r„Upackages]r…UAdafruit-MCP3008r†assuU python-gi}r‡(Ufedora]rˆU pygobject3r‰aUarch]rŠUpython2-gobjectr‹aUdebian]rŒU python-giraUgentoo]rŽUdev-python/pygobjectraUubuntu]rU python-gir‘auUpython-lttngust}r’(Udebian}r“Upip}r”Upackages]r•Upython-lttngustr–assUubuntu}r—Upip}r˜Upackages]r™Upython-lttngustršassuUnuitka}r›(Udebian]rœUnuitkaraUubuntu]ržUnuitkarŸauU python-gdal}r (Ufedora]r¡U python2-gdalr¢aUdebian]r£U python-gdalr¤aUgentoo]r¥Usci-libs/gdal[python]r¦aUubuntu]r§U python-gdalr¨auU python-django}r©(Ufedora]rªU python-djangor«aUarch]r¬Upython2-djangor­aUdebian]r®U python-djangor¯aUgentoo]r°Udev-python/djangor±aUubuntu]r²U python-djangor³auU python-scp}r´(Ufedora]rµU python-scpr¶aUdebian]r·U python-scpr¸aUubuntu]r¹U python-scprºauUpython-simplejson}r»(Ufedora]r¼Upython-simplejsonr½aUarch]r¾Upython2-simplejsonr¿aUdebian]rÀUpython-simplejsonrÁaUgentoo]rÂUdev-python/simplejsonrÃaUubuntu]rÄUpython-simplejsonrÅauUpython-blinker}rÆ(Ufedora]rÇUpython-blinkerrÈaUdebian]rÉUpython-blinkerrÊaUgentoo]rËUdev-python/blinkerrÌaUubuntu]rÍUpython-blinkerrÎauU python-cairo}rÏ(Ufedora]rÐUpycairorÑaUgentoo]rÒUdev-python/pycairorÓaUfreebsd]rÔU py27-cairorÕaUopensuse]rÖU python-cairor×aU slackware}rØUslackpkg}rÙUpackages]rÚUpycairorÛassUubuntu]rÜU python-cairorÝaUarch]rÞU python2-cairorßaUdebian]ràU python-cairoráauUpython-dateutil}râ(Uosx}rãUpip}räUpackages]råUpython-dateutilræassUfedora]rçUpython-dateutilrèaUgentoo]réUdev-python/python-dateutilrêaUubuntu]rëUpython-dateutilrìaUarch]ríUpython2-dateutilrîaUdebian]rïUpython-dateutilrðauUpython-pygithub3}rñ(Ufedora}ròUpip}róUpackages]rôU pygithub3rõassUdebian}röUpip}r÷Upackages]røU pygithub3rùassUubuntu}rúUpip}rûUpackages]rüU pygithub3rýassuUpython-pastedeploy}rþ(Ufedora]rÿUpython-paste-deployraUdebian]rUpython-pastedeployraUgentoo]rUdev-python/pastedeployraUubuntu]rUpython-pastedeployrauUpython-inputs-pip}r(Uosx}rUpip}r Upackages]r Uinputsr assUfedora}r Upip}r Upackages]rUinputsrassUdebian}rUpip}rUpackages]rUinputsrassUubuntu}rUpip}rUpackages]rUinputsrassuU python-ntplib}r(Ufedora]rU python-ntplibraUdebian]rU python-ntplibraUgentoo]rUdev-python/ntplibraUubuntu]rU python-ntplibr auUpython-sphinx-rtd-theme}r!(Udebian}r"(Ustretch]r#Upython-sphinx-rtd-themer$aUjessie]r%Upython-sphinx-rtd-themer&aUbuster]r'Upython-sphinx-rtd-themer(auUubuntu}r)(Uyakkety]r*Upython-sphinx-rtd-themer+aUartful_python3]r,Upython3-sphinx-rtd-themer-aUartful]r.Upython-sphinx-rtd-themer/aUxenial]r0Upython-sphinx-rtd-themer1aUbionic_python3]r2Upython3-sphinx-rtd-themer3aUxenial_python3]r4Upython3-sphinx-rtd-themer5aUbionic]r6Upython-sphinx-rtd-themer7aUzesty]r8Upython-sphinx-rtd-themer9aUyakkety_python3]r:Upython3-sphinx-rtd-themer;aU zesty_python3]r<Upython3-sphinx-rtd-themer=auuUpython-omniorb}r>(Ufedora]r?(Upython-omniORBr@U omniORB-develrAeUarch]rBU omniorbpyrCaUdebian]rD(Upython-omniorbrEUpython-omniorb-omgrFUomniidl-pythonrGeUgentoo]rHUnet-misc/omniORB[python]rIaUubuntu}rJ(Ulucid]rK(Upython-omniorb2rLUpython-omniorb2-omgrMUomniidl4-pythonrNeU*]rO(Upython-omniorbrPUpython-omniorb-omgrQUomniidl-pythonrReuuUpython-pyexiv2}rS(Ufedora]rTUpyexiv2rUaUdebian]rVUpython-pyexiv2rWaUubuntu]rXUpython-pyexiv2rYauUpython-speechrecognition-pip}rZ(Uosx}r[Upip}r\Upackages]r]Uspeechrecognitionr^assUfedora}r_Upip}r`Upackages]raUspeechrecognitionrbassUdebian}rcUpip}rdUpackages]reUspeechrecognitionrfassUubuntu}rgUpip}rhUpackages]riUspeechrecognitionrjassuUpython3-coverage}rk(Ufedora]rlUpython3-coveragermaUdebian]rnUpython3-coverageroaUgentoo]rpUdev-python/coveragerqaUubuntu]rrUpython3-coveragersauUpython-alembic}rt(Ufedora]ruUpython-alembicrvaUdebian}rw(Ustretch]rxUpython-alembicryaUjessie]rzUpython-alembicr{aUbuster]r|Upython-alembicr}auUgentoo]r~Udev-python/alembicraUubuntu}r€(U*]rUpython-alembicr‚aUtrusty]rƒUalembicr„auuU python-statsd}r…(Ufedora]r†U python-statsdr‡aUdebian]rˆU python-statsdr‰aUubuntu]rŠU python-statsdr‹auU python-rx-pip}rŒ(Uosx}rUpip}rŽUpackages]rUrxrassUdebian}r‘Upip}r’Upackages]r“Urxr”assUubuntu}r•Upip}r–Upackages]r—Urxr˜assuUpython-walrus-pip}r™Uubuntu}ršUpip}r›Upackages]rœUwalrusrasssUpython-keras-rl-pip}rž(Uosx}rŸUpip}r Upackages]r¡Ukeras-rlr¢assUfedora}r£Upip}r¤Upackages]r¥Ukeras-rlr¦assUdebian}r§Upip}r¨Upackages]r©Ukeras-rlrªassUubuntu}r«Upip}r¬Upackages]r­Ukeras-rlr®assuUpython-numpy-stl-pip}r¯(Uosx}r°Upip}r±Upackages]r²U numpy-stlr³assUubuntu}r´Upip}rµUpackages]r¶U numpy-stlr·assuUpython-attrs-pip}r¸(Ufedora}r¹Upip}rºUpackages]r»Uattrsr¼assUdebian}r½Upip}r¾Upackages]r¿UattrsrÀassUubuntu}rÁUpip}rÂUpackages]rÃUattrsrÄassuUpython3-netifaces}rÅ(Ufedora]rÆUpython3-netifacesrÇaUdebian]rÈUpython3-netifacesrÉaUrhel]rÊU%python%{python3_pkgversion}-netifacesrËaUgentoo]rÌUdev-python/netifacesrÍaUubuntu]rÎUpython3-netifacesrÏauUpython-adafruit-bno055-pip}rÐ(Ufedora}rÑUpip}rÒUpackages]rÓUadafruit_bno055rÔassUdebian}rÕUpip}rÖUpackages]r×Uadafruit_bno055rØassUubuntu}rÙUpip}rÚUpackages]rÛUadafruit_bno055rÜassuUpython-setuptools}rÝ(Uosx}rÞUpip}rßUpackages]ràU setuptoolsráassUfedora]râUpython-setuptoolsrãaUgentoo]räUdev-python/setuptoolsråaUmacports]ræUpy27-setuptoolsrçaUubuntu}rè(Uprecise]réUpython-setuptoolsrêaUwily]rëUpython-setuptoolsrìaUtrusty_python3]ríUpython3-setuptoolsrîaUlucid]rïUpython-setuptoolsrðaUutopic_python3]rñUpython3-setuptoolsròaUxenial]róUpython-setuptoolsrôaUxenial_python3]rõUpython3-setuptoolsröaUvivid]r÷Upython-setuptoolsrøaUbionic]rùUpython-setuptoolsrúaUraring]rûUpython-setuptoolsrüaUsaucy]rýUpython-setuptoolsrþaU vivid_python3]rÿUpython3-setuptoolsraUyakkety]rUpython-setuptoolsraUtrusty]rUpython-setuptoolsraUoneiric]rUpython-setuptoolsraUartful]rUpython-setuptoolsraUquantal]r Upython-setuptoolsr aUutopic]r Upython-setuptoolsr aU wily_python3]r Upython3-setuptoolsraUzesty]rUpython-setuptoolsraUmaverick]rUpython-setuptoolsraUnatty]rUpython-setuptoolsrauU openembedded]rU#python-setuptools@openembedded-coreraUarch]rUpython2-distributeraUdebian]rUpython-setuptoolsrauUpython3-django-extensions}r(Udebian]rUpython3-django-extensionsraUubuntu]rUpython3-django-extensionsrauU python-docopt}r (Ufedora]r!U python-docoptr"aUdebian]r#U python-docoptr$aUgentoo]r%Udev-python/docoptr&aUubuntu]r'U python-docoptr(auUpython-mahotas}r)Uubuntu}r*Upip}r+Upackages]r,Umahotasr-asssU python-dlib}r.(Ufedora}r/Upip]r0Udlibr1asUdebian}r2Upip]r3Udlibr4asUubuntu}r5Upip]r6Udlibr7asuUpython3-pycodestyle}r8(Ufedora]r9Upython3-pycodestyler:aUgentoo]r;Udev-python/pycodestyler<aUubuntu]r=Upython3-pycodestyler>aUarch]r?Upython-pycodestyler@aUdebian]rAUpython3-pycodestylerBaUrhel]rCU'python%{python3_pkgversion}-pycodestylerDauU python-theano}rE(Uosx}rFUpip}rGUpackages]rHUTheanorIassUfedora]rJU python-theanorKaUgentoo]rLUdev-python/theanorMaUubuntu}rN(Uprecise}rOUpip}rPUpackages]rQUTheanorRassUsaucy}rSUpip}rTUpackages]rUUTheanorVassUyakkety]rWU python-theanorXaUwily}rYUpip}rZUpackages]r[UTheanor\assUxenial}r]Upip}r^Upackages]r_UTheanor`assUutopic}raUpip}rbUpackages]rcUTheanordassUtrusty}reUpip}rfUpackages]rgUTheanorhassUzesty]riU python-theanorjaUvivid}rkUpip}rlUpackages]rmUTheanornassuUarch]roU python-theanorpaUdebian}rq(Ustretch]rrU python-theanorsaUjessie}rtUpip}ruUpackages]rvUTheanorwassUbuster]rxU python-theanoryauuU pyper-pip}rzUubuntu}r{Upip}r|Upackages]r}Upyperr~asssU python-amqp}r(Ufedora]r€U python-amqpraUdebian}r‚(Ustretch]rƒU python-amqpr„aUjessie]r…U python-amqpr†aUbuster]r‡U python-amqprˆauUgentoo]r‰Udev-python/py-amqprŠaUubuntu]r‹U python-amqprŒauUpython-skimage}r(Uosx}rŽUpip}rUpackages]rU scikit-imager‘assUfedora]r’Upython-scikit-imager“aUdebian]r”Upython-skimager•aUgentoo]r–Usci-libs/scikits_imager—aUubuntu}r˜(Uprecise}r™Upip}ršUpackages]r›U scikit-imagerœassUoneiric}rUpip}ržUpackages]rŸU scikit-imager assUlucid}r¡Upip}r¢Upackages]r£U scikit-imager¤assU*]r¥Upython-skimager¦aUmaverick}r§Upip}r¨Upackages]r©U scikit-imagerªassUnatty}r«Upip}r¬Upackages]r­U scikit-imager®assuuUpython-slycot-pip}r¯(Udebian}r°Upip}r±Upackages]r²Uslycotr³assUubuntu}r´Upip}rµUpackages]r¶Uslycotr·assuUpython-pexpect}r¸(Ufedora]r¹UpexpectrºaUarch]r»Upython2-pexpectr¼aUdebian]r½Upython-pexpectr¾aUgentoo]r¿Udev-python/pexpectrÀaUubuntu]rÁUpython-pexpectrÂauU python-box2d}rÃ(Ufedora]rÄUpybox2drÅaUdebian]rÆU python-box2drÇaUubuntu]rÈU python-box2drÉauUpython-sphinx-argparse}rÊ(Udebian}rË(Ustretch]rÌUpython-sphinx-argparserÍaUbuster]rÎUpython-sphinx-argparserÏauUubuntu}rÐ(Uyakkety]rÑUpython-sphinx-argparserÒaUartful_python3]rÓUpython3-sphinx-argparserÔaUartful]rÕUpython-sphinx-argparserÖaUxenial]r×Upython-sphinx-argparserØaUbionic_python3]rÙUpython3-sphinx-argparserÚaUxenial_python3]rÛUpython3-sphinx-argparserÜaUbionic]rÝUpython-sphinx-argparserÞaUzesty]rßUpython-sphinx-argparseràaUyakkety_python3]ráUpython3-sphinx-argparserâaU zesty_python3]rãUpython3-sphinx-argparseräauuUpython-gst-1.0}rå(Udebian}ræ(Ustretch]rçUpython-gst-1.0rèaUjessie]réUpython-gst-1.0rêaUbuster]rëUpython-gst-1.0rìauUgentoo]ríUdev-python/gst-python:1.0rîaUubuntu]rïUpython-gst-1.0rðauU python-opencv}rñ(Ufedora}rò(U*NU29]róU opencv-pythonrôauUgentoo]rõUmedia-libs/opencv[python]röaUfreebsd]r÷U py27-opencvrøaUopensuse]rùU python-opencvrúaU slackware]rûUopencvrüaUubuntu]rýU python-opencvrþaU openembedded]rÿUopencv@meta-oeraUarch]r(UopencvrU python2-numpyreUdebian]rU python-opencvrauU tilestache}r(Ufedora]rUpython-tilestacheraUdebian]r U tilestacher aUubuntu]r U tilestacher auUpython-pathos-pip}r (Udebian}rUpip}rUpackages]rUpathosrassUubuntu}rUpip}rUpackages]rUpathosrassuUpython-parameterized}r(Uosx}rUpip}rUpackages]rU parameterizedrassUfedora]rUpython-parameterizedraUdebian}r(Ustretch}rUpip}rUpackages]r U parameterizedr!assUjessie}r"Upip}r#Upackages]r$U parameterizedr%assU*]r&Upython-parameterizedr'auUgentoo}r(Upip}r)Upackages]r*U parameterizedr+assUubuntu}r,(Uyakkety}r-Upip}r.Upackages]r/U parameterizedr0assUtrusty}r1Upip}r2Upackages]r3U parameterizedr4assUwily}r5Upip}r6Upackages]r7U parameterizedr8assUzesty}r9Upip}r:Upackages]r;U parameterizedr<assU*]r=Upython-parameterizedr>aUartful}r?Upip}r@Upackages]rAU parameterizedrBassUxenial}rCUpip}rDUpackages]rEU parameterizedrFassuuUpython-libpgm-pip}rG(Uosx}rHUpip}rIUpackages]rJUlibpgmrKassUfedora}rLUpip}rMUpackages]rNUlibpgmrOassUdebian}rPUpip}rQUpackages]rRUlibpgmrSassUubuntu}rTUpip}rUUpackages]rVUlibpgmrWassuU python-ipdb}rX(Udebian]rYU python-ipdbrZaUgentoo]r[Udev-python/ipdbr\aUubuntu]r]U python-ipdbr^auUpython-gitpython-pip}r_Uubuntu}r`Upip}raUpackages]rbU gitpythonrcasssUpython-flask-appbuilder-pip}rd(Uosx}reUpip}rfUpackages]rgUflask-appbuilderrhassUfedora}riUpip}rjUpackages]rkUflask-appbuilderrlassUdebian}rmUpip}rnUpackages]roUflask-appbuilderrpassUubuntu}rqUpip}rrUpackages]rsUflask-appbuilderrtassuUpython-pyftpdlib}ru(Udebian]rvUpython-pyftpdlibrwaUgentoo]rxUdev-python/pyftpdlibryaUubuntu]rzUpython-pyftpdlibr{auU python-scapy}r|(Ufedora]r}Uscapyr~aUdebian]rU python-scapyr€aUgentoo]rUdev-python/scapy-python3r‚aUubuntu]rƒU python-scapyr„auU pi-ina219-pip}r…(Udebian}r†Upip}r‡Upackages]rˆU pi-ina219r‰assUubuntu}rŠUpip}r‹Upackages]rŒU pi-ina219rassuUpython-setproctitle}rŽ(Udebian]rUpython-setproctitleraUubuntu]r‘Upython-setproctitler’auUpython-expiringdict}r“(Ufedora}r”Upip}r•Upackages]r–U expiringdictr—assUdebian]r˜Upython-expiringdictr™aUubuntu]ršUpython-expiringdictr›auUpython-marshmallow}rœ(Ufedora]rUpython-marshmallowržaUubuntu}rŸUpip}r Upackages]r¡U marshmallowr¢assuUpython-jsonpickle}r£(Ufedora]r¤Upython-jsonpickler¥aUarch]r¦Upython-jsonpickler§aUdebian]r¨Upython-jsonpickler©aUgentoo]rªUdev-python/jsonpickler«aUubuntu]r¬Upython-jsonpickler­auUpython-kitchen}r®(Uosx}r¯Upip}r°Upackages]r±Ukitchenr²assUfedora]r³Upython-kitchenr´aUgentoo]rµUdev-python/kitchenr¶aUubuntu]r·Upython-kitchenr¸aUarch]r¹Upython2-kitchenrºaUdebian]r»Upython-kitchenr¼auU python-crypto}r½(Uosx}r¾Upip}r¿Upackages]rÀUpycryptorÁassUfedora]rÂU python-cryptorÃaUgentoo]rÄUdev-python/pycryptorÅaUfreebsd]rÆU py27-pycryptorÇaUubuntu}rÈ(Uprecise]rÉU python-cryptorÊaUwily]rËU python-cryptorÌaU wily_python3]rÍUpython3-cryptorÎaUlucid]rÏU python-cryptorÐaUutopic_python3]rÑUpython3-cryptorÒaUxenial]rÓU python-cryptorÔaUxenial_python3]rÕUpython3-cryptorÖaUvivid]r×U python-cryptorØaUbionic]rÙU python-cryptorÚaUyakkety_python3]rÛUpython3-cryptorÜaU zesty_python3]rÝUpython3-cryptorÞaUraring]rßU python-cryptoràaUsaucy]ráU python-cryptorâaU vivid_python3]rãUpython3-cryptoräaUyakkety]råU python-cryptoræaUtrusty]rçU python-cryptorèaUoneiric]réU python-cryptorêaUartful_python3]rëUpython3-cryptorìaUartful]ríU python-cryptorîaUquantal]rïU python-cryptorðaUutopic]rñU python-cryptoròaUbionic_python3]róUpython3-cryptorôaUzesty]rõU python-cryptoröaUmaverick]r÷U python-cryptorøaUnatty]rùU python-cryptorúauU openembedded]rûUpython-pycrypto@meta-pythonrüaUarch]rýUpython2-cryptorþaUdebian]rÿU python-cryptoraUalpine]rU py-cryptorauUepydoc}r(Uosx}rUpip}rUpackages]rUepydocrassUfedora]rUepydocr aUgentoo]r Udev-python/epydocr aUmacports]r U py27-epydocr aUfreebsd]rUepydocraUubuntu]rU python-epydocraUarch]rUepydocraUdebian]rU python-epydocrauUpython-matplotlib}r(Uosx}rUpip}r(Udepends]r(U pkg-configrUfreetyperU libpng12-devreUpackages]rU matplotlibrausUfedora]rUpython-matplotlibr aUgentoo]r!Udev-python/matplotlibr"aUmacports]r#Upy27-matplotlibr$aUfreebsd]r%Upy27-matplotlibr&aUopensuse]r'Upython-matplotlibr(aUrhel]r)Upython-matplotlibr*aU slackware]r+U matplotlibr,aUubuntu}r-(Uprecise]r.Upython-matplotlibr/aUwily]r0Upython-matplotlibr1aUtrusty_python3]r2Upython3-matplotlibr3aUlucid]r4Upython-matplotlibr5aUutopic_python3]r6Upython3-matplotlibr7aUyakkety_python3]r8Upython3-matplotlibr9aUxenial_python3]r:Upython3-matplotlibr;aUvivid]r<Upython-matplotlibr=aUbionic]r>Upython-matplotlibr?aUxenial]r@Upython-matplotlibrAaU zesty_python3]rBUpython3-matplotlibrCaUraring]rDUpython-matplotlibrEaUsaucy]rFUpython-matplotlibrGaU vivid_python3]rHUpython3-matplotlibrIaUyakkety]rJUpython-matplotlibrKaUtrusty]rLUpython-matplotlibrMaUoneiric]rNUpython-matplotlibrOaUartful]rPUpython-matplotlibrQaUquantal]rRUpython-matplotlibrSaUutopic]rTUpython-matplotlibrUaU wily_python3]rVUpython3-matplotlibrWaUzesty]rXUpython-matplotlibrYaUmaverick]rZUpython-matplotlibr[aUnatty]r\Upython-matplotlibr]auUarch]r^Upython2-matplotlibr_aUdebian]r`Upython-matplotlibraauUpython-catkin-lint}rb(Ufedora]rcUpython-catkin_lintrdaUubuntu]reUpython-catkin-lintrfauU python-kombu}rg(Ufedora]rhU python-komburiaUdebian]rjU python-komburkaUrhel]rlU python-komburmaUubuntu]rnU python-komburoauUpython3-tornado}rp(Uosx}rqUpip}rrUpackages]rsUtornadortassUfedora]ruUpython3-tornadorvaUgentoo]rwUwww-servers/tornadorxaUubuntu]ryUpython3-tornadorzaUarch]r{Upython-tornador|aUdebian]r}Upython3-tornador~auUpython-imageio}r(Ufedora}r€Upip}rUpackages]r‚UimageiorƒassUdebian}r„(Ustretch}r…Upip}r†Upackages]r‡UimageiorˆassUjessie}r‰Upip}rŠUpackages]r‹UimageiorŒassU*]rUpython-imageiorŽaUwheezy}rUpip}rUpackages]r‘Uimageior’assuUgentoo]r“Udev-python/imageior”aUubuntu}r•(U*]r–Upython-imageior—aUtrusty}r˜Upip}r™Upackages]ršUimageior›assUxenial}rœUpip}rUpackages]ržUimageiorŸassuuUpython3-qt5-bindings-webkit}r (Ufedora]r¡Upython3-qt5-webkitr¢aUdebian]r£Upython3-pyqt5.qtwebkitr¤aUgentoo]r¥Udev-python/PyQt5[webkit]r¦aUubuntu]r§Upython3-pyqt5.qtwebkitr¨auUpython-autobahn}r©(Uosx}rªUpip}r«Upackages]r¬Uautobahnr­assUfedora}r®Upip}r¯Upackages]r°Uautobahnr±assUdebian]r²Upython-autobahnr³aUgentoo]r´Udev-python/autobahnrµaUubuntu}r¶(Uprecise}r·Upip}r¸Upackages]r¹UautobahnrºassUsaucy}r»Upip}r¼Upackages]r½Uautobahnr¾assUoneiric}r¿Upip}rÀUpackages]rÁUautobahnrÂassUlucid}rÃUpip}rÄUpackages]rÅUautobahnrÆassU*]rÇUpython-autobahnrÈaUnatty}rÉUpip}rÊUpackages]rËUautobahnrÌassUmaverick}rÍUpip}rÎUpackages]rÏUautobahnrÐassUquantal}rÑUpip}rÒUpackages]rÓUautobahnrÔassUraring}rÕUpip}rÖUpackages]r×UautobahnrØassuuUpython-pandacan-pip}rÙ(Udebian}rÚUpip}rÛUpackages]rÜUpandacanrÝassUubuntu}rÞUpip}rßUpackages]ràUpandacanráassuUpython-qwt5-qt4}râ(Ufedora]rãUPyQwträaUarch]råUpyqwtræaUdebian]rçUpython-qwt5-qt4rèaUgentoo]réUdev-python/pyqwt:5rêaUubuntu]rëUpython-qwt5-qt4rìauU python-h5py}rí(Ufedora]rîUh5pyrïaUdebian]rðU python-h5pyrñaUgentoo]ròUdev-python/h5pyróaUubuntu}rô(Utrusty_python3]rõU python3-h5pyröaU*]r÷U python-h5pyrøauuUpython-djangorestframework}rù(Udebian]rúUpython-djangorestframeworkrûaUubuntu]rüUpython-djangorestframeworkrýauUpython-xmltodict}rþ(Ufedora]rÿUpython-xmltodictr aUdebian}r (Ustretch]r Upython-xmltodictr aUjessie]r Upython-xmltodictr aUbuster]r Upython-xmltodictr auUgentoo]r Udev-python/xmltodictr aUubuntu}r (Uzesty]r Upython-xmltodictr aUyakkety]r Upython-xmltodictr aUartful]r Upython-xmltodictr aUbionic]r Upython-xmltodictr aUxenial]r Upython-xmltodictr auuU python3-nose}r (U openembedded]r Upython3-nose@openembedded-corer aUrhel]r U python%{python3_pkgversion}-noser aUdebian]r U python3-noser aUgentoo]r Udev-python/noser aUubuntu]r U python3-noser auUpython3-cryptography}r (Ufedora]r! Upython3-cryptographyr" aUdebian]r# Upython3-cryptographyr$ aUrhel]r% U(python%{python3_pkgversion}-cryptographyr& aUubuntu]r' Upython3-cryptographyr( auUpython-progressbar}r) (Uosx}r* Upip}r+ Upackages]r, U progressbarr- assUfedora]r. Upython-progressbarr/ aUdebian]r0 Upython-progressbarr1 aUgentoo]r2 Udev-python/progressbarr3 aUubuntu}r4 (Uprecise]r5 Upython-progressbarr6 aUtrusty_python3]r7 Upython3-progressbarr8 aUlucid]r9 Upython-progressbarr: aUxenial]r; Upython-progressbarr< aUvivid]r= Upython-progressbarr> aUbionic]r? Upython-progressbarr@ aUwily]rA Upython-progressbarrB aUsaucy]rC Upython-progressbarrD aUtrusty]rE Upython-progressbarrF aUoneiric]rG Upython-progressbarrH aUcosmic]rI Upython-progressbarrJ aUartful]rK Upython-progressbarrL aUnatty]rM Upython-progressbarrN aUutopic]rO Upython-progressbarrP aUraring]rQ Upython-progressbarrR aUmaverick]rS Upython-progressbarrT aUquantal]rU Upython-progressbarrV auuU python-pylint}rW (Uosx}rX Upip}rY Upackages]rZ Upylintr[ assUfedora]r\ Upylintr] aUdebian]r^ Upylintr_ aUgentoo]r` Udev-python/pylintra aUubuntu]rb Upylintrc auUpython3-babeltrace}rd (Udebian]re Upython3-babeltracerf aUubuntu]rg Upython3-babeltracerh auUpython-backoff-pip}ri (Uopensuse}rj Upip}rk Upackages]rl Ubackoffrm assUosx}rn Upip}ro Upackages]rp Ubackoffrq assUfedora}rr Upip}rs Upackages]rt Ubackoffru assUubuntu}rv Upip}rw Upackages]rx Ubackoffry assUarch}rz Upip}r{ Upackages]r| Ubackoffr} assUdebian}r~ Upip}r Upackages]r€ Ubackoffr assuUpython3-djangorestframework}r‚ (Udebian]rƒ Upython3-djangorestframeworkr„ aUubuntu]r… Upython3-djangorestframeworkr† auU python-trep}r‡ (Ufedora}rˆ Upip}r‰ Upackages]rŠ Utrepr‹ assUubuntu}rŒ Upip}r Upackages]rŽ Utrepr assUdebian}r Upip}r‘ Upackages]r’ Utrepr“ assUmacports]r” U py27-trepr• auU python-bluez}r– (Ufedora]r— Upybluezr˜ aUgentoo]r™ Udev-python/pybluezrš aUubuntu]r› U python-bluezrœ aUarch]r Upython2-pybluezrž aUdebian]rŸ U python-bluezr  aUrhel]r¡ U python-bluezr¢ auUpython-twisted-bin}r£ (Ufedora]r¤ Upython-twisted-corer¥ aUarch]r¦ Upython2-twistedr§ aUdebian]r¨ Upython-twisted-binr© aUgentoo]rª Udev-python/twistedr« aUubuntu]r¬ Upython-twisted-binr­ auUautolab-core-pip}r® Uubuntu}r¯ Upip}r° Upackages]r± U autolab-corer² asssUpython3-pkg-resources}r³ (Ufedora]r´ Upython3-setuptoolsrµ aUgentoo]r¶ Udev-python/setuptoolsr· aUubuntu]r¸ Upython3-pkg-resourcesr¹ aU openembedded]rº U$python3-setuptools@openembedded-corer» aUdebian]r¼ Upython3-pkg-resourcesr½ aUrhel]r¾ U&python%{python3_pkgversion}-setuptoolsr¿ auU python-grpcio}rÀ (Udebian}rÁ (Ustretch}r Upip]rà UgrpciorÄ asUjessie}rÅ Upip]rÆ UgrpciorÇ asU*]rÈ U python-grpciorÉ auUubuntu}rÊ (U*]rË U python-grpciorÌ aUtrusty}rÍ Upip]rÎ UgrpciorÏ asUbionic}rÐ Upip]rÑ UgrpciorÒ asUxenial}rÓ Upip]rÔ UgrpciorÕ asuuUpython}rÖ (Ufedora]r× U python-develrØ aUgentoo]rÙ Udev-lang/pythonrÚ aUmacports]rÛ (Upython26rÜ U python_selectrÝ eUfreebsd]rÞ Upython2rß aUopensuse]rà U python-develrá aUcygwin]râ Upythonrã aU slackware}rä Uslackpkg}rå Upackages]ræ Upythonrç assUubuntu}rè (Uprecise]ré U python-devrê aUwily]rë U python-devrì aUtrusty_python3]rí U python3-devrî aUlucid]rï U python-devrð aUyakkety_python3]rñ U python3-devrò aUxenial_python3]ró U python3-devrô aUvivid]rõ U python-devrö aUbionic]r÷ U python-devrø aUxenial]rù U python-devrú aU zesty_python3]rû U python3-devrü aUraring]rý U python-devrþ aUsaucy]rÿ U python-devr aUyakkety]r U python-devr aUtrusty]r U python-devr aUoneiric]r U python-devr aUartful]r U python-devr aUquantal]r U python-devr aUutopic]r U python-devr aU wily_python3]r U python3-devr aUzesty]r U python-devr aUmaverick]r U python-devr aUnatty]r U python-devr auU openembedded]r Upython@openembedded-corer aUalpine]r U python2-devr aUarch]r Upython2r aUdebian]r U python-devr aUrhel]r U python-develr auU python-gridfs}r (Ufedora]r Upython-pymongo-gridfsr! aUdebian]r" U python-gridfsr# aUubuntu}r$ (Uprecise]r% U python-gridfsr& aUsaucy]r' U python-gridfsr( aUtrusty]r) U python-gridfsr* aUoneiric]r+ U python-gridfsr, aUtrusty_python3]r- Upython3-gridfsr. aUlucid]r/ U python-gridfsr0 aUnatty]r1 U python-gridfsr2 aUmaverick]r3 U python-gridfsr4 aUquantal]r5 U python-gridfsr6 aUraring]r7 U python-gridfsr8 auuU python-boto3}r9 (Uopensuse]r: U python-boto3r; aUfedora]r< U python2-boto3r= aUgentoo]r> Udev-python/boto3r? aUubuntu}r@ (U*]rA U python-boto3rB aUtrustyNuUarch]rC U python-boto3rD aUdebian]rE U python-boto3rF auUpython-more-itertools-pip}rG (Ufedora}rH Upip}rI Upackages]rJ Umore-itertoolsrK assUarch}rL Upip}rM Upackages]rN Umore-itertoolsrO assUdebian}rP Upip}rQ Upackages]rR Umore-itertoolsrS assUubuntu}rT Upip}rU Upackages]rV Umore-itertoolsrW assuUpython-rpi.gpio}rX (Ufedora}rY (U25}rZ Upip}r[ Upackages]r\ URPi.GPIOr] assU26]r^ Upython-rpi-gpior_ auUdebian}r` (Ustretch}ra Upip}rb Upackages]rc URPi.GPIOrd assUjessie}re Upip}rf Upackages]rg URPi.GPIOrh assUbuster]ri Upython-rpi.gpiorj auUubuntu}rk (Uyakkety}rl Upip}rm Upackages]rn URPi.GPIOro assUwily}rp Upip}rq Upackages]rr URPi.GPIOrs assUartful]rt Upython-rpi.gpioru aUxenial}rv Upip}rw Upackages]rx URPi.GPIOry assUutopic}rz Upip}r{ Upackages]r| URPi.GPIOr} assUvivid}r~ Upip}r Upackages]r€ URPi.GPIOr assUbionic]r‚ Upython-rpi.gpiorƒ aUzesty]r„ Upython-rpi.gpior… aUtrusty}r† Upip}r‡ Upackages]rˆ URPi.GPIOr‰ assuuUpython-anyjson}rŠ (Ufedora]r‹ Upython-anyjsonrŒ aUdebian]r Upython-anyjsonrŽ aUgentoo]r Udev-python/anyjsonr aUubuntu]r‘ Upython-anyjsonr’ auUpython-packaging}r“ (Ufedora]r” Upython-packagingr• aUdebian]r– Upython-packagingr— aUubuntu]r˜ Upython-packagingr™ auUurdf2webots-pip}rš (Ufedora}r› Upip}rœ Upackages]r U urdf2webotsrž assUdebian}rŸ Upip}r  Upackages]r¡ U urdf2webotsr¢ assUubuntu}r£ Upip}r¤ Upackages]r¥ U urdf2webotsr¦ assuUpython-google-cloud-speech-pip}r§ (Ufedora}r¨ Upip}r© Upackages]rª Ugoogle-cloud-speechr« assUdebian}r¬ Upip}r­ Upackages]r® Ugoogle-cloud-speechr¯ assUubuntu}r° Upip}r± Upackages]r² Ugoogle-cloud-speechr³ assuUpython-google-cloud-vision-pip}r´ (Ufedora}rµ Upip}r¶ Upackages]r· Ugoogle-cloud-visionr¸ assUdebian}r¹ Upip}rº Upackages]r» Ugoogle-cloud-visionr¼ assUubuntu}r½ Upip}r¾ Upackages]r¿ Ugoogle-cloud-visionrÀ assuU python-babel}rÁ (Ufedora]r U python-babelrà aUdebian]rÄ U python-babelrÅ aUgentoo]rÆ Udev-python/BabelrÇ aUubuntu]rÈ U python-babelrÉ auUpython-imaging}rÊ (Uosx}rË Upip}rÌ Upackages]rÍ UPillowrÎ assUfedora]rÏ (U python-pillowrÐ Upython-pillow-qtrÑ eUgentoo]rÒ Udev-python/pillowrÓ aUmacports]rÔ Upy27-pilrÕ aUfreebsd]rÖ U py27-pillowr× aUopensuse]rØ Upython-imagingrÙ aUrhel]rÚ Upython-imagingrÛ aU slackware}rÜ Uslackpkg}rÝ Upackages]rÞ U python-pillowrß assUubuntu}rà (Uprecise]rá Upython-imagingrâ aUwily]rã Upython-imagingrä aUtrusty_python3]rå Upython3-imagingræ aUlucid]rç Upython-imagingrè aUyakkety_python3]ré Upython3-imagingrê aUxenial_python3]rë Upython3-imagingrì aUvivid]rí Upython-imagingrî aUxenial]rï Upython-imagingrð aU zesty_python3]rñ Upython3-imagingrò aUraring]ró Upython-imagingrô aUsaucy]rõ Upython-imagingrö aUyakkety]r÷ Upython-imagingrø aUtrusty]rù Upython-imagingrú aUoneiric]rû Upython-imagingrü aU*]rý U python-pilrþ aUartful]rÿ Upython-imagingr aUquantal]r Upython-imagingr aUutopic]r Upython-imagingr aU wily_python3]r Upython3-imagingr aUzesty]r Upython-imagingr aUmaverick]r Upython-imagingr aUnatty]r Upython-imagingr auUarch]r Upython2-pillowr aUdebian}r (Ustretch]r Upython-imagingr aUjessie]r Upython-imagingr aU*]r U python-pilr auUalpine]r U py-imagingr auU python-pandas}r (Ufedora]r U python-pandasr aUarch]r Upython2-pandasr aUdebian]r U python-pandasr aUgentoo]r Udev-python/pandasr aUubuntu]r! U python-pandasr" auUpython-itsdangerous}r# (Ufedora]r$ Upython-itsdangerousr% aUdebian}r& (Ustretch]r' Upython-itsdangerousr( aUjessie]r) Upython-itsdangerousr* aUbuster]r+ Upython-itsdangerousr, auUgentoo]r- Udev-python/itsdangerousr. aUubuntu]r/ Upython-itsdangerousr0 auU pydocstyle}r1 (Ufedora]r2 Upython3-pydocstyler3 aU openembedded]r4 U ${PYTHON_PN}-pydocstyle@meta-rosr5 aUdebian}r6 (Ustretch]r7 U pydocstyler8 aUbuster]r9 U pydocstyler: auUgentoo]r; Udev-python/pydocstyler< aUubuntu]r= U pydocstyler> auUpython-librabbitmq-pip}r? (Uosx}r@ Upip}rA (Udepends]rB Ulibrabbitmq-devrC aUpackages]rD U librabbitmqrE ausUfedora}rF Upip}rG (Udepends]rH Ulibrabbitmq-devrI aUpackages]rJ U librabbitmqrK ausUdebian}rL Upip}rM (Udepends]rN Ulibrabbitmq-devrO aUpackages]rP U librabbitmqrQ ausUubuntu}rR Upip}rS (Udepends]rT Ulibrabbitmq-devrU aUpackages]rV U librabbitmqrW ausuU python-mapnik}rX (Ufedora]rY U mapnik-pythonrZ aUdebian]r[ U python-mapnikr\ aUubuntu]r] U python-mapnikr^ auUpython-graphitesend-pip}r_ (Udebian}r` Upip}ra Upackages]rb U graphitesendrc assUubuntu}rd Upip}re Upackages]rf U graphitesendrg assuU python-tz}rh (Ufedora]ri Upytzrj aUarch]rk U python2-pytzrl aUdebian]rm U python-tzrn aUgentoo]ro Udev-python/pytzrp aUubuntu]rq U python-tzrr auUpython-readchar-pip}rs Uubuntu}rt Upip}ru Upackages]rv Ureadcharrw asssUpython-tinydb-pip}rx (Udebian}ry Upip}rz Upackages]r{ Utinydbr| assUubuntu}r} Upip}r~ Upackages]r Utinydbr€ assuU python-jwt}r (Ufedora]r‚ U python-jwtrƒ aUdebian]r„ U python-jwtr… aUgentoo]r† Udev-python/python-jwtr‡ aUubuntu]rˆ U python-jwtr‰ auUpython-qt5-bindings-qsci}rŠ (Ufedora]r‹ Upython2-qscintilla-qt5rŒ aUdebian]r Upython-pyqt5.qscirŽ aUubuntu]r Upython-pyqt5.qscir auUpython-telegram-bot}r‘ Uubuntu}r’ Upip}r“ Upackages]r” Upython-telegram-botr• asssU python-cwiid}r– (Ufedora]r— Ucwiidr˜ aUgentoo]r™ Uapp-misc/cwiid[python]rš aUubuntu]r› U python-cwiidrœ aUarch]r Ucwiidrž aUdebian]rŸ U python-cwiidr  aUrhel]r¡ Ucwiidr¢ auUpython-tablib-pip}r£ (Ufedora}r¤ Upip}r¥ Upackages]r¦ Utablibr§ assUdebian}r¨ Upip}r© Upackages]rª Utablibr« assUubuntu}r¬ Upip}r­ Upackages]r® Utablibr¯ assuUpython-pulsectl-pip}r° (Ufedora}r± Upip}r² Upackages]r³ Upulsectlr´ assUdebian}rµ Upip}r¶ Upackages]r· Upulsectlr¸ assUubuntu}r¹ Upip}rº Upackages]r» Upulsectlr¼ assuUpython-chainer-pip}r½ (Uosx}r¾ Upip}r¿ Upackages]rÀ UchainerrÁ assUfedora}r Upip}rà Upackages]rÄ UchainerrÅ assUdebian}rÆ Upip}rÇ Upackages]rÈ UchainerrÉ assUubuntu}rÊ Upip}rË Upackages]rÌ UchainerrÍ assuUpython-pytest-qt-pip}rÎ (Ufedora}rÏ Upip}rÐ Upackages]rÑ U pytest-qtrÒ assUdebian}rÓ Upip}rÔ Upackages]rÕ U pytest-qtrÖ assUubuntu}r× Upip}rØ Upackages]rÙ U pytest-qtrÚ assuUpython3-flake8}rÛ (Ufedora]rÜ Upython3-flake8rÝ aUgentoo]rÞ Udev-python/flake8rß aUubuntu]rà Upython3-flake8rá aU openembedded]râ Upython3-flake8@meta-rosrã aUdebian}rä (Ustretch]rå Upython3-flake8ræ aUjessie]rç Upython3-flake8rè aUbuster]ré Upython3-flake8rê auUrhel}rë (U*]rì U"python%{python3_pkgversion}-flake8rí aU7NuuUadafruit-gpio-pip}rî (Udebian}rï Upip}rð Upackages]rñ U Adafruit-GPIOrò assUubuntu}ró Upip}rô Upackages]rõ U Adafruit-GPIOrö assuUpython-shapely}r÷ (Uosx}rø Upip}rù Upackages]rú Ushapelyrû assUfedora]rü Upython-shapelyrý aUdebian]rþ Upython-shapelyrÿ aUgentoo]r Usci-libs/Shapelyr aUubuntu}r (U vivid_python3]r Upython3-shapelyr aUxenial_python3]r Upython3-shapelyr aU wily_python3]r Upython3-shapelyr aUtrusty_python3]r Upython3-shapelyr aU*]r Upython-shapelyr aUutopic_python3]r Upython3-shapelyr aUyakkety_python3]r Upython3-shapelyr auuU python-opengl}r (Uosx}r Upip}r Upackages]r UPyOpenGLr assUfedora]r Upython2-pyopenglr aUgentoo]r Udev-python/pyopenglr aUmacports]r U py27-openglr aUfreebsd]r U py27-PyOpenGLr aUopensuse]r U python-openglr aU slackware]r UPyOpenGLr! aUubuntu}r" (Uprecise]r# U python-openglr$ aUtrusty_python3]r% Upython3-openglr& aUlucid]r' U python-openglr( aUxenial]r) U python-openglr* aUvivid]r+ U python-openglr, aUbionic]r- U python-openglr. aUwily]r/ U python-openglr0 aUsaucy]r1 U python-openglr2 aUyakkety]r3 U python-openglr4 aUtrusty]r5 U python-openglr6 aUoneiric]r7 U python-openglr8 aUartful]r9 U python-openglr: aUnatty]r; U python-openglr< aUutopic]r= U python-openglr> aUzesty]r? U python-openglr@ aUraring]rA U python-openglrB aUmaverick]rC U python-openglrD aUquantal]rE U python-openglrF auUarch]rG Upython2-openglrH aUdebian]rI U python-openglrJ auUpython-termcolor}rK (Uosx}rL Upip}rM Upackages]rN U termcolorrO assUfedora]rP Upython-termcolorrQ aUdebian}rR (Ustretch]rS Upython-termcolorrT aUjessie]rU Upython-termcolorrV aUbuster]rW Upython-termcolorrX aUwheezy}rY Upip}rZ Upackages]r[ U termcolorr\ assuUgentoo]r] Udev-python/termcolorr^ aUubuntu}r_ (Ubionic_python3]r` Upython3-termcolorra aUxenial_python3]rb Upython3-termcolorrc aUcosmic_python3]rd Upython3-termcolorre aUtrusty_python3]rf Upython3-termcolorrg aUartful_python3]rh Upython3-termcolorri aU*]rj Upython-termcolorrk aU zesty_python3]rl Upython3-termcolorrm auuUgunicorn}rn (Ufedora]ro Upython-gunicornrp aUdebian]rq Ugunicornrr aUgentoo]rs Uwww-servers/gunicornrt aUubuntu]ru Ugunicornrv auU python-yaml}rw (Uosx}rx Upip}ry (Udepends]rz Uyamlr{ aUpackages]r| UPyYAMLr} ausUfedora]r~ UPyYAMLr aUcentos]r€ UPyYAMLr aUmacports]r‚ U py27-yamlrƒ aUgentoo]r„ Udev-python/pyyamlr… aUfreebsd]r† U py27-yamlr‡ aUopensuse]rˆ U python-PyYAMLr‰ aUrhel]rŠ UPyYAMLr‹ aU slackware]rŒ UPyYAMLr aUubuntu}rŽ (Uprecise]r U python-yamlr aUwily]r‘ U python-yamlr’ aUtrusty_python3]r“ U python3-yamlr” aUlucid]r• U python-yamlr– aUyakkety_python3]r— U python3-yamlr˜ aUxenial_python3]r™ U python3-yamlrš aUvivid]r› U python-yamlrœ aUbionic]r U python-yamlrž aUxenial]rŸ U python-yamlr  aU zesty_python3]r¡ U python3-yamlr¢ aUraring]r£ U python-yamlr¤ aUsaucy]r¥ U python-yamlr¦ aUyakkety]r§ U python-yamlr¨ aUtrusty]r© U python-yamlrª aUoneiric]r« U python-yamlr¬ aUartful]r­ U python-yamlr® aUquantal]r¯ U python-yamlr° aUutopic]r± U python-yamlr² aU wily_python3]r³ U python3-yamlr´ aUzesty]rµ U python-yamlr¶ aUmaverick]r· U python-yamlr¸ aUnatty]r¹ U python-yamlrº auU openembedded]r» Upython-pyyaml@meta-pythonr¼ aUarch]r½ U python2-yamlr¾ aUdebian]r¿ U python-yamlrÀ aUalpine]rÁ Upy-yamlr auUpython-catkin-tools}rà (Uosx}rÄ Upip}rÅ Upackages]rÆ U catkin_toolsrÇ assUfedora]rÈ Upython-catkin_toolsrÉ aUarch]rÊ Upython2-catkin-toolsrË aUdebian]rÌ Upython-catkin-toolsrÍ aUubuntu]rÎ Upython-catkin-toolsrÏ auU python-visual}rÐ (Ufedora]rÑ U python-visualrÒ aUdebian]rÓ U python-visualrÔ aUgentoo]rÕ Udev-python/visualrÖ aUubuntu]r× U python-visualrØ auU python-semver}rÙ (Ufedora]rÚ U python-semverrÛ aUdebian]rÜ U python-semverrÝ aUubuntu]rÞ U python-semverrß auUpython-django-cors-headers}rà (Udebian]rá Upython-django-cors-headersrâ aUubuntu]rã Upython-django-cors-headersrä auUpython-watchdog}rå (Udebian]ræ Upython-watchdogrç aUubuntu}rè (Uzesty]ré Upython-watchdogrê aUyakkety]rë Upython-watchdogrì aUartful]rí Upython-watchdogrî aUbionic]rï Upython-watchdogrð aUxenial]rñ Upython-watchdogrò auuUpython-pyassimp}ró (Uosx}rô Ulion}rõ Uhomebrew}rö Upackages]r÷ Upyassimprø asssUfedora]rù U assimp-pythonrú aUgentoo]rû Umedia-libs/assimprü aUubuntu}rý (Uprecise]rþ Upython-pyassimprÿ aUsaucy]r Upython-pyassimpr aUyakkety]r Upython-pyassimpr aUtrusty]r Upython-pyassimpr aUoneiric]Ulucid]Uartful]r Upython-pyassimpr aUxenial]r Upython-pyassimpr aUutopic]r Upython-pyassimpr aUvivid]r Upython-pyassimpr aUbionic]r Upython-pyassimpr aUzesty]r Upython-pyassimpr aUraring]r Upython-pyassimpr aUquantal]r Upython-pyassimpr aUwily]r Upython-pyassimpr auUarch]r Upython2-pyassimpr aUdebian]r Upython-pyassimpr auUpython3-pytest}r (Ufedora]r Upython3-pytestr aUgentoo]r Udev-python/pytestr aUrhel]r! U"python%{python3_pkgversion}-pytestr" aUubuntu]r# Upython3-pytestr$ aU openembedded]r% Upython3-pytest@meta-pythonr& aUarch]r' U python-pytestr( aUdebian]r) Upython3-pytestr* aUalpine]r+ U py3-pytestr, auU pydrive-pip}r- (Uosx}r. Upip}r/ Upackages]r0 UPyDriver1 assUfedora}r2 Upip}r3 Upackages]r4 UPyDriver5 assUdebian}r6 Upip}r7 Upackages]r8 UPyDriver9 assUubuntu}r: Upip}r; Upackages]r< UPyDriver= assuU python-pyproj}r> (Uosx}r? Upip}r@ Upackages]rA UpyprojrB assUfedora]rC UpyprojrD aUgentoo]rE Udev-python/pyprojrF aUubuntu]rG U python-pyprojrH aUarch]rI Upython2-pyprojrJ aUdebian]rK U python-pyprojrL auU python-percol}rM (Uosx}rN Upip}rO Upackages]rP UpercolrQ assUfedora}rR Upip}rS Upackages]rT UpercolrU assUdebian}rV Upip}rW Upackages]rX UpercolrY assUubuntu}rZ Upip}r[ Upackages]r\ Upercolr] assuUpython-freezegun-pip}r^ (Uosx}r_ Upip}r` Upackages]ra U freezegunrb assUfedora}rc Upip}rd Upackages]re U freezegunrf assUdebian}rg Upip}rh Upackages]ri U freezegunrj assUubuntu}rk Upip}rl Upackages]rm U freezegunrn assuUpython-enum34-pip}ro Uubuntu}rp Upip}rq Upackages]rr Uenum34rs asssUpython-pycryptodome}rt (Uosx}ru Upip}rv Upackages]rw U pycryptodomerx assUfedora]ry Upython-pycryptodomexrz aUgentoo]r{ Udev-python/pycryptodomer| aUubuntu]r} Upython-pycryptodomer~ aUarch]r Upython2-pycryptodomer€ aUdebian]r Upython-pycryptodomer‚ aUrhel]rƒ Upython-pycryptodomexr„ auUpython3-rosdistro-modules}r… (Ufedora]r† Upython3-rosdistror‡ aUgentoo]rˆ Udev-python/rosdistror‰ aUubuntu]rŠ Upython3-rosdistro-modulesr‹ aU openembedded]rŒ Upython3-rosdistro@meta-rosr aUdebian]rŽ Upython3-rosdistro-modulesr aUrhel]r U%python%{python3_pkgversion}-rosdistror‘ auU python3-boto3}r’ (Uopensuse]r“ U python3-boto3r” aUfedora]r• U python3-boto3r– aUdebian]r— U python3-boto3r˜ aUubuntu]r™ U python3-boto3rš auUpython-argcomplete}r› (Ufedora]rœ Upython-argcompleter aUgentoo]rž Udev-python/argcompleterŸ aUubuntu]r  Upython-argcompleter¡ auUpython-gcloud-pip}r¢ Uubuntu}r£ Upip}r¤ Upackages]r¥ Ugcloudr¦ asssUpython-flatdict-pip}r§ Uubuntu}r¨ Upip}r© Upackages]rª Uflatdictr« asssUpython-googleapi}r¬ (Ufedora]r­ Ugoogle-api-python-clientr® aUdebian]r¯ Upython-googleapir° aUgentoo]r± U#dev-python/google-api-python-clientr² aUubuntu}r³ (Uutopic]r´ Upython-googleapirµ aUtrusty]r¶ Upython-googleapir· aUxenial_python3]r¸ Upython3-googleapir¹ aUvivid]rº Upython-googleapir» aUwily]r¼ Upython-googleapir½ aU wily_python3]r¾ Upython3-googleapir¿ aUxenial]rÀ Upython-googleapirÁ auuUpython-vcstools}r (Ufedora]rà Upython-vcstoolsrÄ aUdebian}rÅ (Ustretch]rÆ Upython-vcstoolsrÇ aUbuster]rÈ Upython-vcstoolsrÉ auUgentoo]rÊ Udev-python/vcstoolsrË aUmacports]rÌ U py27-vcstoolsrÍ auUpython-paramiko}rÎ (Uosx}rÏ Upip}rÐ Upackages]rÑ UparamikorÒ assUfedora]rÓ Upython-paramikorÔ aUgentoo]rÕ Udev-python/paramikorÖ aUmacports]r× U py27-paramikorØ aUfreebsd]rÙ U py27-paramikorÚ aUopensuse]rÛ Upython-paramikorÜ aUrhel]rÝ Upython-paramikorÞ aU slackware]rß Uparamikorà aUubuntu]rá Upython-paramikorâ aU openembedded]rã Upython-paramiko@meta-rosrä aUarch]rå Upython2-paramikoræ aUdebian]rç Upython-paramikorè aUalpine]ré U py-paramikorê auU python-sphinx}rë (Uosx}rì Upip}rí Upackages]rî USphinxrï assUfedora]rð U python-sphinxrñ aUgentoo]rò Udev-python/sphinxró aUmacports]rô U py27-sphinxrõ aUopensuse]rö U python-Sphinxr÷ aUfreebsd]rø U py27-sphinxrù aUubuntu}rú (Utrusty_python3]rû Upython3-sphinxrü aUxenial_python3]rý Upython3-sphinxrþ aU*]rÿ U python-sphinxrauU openembedded]rUpython-sphinx@meta-rosraUarch]rUpython2-sphinxraUdebian]rU python-sphinxrauUpython-tensorflow-hub-pip}r(Uosx}rUpip}r Upackages]r Utensorflow-hubr assUfedora}r Upip}r Upackages]rUtensorflow-hubrassUdebian}rUpip}rUpackages]rUtensorflow-hubrassUubuntu}rUpip}rUpackages]rUtensorflow-hubrassuUpython-pyvirtualdisplay-pip}rUubuntu}rUpip}rUpackages]rUpyvirtualdisplayrasssUqdarkstyle-pip}r(Uosx}rUpip]rU qdarkstyler asUfedora}r!Upip]r"U qdarkstyler#asUdebian}r$Upip]r%U qdarkstyler&asUubuntu}r'Upip]r(U qdarkstyler)asuUpython-mysqldb}r*(Ufedora]r+U python-mysqlr,aUdebian]r-Upython-mysqldbr.aUgentoo]r/Udev-python/mysqlclientr0aUubuntu]r1Upython-mysqldbr2auUpython-oauth2client}r3(Ufedora]r4Upython-oauth2clientr5aUdebian]r6Upython-oauth2clientr7aUgentoo]r8Udev-python/oauth2clientr9aUubuntu]r:Upython-oauth2clientr;auU pynput-pip}r<(Udebian}r=Upip}r>Upackages]r?Upynputr@assUubuntu}rAUpip}rBUpackages]rCUpynputrDassuUpython-werkzeug}rE(Ufedora]rFUpython-werkzeugrGaUarch]rHUpython-werkzeugrIaUdebian]rJUpython-werkzeugrKaUgentoo]rLUdev-python/werkzeugrMaUubuntu]rNUpython-werkzeugrOauUpython-easygui}rP(Ufedora]rQUpython-easyguirRaUdebian]rSUpython-easyguirTaUubuntu]rUUpython-easyguirVauUpython-virtualenv}rW(Ufedora]rXUpython-virtualenvrYaUdebian]rZUpython-virtualenvr[aUgentoo]r\Udev-python/virtualenvr]aUubuntu]r^Upython-virtualenvr_auUpython-pyaudio}r`(Ufedora]raUpyaudiorbaUdebian]rcUpython-pyaudiordaUgentoo]reUdev-python/pyaudiorfaUubuntu]rgUpython-pyaudiorhauU python-mock}ri(Uosx}rjUpip}rkUpackages]rlUmockrmassUfedora]rnU python-mockroaUgentoo]rpUdev-python/mockrqaUfreebsd]rrU py27-mockrsaUopensuse]rtU python-mockruaUrhel]rvU python2-mockrwaU slackware]rxUmockryaUubuntu}rz(Uprecise]r{U python-mockr|aUtrusty_python3]r}U python3-mockr~aUlucid]rU python-mockr€aUxenial]rU python-mockr‚aUxenial_python3]rƒU python3-mockr„aUvivid]r…U python-mockr†aUbionic]r‡U python-mockrˆaUwily]r‰U python-mockrŠaUsaucy]r‹U python-mockrŒaUyakkety]rU python-mockrŽaUtrusty]rU python-mockraUoneiric]r‘U python-mockr’aUartful]r“U python-mockr”aUnatty]r•U python-mockr–aUutopic]r—U python-mockr˜aU wily_python3]r™U python3-mockršaUzesty]r›U python-mockrœaUraring]rU python-mockržaUmaverick]rŸU python-mockr aUquantal]r¡U python-mockr¢auU openembedded]r£Upython-mock@meta-pythonr¤aUarch]r¥U python2-mockr¦aUdebian]r§U python-mockr¨aUalpine]r©Upy-mockrªauUpython-lindypy-pip}r«(Ufedora}r¬Upip}r­Upackages]r®Ulindypyr¯assUdebian}r°Upip}r±Upackages]r²Ulindypyr³assUubuntu}r´Upip}rµUpackages]r¶Ulindypyr·assuUpython-configparser}r¸(Ufedora]r¹Upython-configparserrºaUarch]r»Upython2-configparserr¼aUdebian]r½Upython-configparserr¾aUgentoo]r¿Udev-python/configparserrÀaUubuntu]rÁUpython-configparserrÂauUpython-multicast}rÃ(Ufedora}rÄUpip]rÅU py-multicastrÆasUubuntu}rÇUpip]rÈU py-multicastrÉasuUpython-docutils}rÊ(Ufedora]rËUpython-docutilsrÌaUarch]rÍUpython2-docutilsrÎaUdebian]rÏUpython-docutilsrÐaUgentoo]rÑUdev-python/docutilsrÒaUubuntu}rÓ(Uprecise]rÔUpython-docutilsrÕaUtrusty_python3]rÖUpython3-docutilsr×aUlucid]rØUpython-docutilsrÙaUutopic_python3]rÚUpython3-docutilsrÛaUxenial]rÜUpython-docutilsrÝaUvivid]rÞUpython-docutilsrßaUbionic]ràUpython-docutilsráaUtrusty]râUpython-docutilsrãaUsaucy]räUpython-docutilsråaU vivid_python3]ræUpython3-docutilsrçaUwily]rèUpython-docutilsréaUoneiric]rêUpython-docutilsrëaUartful]rìUpython-docutilsríaUnatty]rîUpython-docutilsrïaUutopic]rðUpython-docutilsrñaUraring]ròUpython-docutilsróaUmaverick]rôUpython-docutilsrõaUquantal]röUpython-docutilsr÷auuUpython3-termcolor}rø(Ufedora]rùUpython3-termcolorrúaUdebian]rûUpython3-termcolorrüaUgentoo]rýUdev-python/termcolorrþaUubuntu]rÿUpython3-termcolorrauU python3-empy}r(Ufedora]rU python3-empyraUgentoo]rUdev-python/empyraUubuntu]rU python3-empyraU openembedded]rUpython3-empy@meta-rosr aUdebian}r (Ustretch]r U python3-empyr aUjessie]r U python3-empyraUbuster]rU python3-empyrauUrhel]rU python%{python3_pkgversion}-empyrauU python-pygame}r(Ufedora]rU pygame-develraUarch]rUpython2-pygameraUdebian]rU python-pygameraUgentoo]rUdev-python/pygameraUubuntu]rU python-pygamerauUpython-networkx}r(Ufedora]rUpython-networkxr aUarch]r!Upython2-networkxr"aUdebian]r#Upython-networkxr$aUgentoo]r%Udev-python/networkxr&aUubuntu}r'(Uxenial_python3]r(Upython3-networkxr)aU wily_python3]r*Upython3-networkxr+aUtrusty_python3]r,Upython3-networkxr-aU*]r.Upython-networkxr/aU zesty_python3]r0Upython3-networkxr1aUyakkety_python3]r2Upython3-networkxr3auuUpython-transitions}r4(Udebian}r5(Ustretch}r6Upip}r7Upackages]r8U transitionsr9assU*]r:Upython-transitionsr;auUubuntu}r<(U*]r=Upython-transitionsr>aUtrusty}r?Upip}r@Upackages]rAU transitionsrBassUxenial}rCUpip}rDUpackages]rEU transitionsrFassuuU python-mako}rG(Ufedora]rHU python-makorIaUdebian]rJU python-makorKaUgentoo]rLUdev-python/makorMaUubuntu]rNU python-makorOauU python-docx}rP(Ufedora]rQU python-docxrRaUubuntu}rSUpip]rTU python-docxrUasuUpython3-setuptools}rV(Ufedora]rWUpython3-setuptoolsrXaUgentoo]rYUdev-python/setuptoolsrZaUubuntu]r[Upython3-setuptoolsr\aU openembedded]r]U$python3-setuptools@openembedded-corer^aUdebian]r_Upython3-setuptoolsr`aUrhel]raU&python%{python3_pkgversion}-setuptoolsrbauUpython-sparqlwrapper}rc(Udebian]rdUpython-sparqlwrapperreaUgentoo]rfUdev-python/sparql-wrapperrgaUubuntu]rhUpython-sparqlwrapperriauU python-redis}rj(Ufedora]rkU python-redisrlaUdebian]rmU python-redisrnaUgentoo]roUdev-python/redis-pyrpaUubuntu]rqU python-redisrrauUpython-waitress}rs(Ufedora]rtUpython-waitressruaUdebian]rvUpython-waitressrwaUgentoo]rxUdev-python/waitressryaUubuntu]rzUpython-waitressr{auUpython-pyquery}r|(Uosx}r}Upip}r~Upackages]rUpyqueryr€assUfedora]rUpython-pyqueryr‚aUdebian]rƒUpython-pyqueryr„aUgentoo]r…Udev-python/pyqueryr†aUubuntu]r‡Upython-pyqueryrˆauUpython-vcstool}r‰(Ufedora]rŠUpython-vcstoolr‹aUdebian}rŒ(Ustretch]rUpython-vcstoolrŽaUbuster]rUpython-vcstoolrauUubuntu]r‘Upython-vcstoolr’auU python3-dev}r“(Ufedora]r”U python3-develr•aUgentoo]r–U=dev-lang/python-3*r—aUubuntu]r˜U python3-devr™aU openembedded]ršUpython3@openembedded-corer›aUdebian]rœU python3-devraUrhel]ržU!python%{python3_pkgversion}-develrŸauU python-pyudev}r (Ufedora]r¡U python-pyudevr¢aUdebian]r£U python-pyudevr¤aUgentoo]r¥Udev-python/pyudevr¦aUubuntu}r§(Ubionic_python3]r¨Upython3-pyudevr©aUxenial_python3]rªUpython3-pyudevr«aUcosmic_python3]r¬Upython3-pyudevr­aUtrusty_python3]r®Upython3-pyudevr¯aUartful_python3]r°Upython3-pyudevr±aU*]r²U python-pyudevr³aU zesty_python3]r´Upython3-pyudevrµauuUpython-pygraph}r¶(Udebian]r·Upython-pygraphr¸aUubuntu]r¹Upython-pygraphrºauUpython-twisted-core}r»(Ufedora]r¼Upython-twisted-corer½aUarch]r¾Upython2-twistedr¿aUdebian]rÀUpython-twisted-corerÁaUgentoo]rÂUdev-python/twistedrÃaUubuntu]rÄUpython-twisted-corerÅauUpymodbustcp-pip}rÆ(Uosx}rÇUpip}rÈUpackages]rÉU pyModbusTCPrÊassUfedora}rËUpip}rÌUpackages]rÍU pyModbusTCPrÎassUdebian}rÏUpip}rÐUpackages]rÑU pyModbusTCPrÒassUubuntu}rÓUpip}rÔUpackages]rÕU pyModbusTCPrÖassuUpython-msgpack}r×(Ufedora]rØUpython-msgpackrÙaUarch]rÚUpython2-msgpackrÛaUdebian]rÜUpython-msgpackrÝaUgentoo]rÞUdev-python/msgpackrßaUubuntu]ràUpython-msgpackráauUpython-webrtcvad-pip}râ(Uosx}rãUpip}räUpackages]råU webrtcvadræassUfedora}rçUpip}rèUpackages]réU webrtcvadrêassUdebian}rëUpip}rìUpackages]ríU webrtcvadrîassUubuntu}rïUpip}rðUpackages]rñU webrtcvadròassuUparamiko}ró(Uosx}rôUpip}rõUpackages]röUparamikor÷assUfedora]røUpython-paramikorùaUgentoo]rúUdev-python/paramikorûaUmacports]rüU py27-paramikorýaUopensuse]rþUpython-paramikorÿaUrhel]rUpython-paramikoraUfreebsd]rU py27-paramikoraUubuntu]rUpython-paramikoraUarch]rUpython2-paramikoraUdebian]rUpython-paramikor aUalpine]r U py-paramikor auUpython3-paramiko}r (Ufedora]r Upython3-paramikoraUdebian]rUpython3-paramikoraUgentoo]rUdev-python/paramikoraUubuntu]rUpython3-paramikorauUpython-paho-mqtt-pip}rUubuntu}rUpip}rUpackages]rU paho-mqttrasssU python-pydbus}rUubuntu}r(Utrusty}rUpip}r(Udepends]rU python-giraUpackages]r Upydbusr!ausUartful]r"U python-pydbusr#aUbionic]r$U python-pydbusr%aUxenial}r&Upip}r'(Udepends]r(U python-gir)aUpackages]r*Upydbusr+aususU python-svn}r,(Ufedora]r-Upysvnr.aUdebian]r/U python-svnr0aUgentoo]r1Udev-python/pysvnr2aUubuntu]r3U python-svnr4auUpython-netifaces}r5(Uosx}r6Upip}r7Upackages]r8U netifacesr9assUfedora]r:Upython-netifacesr;aUgentoo]r<Udev-python/netifacesr=aUmacports]r>U p27-netifacesr?aUfreebsd]r@Upy27-netifacesrAaUopensuse]rBUpython-netifacesrCaU slackware]rDU netifacesrEaUubuntu}rF(Uprecise]rGUpython-netifacesrHaUwily]rIUpython-netifacesrJaUtrusty_python3]rKUpython3-netifacesrLaUlucid]rMUpython-netifacesrNaUyakkety_python3]rOUpython3-netifacesrPaUxenial_python3]rQUpython3-netifacesrRaUvivid]rSUpython-netifacesrTaUbionic]rUUpython-netifacesrVaUxenial]rWUpython-netifacesrXaU zesty_python3]rYUpython3-netifacesrZaUraring]r[Upython-netifacesr\aUsaucy]r]Upython-netifacesr^aUyakkety]r_Upython-netifacesr`aUtrusty]raUpython-netifacesrbaUoneiric]rcUpython-netifacesrdaUartful]reUpython-netifacesrfaUquantal]rgUpython-netifacesrhaUutopic]riUpython-netifacesrjaU wily_python3]rkUpython3-netifacesrlaUzesty]rmUpython-netifacesrnaUmaverick]roUpython-netifacesrpaUnatty]rqUpython-netifacesrrauU openembedded]rsUpython-netifaces@meta-rosrtaUarch]ruUpython2-netifacesrvaUdebian]rwUpython-netifacesrxaUalpine]ryU py-netifacesrzauUpython-colorama}r{(Uosx}r|Upip}r}Upackages]r~UcoloramarassUfedora]r€Upython-coloramaraUgentoo]r‚Udev-python/coloramarƒaUubuntu]r„Upython-coloramar…aUarch]r†Upython2-coloramar‡aUdebian]rˆUpython-coloramar‰auUpython3-pygraphviz}rŠ(Uosx}r‹Upip}rŒUpackages]rU pygraphvizrŽassUfedora]rUpython3-pygraphvizraUgentoo]r‘Udev-python/pygraphvizr’aUfreebsd]r“U py-pygraphvizr”aUopensuse]r•Upython-pygraphvizr–aUrhel]r—U&python%{python3_pkgversion}-pygraphvizr˜aU slackware]r™U pygraphvizršaUubuntu]r›Upython3-pygraphvizrœaU openembedded]rUpython3-pygraphviz@meta-rosržaUarch]rŸUpython2-pygraphvizr aUdebian]r¡Upython3-pygraphvizr¢aUalpine]r£U py3-graphvizr¤auUpython-responses-pip}r¥(Uosx}r¦Upip}r§Upackages]r¨U responsesr©assUubuntu}rªUpip}r«Upackages]r¬U responsesr­assuUpython-skimage-pip}r®(Uosx}r¯Upip}r°Upackages]r±U scikit-imager²assUubuntu}r³Upip}r´Upackages]rµU scikit-imager¶assuU pyflakes3}r·(Ufedora]r¸Upython3-pyflakesr¹aUgentoo]rºUdev-python/pyflakesr»aUubuntu]r¼U pyflakes3r½aU openembedded]r¾U${PYTHON_PN}-pyflakes@meta-rosr¿aUdebian]rÀU pyflakes3rÁaUrhel]rÂU$python%{python3_pkgversion}-pyflakesrÃauU python-bloom}rÄ(Ufedora]rÅU python-bloomrÆaUdebian]rÇU python-bloomrÈaUgentoo]rÉUdev-python/bloomrÊaUubuntu}rË(Utrusty_python3]rÌU python3-bloomrÍaU*]rÎU python-bloomrÏauuU python-gevent}rÐ(Ufedora]rÑU python-geventrÒaUdebian]rÓU python-geventrÔaUgentoo]rÕUdev-python/geventrÖaUubuntu]r×U python-geventrØauU python-zbar}rÙ(Ufedora]rÚU zbar-pygtkrÛaUdebian]rÜU python-zbarrÝaUgentoo]rÞUmedia-gfx/zbar[python]rßaUubuntu]ràU python-zbarráauUpython-cpplint}râ(Uosx}rãUpip}räUpackages]råUcpplintræassUfedora}rçUpip}rèUpackages]réUcpplintrêassUdebian}rëUpip}rìUpackages]ríUcpplintrîassUubuntu}rïUpip}rðUpackages]rñUcpplintròassuUpython-astor-pip}ró(Uosx}rôUpip}rõUpackages]röUastorr÷assUfedora}røUpip}rùUpackages]rúUastorrûassUdebian}rüUpip}rýUpackages]rþUastorrÿassUubuntu}rUpip}rUpackages]rUastorrassuUpython-pyuserinput}rUubuntu}rUpip}rUpackages]rU PyUserInputrasssUpython-funcsigs}r (Ufedora]r Upython-funcsigsr aUdebian]r Upython-funcsigsr aUrhel]rUpython-funcsigsraUubuntu]rUpython-funcsigsrauUpython3-pytest-mock}r(Ufedora]rUpython3-pytest-mockraUgentoo]rUdev-python/pytest-mockraUubuntu]rUpython3-pytest-mockraUalpine]rUpy3-pytest-mockraUarch]rUpython-pytest-mockraUdebian]rUpython3-pytest-mockraUrhel}r(U*]r U'python%{python3_pkgversion}-pytest-mockr!aU7NuuU python-rospkg}r"(Uosx}r#Upip}r$Upackages]r%Urospkgr&assUfedora]r'U python-rospkgr(aUgentoo]r)Udev-python/rospkgr*aUmacports]r+U py27-rospkgr,aUfreebsd}r-Upip}r.Upackages]r/Urospkgr0assUopensuse]r1U python-rospkgr2aU slackware}r3Upip}r4Upackages]r5Urospkgr6assUubuntu}r7(U vivid_python3]r8Upython3-rospkgr9aUtrusty_python3]r:Upython3-rospkgr;aU*]r<U python-rospkgr=aUutopic_python3]r>Upython3-rospkgr?aUyakkety_python3]r@Upython3-rospkgrAaUxenial_python3]rBUpython3-rospkgrCaU wily_python3]rDUpython3-rospkgrEaU zesty_python3]rFUpython3-rospkgrGauU openembedded]rHUpython-rospkg@meta-rosrIaUarch]rJUpython2-rospkgrKaUdebian]rLU python-rospkgrMaUalpine}rNUpip}rOUpackages]rPUrospkgrQassuUpython-seaborn}rR(Ufedora}rSUpip}rTUpackages]rUUseabornrVassUarch]rWUpython2-seabornrXaUdebian]rYUpython-seabornrZaUgentoo]r[Udev-python/seabornr\aUubuntu}r](U*]r^Upython-seabornr_aUtrusty}r`Upip}raUpackages]rbUseabornrcassuuU python-sqlite}rd(Udebian]reU python-sqliterfaUubuntu]rgU python-sqliterhauUpython-geographiclib}ri(Ufedora]rjUpython-GeographicLibrkaUdebian]rlUpython-geographiclibrmaUubuntu]rnUpython-geographiclibroauU python-avahi}rp(Ufedora]rqUavahi-ui-toolsrraUarch]rsUavahirtaUdebian]ruU python-avahirvaUgentoo]rwUnet-dns/avahi[python]rxaUubuntu]ryU python-avahirzauU python-gtk2}r{(Uosx}r|Upip}r}Upackages]ssUfedora]r~Upygtk2raUgentoo]r€U=dev-python/pygtk-2*raUmacports]r‚Upy27-gtkrƒaUopensuse]r„U python-gtkr…aUrhel]r†Upygtk2r‡aUfreebsd]rˆUpy-gtk2r‰aUubuntu]rŠU python-gtk2r‹aUarch]rŒUpygtkraUdebian]rŽU python-gtk2rauUpython3-pyqt5.qtwebengine}r(Ufedora]r‘Upython3-qt5-webenginer’aUdebian]r“Upython3-pyqt5.qtwebenginer”aUubuntu]r•Upython3-pyqt5.qtwebenginer–auUpython-pytz-pip}r—Uubuntu}r˜Upip}r™Upackages]ršUpytzr›asssUpython-transforms3d-pip}rœ(Udebian}rUpip}ržUpackages]rŸU transforms3dr assUubuntu}r¡Upip}r¢Upackages]r£U transforms3dr¤assuUpython-voluptuous}r¥(Ufedora]r¦Upython-voluptuousr§aUdebian]r¨Upython-voluptuousr©aUgentoo]rªUdev-python/voluptuousr«aUubuntu]r¬Upython-voluptuousr­auUpython-qt-bindings}r®(Ufedora]r¯(UPyQt4r°U PyQt4-develr±U sip-develr²eUgentoo]r³(Udev-python/pysider´Udev-python/PyQt4rµeUmacports]r¶U p27-pyqt4r·aUopensuse]r¸Upython-qt4-develr¹aUrhel]rº(UPyQt4r»U PyQt4-develr¼U sip-develr½eUubuntu}r¾(Utrusty_python3]r¿(Upython3-pysiderÀU libpyside-devrÁUlibshiboken-devrÂUshibokenrÃU python3-pyqt4rÄUpython3-sip-devrÅeUlucid]rÆ(U python-qt4rÇUpython-qt4-devrÈUpython-sip-devrÉeU*]rÊ(U python-pysiderËU libpyside-devrÌUlibshiboken-devrÍUshibokenrÎU python-qt4rÏUpython-qt4-devrÐUpython-sip-devrÑeuUarch]rÒU python2-pyqt4rÓaUdebian}rÔ(Ustretch]rÕ(U python-pysiderÖU libpyside-devr×Ulibshiboken-devrØUshibokenrÙU python-qt4rÚUpython-qt4-devrÛUpython-sip-devrÜeUjessie]rÝ(U python-pysiderÞU libpyside-devrßUlibshiboken-devràUshibokenráU python-qt4râUpython-qt4-devrãUpython-sip-devräeUsqueeze]rå(U python-qt4ræUpython-qt4-devrçUpython-sip-devrèeUbuster]ré(U python-pysiderêU libpyside-devrëUlibshiboken-devrìUshibokenríU python-qt4rîUpython-qt4-devrïUpython-sip-devrðeUwheezy]rñ(U python-pysideròU libpyside-devróUlibshiboken-devrôUshibokenrõU python-qt4röUpython-qt4-devr÷Upython-sip-devrøeuuUpython-tabulate}rù(Ufedora}rú(U24]rûUpython-tabulaterüaU23]rýUpython-tabulaterþauUdebian}rÿ(Ustretch]rUpython-tabulateraUbuster]rUpython-tabulaterauUgentoo]rUdev-python/tabulateraUubuntu}r(Uzesty]rUpython-tabulateraUwily]r Upython-tabulater aUartful]r Upython-tabulater aUbionic]r Upython-tabulateraUxenial]rUpython-tabulaterauuUpython-twisted-web}r(Ufedora]rUpython-twisted-webraUarch]rUpython2-twistedraUdebian]rUpython-twisted-webraUgentoo]rUdev-python/twistedraUubuntu]rUpython-twisted-webrauUpython-pyquaternion-pip}r(Ufedora}rUpip}rUpackages]rU pyquaternionr assUdebian}r!Upip}r"Upackages]r#U pyquaternionr$assUubuntu}r%Upip}r&Upackages]r'U pyquaternionr(assuUpython3-sphinx}r)(Udebian]r*Upython3-sphinxr+aUubuntu]r,Upython3-sphinxr-auU python-pep8}r.(Uosx}r/Upip}r0Upackages]r1Upep8r2assUfedora]r3U python-pep8r4aUgentoo]r5Udev-python/pep8r6aUubuntu}r7(Uprecise]r8Upep8r9aUtrusty_python3]r:U python3-pep8r;aUyakkety_python3]r<U python3-pep8r=aUxenial_python3]r>U python3-pep8r?aUvivid]r@Upep8rAaUcosmic_python3]rBU python3-pep8rCaU zesty_python3]rDU python3-pep8rEaUwily]rFUpep8rGaUsaucy]rHUpep8rIaUtrusty]rJUpep8rKaUartful_python3]rLU python3-pep8rMaU*]rNU python-pep8rOaUutopic]rPUpep8rQaUbionic_python3]rRU python3-pep8rSaUraring]rTUpep8rUaUquantal]rVUpep8rWauUarch]rXU python2-pep8rYaUdebian]rZUpep8r[auU python-future}r\(Uosx}r]Upip}r^Upackages]r_Ufuturer`assUfedora]raU python-futurerbaUgentoo]rcUdev-python/futurerdaUubuntu}re(Uyakkety]rfU python-futurergaUwily]rhU python-futureriaUartful]rjU python-futurerkaUxenial]rlU python-futurermaUutopic}rnUpip}roUpackages]rpUfuturerqassUvivid}rrUpip}rsUpackages]rtUfutureruassUbionic]rvU python-futurerwaUzesty]rxU python-futureryaUtrusty}rzUpip}r{Upackages]r|Ufuturer}assuU openembedded]r~Upython-future@meta-pythonraUdebian]r€U python-futurerauUawsiotpythonsdk-pip}r‚(Ufedora}rƒUpip}r„Upackages]r…Uawsiotpythonsdkr†assUdebian}r‡Upip}rˆUpackages]r‰UawsiotpythonsdkrŠassUubuntu}r‹Upip}rŒUpackages]rUawsiotpythonsdkrŽassuUpython-math3d-pip}rUubuntu}rUpip}r‘Upackages]r’Umath3dr“asssUpython-pytest-mock}r”(Ufedora]r•Upython-pytest-mockr–aUarch]r—Upython2-pytest-mockr˜aUdebian]r™Upython-pytest-mockršaUgentoo]r›Udev-python/pytest-mockrœaUubuntu]rUpython-pytest-mockržauUpython-beautifulsoup}rŸ(Ufedora]r Upython-BeautifulSoupr¡aUarch]r¢Upython2-beautifulsoup3r£aUdebian]r¤Upython-beautifulsoupr¥aUgentoo]r¦Udev-python/beautifulsoupr§aUubuntu]r¨Upython-beautifulsoupr©auUpython-urlgrabber}rª(Uosx}r«Upip}r¬Upackages]r­(Upycurlr®U urlgrabberr¯essUfedora]r°Upython-urlgrabberr±aUgentoo]r²Udev-python/urlgrabberr³aUopensuse]r´Upython-urlgrabberrµaU slackware]r¶U urlgrabberr·aUubuntu]r¸Upython-urlgrabberr¹aUarch]rºU urlgrabberr»aUdebian]r¼Upython-urlgrabberr½auUpython-markdown}r¾(Ufedora]r¿Upython-markdownrÀaUdebian]rÁUpython-markdownrÂaUgentoo]rÃUdev-python/markdownrÄaUubuntu]rÅUpython-markdownrÆauUpython-pycodestyle}rÇ(Ufedora]rÈUpython-pycodestylerÉaUgentoo]rÊUdev-python/pycodestylerËaUubuntu]rÌU pycodestylerÍaUarch]rÎUpython2-pycodestylerÏaUdebian]rÐU pycodestylerÑaUrhel]rÒUpython-pycodestylerÓauUpython-planar-pip}rÔUubuntu}rÕUpip}rÖUpackages]r×UplanarrØasssU python3-bson}rÙ(Uosx}rÚUpip}rÛUpackages]rÜUbsonrÝassUfedora]rÞU python3-bsonrßaUdebian]ràU python3-bsonráaUgentoo]râUdev-python/pymongorãaUubuntu]räU python3-bsonråauUpython3-opencv}ræ(Ufedora]rçUpython3-opencvrèaU openembedded]réUopencv@meta-oerêaUdebian}rëUbuster]rìUpython3-opencvríasUubuntu}rî(Ueoan]rïUpython3-opencvrðaUcosmic]rñUpython3-opencvròaUbionic]róUpython3-opencvrôaUdisco]rõUpython3-opencvröauuUpyros-setup-pip}r÷Uubuntu}røUpip}rùUpackages]rúU pyros-setuprûasssU python-nose}rü(Uosx}rýUpip}rþUpackages]rÿUnoserassUfedora]rU python-noseraUgentoo]rUdev-python/noseraUmacports]rU py27-noseraUfreebsd]rU py27-noseraUopensuse]r U python-noser aU slackware]r Unoser aUubuntu}r (Uprecise]rU python-noseraUtrusty_python3]rU python3-noseraUlucid]rU python-noseraUxenial]rU python-noseraUxenial_python3]rU python3-noseraUvivid]rU python-noseraUbionic]rU python-noseraUwily]rU python-noseraUsaucy]rU python-noseraUyakkety]r U python-noser!aUtrusty]r"U python-noser#aUoneiric]r$U python-noser%aUartful]r&U python-noser'aUnatty]r(U python-noser)aUutopic]r*U python-noser+aU wily_python3]r,U python3-noser-aUzesty]r.U python-noser/aUraring]r0U python-noser1aUmaverick]r2U python-noser3aUquantal]r4U python-noser5auU openembedded]r6Upython-nose@openembedded-corer7aUarch]r8U python2-noser9aUdebian]r:U python-noser;aUalpine]r<Upy-noser=auUpython-psycopg2}r>(Ufedora]r?Upython-psycopg2r@aUdebian]rAUpython-psycopg2rBaUgentoo]rCU=dev-python/psycopg-2*rDaUubuntu}rE(Utrusty_python3]rFUpython3-psycopg2rGaUxenial_python3]rHUpython3-psycopg2rIaU*]rJUpython-psycopg2rKauuUpython-geocoder-pip}rL(Udebian}rMUpip}rNUpackages]rOUgeocoderrPassUubuntu}rQUpip}rRUpackages]rSUgeocoderrTassuUpython-slacker-cli}rU(Uosx}rVUpip}rWUpackages]rXU slacker-clirYassUfedora}rZUpip}r[Upackages]r\U slacker-clir]assUdebian}r^Upip}r_Upackages]r`U slacker-cliraassUubuntu}rbUpip}rcUpackages]rdU slacker-clireassuUpython-dxfgrabber-pip}rfUubuntu}rgUpip]rhU dxfgrabberriassUpython-gdown-pip}rj(Uosx}rkUpip}rlUpackages]rmUgdownrnassUfedora}roUpip}rpUpackages]rqUgdownrrassUdebian}rsUpip}rtUpackages]ruUgdownrvassUubuntu}rwUpip}rxUpackages]ryUgdownrzassuUpython-qt5-bindings-quick}r{(Udebian]r|Upython-pyqt5.qtquickr}aUubuntu]r~Upython-pyqt5.qtquickrauUpython-oyaml-pip}r€(Udebian}rUpip}r‚Upackages]rƒUoyamlr„assUubuntu}r…Upip}r†Upackages]r‡UoyamlrˆassuU python-debian}r‰(Ufedora]rŠU python-debianr‹aUdebian]rŒU python-debianraUgentoo]rŽUdev-python/python-debianraUubuntu}r(Utrusty_python3]r‘Upython3-debianr’aUutopic_python3]r“Upython3-debianr”aUxenial]r•U python-debianr–aUxenial_python3]r—Upython3-debianr˜aUvivid]r™U python-debianršaUbionic]r›U python-debianrœaUyakkety_python3]rUpython3-debianržaU zesty_python3]rŸUpython3-debianr aUwily]r¡U python-debianr¢aU vivid_python3]r£Upython3-debianr¤aUyakkety]r¥U python-debianr¦aUtrusty]r§U python-debianr¨aUartful_python3]r©Upython3-debianrªaUartful]r«U python-debianr¬aUutopic]r­U python-debianr®aUbionic_python3]r¯Upython3-debianr°aU wily_python3]r±Upython3-debianr²aUzesty]r³U python-debianr´auuUpython-pathtools}rµ(Udebian]r¶Upython-pathtoolsr·aUubuntu}r¸(Uzesty]r¹Upython-pathtoolsrºaUyakkety]r»Upython-pathtoolsr¼aUartful]r½Upython-pathtoolsr¾aUxenial]r¿Upython-pathtoolsrÀauuUsphinxcontrib-bibtex-pip}rÁ(Uosx}rÂUpip}rÃUpackages]rÄUsphinxcontrib-bibtexrÅassUfedora}rÆUpip}rÇUpackages]rÈUsphinxcontrib-bibtexrÉassUdebian}rÊUpip}rËUpackages]rÌUsphinxcontrib-bibtexrÍassUubuntu}rÎUpip}rÏUpackages]rÐUsphinxcontrib-bibtexrÑassuUpython3-sphinx-argparse}rÒ(Udebian]rÓUpython3-sphinx-argparserÔaUubuntu]rÕUpython3-sphinx-argparserÖauUpython-path.py}r×(Uosx}rØUpip}rÙUpackages]rÚUpath.pyrÛassUgentoo]rÜUdev-python/path-pyrÝaUubuntu}rÞUpip}rßUpackages]ràUpath.pyráassuUazure-iothub-device-client-pip}râ(Ufedora}rãUpip}räUpackages]råUazure-iothub-device-clientræassUdebian}rçUpip}rèUpackages]réUazure-iothub-device-clientrêassUubuntu}rëUpip}rìUpackages]ríUazure-iothub-device-clientrîassuU python3-sip}rï(Ufedora]rðU python3-siprñaUdebian]ròUpython3-sip-devróaUgentoo]rôUdev-python/siprõaUubuntu]röUpython3-sip-devr÷auUpython-texttable}rø(Uosx}rùUpip}rúUpackages]rûU texttablerüassUfedora]rýUpython-texttablerþaUgentoo]rÿUdev-python/texttableraUubuntu}r(Uprecise}rUpip}rUpackages]rU texttablerassUsaucy}rUpip}rUpackages]rU texttabler assU*]r Upython-texttabler auUarch]r Upython2-texttabler aUdebian}r(Ustretch]rUpython-texttableraUjessie]rUpython-texttableraUbuster]rUpython-texttablerauuU python-tablib}r(Ufedora]rU python-tablibraUdebian]rU python-tablibraUubuntu]rU python-tablibrauUpython3-collada-pip}r(Ufedora}rUpip}rUpackages]rU pycolladar assUdebian}r!Upip}r"Upackages]r#U pycolladar$assUubuntu}r%Upip}r&Upackages]r'U pycolladar(assuU python-gitlab}r)(Udebian}r*(Ustretch}r+Upip}r,Upackages]r-U python-gitlabr.assUjessie}r/Upip}r0Upackages]r1U python-gitlabr2assU*]r3U python-gitlabr4auUubuntu}r5(U*]r6U python-gitlabr7aUtrusty}r8Upip}r9Upackages]r:U python-gitlabr;assUartful}r<Upip}r=Upackages]r>U python-gitlabr?assUxenial}r@Upip}rAUpackages]rBU python-gitlabrCassuuUpython-pyside.qtuitools}rD(Ufedora]rEU python-pysiderFaUdebian]rGUpython-pyside.qtuitoolsrHaUubuntu}rI(Uprecise]rJUpython-pyside.qtuitoolsrKaUsaucy]rLUpython-pyside.qtuitoolsrMaUtrusty]rNUpython-pyside.qtuitoolsrOaUoneiric]rPUpython-pyside.qtuitoolsrQaU vivid_python3]rRUpython3-pyside.qtuitoolsrSaUtrusty_python3]rTUpython3-pyside.qtuitoolsrUaUlucid]rVUpython-pyside.qtuitoolsrWaUutopic_python3]rXUpython3-pyside.qtuitoolsrYaUnatty]rZUpython-pyside.qtuitoolsr[aUutopic]r\Upython-pyside.qtuitoolsr]aUraring]r^Upython-pyside.qtuitoolsr_aUmaverick]r`Upython-pyside.qtuitoolsraaUquantal]rbUpython-pyside.qtuitoolsrcaUvivid]rdUpython-pyside.qtuitoolsreauuU carla-pip}rf(Ufedora}rgUpip}rhUpackages]riUcarlarjassUdebian}rkUpip}rlUpackages]rmUcarlarnassUubuntu}roUpip}rpUpackages]rqUcarlarrassuUpython-requests}rs(Uosx}rtUpip}ruUpackages]rvUrequestsrwassUfedora]rxUpython-requestsryaUdebian]rzUpython-requestsr{aUgentoo]r|Udev-python/requestsr}aUubuntu}r~(U vivid_python3]rUpython3-requestsr€aUtrusty_python3]rUpython3-requestsr‚aU*]rƒUpython-requestsr„aUutopic_python3]r…Upython3-requestsr†aUyakkety_python3]r‡Upython3-requestsrˆaUxenial_python3]r‰Upython3-requestsrŠaU wily_python3]r‹Upython3-requestsrŒaU zesty_python3]rUpython3-requestsrŽauuUpython-tornado-pip}r(Uosx}rUpip}r‘Upackages]r’Utornador“assUfedora}r”Upip}r•Upackages]r–Utornador—assUdebian}r˜Upip}r™Upackages]ršUtornador›assUubuntu}rœUpip}rUpackages]ržUtornadorŸassuUpython-cairosvg}r (Ufedora]r¡Upython-cairosvgr¢aUarch]r£Upython2-cairosvgr¤aUdebian]r¥Upython-cairosvgr¦aUgentoo]r§Umedia-gfx/cairosvgr¨aUubuntu]r©Upython-cairosvgrªauUpython-cobs-pip}r«(Ufedora}r¬Upip}r­Upackages]r®Ucobsr¯assUdebian}r°Upip}r±Upackages]r²Ucobsr³assUubuntu}r´Upip}rµUpackages]r¶Ucobsr·assuUpython-qrencode}r¸(Udebian]r¹Upython-qrencoderºaUgentoo]r»Umedia-gfx/qrencode-pythonr¼aUubuntu]r½Upython-qrencoder¾auUpython-rrdtool}r¿(Ufedora]rÀUrrdtool-pythonrÁaUdebian]rÂUpython-rrdtoolrÃaUgentoo]rÄUnet-analyzer/rrdtoolrÅaUubuntu}rÆ(Uprecise]rÇUpython-rrdtoolrÈaUsaucy]rÉUpython-rrdtoolrÊaUtrusty]rËUpython-rrdtoolrÌaUoneiric]rÍUpython-rrdtoolrÎaUlucid]rÏUpython-rrdtoolrÐaUnatty]rÑUpython-rrdtoolrÒaUmaverick]rÓUpython-rrdtoolrÔaUquantal]rÕUpython-rrdtoolrÖaUraring]r×Upython-rrdtoolrØauuU python-tblib}rÙ(Udebian]rÚU python-tblibrÛaUgentoo]rÜUdev-python/tblibrÝaUubuntu]rÞU python-tblibrßauUpython-support}rà(Uosx}ráUpip}râUpackages]ssUfedora]rãUpythonräaUdebian]råUpython-supportræaUubuntu]rçUpython-supportrèauUpython3-pytest-timeout}ré(Ufedora]rêUpython3-pytest-timeoutrëaUdebian]rìUpython3-pytest-timeoutríaUgentoo]rîUdev-python/pytest-timeoutrïaUubuntu]rðUpython3-pytest-timeoutrñauUpython-tensorflow-gpu-pip}rò(Uosx}róUpip}rôUpackages]rõUtensorflow-gpuröassUfedora}r÷Upip}røUpackages]rùUtensorflow-gpurúassUdebian}rûUpip}rüUpackages]rýUtensorflow-gpurþassUubuntu}rÿUpip}rUpackages]rUtensorflow-gpurassuU python-kdtree}r(Ufedora]rUlibkdtree++-pythonraUdebian}r(Ustretch]rU python-kdtreeraUjessie]r U python-kdtreer aUbuster]r U python-kdtreer auUubuntu}r Upip}rUpackages]rUkdtreerassuUpython-chainer-mask-rcnn-pip}r(Uosx}rUpip}r(Udepends]r(UcythonrU python-numpyreUpackages]rUchainer-mask-rcnnrausUfedora}rUpip}r(Udepends]r(UcythonrU python-numpyreUpackages]rUchainer-mask-rcnnrausUdebian}r Upip}r!(Udepends]r"(Ucythonr#U python-numpyr$eUpackages]r%Uchainer-mask-rcnnr&ausUubuntu}r'Upip}r((Udepends]r)(Ucythonr*U python-numpyr+eUpackages]r,Uchainer-mask-rcnnr-ausuUpython-pyqrcode}r.(Ufedora]r/Upython-pyqrcoder0aUarch]r1Upython2-qrcoder2aUdebian}r3(Ustretch}r4Upip}r5Upackages]r6UPyQRCoder7assUjessie}r8Upip}r9Upackages]r:UPyQRCoder;assUbuster]r<Upython-pyqrcoder=auUgentoo]r>Udev-python/pyqrcoder?aUubuntu}r@(U*]rAUpython-pyqrcoderBaUtrusty}rCUpip}rDUpackages]rEUPyQRCoderFassUxenial}rGUpip}rHUpackages]rIUPyQRCoderJassuuUpython-wtforms}rK(Ufedora]rLUpython-wtformsrMaUdebian]rNUpython-wtformsrOaUgentoo]rPUdev-python/wtformsrQaUubuntu]rRUpython-wtformsrSauU python-enum34}rT(Ufedora]rUU python-enum34rVaU openembedded]rWUpython-enum34@meta-pythonrXaUdebian}rY(Ustretch]rZU python-enum34r[aUjessie]r\U python-enum34r]aUbuster]r^U python-enum34r_auUgentoo]r`Uvirtual/python-enum34raaUubuntu]rbU python-enum34rcauUpython3-django-extra-views}rd(Udebian]reUpython3-django-extra-viewsrfaUubuntu]rgUpython3-django-extra-viewsrhauUpython-tilestache}ri(Ufedora]rjUpython-tilestacherkaUdebian]rlU tilestachermaUubuntu]rnU tilestacheroauUpython-imaging-imagetk}rp(Udebian]rqUpython-pil.imagetkrraUubuntu]rsUpython-pil.imagetkrtauU python-empy}ru(Uosx}rvUpip}rwUpackages]rxUempyryassUfedora]rzU python-empyr{aUgentoo]r|Udev-python/empyr}aUmacports]r~U py27-empyraUfreebsd]r€U py27-empyraUopensuse]r‚U python-empyrƒaU slackware}r„Upip}r…Upackages]r†Uempyr‡assUubuntu]rˆU python-empyr‰aU openembedded]rŠUpython-empy@meta-rosr‹aUarch]rŒU python2-empyraUdebian]rŽU python-empyraUalpine}rUpip}r‘Upackages]r’Uempyr“assuU python3-pil}r”(Uosx}r•Upip}r–Upackages]r—UPillowr˜assUfedora]r™(Upython3-pillowršUpython3-pillow-qtr›eUgentoo]rœUdev-python/pillowraUfreebsd]ržU py3-pillowrŸaUopensuse]r Upython3-pillowr¡aUrhel]r¢Upython3-pillowr£aU slackware}r¤Uslackpkg}r¥Upackages]r¦Upython3-pillowr§assUubuntu]r¨U python3-pilr©aUarch]rªU python-pillowr«aUdebian]r¬U python3-pilr­aUalpine]r®U py3-pillowr¯auUpython3-pyparsing}r°(Ufedora]r±Upython3-pyparsingr²aUgentoo]r³Udev-python/pyparsingr´aUubuntu]rµUpython3-pyparsingr¶aU openembedded]r·Upython3-pyparsing@meta-pythonr¸aUarch]r¹Upython-pyparsingrºaUdebian]r»Upython3-pyparsingr¼auU python-can}r½(Uosx}r¾Upip}r¿Upackages]rÀU python-canrÁassUfedora}rÂUpip}rÃUpackages]rÄU python-canrÅassUubuntu}rÆ(Uprecise}rÇUpip}rÈUpackages]rÉU python-canrÊassUsaucy}rËUpip}rÌUpackages]rÍU python-canrÎassUyakkety}rÏUpip}rÐUpackages]rÑU python-canrÒassUtrusty}rÓUpip}rÔUpackages]rÕU python-canrÖassUoneiric}r×Upip}rØUpackages]rÙU python-canrÚassUlucid}rÛUpip}rÜUpackages]rÝU python-canrÞassU*]rßU python-canràaUxenial}ráUpip}râUpackages]rãU python-canräassUutopic}råUpip}ræUpackages]rçU python-canrèassUvivid}réUpip}rêUpackages]rëU python-canrìassUnatty}ríUpip}rîUpackages]rïU python-canrðassUraring}rñUpip}ròUpackages]róU python-canrôassUmaverick}rõUpip}röUpackages]r÷U python-canrøassUquantal}rùUpip}rúUpackages]rûU python-canrüassUwily}rýUpip}rþUpackages]rÿU python-canrassuUarch}rUpip}rUpackages]rU python-canrassUdebian}r(Ujessie}rUpip}rUpackages]rU python-canr assUsqueeze}r Upip}r Upackages]r U python-canr assU*]rU python-canraUwheezy}rUpip}rUpackages]rU python-canrassuUalpine}rUpip}rUpackages]rU python-canrassuUpython-moviepy-pip}r(Ufedora}rUpip}rUpackages]rUmoviepyrassUdebian}rUpip}rUpackages]rUmoviepyr assUubuntu}r!Upip}r"Upackages]r#Umoviepyr$assuUpython-persist-queue-pip}r%(Uosx}r&Upip}r'Upackages]r(U persist-queuer)assUfedora}r*Upip}r+Upackages]r,U persist-queuer-assUdebian}r.Upip}r/Upackages]r0U persist-queuer1assUubuntu}r2Upip}r3Upackages]r4U persist-queuer5assuU ds4drv-pip}r6Uubuntu}r7Upip}r8Upackages]r9Uds4drvr:asssU python3-pip}r;(Ufedora]r<U python3-pipr=aUdebian]r>U python3-pipr?aUubuntu]r@U python3-piprAauU python-pynfft}rB(Udebian]rCU python-pynfftrDaUubuntu]rEU python-pynfftrFauUpython-utm-pip}rG(Uosx}rHUpip}rIUpackages]rJUutmrKassUfedora}rLUpip}rMUpackages]rNUutmrOassUdebian}rPUpip}rQUpackages]rRUutmrSassUubuntu}rTUpip}rUUpackages]rVUutmrWassuU python-flask}rX(Ufedora]rYU python-flaskrZaUarch]r[U python-flaskr\aUdebian]r]U python-flaskr^aUgentoo]r_Udev-python/flaskr`aUubuntu}ra(Utrusty_python3]rbU python3-flaskrcaU*]rdU python-flaskreauuUpython-kombu-pip}rfUubuntu}rgUpip}rhUpackages]riUkomburjasssU python-pcapy}rk(Ufedora]rlUpcapyrmaUarch]rnU python2-pcapyroaUdebian]rpU python-pcapyrqaUgentoo]rrUdev-python/pcapyrsaUubuntu]rtU python-pcapyruauUpython-singledispatch}rv(Ufedora]rwUpython-singledispatchrxaUdebian]ryUpython-singledispatchrzaUgentoo]r{Uvirtual/python-singledispatchr|aUubuntu]r}Upython-singledispatchr~auUpython3-sphinx-rtd-theme}r(Udebian]r€Upython3-sphinx-rtd-themeraUubuntu]r‚Upython3-sphinx-rtd-themerƒauUipython}r„(Ufedora]r…Upython-ipythonr†aUmacports]r‡U py27-ipythonrˆaUdebian]r‰UipythonrŠaUgentoo]r‹Udev-python/ipythonrŒaUubuntu]rUipythonrŽauUpyqt4-dev-tools}r(Ufedora]rU PyQt4-develr‘aUarch]r’U python2-pyqt4r“aUdebian]r”Upyqt4-dev-toolsr•aUgentoo]r–Udev-python/PyQt4r—aUubuntu]r˜Upyqt4-dev-toolsr™auU pyside-tools}rš(Ufedora]r›U pyside-toolsrœaUdebian]rU pyside-toolsržaUgentoo]rŸUdev-python/pyside-toolsr aUubuntu]r¡U pyside-toolsr¢auU python-rdflib}r£(Ufedora]r¤U python-rdflibr¥aUdebian]r¦U python-rdflibr§aUgentoo]r¨Udev-python/rdflibr©aUubuntu]rªU python-rdflibr«auUpython-urllib3}r¬(Ufedora]r­Upython-urllib3r®aUarch]r¯Upython-urllib3r°aUdebian]r±Upython-urllib3r²aUgentoo]r³Udev-python/urllib3r´aUubuntu]rµUpython-urllib3r¶auU python-fysom}r·(Uosx}r¸Upip}r¹Upackages]rºUfysomr»assUfedora}r¼Upip}r½Upackages]r¾Ufysomr¿assUdebian}rÀ(Ustretch]rÁU python-fysomrÂaUjessie]rÃU python-fysomrÄaUbuster]rÅU python-fysomrÆauUubuntu}rÇUpip}rÈUpackages]rÉUfysomrÊassuU python-joblib}rË(Ufedora]rÌU python-joblibrÍaUarch]rÎUpython2-joblibrÏaUdebian]rÐU python-joblibrÑaUgentoo]rÒUdev-python/joblibrÓaUubuntu]rÔU python-joblibrÕauU python-espeak}rÖ(Ufedora]r×U python-espeakrØaUdebian]rÙU python-espeakrÚaUubuntu}rÛ(Uprecise]rÜU python-espeakrÝaUsaucy]rÞU python-espeakrßaUtrusty]ràU python-espeakráaUoneiric]râU python-espeakrãaUtrusty_python3]räUpython3-espeakråaUlucid]ræU python-espeakrçaUnatty]rèU python-espeakréaUmaverick]rêU python-espeakrëaUquantal]rìU python-espeakríaUraring]rîU python-espeakrïauuU canopen-pip}rð(Ufedora}rñUpip}ròUpackages]róUcanopenrôassUdebian}rõUpip}röUpackages]r÷UcanopenrøassUubuntu}rùUpip}rúUpackages]rûUcanopenrüassuUpyro4}rý(Uosx}rþUpip}rÿUpackages]rUpyro4rassUfedora]rU python-pyroraUgentoo]rUdev-python/pyroraUubuntu]rU python2-pyro4raUarch]rU python2-pyror aUdebian]r U python2-pyro4r auUpython-vine-pip}r Uubuntu}r Upip}rUpackages]rUvinerasssU python3-numpy}r(Ufedora]rU python3-numpyraUgentoo]rUdev-python/numpyraUubuntu]rU python3-numpyraU openembedded]rUpython3-numpy@openembedded-coreraUdebian]rU python3-numpyraUrhel]rU!python%{python3_pkgversion}-numpyrauUpython-pytest-dependency-pip}r(Ufedora}rUpip}r Upackages]r!Upytest-dependencyr"assUdebian}r#Upip}r$Upackages]r%Upytest-dependencyr&assUubuntu}r'Upip}r(Upackages]r)Upytest-dependencyr*assuUpython-concurrent.futures}r+(Ufedora]r,Upython-futuresr-aUdebian]r.Upython-concurrent.futuresr/aUgentoo]r0Uvirtual/python-futuresr1aUubuntu]r2Upython-concurrent.futuresr3auU python-geopy}r4(Udebian]r5U python-geopyr6aUgentoo]r7Udev-python/geopyr8aUubuntu]r9U python-geopyr:auUpython-svg.path}r;(Ufedora]r<Upython-svg-pathr=aUdebian}r>(Ujessie}r?Upip}r@Upackages]rAUsvg.pathrBassU*]rCUpython-svg.pathrDauUubuntu}rE(U*]rFUpython-svg.pathrGaUtrusty}rHUpip}rIUpackages]rJUsvg.pathrKassuuUpython-breathe}rL(Ufedora]rMUpython-breatherNaUdebian]rOUpython-breatherPaUubuntu]rQUpython-breatherRauU autograd-pip}rS(Ufedora}rTUpip}rUUpackages]rVUautogradrWassUdebian}rXUpip}rYUpackages]rZUautogradr[assUubuntu}r\Upip}r]Upackages]r^Uautogradr_assuUpython3-opengl}r`(Ufedora]raUpython3-pyopenglrbaUdebian]rcUpython3-openglrdaUgentoo]reUdev-python/pyopenglrfaUubuntu]rgUpython3-openglrhauUpython-rosdep-modules}ri(Uosx}rjUpip}rkUpackages]rlUrosdeprmassUfedora]rnU python-rosdeproaUgentoo]rpUdev-python/rosdeprqaUfreebsd}rrUpip}rsUpackages]rtUrosdepruassUopensuse]rvU python-rosdeprwaUrhel]rxU python-rosdepryaU slackware}rzUpip}r{Upackages]r|Urosdepr}assUubuntu]r~Upython-rosdep-modulesraU openembedded]r€Upython-rosdep@meta-rosraUarch]r‚Upython2-rosdeprƒaUdebian]r„Upython-rosdep-modulesr…aUalpine}r†Upip}r‡Upackages]rˆUrosdepr‰assuU dpath-pip}rŠUubuntu}r‹Upip}rŒUpackages]rUdpathrŽasssUpython-cantools-pip}r(Udebian}rUpip}r‘Upackages]r’Ucantoolsr“assUubuntu}r”Upip}r•Upackages]r–Ucantoolsr—assuU python3-cairo}r˜(Ufedora]r™Upy3cairoršaUgentoo]r›Udev-python/pycairorœaUfreebsd]rU py3-cairoržaUopensuse]rŸU python3-cairor aU slackware}r¡Uslackpkg}r¢Upackages]r£Upy3cairor¤assUubuntu]r¥U python3-cairor¦aUarch]r§U python-cairor¨aUdebian]r©U python3-cairorªauUadafruit-pca9685-pip}r«(Ufedora}r¬Upip}r­Upackages]r®Uadafruit-pca9685r¯assUdebian}r°Upip}r±Upackages]r²Uadafruit-pca9685r³assUubuntu}r´Upip}rµUpackages]r¶Uadafruit-pca9685r·assuUpython-dialogflow-pip}r¸(Ufedora}r¹Upip}rºUpackages]r»U dialogflowr¼assUarch}r½Upip}r¾Upackages]r¿U dialogflowrÀassUdebian}rÁUpip}rÂUpackages]rÃU dialogflowrÄassUubuntu}rÅUpip}rÆUpackages]rÇU dialogflowrÈassuUpython-numpydoc}rÉ(Uopensuse]rÊUpython-numpydocrËaUarch]rÌUpython2-numpydocrÍaUdebian]rÎUpython-numpydocrÏaUgentoo]rÐUdev-python/numpydocrÑaUubuntu]rÒUpython-numpydocrÓauUpython-github-pip}rÔ(Uosx}rÕUpip}rÖUpackages]r×UPyGithubrØassUubuntu}rÙUpip}rÚUpackages]rÛUPyGithubrÜassuUpython3-qt5-bindings}rÝ(Ufedora]rÞ(Upython3-qt5-develrßUsipràeUgentoo]ráUdev-python/PyQt5râaUopensuse]rãU python3-qt5räaUrhel]råU%python%{python3_pkgversion}-qt5-develræaU slackware]rçU python3-PyQt5rèaUubuntu]ré(U pyqt5-devrêU python3-pyqt5rëUpython3-pyqt5.qtsvgrìUpython3-sip-devríeUarch]rîU python-pyqt5rïaUdebian]rð(U pyqt5-devrñU python3-pyqt5ròUpython3-pyqt5.qtsvgróUpython3-sip-devrôU qtbase5-devrõeUalpine]röUpy3-qt5r÷auUpython-fuzzywuzzy-pip}rø(Ufedora}rùUpip}rúUpackages]rûU fuzzywuzzyrüassUdebian}rýUpip}rþUpackages]rÿU fuzzywuzzyrassUubuntu}rUpip}rUpackages]rU fuzzywuzzyrassuUpython-aniso8601}r(Ucentos]rUpython-aniso8601raUfedora]rUpython2-aniso8601r aUdebian]r Upython-aniso8601r aUgentoo]r Udev-python/aniso8601r aUubuntu}r(Uzesty]rUpython-aniso8601raUyakkety]rUpython-aniso8601raUartful]rUpython-aniso8601raUbionic]rUpython-aniso8601raUxenial]rUpython-aniso8601rauuU python3-lxml}r(Ufedora]rU python3-lxmlraUfreebsd]rU py36-lxmlraUubuntu]rU python3-lxmlraU openembedded]r Upython3-lxml@meta-pythonr!aUdebian]r"U python3-lxmlr#aUrhel]r$U python%{python3_pkgversion}-lxmlr%auU python-numpy}r&(Uosx}r'Upip}r(Upackages]r)Unumpyr*assUfedora]r+Unumpyr,aUgentoo]r-Udev-python/numpyr.aUmacports]r/U py27-numpyr0aUfreebsd]r1U py27-numpyr2aUopensuse]r3U python-numpyr4aUrhel]r5Unumpyr6aU slackware]r7Unumpyr8aUubuntu}r9(Uprecise]r:U python-numpyr;aUtrusty_python3]r<U python3-numpyr=aUlucid]r>U python-numpyr?aUxenial]r@U python-numpyrAaUvivid]rBU python-numpyrCaUbionic]rDU python-numpyrEaUwily]rFU python-numpyrGaUsaucy]rHU python-numpyrIaUyakkety]rJU python-numpyrKaUtrusty]rLU python-numpyrMaUoneiric]rNU python-numpyrOaUartful]rPU python-numpyrQaUnatty]rRU python-numpyrSaUutopic]rTU python-numpyrUaUzesty]rVU python-numpyrWaUraring]rXU python-numpyrYaUmaverick]rZU python-numpyr[aUquantal]r\U python-numpyr]auU openembedded]r^Upython-numpy@openembedded-corer_aUarch]r`U python2-numpyraaUdebian]rbU python-numpyrcaUalpine]rdUpy-numpyreauU python-usb}rf(Ufedora]rgUpyusbrhaUdebian]riU python-usbrjaUgentoo]rkUdev-python/pyusbrlaUubuntu]rmU python-usbrnauU python-parso}ro(Udebian}rp(Ustretch}rqUpip}rrUpackages]rsUparsortassUbuster]ruU python-parsorvauUubuntu}rw(Ubionic]rxU python-parsoryaUxenial}rzUpip}r{Upackages]r|Uparsor}assuuU cmakelint-pip}r~(Udebian}rUpip}r€Upackages]rU cmakelintr‚assUubuntu}rƒUpip}r„Upackages]r…U cmakelintr†assuU python-parse}r‡(Udebian]rˆU python-parser‰aUubuntu]rŠU python-parser‹auUpython-tabulate-pip}rŒ(Uosx}rUpip}rŽUpackages]rUtabulaterassUfedora}r‘Upip}r’Upackages]r“Utabulater”assUdebian}r•Upip}r–Upackages]r—Utabulater˜assUubuntu}r™Upip}ršUpackages]r›UtabulaterœassuUpyqt5-dev-tools}r(Ufedora]ržUpython-qt5-develrŸaUdebian]r Upyqt5-dev-toolsr¡aUgentoo]r¢Udev-python/PyQt5r£aUubuntu]r¤Upyqt5-dev-toolsr¥auUpython-unittest2}r¦(Uosx}r§Upip}r¨Upackages]r©U unittest2rªassUfedora]r«Upython-unittest2r¬aUdebian]r­Upython-unittest2r®aUubuntu]r¯Upython-unittest2r°auU#python-backports.ssl-match-hostname}r±(Ufedora]r²U#python-backports.ssl-match-hostnamer³aUdebian]r´U#python-backports.ssl-match-hostnamerµaUgentoo]r¶U'dev-python/backports-ssl-match-hostnamer·aUubuntu}r¸(Usaucy}r¹Upip}rºUpackages]r»Ubackports.ssl_match_hostnamer¼assUyakkety]r½U#python-backports.ssl-match-hostnamer¾aUwily]r¿U#python-backports.ssl-match-hostnamerÀaUartful]rÁU#python-backports.ssl-match-hostnamerÂaUxenial]rÃU#python-backports.ssl-match-hostnamerÄaUvivid]rÅUbackports.ssl_match_hostnamerÆaUbionic]rÇU#python-backports.ssl-match-hostnamerÈaUtrusty}rÉUpip}rÊUpackages]rËUbackports.ssl_match_hostnamerÌassuuUpython-webtest}rÍ(Ufedora]rÎUpython-webtestrÏaUdebian]rÐUpython-webtestrÑaUgentoo]rÒUdev-python/webtestrÓaUubuntu]rÔUpython-webtestrÕauUpython-crccheck-pip}rÖ(Uosx}r×Upip}rØUpackages]rÙUcrccheckrÚassUfedora}rÛUpip}rÜUpackages]rÝUcrccheckrÞassUdebian}rßUpip}ràUpackages]ráUcrccheckrâassUubuntu}rãUpip}räUpackages]råUcrccheckræassuU python-cbor}rç(Udebian]rèU python-cborréaUgentoo]rêUdev-python/cborrëaUubuntu]rìU python-cborríauUpython-pyxhook-pip}rî(Uosx}rïUpip}rðUpackages]rñUpyxhookròassUfedora}róUpip}rôUpackages]rõUpyxhookröassUdebian}r÷Upip}røUpackages]rùUpyxhookrúassUubuntu}rûUpip}rüUpackages]rýUpyxhookrþassuU python-flake8}rÿ(Ufedora]rU python-flake8raU openembedded]rUpython-flake8@meta-rosraUdebian]rU python-flake8raUgentoo]rUdev-python/flake8raUubuntu}r(Utrusty_python3]r Upython3-flake8r aU*]r U python-flake8r auuUpython-qt5-bindings-webkit}r (Ufedora]rU python-qt5raUgentoo]rUdev-python/PyQt5[webkit]raUubuntu}r(Uyakkety]rUpython-pyqt5.qtwebkitraUwily]rUpython-pyqt5.qtwebkitraUbionic]rUpython-pyqt5.qtwebkitraUzesty]rUpython-pyqt5.qtwebkitraUartful]rUpython-pyqt5.qtwebkitraUxenial]rUpython-pyqt5.qtwebkitrauUfreebsd]rUpy27-qt5-webkitr aUarch]r!U python2-pyqt5r"aUdebian}r#(Ustretch]r$Upython-pyqt5.qtwebkitr%aUjessie]r&Upython-pyqt5.qtwebkitr'aUbuster]r(Upython-pyqt5.qtwebkitr)auuUpython-coverage}r*(Uosx}r+Upip}r,Upackages]r-Ucoverager.assUfedora]r/Upython-coverager0aUgentoo]r1Udev-python/coverager2aUfreebsd]r3U py27-coverager4aUopensuse]r5Upython-coverager6aU slackware]r7Ucoverager8aUubuntu}r9(Uprecise]r:Upython-coverager;aUtrusty_python3]r<Upython3-coverager=aUlucid]r>Upython-coverager?aUxenial]r@Upython-coveragerAaUvivid]rBUpython-coveragerCaUbionic]rDUpython-coveragerEaUwily]rFUpython-coveragerGaUsaucy]rHUpython-coveragerIaUyakkety]rJUpython-coveragerKaUtrusty]rLUpython-coveragerMaUoneiric]rNUpython-coveragerOaUartful]rPUpython-coveragerQaUnatty]rRUpython-coveragerSaUutopic]rTUpython-coveragerUaUzesty]rVUpython-coveragerWaUraring]rXUpython-coveragerYaUmaverick]rZUpython-coverager[aUquantal]r\Upython-coverager]auUarch]r^Upython2-coverager_aUdebian]r`Upython-coverageraaUalpine]rbU py-coveragercauUpython-jira-pip}rdUubuntu}reUpip}rfUpackages]rgUjirarhasssUpython3-websocket}ri(Ufedora]rjUpython3-websocket-clientrkaUdebian]rlUpython3-websocketrmaUgentoo]rnUdev-python/websocket-clientroaUubuntu]rpUpython3-websocketrqauU python-wrapt}rr(Ufedora]rsU python2-wraptrtaUdebian]ruU python-wraptrvaUubuntu]rwU python-wraptrxauUpython-jmespath}ry(Uosx}rzUpip}r{Upackages]r|Ujmespathr}assUfedora]r~Upython2-jmespathraUdebian]r€Upython-jmespathraUubuntu]r‚Upython-jmespathrƒauUpython-lzf-pip}r„(Udebian}r…Upip}r†Upackages]r‡U python-lzfrˆassUubuntu}r‰Upip}rŠUpackages]r‹U python-lzfrŒassuUpython-websocket}r(Ufedora]rŽUpython-websocket-clientraUdebian]rUpython-websocketr‘aUgentoo]r’Udev-python/websocket-clientr“aUubuntu}r”(Uprecise}r•Upip}r–Upackages]r—Uwebsocket-clientr˜assUtrusty_python3}r™Upip}ršUpackages]r›Uwebsocket-clientrœassUutopic_python3}rUpip}ržUpackages]rŸUwebsocket-clientr assUxenial]r¡Upython-websocketr¢aUxenial_python3]r£Upython3-websocketr¤aUvivid]r¥Upython-websocketr¦aUbionic]r§Upython-websocketr¨aUtrusty]r©Upython-websocketrªaUsaucy]r«Upython-websocket-clientr¬aU vivid_python3]r­Upython3-websocketr®aUwily]r¯Upython-websocketr°aUartful_python3]r±Upython3-websocketr²aUartful]r³Upython-websocketr´aUutopic]rµUpython-websocketr¶aUbionic_python3]r·Upython3-websocketr¸aU wily_python3]r¹Upython3-websocketrºaUraring}r»Upip}r¼Upackages]r½Uwebsocket-clientr¾assUquantal}r¿Upip}rÀUpackages]rÁUwebsocket-clientrÂassuuUpython-keras-pip}rÃ(Uosx}rÄUpip}rÅUpackages]rÆUkerasrÇassUfedora}rÈUpip}rÉUpackages]rÊUkerasrËassUdebian}rÌUpip}rÍUpackages]rÎUkerasrÏassUubuntu}rÐUpip}rÑUpackages]rÒUkerasrÓassuUpython3-pyaudio}rÔ(Uosx}rÕUpip}rÖUpackages]r×UpyaudiorØassUfedora]rÙUpython3-pyaudiorÚaUgentoo]rÛUdev-python/pyaudiorÜaUubuntu]rÝUpython3-pyaudiorÞaUarch]rßUpython-pyaudioràaUdebian]ráUpython3-pyaudiorâaUrhel]rãU#python%{python3_pkgversion}-pyaudioräauUpython-redis-pip}råUubuntu}ræUpip}rçUpackages]rèUredisréasssUpython-pykalman}rê(Uosx}rëUpip}rìUpackages]ríUpykalmanrîassUfedora}rïUpip}rðUpackages]rñUpykalmanròassUdebian}róUpip}rôUpackages]rõUpykalmanröassUubuntu}r÷Upip}røUpackages]rùUpykalmanrúassuUpython-catkin-pkg}rû(Uosx}rüUpip}rýUpackages]rþU catkin-pkgrÿassUfedora]rUpython-catkin_pkgraUgentoo]rUdev-python/catkin_pkgraUmacports]rUpython-catkin-pkgraUfreebsd}rUpip}rUpackages]rU catkin-pkgr assUopensuse]r Upython-catkin_pkgr aU slackware}r Upip}r Upackages]rU catkin-pkgrassUubuntu}r(Uprecise]rUpython-catkin-pkgraUtrusty_python3]rUpython3-catkin-pkgraUlucid]rUpython-catkin-pkgraUxenial]rUpython-catkin-pkgraUxenial_python3]rUpython3-catkin-pkgraUvivid]rUpython-catkin-pkgraUbionic]rUpython-catkin-pkgraUwily]rUpython-catkin-pkgr aUsaucy]r!Upython-catkin-pkgr"aUyakkety]r#Upython-catkin-pkgr$aUtrusty]r%Upython-catkin-pkgr&aUoneiric]r'Upython-catkin-pkgr(aUartful]r)Upython-catkin-pkgr*aUnatty]r+Upython-catkin-pkgr,aUutopic]r-Upython-catkin-pkgr.aU wily_python3]r/Upython3-catkin-pkgr0aUzesty]r1Upython-catkin-pkgr2aUraring]r3Upython-catkin-pkgr4aUmaverick]r5Upython-catkin-pkgr6aUquantal]r7Upython-catkin-pkgr8auU openembedded]r9Upython-catkin-pkg@meta-rosr:aUarch]r;Upython2-catkin_pkgr<aUdebian]r=Upython-catkin-pkgr>aUalpine}r?Upip}r@Upackages]rAU catkin-pkgrBassuUpython3-lark-parser}rC(Ufedora}rD(U*]rEUpython3-lark-parserrFaU28NuUgentoo]rGUdev-python/larkrHaUubuntu}rI(Ubionic]rJUpython3-lark-parserrKaUxenial]rLUpython3-lark-parserrMauU openembedded]rNUpython3-lark-parser@meta-rosrOaUdebian}rP(Ustretch]rQUpython3-lark-parserrRaUbuster]rSUpython3-lark-parserrTauUrhel]rUU'python%{python3_pkgversion}-lark-parserrVauUpython-defusedxml}rW(Uosx}rXUpip}rYUpackages]rZU defusedxmlr[assUfedora]r\Upython-defusedxmlr]aUgentoo]r^Udev-python/defusedxmlr_aUfreebsd]r`Upy27-defusedxmlraaUopensuse]rbUpython-defusedxmlrcaU slackware}rdUpip}reUpackages]rfU defusedxmlrgassUubuntu]rhUpython-defusedxmlriaU openembedded]rjUpython-defusedxml@meta-rosrkaUarch]rlUpython2-defusedxmlrmaUdebian]rnUpython-defusedxmlroaUalpine]rpU py-defusedxmlrqauU python-wstool}rr(Ufedora]rsU python-wstoolrtaUmacports]ruU py27-wstoolrvaUdebian}rw(Ustretch]rxU python-wstoolryaUbuster]rzU python-wstoolr{auUgentoo]r|Udev-python/wstoolr}aUubuntu]r~U python-wstoolrauUpython-frozendict}r€(Ufedora]rUpython-frozendictr‚aUdebian]rƒUpython-frozendictr„aUubuntu]r…Upython-frozendictr†auU python-pysnmp}r‡(Ufedora]rˆUpysnmpr‰aUdebian]rŠUpython-pysnmp4r‹aUgentoo]rŒUdev-python/pysnmpraUubuntu]rŽUpython-pysnmp4rauUpython3-rospkg}r(Uosx}r‘Upip}r’Upackages]r“Urospkgr”assUfedora]r•Upython3-rospkgr–aUgentoo]r—Udev-python/rospkgr˜aUfreebsd}r™Upip}ršUpackages]r›UrospkgrœassUopensuse]rUpython3-rospkgržaU slackware}rŸUpip}r Upackages]r¡Urospkgr¢assUubuntu]r£Upython3-rospkgr¤aUdebian]r¥Upython3-rospkgr¦aUalpine}r§Upip}r¨Upackages]r©UrospkgrªassuUpython-jsonschema}r«(Ufedora]r¬Upython-jsonschemar­aUdebian]r®Upython-jsonschemar¯aUgentoo]r°Udev-python/jsonschemar±aUubuntu]r²Upython-jsonschemar³auUpython-flask-restful}r´(Ufedora]rµUpython-flask-restfulr¶aUdebian]r·Upython-flask-restfulr¸aUgentoo]r¹Udev-python/flask-restfulrºaUubuntu}r»(Usaucy}r¼Upip}r½Upackages]r¾U flask-restfulr¿assUutopic}rÀUpip}rÁUpackages]rÂU flask-restfulrÃassUyakkety]rÄUpython-flask-restfulrÅaUvivid}rÆUpip}rÇUpackages]rÈU flask-restfulrÉassUwily}rÊUpip}rËUpackages]rÌU flask-restfulrÍassUxenial]rÎUpython-flask-restfulrÏauuUpython3-rosdep}rÐ(Ufedora]rÑUpython3-rosdeprÒaUdebian]rÓUpython3-rosdeprÔaUgentoo]rÕUdev-util/rosdeprÖaUubuntu]r×Upython3-rosdeprØauU python3-venv}rÙ(Ufedora]rÚU python3-libsrÛaUdebian]rÜU python3-venvrÝaUubuntu]rÞU python3-venvrßauUpython3-nose-yanc}rà(U openembedded]ráUpython3-nose-yanc@meta-rosrâaUdebian]rãUpython3-nose-yancräaUubuntu]råUpython3-nose-yancræauU python-six}rç(Ufedora]rèU python-sixréaUarch]rêU python2-sixrëaUdebian]rìU python-sixríaUgentoo]rîUdev-python/sixrïaUubuntu]rðU python-sixrñauU python3-scp}rò(Ufedora]róU python3-scprôaUdebian]rõU python3-scpröaUubuntu]r÷U python3-scprøauU python-toml}rù(Ufedora]rúU python-tomlrûaUdebian]rüU python-tomlrýaUubuntu]rþU python-tomlrÿauUpython-rosinstall}r(Ufedora]rUpython-rosinstallraUgentoo]rUdev-python/rosinstallraUmacports]rUp27-rosinstallraUubuntu}r(Utrusty_python3]rUpython3-rosinstallr aU*]r Upython-rosinstallr auUarch]r Upython2-rosinstallr aUdebian]rUpython-rosinstallrauUpython-progressbar2-pip}r(Ufedora}rUpip}rUpackages]rU progressbar2rassUdebian}rUpip}rUpackages]rU progressbar2rassUubuntu}rUpip}rUpackages]rU progressbar2rassuUpython-argparse}r(Uosx}rUpip}rUpackages]r Uargparser!assUfedora]r"Upythonr#aUgentoo]r$Udev-lang/pythonr%aUmacports]r&U py27-argparser'aUfreebsd]r(U py27-argparser)aUopensuse]r*Upython-argparser+aU slackware}r,Upip}r-Upackages]r.Uargparser/assUubuntu}r0(Ulucid]r1Upython-argparser2aU*]Umaverick]r3Upython-argparser4aUnatty]r5Upython-argparser6aUoneiric]r7Upython-argparser8auU openembedded]Uarch]r9Upython2r:aUdebian}r;(Ustretch]r<Ulibpython2.7-stdlibr=aUjessie]r>Ulibpython2.7-stdlibr?aUsqueeze]r@Upython-argparserAaUbuster]rBUlibpython2.7-stdlibrCaUwheezy]rDUpython-argparserEauUalpine]rFU py-argparserGauUpython-twitter}rH(Ufedora]rIUpython-twitterrJaUdebian}rK(Ustretch]rLUpython-twitterrMaUjessie]rNUpython-twitterrOaUbuster]rPUpython-twitterrQauUgentoo]rRUdev-python/python-twitterrSaUubuntu]rTUpython-twitterrUauUpython-gpiozero}rV(Udebian}rW(Ustretch}rXUpip}rYUpackages]rZUgpiozeror[assUjessie}r\Upip}r]Upackages]r^Ugpiozeror_assUbuster]r`Upython-gpiozeroraauUubuntu}rb(Uyakkety}rcUpip}rdUpackages]reUgpiozerorfassUwily}rgUpip}rhUpackages]riUgpiozerorjassUartful]rkUpython-gpiozerorlaUxenial}rmUpip}rnUpackages]roUgpiozerorpassUutopic}rqUpip}rrUpackages]rsUgpiozerortassUvivid}ruUpip}rvUpackages]rwUgpiozerorxassUbionic]ryUpython-gpiozerorzaUzesty]r{Upython-gpiozeror|aUtrusty}r}Upip}r~Upackages]rUgpiozeror€assuuU python-wheel}r(Ufedora]r‚U python-wheelrƒaUdebian]r„U python-wheelr…aUgentoo]r†Udev-python/wheelr‡aUubuntu]rˆU python-wheelr‰auUpython-wxtools}rŠ(Ufedora]r‹UwxPythonrŒaUgentoo]rUdev-python/wxpythonrŽaUubuntu]rUpython-wxtoolsraUfreebsd]r‘Upy27-wxPython30r’aU openembedded]r“Uwxpython@meta-oer”aUarch]r•Uwxpythonr–aUdebian]r—Upython-wxtoolsr˜auU python3-pep8}r™(Ufedora]ršU python3-pep8r›aUgentoo]rœUdev-python/pep8raUubuntu]ržU python3-pep8rŸaU openembedded]r Upython3-pep8@meta-rosr¡aUdebian}r¢(Ustretch]r£U python3-pep8r¤aUjessie]r¥U python3-pep8r¦aUbuster]r§U python3-pep8r¨auUalpine]r©Upy3-pycodestylerªauU python-pypng}r«(Ufedora]r¬U python-pypngr­aUarch}r®Upip}r¯Upackages]r°Upypngr±assUdebian}r²(Ustretch}r³Upip}r´Upackages]rµUpypngr¶assUjessie}r·Upip}r¸Upackages]r¹UpypngrºassUbuster]r»U python-pngr¼auUgentoo]r½Udev-python/pypngr¾aUubuntu}r¿(U*]rÀU python-pngrÁaUtrusty}rÂUpip}rÃUpackages]rÄUpypngrÅassUxenial}rÆUpip}rÇUpackages]rÈUpypngrÉassuuUpython-periphery-pip}rÊ(Uosx}rËUpip}rÌUpackages]rÍUpython-peripheryrÎassUfedora}rÏUpip}rÐUpackages]rÑUpython-peripheryrÒassUdebian}rÓUpip}rÔUpackages]rÕUpython-peripheryrÖassUubuntu}r×Upip}rØUpackages]rÙUpython-peripheryrÚassuUpython-qt-bindings-webkit}rÛ(Ufedora]rÜUPyQt4rÝaUdebian]rÞU python-qt4rßaUgentoo]rà(Udev-python/pyside[webkit]ráUdev-python/PyQt4[webkit]râeUubuntu]rãU python-qt4räauUpython3-rosdep-modules}rå(Ufedora]ræUpython3-rosdeprçaUgentoo]rèUdev-util/rosdepréaUubuntu]rêUpython3-rosdep-modulesrëaU openembedded]rìUpython3-rosdep@meta-rosríaUdebian]rîUpython3-rosdep-modulesrïaUrhel]rðU"python%{python3_pkgversion}-rosdeprñauUpython-vlc-pip}rò(Uosx}róUpip}rôUpackages]rõU python-vlcröassUfedora}r÷Upip}røUpackages]rùU python-vlcrúassUdebian}rûUpip}rüUpackages]rýU python-vlcrþassUubuntu}rÿUpip}rUpackages]rU python-vlcrassuUpython-pytorch-pip}r(Uosx}rUpip}rUpackages]r(UtorchrU torchvisionressUfedora}r Upip}r Upackages]r (Utorchr U torchvisionr essUdebian}rUpip}rUpackages]r(UtorchrU torchvisionressUubuntu}rUpip}rUpackages]r(UtorchrU torchvisionressuUpython3-django-cors-headers}r(Ufedora]rUpython3-django-cors-headersraUdebian]rUpython3-django-cors-headersraUubuntu]rUpython3-django-cors-headersrauUpython-prettytable}r(Ufedora]r Upython-prettytabler!aUdebian]r"Upython-prettytabler#aUgentoo]r$Udev-python/prettytabler%aUubuntu]r&Upython-prettytabler'auUpython-defer-pip}r(Uubuntu}r)Upip}r*Upackages]r+Udeferr,asssUpython-tornado}r-(Uosx}r.Upip}r/Upackages]r0Utornador1assUfedora]r2Upython-tornador3aUgentoo]r4Uwww-servers/tornador5aUubuntu]r6Upython-tornador7aUarch]r8Upython-tornador9aUdebian]r:Upython-tornador;auU python-bcrypt}r<(Ufedora]r=U python-bcryptr>aUarch]r?Upython2-bcryptr@aUdebian]rAU python-bcryptrBaUgentoo]rCUdev-python/bcryptrDaUubuntu]rEU python-bcryptrFauU python3-gnupg}rG(Ufedora]rHU python3-gnupgrIaUdebian]rJU python3-gnupgrKaUgentoo]rLUdev-python/python-gnupgrMaUubuntu]rNU python3-gnupgrOauU python-pytest}rP(Ufedora]rQU python-pytestrRaUarch]rSUpython2-pytestrTaUdebian]rUU python-pytestrVaUgentoo]rWUdev-python/pytestrXaUubuntu]rYU python-pytestrZauUpython3-ruamel.yaml}r[(Udebian}r\(Ustretch]r]Upython3-ruamel.yamlr^aUjessie]r_Upython3-ruamel.yamlr`aUbuster]raUpython3-ruamel.yamlrbauUubuntu}rc(Uzesty]rdUpython3-ruamel.yamlreaUyakkety]rfUpython3-ruamel.yamlrgaUartful]rhUpython3-ruamel.yamlriaUbionic]rjUpython3-ruamel.yamlrkaUxenial]rlUpython3-ruamel.yamlrmauuUpython3-pexpect}rn(Udebian]roUpython3-pexpectrpaUubuntu]rqUpython3-pexpectrrauUpython-httplib2}rs(Ufedora]rtUpython-httplib2ruaUdebian]rvUpython-httplib2rwaUgentoo]rxUdev-python/httplib2ryaUubuntu}rz(Uprecise]r{Upython-httplib2r|aUsaucy]r}Upython-httplib2r~aUtrusty]rUpython-httplib2r€aUoneiric]rUpython-httplib2r‚aUtrusty_python3]rƒUpython3-httplib2r„aUlucid]r…Upython-httplib2r†aUnatty]r‡Upython-httplib2rˆaUmaverick]r‰Upython-httplib2rŠaUquantal]r‹Upython-httplib2rŒaUraring]rUpython-httplib2rŽauuU python-sh}r(Ufedora]rU python-shr‘aUdebian]r’U python-shr“aUgentoo]r”U dev-python/shr•aUubuntu}r–(U*]r—U python-shr˜aUtrusty}r™Upip}ršUpackages]r›UshrœassuuUpython-testtools}r(Ufedora]ržUpython-testtoolsrŸaUdebian]r Upython-testtoolsr¡aUgentoo]r¢Udev-python/testtoolsr£aUubuntu]r¤Upython-testtoolsr¥auUpython3}r¦(Ufedora]r§U python3-develr¨aUdebian]r©U python3-devrªaUgentoo]r«Udev-lang/pythonr¬aUubuntu]r­U python3-devr®auU python-tqdm}r¯(Ufedora]r°U python-tqdmr±aUdebian}r²(Ustretch]r³U python-tqdmr´aUbuster]rµU python-tqdmr¶auUubuntu}r·(Usaucy}r¸Upip}r¹Upackages]rºUtqdmr»assUutopic}r¼Upip}r½Upackages]r¾Utqdmr¿assUtrusty}rÀUpip}rÁUpackages]rÂUtqdmrÃassUvivid}rÄUpip}rÅUpackages]rÆUtqdmrÇassUwily}rÈUpip}rÉUpackages]rÊUtqdmrËassU*]rÌU python-tqdmrÍaUxenial}rÎUpip}rÏUpackages]rÐUtqdmrÑassuuUpython-tensorflow-pip}rÒ(Uosx}rÓUpip}rÔUpackages]rÕU tensorflowrÖassUfedora}r×Upip}rØUpackages]rÙU tensorflowrÚassUdebian}rÛUpip}rÜUpackages]rÝU tensorflowrÞassUubuntu}rßUpip}ràUpackages]ráU tensorflowrâassuUpython-netaddr}rã(Uosx}räUpip}råUpackages]ræUnetaddrrçassUfedora}rèUpip}réUpackages]rêUnetaddrrëassUdebian]rìUpython-netaddrríaUgentoo]rîUdev-python/netaddrrïaUubuntu}rð(Uprecise]rñUpython-netaddrròaUtrusty_python3]róUpython3-netaddrrôaUlucid]rõUpython-netaddrröaUxenial]r÷Upython-netaddrrøaUbionic]rùUpython-netaddrrúaUvivid]rûUpython-netaddrrüaUsaucy}rýUpip}rþUpackages]rÿUnetaddrrassUyakkety]rUpython-netaddrraUtrusty]rUpython-netaddrraUoneiric}rUpip}rUpackages]rUnetaddrrassUartful]r Upython-netaddrr aUnatty}r Upip}r Upackages]r UnetaddrrassUutopic]rUpython-netaddrraUzesty]rUpython-netaddrraUraring}rUpip}rUpackages]rUnetaddrrassUmaverick}rUpip}rUpackages]rUnetaddrrassUquantal}rUpip}rUpackages]rUnetaddrrassuuUpython-jsonschema-pip}rUubuntu}r Upip}r!Upackages]r"U jsonschemar#asssUcppcheck-junit-pip}r$(Udebian}r%Upip}r&Upackages]r'Ucppcheck-junitr(assUubuntu}r)Upip}r*Upackages]r+Ucppcheck-junitr,assuUpython-qt-bindings-qwt5}r-(Ufedora]r.U PyQwt-develr/aUgentoo]r0Udev-python/pyqwt:5r1aUmacports]r2Uqwt52r3aUubuntu]r4Upython-qwt5-qt4r5aUarch]r6U python2-pyqwtr7aUdebian]r8Upython-qwt5-qt4r9auU python-ws4py}r:(Udebian]r;U python-ws4pyr<aUubuntu]r=U python-ws4pyr>auU python-xdot}r?(Ufedora]r@U python-xdotrAaUdebian]rBUxdotrCaUgentoo]rDUmedia-gfx/xdotrEaUubuntu]rFUxdotrGauUpython-django-extra-views}rH(Udebian]rIUpython-django-extra-viewsrJaUubuntu]rKUpython-django-extra-viewsrLauUpython-subprocess32}rM(Ufedora]rNUpython-subprocess32rOaUdebian}rP(UjessieNU*]rQUpython-subprocess32rRauUgentoo]rSUdev-python/subprocess32rTaUubuntu}rU(U*]rVUpython-subprocess32rWaUtrustyNuuUpython-certifi}rX(Ufedora]rYUpython-certifirZaUdebian}r[(Ustretch]r\Upython-certifir]aUbuster]r^Upython-certifir_auUgentoo]r`Udev-python/certifiraaUubuntu}rb(Uzesty]rcUpython-certifirdaUyakkety]reUpython-certifirfaUartful]rgUpython-certifirhaUbionic]riUpython-certifirjaUxenial]rkUpython-certifirlauuUpython-cryptography}rm(Urhel]rnUpython2-cryptographyroaUdebian]rpUpython-cryptographyrqaUgentoo]rrUdev-python/cryptographyrsaUubuntu]rtUpython-cryptographyruauU virtualenv}rv(Ufedora]rwU virtualenvrxaUdebian]ryU virtualenvrzaUubuntu]r{U virtualenvr|auUpython-bitstring-pip}r}(Uosx}r~Upip}rUpackages]r€U bitstringrassUfedora}r‚Upip}rƒUpackages]r„U bitstringr…assUdebian}r†Upip}r‡Upackages]rˆU bitstringr‰assUubuntu}rŠUpip}r‹Upackages]rŒU bitstringrassuUpython3-pycryptodome}rŽ(Uosx}rUpip}rUpackages]r‘U pycryptodomer’assUfedora]r“Upython3-pycryptodomexr”aUgentoo]r•Udev-python/pycryptodomer–aUrhel]r—U)python%{python3_pkgversion}-pycryptodomexr˜aUubuntu]r™Upython3-pycryptodomeršaUarch]r›Upython-pycryptodomerœaUdebian]rUpython3-pycryptodomeržaUalpine]rŸUpy3-pycryptodomer auUpython3-defusedxml}r¡(Ufedora]r¢Upython3-defusedxmlr£aUdebian]r¤Upython3-defusedxmlr¥aUgentoo]r¦Udev-python/defusedxmlr§aUubuntu]r¨Upython3-defusedxmlr©auU python-docker}rª(Ufedora]r«U python-dockerr¬aUarch]r­U python-dockerr®aUdebian]r¯U python-dockerr°aUubuntu]r±U python-dockerr²auU python3-ifcfg}r³(Ufedora]r´U python3-ifcfgrµaUdebian}r¶(Ustretch]r·U python3-ifcfgr¸aUbuster]r¹U python3-ifcfgrºauUrhel]r»U!python%{python3_pkgversion}-ifcfgr¼aUubuntu}r½Ubionic]r¾U python3-ifcfgr¿asuUpython-catkin-pkg-modules}rÀ(Uosx}rÁUpip}rÂUpackages]rÃU catkin-pkgrÄassUfedora]rÅUpython-catkin_pkgrÆaUgentoo]rÇUdev-python/catkin_pkgrÈaUmacports]rÉUpython-catkin-pkgrÊaUfreebsd}rËUpip}rÌUpackages]rÍU catkin-pkgrÎassUopensuse]rÏUpython-catkin_pkgrÐaU slackware}rÑUpip}rÒUpackages]rÓU catkin-pkgrÔassUubuntu]rÕUpython-catkin-pkg-modulesrÖaU openembedded]r×Upython-catkin-pkg@meta-rosrØaUarch]rÙUpython2-catkin_pkgrÚaUdebian]rÛUpython-catkin-pkg-modulesrÜaUalpine}rÝUpip}rÞUpackages]rßU catkin-pkgràassuUpython-flask-cors-pip}rá(Udebian}râUpip}rãUpackages]räU flask-corsråassUubuntu}ræUpip}rçUpackages]rèU flask-corsréassuU python3-tk}rê(Ufedora]rëUpython3-tkinterrìaUdebian]ríU python3-tkrîaUubuntu]rïU python3-tkrðauUpython-protobuf}rñ(Udebian]ròUpython-protobufróaUgentoo]rôUdev-python/protobuf-pythonrõaUubuntu]röUpython-protobufr÷auUsvgpathtools-pip}røUubuntu}rùUpip}rúUpackages]rûU svgpathtoolsrüasssU python-gst}rý(Ufedora]rþUgstreamer-pythonrÿaUarch]rUgstreamer0.10-pythonraUdebian}r(Ujessie]rUpython-gst0.10raUwheezy]rUpython-gst0.10rauUgentoo]rUdev-python/gst-pythonraUubuntu}r (Uprecise]r Upython-gst0.10r aUsaucy]r Upython-gst0.10r aUtrusty]rUpython-gst0.10raUoneiric]rUpython-gst0.10raUlucid]rUpython-gst0.10raUnatty]rUpython-gst0.10raUutopic]rUpython-gst0.10raUraring]rUpython-gst0.10raUmaverick]rUpython-gst0.10raUquantal]rUpython-gst0.10raUvivid]rUpython-gst0.10rauuUpython-face-recognition-pip}r (Ufedora}r!Upip}r"Upackages]r#Uface_recognitionr$assUarch}r%Upip}r&Upackages]r'Uface_recognitionr(assUdebian}r)Upip}r*Upackages]r+Uface_recognitionr,assUubuntu}r-Upip}r.Upackages]r/Uface_recognitionr0assuUpython-fastdtw-pip}r1(Udebian}r2Upip}r3Upackages]r4Upython-fastdtwr5assUubuntu}r6Upip}r7Upackages]r8Upython-fastdtwr9assuUpython-fcn-pip}r:(Uosx}r;Upip}r<(Udepends]r=Ugfortranr>aUpackages]r?Ufcnr@ausUfedora}rAUpip}rB(Udepends]rCU liblapack-devrDaUpackages]rEUfcnrFausUdebian}rGUpip}rH(Udepends]rIU liblapack-devrJaUpackages]rKUfcnrLausUubuntu}rMUpip}rN(Udepends]rOU liblapack-devrPaUpackages]rQUfcnrRausuUpython-rospkg-modules}rS(Uosx}rTUpip}rUUpackages]rVUrospkgrWassUfedora]rXU python-rospkgrYaUgentoo]rZUdev-python/rospkgr[aUmacports]r\U py27-rospkgr]aUfreebsd}r^Upip}r_Upackages]r`UrospkgraassUopensuse]rbU python-rospkgrcaU slackware}rdUpip}reUpackages]rfUrospkgrgassUubuntu]rhUpython-rospkg-modulesriaUarch]rjUpython2-rospkgrkaUdebian]rlUpython-rospkg-modulesrmaUalpine}rnUpip}roUpackages]rpUrospkgrqassuUpython-pixel-ring-pip}rr(Ufedora}rsUpip}rtUpackages]ruU pixel-ringrvassUdebian}rwUpip}rxUpackages]ryU pixel-ringrzassUubuntu}r{Upip}r|Upackages]r}U pixel-ringr~assuUpython-w1thermsensor-pip}r(Udebian}r€Upip}rUpackages]r‚U w1thermsensorrƒassUubuntu}r„Upip}r…Upackages]r†U w1thermsensorr‡assuUpython3-psutil}rˆ(Uosx}r‰Upip}rŠUpackages]r‹UpsutilrŒassUfedora]rUpython3-psutilrŽaUgentoo]rUdev-python/psutilraUmacports]r‘U py36-psutilr’aUopensuse]r“Upython3-psutilr”aUrhel]r•U"python%{python3_pkgversion}-psutilr–aU slackware]r—Upsutilr˜aUubuntu]r™Upython3-psutilršaU openembedded]r›Upython3-psutil@meta-pythonrœaUarch]rU python-psutilržaUdebian]rŸUpython3-psutilr aUalpine]r¡U py3-psutilr¢auU python-bson}r£(Uosx}r¤Upip}r¥Upackages]r¦Ubsonr§assUfedora]r¨U python-bsonr©aUgentoo]rªUdev-python/pymongor«aUubuntu]r¬U python-bsonr­aU openembedded]r®Upython-pymongo@meta-pythonr¯aUdebian]r°U python-bsonr±auUpika}r²(Uosx}r³Upip}r´Upackages]rµUpikar¶assUmacports]r·U py27-pikar¸aUdebian]r¹U python-pikarºaUgentoo]r»Udev-python/pikar¼aUubuntu]r½U python-pikar¾auU python-attrs}r¿(Ufedora]rÀU python2-attrsrÁaUdebian]rÂU python-attrrÃaUgentoo]rÄUdev-python/attrsrÅaUubuntu}rÆ(U*}rÇUpackages]rÈU python-attrrÉasUtrusty}rÊUpip}rËUpackages]rÌUattrsrÍassuuU python-google-cloud-bigquery-pip}rÎ(Udebian}rÏUpip}rÐUpackages]rÑUgoogle-cloud-bigqueryrÒassUubuntu}rÓUpip}rÔUpackages]rÕUgoogle-cloud-bigqueryrÖassuU python-vtk}r×(Ufedora]rØU vtk-pythonrÙaUarch]rÚUvtkrÛaUdebian]rÜU python-vtkrÝaUgentoo]rÞUdev-python/pyvtkrßaUubuntu}rà(Usaucy]ráU python-vtkrâaUutopic]rãU python-vtkräaUtrusty]råU python-vtkræaUvivid]rçU python-vtkrèaUwily]réU python-vtkrêaUbionic]rëU python-vtk6rìaUxenial]ríU python-vtk6rîauuU python-celery}rï(Ufedora]rðU python-celeryrñaUdebian]ròU python-celeryróaUgentoo]rôUdev-python/celeryrõaUubuntu]röU python-celeryr÷auUpython3-vcstool}rø(Ufedora]rùUpython3-vcstoolrúaUmacports}rûUpip}rüUpackages]rýUvcstoolrþassUdebian}rÿUpip}rUpackages]rUvcstoolrassUgentoo}rUpip}rUpackages]rUvcstoolrassUubuntu]rUpython3-vcstoolrauU pyrebase-pip}r (Ufedora}r Upip}r Upackages]r Upyrebaser assUdebian}rUpip}rUpackages]rUpyrebaserassUubuntu}rUpip}rUpackages]rUpyrebaserassuU python-tk}r(Ufedora]rUpython2-tkinterraUarch]r(Upython2rUtkreUdebian]rU python-tkraUubuntu}r(U vivid_python3]rU python3-tkr aUbionic_python3]r!U python3-tkr"aUxenial_python3]r#U python3-tkr$aU wily_python3]r%U python3-tkr&aUtrusty_python3]r'U python3-tkr(aU*]r)U python-tkr*aUutopic_python3]r+U python3-tkr,auuUpython-testscenarios}r-(Ufedora]r.Upython-testscenariosr/aUdebian]r0Upython-testscenariosr1aUgentoo]r2Udev-python/testscenariosr3aUubuntu]r4Upython-testscenariosr5auUpython3-twisted}r6(Ufedora]r7Upython3-twistedr8aUarch]r9Upython-twistedr:aUdebian]r;Upython3-twistedr<aUgentoo]r=Udev-python/twistedr>aUubuntu]r?Upython3-twistedr@auUrosbag-metadata-pip}rA(Ufedora}rBUpip}rCUpackages]rDUrosbag-metadatarEassUdebian}rFUpip}rGUpackages]rHUrosbag-metadatarIassUubuntu}rJUpip}rKUpackages]rLUrosbag-metadatarMassuU python3-lttng}rN(Udebian]rOU python3-lttngrPaUubuntu]rQU python3-lttngrRauUpython3-qt5-bindings-gl}rS(Ufedora]rTU python3-qt5rUaUdebian]rVUpython3-pyqt5.qtopenglrWaUgentoo]rXUdev-python/PyQt5[opengl]rYaUubuntu]rZUpython3-pyqt5.qtopenglr[auU python-ujson}r\(Uosx}r]Upip}r^Upackages]r_Uujsonr`assUfedora]raU python-ujsonrbaUdebian}rc(Ustretch]rdU python-ujsonreaUbuster]rfU python-ujsonrgauUgentoo]rhUdev-python/ujsonriaUubuntu}rj(Usaucy}rkUpip}rlUpackages]rmUujsonrnassUutopic}roUpip}rpUpackages]rqUujsonrrassU*]rsU python-ujsonrtaUtrusty}ruUpip}rvUpackages]rwUujsonrxassUvivid}ryUpip}rzUpackages]r{Uujsonr|assuuUpython-bitarray}r}(Ufedora]r~Upython-bitarrayraUdebian]r€Upython-bitarrayraUgentoo]r‚Udev-python/bitarrayrƒaUubuntu]r„Upython-bitarrayr…auU python3-mypy}r†(Ufedora]r‡U python3-mypyrˆaUarch]r‰UmypyrŠaUdebian}r‹(Ustretch]rŒUmypyraUbuster]rŽU python3-mypyrauUgentoo]rUdev-python/mypyr‘aUubuntu]r’U python3-mypyr“auUpython-numpy-quaternion-pip}r”(Uosx}r•Upip}r–Upackages]r—Unumpy-quaternionr˜assUfedora}r™Upip}ršUpackages]r›Unumpy-quaternionrœassUdebian}rUpip}ržUpackages]rŸUnumpy-quaternionr assUubuntu}r¡Upip}r¢Upackages]r£Unumpy-quaternionr¤assuUpython-sqlalchemy}r¥(Ufedora]r¦Upython-sqlalchemyr§aUdebian]r¨Upython-sqlalchemyr©aUgentoo]rªUdev-python/sqlalchemyr«aUubuntu}r¬(Uprecise]r­Upython-sqlalchemyr®aUsaucy]r¯Upython-sqlalchemyr°aUtrusty]r±Upython-sqlalchemyr²aUtrusty_python3]r³Upython3-sqlalchemyr´aUartful]rµUpython-sqlalchemyr¶aUxenial]r·Upython-sqlalchemyr¸aUutopic]r¹Upython-sqlalchemyrºaUxenial_python3]r»Upython3-sqlalchemyr¼aUvivid]r½Upython-sqlalchemyr¾aUbionic]r¿Upython-sqlalchemyrÀaUraring]rÁUpython-sqlalchemyrÂaUquantal]rÃUpython-sqlalchemyrÄaUwily]rÅUpython-sqlalchemyrÆauuUpython-apparmor}rÇ(Udebian]rÈUpython-apparmorrÉaUgentoo]rÊUsys-libs/libapparmor[python]rËaUubuntu]rÌUpython-apparmorrÍauU python3-yaml}rÎ(Ufedora]rÏUpython3-PyYAMLrÐaUgentoo]rÑUdev-python/pyyamlrÒaUubuntu]rÓU python3-yamlrÔaU openembedded]rÕUpython3-pyyaml@meta-pythonrÖaUalpine]r×Upy3-yamlrØaUdebian]rÙU python3-yamlrÚaUrhel]rÛU"python%{python3_pkgversion}-PyYAMLrÜauUpython-pymongo}rÝ(Uosx}rÞUpip}rßUpackages]ràUpymongoráassUfedora]râUpython-pymongorãaUgentoo]räUdev-python/pymongoråaUubuntu}ræ(U vivid_python3]rçUpython3-pymongorèaUxenial_python3]réUpython3-pymongorêaU wily_python3]rëUpython3-pymongorìaUtrusty_python3]ríUpython3-pymongorîaU*]rïUpython-pymongorðaUutopic_python3]rñUpython3-pymongoròauUarch]róUpython2-pymongorôaUdebian]rõUpython-pymongoröauU python-pycurl}r÷(Ufedora]røUpython2-pycurlrùaUdebian]rúU python-pycurlrûaUubuntu]rüU python-pycurlrýauU python-gnupg}rþ(Ufedora]rÿU python-gnupgr aUgentoo]r Udev-python/python-gnupgr aUfreebsd]r Upy27-python-gnupgr aUubuntu]r U python-gnupgr aU openembedded]r Upython-gnupg@meta-rosr aUarch]r U python2-gnupgr aUdebian]r U python-gnupgr aUalpine}r Upip}r Upackages]r U python-gnupgr assuUpython-pymodbus}r (Ufedora]r Upymodbusr aUdebian]r Upython-pymodbusr aUubuntu]r Upython-pymodbusr auU imgaug-pip}r (Uosx}r Upip}r Upackages]r Uimgaugr assUfedora}r Upip}r Upackages]r Uimgaugr assUdebian}r! Upip}r" Upackages]r# Uimgaugr$ assUubuntu}r% Upip}r& Upackages]r' Uimgaugr( assuU pymap3d-pip}r) (Uosx}r* Upip}r+ Upackages]r, Upymap3dr- assUfedora}r. Upip}r/ Upackages]r0 Upymap3dr1 assUdebian}r2 Upip}r3 Upackages]r4 Upymap3dr5 assUubuntu}r6 Upip}r7 Upackages]r8 Upymap3dr9 assuUpython-levenshtein}r: (Ufedora]r; Upython-Levenshteinr< aUdebian]r= Upython-levenshteinr> aUgentoo]r? Udev-python/python-levenshteinr@ aUubuntu]rA Upython-levenshteinrB auUpython-construct}rC (Udebian]rD Upython-constructrE aUubuntu]rF Upython-constructrG auU python-sympy}rH (Ufedora]rI UsympyrJ aUdebian]rK U python-sympyrL aUgentoo]rM Udev-python/sympyrN aUubuntu}rO (Uprecise]rP U python-sympyrQ aU wily_python3]rR U python3-sympyrS aUlucid]rT U python-sympyrU aUxenial]rV U python-sympyrW aUxenial_python3]rX U python3-sympyrY aUbionic]rZ U python-sympyr[ aUwily]r\ U python-sympyr] aUsaucy]r^ U python-sympyr_ aUtrusty]r` U python-sympyra aUoneiric]rb U python-sympyrc aUcosmic]rd U python-sympyre aUartful]rf U python-sympyrg aUnatty]rh U python-sympyri aUraring]rj U python-sympyrk aUmaverick]rl U python-sympyrm aUquantal]rn U python-sympyro auuU python-enum}rp (Ufedora]rq U python-enumrr aUdebian}rs (Ujessie]rt U python-enumru aUwheezy]rv U python-enumrw auUubuntu]rx U python-enumry auUpython-pynmea2}rz Uubuntu}r{ Upip}r| Upackages]r} Upynmea2r~ asssUpyosmium}r (Udebian]r€ Upython-pyosmiumr aUubuntu]r‚ Upython-pyosmiumrƒ auU python-xlib}r„ (Ufedora]r… U python-xlibr† aUdebian]r‡ U python-xlibrˆ aUgentoo]r‰ Udev-python/python-xlibrŠ aUubuntu]r‹ U python-xlibrŒ auUpython-cookiecutter}r (Uosx}rŽ Upip}r Upackages]r U cookiecutterr‘ assUfedora}r’ Upip}r“ Upackages]r” U cookiecutterr• assUdebian}r– (Ustretch]r— Upython-cookiecutterr˜ aUjessie]r™ Upython-cookiecutterrš aUbuster]r› Upython-cookiecutterrœ auUgentoo]r Udev-util/cookiecutterrž aUubuntu]rŸ Upython-cookiecutterr  auU$python-google-cloud-texttospeech-pip}r¡ (Ufedora}r¢ Upip}r£ Upackages]r¤ Ugoogle-cloud-texttospeechr¥ assUdebian}r¦ Upip}r§ Upackages]r¨ Ugoogle-cloud-texttospeechr© assUubuntu}rª Upip}r« Upackages]r¬ Ugoogle-cloud-texttospeechr­ assuUpython-qt5-bindings-gl}r® (Ufedora]r¯ U python-qt5r° aUgentoo]r± Udev-python/PyQt5[opengl]r² aUfreebsd]r³ Upy27-qt5-openglr´ aUopensuse]rµ U python-qt5r¶ aU slackware]r· UPyQt5r¸ aUubuntu}r¹ (Uyakkety]rº Upython-pyqt5.qtopenglr» aUwily]r¼ Upython-pyqt5.qtopenglr½ aUbionic]r¾ Upython-pyqt5.qtopenglr¿ aUzesty]rÀ Upython-pyqt5.qtopenglrÁ aUartful]r Upython-pyqt5.qtopenglrà aUxenial]rÄ Upython-pyqt5.qtopenglrÅ auUarch]rÆ U python2-pyqt5rÇ aUdebian}rÈ (Ustretch]rÉ Upython-pyqt5.qtopenglrÊ aUjessie]rË Upython-pyqt5.qtopenglrÌ aUbuster]rÍ Upython-pyqt5.qtopenglrÎ auuUpython-networkmanager}rÏ (Udebian}rÐ (Ustretch]rÑ Upython-networkmanagerrÒ aUjessie]rÓ Upython-networkmanagerrÔ aUbuster]rÕ Upython-networkmanagerrÖ auUubuntu]r× Upython-networkmanagerrØ auUpython-openssl}rÙ (Udebian]rÚ Upython-opensslrÛ aUgentoo]rÜ Udev-python/pyopensslrÝ aUubuntu]rÞ Upython-opensslrß auUyapf}rà (Udebian}rá (Ustretch]râ Uyapfrã aUbuster]rä Uyapfrå auUubuntu}ræ (Usaucy}rç Upip}rè Upackages]ré Uyapfrê assUyakkety}rë Upip}rì Upackages]rí Uyapfrî assUwily}rï Upip}rð Upackages]rñ Uyapfrò assUartful]ró Uyapfrô aUxenial}rõ Upip}rö Upackages]r÷ Uyapfrø assUutopic}rù Upip}rú Upackages]rû Uyapfrü assUtrusty}rý Upip}rþ Upackages]rÿ Uyapfr!assUzesty]r!Uyapfr!aUvivid}r!Upip}r!Upackages]r!Uyapfr!assuuUpython-pygraphviz}r!(Uosx}r!Upip}r !Upackages]r !U pygraphvizr !assUfedora]r !Ugraphviz-pythonr !aUgentoo]r!Udev-python/pygraphvizr!aUfreebsd]r!Upy27-pygraphvizr!aUopensuse]r!Upython-pygraphvizr!aU slackware]r!U pygraphvizr!aUubuntu]r!Upython-pygraphvizr!aUarch]r!Upython2-pygraphvizr!aUdebian]r!Upython-pygraphvizr!auUpython-libpcap}r!(Ufedora]r!U pylibpcapr!aUdebian]r!Upython-libpcapr !aUgentoo]r!!Udev-python/pylibpcapr"!aUubuntu]r#!Upython-libpcapr$!auUwxpython}r%!(Ugentoo]r&!Udev-python/wxpythonr'!aUcentos]r(!UwxPython-develr)!aUmacports]r*!(U py27-wxpythonr+!U py27-gobjectr,!Upy27-gtkr-!U py27-cairor.!eUopensuse]r/!U python-wxGTKr0!aUrhel]r1!UwxPython-develr2!aUfreebsd]r3!U py27-wxPythonr4!aUubuntu}r5!(Uprecise]r6!Upython-wxgtk2.8r7!aUtrusty_python3]r8!Upython-wxgtk2.8r9!aUlucid]r:!Upython-wxgtk2.8r;!aUxenial]r!Upython-wxgtk2.8r?!aUbionic]r@!Upython-wxgtk3.0rA!aUwily]rB!Upython-wxgtk2.8rC!aUsaucy]rD!Upython-wxgtk2.8rE!aUyakkety]rF!Upython-wxgtk3.0rG!aUtrusty]rH!Upython-wxgtk2.8rI!aUoneiric]rJ!Upython-wxgtk2.8rK!aUcosmic]rL!Upython-wxgtk3.0rM!aUartful]rN!Upython-wxgtk3.0rO!aUnatty]rP!Upython-wxgtk2.8rQ!aUutopic]rR!Upython-wxgtk2.8rS!aUzesty]rT!Upython-wxgtk3.0rU!aUraring]rV!Upython-wxgtk2.8rW!aUmaverick]rX!Upython-wxgtk2.8rY!aUquantal]rZ!Upython-wxgtk2.8r[!auU openembedded]r\!Uwxpython@meta-rosr]!aUarch]r^!Uwxpythonr_!aUdebian}r`!(Ustretch]ra!Upython-wxgtk3.0rb!aUjessie]rc!Upython-wxgtk3.0rd!aUsqueeze]re!Upython-wxgtk2.8rf!aUbuster]rg!Upython-wxgtk3.0rh!aUwheezy]ri!Upython-wxgtk2.8rj!auUfedora]rk!UwxPython-develrl!auU python-bottle}rm!(Ufedora]rn!U python-bottlero!aUdebian]rp!U python-bottlerq!aUgentoo]rr!Udev-python/bottlers!aUubuntu]rt!U python-bottleru!auU python-pydot}rv!(Uosx}rw!Upip}rx!Upackages]ry!Upydotrz!assUfedora]r{!Upydotr|!aUgentoo]r}!Udev-python/pydotr~!aUmacports]r!U py27-pydotr€!aUfreebsd]r!U py27-pydotr‚!aUopensuse]rƒ!U python-pydotr„!aU slackware]r…!Upydotr†!aUubuntu]r‡!U python-pydotrˆ!aUarch]r‰!U python2-pydotrŠ!aUdebian]r‹!U python-pydotrŒ!auU uavcan-pip}r!(Ufedora}rŽ!Upip}r!Upackages]r!Uuavcanr‘!assUdebian}r’!Upip}r“!Upackages]r”!Uuavcanr•!assUubuntu}r–!Upip}r—!Upackages]r˜!Uuavcanr™!assuUpython-jasmine-pip}rš!Uubuntu}r›!Upip}rœ!Upackages]r!Ujasminerž!asssU python-pyside}rŸ!(Ufedora]r !U python-pysider¡!aUarch]r¢!Upython2-pysider£!aUdebian]r¤!U python-pysider¥!aUgentoo]r¦!Udev-python/pysider§!aUubuntu}r¨!(Uprecise]r©!U python-pysiderª!aUsaucy]r«!U python-pysider¬!aUtrusty]r­!U python-pysider®!aUoneiric]r¯!U python-pysider°!aU vivid_python3]r±!Upython3-pysider²!aUtrusty_python3]r³!Upython3-pysider´!aUlucid]rµ!U python-pysider¶!aUutopic_python3]r·!Upython3-pysider¸!aUnatty]r¹!U python-pysiderº!aUutopic]r»!U python-pysider¼!aUraring]r½!U python-pysider¾!aUmaverick]r¿!U python-pysiderÀ!aUquantal]rÁ!U python-pysiderÂ!aUvivid]rÃ!U python-pysiderÄ!auuUpython-deap-pip}rÅ!(Udebian}rÆ!Upip]rÇ!UdeaprÈ!asUubuntu}rÉ!Upip]rÊ!UdeaprË!asuUpython-ws4py-pip}rÌ!Uubuntu}rÍ!Upip}rÎ!Upackages]rÏ!Uws4pyrÐ!asssUpython-pyinotify}rÑ!(Ufedora]rÒ!Upython-inotifyrÓ!aUdebian]rÔ!Upython-pyinotifyrÕ!aUgentoo]rÖ!Udev-python/pyinotifyr×!aUubuntu]rØ!Upython-pyinotifyrÙ!auUpython-slackclient-pip}rÚ!(Uosx}rÛ!Upip}rÜ!Upackages]rÝ!U slackclientrÞ!assUfedora}rß!Upip}rà!Upackages]rá!U slackclientrâ!assUdebian}rã!Upip}rä!Upackages]rå!U slackclientræ!assUubuntu}rç!Upip}rè!Upackages]ré!U slackclientrê!assuUpython-django-extensions}rë!(Udebian]rì!Upython-django-extensionsrí!aUubuntu]rî!Upython-django-extensionsrï!auU python-pbr}rð!(Ufedora]rñ!U python-pbrrò!aUdebian]ró!U python-pbrrô!aUrhel]rõ!U python-pbrrö!aUubuntu]r÷!U python-pbrrø!auUpython-sklearn}rù!(Uosx}rú!Upip}rû!Upackages]rü!U scikit-learnrý!assUfedora]rþ!Upython-scikit-learnrÿ!aUdebian]r"Upython-sklearnr"aUgentoo]r"Usci-libs/scikits_learnr"aUubuntu}r"(Ulucid]U*]r"Upython-sklearnr"aUmaverick]Unatty]Uoneiric]uuU python-qt4-gl}r"(Ufedora]r"UPyQt4r "aUdebian]r "U python-qt4-glr "aUgentoo]r "(Udev-python/pyside[opengl]r "Udev-python/PyQt4[opengl]r"eUubuntu]r"U python-qt4-glr"auUpython-multiprocess-pip}r"(Ufedora}r"Upip}r"Upackages]r"U multiprocessr"assUarch}r"Upip}r"Upackages]r"U multiprocessr"assUdebian}r"Upip}r"Upackages]r"U multiprocessr"assUgentoo}r"Upip}r"Upackages]r "U multiprocessr!"assUubuntu}r""Upip}r#"Upackages]r$"U multiprocessr%"assuUpython-pqdict-pip}r&"(Uosx}r'"Upip}r("Upackages]r)"Upqdictr*"assUfedora}r+"Upip}r,"Upackages]r-"Upqdictr."assUdebian}r/"Upip}r0"Upackages]r1"Upqdictr2"assUubuntu}r3"Upip}r4"Upackages]r5"Upqdictr6"assuU python-rosdep}r7"(Uosx}r8"Upip}r9"Upackages]r:"Urosdepr;"assUfedora]r<"U python-rosdepr="aUgentoo]r>"Udev-python/rosdepr?"aUfreebsd}r@"Upip}rA"Upackages]rB"UrosdeprC"assUopensuse]rD"U python-rosdeprE"aU slackware}rF"Upip}rG"Upackages]rH"UrosdeprI"assUubuntu}rJ"(Uprecise]rK"U python-rosdeprL"aUwily]rM"U python-rosdeprN"aUtrusty_python3]rO"Upython3-rosdeprP"aUlucid]rQ"U python-rosdeprR"aUyakkety_python3]rS"Upython3-rosdeprT"aUxenial_python3]rU"Upython3-rosdeprV"aUvivid]rW"U python-rosdeprX"aUbionic]rY"U python-rosdeprZ"aUxenial]r["U python-rosdepr\"aU zesty_python3]r]"Upython3-rosdepr^"aUraring]r_"U python-rosdepr`"aUsaucy]ra"U python-rosdeprb"aUyakkety]rc"U python-rosdeprd"aUtrusty]re"U python-rosdeprf"aUoneiric]rg"U python-rosdeprh"aUartful]ri"U python-rosdeprj"aUquantal]rk"U python-rosdeprl"aUutopic]rm"U python-rosdeprn"aU wily_python3]ro"Upython3-rosdeprp"aUzesty]rq"U python-rosdeprr"aUmaverick]rs"U python-rosdeprt"aUnatty]ru"U python-rosdeprv"auU openembedded]rw"Upython-rosdep@meta-rosrx"aUarch]ry"Upython2-rosdeprz"aUdebian]r{"U python-rosdepr|"aUalpine}r}"Upip}r~"Upackages]r"Urosdepr€"assuU python-sip}r"(Ufedora]r‚"U sip-develrƒ"aUgentoo]r„"Udev-python/sipr…"aUmacports]r†"Upy27-sipr‡"aUfreebsd]rˆ"Upy27-sipr‰"aUopensuse]rŠ"Upython-sip-develr‹"aUrhel]rŒ"U sip-develr"aU slackware}rŽ"Uslackpkg}r"Upackages]r"Usipr‘"assUubuntu}r’"(Uprecise]r“"Upython-sip-devr”"aUwily]r•"Upython-sip-devr–"aUtrusty_python3]r—"Upython3-sip-devr˜"aUlucid]r™"Upython-sip-devrš"aUyakkety_python3]r›"Upython3-sip-devrœ"aUxenial_python3]r"Upython3-sip-devrž"aUvivid]rŸ"Upython-sip-devr "aUbionic]r¡"Upython-sip-devr¢"aUxenial]r£"Upython-sip-devr¤"aU zesty_python3]r¥"Upython3-sip-devr¦"aUraring]r§"Upython-sip-devr¨"aUsaucy]r©"Upython-sip-devrª"aUyakkety]r«"Upython-sip-devr¬"aUtrusty]r­"Upython-sip-devr®"aUoneiric]r¯"Upython-sip-devr°"aUartful_python3]r±"Upython3-sip-devr²"aUartful]r³"Upython-sip-devr´"aUquantal]rµ"Upython-sip-devr¶"aUutopic]r·"Upython-sip-devr¸"aUbionic_python3]r¹"Upython3-sip-devrº"aU wily_python3]r»"Upython3-sip-devr¼"aUzesty]r½"Upython-sip-devr¾"aUmaverick]r¿"Upython-sip-devrÀ"aUnatty]rÁ"Upython-sip-devrÂ"auU openembedded]rÃ"U sip@meta-oerÄ"aUarch]rÅ"(UsiprÆ"U python2-siprÇ"eUdebian]rÈ"Upython-sip-devrÉ"auUautolab-perception-pip}rÊ"Uubuntu}rË"Upip}rÌ"Upackages]rÍ"Uautolab_perceptionrÎ"asssUpython-qt5-bindings}rÏ"(Ufedora]rÐ"(Upython-qt5-develrÑ"UsiprÒ"eUgentoo]rÓ"Udev-python/PyQt5[gui,widgets]rÔ"aUfreebsd]rÕ"Upy27-qt5rÖ"aUopensuse]r×"U python-qt5rØ"aU slackware]rÙ"UPyQt5rÚ"aUubuntu}rÛ"(Uyakkety]rÜ"(Ulibpyside2-devrÝ"Ulibshiboken2-devrÞ"U pyqt5-devrß"U python-pyqt5rà"Upython-pyqt5.qtsvgrá"Upython-pyside2râ"Upython-sip-devrã"U shiboken2rä"eUwily]rå"(Ulibpyside2-devræ"Ulibshiboken2-devrç"U pyqt5-devrè"U python-pyqt5ré"Upython-pyqt5.qtsvgrê"Upython-pyside2rë"Upython-sip-devrì"U shiboken2rí"eUbionic]rî"(U pyqt5-devrï"U python-pyqt5rð"Upython-pyqt5.qtsvgrñ"Upython-sip-devrò"eUzesty]ró"(U pyqt5-devrô"U python-pyqt5rõ"Upython-pyqt5.qtsvgrö"Upython-sip-devr÷"eUartful]rø"(U pyqt5-devrù"U python-pyqt5rú"Upython-pyqt5.qtsvgrû"Upython-sip-devrü"eUxenial]rý"(Ulibpyside2-devrþ"Ulibshiboken2-devrÿ"U pyqt5-devr#U python-pyqt5r#Upython-pyqt5.qtsvgr#Upython-pyside2r#Upython-sip-devr#U shiboken2r#euUarch]r#U python2-pyqt5r#aUdebian}r#(Ustretch]r #(U pyqt5-devr #U python-pyqt5r #Upython-pyqt5.qtsvgr #Upython-sip-devr #U qtbase5-devr#eUjessie]r#(U pyqt5-devr#U python-pyqt5r#Upython-pyqt5.qtsvgr#Upython-sip-devr#U qtbase5-devr#eUbuster]r#(U pyqt5-devr#U python-pyqt5r#Upython-pyqt5.qtsvgr#Upython-sip-devr#U qtbase5-devr#euuUpython-gTTS-pip}r#(Ufedora}r#Upip}r#Upackages]r#UgTTSr#assUdebian}r #Upip}r!#Upackages]r"#UgTTSr##assUubuntu}r$#Upip}r%#Upackages]r&#UgTTSr'#assuU python-tftpy}r(#(Ufedora]r)#U python-tftpyr*#aUdebian]r+#U python-tftpyr,#aUubuntu]r-#U python-tftpyr.#auUpython-qt-bindings-gl}r/#(Uopensuse]r0#Upython-qt4-develr1#aUfedora]r2#UPyQt4r3#aUgentoo]r4#(Udev-python/pyside[opengl]r5#Udev-python/PyQt4[opengl]r6#eUubuntu]r7#U python-qt4-glr8#aUarch]r9#U python2-pyqt4r:#aUdebian]r;#U python-qt4-glr<#auUpython-pypozyx-pip}r=#Uubuntu}r>#Upip}r?#Upackages]r@#UpypozyxrA#asssU python-ftdi1}rB#(Ufedora]rC#Upython2-libftdirD#aUdebian]rE#U python-ftdi1rF#aUgentoo]rG#Udev-embedded/libftdirH#aUubuntu]rI#U python-ftdi1rJ#auUpython-tornado-couchdb-pip}rK#Uubuntu}rL#Upip}rM#Upackages]rN#Utornado-couchdbrO#asssUpython-rosinstall-generator}rP#(Ufedora]rQ#Upython-rosinstall_generatorrR#aUgentoo]rS#Udev-python/rosinstall_generatorrT#aUmacports]rU#Upy27-rosinstall-generatorrV#aUubuntu}rW#(Uprecise]rX#Upython-rosinstall-generatorrY#aUsaucy]rZ#Upython-rosinstall-generatorr[#aUtrusty]r\#Upython-rosinstall-generatorr]#aUoneiric]r^#Upython-rosinstall-generatorr_#aUtrusty_python3]r`#Upython3-rosinstall-generatorra#aUlucid]rb#Upython-rosinstall-generatorrc#aUnatty]rd#Upython-rosinstall-generatorre#aUmaverick]rf#Upython-rosinstall-generatorrg#aUquantal]rh#Upython-rosinstall-generatorri#aUraring]rj#Upython-rosinstall-generatorrk#auUarch]rl#Upython2-rosinstall-generatorrm#aUdebian}rn#(Ustretch]ro#Upython-rosinstall-generatorrp#aUbuster]rq#Upython-rosinstall-generatorrr#auuUpython-passlib}rs#(Ufedora]rt#Upython-passlibru#aUdebian]rv#Upython-passlibrw#aUgentoo]rx#Udev-python/passlibry#aUubuntu]rz#Upython-passlibr{#auUpython3-pandas}r|#(Ufedora]r}#Upython3-pandasr~#aUdebian]r#Upython3-pandasr€#aUgentoo]r#Udev-python/pandasr‚#aUubuntu]rƒ#Upython3-pandasr„#auUpython-validictory-pip}r…#Uubuntu}r†#Upip}r‡#Upackages]rˆ#U validictoryr‰#asssUpython-ruamel.yaml}rŠ#(Ufedora]r‹#Upython-ruamel-yamlrŒ#aUdebian}r#(Ustretch]rŽ#Upython-ruamel.yamlr#aUjessie]r#Upython-ruamel.yamlr‘#aUbuster]r’#Upython-ruamel.yamlr“#auUubuntu}r”#(Uzesty]r•#Upython-ruamel.yamlr–#aUyakkety]r—#Upython-ruamel.yamlr˜#aUartful]r™#Upython-ruamel.yamlrš#aUbionic]r›#Upython-ruamel.yamlrœ#aUxenial]r#Upython-ruamel.yamlrž#auuUpython-cheetah}rŸ#(Ufedora]r #Upython-cheetahr¡#aUdebian]r¢#Upython-cheetahr£#aUgentoo]r¤#Udev-python/cheetahr¥#aUubuntu]r¦#Upython-cheetahr§#auU python-evdev}r¨#(Ugentoo]r©#Udev-python/python-evdevrª#aUubuntu]r«#U python-evdevr¬#auUpython-pygps-pip}r­#(Uosx}r®#Upip}r¯#Upackages]r°#UpyGPsr±#assUfedora}r²#Upip}r³#Upackages]r´#UpyGPsrµ#assUdebian}r¶#Upip}r·#Upackages]r¸#UpyGPsr¹#assUubuntu}rº#Upip}r»#Upackages]r¼#UpyGPsr½#assuUpython-gi-cairo}r¾#(Ufedora]r¿#U pygobject3rÀ#aUdebian]rÁ#Upython-gi-cairorÂ#aUgentoo]rÃ#Udev-python/pygobjectrÄ#aUubuntu]rÅ#Upython-gi-cairorÆ#auUrpy2}rÇ#(Uarch]rÈ#U python-rpy2rÉ#aUdebian]rÊ#U python-rpy2rË#aUgentoo]rÌ#U=dev-python/rpy-2*rÍ#aUubuntu]rÎ#U python-rpy2rÏ#auU python-click}rÐ#(Uosx}rÑ#Upip}rÒ#Upackages]rÓ#UclickrÔ#assUfedora]rÕ#U python-clickrÖ#aUdebian}r×#(Ujessie}rØ#Upip}rÙ#Upackages]rÚ#U python-clickrÛ#assU*]rÜ#U python-clickrÝ#aUwheezy}rÞ#Upip}rß#Upackages]rà#U python-clickrá#assuUgentoo]râ#Udev-python/clickrã#aUubuntu}rä#(Usaucy}rå#Upip}ræ#Upackages]rç#Uclickrè#assUutopic}ré#Upip}rê#Upackages]rë#Uclickrì#assUtrusty}rí#Upip}rî#Upackages]rï#Uclickrð#assUwily}rñ#Upip}rò#Upackages]ró#Uclickrô#assU*]rõ#U python-clickrö#aUvivid}r÷#Upip}rø#Upackages]rù#Uclickrú#assuuUautolab-visualization-pip}rû#Uubuntu}rü#Upip}rý#Upackages]rþ#U visualizationrÿ#asssUpython3-backoff-pip}r$(Uopensuse}r$Upip}r$Upackages]r$Ubackoffr$assUosx}r$Upip}r$Upackages]r$Ubackoffr$assUfedora}r $Upip}r $Upackages]r $Ubackoffr $assUubuntu}r $Upip}r$Upackages]r$Ubackoffr$assUarch}r$Upip}r$Upackages]r$Ubackoffr$assUdebian}r$Upip}r$Upackages]r$Ubackoffr$assuUpython-bitstring}r$(Udebian}r$(Ustretch]r$Upython-bitstringr$aUbuster]r$Upython-bitstringr$auUgentoo]r$Udev-python/bitstringr $aUubuntu}r!$(Uzesty]r"$Upython-bitstringr#$aUwily]r$$Upython-bitstringr%$aUartful]r&$Upython-bitstringr'$aUbionic]r($Upython-bitstringr)$aUxenial]r*$Upython-bitstringr+$auuUpython-sortedcontainers-pip}r,$Uubuntu}r-$Upip}r.$Upackages]r/$Usortedcontainersr0$asssUpython-face-alignment-pip}r1$(Uosx}r2$Upip}r3$Upackages]r4$Uface-alignmentr5$assUfedora}r6$Upip}r7$Upackages]r8$Uface-alignmentr9$assUdebian}r:$Upip}r;$Upackages]r<$Uface-alignmentr=$assUubuntu}r>$Upip}r?$Upackages]r@$Uface-alignmentrA$assuUpython-clearsilver}rB$(Ufedora]rC$Upython-clearsilverrD$aUdebian]rE$Upython-clearsilverrF$aUcentos]rG$Upython-clearsilverrH$aUubuntu]rI$Upython-clearsilverrJ$auUpython3-catkin-pkg-modules}rK$(Ufedora]rL$Upython3-catkin_pkgrM$aUgentoo]rN$Udev-python/catkin_pkgrO$aUubuntu]rP$Upython3-catkin-pkg-modulesrQ$aU openembedded]rR$Upython3-catkin-pkg@meta-rosrS$aUdebian]rT$Upython3-catkin-pkg-modulesrU$aUrhel]rV$U&python%{python3_pkgversion}-catkin_pkgrW$auu.catkin_lint-1.6.6/test/sources.cache/825fae71ab9ea366e0b22e8dbe1e2948232cb2e8.pickle000066400000000000000000000055221362025056600265270ustar00rootroot00000000000000€}q(Uhoe}q(Ufedora]qU rubygem-hoeqaUarch]qUruby-hoeqaUdebian]qUruby-hoeqaUgentoo]q U dev-ruby/hoeq aUubuntu]q Uruby-hoeq auUruby}q (Ufedora]q(UrubyqU ruby-develqU openssl-develqUrubygemsqeUgentoo]qU dev-lang/rubyqaUmacports]qUrubyqaUubuntu}q(Uprecise]q(U ruby1.8-devqU libruby1.8qU rubygems1.8qeUlucid]q(U ruby1.8-devqUlibopenssl-ruby1.8qU rubygems1.8qeUxenial]q (Urubyq!Uruby-devq"eUvivid]q#(Urubyq$Uruby-devq%eUwily]q&(Urubyq'Uruby-devq(eUsaucy]q)(Urubyq*Uruby-devq+eUyakkety]q,(Urubyq-Uruby-devq.eUtrusty]q/(Urubyq0Uruby-devq1eUoneiric]q2(U ruby1.8-devq3U libruby1.8q4U rubygems1.8q5eU*]q6Urubyq7aUnatty]q8(U ruby1.8-devq9U libruby1.8q:U rubygems1.8q;eUutopic]q<(Urubyq=Uruby-devq>eUzesty]q?(Urubyq@Uruby-devqAeUraring]qB(UrubyqCUruby-devqDeUmaverick]qE(U ruby1.8-devqFU libruby1.8qGU rubygems1.8qHeUquantal]qI(UrubyqJUruby-devqKeuUarch]qLUrubyqMaUdebian}qN(Ustretch]qO(UrubyqPUruby-devqQeUjessie]qR(UrubyqSUruby-devqTeU*]qUUrubyqVauuUfacets}qW(Uosx}qXUmacports]qYU rb-facetsqZasUfedora]q[Urubygem-facetsq\aUgentoo]q]Udev-ruby/facetsq^aUubuntu]q_U ruby-facetsq`aUarch]qaU ruby-facetsqbaUdebian]qcU ruby-facetsqdauUrake}qe(Ufedora]qf(U rubygem-rakeqgUrubygem-rake-compilerqheUgentoo]qiU dev-ruby/rakeqjaUmacports]qkUrb-rakeqlaUubuntu]qmUrakeqnaUarch]qoUrubyqpaUdebian]qqUrakeqrauUrdoc}qs(Ufedora]qtU rubygem-rdocquaUarch]qvUrubyqwaUdebian]qxUrubyqyaUgentoo]qzU dev-ruby/rdocq{aUubuntu]q|Urubyq}auUbundler}q~(Ufedora]qUrubygem-bundlerq€aUarch]qU ruby-bundlerq‚aUdebian]qƒUbundlerq„aUgentoo]q…Udev-ruby/bundlerq†aUubuntu]q‡UbundlerqˆauUnokogiri}q‰(Uosx}qŠUmacports]q‹U rb-nokogiriqŒasUfedora]qUrubygem-nokogiriqŽaUgentoo]qUdev-ruby/nokogiriqaUubuntu]q‘U ruby-nokogiriq’aUarch]q“U ruby-nokogiriq”aUdebian]q•U ruby-nokogiriq–auUjekyll}q—(Udebian]q˜Ujekyllq™aUgentoo]qšUwww-apps/jekyllq›aUubuntu}qœUprecise}qUgem}qž(Udepends]qŸU ruby1.9.3q aUpackages]q¡Ujekyllq¢aussuUruby-dev}q£(Ufedora]q¤(U ruby-develq¥U openssl-develq¦Urubygemsq§eUgentoo]q¨U dev-lang/rubyq©aUmacports]qªUrubyq«aUubuntu]q¬Uruby-devq­aUarch]q®Urubyq¯aUdebian]q°Uruby-devq±auU ruby-ronn}q²(Ufedora]q³U rubygem-ronnq´aUarch]qµU ruby-ronnq¶aUdebian]q·U ruby-ronnq¸aUgentoo]q¹U app-text/ronnqºaUubuntu]q»U ruby-ronnq¼auU rake-compiler}q½(Ufedora]q¾Urubygem-rake-compilerq¿aUarch]qÀUruby-rake-compilerqÁaUdebian]qÂU rake-compilerqÃaUgentoo]qÄUdev-ruby/rake-compilerqÅaUubuntu]qÆU rake-compilerqÇauU ruby-sass}qÈ(Ufedora]qÉU rubygem-sassqÊaUdebian]qËU ruby-sassqÌaUgentoo]qÍU dev-ruby/sassqÎaUubuntu]qÏU ruby-sassqÐauUflexmock}qÑ(Uosx}qÒUmacports]qÓU rb-flexmockqÔasUfedora]qÕUrubygem-flexmockqÖaUdebian]q×U ruby-flexmockqØaUgentoo]qÙUdev-ruby/flexmockqÚaUubuntu]qÛU ruby-flexmockqÜauU ruby1.9.3}qÝUubuntu}qÞUprecise]qßU ruby1.9.3qàassu.catkin_lint-1.6.6/test/sources.cache/8c74a07d314634ca9f4067b7090d826cfc7ea3bf.pickle000066400000000000000000001635211362025056600264010ustar00rootroot00000000000000€}q(U gmock_vendorq}q(Uosxq}qUhomebrewq}qUpackagesq]q Uros/crystal/googletestq assU_is_rosq ˆUubuntuq }q Ubionicq}qUaptq}qh]qUros-crystal-gmock-vendorqasssuUament_copyrightq}q(h}qh}qh]qUros/crystal/ament_lintqassh ˆh }qh}qh}qh]qUros-crystal-ament-copyrightqasssuUament_cmake_lint_cmakeq}q (h}q!h}q"h]q#Uros/crystal/ament_lintq$assh ˆh }q%h}q&h}q'h]q(U"ros-crystal-ament-cmake-lint-cmakeq)asssuUdwb_msgsq*}q+(h}q,h}q-h]q.Uros/crystal/navigation2q/assh ˆh }q0h}q1h}q2h]q3Uros-crystal-dwb-msgsq4asssuUuncrustify_vendorq5}q6(h}q7h}q8h]q9Uros/crystal/uncrustify_vendorq:assh ˆh }q;h}qUros-crystal-uncrustify-vendorq?asssuU nav2_amclq@}qA(h}qBh}qCh]qDUros/crystal/navigation2qEassh ˆh }qFh}qGh}qHh]qIUros-crystal-nav2-amclqJasssuU rqt_publisherqK}qL(h}qMh}qNh]qOUros/crystal/rqt_publisherqPassh ˆh }qQh}qRh}qSh]qTUros-crystal-rqt-publisherqUasssuUecl_liteqV}qW(h}qXh}qYh]qZUros/crystal/ecl_liteq[assh ˆh }q\h}q]h}q^h]q_Uros-crystal-ecl-liteq`asssuUros_baseqa}qb(h}qch}qdh]qeUros/crystal/variantsqfassh ˆh }qgh}qhh}qih]qjUros-crystal-ros-baseqkasssuU ament_pclintql}qm(h}qnh}qoh]qpUros/crystal/ament_lintqqassh ˆh }qrh}qsh}qth]quUros-crystal-ament-pclintqvasssuU ecl_streamsqw}qx(h}qyh}qzh]q{Uros/crystal/ecl_coreq|assh ˆh }q}h}q~h}qh]q€Uros-crystal-ecl-streamsqasssuUros2msgq‚}qƒ(h}q„h}q…h]q†Uros/crystal/ros2cliq‡assh ˆh }qˆh}q‰h}qŠh]q‹Uros-crystal-ros2msgqŒasssuU rqt_topicq}qŽ(h}qh}qh]q‘Uros/crystal/rqt_topicq’assh ˆh }q“h}q”h}q•h]q–Uros-crystal-rqt-topicq—asssuUdummy_map_serverq˜}q™(h}qšh}q›h]qœUros/crystal/demosqassh ˆh }qžh}qŸh}q h]q¡Uros-crystal-dummy-map-serverq¢asssuUecl_ioq£}q¤(h}q¥h}q¦h]q§Uros/crystal/ecl_liteq¨assh ˆh }q©h}qªh}q«h]q¬Uros-crystal-ecl-ioq­asssuUrqt_service_callerq®}q¯(h}q°h}q±h]q²Uros/crystal/rqt_service_callerq³assh ˆh }q´h}qµh}q¶h]q·Uros-crystal-rqt-service-callerq¸asssuUfastcdrq¹}qº(h}q»h}q¼h]q½Uros/crystal/fastcdrq¾assh ˆh }q¿h}qÀh}qÁh]qÂUros-crystal-fastcdrqÃasssuUrosbag2_storageqÄ}qÅ(h}qÆh}qÇh]qÈUros/crystal/rosbag2qÉassh ˆh }qÊh}qËh}qÌh]qÍUros-crystal-rosbag2-storageqÎasssuU!examples_rclcpp_minimal_publisherqÏ}qÐ(h}qÑh}qÒh]qÓUros/crystal/examplesqÔassh ˆh }qÕh}qÖh}q×h]qØU-ros-crystal-examples-rclcpp-minimal-publisherqÙasssuU librealsense2qÚ}qÛ(h}qÜh}qÝh]qÞUros/crystal/librealsenseqßassh ˆh }qàh}qáh}qâh]qãUros-crystal-librealsense2qäasssuUdemo_nodes_cpp_nativeqå}qæ(h}qçh}qèh]qéUros/crystal/demosqêassh ˆh }qëh}qìh}qíh]qîU!ros-crystal-demo-nodes-cpp-nativeqïasssuU nav2_bringupqð}qñ(h}qòh}qóh]qôUros/crystal/navigation2qõassh ˆh }qöh}q÷h}qøh]qùUros-crystal-nav2-bringupqúasssuUpcl_conversionsqû}qü(h}qýh}qþh]qÿUros/crystal/pcl_conversionsrassh ˆh }rh}rh}rh]rUros-crystal-pcl-conversionsrasssuU ros_workspacer}r(h}rh}r h]r Uros/crystal/ros_workspacer assh ˆh }r h}r h}rh]rUros-crystal-ros-workspacerasssuU rqt_consoler}r(h}rh}rh]rUros/crystal/rqt_consolerassh ˆh }rh}rh}rh]rUros-crystal-rqt-consolerasssuU ecl_sigslotsr}r(h}rh}rh]r Uros/crystal/ecl_corer!assh ˆh }r"h}r#h}r$h]r%Uros-crystal-ecl-sigslotsr&asssuU osrf_pycommonr'}r((h}r)h}r*h]r+Uros/crystal/osrf_pycommonr,assh ˆh }r-h}r.h}r/h]r0Uros-crystal-osrf-pycommonr1asssuUrqt_guir2}r3(h}r4h}r5h]r6Uros/crystal/rqtr7assh ˆh }r8h}r9h}r:h]r;Uros-crystal-rqt-guir<asssuUament_lint_cmaker=}r>(h}r?h}r@h]rAUros/crystal/ament_lintrBassh ˆh }rCh}rDh}rEh]rFUros-crystal-ament-lint-cmakerGasssuUqt_gui_py_commonrH}rI(h}rJh}rKh]rLUros/crystal/qt_gui_corerMassh ˆh }rNh}rOh}rPh]rQUros-crystal-qt-gui-py-commonrRasssuU nav2_commonrS}rT(h}rUh}rVh]rWUros/crystal/navigation2rXassh ˆh }rYh}rZh}r[h]r\Uros-crystal-nav2-commonr]asssuU rclcpp_actionr^}r_(h}r`h}rah]rbUros/crystal/rclcpprcassh ˆh }rdh}reh}rfh]rgUros-crystal-rclcpp-actionrhasssuUvisualization_msgsri}rj(h}rkh}rlh]rmUros/crystal/common_interfacesrnassh ˆh }roh}rph}rqh]rrUros-crystal-visualization-msgsrsasssuU ament_cpplintrt}ru(h}rvh}rwh]rxUros/crystal/ament_lintryassh ˆh }rzh}r{h}r|h]r}Uros-crystal-ament-cpplintr~asssuU ecl_threadsr}r€(h}rh}r‚h]rƒUros/crystal/ecl_corer„assh ˆh }r…h}r†h}r‡h]rˆUros-crystal-ecl-threadsr‰asssuUnav2_simple_navigatorrŠ}r‹(h}rŒh}rh]rŽUros/crystal/navigation2rassh ˆh }rh}r‘h}r’h]r“U!ros-crystal-nav2-simple-navigatorr”asssuU topic_monitorr•}r–(h}r—h}r˜h]r™Uros/crystal/demosršassh ˆh }r›h}rœh}rh]ržUros-crystal-topic-monitorrŸasssuUecl_corer }r¡(h}r¢h}r£h]r¤Uros/crystal/ecl_corer¥assh ˆh }r¦h}r§h}r¨h]r©Uros-crystal-ecl-corerªasssuU ecl_buildr«}r¬(h}r­h}r®h]r¯Uros/crystal/ecl_toolsr°assh ˆh }r±h}r²h}r³h]r´Uros-crystal-ecl-buildrµasssuU ros2launchr¶}r·(h}r¸h}r¹h]rºUros/crystal/launchr»assh ˆh }r¼h}r½h}r¾h]r¿Uros-crystal-ros2launchrÀasssuUobject_analytics_noderÁ}rÂ(h}rÃh}rÄh]rÅU!ros/crystal/ros2_object_analyticsrÆassh ˆh }rÇh}rÈh}rÉh]rÊU!ros-crystal-object-analytics-noderËasssuUnav2_bt_navigatorrÌ}rÍ(h}rÎh}rÏh]rÐUros/crystal/navigation2rÑassh ˆh }rÒh}rÓh}rÔh]rÕUros-crystal-nav2-bt-navigatorrÖasssuU ros2lifecycler×}rØ(h}rÙh}rÚh]rÛUros/crystal/ros2clirÜassh ˆh }rÝh}rÞh}rßh]ràUros-crystal-ros2lifecycleráasssuU test_msgsrâ}rã(h}räh}råh]ræUros/crystal/rcl_interfacesrçassh ˆh }rèh}réh}rêh]rëUros-crystal-test-msgsrìasssuUament_cmake_export_dependenciesrí}rî(h}rïh}rðh]rñUros/crystal/ament_cmakeròassh ˆh }róh}rôh}rõh]röU+ros-crystal-ament-cmake-export-dependenciesr÷asssuUexamples_rclpy_minimal_servicerø}rù(h}rúh}rûh]rüUros/crystal/examplesrýassh ˆh }rþh}rÿh}rh]rU*ros-crystal-examples-rclpy-minimal-servicerasssuUexamples_rclcpp_minimal_timerr}r(h}rh}rh]rUros/crystal/examplesrassh ˆh }r h}r h}r h]r U)ros-crystal-examples-rclcpp-minimal-timerr asssuUros2clir}r(h}rh}rh]rUros/crystal/ros2clirassh ˆh }rh}rh}rh]rUros-crystal-ros2clirasssuUrosidl_typesupport_cppr}r(h}rh}rh]rUros/crystal/rosidl_typesupportrassh ˆh }rh}r h}r!h]r"U"ros-crystal-rosidl-typesupport-cppr#asssuU fmi_adapterr$}r%(h}r&h}r'h]r(Uros/crystal/fmi_adapter_ros2r)assh ˆh }r*h}r+h}r,h]r-Uros-crystal-fmi-adapterr.asssuUbehaviortree_cppr/}r0(h}r1h}r2h]r3Uros/crystal/behaviortree_cppr4assh ˆh }r5h}r6h}r7h]r8Uros-crystal-behaviortree-cppr9asssuU ecl_eigenr:}r;(h}r<h}r=h]r>Uros/crystal/ecl_corer?assh ˆh }r@h}rAh}rBh]rCUros-crystal-ecl-eigenrDasssuU vision_opencvrE}rF(h}rGh}rHh]rIUros/crystal/vision_opencvrJassh ˆh }rKh}rLh}rMh]rNUros-crystal-vision-opencvrOasssuU webots_ros2rP}rQ(h}rRh}rSh]rTUros/crystal/webots_ros2rUassh ˆh }rVh}rWh}rXh]rYUros-crystal-webots-ros2rZasssuUlifecycle_msgsr[}r\(h}r]h}r^h]r_Uros/crystal/rcl_interfacesr`assh ˆh }rah}rbh}rch]rdUros-crystal-lifecycle-msgsreasssuUrosbag2_bag_v2_pluginsrf}rg(h}rhh}rih]rjUros/crystal/rosbag2rkassh ˆh }rlh}rmh}rnh]roU"ros-crystal-rosbag2-bag-v2-pluginsrpasssuUament_cmake_pythonrq}rr(h}rsh}rth]ruUros/crystal/ament_cmakervassh ˆh }rwh}rxh}ryh]rzUros-crystal-ament-cmake-pythonr{asssuUament_cmake_cppcheckr|}r}(h}r~h}rh]r€Uros/crystal/ament_lintrassh ˆh }r‚h}rƒh}r„h]r…U ros-crystal-ament-cmake-cppcheckr†asssuUtinydir_vendorr‡}rˆ(h}r‰h}rŠh]r‹Uros/crystal/tinydir_vendorrŒassh ˆh }rh}rŽh}rh]rUros-crystal-tinydir-vendorr‘asssuU class_loaderr’}r“(h}r”h}r•h]r–Uros/crystal/class_loaderr—assh ˆh }r˜h}r™h}ršh]r›Uros-crystal-class-loaderrœasssuU rosidl_cmaker}rž(h}rŸh}r h]r¡Uros/crystal/rosidlr¢assh ˆh }r£h}r¤h}r¥h]r¦Uros-crystal-rosidl-cmaker§asssuUros2runr¨}r©(h}rªh}r«h]r¬Uros/crystal/ros2clir­assh ˆh }r®h}r¯h}r°h]r±Uros-crystal-ros2runr²asssuU sensor_msgsr³}r´(h}rµh}r¶h]r·Uros/crystal/common_interfacesr¸assh ˆh }r¹h}rºh}r»h]r¼Uros-crystal-sensor-msgsr½asssuUecl_sigslots_liter¾}r¿(h}rÀh}rÁh]rÂUros/crystal/ecl_literÃassh ˆh }rÄh}rÅh}rÆh]rÇUros-crystal-ecl-sigslots-literÈasssuU ament_xmllintrÉ}rÊ(h}rËh}rÌh]rÍUros/crystal/ament_lintrÎassh ˆh }rÏh}rÐh}rÑh]rÒUros-crystal-ament-xmllintrÓasssuU ecl_core_appsrÔ}rÕ(h}rÖh}r×h]rØUros/crystal/ecl_corerÙassh ˆh }rÚh}rÛh}rÜh]rÝUros-crystal-ecl-core-appsrÞasssuU gazebo_rosrß}rà(h}ráh}râh]rãUros/crystal/gazebo_ros_pkgsräassh ˆh }råh}ræh}rçh]rèUros-crystal-gazebo-rosréasssuU examples_rclpy_minimal_publisherrê}rë(h}rìh}ríh]rîUros/crystal/examplesrïassh ˆh }rðh}rñh}ròh]róU,ros-crystal-examples-rclpy-minimal-publisherrôasssuUament_cmake_export_interfacesrõ}rö(h}r÷h}røh]rùUros/crystal/ament_cmakerúassh ˆh }rûh}rüh}rýh]rþU)ros-crystal-ament-cmake-export-interfacesrÿasssuUament_cmake_gtestr}r(h}rh}rh]rUros/crystal/ament_cmakerassh ˆh }rh}rh}rh]r Uros-crystal-ament-cmake-gtestr asssuUopensplice_cmake_moduler }r (h}r h}rh]rU)ros/crystal/rosidl_typesupport_opensplicerassh ˆh }rh}rh}rh]rU#ros-crystal-opensplice-cmake-modulerasssuUecl_mathr}r(h}rh}rh]rUros/crystal/ecl_corerassh ˆh }rh}rh}rh]rUros-crystal-ecl-mathr asssuUecl_linear_algebrar!}r"(h}r#h}r$h]r%Uros/crystal/ecl_corer&assh ˆh }r'h}r(h}r)h]r*Uros-crystal-ecl-linear-algebrar+asssuU logging_demor,}r-(h}r.h}r/h]r0Uros/crystal/demosr1assh ˆh }r2h}r3h}r4h]r5Uros-crystal-logging-demor6asssuUgazebo_ros_pkgsr7}r8(h}r9h}r:h]r;Uros/crystal/gazebo_ros_pkgsr<assh ˆh }r=h}r>h}r?h]r@Uros-crystal-gazebo-ros-pkgsrAasssuUobject_analytics_msgsrB}rC(h}rDh}rEh]rFU!ros/crystal/ros2_object_analyticsrGassh ˆh }rHh}rIh}rJh]rKU!ros-crystal-object-analytics-msgsrLasssuUrqt_srvrM}rN(h}rOh}rPh]rQUros/crystal/rqt_srvrRassh ˆh }rSh}rTh}rUh]rVUros-crystal-rqt-srvrWasssuUecl_ipcrX}rY(h}rZh}r[h]r\Uros/crystal/ecl_corer]assh ˆh }r^h}r_h}r`h]raUros-crystal-ecl-ipcrbasssuU$examples_rclpy_minimal_action_serverrc}rd(h}reh}rfh]rgUros/crystal/examplesrhassh ˆh }rih}rjh}rkh]rlU0ros-crystal-examples-rclpy-minimal-action-serverrmasssuUeigen_stl_containersrn}ro(h}rph}rqh]rrU ros/crystal/eigen_stl_containersrsassh ˆh }rth}ruh}rvh]rwU ros-crystal-eigen-stl-containersrxasssuUrosidl_typesupport_fastrtps_cppry}rz(h}r{h}r|h]r}U'ros/crystal/rosidl_typesupport_fastrtpsr~assh ˆh }rh}r€h}rh]r‚U+ros-crystal-rosidl-typesupport-fastrtps-cpprƒasssuU ecl_consoler„}r…(h}r†h}r‡h]rˆUros/crystal/ecl_liter‰assh ˆh }rŠh}r‹h}rŒh]rUros-crystal-ecl-consolerŽasssuU lifecycler}r(h}r‘h}r’h]r“Uros/crystal/demosr”assh ˆh }r•h}r–h}r—h]r˜Uros-crystal-lifecycler™asssuU tf2_eigenrš}r›(h}rœh}rh]ržUros/crystal/geometry2rŸassh ˆh }r h}r¡h}r¢h]r£Uros-crystal-tf2-eigenr¤asssuU rosidl_parserr¥}r¦(h}r§h}r¨h]r©Uros/crystal/rosidlrªassh ˆh }r«h}r¬h}r­h]r®Uros-crystal-rosidl-parserr¯asssuUfastrtpsr°}r±(h}r²h}r³h]r´Uros/crystal/fastrtpsrµassh ˆh }r¶h}r·h}r¸h]r¹Uros-crystal-fastrtpsrºasssuUrcl_logging_log4cxxr»}r¼(h}r½h}r¾h]r¿Uros/crystal/rcl_loggingrÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-crystal-rcl-logging-log4cxxrÅasssuUtheora_image_transportrÆ}rÇ(h}rÈh}rÉh]rÊU#ros/crystal/image_transport_pluginsrËassh ˆh }rÌh}rÍh}rÎh]rÏU"ros-crystal-theora-image-transportrÐasssuU geometry_msgsrÑ}rÒ(h}rÓh}rÔh]rÕUros/crystal/common_interfacesrÖassh ˆh }r×h}rØh}rÙh]rÚUros-crystal-geometry-msgsrÛasssuU ros2multicastrÜ}rÝ(h}rÞh}rßh]ràUros/crystal/ros2cliráassh ˆh }râh}rãh}räh]råUros-crystal-ros2multicastræasssuUament_lint_commonrç}rè(h}réh}rêh]rëUros/crystal/ament_lintrìassh ˆh }ríh}rîh}rïh]rðUros-crystal-ament-lint-commonrñasssuUnav2_map_serverrò}ró(h}rôh}rõh]röUros/crystal/navigation2r÷assh ˆh }røh}rùh}rúh]rûUros-crystal-nav2-map-serverrüasssuUurdfrý}rþ(h}rÿh}rh]rUros/crystal/urdfrassh ˆh }rh}rh}rh]rUros-crystal-urdfrasssuUresource_retrieverr}r (h}r h}r h]r Uros/crystal/resource_retrieverr assh ˆh }rh}rh}rh]rUros-crystal-resource-retrieverrasssuU rqt_graphr}r(h}rh}rh]rUros/crystal/rqt_graphrassh ˆh }rh}rh}rh]rUros-crystal-rqt-graphrasssuUrviz2r}r(h}r h}r!h]r"Uros/crystal/rvizr#assh ˆh }r$h}r%h}r&h]r'Uros-crystal-rviz2r(asssuUqt_guir)}r*(h}r+h}r,h]r-Uros/crystal/qt_gui_corer.assh ˆh }r/h}r0h}r1h]r2Uros-crystal-qt-guir3asssuUmrpt2r4}r5(h}r6h}r7h]r8Uros/crystal/mrpt2r9assh ˆh }r:h}r;h}r<h]r=Uros-crystal-mrpt2r>asssuUros2srvr?}r@(h}rAh}rBh]rCUros/crystal/ros2clirDassh ˆh }rEh}rFh}rGh]rHUros-crystal-ros2srvrIasssuU!rosidl_typesupport_opensplice_cpprJ}rK(h}rLh}rMh]rNU)ros/crystal/rosidl_typesupport_opensplicerOassh ˆh }rPh}rQh}rRh]rSU-ros-crystal-rosidl-typesupport-opensplice-cpprTasssuUrttestrU}rV(h}rWh}rXh]rYUros/crystal/realtime_supportrZassh ˆh }r[h}r\h}r]h]r^Uros-crystal-rttestr_asssuUament_index_cppr`}ra(h}rbh}rch]rdUros/crystal/ament_indexreassh ˆh }rfh}rgh}rhh]riUros-crystal-ament-index-cpprjasssuUrviz_ogre_vendorrk}rl(h}rmh}rnh]roUros/crystal/rvizrpassh ˆh }rqh}rrh}rsh]rtUros-crystal-rviz-ogre-vendorruasssuUapriltag2_noderv}rw(h}rxh}ryh]rzUros/crystal/apriltag2_noder{assh ˆh }r|h}r}h}r~h]rUros-crystal-apriltag2-noder€asssuUrosidl_generator_dds_idlr}r‚(h}rƒh}r„h]r…Uros/crystal/rosidl_ddsr†assh ˆh }r‡h}rˆh}r‰h]rŠU$ros-crystal-rosidl-generator-dds-idlr‹asssuU poco_vendorrŒ}r(h}rŽh}rh]rUros/crystal/poco_vendorr‘assh ˆh }r’h}r“h}r”h]r•Uros-crystal-poco-vendorr–asssuU nav_2d_utilsr—}r˜(h}r™h}ršh]r›Uros/crystal/navigation2rœassh ˆh }rh}ržh}rŸh]r Uros-crystal-nav-2d-utilsr¡asssuUpython_cmake_moduler¢}r£(h}r¤h}r¥h]r¦Uros/crystal/rosidl_pythonr§assh ˆh }r¨h}r©h}rªh]r«Uros-crystal-python-cmake-moduler¬asssuU rqt_actionr­}r®(h}r¯h}r°h]r±Uros/crystal/rqt_actionr²assh ˆh }r³h}r´h}rµh]r¶Uros-crystal-rqt-actionr·asssuUecl_manipulatorsr¸}r¹(h}rºh}r»h]r¼Uros/crystal/ecl_corer½assh ˆh }r¾h}r¿h}rÀh]rÁUros-crystal-ecl-manipulatorsrÂasssuUrosbag2rÃ}rÄ(h}rÅh}rÆh]rÇUros/crystal/rosbag2rÈassh ˆh }rÉh}rÊh}rËh]rÌUros-crystal-rosbag2rÍasssuUament_cmake_noserÎ}rÏ(h}rÐh}rÑh]rÒUros/crystal/ament_cmakerÓassh ˆh }rÔh}rÕh}rÖh]r×Uros-crystal-ament-cmake-noserØasssuUintra_process_demorÙ}rÚ(h}rÛh}rÜh]rÝUros/crystal/demosrÞassh ˆh }rßh}ràh}ráh]râUros-crystal-intra-process-demorãasssuU pluginlibrä}rå(h}ræh}rçh]rèUros/crystal/pluginlibréassh ˆh }rêh}rëh}rìh]ríUros-crystal-pluginlibrîasssuUament_cmake_export_definitionsrï}rð(h}rñh}ròh]róUros/crystal/ament_cmakerôassh ˆh }rõh}röh}r÷h]røU*ros-crystal-ament-cmake-export-definitionsrùasssuU ros1_bridgerú}rû(h}rüh}rýh]rþUros/crystal/ros1_bridgerÿassh ˆh }rh}rh}rh]rUros-crystal-ros1-bridgerasssuU rosbag2_testsr}r(h}rh}rh]r Uros/crystal/rosbag2r assh ˆh }r h}r h}r h]rUros-crystal-rosbag2-testsrasssuUsophusr}r(h}rh}rh]rUros/crystal/sophusrassh ˆh }rh}rh}rh]rUros-crystal-sophusrasssuUnav2_mission_executorr}r(h}rh}rh]rUros/crystal/navigation2r assh ˆh }r!h}r"h}r#h]r$U!ros-crystal-nav2-mission-executorr%asssuU nav2_utilr&}r'(h}r(h}r)h]r*Uros/crystal/navigation2r+assh ˆh }r,h}r-h}r.h]r/Uros-crystal-nav2-utilr0asssuU launch_rosr1}r2(h}r3h}r4h]r5Uros/crystal/launchr6assh ˆh }r7h}r8h}r9h]r:Uros-crystal-launch-rosr;asssuUros2noder<}r=(h}r>h}r?h]r@Uros/crystal/ros2clirAassh ˆh }rBh}rCh}rDh]rEUros-crystal-ros2noderFasssuUtf2_msgsrG}rH(h}rIh}rJh]rKUros/crystal/geometry2rLassh ˆh }rMh}rNh}rOh]rPUros-crystal-tf2-msgsrQasssuU qt_gui_apprR}rS(h}rTh}rUh]rVUros/crystal/qt_gui_corerWassh ˆh }rXh}rYh}rZh]r[Uros-crystal-qt-gui-appr\asssuUexamples_rclpy_minimal_clientr]}r^(h}r_h}r`h]raUros/crystal/examplesrbassh ˆh }rch}rdh}reh]rfU)ros-crystal-examples-rclpy-minimal-clientrgasssuU rcl_lifecyclerh}ri(h}rjh}rkh]rlUros/crystal/rclrmassh ˆh }rnh}roh}rph]rqUros-crystal-rcl-lifecyclerrasssuUros2pkgrs}rt(h}ruh}rvh]rwUros/crystal/ros2clirxassh ˆh }ryh}rzh}r{h]r|Uros-crystal-ros2pkgr}asssuUament_cmake_pclintr~}r(h}r€h}rh]r‚Uros/crystal/ament_lintrƒassh ˆh }r„h}r…h}r†h]r‡Uros-crystal-ament-cmake-pclintrˆasssuUets_msgsr‰}rŠ(h}r‹h}rŒh]rUros/crystal/ets_ros2rŽassh ˆh }rh}rh}r‘h]r’Uros-crystal-ets-msgsr“asssuU object_msgsr”}r•(h}r–h}r—h]r˜Uros/crystal/object_msgsr™assh ˆh }ršh}r›h}rœh]rUros-crystal-object-msgsržasssuUexamples_rclcpp_minimal_clientrŸ}r (h}r¡h}r¢h]r£Uros/crystal/examplesr¤assh ˆh }r¥h}r¦h}r§h]r¨U*ros-crystal-examples-rclcpp-minimal-clientr©asssuUtf2_geometry_msgsrª}r«(h}r¬h}r­h]r®Uros/crystal/geometry2r¯assh ˆh }r°h}r±h}r²h]r³Uros-crystal-tf2-geometry-msgsr´asssuUdepthimage_to_laserscanrµ}r¶(h}r·h}r¸h]r¹U#ros/crystal/depthimage_to_laserscanrºassh ˆh }r»h}r¼h}r½h]r¾U#ros-crystal-depthimage-to-laserscanr¿asssuUament_cmake_pytestrÀ}rÁ(h}rÂh}rÃh]rÄUros/crystal/ament_cmakerÅassh ˆh }rÆh}rÇh}rÈh]rÉUros-crystal-ament-cmake-pytestrÊasssuUlaunchrË}rÌ(h}rÍh}rÎh]rÏUros/crystal/launchrÐassh ˆh }rÑh}rÒh}rÓh]rÔUros-crystal-launchrÕasssuUmicroxrcedds_agentrÖ}r×(h}rØh}rÙh]rÚUros/crystal/microxrcedds_agentrÛassh ˆh }rÜh}rÝh}rÞh]rßUros-crystal-microxrcedds-agentràasssuU stereo_msgsrá}râ(h}rãh}räh]råUros/crystal/common_interfacesræassh ˆh }rçh}rèh}réh]rêUros-crystal-stereo-msgsrëasssuUlibyaml_vendorrì}rí(h}rîh}rïh]rðUros/crystal/libyaml_vendorrñassh ˆh }ròh}róh}rôh]rõUros-crystal-libyaml-vendorröasssuUament_cmake_autor÷}rø(h}rùh}rúh]rûUros/crystal/ament_cmakerüassh ˆh }rýh}rþh}rÿh]rUros-crystal-ament-cmake-autorasssuUtrajectory_msgsr}r(h}rh}rh]rUros/crystal/common_interfacesrassh ˆh }rh}r h}r h]r Uros-crystal-trajectory-msgsr asssuUrosidl_default_runtimer }r(h}rh}rh]rUros/crystal/rosidl_defaultsrassh ˆh }rh}rh}rh]rU"ros-crystal-rosidl-default-runtimerasssuUament_cppcheckr}r(h}rh}rh]rUros/crystal/ament_lintrassh ˆh }rh}rh}r h]r!Uros-crystal-ament-cppcheckr"asssuU ecl_errorsr#}r$(h}r%h}r&h]r'Uros/crystal/ecl_liter(assh ˆh }r)h}r*h}r+h]r,Uros-crystal-ecl-errorsr-asssuU rviz_commonr.}r/(h}r0h}r1h]r2Uros/crystal/rvizr3assh ˆh }r4h}r5h}r6h]r7Uros-crystal-rviz-commonr8asssuU system_modesr9}r:(h}r;h}r<h]r=Uros/crystal/system_modesr>assh ˆh }r?h}r@h}rAh]rBUros-crystal-system-modesrCasssuUtf2rD}rE(h}rFh}rGh]rHUros/crystal/geometry2rIassh ˆh }rJh}rKh}rLh]rMUros-crystal-tf2rNasssuUfmi_adapter_examplesrO}rP(h}rQh}rRh]rSUros/crystal/fmi_adapter_ros2rTassh ˆh }rUh}rVh}rWh]rXU ros-crystal-fmi-adapter-examplesrYasssuUrcl_yaml_param_parserrZ}r[(h}r\h}r]h]r^Uros/crystal/rclr_assh ˆh }r`h}rah}rbh]rcU!ros-crystal-rcl-yaml-param-parserrdasssuUimage_publisherre}rf(h}rgh}rhh]riUros/crystal/image_pipelinerjassh ˆh }rkh}rlh}rmh]rnUros-crystal-image-publisherroasssuUecl_timerp}rq(h}rrh}rsh]rtUros/crystal/ecl_coreruassh ˆh }rvh}rwh}rxh]ryUros-crystal-ecl-timerzasssuUrosbag2_storage_default_pluginsr{}r|(h}r}h}r~h]rUros/crystal/rosbag2r€assh ˆh }rh}r‚h}rƒh]r„U+ros-crystal-rosbag2-storage-default-pluginsr…asssuUdwb_controllerr†}r‡(h}rˆh}r‰h]rŠUros/crystal/navigation2r‹assh ˆh }rŒh}rh}rŽh]rUros-crystal-dwb-controllerrasssuUpy_trees_ros_interfacesr‘}r’(h}r“h}r”h]r•U#ros/crystal/py_trees_ros_interfacesr–assh ˆh }r—h}r˜h}r™h]ršU#ros-crystal-py-trees-ros-interfacesr›asssuUcompressed_image_transportrœ}r(h}ržh}rŸh]r U#ros/crystal/image_transport_pluginsr¡assh ˆh }r¢h}r£h}r¤h]r¥U&ros-crystal-compressed-image-transportr¦asssuUwebots_ros2_universal_robotr§}r¨(h}r©h}rªh]r«Uros/crystal/webots_ros2r¬assh ˆh }r­h}r®h}r¯h]r°U'ros-crystal-webots-ros2-universal-robotr±asssuU gazebo_msgsr²}r³(h}r´h}rµh]r¶Uros/crystal/gazebo_ros_pkgsr·assh ˆh }r¸h}r¹h}rºh]r»Uros-crystal-gazebo-msgsr¼asssuUimage_transportr½}r¾(h}r¿h}rÀh]rÁUros/crystal/image_commonrÂassh ˆh }rÃh}rÄh}rÅh]rÆUros-crystal-image-transportrÇasssuUecl_mobile_robotrÈ}rÉ(h}rÊh}rËh]rÌUros/crystal/ecl_corerÍassh ˆh }rÎh}rÏh}rÐh]rÑUros-crystal-ecl-mobile-robotrÒasssuU qt_dotgraphrÓ}rÔ(h}rÕh}rÖh]r×Uros/crystal/qt_gui_corerØassh ˆh }rÙh}rÚh}rÛh]rÜUros-crystal-qt-dotgraphrÝasssuUrqt_image_viewrÞ}rß(h}ràh}ráh]râUros/crystal/rqt_image_viewrãassh ˆh }räh}råh}ræh]rçUros-crystal-rqt-image-viewrèasssuU ecl_utilitiesré}rê(h}rëh}rìh]ríUros/crystal/ecl_corerîassh ˆh }rïh}rðh}rñh]ròUros-crystal-ecl-utilitiesróasssuUament_cmake_include_directoriesrô}rõ(h}röh}r÷h]røUros/crystal/ament_cmakerùassh ˆh }rúh}rûh}rüh]rýU+ros-crystal-ament-cmake-include-directoriesrþasssuUament_cmake_target_dependenciesrÿ}r(h}rh}rh]rUros/crystal/ament_cmakerassh ˆh }rh}rh}rh]rU+ros-crystal-ament-cmake-target-dependenciesr asssuU nav2_tasksr }r (h}r h}r h]rUros/crystal/navigation2rassh ˆh }rh}rh}rh]rUros-crystal-nav2-tasksrasssuU ecl_conceptsr}r(h}rh}rh]rUros/crystal/ecl_corerassh ˆh }rh}rh}rh]rUros-crystal-ecl-conceptsrasssuUexamples_rclcpp_minimal_servicer }r!(h}r"h}r#h]r$Uros/crystal/examplesr%assh ˆh }r&h}r'h}r(h]r)U+ros-crystal-examples-rclcpp-minimal-servicer*asssuUtlsf_cppr+}r,(h}r-h}r.h]r/Uros/crystal/realtime_supportr0assh ˆh }r1h}r2h}r3h]r4Uros-crystal-tlsf-cppr5asssuU costmap_queuer6}r7(h}r8h}r9h]r:Uros/crystal/navigation2r;assh ˆh }r<h}r=h}r>h]r?Uros-crystal-costmap-queuer@asssuU dwb_criticsrA}rB(h}rCh}rDh]rEUros/crystal/navigation2rFassh ˆh }rGh}rHh}rIh]rJUros-crystal-dwb-criticsrKasssuU kdl_parserrL}rM(h}rNh}rOh]rPUros/crystal/kdl_parserrQassh ˆh }rRh}rSh}rTh]rUUros-crystal-kdl-parserrVasssuUrosidl_generator_pyrW}rX(h}rYh}rZh]r[Uros/crystal/rosidl_pythonr\assh ˆh }r]h}r^h}r_h]r`Uros-crystal-rosidl-generator-pyraasssuUrmw_connext_shared_cpprb}rc(h}rdh}reh]rfUros/crystal/rmw_connextrgassh ˆh }rhh}rih}rjh]rkU"ros-crystal-rmw-connext-shared-cpprlasssuUecl_type_traitsrm}rn(h}roh}rph]rqUros/crystal/ecl_corerrassh ˆh }rsh}rth}ruh]rvUros-crystal-ecl-type-traitsrwasssuUament_index_pythonrx}ry(h}rzh}r{h]r|Uros/crystal/ament_indexr}assh ˆh }r~h}rh}r€h]rUros-crystal-ament-index-pythonr‚asssuUament_cmake_gmockrƒ}r„(h}r…h}r†h]r‡Uros/crystal/ament_cmakerˆassh ˆh }r‰h}rŠh}r‹h]rŒUros-crystal-ament-cmake-gmockrasssuU!examples_rclpy_minimal_subscriberrŽ}r(h}rh}r‘h]r’Uros/crystal/examplesr“assh ˆh }r”h}r•h}r–h]r—U-ros-crystal-examples-rclpy-minimal-subscriberr˜asssuUwebots_ros2_examplesr™}rš(h}r›h}rœh]rUros/crystal/webots_ros2ržassh ˆh }rŸh}r h}r¡h]r¢U ros-crystal-webots-ros2-examplesr£asssuUament_cmake_cpplintr¤}r¥(h}r¦h}r§h]r¨Uros/crystal/ament_lintr©assh ˆh }rªh}r«h}r¬h]r­Uros-crystal-ament-cmake-cpplintr®asssuUrmw_opensplice_cppr¯}r°(h}r±h}r²h]r³Uros/crystal/rmw_opensplicer´assh ˆh }rµh}r¶h}r·h]r¸Uros-crystal-rmw-opensplice-cppr¹asssuU rqt_py_commonrº}r»(h}r¼h}r½h]r¾Uros/crystal/rqtr¿assh ˆh }rÀh}rÁh}rÂh]rÃUros-crystal-rqt-py-commonrÄasssuU compressed_depth_image_transportrÅ}rÆ(h}rÇh}rÈh]rÉU#ros/crystal/image_transport_pluginsrÊassh ˆh }rËh}rÌh}rÍh]rÎU,ros-crystal-compressed-depth-image-transportrÏasssuUwebots_ros2_desktoprÐ}rÑ(h}rÒh}rÓh]rÔUros/crystal/webots_ros2rÕassh ˆh }rÖh}r×h}rØh]rÙUros-crystal-webots-ros2-desktoprÚasssuUobject_analytics_rvizrÛ}rÜ(h}rÝh}rÞh]rßU!ros/crystal/ros2_object_analyticsràassh ˆh }ráh}râh}rãh]räU!ros-crystal-object-analytics-rvizråasssuU ros2serviceræ}rç(h}rèh}réh]rêUros/crystal/ros2clirëassh ˆh }rìh}ríh}rîh]rïUros-crystal-ros2servicerðasssuUdummy_robot_bringuprñ}rò(h}róh}rôh]rõUros/crystal/demosröassh ˆh }r÷h}røh}rùh]rúUros-crystal-dummy-robot-bringuprûasssuUrmw_fastrtps_shared_cpprü}rý(h}rþh}rÿh]rUros/crystal/rmw_fastrtpsrassh ˆh }rh}rh}rh]rU#ros-crystal-rmw-fastrtps-shared-cpprasssuUrviz_default_pluginsr}r(h}r h}r h]r Uros/crystal/rvizr assh ˆh }r h}rh}rh]rU ros-crystal-rviz-default-pluginsrasssuU orocos_kdlr}r(h}rh}rh]rU&ros/crystal/orocos_kinematics_dynamicsrassh ˆh }rh}rh}rh]rUros-crystal-orocos-kdlrasssuUrcl_interfacesr}r(h}rh}r h]r!Uros/crystal/rcl_interfacesr"assh ˆh }r#h}r$h}r%h]r&Uros-crystal-rcl-interfacesr'asssuU ament_packager(}r)(h}r*h}r+h]r,Uros/crystal/ament_packager-assh ˆh }r.h}r/h}r0h]r1Uros-crystal-ament-packager2asssuUunique_identifier_msgsr3}r4(h}r5h}r6h]r7U"ros/crystal/unique_identifier_msgsr8assh ˆh }r9h}r:h}r;h]r<U"ros-crystal-unique-identifier-msgsr=asssuUexamples_rclpy_executorsr>}r?(h}r@h}rAh]rBUros/crystal/examplesrCassh ˆh }rDh}rEh}rFh]rGU$ros-crystal-examples-rclpy-executorsrHasssuUecl_exceptionsrI}rJ(h}rKh}rLh]rMUros/crystal/ecl_corerNassh ˆh }rOh}rPh}rQh]rRUros-crystal-ecl-exceptionsrSasssuUcommon_interfacesrT}rU(h}rVh}rWh]rXUros/crystal/common_interfacesrYassh ˆh }rZh}r[h}r\h]r]Uros-crystal-common-interfacesr^asssuUnav2_dynamic_paramsr_}r`(h}rah}rbh]rcUros/crystal/navigation2rdassh ˆh }reh}rfh}rgh]rhUros-crystal-nav2-dynamic-paramsriasssuUament_cmake_pep8rj}rk(h}rlh}rmh]rnUros/crystal/ament_lintroassh ˆh }rph}rqh}rrh]rsUros-crystal-ament-cmake-pep8rtasssuUrosidl_typesupport_opensplice_cru}rv(h}rwh}rxh]ryU)ros/crystal/rosidl_typesupport_opensplicerzassh ˆh }r{h}r|h}r}h]r~U+ros-crystal-rosidl-typesupport-opensplice-crasssuU shape_msgsr€}r(h}r‚h}rƒh]r„Uros/crystal/common_interfacesr…assh ˆh }r†h}r‡h}rˆh]r‰Uros-crystal-shape-msgsrŠasssuUecl_containersr‹}rŒ(h}rh}rŽh]rUros/crystal/ecl_corerassh ˆh }r‘h}r’h}r“h]r”Uros-crystal-ecl-containersr•asssuU ecl_licenser–}r—(h}r˜h}r™h]ršUros/crystal/ecl_toolsr›assh ˆh }rœh}rh}ržh]rŸUros-crystal-ecl-licenser asssuUteleop_twist_keyboardr¡}r¢(h}r£h}r¤h]r¥U!ros/crystal/teleop_twist_keyboardr¦assh ˆh }r§h}r¨h}r©h]rªU!ros-crystal-teleop-twist-keyboardr«asssuUament_cmake_xmllintr¬}r­(h}r®h}r¯h]r°Uros/crystal/ament_lintr±assh ˆh }r²h}r³h}r´h]rµUros-crystal-ament-cmake-xmllintr¶asssuU navigation2r·}r¸(h}r¹h}rºh]r»Uros/crystal/navigation2r¼assh ˆh }r½h}r¾h}r¿h]rÀUros-crystal-navigation2rÁasssuU&ament_cmake_export_include_directoriesrÂ}rÃ(h}rÄh}rÅh]rÆUros/crystal/ament_cmakerÇassh ˆh }rÈh}rÉh}rÊh]rËU2ros-crystal-ament-cmake-export-include-directoriesrÌasssuU rosgraph_msgsrÍ}rÎ(h}rÏh}rÐh]rÑUros/crystal/rcl_interfacesrÒassh ˆh }rÓh}rÔh}rÕh]rÖUros-crystal-rosgraph-msgsr×asssuUecl_mplrØ}rÙ(h}rÚh}rÛh]rÜUros/crystal/ecl_corerÝassh ˆh }rÞh}rßh}ràh]ráUros-crystal-ecl-mplrâasssuUxacrorã}rä(h}råh}ræh]rçUros/crystal/xacrorèassh ˆh }réh}rêh}rëh]rìUros-crystal-xacroríasssuUrqt_msgrî}rï(h}rðh}rñh]ròUros/crystal/rqt_msgróassh ˆh }rôh}rõh}röh]r÷Uros-crystal-rqt-msgrøasssuUrmwrù}rú(h}rûh}rüh]rýUros/crystal/rmwrþassh ˆh }rÿh}r h}r h]r Uros-crystal-rmwr asssuUnav2_navfn_plannerr }r (h}r h}r h]r Uros/crystal/navigation2r assh ˆh }r h}r h}r h]r Uros-crystal-nav2-navfn-plannerr asssuUecl_filesystemr }r (h}r h}r h]r Uros/crystal/ecl_corer assh ˆh }r h}r h}r h]r Uros-crystal-ecl-filesystemr asssuUrealsense_ros2_camerar }r (h}r h}r h]r U ros/crystal/ros2_intel_realsenser assh ˆh }r h}r! h}r" h]r# U!ros-crystal-realsense-ros2-camerar$ asssuUwebots_ros2_corer% }r& (h}r' h}r( h]r) Uros/crystal/webots_ros2r* assh ˆh }r+ h}r, h}r- h]r. Uros-crystal-webots-ros2-corer/ asssuUdepth_image_procr0 }r1 (h}r2 h}r3 h]r4 Uros/crystal/image_pipeliner5 assh ˆh }r6 h}r7 h}r8 h]r9 Uros-crystal-depth-image-procr: asssuUpython_qt_bindingr; }r< (h}r= h}r> h]r? Uros/crystal/python_qt_bindingr@ assh ˆh }rA h}rB h}rC h]rD Uros-crystal-python-qt-bindingrE asssuU rqt_gui_cpprF }rG (h}rH h}rI h]rJ Uros/crystal/rqtrK assh ˆh }rL h}rM h}rN h]rO Uros-crystal-rqt-gui-cpprP asssuUrclpyrQ }rR (h}rS h}rT h]rU Uros/crystal/rclpyrV assh ˆh }rW h}rX h}rY h]rZ Uros-crystal-rclpyr[ asssuUament_cmake_pyflakesr\ }r] (h}r^ h}r_ h]r` Uros/crystal/ament_lintra assh ˆh }rb h}rc h}rd h]re U ros-crystal-ament-cmake-pyflakesrf asssuUrviz_assimp_vendorrg }rh (h}ri h}rj h]rk Uros/crystal/rvizrl assh ˆh }rm h}rn h}ro h]rp Uros-crystal-rviz-assimp-vendorrq asssuU%examples_rclcpp_minimal_action_serverrr }rs (h}rt h}ru h]rv Uros/crystal/examplesrw assh ˆh }rx h}ry h}rz h]r{ U1ros-crystal-examples-rclcpp-minimal-action-serverr| asssuU gazebo_devr} }r~ (h}r h}r€ h]r Uros/crystal/gazebo_ros_pkgsr‚ assh ˆh }rƒ h}r„ h}r… h]r† Uros-crystal-gazebo-devr‡ asssuU cartographerrˆ }r‰ (h}rŠ h}r‹ h]rŒ Uros/crystal/cartographerr assh ˆh }rŽ h}r h}r h]r‘ Uros-crystal-cartographerr’ asssuUshared_queues_vendorr“ }r” (h}r• h}r– h]r— Uros/crystal/rosbag2r˜ assh ˆh }r™ h}rš h}r› h]rœ U ros-crystal-shared-queues-vendorr asssuUjoyrž }rŸ (h}r  h}r¡ h]r¢ Uros/crystal/joystick_driversr£ assh ˆh }r¤ h}r¥ h}r¦ h]r§ Uros-crystal-joyr¨ asssuU ecl_geometryr© }rª (h}r« h}r¬ h]r­ Uros/crystal/ecl_corer® assh ˆh }r¯ h}r° h}r± h]r² Uros-crystal-ecl-geometryr³ asssuUament_cmake_clang_formatr´ }rµ (h}r¶ h}r· h]r¸ Uros/crystal/ament_lintr¹ assh ˆh }rº h}r» h}r¼ h]r½ U$ros-crystal-ament-cmake-clang-formatr¾ asssuUnav2_world_modelr¿ }rÀ (h}rÁ h}r h]rà Uros/crystal/navigation2rÄ assh ˆh }rÅ h}rÆ h}rÇ h]rÈ Uros-crystal-nav2-world-modelrÉ asssuU$rosidl_typesupport_introspection_cpprÊ }rË (h}rÌ h}rÍ h]rÎ Uros/crystal/rosidlrÏ assh ˆh }rÐ h}rÑ h}rÒ h]rÓ U0ros-crystal-rosidl-typesupport-introspection-cpprÔ asssuU image_toolsrÕ }rÖ (h}r× h}rØ h]rÙ Uros/crystal/demosrÚ assh ˆh }rÛ h}rÜ h}rÝ h]rÞ Uros-crystal-image-toolsrß asssuUecl_convertersrà }rá (h}râ h}rã h]rä Uros/crystal/ecl_corerå assh ˆh }ræ h}rç h}rè h]ré Uros-crystal-ecl-convertersrê asssuUlaunch_testingrë }rì (h}rí h}rî h]rï Uros/crystal/launchrð assh ˆh }rñ h}rò h}ró h]rô Uros-crystal-launch-testingrõ asssuUrosidl_typesupport_connext_cpprö }r÷ (h}rø h}rù h]rú U&ros/crystal/rosidl_typesupport_connextrû assh ˆh }rü h}rý h}rþ h]rÿ U*ros-crystal-rosidl-typesupport-connext-cppr asssuUament_pyflakesr }r (h}r h}r h]r Uros/crystal/ament_lintr assh ˆh }r h}r h}r h]r Uros-crystal-ament-pyflakesr asssuUtlsfr }r (h}r h}r h]r Uros/crystal/tlsfr assh ˆh }r h}r h}r h]r Uros-crystal-tlsfr asssuUament_cmake_export_link_flagsr }r (h}r h}r h]r Uros/crystal/ament_cmaker assh ˆh }r h}r h}r h]r U)ros-crystal-ament-cmake-export-link-flagsr! asssuU ament_cmaker" }r# (h}r$ h}r% h]r& Uros/crystal/ament_cmaker' assh ˆh }r( h}r) h}r* h]r+ Uros-crystal-ament-cmaker, asssuUament_clang_formatr- }r. (h}r/ h}r0 h]r1 Uros/crystal/ament_lintr2 assh ˆh }r3 h}r4 h}r5 h]r6 Uros-crystal-ament-clang-formatr7 asssuUdesktopr8 }r9 (h}r: h}r; h]r< Uros/crystal/variantsr= assh ˆh }r> h}r? h}r@ h]rA Uros-crystal-desktoprB asssuU"rosidl_typesupport_introspection_crC }rD (h}rE h}rF h]rG Uros/crystal/rosidlrH assh ˆh }rI h}rJ h}rK h]rL U.ros-crystal-rosidl-typesupport-introspection-crM asssuUfastrtps_cmake_modulerN }rO (h}rP h}rQ h]rR U'ros/crystal/rosidl_typesupport_fastrtpsrS assh ˆh }rT h}rU h}rV h]rW U!ros-crystal-fastrtps-cmake-modulerX asssuUsros2rY }rZ (h}r[ h}r\ h]r] Uros/crystal/sros2r^ assh ˆh }r_ h}r` h}ra h]rb Uros-crystal-sros2rc asssuUlibcurl_vendorrd }re (h}rf h}rg h]rh Uros/crystal/resource_retrieverri assh ˆh }rj h}rk h}rl h]rm Uros-crystal-libcurl-vendorrn asssuUrviz_renderingro }rp (h}rq h}rr h]rs Uros/crystal/rvizrt assh ˆh }ru h}rv h}rw h]rx Uros-crystal-rviz-renderingry asssuUtinyxml_vendorrz }r{ (h}r| h}r} h]r~ Uros/crystal/tinyxml_vendorr assh ˆh }r€ h}r h}r‚ h]rƒ Uros-crystal-tinyxml-vendorr„ asssuUrosidl_default_generatorsr… }r† (h}r‡ h}rˆ h]r‰ Uros/crystal/rosidl_defaultsrŠ assh ˆh }r‹ h}rŒ h}r h]rŽ U%ros-crystal-rosidl-default-generatorsr asssuU nav_2d_msgsr }r‘ (h}r’ h}r“ h]r” Uros/crystal/navigation2r• assh ˆh }r– h}r— h}r˜ h]r™ Uros-crystal-nav-2d-msgsrš asssuUstd_msgsr› }rœ (h}r h}rž h]rŸ Uros/crystal/common_interfacesr  assh ˆh }r¡ h}r¢ h}r£ h]r¤ Uros-crystal-std-msgsr¥ asssuU"examples_rclcpp_minimal_subscriberr¦ }r§ (h}r¨ h}r© h]rª Uros/crystal/examplesr« assh ˆh }r¬ h}r­ h}r® h]r¯ U.ros-crystal-examples-rclcpp-minimal-subscriberr° asssuUanglesr± }r² (h}r³ h}r´ h]rµ Uros/crystal/anglesr¶ assh ˆh }r· h}r¸ h}r¹ h]rº Uros-crystal-anglesr» asssuU!rosbag2_converter_default_pluginsr¼ }r½ (h}r¾ h}r¿ h]rÀ Uros/crystal/rosbag2rÁ assh ˆh }r h}rà h}rÄ h]rÅ U-ros-crystal-rosbag2-converter-default-pluginsrÆ asssuU ament_pep8rÇ }rÈ (h}rÉ h}rÊ h]rË Uros/crystal/ament_lintrÌ assh ˆh }rÍ h}rÎ h}rÏ h]rÐ Uros-crystal-ament-pep8rÑ asssuU rcl_actionrÒ }rÓ (h}rÔ h}rÕ h]rÖ Uros/crystal/rclr× assh ˆh }rØ h}rÙ h}rÚ h]rÛ Uros-crystal-rcl-actionrÜ asssuUrcutilsrÝ }rÞ (h}rß h}rà h]rá Uros/crystal/rcutilsrâ assh ˆh }rã h}rä h}rå h]ræ Uros-crystal-rcutilsrç asssuU apriltag_msgsrè }ré (h}rê h}rë h]rì Uros/crystal/apriltag2_noderí assh ˆh }rî h}rï h}rð h]rñ Uros-crystal-apriltag-msgsrò asssuUurdfdomró }rô (h}rõ h}rö h]r÷ Uros/crystal/urdfdomrø assh ˆh }rù h}rú h}rû h]rü Uros-crystal-urdfdomrý asssuUament_uncrustifyrþ }rÿ (h}r h}r h]r Uros/crystal/ament_lintr assh ˆh }r h}r h}r h]r Uros-crystal-ament-uncrustifyr asssuUament_cmake_pep257r }r (h}r h}r h]r Uros/crystal/ament_lintr assh ˆh }r h}r h}r h]r Uros-crystal-ament-cmake-pep257r asssuU ament_flake8r }r (h}r h}r h]r Uros/crystal/ament_lintr assh ˆh }r h}r h}r h]r Uros-crystal-ament-flake8r asssuUdwb_corer }r (h}r! h}r" h]r# Uros/crystal/navigation2r$ assh ˆh }r% h}r& h}r' h]r( Uros-crystal-dwb-corer) asssuUrclcpp_lifecycler* }r+ (h}r, h}r- h]r. Uros/crystal/rclcppr/ assh ˆh }r0 h}r1 h}r2 h]r3 Uros-crystal-rclcpp-lifecycler4 asssuUecl_formattersr5 }r6 (h}r7 h}r8 h]r9 Uros/crystal/ecl_corer: assh ˆh }r; h}r< h}r= h]r> Uros-crystal-ecl-formattersr? asssuUament_cmake_export_librariesr@ }rA (h}rB h}rC h]rD Uros/crystal/ament_cmakerE assh ˆh }rF h}rG h}rH h]rI U(ros-crystal-ament-cmake-export-librariesrJ asssuUpx4_msgsrK }rL (h}rM h}rN h]rO Uros/crystal/px4_msgsrP assh ˆh }rQ h}rR h}rS h]rT Uros-crystal-px4-msgsrU asssuUnav2_dwb_controllerrV }rW (h}rX h}rY h]rZ Uros/crystal/navigation2r[ assh ˆh }r\ h}r] h}r^ h]r_ Uros-crystal-nav2-dwb-controllerr` asssuU qt_gui_corera }rb (h}rc h}rd h]re Uros/crystal/qt_gui_corerf assh ˆh }rg h}rh h}ri h]rj Uros-crystal-qt-gui-corerk asssuU demo_nodes_pyrl }rm (h}rn h}ro h]rp Uros/crystal/demosrq assh ˆh }rr h}rs h}rt h]ru Uros-crystal-demo-nodes-pyrv asssuUnav_msgsrw }rx (h}ry h}rz h]r{ Uros/crystal/common_interfacesr| assh ˆh }r} h}r~ h}r h]r€ Uros-crystal-nav-msgsr asssuUmicroxrcedds_agent_cmake_moduler‚ }rƒ (h}r„ h}r… h]r† Uros/crystal/micro-ROS-Agentr‡ assh ˆh }rˆ h}r‰ h}rŠ h]r‹ U+ros-crystal-microxrcedds-agent-cmake-modulerŒ asssuUecl_command_liner }rŽ (h}r h}r h]r‘ Uros/crystal/ecl_corer’ assh ˆh }r“ h}r” h}r• h]r– Uros-crystal-ecl-command-liner— asssuU gtest_vendorr˜ }r™ (h}rš h}r› h]rœ Uros/crystal/googletestr assh ˆh }rž h}rŸ h}r  h]r¡ Uros-crystal-gtest-vendorr¢ asssuUtf2_rosr£ }r¤ (h}r¥ h}r¦ h]r§ Uros/crystal/geometry2r¨ assh ˆh }r© h}rª h}r« h]r¬ Uros-crystal-tf2-rosr­ asssuUrosidl_typesupport_cr® }r¯ (h}r° h}r± h]r² Uros/crystal/rosidl_typesupportr³ assh ˆh }r´ h}rµ h}r¶ h]r· U ros-crystal-rosidl-typesupport-cr¸ asssuU compositionr¹ }rº (h}r» h}r¼ h]r½ Uros/crystal/demosr¾ assh ˆh }r¿ h}rÀ h}rÁ h]r Uros-crystal-compositionrà asssuUdiagnostic_msgsrÄ }rÅ (h}rÆ h}rÇ h]rÈ Uros/crystal/common_interfacesrÉ assh ˆh }rÊ h}rË h}rÌ h]rÍ Uros-crystal-diagnostic-msgsrÎ asssuUimage_geometryrÏ }rÐ (h}rÑ h}rÒ h]rÓ Uros/crystal/vision_opencvrÔ assh ˆh }rÕ h}rÖ h}r× h]rØ Uros-crystal-image-geometryrÙ asssuUrcl_logging_nooprÚ }rÛ (h}rÜ h}rÝ h]rÞ Uros/crystal/rcl_loggingrß assh ˆh }rà h}rá h}râ h]rã Uros-crystal-rcl-logging-nooprä asssuU dummy_sensorsrå }ræ (h}rç h}rè h]ré Uros/crystal/demosrê assh ˆh }rë h}rì h}rí h]rî Uros-crystal-dummy-sensorsrï asssuUtest_osrf_testing_tools_cpprð }rñ (h}rò h}ró h]rô U"ros/crystal/osrf_testing_tools_cpprõ assh ˆh }rö h}r÷ h}rø h]rù U'ros-crystal-test-osrf-testing-tools-cpprú asssuUconsole_bridge_vendorrû }rü (h}rý h}rþ h]rÿ U!ros/crystal/console_bridge_vendorr assh ˆh }r h}r h}r h]r U!ros-crystal-console-bridge-vendorr asssuU nav2_robotr }r (h}r h}r h]r Uros/crystal/navigation2r assh ˆh }r h}r h}r h]r Uros-crystal-nav2-robotr asssuUnav2_motion_primitivesr }r (h}r h}r h]r Uros/crystal/navigation2r assh ˆh }r h}r h}r h]r U"ros-crystal-nav2-motion-primitivesr asssuUrclcppr }r (h}r h}r h]r Uros/crystal/rclcppr! assh ˆh }r" h}r# h}r$ h]r% Uros-crystal-rclcppr& asssuUtf2_sensor_msgsr' }r( (h}r) h}r* h]r+ Uros/crystal/geometry2r, assh ˆh }r- h}r. h}r/ h]r0 Uros-crystal-tf2-sensor-msgsr1 asssuUrmw_fastrtps_dynamic_cppr2 }r3 (h}r4 h}r5 h]r6 Uros/crystal/rmw_fastrtpsr7 assh ˆh }r8 h}r9 h}r: h]r; U$ros-crystal-rmw-fastrtps-dynamic-cppr< asssuUrosidl_generator_cppr= }r> (h}r? h}r@ h]rA Uros/crystal/rosidlrB assh ˆh }rC h}rD h}rE h]rF U ros-crystal-rosidl-generator-cpprG asssuU ecl_configrH }rI (h}rJ h}rK h]rL Uros/crystal/ecl_literM assh ˆh }rN h}rO h}rP h]rQ Uros-crystal-ecl-configrR asssuU ets_pluginrS }rT (h}rU h}rV h]rW Uros/crystal/ets_ros2rX assh ˆh }rY h}rZ h}r[ h]r\ Uros-crystal-ets-pluginr] asssuUecl_statisticsr^ }r_ (h}r` h}ra h]rb Uros/crystal/ecl_corerc assh ˆh }rd h}re h}rf h]rg Uros-crystal-ecl-statisticsrh asssuU nav2_msgsri }rj (h}rk h}rl h]rm Uros/crystal/navigation2rn assh ˆh }ro h}rp h}rq h]rr Uros-crystal-nav2-msgsrs asssuU sros2_cmakert }ru (h}rv h}rw h]rx Uros/crystal/sros2ry assh ˆh }rz h}r{ h}r| h]r} Uros-crystal-sros2-cmaker~ asssuUrqt_py_consoler }r€ (h}r h}r‚ h]rƒ Uros/crystal/rqt_py_consoler„ assh ˆh }r… h}r† h}r‡ h]rˆ Uros-crystal-rqt-py-consoler‰ asssuU ecl_devicesrŠ }r‹ (h}rŒ h}r h]rŽ Uros/crystal/ecl_corer assh ˆh }r h}r‘ h}r’ h]r“ Uros-crystal-ecl-devicesr” asssuUosrf_testing_tools_cppr• }r– (h}r— h}r˜ h]r™ U"ros/crystal/osrf_testing_tools_cpprš assh ˆh }r› h}rœ h}r h]rž U"ros-crystal-osrf-testing-tools-cpprŸ asssuUnav2_voxel_gridr  }r¡ (h}r¢ h}r£ h]r¤ Uros/crystal/navigation2r¥ assh ˆh }r¦ h}r§ h}r¨ h]r© Uros-crystal-nav2-voxel-gridrª asssuUrosbag2_transportr« }r¬ (h}r­ h}r® h]r¯ Uros/crystal/rosbag2r° assh ˆh }r± h}r² h}r³ h]r´ Uros-crystal-rosbag2-transportrµ asssuUros1_rosbag_storage_vendorr¶ }r· (h}r¸ h}r¹ h]rº Uros/crystal/rosbag2r» assh ˆh }r¼ h}r½ h}r¾ h]r¿ U&ros-crystal-ros1-rosbag-storage-vendorrÀ asssuUros_corerÁ }r (h}rà h}rÄ h]rÅ Uros/crystal/variantsrÆ assh ˆh }rÇ h}rÈ h}rÉ h]rÊ Uros-crystal-ros-corerË asssuU dwb_pluginsrÌ }rÍ (h}rÎ h}rÏ h]rÐ Uros/crystal/navigation2rÑ assh ˆh }rÒ h}rÓ h}rÔ h]rÕ Uros-crystal-dwb-pluginsrÖ asssuUbehaviortree_cpp_v3r× }rØ (h}rÙ h}rÚ h]rÛ Uros/crystal/behaviotree_cpp_v3rÜ assh ˆh }rÝ h}rÞ h}rß h]rà Uros-crystal-behaviortree-cpp-v3rá asssuUrobot_state_publisherrâ }rã (h}rä h}rå h]ræ U!ros/crystal/robot_state_publisherrç assh ˆh }rè h}ré h}rê h]rë U!ros-crystal-robot-state-publisherrì asssuUament_cmake_librariesrí }rî (h}rï h}rð h]rñ Uros/crystal/ament_cmakerò assh ˆh }ró h}rô h}rõ h]rö U!ros-crystal-ament-cmake-librariesr÷ asssuUbuiltin_interfacesrø }rù (h}rú h}rû h]rü Uros/crystal/rcl_interfacesrý assh ˆh }rþ h}rÿ h}r h]r Uros-crystal-builtin-interfacesr asssuUapriltagr }r (h}r h}r h]r Uros/crystal/apriltag2r assh ˆh }r h}r h}r h]r Uros-crystal-apriltagr asssuUrqt_topr }r (h}r h}r h]r Uros/crystal/rqt_topr assh ˆh }r h}r h}r h]r Uros-crystal-rqt-topr asssuUament_lint_autor }r (h}r h}r h]r Uros/crystal/ament_lintr assh ˆh }r h}r h}r! h]r" Uros-crystal-ament-lint-autor# asssuUtinyxml2_vendorr$ }r% (h}r& h}r' h]r( Uros/crystal/tinyxml2_vendorr) assh ˆh }r* h}r+ h}r, h]r- Uros-crystal-tinyxml2-vendorr. asssuUrosidl_actionsr/ }r0 (h}r1 h}r2 h]r3 Uros/crystal/rosidlr4 assh ˆh }r5 h}r6 h}r7 h]r8 Uros-crystal-rosidl-actionsr9 asssuUament_cmake_flake8r: }r; (h}r< h}r= h]r> Uros/crystal/ament_lintr? assh ˆh }r@ h}rA h}rB h]rC Uros-crystal-ament-cmake-flake8rD asssuUets_cpp_clientrE }rF (h}rG h}rH h]rI Uros/crystal/ets_ros2rJ assh ˆh }rK h}rL h}rM h]rN Uros-crystal-ets-cpp-clientrO asssuUactionlib_msgsrP }rQ (h}rR h}rS h]rT Uros/crystal/common_interfacesrU assh ˆh }rV h}rW h}rX h]rY Uros-crystal-actionlib-msgsrZ asssuUecl_converters_liter[ }r\ (h}r] h}r^ h]r_ Uros/crystal/ecl_liter` assh ˆh }ra h}rb h}rc h]rd Uros-crystal-ecl-converters-litere asssuUrviz_rendering_testsrf }rg (h}rh h}ri h]rj Uros/crystal/rvizrk assh ˆh }rl h}rm h}rn h]ro U ros-crystal-rviz-rendering-testsrp asssuU ros2topicrq }rr (h}rs h}rt h]ru Uros/crystal/ros2clirv assh ˆh }rw h}rx h}ry h]rz Uros-crystal-ros2topicr{ asssuU ros2paramr| }r} (h}r~ h}r h]r€ Uros/crystal/ros2clir assh ˆh }r‚ h}rƒ h}r„ h]r… Uros-crystal-ros2paramr† asssuUlaser_geometryr‡ }rˆ (h}r‰ h}rŠ h]r‹ Uros/crystal/laser_geometryrŒ assh ˆh }r h}rŽ h}r h]r Uros-crystal-laser-geometryr‘ asssuU pendulum_msgsr’ }r“ (h}r” h}r• h]r– Uros/crystal/demosr— assh ˆh }r˜ h}r™ h}rš h]r› Uros-crystal-pendulum-msgsrœ asssuUml_classifiersr }rž (h}rŸ h}r  h]r¡ Uros/crystal/ml_classifiersr¢ assh ˆh }r£ h}r¤ h}r¥ h]r¦ Uros-crystal-ml-classifiersr§ asssuUcamera_calibration_parsersr¨ }r© (h}rª h}r« h]r¬ Uros/crystal/image_commonr­ assh ˆh }r® h}r¯ h}r° h]r± U&ros-crystal-camera-calibration-parsersr² asssuUros_environmentr³ }r´ (h}rµ h}r¶ h]r· Uros/crystal/ros_environmentr¸ assh ˆh }r¹ h}rº h}r» h]r¼ Uros-crystal-ros-environmentr½ asssuU nmea_msgsr¾ }r¿ (h}rÀ h}rÁ h]r Uros/crystal/nmea_msgsrà assh ˆh }rÄ h}rÅ h}rÆ h]rÇ Uros-crystal-nmea-msgsrÈ asssuUdemo_nodes_cpprÉ }rÊ (h}rË h}rÌ h]rÍ Uros/crystal/demosrÎ assh ˆh }rÏ h}rÐ h}rÑ h]rÒ Uros-crystal-demo-nodes-cpprÓ asssuU action_msgsrÔ }rÕ (h}rÖ h}r× h]rØ Uros/crystal/rcl_interfacesrÙ assh ˆh }rÚ h}rÛ h}rÜ h]rÝ Uros-crystal-action-msgsrÞ asssuU ecl_time_literß }rà (h}rá h}râ h]rã Uros/crystal/ecl_literä assh ˆh }rå h}ræ h}rç h]rè Uros-crystal-ecl-time-literé asssuUrmw_connext_cpprê }rë (h}rì h}rí h]rî Uros/crystal/rmw_connextrï assh ˆh }rð h}rñ h}rò h]ró Uros-crystal-rmw-connext-cpprô asssuUrosidl_typesupport_interfacerõ }rö (h}r÷ h}rø h]rù Uros/crystal/rosidlrú assh ˆh }rû h}rü h}rý h]rþ U(ros-crystal-rosidl-typesupport-interfacerÿ asssuUcamera_info_managerr}r(h}rh}rh]rUros/crystal/image_commonrassh ˆh }rh}rh}rh]r Uros-crystal-camera-info-managerr asssuUros2bagr }r (h}r h}rh]rUros/crystal/rosbag2rassh ˆh }rh}rh}rh]rUros-crystal-ros2bagrasssuUament_cmake_rosr}r(h}rh}rh]rUros/crystal/ament_cmake_rosrassh ˆh }rh}rh}rh]rUros-crystal-ament-cmake-rosr asssuUsystem_modes_examplesr!}r"(h}r#h}r$h]r%Uros/crystal/system_modesr&assh ˆh }r'h}r(h}r)h]r*U!ros-crystal-system-modes-examplesr+asssuUrviz_visual_testing_frameworkr,}r-(h}r.h}r/h]r0Uros/crystal/rvizr1assh ˆh }r2h}r3h}r4h]r5U)ros-crystal-rviz-visual-testing-frameworkr6asssuUsqlite3_vendorr7}r8(h}r9h}r:h]r;Uros/crystal/rosbag2r<assh ˆh }r=h}r>h}r?h]r@Uros-crystal-sqlite3-vendorrAasssuUrmw_implementationrB}rC(h}rDh}rEh]rFUros/crystal/rmw_implementationrGassh ˆh }rHh}rIh}rJh]rKUros-crystal-rmw-implementationrLasssuUwebots_ros2_msgsrM}rN(h}rOh}rPh]rQUros/crystal/webots_ros2rRassh ˆh }rSh}rTh}rUh]rVUros-crystal-webots-ros2-msgsrWasssuUrosbag2_test_commonrX}rY(h}rZh}r[h]r\Uros/crystal/rosbag2r]assh ˆh }r^h}r_h}r`h]raUros-crystal-rosbag2-test-commonrbasssuU keystrokerc}rd(h}reh}rfh]rgUros/crystal/keystrokerhassh ˆh }rih}rjh}rkh]rlUros-crystal-keystrokermasssuU ecl_toolsrn}ro(h}rph}rqh]rrUros/crystal/ecl_toolsrsassh ˆh }rth}ruh}rvh]rwUros-crystal-ecl-toolsrxasssuUconnext_cmake_modulery}rz(h}r{h}r|h]r}U&ros/crystal/rosidl_typesupport_connextr~assh ˆh }rh}r€h}rh]r‚U ros-crystal-connext-cmake-modulerƒasssuUexample_interfacesr„}r…(h}r†h}r‡h]rˆUros/crystal/example_interfacesr‰assh ˆh }rŠh}r‹h}rŒh]rUros-crystal-example-interfacesrŽasssuUrealsense_camera_msgsr}r(h}r‘h}r’h]r“U ros/crystal/ros2_intel_realsenser”assh ˆh }r•h}r–h}r—h]r˜U!ros-crystal-realsense-camera-msgsr™asssuUament_cmake_copyrightrš}r›(h}rœh}rh]ržUros/crystal/ament_lintrŸassh ˆh }r h}r¡h}r¢h]r£U!ros-crystal-ament-cmake-copyrightr¤asssuUament_cmake_testr¥}r¦(h}r§h}r¨h]r©Uros/crystal/ament_cmakerªassh ˆh }r«h}r¬h}r­h]r®Uros-crystal-ament-cmake-testr¯asssuUrosidl_generator_cr°}r±(h}r²h}r³h]r´Uros/crystal/rosidlrµassh ˆh }r¶h}r·h}r¸h]r¹Uros-crystal-rosidl-generator-crºasssuUurdfdom_headersr»}r¼(h}r½h}r¾h]r¿Uros/crystal/urdfdom_headersrÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-crystal-urdfdom-headersrÅasssuU$examples_rclpy_minimal_action_clientrÆ}rÇ(h}rÈh}rÉh]rÊUros/crystal/examplesrËassh ˆh }rÌh}rÍh}rÎh]rÏU0ros-crystal-examples-rclpy-minimal-action-clientrÐasssuUrclrÑ}rÒ(h}rÓh}rÔh]rÕUros/crystal/rclrÖassh ˆh }r×h}rØh}rÙh]rÚUros-crystal-rclrÛasssuUrqt_plotrÜ}rÝ(h}rÞh}rßh]ràUros/crystal/rqt_plotráassh ˆh }râh}rãh}räh]råUros-crystal-rqt-plotræasssuUteleop_twist_joyrç}rè(h}réh}rêh]rëUros/crystal/teleop_twist_joyrìassh ˆh }ríh}rîh}rïh]rðUros-crystal-teleop-twist-joyrñasssuU control_msgsrò}ró(h}rôh}rõh]röUros/crystal/control_msgsr÷assh ˆh }røh}rùh}rúh]rûUros-crystal-control-msgsrüasssuUpendulum_controlrý}rþ(h}rÿh}rh]rUros/crystal/demosrassh ˆh }rh}rh}rh]rUros-crystal-pendulum-controlrasssuU#examples_rclcpp_minimal_compositionr}r (h}r h}r h]r Uros/crystal/examplesr assh ˆh }rh}rh}rh]rU/ros-crystal-examples-rclcpp-minimal-compositionrasssuUrmw_fastrtps_cppr}r(h}rh}rh]rUros/crystal/rmw_fastrtpsrassh ˆh }rh}rh}rh]rUros-crystal-rmw-fastrtps-cpprasssuUrosidl_typesupport_fastrtps_cr}r(h}r h}r!h]r"U'ros/crystal/rosidl_typesupport_fastrtpsr#assh ˆh }r$h}r%h}r&h]r'U)ros-crystal-rosidl-typesupport-fastrtps-cr(asssuU rqt_shellr)}r*(h}r+h}r,h]r-Uros/crystal/rqt_shellr.assh ˆh }r/h}r0h}r1h]r2Uros-crystal-rqt-shellr3asssuU cv_bridger4}r5(h}r6h}r7h]r8Uros/crystal/vision_opencvr9assh ˆh }r:h}r;h}r<h]r=Uros-crystal-cv-bridger>asssuUrmw_implementation_cmaker?}r@(h}rAh}rBh]rCUros/crystal/rmwrDassh ˆh }rEh}rFh}rGh]rHU$ros-crystal-rmw-implementation-cmakerIasssuUimage_transport_pluginsrJ}rK(h}rLh}rMh]rNU#ros/crystal/image_transport_pluginsrOassh ˆh }rPh}rQh}rRh]rSU#ros-crystal-image-transport-pluginsrTasssuUstd_srvsrU}rV(h}rWh}rXh]rYUros/crystal/common_interfacesrZassh ˆh }r[h}r\h}r]h]r^Uros-crystal-std-srvsr_asssuUrosidl_typesupport_connext_cr`}ra(h}rbh}rch]rdU&ros/crystal/rosidl_typesupport_connextreassh ˆh }rfh}rgh}rhh]riU(ros-crystal-rosidl-typesupport-connext-crjasssuU ament_pep257rk}rl(h}rmh}rnh]roUros/crystal/ament_lintrpassh ˆh }rqh}rrh}rsh]rtUros-crystal-ament-pep257ruasssuUnav2_costmap_2drv}rw(h}rxh}ryh]rzUros/crystal/navigation2r{assh ˆh }r|h}r}h}r~h]rUros-crystal-nav2-costmap-2dr€asssuU%examples_rclcpp_minimal_action_clientr}r‚(h}rƒh}r„h]r…Uros/crystal/examplesr†assh ˆh }r‡h}rˆh}r‰h]rŠU1ros-crystal-examples-rclcpp-minimal-action-clientr‹asssuUament_cmake_corerŒ}r(h}rŽh}rh]rUros/crystal/ament_cmaker‘assh ˆh }r’h}r“h}r”h]r•Uros-crystal-ament-cmake-corer–asssuU qt_gui_cppr—}r˜(h}r™h}ršh]r›Uros/crystal/qt_gui_corerœassh ˆh }rh}ržh}rŸh]r Uros-crystal-qt-gui-cppr¡asssuUrqtr¢}r£(h}r¤h}r¥h]r¦Uros/crystal/rqtr§assh ˆh }r¨h}r©h}rªh]r«Uros-crystal-rqtr¬asssuUmessage_filtersr­}r®(h}r¯h}r°h]r±Uros/crystal/message_filtersr²assh ˆh }r³h}r´h}rµh]r¶Uros-crystal-message-filtersr·asssuUament_cmake_uncrustifyr¸}r¹(h}rºh}r»h]r¼Uros/crystal/ament_lintr½assh ˆh }r¾h}r¿h}rÀh]rÁU"ros-crystal-ament-cmake-uncrustifyrÂasssuUpy_treesrÃ}rÄ(h}rÅh}rÆh]rÇUros/crystal/py_treesrÈassh ˆh }rÉh}rÊh}rËh]rÌUros-crystal-py-treesrÍasssuUgazebo_pluginsrÎ}rÏ(h}rÐh}rÑh]rÒUros/crystal/gazebo_ros_pkgsrÓassh ˆh }rÔh}rÕh}rÖh]r×Uros-crystal-gazebo-pluginsrØasssuU rqt_gui_pyrÙ}rÚ(h}rÛh}rÜh]rÝUros/crystal/rqtrÞassh ˆh }rßh}ràh}ráh]râUros-crystal-rqt-gui-pyrãasssuUmap_msgsrä}rå(h}ræh}rçh]rèUros/crystal/navigation_msgsréassh ˆh }rêh}rëh}rìh]ríUros-crystal-map-msgsrîasssuUyaml_cpp_vendorrï}rð(h}rñh}ròh]róUros/crystal/yaml_cpp_vendorrôassh ˆh }rõh}röh}r÷h]røUros-crystal-yaml-cpp-vendorrùasssuUrosidl_adapterrú}rû(h}rüh}rýh]rþUros/crystal/rosidlrÿassh ˆh }rh}rh}rh]rUros-crystal-rosidl-adapterrasssuu.catkin_lint-1.6.6/test/sources.cache/92e5d8c5f0d9455fe3a14e3dd1f7b90ca9ae78a8.pickle000066400000000000000000014730441362025056600266430ustar00rootroot00000000000000€}q(U rosconsoleq}q(Uosxq}qUhomebrewq}qUpackagesq]q Uros/melodic/rosconsoleq assUdebianq }q Ustretchq }qUaptq}qh]qUros-melodic-rosconsoleqasssU_is_rosqˆUfedoraq}qU28q}qUyumq}qh]qhasssUubuntuq}qUbionicq}qh}qh]q hasssuUimu_filter_madgwickq!}q"(h}q#h}q$h]q%Uros/melodic/imu_toolsq&assh }q'h }q(h}q)h]q*Uros-melodic-imu-filter-madgwickq+assshˆh}q,h}q-h}q.h]q/h+asssh}q0h}q1h}q2h]q3h+asssuUturtlebot3_follow_filterq4}q5(h}q6h}q7h]q8U#ros/melodic/turtlebot3_applicationsq9assh }q:h }q;h}qassshˆh}q?h}q@h}qAh]qBh>asssh}qCh}qDh}qEh]qFh>asssuUaudibotqG}qH(h}qIh}qJh]qKUros/melodic/audibotqLassh }qMh }qNh}qOh]qPUros-melodic-audibotqQassshˆh}qRh}qSh}qTh]qUhQasssh}qVh}qWh}qXh]qYhQasssuUorocos_kinematics_dynamicsqZ}q[(h}q\h}q]h]q^U&ros/melodic/orocos_kinematics_dynamicsq_assh }q`h }qah}qbh]qcU&ros-melodic-orocos-kinematics-dynamicsqdassshˆh}qeh}qfh}qgh]qhhdasssh}qih}qjh}qkh]qlhdasssuUrosserial_vex_v5qm}qn(h}qoh}qph]qqUros/melodic/rosserialqrassh }qsh }qth}quh]qvUros-melodic-rosserial-vex-v5qwassshˆh}qxh}qyh}qzh]q{hwasssh}q|h}q}h}q~h]qhwasssuU libqt_devq€}q(h}q‚h}qƒh]q„Uros/melodic/qt_metapackagesq…assh }q†h }q‡h}qˆh]q‰Uros-melodic-libqt-devqŠassshˆh}q‹h}qŒh}qh]qŽhŠasssh}qh}qh}q‘h]q’hŠasssuU pr2_move_baseq“}q”(h}q•h}q–h]q—Uros/melodic/pr2_navigationq˜assh }q™h }qšh}q›h]qœUros-melodic-pr2-move-baseqassshˆh}qžh}qŸh}q h]q¡hasssh}q¢h}q£h}q¤h]q¥hasssuUlibsensors_monitorq¦}q§(h}q¨h}q©h]qªU'ros/melodic/linux_peripheral_interfacesq«assh }q¬h }q­h}q®h]q¯Uros-melodic-libsensors-monitorq°assshˆh}q±h}q²h}q³h]q´h°asssh}qµh}q¶h}q·h]q¸h°asssuU fiducial_slamq¹}qº(h}q»h}q¼h]q½Uros/melodic/fiducialsq¾assh }q¿h }qÀh}qÁh]qÂUros-melodic-fiducial-slamqÃassshˆh}qÄh}qÅh}qÆh]qÇhÃasssh}qÈh}qÉh}qÊh]qËhÃasssuUdelphi_mrr_msgsqÌ}qÍ(h}qÎh}qÏh]qÐUros/melodic/astuff_sensor_msgsqÑassh }qÒh }qÓh}qÔh]qÕUros-melodic-delphi-mrr-msgsqÖassshˆh}q×h}qØh}qÙh]qÚhÖasssh}qÛh}qÜh}qÝh]qÞhÖasssuUuwsim_osgbulletqß}qà(h}qáh}qâh]qãUros/melodic/uwsim_osgbulletqäassh }qåh }qæh}qçh]qèUros-melodic-uwsim-osgbulletqéassshˆh}qêh}qëh}qìh]qíhéasssh}qîh}qïh}qðh]qñhéasssuUcartographer_rvizqò}qó(h}qôh}qõh]qöUros/melodic/cartographer_rosq÷assh }qøh }qùh}qúh]qûUros-melodic-cartographer-rvizqüassshˆh}qýh}qþh}qÿh]rhüasssh}rh}rh}rh]rhüasssuUcob_collision_velocity_filterr}r(h}rh}rh]r Uros/melodic/cob_controlr assh }r h }r h}r h]rU)ros-melodic-cob-collision-velocity-filterrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuU moveit_msgsr}r(h}rh}rh]rUros/melodic/moveit_msgsrassh }rh }rh}r h]r!Uros-melodic-moveit-msgsr"assshˆh}r#h}r$h}r%h]r&j"asssh}r'h}r(h}r)h]r*j"asssuUtuw_msgsr+}r,(h}r-h}r.h]r/Uros/melodic/tuw_msgsr0assh }r1h }r2h}r3h]r4Uros-melodic-tuw-msgsr5assshˆh}r6h}r7h}r8h]r9j5asssh}r:h}r;h}r<h]r=j5asssuUh264_encoder_corer>}r?(h}r@h}rAh]rBUros/melodic/h264_encoder_corerCassh }rDh }rEh}rFh]rGUros-melodic-h264-encoder-corerHassshˆh}rIh}rJh}rKh]rLjHasssh}rMh}rNh}rOh]rPjHasssuUfetch_driver_msgsrQ}rR(h}rSh}rTh]rUUros/melodic/fetch_msgsrVassh }rWh }rXh}rYh]rZUros-melodic-fetch-driver-msgsr[assshˆh}r\h}r]h}r^h]r_j[asssh}r`h}rah}rbh]rcj[asssuU ublox_msgsrd}re(h}rfh}rgh]rhUros/melodic/ubloxriassh }rjh }rkh}rlh]rmUros-melodic-ublox-msgsrnassshˆh}roh}rph}rqh]rrjnasssh}rsh}rth}ruh]rvjnasssuUnanomsgrw}rx(h}ryh}rzh]r{Uros/melodic/nanomsgr|assh }r}h }r~h}rh]r€Uros-melodic-nanomsgrassshˆh}r‚h}rƒh}r„h]r…jasssh}r†h}r‡h}rˆh]r‰jasssuUcanopen_motor_noderŠ}r‹(h}rŒh}rh]rŽUros/melodic/ros_canopenrassh }rh }r‘h}r’h]r“Uros-melodic-canopen-motor-noder”assshˆh}r•h}r–h}r—h]r˜j”asssh}r™h}ršh}r›h]rœj”asssuU ypspur_rosr}rž(h}rŸh}r h]r¡Uros/melodic/ypspur_rosr¢assh }r£h }r¤h}r¥h]r¦Uros-melodic-ypspur-rosr§assshˆh}r¨h}r©h}rªh]r«j§asssh}r¬h}r­h}r®h]r¯j§asssuUuuv_control_msgsr°}r±(h}r²h}r³h]r´Uros/melodic/uuv_simulatorrµassh }r¶h }r·h}r¸h]r¹Uros-melodic-uuv-control-msgsrºassshˆh}r»h}r¼h}r½h]r¾jºasssh}r¿h}rÀh}rÁh]rÂjºasssuUconcert_workflow_engine_msgsrÃ}rÄ(h}rÅh}rÆh]rÇUros/melodic/rocon_msgsrÈassh }rÉh }rÊh}rËh]rÌU(ros-melodic-concert-workflow-engine-msgsrÍassshˆh}rÎh}rÏh}rÐh]rÑjÍasssh}rÒh}rÓh}rÔh]rÕjÍasssuU rqt_pose_viewrÖ}r×(h}rØh}rÙh]rÚUros/melodic/rqt_pose_viewrÛassh }rÜh }rÝh}rÞh]rßUros-melodic-rqt-pose-viewràassshˆh}ráh}râh}rãh]räjàasssh}råh}ræh}rçh]rèjàasssuUfranka_gripperré}rê(h}rëh}rìh]ríUros/melodic/franka_rosrîassh }rïh }rðh}rñh]ròUros-melodic-franka-gripperróassshˆh}rôh}rõh}röh]r÷jóasssh}røh}rùh}rúh]rûjóasssuUjsk_visualizationrü}rý(h}rþh}rÿh]rUros/melodic/jsk_visualizationrassh }rh }rh}rh]rUros-melodic-jsk-visualizationrassshˆh}rh}rh}r h]r jasssh}r h}r h}r h]rjasssuU static_tfr}r(h}rh}rh]rUros/melodic/static_tfrassh }rh }rh}rh]rUros-melodic-static-tfrassshˆh}rh}rh}rh]rjasssh}rh}rh}r h]r!jasssuUpilz_testutilsr"}r#(h}r$h}r%h]r&Uros/melodic/pilz_robotsr'assh }r(h }r)h}r*h]r+Uros-melodic-pilz-testutilsr,assshˆh}r-h}r.h}r/h]r0j,asssh}r1h}r2h}r3h]r4j,asssuUcob_navigation_configr5}r6(h}r7h}r8h]r9Uros/melodic/cob_navigationr:assh }r;h }r<h}r=h]r>U!ros-melodic-cob-navigation-configr?assshˆh}r@h}rAh}rBh]rCj?asssh}rDh}rEh}rFh]rGj?asssuU mavros_msgsrH}rI(h}rJh}rKh]rLUros/melodic/mavrosrMassh }rNh }rOh}rPh]rQUros-melodic-mavros-msgsrRassshˆh}rSh}rTh}rUh]rVjRasssh}rWh}rXh}rYh]rZjRasssuUmultisense_cal_checkr[}r\(h}r]h}r^h]r_Uros/melodic/multisense_rosr`assh }rah }rbh}rch]rdU ros-melodic-multisense-cal-checkreassshˆh}rfh}rgh}rhh]rijeasssh}rjh}rkh}rlh]rmjeasssuUcob_object_detection_msgsrn}ro(h}rph}rqh]rrU!ros/melodic/cob_perception_commonrsassh }rth }ruh}rvh]rwU%ros-melodic-cob-object-detection-msgsrxassshˆh}ryh}rzh}r{h]r|jxasssh}r}h}r~h}rh]r€jxasssuUnav2d_tutorialsr}r‚(h}rƒh}r„h]r…Uros/melodic/navigation_2dr†assh }r‡h }rˆh}r‰h]rŠUros-melodic-nav2d-tutorialsr‹assshˆh}rŒh}rh}rŽh]rj‹asssh}rh}r‘h}r’h]r“j‹asssuUpheeno_ros_descriptionr”}r•(h}r–h}r—h]r˜U"ros/melodic/pheeno_ros_descriptionr™assh }ršh }r›h}rœh]rU"ros-melodic-pheeno-ros-descriptionržassshˆh}rŸh}r h}r¡h]r¢jžasssh}r£h}r¤h}r¥h]r¦jžasssuUdynamixel_workbench_msgsr§}r¨(h}r©h}rªh]r«U$ros/melodic/dynamixel-workbench-msgsr¬assh }r­h }r®h}r¯h]r°U$ros-melodic-dynamixel-workbench-msgsr±assshˆh}r²h}r³h}r´h]rµj±asssh}r¶h}r·h}r¸h]r¹j±asssuUrosserial_embeddedlinuxrº}r»(h}r¼h}r½h]r¾Uros/melodic/rosserialr¿assh }rÀh }rÁh}rÂh]rÃU#ros-melodic-rosserial-embeddedlinuxrÄassshˆh}rÅh}rÆh}rÇh]rÈjÄasssh}rÉh}rÊh}rËh]rÌjÄasssuUdistance_map_toolsrÍ}rÎ(h}rÏh}rÐh]rÑUros/melodic/distance_maprÒassh }rÓh }rÔh}rÕh]rÖUros-melodic-distance-map-toolsr×assshˆh}rØh}rÙh}rÚh]rÛj×asssh}rÜh}rÝh}rÞh]rßj×asssuUindustrial_utilsrà}rá(h}râh}rãh]räUros/melodic/industrial_coreråassh }ræh }rçh}rèh]réUros-melodic-industrial-utilsrêassshˆh}rëh}rìh}ríh]rîjêasssh}rïh}rðh}rñh]ròjêasssuUrobotis_manipulatorró}rô(h}rõh}röh]r÷Uros/melodic/robotis_manipulatorrøassh }rùh }rúh}rûh]rüUros-melodic-robotis-manipulatorrýassshˆh}rþh}rÿh}rh]rjýasssh}rh}rh}rh]rjýasssuUvisualization_msgsr}r(h}rh}r h]r Uros/melodic/common_msgsr assh }r h }r h}rh]rUros-melodic-visualization-msgsrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUmessage_generationr}r(h}rh}rh]rUros/melodic/message_generationrassh }rh }r h}r!h]r"Uros-melodic-message-generationr#assshˆh}r$h}r%h}r&h]r'j#asssh}r(h}r)h}r*h]r+j#asssuU urdf_tutorialr,}r-(h}r.h}r/h]r0Uros/melodic/urdf_tutorialr1assh }r2h }r3h}r4h]r5Uros-melodic-urdf-tutorialr6assshˆh}r7h}r8h}r9h]r:j6asssh}r;h}r<h}r=h]r>j6asssuUpython_orocos_kdlr?}r@(h}rAh}rBh]rCU&ros/melodic/orocos_kinematics_dynamicsrDassh }rEh }rFh}rGh]rHUros-melodic-python-orocos-kdlrIassshˆh}rJh}rKh}rLh]rMjIasssh}rNh}rOh}rPh]rQjIasssuUpr2eus_tutorialsrR}rS(h}rTh}rUh]rVUros/melodic/jsk_pr2eusrWassh }rXh }rYh}rZh]r[Uros-melodic-pr2eus-tutorialsr\assshˆh}r]h}r^h}r_h]r`j\asssh}rah}rbh}rch]rdj\asssuU power_msgsre}rf(h}rgh}rhh]riUros/melodic/power_msgsrjassh }rkh }rlh}rmh]rnUros-melodic-power-msgsroassshˆh}rph}rqh}rrh]rsjoasssh}rth}ruh}rvh]rwjoasssuUarbotix_controllersrx}ry(h}rzh}r{h]r|Uros/melodic/arbotixr}assh }r~h }rh}r€h]rUros-melodic-arbotix-controllersr‚assshˆh}rƒh}r„h}r…h]r†j‚asssh}r‡h}rˆh}r‰h]rŠj‚asssuU novatel_msgsr‹}rŒ(h}rh}rŽh]rUros/melodic/novatel_span_driverrassh }r‘h }r’h}r“h]r”Uros-melodic-novatel-msgsr•assshˆh}r–h}r—h}r˜h]r™j•asssh}ršh}r›h}rœh]rj•asssuUmoveit_planners_omplrž}rŸ(h}r h}r¡h]r¢Uros/melodic/moveitr£assh }r¤h }r¥h}r¦h]r§U ros-melodic-moveit-planners-omplr¨assshˆh}r©h}rªh}r«h]r¬j¨asssh}r­h}r®h}r¯h]r°j¨asssuUneonavigation_rviz_pluginsr±}r²(h}r³h}r´h]rµU&ros/melodic/neonavigation_rviz_pluginsr¶assh }r·h }r¸h}r¹h]rºU&ros-melodic-neonavigation-rviz-pluginsr»assshˆh}r¼h}r½h}r¾h]r¿j»asssh}rÀh}rÁh}rÂh]rÃj»asssuUvelodyne_gazebo_pluginsrÄ}rÅ(h}rÆh}rÇh]rÈUros/melodic/velodyne_simulatorrÉassh }rÊh }rËh}rÌh]rÍU#ros-melodic-velodyne-gazebo-pluginsrÎassshˆh}rÏh}rÐh}rÑh]rÒjÎasssh}rÓh}rÔh}rÕh]rÖjÎasssuU fmi_adapterr×}rØ(h}rÙh}rÚh]rÛUros/melodic/fmi_adapterrÜassh }rÝh }rÞh}rßh]ràUros-melodic-fmi-adapterráassshˆh}râh}rãh}räh]råjáasssh}ræh}rçh}rèh]réjáasssuUpybind11_catkinrê}rë(h}rìh}ríh]rîUros/melodic/pybind11_catkinrïassh }rðh }rñh}ròh]róUros-melodic-pybind11-catkinrôassshˆh}rõh}röh}r÷h]røjôasssh}rùh}rúh}rûh]rüjôasssuUcob_generic_canrý}rþ(h}rÿh}rh]rUros/melodic/cob_driverrassh }rh }rh}rh]rUros-melodic-cob-generic-canrassshˆh}rh}r h}r h]r jasssh}r h}r h}rh]rjasssuUpr2_power_driversr}r(h}rh}rh]rUros/melodic/pr2_power_driversrassh }rh }rh}rh]rUros-melodic-pr2-power-driversrassshˆh}rh}rh}rh]rjasssh}rh}r h}r!h]r"jasssuUbehaviortree_cppr#}r$(h}r%h}r&h]r'Uros/melodic/behaviortree_cppr(assh }r)h }r*h}r+h]r,Uros-melodic-behaviortree-cppr-assshˆh}r.h}r/h}r0h]r1j-asssh}r2h}r3h}r4h]r5j-asssuU rocon_toolsr6}r7(h}r8h}r9h]r:Uros/melodic/rocon_toolsr;assh }r<h }r=h}r>h]r?Uros-melodic-rocon-toolsr@assshˆh}rAh}rBh}rCh]rDj@asssh}rEh}rFh}rGh]rHj@asssuUturtlebot3_applicationsrI}rJ(h}rKh}rLh]rMU#ros/melodic/turtlebot3_applicationsrNassh }rOh }rPh}rQh]rRU#ros-melodic-turtlebot3-applicationsrSassshˆh}rTh}rUh}rVh]rWjSasssh}rXh}rYh}rZh]r[jSasssuU"exotica_levenberg_marquardt_solverr\}r](h}r^h}r_h]r`Uros/melodic/exoticaraassh }rbh }rch}rdh]reU.ros-melodic-exotica-levenberg-marquardt-solverrfassshˆh}rgh}rhh}rih]rjjfasssh}rkh}rlh}rmh]rnjfasssuUyocs_controllersro}rp(h}rqh}rrh]rsUros/melodic/yujin_ocsrtassh }ruh }rvh}rwh]rxUros-melodic-yocs-controllersryassshˆh}rzh}r{h}r|h]r}jyasssh}r~h}rh}r€h]rjyasssuUunique_identifierr‚}rƒ(h}r„h}r…h]r†Uros/melodic/unique_identifierr‡assh }rˆh }r‰h}rŠh]r‹Uros-melodic-unique-identifierrŒassshˆh}rh}rŽh}rh]rjŒasssh}r‘h}r’h}r“h]r”jŒasssuUddynamic_reconfigure_pythonr•}r–(h}r—h}r˜h]r™U'ros/melodic/ddynamic_reconfigure_pythonršassh }r›h }rœh}rh]ržU'ros-melodic-ddynamic-reconfigure-pythonrŸassshˆh}r h}r¡h}r¢h]r£jŸasssh}r¤h}r¥h}r¦h]r§jŸasssuUinteractive_marker_tutorialsr¨}r©(h}rªh}r«h]r¬U#ros/melodic/visualization_tutorialsr­assh }r®h }r¯h}r°h]r±U(ros-melodic-interactive-marker-tutorialsr²assshˆh}r³h}r´h}rµh]r¶j²asssh}r·h}r¸h}r¹h]rºj²asssuUteb_local_planner_tutorialsr»}r¼(h}r½h}r¾h]r¿U'ros/melodic/teb_local_planner_tutorialsrÀassh }rÁh }rÂh}rÃh]rÄU'ros-melodic-teb-local-planner-tutorialsrÅassshˆh}rÆh}rÇh}rÈh]rÉjÅasssh}rÊh}rËh}rÌh]rÍjÅasssuUomron_os32c_driverrÎ}rÏ(h}rÐh}rÑh]rÒUros/melodic/omron_os32c_driverrÓassh }rÔh }rÕh}rÖh]r×Uros-melodic-omron-os32c-driverrØassshˆh}rÙh}rÚh}rÛh]rÜjØasssh}rÝh}rÞh}rßh]ràjØasssuU sensor_msgsrá}râ(h}rãh}räh]råUros/melodic/common_msgsræassh }rçh }rèh}réh]rêUros-melodic-sensor-msgsrëassshˆh}rìh}ríh}rîh]rïjëasssh}rðh}rñh}ròh]rójëasssuUrealtime_toolsrô}rõ(h}röh}r÷h]røUros/melodic/realtime_toolsrùassh }rúh }rûh}rüh]rýUros-melodic-realtime-toolsrþassshˆh}rÿh}rh}rh]rjþasssh}rh}rh}rh]rjþasssuU rqt_launchr}r(h}r h}r h]r Uros/melodic/rqt_launchr assh }r h }rh}rh]rUros-melodic-rqt-launchrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUjsk_recognition_msgsr}r(h}rh}rh]rUros/melodic/jsk_recognitionrassh }r h }r!h}r"h]r#U ros-melodic-jsk-recognition-msgsr$assshˆh}r%h}r&h}r'h]r(j$asssh}r)h}r*h}r+h]r,j$asssuUcob_control_msgsr-}r.(h}r/h}r0h]r1Uros/melodic/cob_controlr2assh }r3h }r4h}r5h]r6Uros-melodic-cob-control-msgsr7assshˆh}r8h}r9h}r:h]r;j7asssh}r<h}r=h}r>h]r?j7asssuUrtctreer@}rA(h}rBh}rCh]rDUros/melodic/rtctreerEassh }rFh }rGh}rHh]rIUros-melodic-rtctreerJassshˆh}rKh}rLh}rMh]rNjJasssh}rOh}rPh}rQh]rRjJasssuUrospy_message_converterrS}rT(h}rUh}rVh]rWU#ros/melodic/rospy_message_converterrXassh }rYh }rZh}r[h]r\U#ros-melodic-rospy-message-converterr]assshˆh}r^h}r_h}r`h]raj]asssh}rbh}rch}rdh]rej]asssuUmkrf}rg(h}rhh}rih]rjUros/melodic/rosrkassh }rlh }rmh}rnh]roUros-melodic-mkrpassshˆh}rqh}rrh}rsh]rtjpasssh}ruh}rvh}rwh]rxjpasssuUusb_cam_controllersry}rz(h}r{h}r|h]r}Uros/melodic/usb_cam_hardwarer~assh }rh }r€h}rh]r‚Uros-melodic-usb-cam-controllersrƒassshˆh}r„h}r…h}r†h]r‡jƒasssh}rˆh}r‰h}rŠh]r‹jƒasssuUgeometryrŒ}r(h}rŽh}rh]rUros/melodic/geometryr‘assh }r’h }r“h}r”h]r•Uros-melodic-geometryr–assshˆh}r—h}r˜h}r™h]ršj–asssh}r›h}rœh}rh]ržj–asssuUmaster_sync_fkierŸ}r (h}r¡h}r¢h]r£Uros/melodic/multimaster_fkier¤assh }r¥h }r¦h}r§h]r¨Uros-melodic-master-sync-fkier©assshˆh}rªh}r«h}r¬h]r­j©asssh}r®h}r¯h}r°h]r±j©asssuUcob_trajectory_controllerr²}r³(h}r´h}rµh]r¶Uros/melodic/cob_controlr·assh }r¸h }r¹h}rºh]r»U%ros-melodic-cob-trajectory-controllerr¼assshˆh}r½h}r¾h}r¿h]rÀj¼asssh}rÁh}rÂh}rÃh]rÄj¼asssuUrc_cloud_accumulatorrÅ}rÆ(h}rÇh}rÈh]rÉU ros/melodic/rc_cloud_accumulatorrÊassh }rËh }rÌh}rÍh]rÎU ros-melodic-rc-cloud-accumulatorrÏassshˆh}rÐh}rÑh}rÒh]rÓjÏasssh}rÔh}rÕh}rÖh]r×jÏasssuUwave_gazebo_pluginsrØ}rÙ(h}rÚh}rÛh]rÜUros/melodic/vrxrÝassh }rÞh }rßh}ràh]ráUros-melodic-wave-gazebo-pluginsrâassshˆh}rãh}räh}råh]ræjâasssh}rçh}rèh}réh]rêjâasssuUdataspeed_can_toolsrë}rì(h}ríh}rîh]rïUros/melodic/dataspeed_canrðassh }rñh }ròh}róh]rôUros-melodic-dataspeed-can-toolsrõassshˆh}röh}r÷h}røh]rùjõasssh}rúh}rûh}rüh]rýjõasssuUnmea_to_geoposerþ}rÿ(h}rh}rh]rUros/melodic/nmea_to_geoposerassh }rh }rh}rh]rUros-melodic-nmea-to-geoposerassshˆh}r h}r h}r h]r jasssh}r h}rh}rh]rjasssuUuuv_gazebo_ros_plugins_msgsr}r(h}rh}rh]rUros/melodic/uuv_simulatorrassh }rh }rh}rh]rU'ros-melodic-uuv-gazebo-ros-plugins-msgsrassshˆh}rh}rh}rh]rjasssh}r h}r!h}r"h]r#jasssuUswri_serial_utilr$}r%(h}r&h}r'h]r(Uros/melodic/marti_commonr)assh }r*h }r+h}r,h]r-Uros-melodic-swri-serial-utilr.assshˆh}r/h}r0h}r1h]r2j.asssh}r3h}r4h}r5h]r6j.asssuUarbotixr7}r8(h}r9h}r:h]r;Uros/melodic/arbotixr<assh }r=h }r>h}r?h]r@Uros-melodic-arbotixrAassshˆh}rBh}rCh}rDh]rEjAasssh}rFh}rGh}rHh]rIjAasssuU nerian_stereorJ}rK(h}rLh}rMh]rNUros/melodic/nerian_stereorOassh }rPh }rQh}rRh]rSUros-melodic-nerian-stereorTassshˆh}rUh}rVh}rWh]rXjTasssh}rYh}rZh}r[h]r\jTasssuUecl_ipcr]}r^(h}r_h}r`h]raUros/melodic/ecl_corerbassh }rch }rdh}reh]rfUros-melodic-ecl-ipcrgassshˆh}rhh}rih}rjh]rkjgasssh}rlh}rmh}rnh]rojgasssuUinteractive_marker_twist_serverrp}rq(h}rrh}rsh]rtU+ros/melodic/interactive_marker_twist_serverruassh }rvh }rwh}rxh]ryU+ros-melodic-interactive-marker-twist-serverrzassshˆh}r{h}r|h}r}h]r~jzasssh}rh}r€h}rh]r‚jzasssuUgscamrƒ}r„(h}r…h}r†h]r‡Uros/melodic/gscamrˆassh }r‰h }rŠh}r‹h]rŒUros-melodic-gscamrassshˆh}rŽh}rh}rh]r‘jasssh}r’h}r“h}r”h]r•jasssuU uvc_camerar–}r—(h}r˜h}r™h]ršUros/melodic/camera_umdr›assh }rœh }rh}ržh]rŸUros-melodic-uvc-camerar assshˆh}r¡h}r¢h}r£h]r¤j asssh}r¥h}r¦h}r§h]r¨j asssuUjsk_network_toolsr©}rª(h}r«h}r¬h]r­Uros/melodic/jsk_commonr®assh }r¯h }r°h}r±h]r²Uros-melodic-jsk-network-toolsr³assshˆh}r´h}rµh}r¶h]r·j³asssh}r¸h}r¹h}rºh]r»j³asssuUcloudwatch_loggerr¼}r½(h}r¾h}r¿h]rÀUros/melodic/cloudwatch_loggerrÁassh }rÂh }rÃh}rÄh]rÅUros-melodic-cloudwatch-loggerrÆassshˆh}rÇh}rÈh}rÉh]rÊjÆasssh}rËh}rÌh}rÍh]rÎjÆasssuU fiducialsrÏ}rÐ(h}rÑh}rÒh]rÓUros/melodic/fiducialsrÔassh }rÕh }rÖh}r×h]rØUros-melodic-fiducialsrÙassshˆh}rÚh}rÛh}rÜh]rÝjÙasssh}rÞh}rßh}ràh]rájÙasssuUmrpt_graphslam_2drâ}rã(h}räh}råh]ræUros/melodic/mrpt_slamrçassh }rèh }réh}rêh]rëUros-melodic-mrpt-graphslam-2drìassshˆh}ríh}rîh}rïh]rðjìasssh}rñh}ròh}róh]rôjìasssuUlaser_assemblerrõ}rö(h}r÷h}røh]rùUros/melodic/laser_assemblerrúassh }rûh }rüh}rýh]rþUros-melodic-laser-assemblerrÿassshˆh}rh}rh}rh]rjÿasssh}rh}rh}rh]rjÿasssuUurg_cr}r (h}r h}r h]r Uros/melodic/urg_cr assh }rh }rh}rh]rUros-melodic-urg-crassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUmarti_data_structuresr}r(h}rh}rh]rUros/melodic/marti_commonr assh }r!h }r"h}r#h]r$U!ros-melodic-marti-data-structuresr%assshˆh}r&h}r'h}r(h]r)j%asssh}r*h}r+h}r,h]r-j%asssuUaccess_point_controlr.}r/(h}r0h}r1h]r2Uros/melodic/linux_networkingr3assh }r4h }r5h}r6h]r7U ros-melodic-access-point-controlr8assshˆh}r9h}r:h}r;h]r<j8asssh}r=h}r>h}r?h]r@j8asssuUmoveit_ros_perceptionrA}rB(h}rCh}rDh]rEUros/melodic/moveitrFassh }rGh }rHh}rIh]rJU!ros-melodic-moveit-ros-perceptionrKassshˆh}rLh}rMh}rNh]rOjKasssh}rPh}rQh}rRh]rSjKasssuUopen_manipulator_moveitrT}rU(h}rVh}rWh]rXUros/melodic/open_manipulatorrYassh }rZh }r[h}r\h]r]U#ros-melodic-open-manipulator-moveitr^assshˆh}r_h}r`h}rah]rbj^asssh}rch}rdh}reh]rfj^asssuUdistance_map_deadreckrg}rh(h}rih}rjh]rkUros/melodic/distance_maprlassh }rmh }rnh}roh]rpU!ros-melodic-distance-map-deadreckrqassshˆh}rrh}rsh}rth]rujqasssh}rvh}rwh}rxh]ryjqasssuUderived_object_msgsrz}r{(h}r|h}r}h]r~Uros/melodic/astuff_sensor_msgsrassh }r€h }rh}r‚h]rƒUros-melodic-derived-object-msgsr„assshˆh}r…h}r†h}r‡h]rˆj„asssh}r‰h}rŠh}r‹h]rŒj„asssuUddynamic_reconfigurer}rŽ(h}rh}rh]r‘U ros/melodic/ddynamic_reconfigurer’assh }r“h }r”h}r•h]r–U ros-melodic-ddynamic-reconfigurer—assshˆh}r˜h}r™h}ršh]r›j—asssh}rœh}rh}ržh]rŸj—asssuU rxcpp_vendorr }r¡(h}r¢h}r£h]r¤Uros/melodic/rxcpp_vendorr¥assh }r¦h }r§h}r¨h]r©Uros-melodic-rxcpp-vendorrªassshˆh}r«h}r¬h}r­h]r®jªasssh}r¯h}r°h}r±h]r²jªasssuUmarti_visualization_msgsr³}r´(h}rµh}r¶h]r·Uros/melodic/marti_messagesr¸assh }r¹h }rºh}r»h]r¼U$ros-melodic-marti-visualization-msgsr½assshˆh}r¾h}r¿h}rÀh]rÁj½asssh}rÂh}rÃh}rÄh]rÅj½asssuU nodelet_corerÆ}rÇ(h}rÈh}rÉh]rÊUros/melodic/nodelet_corerËassh }rÌh }rÍh}rÎh]rÏUros-melodic-nodelet-corerÐassshˆh}rÑh}rÒh}rÓh]rÔjÐasssh}rÕh}rÖh}r×h]rØjÐasssuUhealth_metric_collectorrÙ}rÚ(h}rÛh}rÜh]rÝU#ros/melodic/health_metric_collectorrÞassh }rßh }ràh}ráh]râU#ros-melodic-health-metric-collectorrãassshˆh}räh}råh}ræh]rçjãasssh}rèh}réh}rêh]rëjãasssuUqb_chain_descriptionrì}rí(h}rîh}rïh]rðUros/melodic/qb_chainrñassh }ròh }róh}rôh]rõU ros-melodic-qb-chain-descriptionröassshˆh}r÷h}røh}rùh]rújöasssh}rûh}rüh}rýh]rþjöasssuUomplrÿ}r(h}rh}rh]rUros/melodic/omplrassh }rh }rh}rh]rUros-melodic-omplr assshˆh}r h}r h}r h]r j asssh}rh}rh}rh]rj asssuUradar_omnipresenser}r(h}rh}rh]rUros/melodic/radar_omnipresenserassh }rh }rh}rh]rUros-melodic-radar-omnipresenserassshˆh}rh}rh}rh]r jasssh}r!h}r"h}r#h]r$jasssuUroscpp_serializationr%}r&(h}r'h}r(h]r)Uros/melodic/roscpp_corer*assh }r+h }r,h}r-h]r.U ros-melodic-roscpp-serializationr/assshˆh}r0h}r1h}r2h]r3j/asssh}r4h}r5h}r6h]r7j/asssuUtuw_marker_detectionr8}r9(h}r:h}r;h]r<U ros/melodic/tuw_marker_detectionr=assh }r>h }r?h}r@h]rAU ros-melodic-tuw-marker-detectionrBassshˆh}rCh}rDh}rEh]rFjBasssh}rGh}rHh}rIh]rJjBasssuUfsrobo_rrK}rL(h}rMh}rNh]rOUros/melodic/fsrobo_rrPassh }rQh }rRh}rSh]rTUros-melodic-fsrobo-rrUassshˆh}rVh}rWh}rXh]rYjUasssh}rZh}r[h}r\h]r]jUasssuU libmavconnr^}r_(h}r`h}rah]rbUros/melodic/mavrosrcassh }rdh }reh}rfh]rgUros-melodic-libmavconnrhassshˆh}rih}rjh}rkh]rljhasssh}rmh}rnh}roh]rpjhasssuUps3joyrq}rr(h}rsh}rth]ruUros/melodic/joystick_driversrvassh }rwh }rxh}ryh]rzUros-melodic-ps3joyr{assshˆh}r|h}r}h}r~h]rj{asssh}r€h}rh}r‚h]rƒj{asssuUdefault_cfg_fkier„}r…(h}r†h}r‡h]rˆUros/melodic/multimaster_fkier‰assh }rŠh }r‹h}rŒh]rUros-melodic-default-cfg-fkierŽassshˆh}rh}rh}r‘h]r’jŽasssh}r“h}r”h}r•h]r–jŽasssuU kobuki_driverr—}r˜(h}r™h}ršh]r›Uros/melodic/kobuki_corerœassh }rh }ržh}rŸh]r Uros-melodic-kobuki-driverr¡assshˆh}r¢h}r£h}r¤h]r¥j¡asssh}r¦h}r§h}r¨h]r©j¡asssuU openrtm_aistrª}r«(h}r¬h}r­h]r®Uros/melodic/openrtm_aistr¯assh }r°h }r±h}r²h]r³Uros-melodic-openrtm-aistr´assshˆh}rµh}r¶h}r·h]r¸j´asssh}r¹h}rºh}r»h]r¼j´asssuUdbw_fca_joystick_demor½}r¾(h}r¿h}rÀh]rÁUros/melodic/dbw_fca_rosrÂassh }rÃh }rÄh}rÅh]rÆU!ros-melodic-dbw-fca-joystick-demorÇassshˆh}rÈh}rÉh}rÊh]rËjÇasssh}rÌh}rÍh}rÎh]rÏjÇasssuU costmap_2drÐ}rÑ(h}rÒh}rÓh]rÔUros/melodic/navigationrÕassh }rÖh }r×h}rØh]rÙUros-melodic-costmap-2drÚassshˆh}rÛh}rÜh}rÝh]rÞjÚasssh}rßh}ràh}ráh]râjÚasssuU wave_gazeborã}rä(h}råh}ræh]rçUros/melodic/vrxrèassh }réh }rêh}rëh]rìUros-melodic-wave-gazeboríassshˆh}rîh}rïh}rðh]rñjíasssh}ròh}róh}rôh]rõjíasssuUmoveit_ros_robot_interactionrö}r÷(h}røh}rùh]rúUros/melodic/moveitrûassh }rüh }rýh}rþh]rÿU(ros-melodic-moveit-ros-robot-interactionr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuU nav_2d_utilsr }r (h}r h}r h]r Uros/melodic/robot_navigationr assh }r h }r h}r h]r Uros-melodic-nav-2d-utilsr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuU assimp_develr }r (h}r h}r h]r Uros/melodic/jsk_3rdpartyr! assh }r" h }r# h}r$ h]r% Uros-melodic-assimp-develr& assshˆh}r' h}r( h}r) h]r* j& asssh}r+ h}r, h}r- h]r. j& asssuUpr2_navigation_teleopr/ }r0 (h}r1 h}r2 h]r3 Uros/melodic/pr2_navigationr4 assh }r5 h }r6 h}r7 h]r8 U!ros-melodic-pr2-navigation-teleopr9 assshˆh}r: h}r; h}r< h]r= j9 asssh}r> h}r? h}r@ h]rA j9 asssuU turtlebot3rB }rC (h}rD h}rE h]rF Uros/melodic/turtlebot3rG assh }rH h }rI h}rJ h]rK Uros-melodic-turtlebot3rL assshˆh}rM h}rN h}rO h]rP jL asssh}rQ h}rR h}rS h]rT jL asssuUrotors_joy_interfacerU }rV (h}rW h}rX h]rY Uros/melodic/rotors_simulatorrZ assh }r[ h }r\ h}r] h]r^ U ros-melodic-rotors-joy-interfacer_ assshˆh}r` h}ra h}rb h]rc j_ asssh}rd h}re h}rf h]rg j_ asssuU pluginlibrh }ri (h}rj h}rk h]rl Uros/melodic/pluginlibrm assh }rn h }ro h}rp h]rq Uros-melodic-pluginlibrr assshˆh}rs h}rt h}ru h]rv jr asssh}rw h}rx h}ry h]rz jr asssuU flexbe_corer{ }r| (h}r} h}r~ h]r Uros/melodic/flexber€ assh }r h }r‚ h}rƒ h]r„ Uros-melodic-flexbe-corer… assshˆh}r† h}r‡ h}rˆ h]r‰ j… asssh}rŠ h}r‹ h}rŒ h]r j… asssuU leg_detectorrŽ }r (h}r h}r‘ h]r’ Uros/melodic/peopler“ assh }r” h }r• h}r– h]r— Uros-melodic-leg-detectorr˜ assshˆh}r™ h}rš h}r› h]rœ j˜ asssh}r h}rž h}rŸ h]r  j˜ asssuU rosdoc_liter¡ }r¢ (h}r£ h}r¤ h]r¥ Uros/melodic/rosdoc_liter¦ assh }r§ h }r¨ h}r© h]rª Uros-melodic-rosdoc-liter« assshˆh}r¬ h}r­ h}r® h]r¯ j« asssh}r° h}r± h}r² h]r³ j« asssuUturtlebot3_autorace_corer´ }rµ (h}r¶ h}r· h]r¸ Uros/melodic/turtlebot3_autoracer¹ assh }rº h }r» h}r¼ h]r½ U$ros-melodic-turtlebot3-autorace-corer¾ assshˆh}r¿ h}rÀ h}rÁ h]r j¾ asssh}rà h}rÄ h}rÅ h]rÆ j¾ asssuU test_mavrosrÇ }rÈ (h}rÉ h}rÊ h]rË Uros/melodic/mavrosrÌ assh }rÍ h }rÎ h}rÏ h]rÐ Uros-melodic-test-mavrosrÑ assshˆh}rÒ h}rÓ h}rÔ h]rÕ jÑ asssh}rÖ h}r× h}rØ h]rÙ jÑ asssuU abseil_cpprÚ }rÛ (h}rÜ h}rÝ h]rÞ Uros/melodic/abseil_cpprß assh }rà h }rá h}râ h]rã Uros-melodic-abseil-cpprä assshˆh}rå h}ræ h}rç h]rè jä asssh}ré h}rê h}rë h]rì jä asssuUsophusrí }rî (h}rï h}rð h]rñ Uros/melodic/sophusrò assh }ró h }rô h}rõ h]rö Uros-melodic-sophusr÷ assshˆh}rø h}rù h}rú h]rû j÷ asssh}rü h}rý h}rþ h]rÿ j÷ asssuUrotors_descriptionr }r (h}r h}r h]r Uros/melodic/rotors_simulatorr assh }r h }r h}r h]r Uros-melodic-rotors-descriptionr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuUyocs_navi_toolkitr }r (h}r h}r h]r Uros/melodic/yujin_ocsr assh }r h }r h}r h]r Uros-melodic-yocs-navi-toolkitr assshˆh}r h}r h}r h]r! j asssh}r" h}r# h}r$ h]r% j asssuUbondr& }r' (h}r( h}r) h]r* Uros/melodic/bond_corer+ assh }r, h }r- h}r. h]r/ Uros-melodic-bondr0 assshˆh}r1 h}r2 h}r3 h]r4 j0 asssh}r5 h}r6 h}r7 h]r8 j0 asssuUoctomap_rviz_pluginsr9 }r: (h}r; h}r< h]r= U ros/melodic/octomap_rviz_pluginsr> assh }r? h }r@ h}rA h]rB U ros-melodic-octomap-rviz-pluginsrC assshˆh}rD h}rE h}rF h]rG jC asssh}rH h}rI h}rJ h]rK jC asssuU wu_ros_toolsrL }rM (h}rN h}rO h]rP Uros/melodic/wu_ros_toolsrQ assh }rR h }rS h}rT h]rU Uros-melodic-wu-ros-toolsrV assshˆh}rW h}rX h}rY h]rZ jV asssh}r[ h}r\ h}r] h]r^ jV asssuU jsk_pr2eusr_ }r` (h}ra h}rb h]rc Uros/melodic/jsk_pr2eusrd assh }re h }rf h}rg h]rh Uros-melodic-jsk-pr2eusri assshˆh}rj h}rk h}rl h]rm ji asssh}rn h}ro h}rp h]rq ji asssuUainstein_radar_driversrr }rs (h}rt h}ru h]rv Uros/melodic/ainstein_radarrw assh }rx h }ry h}rz h]r{ U"ros-melodic-ainstein-radar-driversr| assshˆh}r} h}r~ h}r h]r€ j| asssh}r h}r‚ h}rƒ h]r„ j| asssuUarbotix_firmwarer… }r† (h}r‡ h}rˆ h]r‰ Uros/melodic/arbotixrŠ assh }r‹ h }rŒ h}r h]rŽ Uros-melodic-arbotix-firmwarer assshˆh}r h}r‘ h}r’ h]r“ j asssh}r” h}r• h}r– h]r— j asssuUhector_geotiffr˜ }r™ (h}rš h}r› h]rœ Uros/melodic/hector_slamr assh }rž h }rŸ h}r  h]r¡ Uros-melodic-hector-geotiffr¢ assshˆh}r£ h}r¤ h}r¥ h]r¦ j¢ asssh}r§ h}r¨ h}r© h]rª j¢ asssuU cob_lightr« }r¬ (h}r­ h}r® h]r¯ Uros/melodic/cob_driverr° assh }r± h }r² h}r³ h]r´ Uros-melodic-cob-lightrµ assshˆh}r¶ h}r· h}r¸ h]r¹ jµ asssh}rº h}r» h}r¼ h]r½ jµ asssuUjackal_navigationr¾ }r¿ (h}rÀ h}rÁ h]r Uros/melodic/jackalrà assh }rÄ h }rÅ h}rÆ h]rÇ Uros-melodic-jackal-navigationrÈ assshˆh}rÉ h}rÊ h}rË h]rÌ jÈ asssh}rÍ h}rÎ h}rÏ h]rÐ jÈ asssuU mbf_utilityrÑ }rÒ (h}rÓ h}rÔ h]rÕ Uros/melodic/move_base_flexrÖ assh }r× h }rØ h}rÙ h]rÚ Uros-melodic-mbf-utilityrÛ assshˆh}rÜ h}rÝ h}rÞ h]rß jÛ asssh}rà h}rá h}râ h]rã jÛ asssuUswri_profiler_toolsrä }rå (h}ræ h}rç h]rè Uros/melodic/swri_profilerré assh }rê h }rë h}rì h]rí Uros-melodic-swri-profiler-toolsrî assshˆh}rï h}rð h}rñ h]rò jî asssh}ró h}rô h}rõ h]rö jî asssuUmrpt_ekf_slam_3dr÷ }rø (h}rù h}rú h]rû Uros/melodic/mrpt_slamrü assh }rý h }rþ h}rÿ h]r Uros-melodic-mrpt-ekf-slam-3dr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuUrvizr }r (h}r h}r h]r Uros/melodic/rvizr assh }r h }r h}r h]r Uros-melodic-rvizr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuUflir_boson_usbr }r (h}r h}r h]r! Uros/melodic/flir_boson_usbr" assh }r# h }r$ h}r% h]r& Uros-melodic-flir-boson-usbr' assshˆh}r( h}r) h}r* h]r+ j' asssh}r, h}r- h}r. h]r/ j' asssuUdistance_map_corer0 }r1 (h}r2 h}r3 h]r4 Uros/melodic/distance_mapr5 assh }r6 h }r7 h}r8 h]r9 Uros-melodic-distance-map-corer: assshˆh}r; h}r< h}r= h]r> j: asssh}r? h}r@ h}rA h]rB j: asssuU laser_filtersrC }rD (h}rE h}rF h]rG Uros/melodic/laser_filtersrH assh }rI h }rJ h}rK h]rL Uros-melodic-laser-filtersrM assshˆh}rN h}rO h}rP h]rQ jM asssh}rR h}rS h}rT h]rU jM asssuUum7rV }rW (h}rX h}rY h]rZ Uros/melodic/um7r[ assh }r\ h }r] h}r^ h]r_ Uros-melodic-um7r` assshˆh}ra h}rb h}rc h]rd j` asssh}re h}rf h}rg h]rh j` asssuUcob_calibration_datari }rj (h}rk h}rl h]rm U ros/melodic/cob_calibration_datarn assh }ro h }rp h}rq h]rr U ros-melodic-cob-calibration-datars assshˆh}rt h}ru h}rv h]rw js asssh}rx h}ry h}rz h]r{ js asssuUopen_manipulator_with_tb3r| }r} (h}r~ h}r h]r€ U%ros/melodic/open_manipulator_with_tb3r assh }r‚ h }rƒ h}r„ h]r… U%ros-melodic-open-manipulator-with-tb3r† assshˆh}r‡ h}rˆ h}r‰ h]rŠ j† asssh}r‹ h}rŒ h}r h]rŽ j† asssuU perceptionr }r (h}r‘ h}r’ h]r“ Uros/melodic/metapackagesr” assh }r• h }r– h}r— h]r˜ Uros-melodic-perceptionr™ assshˆh}rš h}r› h}rœ h]r j™ asssh}rž h}rŸ h}r  h]r¡ j™ asssuU exotica_corer¢ }r£ (h}r¤ h}r¥ h]r¦ Uros/melodic/exoticar§ assh }r¨ h }r© h}rª h]r« Uros-melodic-exotica-corer¬ assshˆh}r­ h}r® h}r¯ h]r° j¬ asssh}r± h}r² h}r³ h]r´ j¬ asssuUfreight_bringuprµ }r¶ (h}r· h}r¸ h]r¹ Uros/melodic/fetch_robotsrº assh }r» h }r¼ h}r½ h]r¾ Uros-melodic-freight-bringupr¿ assshˆh}rÀ h}rÁ h}r h]rà j¿ asssh}rÄ h}rÅ h}rÆ h]rÇ j¿ asssuU catch_rosrÈ }rÉ (h}rÊ h}rË h]rÌ Uros/melodic/catch_rosrÍ assh }rÎ h }rÏ h}rÐ h]rÑ Uros-melodic-catch-rosrÒ assshˆh}rÓ h}rÔ h}rÕ h]rÖ jÒ asssh}r× h}rØ h}rÙ h]rÚ jÒ asssuUpepperl_fuchs_r2000rÛ }rÜ (h}rÝ h}rÞ h]rß Uros/melodic/pepperl_fuchsrà assh }rá h }râ h}rã h]rä Uros-melodic-pepperl-fuchs-r2000rå assshˆh}ræ h}rç h}rè h]ré jå asssh}rê h}rë h}rì h]rí jå asssuU flatbuffersrî }rï (h}rð h}rñ h]rò Uros/melodic/flatbuffersró assh }rô h }rõ h}rö h]r÷ Uros-melodic-flatbuffersrø assshˆh}rù h}rú h}rû h]rü jø asssh}rý h}rþ h}rÿ h]r jø asssuUindustrial_robot_simulatorr }r (h}r h}r h]r Uros/melodic/industrial_corer assh }r h }r h}r h]r U&ros-melodic-industrial-robot-simulatorr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuUopen_manipulator_libsr }r (h}r h}r h]r Uros/melodic/open_manipulatorr assh }r h }r h}r h]r U!ros-melodic-open-manipulator-libsr assshˆh}r h}r h}r! h]r" j asssh}r# h}r$ h}r% h]r& j asssuU rocon_ebnfr' }r( (h}r) h}r* h]r+ Uros/melodic/rocon_toolsr, assh }r- h }r. h}r/ h]r0 Uros-melodic-rocon-ebnfr1 assshˆh}r2 h}r3 h}r4 h]r5 j1 asssh}r6 h}r7 h}r8 h]r9 j1 asssuUpr2_gripper_actionr: }r; (h}r< h}r= h]r> Uros/melodic/pr2_controllersr? assh }r@ h }rA h}rB h]rC Uros-melodic-pr2-gripper-actionrD assshˆh}rE h}rF h}rG h]rH jD asssh}rI h}rJ h}rK h]rL jD asssuU cob_soundrM }rN (h}rO h}rP h]rQ Uros/melodic/cob_driverrR assh }rS h }rT h}rU h]rV Uros-melodic-cob-soundrW assshˆh}rX h}rY h}rZ h]r[ jW asssh}r\ h}r] h}r^ h]r_ jW asssuUpr2_controllers_msgsr` }ra (h}rb h}rc h]rd Uros/melodic/pr2_controllersre assh }rf h }rg h}rh h]ri U ros-melodic-pr2-controllers-msgsrj assshˆh}rk h}rl h}rm h]rn jj asssh}ro h}rp h}rq h]rr jj asssuUtf2_geometry_msgsrs }rt (h}ru h}rv h]rw Uros/melodic/geometry2rx assh }ry h }rz h}r{ h]r| Uros-melodic-tf2-geometry-msgsr} assshˆh}r~ h}r h}r€ h]r j} asssh}r‚ h}rƒ h}r„ h]r… j} asssuUcob_footprint_observerr† }r‡ (h}rˆ h}r‰ h]rŠ Uros/melodic/cob_controlr‹ assh }rŒ h }r h}rŽ h]r U"ros-melodic-cob-footprint-observerr assshˆh}r‘ h}r’ h}r“ h]r” j asssh}r• h}r– h}r— h]r˜ j asssuUroslz4r™ }rš (h}r› h}rœ h]r Uros/melodic/ros_commrž assh }rŸ h }r  h}r¡ h]r¢ Uros-melodic-roslz4r£ assshˆh}r¤ h}r¥ h}r¦ h]r§ j£ asssh}r¨ h}r© h}rª h]r« j£ asssuUpr2_mechanism_controllersr¬ }r­ (h}r® h}r¯ h]r° Uros/melodic/pr2_controllersr± assh }r² h }r³ h}r´ h]rµ U%ros-melodic-pr2-mechanism-controllersr¶ assshˆh}r· h}r¸ h}r¹ h]rº j¶ asssh}r» h}r¼ h}r½ h]r¾ j¶ asssuUstd_capabilitiesr¿ }rÀ (h}rÁ h}r h]rà Uros/melodic/std_capabilitiesrÄ assh }rÅ h }rÆ h}rÇ h]rÈ Uros-melodic-std-capabilitiesrÉ assshˆh}rÊ h}rË h}rÌ h]rÍ jÉ asssh}rÎ h}rÏ h}rÐ h]rÑ jÉ asssuU allocatorsrÒ }rÓ (h}rÔ h}rÕ h]rÖ Uros/melodic/ros_realtimer× assh }rØ h }rÙ h}rÚ h]rÛ Uros-melodic-allocatorsrÜ assshˆh}rÝ h}rÞ h}rß h]rà jÜ asssh}rá h}râ h}rã h]rä jÜ asssuUturtlebot3_gazeborå }ræ (h}rç h}rè h]ré U"ros/melodic/turtlebot3_simulationsrê assh }rë h }rì h}rí h]rî Uros-melodic-turtlebot3-gazeborï assshˆh}rð h}rñ h}rò h]ró jï asssh}rô h}rõ h}rö h]r÷ jï asssuUtrajectory_msgsrø }rù (h}rú h}rû h]rü Uros/melodic/common_msgsrý assh }rþ h }rÿ h}r h]r Uros-melodic-trajectory-msgsr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuU rqt_rotorsr }r (h}r h}r h]r Uros/melodic/rotors_simulatorr assh }r h }r h}r h]r Uros-melodic-rqt-rotorsr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuU app_managerr }r (h}r h}r! h]r" Uros/melodic/app_managerr# assh }r$ h }r% h}r& h]r' Uros-melodic-app-managerr( assshˆh}r) h}r* h}r+ h]r, j( asssh}r- h}r. h}r/ h]r0 j( asssuUkinesis_video_msgsr1 }r2 (h}r3 h}r4 h]r5 U"ros/melodic/kinesis_video_streamerr6 assh }r7 h }r8 h}r9 h]r: Uros-melodic-kinesis-video-msgsr; assshˆh}r< h}r= h}r> h]r? j; asssh}r@ h}rA h}rB h]rC j; asssuUrobot_navigationrD }rE (h}rF h}rG h]rH Uros/melodic/robot_navigationrI assh }rJ h }rK h}rL h]rM Uros-melodic-robot-navigationrN assshˆh}rO h}rP h}rQ h]rR jN asssh}rS h}rT h}rU h]rV jN asssuUrslidar_pointcloudrW }rX (h}rY h}rZ h]r[ Uros/melodic/robosenser\ assh }r] h }r^ h}r_ h]r` Uros-melodic-rslidar-pointcloudra assshˆh}rb h}rc h}rd h]re ja asssh}rf h}rg h}rh h]ri ja asssuUimage_publisherrj }rk (h}rl h}rm h]rn Uros/melodic/image_pipelinero assh }rp h }rq h}rr h]rs Uros-melodic-image-publisherrt assshˆh}ru h}rv h}rw h]rx jt asssh}ry h}rz h}r{ h]r| jt asssuU marker_msgsr} }r~ (h}r h}r€ h]r Uros/melodic/marker_msgsr‚ assh }rƒ h }r„ h}r… h]r† Uros-melodic-marker-msgsr‡ assshˆh}rˆ h}r‰ h}rŠ h]r‹ j‡ asssh}rŒ h}r h}rŽ h]r j‡ asssuU husky_robotr }r‘ (h}r’ h}r“ h]r” Uros/melodic/huskyr• assh }r– h }r— h}r˜ h]r™ Uros-melodic-husky-robotrš assshˆh}r› h}rœ h}r h]rž jš asssh}rŸ h}r  h}r¡ h]r¢ jš asssuU people_msgsr£ }r¤ (h}r¥ h}r¦ h]r§ Uros/melodic/peopler¨ assh }r© h }rª h}r« h]r¬ Uros-melodic-people-msgsr­ assshˆh}r® h}r¯ h}r° h]r± j­ asssh}r² h}r³ h}r´ h]rµ j­ asssuU pr2_gazebor¶ }r· (h}r¸ h}r¹ h]rº Uros/melodic/pr2_simulatorr» assh }r¼ h }r½ h}r¾ h]r¿ Uros-melodic-pr2-gazeborÀ assshˆh}rÁ h}r h}rà h]rÄ jÀ asssh}rÅ h}rÆ h}rÇ h]rÈ jÀ asssuUsafety_limiter_msgsrÉ }rÊ (h}rË h}rÌ h]rÍ Uros/melodic/neonavigation_msgsrÎ assh }rÏ h }rÐ h}rÑ h]rÒ Uros-melodic-safety-limiter-msgsrÓ assshˆh}rÔ h}rÕ h}rÖ h]r× jÓ asssh}rØ h}rÙ h}rÚ h]rÛ jÓ asssuU zeroconf_msgsrÜ }rÝ (h}rÞ h}rß h]rà Uros/melodic/zeroconf_msgsrá assh }râ h }rã h}rä h]rå Uros-melodic-zeroconf-msgsræ assshˆh}rç h}rè h}ré h]rê jæ asssh}rë h}rì h}rí h]rî jæ asssuUsainsmart_relay_usbrï }rð (h}rñ h}rò h]ró Uros/melodic/sainsmart_relay_usbrô assh }rõ h }rö h}r÷ h]rø Uros-melodic-sainsmart-relay-usbrù assshˆh}rú h}rû h}rü h]rý jù asssh}rþ h}rÿ h}rh]rjù asssuU jpeg_streamerr}r(h}rh}rh]rUros/melodic/camera_umdrassh }rh }r h}r h]r Uros-melodic-jpeg-streamerr assshˆh}r h}rh}rh]rj asssh}rh}rh}rh]rj asssuUuuv_world_ros_pluginsr}r(h}rh}rh]rUros/melodic/uuv_simulatorrassh }rh }rh}rh]rU!ros-melodic-uuv-world-ros-pluginsrassshˆh}r h}r!h}r"h]r#jasssh}r$h}r%h}r&h]r'jasssuUffhar(}r)(h}r*h}r+h]r,Uros/melodic/jsk_3rdpartyr-assh }r.h }r/h}r0h]r1Uros-melodic-ffhar2assshˆh}r3h}r4h}r5h]r6j2asssh}r7h}r8h}r9h]r:j2asssuU lex_commonr;}r<(h}r=h}r>h]r?Uros/melodic/lex_commonr@assh }rAh }rBh}rCh]rDUros-melodic-lex-commonrEassshˆh}rFh}rGh}rHh]rIjEasssh}rJh}rKh}rLh]rMjEasssuUecl_navigationrN}rO(h}rPh}rQh]rRUros/melodic/ecl_navigationrSassh }rTh }rUh}rVh]rWUros-melodic-ecl-navigationrXassshˆh}rYh}rZh}r[h]r\jXasssh}r]h}r^h}r_h]r`jXasssuU ecl_utilitiesra}rb(h}rch}rdh]reUros/melodic/ecl_corerfassh }rgh }rhh}rih]rjUros-melodic-ecl-utilitiesrkassshˆh}rlh}rmh}rnh]rojkasssh}rph}rqh}rrh]rsjkasssuUrqt_logger_levelrt}ru(h}rvh}rwh]rxUros/melodic/rqt_logger_levelryassh }rzh }r{h}r|h]r}Uros-melodic-rqt-logger-levelr~assshˆh}rh}r€h}rh]r‚j~asssh}rƒh}r„h}r…h]r†j~asssuU swri_roscppr‡}rˆ(h}r‰h}rŠh]r‹Uros/melodic/marti_commonrŒassh }rh }rŽh}rh]rUros-melodic-swri-roscppr‘assshˆh}r’h}r“h}r”h]r•j‘asssh}r–h}r—h}r˜h]r™j‘asssuUmoveit_ros_warehouserš}r›(h}rœh}rh]ržUros/melodic/moveitrŸassh }r h }r¡h}r¢h]r£U ros-melodic-moveit-ros-warehouser¤assshˆh}r¥h}r¦h}r§h]r¨j¤asssh}r©h}rªh}r«h]r¬j¤asssuU jointstickr­}r®(h}r¯h}r°h]r±Uros/melodic/jointstickr²assh }r³h }r´h}rµh]r¶Uros-melodic-jointstickr·assshˆh}r¸h}r¹h}rºh]r»j·asssh}r¼h}r½h}r¾h]r¿j·asssuUroseus_tutorialsrÀ}rÁ(h}rÂh}rÃh]rÄUros/melodic/jsk_roseusrÅassh }rÆh }rÇh}rÈh]rÉUros-melodic-roseus-tutorialsrÊassshˆh}rËh}rÌh}rÍh]rÎjÊasssh}rÏh}rÐh}rÑh]rÒjÊasssuUcob_msgsrÓ}rÔ(h}rÕh}rÖh]r×Uros/melodic/cob_commonrØassh }rÙh }rÚh}rÛh]rÜUros-melodic-cob-msgsrÝassshˆh}rÞh}rßh}ràh]rájÝasssh}râh}rãh}räh]råjÝasssuUmarti_status_msgsræ}rç(h}rèh}réh]rêUros/melodic/marti_messagesrëassh }rìh }ríh}rîh]rïUros-melodic-marti-status-msgsrðassshˆh}rñh}ròh}róh]rôjðasssh}rõh}röh}r÷h]røjðasssuUsmachrù}rú(h}rûh}rüh]rýUros/melodic/executive_smachrþassh }rÿh }rh}rh]rUros-melodic-smachrassshˆh}rh}rh}rh]rjasssh}rh}r h}r h]r jasssuUaudibot_gazebor }r (h}rh}rh]rUros/melodic/audibotrassh }rh }rh}rh]rUros-melodic-audibot-gazeborassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUtf2_sensor_msgsr}r (h}r!h}r"h]r#Uros/melodic/geometry2r$assh }r%h }r&h}r'h]r(Uros-melodic-tf2-sensor-msgsr)assshˆh}r*h}r+h}r,h]r-j)asssh}r.h}r/h}r0h]r1j)asssuUmecanum_gazebo_pluginr2}r3(h}r4h}r5h]r6Uros/melodic/ridgeback_simulatorr7assh }r8h }r9h}r:h]r;U!ros-melodic-mecanum-gazebo-pluginr<assshˆh}r=h}r>h}r?h]r@j<asssh}rAh}rBh}rCh]rDj<asssuUubiquity_motorrE}rF(h}rGh}rHh]rIUros/melodic/ubiquity_motorrJassh }rKh }rLh}rMh]rNUros-melodic-ubiquity-motorrOassshˆh}rPh}rQh}rRh]rSjOasssh}rTh}rUh}rVh]rWjOasssuUrosserial_xbeerX}rY(h}rZh}r[h]r\Uros/melodic/rosserialr]assh }r^h }r_h}r`h]raUros-melodic-rosserial-xbeerbassshˆh}rch}rdh}reh]rfjbasssh}rgh}rhh}rih]rjjbasssuUfranka_descriptionrk}rl(h}rmh}rnh]roUros/melodic/franka_rosrpassh }rqh }rrh}rsh]rtUros-melodic-franka-descriptionruassshˆh}rvh}rwh}rxh]ryjuasssh}rzh}r{h}r|h]r}juasssuUdistance_map_msgsr~}r(h}r€h}rh]r‚Uros/melodic/distance_maprƒassh }r„h }r…h}r†h]r‡Uros-melodic-distance-map-msgsrˆassshˆh}r‰h}rŠh}r‹h]rŒjˆasssh}rh}rŽh}rh]rjˆasssuUindustrial_msgsr‘}r’(h}r“h}r”h]r•Uros/melodic/industrial_corer–assh }r—h }r˜h}r™h]ršUros-melodic-industrial-msgsr›assshˆh}rœh}rh}ržh]rŸj›asssh}r h}r¡h}r¢h]r£j›asssuU uuv_gazebor¤}r¥(h}r¦h}r§h]r¨Uros/melodic/uuv_simulatorr©assh }rªh }r«h}r¬h]r­Uros-melodic-uuv-gazebor®assshˆh}r¯h}r°h}r±h]r²j®asssh}r³h}r´h}rµh]r¶j®asssuUoxford_gps_ethr·}r¸(h}r¹h}rºh]r»Uros/melodic/oxford_gps_ethr¼assh }r½h }r¾h}r¿h]rÀUros-melodic-oxford-gps-ethrÁassshˆh}rÂh}rÃh}rÄh]rÅjÁasssh}rÆh}rÇh}rÈh]rÉjÁasssuUlaser_filteringrÊ}rË(h}rÌh}rÍh]rÎUros/melodic/laser_filteringrÏassh }rÐh }rÑh}rÒh]rÓUros-melodic-laser-filteringrÔassshˆh}rÕh}rÖh}r×h]rØjÔasssh}rÙh}rÚh}rÛh]rÜjÔasssuUmbf_costmap_corerÝ}rÞ(h}rßh}ràh]ráUros/melodic/move_base_flexrâassh }rãh }räh}råh]ræUros-melodic-mbf-costmap-corerçassshˆh}rèh}réh}rêh]rëjçasssh}rìh}ríh}rîh]rïjçasssuUcob_navigation_slamrð}rñ(h}ròh}róh]rôUros/melodic/cob_navigationrõassh }röh }r÷h}røh]rùUros-melodic-cob-navigation-slamrúassshˆh}rûh}rüh}rýh]rþjúasssh}rÿh}rh}rh]rjúasssuUainstein_radar_filtersr}r(h}rh}rh]rUros/melodic/ainstein_radarrassh }r h }r h}r h]r U"ros-melodic-ainstein-radar-filtersr assshˆh}rh}rh}rh]rj asssh}rh}rh}rh]rj asssuUmoveit_ros_move_groupr}r(h}rh}rh]rUros/melodic/moveitrassh }rh }rh}rh]rU!ros-melodic-moveit-ros-move-groupr assshˆh}r!h}r"h}r#h]r$j asssh}r%h}r&h}r'h]r(j asssuUcob_base_drive_chainr)}r*(h}r+h}r,h]r-Uros/melodic/cob_driverr.assh }r/h }r0h}r1h]r2U ros-melodic-cob-base-drive-chainr3assshˆh}r4h}r5h}r6h]r7j3asssh}r8h}r9h}r:h]r;j3asssuUusv_gazebo_pluginsr<}r=(h}r>h}r?h]r@Uros/melodic/vrxrAassh }rBh }rCh}rDh]rEUros-melodic-usv-gazebo-pluginsrFassshˆh}rGh}rHh}rIh]rJjFasssh}rKh}rLh}rMh]rNjFasssuU cob_dashboardrO}rP(h}rQh}rRh]rSUros/melodic/cob_command_toolsrTassh }rUh }rVh}rWh]rXUros-melodic-cob-dashboardrYassshˆh}rZh}r[h}r\h]r]jYasssh}r^h}r_h}r`h]rajYasssuUrosserial_msgsrb}rc(h}rdh}reh]rfUros/melodic/rosserialrgassh }rhh }rih}rjh]rkUros-melodic-rosserial-msgsrlassshˆh}rmh}rnh}roh]rpjlasssh}rqh}rrh}rsh]rtjlasssuUhector_mappingru}rv(h}rwh}rxh]ryUros/melodic/hector_slamrzassh }r{h }r|h}r}h]r~Uros-melodic-hector-mappingrassshˆh}r€h}rh}r‚h]rƒjasssh}r„h}r…h}r†h]r‡jasssuU orocos_kdlrˆ}r‰(h}rŠh}r‹h]rŒU&ros/melodic/orocos_kinematics_dynamicsrassh }rŽh }rh}rh]r‘Uros-melodic-orocos-kdlr’assshˆh}r“h}r”h}r•h]r–j’asssh}r—h}r˜h}r™h]ršj’asssuUpr2_arm_kinematicsr›}rœ(h}rh}ržh]rŸUros/melodic/pr2_kinematicsr assh }r¡h }r¢h}r£h]r¤Uros-melodic-pr2-arm-kinematicsr¥assshˆh}r¦h}r§h}r¨h]r©j¥asssh}rªh}r«h}r¬h]r­j¥asssuUasmach_tutorialsr®}r¯(h}r°h}r±h]r²Uros/melodic/linux_networkingr³assh }r´h }rµh}r¶h]r·Uros-melodic-asmach-tutorialsr¸assshˆh}r¹h}rºh}r»h]r¼j¸asssh}r½h}r¾h}r¿h]rÀj¸asssuUqb_handrÁ}rÂ(h}rÃh}rÄh]rÅUros/melodic/qb_handrÆassh }rÇh }rÈh}rÉh]rÊUros-melodic-qb-handrËassshˆh}rÌh}rÍh}rÎh]rÏjËasssh}rÐh}rÑh}rÒh]rÓjËasssuUcob_frame_trackerrÔ}rÕ(h}rÖh}r×h]rØUros/melodic/cob_controlrÙassh }rÚh }rÛh}rÜh]rÝUros-melodic-cob-frame-trackerrÞassshˆh}rßh}ràh}ráh]râjÞasssh}rãh}räh}råh]ræjÞasssuUsimple_graspingrç}rè(h}réh}rêh]rëUros/melodic/simple_graspingrìassh }ríh }rîh}rïh]rðUros-melodic-simple-graspingrñassshˆh}ròh}róh}rôh]rõjñasssh}röh}r÷h}røh]rùjñasssuU lauv_gazeború}rû(h}rüh}rýh]rþUros/melodic/lauv_gazeborÿassh }rh }rh}rh]rUros-melodic-lauv-gazeborassshˆh}rh}rh}rh]rjasssh}r h}r h}r h]r jasssuU webots_rosr }r(h}rh}rh]rUros/melodic/webots_rosrassh }rh }rh}rh]rUros-melodic-webots-rosrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUswri_transform_utilr }r!(h}r"h}r#h]r$Uros/melodic/marti_commonr%assh }r&h }r'h}r(h]r)Uros-melodic-swri-transform-utilr*assshˆh}r+h}r,h}r-h]r.j*asssh}r/h}r0h}r1h]r2j*asssuUturtlebot3_applications_msgsr3}r4(h}r5h}r6h]r7U(ros/melodic/turtlebot3_applications_msgsr8assh }r9h }r:h}r;h]r<U(ros-melodic-turtlebot3-applications-msgsr=assshˆh}r>h}r?h}r@h]rAj=asssh}rBh}rCh}rDh]rEj=asssuUlaser_cb_detectorrF}rG(h}rHh}rIh]rJUros/melodic/calibrationrKassh }rLh }rMh}rNh]rOUros-melodic-laser-cb-detectorrPassshˆh}rQh}rRh}rSh]rTjPasssh}rUh}rVh}rWh]rXjPasssuU pinocchiorY}rZ(h}r[h}r\h]r]Uros/melodic/pinocchior^assh }r_h }r`h}rah]rbUros-melodic-pinocchiorcassshˆh}rdh}reh}rfh]rgjcasssh}rhh}rih}rjh]rkjcasssuU face_detectorrl}rm(h}rnh}roh]rpUros/melodic/peoplerqassh }rrh }rsh}rth]ruUros-melodic-face-detectorrvassshˆh}rwh}rxh}ryh]rzjvasssh}r{h}r|h}r}h]r~jvasssuU aruco_detectr}r€(h}rh}r‚h]rƒUros/melodic/fiducialsr„assh }r…h }r†h}r‡h]rˆUros-melodic-aruco-detectr‰assshˆh}rŠh}r‹h}rŒh]rj‰asssh}rŽh}rh}rh]r‘j‰asssuUrosbag_storager’}r“(h}r”h}r•h]r–Uros/melodic/ros_commr—assh }r˜h }r™h}ršh]r›Uros-melodic-rosbag-storagerœassshˆh}rh}ržh}rŸh]r jœasssh}r¡h}r¢h}r£h]r¤jœasssuUconvex_decompositionr¥}r¦(h}r§h}r¨h]r©U ros/melodic/convex_decompositionrªassh }r«h }r¬h}r­h]r®U ros-melodic-convex-decompositionr¯assshˆh}r°h}r±h}r²h]r³j¯asssh}r´h}rµh}r¶h]r·j¯asssuUgeometric_shapesr¸}r¹(h}rºh}r»h]r¼Uros/melodic/geometric_shapesr½assh }r¾h }r¿h}rÀh]rÁUros-melodic-geometric-shapesrÂassshˆh}rÃh}rÄh}rÅh]rÆjÂasssh}rÇh}rÈh}rÉh]rÊjÂasssuUwebrtcrË}rÌ(h}rÍh}rÎh]rÏUros/melodic/webrtc_rosrÐassh }rÑh }rÒh}rÓh]rÔUros-melodic-webrtcrÕassshˆh}rÖh}r×h}rØh]rÙjÕasssh}rÚh}rÛh}rÜh]rÝjÕasssuU imu_pipelinerÞ}rß(h}ràh}ráh]râUros/melodic/imu_pipelinerãassh }räh }råh}ræh]rçUros-melodic-imu-pipelinerèassshˆh}réh}rêh}rëh]rìjèasssh}ríh}rîh}rïh]rðjèasssuUecl_containersrñ}rò(h}róh}rôh]rõUros/melodic/ecl_coreröassh }r÷h }røh}rùh]rúUros-melodic-ecl-containersrûassshˆh}rüh}rýh}rþh]rÿjûasssh}rh}rh}rh]rjûasssuUcob_image_flipr}r(h}rh}rh]rU!ros/melodic/cob_perception_commonr assh }r h }r h}r h]r Uros-melodic-cob-image-fliprassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUxacror}r(h}rh}rh]rUros/melodic/xacrorassh }rh }rh}rh]r Uros-melodic-xacror!assshˆh}r"h}r#h}r$h]r%j!asssh}r&h}r'h}r(h]r)j!asssuUhector_imu_toolsr*}r+(h}r,h}r-h]r.Uros/melodic/hector_slamr/assh }r0h }r1h}r2h]r3Uros-melodic-hector-imu-toolsr4assshˆh}r5h}r6h}r7h]r8j4asssh}r9h}r:h}r;h]r<j4asssuUrqt_msgr=}r>(h}r?h}r@h]rAUros/melodic/rqt_msgrBassh }rCh }rDh}rEh]rFUros-melodic-rqt-msgrGassshˆh}rHh}rIh}rJh]rKjGasssh}rLh}rMh}rNh]rOjGasssuUemlrP}rQ(h}rRh}rSh]rTUros/melodic/emlrUassh }rVh }rWh}rXh]rYUros-melodic-emlrZassshˆh}r[h}r\h}r]h]r^jZasssh}r_h}r`h}rah]rbjZasssuUpoint_cloud_publisher_tutorialrc}rd(h}reh}rfh]rgU ros/melodic/navigation_tutorialsrhassh }rih }rjh}rkh]rlU*ros-melodic-point-cloud-publisher-tutorialrmassshˆh}rnh}roh}rph]rqjmasssh}rrh}rsh}rth]rujmasssuUodva_ethernetiprv}rw(h}rxh}ryh]rzUros/melodic/odva_ethernetipr{assh }r|h }r}h}r~h]rUros-melodic-odva-ethernetipr€assshˆh}rh}r‚h}rƒh]r„j€asssh}r…h}r†h}r‡h]rˆj€asssuUrobot_controllers_interfacer‰}rŠ(h}r‹h}rŒh]rUros/melodic/robot_controllersrŽassh }rh }rh}r‘h]r’U'ros-melodic-robot-controllers-interfacer“assshˆh}r”h}r•h}r–h]r—j“asssh}r˜h}r™h}ršh]r›j“asssuUswri_console_utilrœ}r(h}ržh}rŸh]r Uros/melodic/marti_commonr¡assh }r¢h }r£h}r¤h]r¥Uros-melodic-swri-console-utilr¦assshˆh}r§h}r¨h}r©h]rªj¦asssh}r«h}r¬h}r­h]r®j¦asssuUmaster_discovery_fkier¯}r°(h}r±h}r²h]r³Uros/melodic/multimaster_fkier´assh }rµh }r¶h}r·h]r¸U!ros-melodic-master-discovery-fkier¹assshˆh}rºh}r»h}r¼h]r½j¹asssh}r¾h}r¿h}rÀh]rÁj¹asssuUrosnoderÂ}rÃ(h}rÄh}rÅh]rÆUros/melodic/ros_commrÇassh }rÈh }rÉh}rÊh]rËUros-melodic-rosnoderÌassshˆh}rÍh}rÎh}rÏh]rÐjÌasssh}rÑh}rÒh}rÓh]rÔjÌasssuU xpp_examplesrÕ}rÖ(h}r×h}rØh]rÙUros/melodic/xpprÚassh }rÛh }rÜh}rÝh]rÞUros-melodic-xpp-examplesrßassshˆh}ràh}ráh}râh]rãjßasssh}räh}råh}ræh]rçjßasssuU ecl_conceptsrè}ré(h}rêh}rëh]rìUros/melodic/ecl_coreríassh }rîh }rïh}rðh]rñUros-melodic-ecl-conceptsròassshˆh}róh}rôh}rõh]röjòasssh}r÷h}røh}rùh]rújòasssuUpr2_moveit_pluginsrû}rü(h}rýh}rþh]rÿUros/melodic/moveit_pr2rassh }rh }rh}rh]rUros-melodic-pr2-moveit-pluginsrassshˆh}rh}rh}rh]r jasssh}r h}r h}r h]r jasssuU roscpp_traitsr}r(h}rh}rh]rUros/melodic/roscpp_corerassh }rh }rh}rh]rUros-melodic-roscpp-traitsrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]r jasssuUackermann_msgsr!}r"(h}r#h}r$h]r%Uros/melodic/ackermann_msgsr&assh }r'h }r(h}r)h]r*Uros-melodic-ackermann-msgsr+assshˆh}r,h}r-h}r.h]r/j+asssh}r0h}r1h}r2h]r3j+asssuUsoemr4}r5(h}r6h}r7h]r8Uros/melodic/soemr9assh }r:h }r;h}r<h]r=Uros-melodic-soemr>assshˆh}r?h}r@h}rAh]rBj>asssh}rCh}rDh}rEh]rFj>asssuUneonavigation_launchrG}rH(h}rIh}rJh]rKUros/melodic/neonavigationrLassh }rMh }rNh}rOh]rPU ros-melodic-neonavigation-launchrQassshˆh}rRh}rSh}rTh]rUjQasssh}rVh}rWh}rXh]rYjQasssuU terarangerrZ}r[(h}r\h}r]h]r^Uros/melodic/terarangerr_assh }r`h }rah}rbh]rcUros-melodic-terarangerrdassshˆh}reh}rfh}rgh]rhjdasssh}rih}rjh}rkh]rljdasssuUrslidar_driverrm}rn(h}roh}rph]rqUros/melodic/robosenserrassh }rsh }rth}ruh]rvUros-melodic-rslidar-driverrwassshˆh}rxh}ryh}rzh]r{jwasssh}r|h}r}h}r~h]rjwasssuUpr2_mechanism_diagnosticsr€}r(h}r‚h}rƒh]r„Uros/melodic/pr2_mechanismr…assh }r†h }r‡h}rˆh]r‰U%ros-melodic-pr2-mechanism-diagnosticsrŠassshˆh}r‹h}rŒh}rh]rŽjŠasssh}rh}rh}r‘h]r’jŠasssuUcob_navigationr“}r”(h}r•h}r–h]r—Uros/melodic/cob_navigationr˜assh }r™h }ršh}r›h]rœUros-melodic-cob-navigationrassshˆh}ržh}rŸh}r h]r¡jasssh}r¢h}r£h}r¤h]r¥jasssuU rcdiscoverr¦}r§(h}r¨h}r©h]rªUros/melodic/rcdiscoverr«assh }r¬h }r­h}r®h]r¯Uros-melodic-rcdiscoverr°assshˆh}r±h}r²h}r³h]r´j°asssh}rµh}r¶h}r·h]r¸j°asssuU p2os_teleopr¹}rº(h}r»h}r¼h]r½Uros/melodic/p2osr¾assh }r¿h }rÀh}rÁh]rÂUros-melodic-p2os-teleoprÃassshˆh}rÄh}rÅh}rÆh]rÇjÃasssh}rÈh}rÉh}rÊh]rËjÃasssuUfsrobo_r_bringuprÌ}rÍ(h}rÎh}rÏh]rÐUros/melodic/fsrobo_rrÑassh }rÒh }rÓh}rÔh]rÕUros-melodic-fsrobo-r-bringuprÖassshˆh}r×h}rØh}rÙh]rÚjÖasssh}rÛh}rÜh}rÝh]rÞjÖasssuUrc_pick_clientrß}rà(h}ráh}râh]rãUros/melodic/rc_visardräassh }råh }ræh}rçh]rèUros-melodic-rc-pick-clientréassshˆh}rêh}rëh}rìh]ríjéasssh}rîh}rïh}rðh]rñjéasssuU nav2d_kartorò}ró(h}rôh}rõh]röUros/melodic/navigation_2dr÷assh }røh }rùh}rúh]rûUros-melodic-nav2d-kartorüassshˆh}rýh}rþh}rÿh]rjüasssh}rh}rh}rh]rjüasssuU ecl_geometryr}r(h}rh}rh]r Uros/melodic/ecl_corer assh }r h }r h}r h]rUros-melodic-ecl-geometryrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUgrid_map_filtersr}r(h}rh}rh]rUros/melodic/grid_maprassh }rh }rh}r h]r!Uros-melodic-grid-map-filtersr"assshˆh}r#h}r$h}r%h]r&j"asssh}r'h}r(h}r)h]r*j"asssuUimagezero_image_transportr+}r,(h}r-h}r.h]r/Uros/melodic/imagezero_transportr0assh }r1h }r2h}r3h]r4U%ros-melodic-imagezero-image-transportr5assshˆh}r6h}r7h}r8h]r9j5asssh}r:h}r;h}r<h]r=j5asssuUros_introspectionr>}r?(h}r@h}rAh]rBUros/melodic/roscompilerCassh }rDh }rEh}rFh]rGUros-melodic-ros-introspectionrHassshˆh}rIh}rJh}rKh]rLjHasssh}rMh}rNh}rOh]rPjHasssuU gateway_msgsrQ}rR(h}rSh}rTh]rUUros/melodic/rocon_msgsrVassh }rWh }rXh}rYh]rZUros-melodic-gateway-msgsr[assshˆh}r\h}r]h}r^h]r_j[asssh}r`h}rah}rbh]rcj[asssuUros_type_introspectionrd}re(h}rfh}rgh]rhU"ros/melodic/ros_type_introspectionriassh }rjh }rkh}rlh]rmU"ros-melodic-ros-type-introspectionrnassshˆh}roh}rph}rqh]rrjnasssh}rsh}rth}ruh]rvjnasssuUfsrobo_r_moveit_configrw}rx(h}ryh}rzh]r{Uros/melodic/fsrobo_rr|assh }r}h }r~h}rh]r€U"ros-melodic-fsrobo-r-moveit-configrassshˆh}r‚h}rƒh}r„h]r…jasssh}r†h}r‡h}rˆh]r‰jasssuUarbotix_sensorsrŠ}r‹(h}rŒh}rh]rŽUros/melodic/arbotixrassh }rh }r‘h}r’h]r“Uros-melodic-arbotix-sensorsr”assshˆh}r•h}r–h}r—h]r˜j”asssh}r™h}ršh}r›h]rœj”asssuU py_trees_rosr}rž(h}rŸh}r h]r¡Uros/melodic/py_trees_rosr¢assh }r£h }r¤h}r¥h]r¦Uros-melodic-py-trees-rosr§assshˆh}r¨h}r©h}rªh]r«j§asssh}r¬h}r­h}r®h]r¯j§asssuU rc_visardr°}r±(h}r²h}r³h]r´Uros/melodic/rc_visardrµassh }r¶h }r·h}r¸h]r¹Uros-melodic-rc-visardrºassshˆh}r»h}r¼h}r½h]r¾jºasssh}r¿h}rÀh}rÁh]rÂjºasssuUhebi_descriptionrÃ}rÄ(h}rÅh}rÆh]rÇUros/melodic/hebi_descriptionrÈassh }rÉh }rÊh}rËh]rÌUros-melodic-hebi-descriptionrÍassshˆh}rÎh}rÏh}rÐh]rÑjÍasssh}rÒh}rÓh}rÔh]rÕjÍasssuUmapviz_pluginsrÖ}r×(h}rØh}rÙh]rÚUros/melodic/mapvizrÛassh }rÜh }rÝh}rÞh]rßUros-melodic-mapviz-pluginsràassshˆh}ráh}râh}rãh]räjàasssh}råh}ræh}rçh]rèjàasssuUlibqt_opengl_devré}rê(h}rëh}rìh]ríUros/melodic/qt_metapackagesrîassh }rïh }rðh}rñh]ròUros-melodic-libqt-opengl-devróassshˆh}rôh}rõh}röh]r÷jóasssh}røh}rùh}rúh]rûjóasssuUjsk_common_msgsrü}rý(h}rþh}rÿh]rUros/melodic/jsk_common_msgsrassh }rh }rh}rh]rUros-melodic-jsk-common-msgsrassshˆh}rh}rh}r h]r jasssh}r h}r h}r h]rjasssuUplanner_cspace_msgsr}r(h}rh}rh]rUros/melodic/neonavigation_msgsrassh }rh }rh}rh]rUros-melodic-planner-cspace-msgsrassshˆh}rh}rh}rh]rjasssh}rh}rh}r h]r!jasssuUmav_msgsr"}r#(h}r$h}r%h]r&Uros/melodic/mav_commr'assh }r(h }r)h}r*h]r+Uros-melodic-mav-msgsr,assshˆh}r-h}r.h}r/h]r0j,asssh}r1h}r2h}r3h]r4j,asssuUrocon_python_redisr5}r6(h}r7h}r8h]r9Uros/melodic/rocon_toolsr:assh }r;h }r<h}r=h]r>Uros-melodic-rocon-python-redisr?assshˆh}r@h}rAh}rBh]rCj?asssh}rDh}rEh}rFh]rGj?asssuU'open_manipulator_with_tb3_waffle_moveitrH}rI(h}rJh}rKh]rLU%ros/melodic/open_manipulator_with_tb3rMassh }rNh }rOh}rPh]rQU3ros-melodic-open-manipulator-with-tb3-waffle-moveitrRassshˆh}rSh}rTh}rUh]rVjRasssh}rWh}rXh}rYh]rZjRasssuUifoptr[}r\(h}r]h}r^h]r_Uros/melodic/ifoptr`assh }rah }rbh}rch]rdUros-melodic-ifoptreassshˆh}rfh}rgh}rhh]rijeasssh}rjh}rkh}rlh]rmjeasssuU husky_msgsrn}ro(h}rph}rqh]rrUros/melodic/huskyrsassh }rth }ruh}rvh]rwUros-melodic-husky-msgsrxassshˆh}ryh}rzh}r{h]r|jxasssh}r}h}r~h}rh]r€jxasssuUlaser_filters_jsk_patchr}r‚(h}rƒh}r„h]r…Uros/melodic/jsk_3rdpartyr†assh }r‡h }rˆh}r‰h]rŠU#ros-melodic-laser-filters-jsk-patchr‹assshˆh}rŒh}rh}rŽh]rj‹asssh}rh}r‘h}r’h]r“j‹asssuUfetch_open_auto_dockr”}r•(h}r–h}r—h]r˜U ros/melodic/fetch_open_auto_dockr™assh }ršh }r›h}rœh]rU ros-melodic-fetch-open-auto-dockržassshˆh}rŸh}r h}r¡h]r¢jžasssh}r£h}r¤h}r¥h]r¦jžasssuUcl_tf2r§}r¨(h}r©h}rªh]r«Uros/melodic/roslisp_commonr¬assh }r­h }r®h}r¯h]r°Uros-melodic-cl-tf2r±assshˆh}r²h}r³h}r´h]rµj±asssh}r¶h}r·h}r¸h]r¹j±asssuUcob_default_robot_behaviorrº}r»(h}r¼h}r½h]r¾Uros/melodic/cob_robotsr¿assh }rÀh }rÁh}rÂh]rÃU&ros-melodic-cob-default-robot-behaviorrÄassshˆh}rÅh}rÆh}rÇh]rÈjÄasssh}rÉh}rÊh}rËh]rÌjÄasssuUmrpt_ekf_slam_2drÍ}rÎ(h}rÏh}rÐh]rÑUros/melodic/mrpt_slamrÒassh }rÓh }rÔh}rÕh]rÖUros-melodic-mrpt-ekf-slam-2dr×assshˆh}rØh}rÙh}rÚh]rÛj×asssh}rÜh}rÝh}rÞh]rßj×asssuUjoint_limits_interfacerà}rá(h}râh}rãh]räUros/melodic/ros_controlråassh }ræh }rçh}rèh]réU"ros-melodic-joint-limits-interfacerêassshˆh}rëh}rìh}ríh]rîjêasssh}rïh}rðh}rñh]ròjêasssuU autoware_msgsró}rô(h}rõh}röh]r÷Uros/melodic/autoware_msgsrøassh }rùh }rúh}rûh]rüUros-melodic-autoware-msgsrýassshˆh}rþh}rÿh}rh]rjýasssh}rh}rh}rh]rjýasssuUjackal_simulatorr}r(h}rh}r h]r Uros/melodic/jackal_simulatorr assh }r h }r h}rh]rUros-melodic-jackal-simulatorrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUcob_android_script_serverr}r(h}rh}rh]rUros/melodic/cob_androidrassh }rh }r h}r!h]r"U%ros-melodic-cob-android-script-serverr#assshˆh}r$h}r%h}r&h]r'j#asssh}r(h}r)h}r*h]r+j#asssuUuuv_trajectory_controlr,}r-(h}r.h}r/h]r0Uros/melodic/uuv_simulatorr1assh }r2h }r3h}r4h]r5U"ros-melodic-uuv-trajectory-controlr6assshˆh}r7h}r8h}r9h]r:j6asssh}r;h}r<h}r=h]r>j6asssuUlaser_tilt_controller_filterr?}r@(h}rAh}rBh]rCUros/melodic/pr2_navigationrDassh }rEh }rFh}rGh]rHU(ros-melodic-laser-tilt-controller-filterrIassshˆh}rJh}rKh}rLh]rMjIasssh}rNh}rOh}rPh]rQjIasssuUmrpt_maprR}rS(h}rTh}rUh]rVUros/melodic/mrpt_navigationrWassh }rXh }rYh}rZh]r[Uros-melodic-mrpt-mapr\assshˆh}r]h}r^h}r_h]r`j\asssh}rah}rbh}rch]rdj\asssuUflexbe_behavior_enginere}rf(h}rgh}rhh]riUros/melodic/flexberjassh }rkh }rlh}rmh]rnU"ros-melodic-flexbe-behavior-engineroassshˆh}rph}rqh}rrh]rsjoasssh}rth}ruh}rvh]rwjoasssuUigvc_self_drive_gazeborx}ry(h}rzh}r{h]r|Uros/melodic/igvc_self_drive_simr}assh }r~h }rh}r€h]rU"ros-melodic-igvc-self-drive-gazebor‚assshˆh}rƒh}r„h}r…h]r†j‚asssh}r‡h}rˆh}r‰h]rŠj‚asssuUqb_chain_controlr‹}rŒ(h}rh}rŽh]rUros/melodic/qb_chainrassh }r‘h }r’h}r“h]r”Uros-melodic-qb-chain-controlr•assshˆh}r–h}r—h}r˜h]r™j•asssh}ršh}r›h}rœh]rj•asssuUrqt_launchtreerž}rŸ(h}r h}r¡h]r¢Uros/melodic/rqt_launchtreer£assh }r¤h }r¥h}r¦h]r§Uros-melodic-rqt-launchtreer¨assshˆh}r©h}rªh}r«h]r¬j¨asssh}r­h}r®h}r¯h]r°j¨asssuU catkin_pipr±}r²(h}r³h}r´h]rµUros/melodic/catkin_pipr¶assh }r·h }r¸h}r¹h]rºUros-melodic-catkin-pipr»assshˆh}r¼h}r½h}r¾h]r¿j»asssh}rÀh}rÁh}rÂh]rÃj»asssuUpeople_velocity_trackerrÄ}rÅ(h}rÆh}rÇh]rÈUros/melodic/peoplerÉassh }rÊh }rËh}rÌh]rÍU#ros-melodic-people-velocity-trackerrÎassshˆh}rÏh}rÐh}rÑh]rÒjÎasssh}rÓh}rÔh}rÕh]rÖjÎasssuU roscompiler×}rØ(h}rÙh}rÚh]rÛUros/melodic/roscompilerÜassh }rÝh }rÞh}rßh]ràUros-melodic-roscompileráassshˆh}râh}rãh}räh]råjáasssh}ræh}rçh}rèh]réjáasssuUnetwork_interfacerê}rë(h}rìh}ríh]rîUros/melodic/network_interfacerïassh }rðh }rñh}ròh]róUros-melodic-network-interfacerôassshˆh}rõh}röh}r÷h]røjôasssh}rùh}rúh}rûh]rüjôasssuUimage_geometryrý}rþ(h}rÿh}rh]rUros/melodic/vision_opencvrassh }rh }rh}rh]rUros-melodic-image-geometryrassshˆh}rh}r h}r h]r jasssh}r h}r h}rh]rjasssuUnmea_gps_pluginr}r(h}rh}rh]rUros/melodic/nmea_gps_pluginrassh }rh }rh}rh]rUros-melodic-nmea-gps-pluginrassshˆh}rh}rh}rh]rjasssh}rh}r h}r!h]r"jasssuU fetch_rosr#}r$(h}r%h}r&h]r'Uros/melodic/fetch_rosr(assh }r)h }r*h}r+h]r,Uros-melodic-fetch-rosr-assshˆh}r.h}r/h}r0h]r1j-asssh}r2h}r3h}r4h]r5j-asssuUuuv_sensor_ros_plugins_msgsr6}r7(h}r8h}r9h]r:Uros/melodic/uuv_simulatorr;assh }r<h }r=h}r>h]r?U'ros-melodic-uuv-sensor-ros-plugins-msgsr@assshˆh}rAh}rBh}rCh]rDj@asssh}rEh}rFh}rGh]rHj@asssuUtest_diagnostic_aggregatorrI}rJ(h}rKh}rLh]rMUros/melodic/diagnosticsrNassh }rOh }rPh}rQh]rRU&ros-melodic-test-diagnostic-aggregatorrSassshˆh}rTh}rUh}rVh]rWjSasssh}rXh}rYh}rZh]r[jSasssuU rospatliter\}r](h}r^h}r_h]r`Uros/melodic/jsk_3rdpartyraassh }rbh }rch}rdh]reUros-melodic-rospatliterfassshˆh}rgh}rhh}rih]rjjfasssh}rkh}rlh}rmh]rnjfasssuUqb_device_utilsro}rp(h}rqh}rrh]rsUros/melodic/qb_devicertassh }ruh }rvh}rwh]rxUros-melodic-qb-device-utilsryassshˆh}rzh}r{h}r|h]r}jyasssh}r~h}rh}r€h]rjyasssuUuwsim_osgworksr‚}rƒ(h}r„h}r…h]r†Uros/melodic/uwsim_osgworksr‡assh }rˆh }r‰h}rŠh]r‹Uros-melodic-uwsim-osgworksrŒassshˆh}rh}rŽh}rh]rjŒasssh}r‘h}r’h}r“h]r”jŒasssuUmarti_nav_msgsr•}r–(h}r—h}r˜h]r™Uros/melodic/marti_messagesršassh }r›h }rœh}rh]ržUros-melodic-marti-nav-msgsrŸassshˆh}r h}r¡h}r¢h]r£jŸasssh}r¤h}r¥h}r¦h]r§jŸasssuU kdl_parserr¨}r©(h}rªh}r«h]r¬Uros/melodic/kdl_parserr­assh }r®h }r¯h}r°h]r±Uros-melodic-kdl-parserr²assshˆh}r³h}r´h}rµh]r¶j²asssh}r·h}r¸h}r¹h]rºj²asssuU libqt_svg_devr»}r¼(h}r½h}r¾h]r¿Uros/melodic/qt_metapackagesrÀassh }rÁh }rÂh}rÃh]rÄUros-melodic-libqt-svg-devrÅassshˆh}rÆh}rÇh}rÈh]rÉjÅasssh}rÊh}rËh}rÌh]rÍjÅasssuU eca_a9_gazeborÎ}rÏ(h}rÐh}rÑh]rÒUros/melodic/eca_a9rÓassh }rÔh }rÕh}rÖh]r×Uros-melodic-eca-a9-gazeborØassshˆh}rÙh}rÚh}rÛh]rÜjØasssh}rÝh}rÞh}rßh]ràjØasssuU moveit_pythonrá}râ(h}rãh}räh]råUros/melodic/moveit_pythonræassh }rçh }rèh}réh]rêUros-melodic-moveit-pythonrëassshˆh}rìh}ríh}rîh]rïjëasssh}rðh}rñh}ròh]rójëasssuUphotorô}rõ(h}röh}r÷h]røUros/melodic/photorùassh }rúh }rûh}rüh]rýUros-melodic-photorþassshˆh}rÿh}rh}rh]rjþasssh}rh}rh}rh]rjþasssuUrqt_py_consoler}r(h}r h}r h]r Uros/melodic/rqt_py_consoler assh }r h }rh}rh]rUros-melodic-rqt-py-consolerassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUpr2eusr}r(h}rh}rh]rUros/melodic/jsk_pr2eusrassh }r h }r!h}r"h]r#Uros-melodic-pr2eusr$assshˆh}r%h}r&h}r'h]r(j$asssh}r)h}r*h}r+h]r,j$asssuU wamv_gazebor-}r.(h}r/h}r0h]r1Uros/melodic/vrxr2assh }r3h }r4h}r5h]r6Uros-melodic-wamv-gazebor7assshˆh}r8h}r9h}r:h]r;j7asssh}r<h}r=h}r>h]r?j7asssuUnavigation_tutorialsr@}rA(h}rBh}rCh]rDU ros/melodic/navigation_tutorialsrEassh }rFh }rGh}rHh]rIU ros-melodic-navigation-tutorialsrJassshˆh}rKh}rLh}rMh]rNjJasssh}rOh}rPh}rQh]rRjJasssuU open_kartorS}rT(h}rUh}rVh]rWUros/melodic/open_kartorXassh }rYh }rZh}r[h]r\Uros-melodic-open-kartor]assshˆh}r^h}r_h}r`h]raj]asssh}rbh}rch}rdh]rej]asssuUqb_moverf}rg(h}rhh}rih]rjUros/melodic/qb_moverkassh }rlh }rmh}rnh]roUros-melodic-qb-moverpassshˆh}rqh}rrh}rsh]rtjpasssh}ruh}rvh}rwh]rxjpasssuUvrpnry}rz(h}r{h}r|h]r}Uros/melodic/vrpnr~assh }rh }r€h}rh]r‚Uros-melodic-vrpnrƒassshˆh}r„h}r…h}r†h]r‡jƒasssh}rˆh}r‰h}rŠh]r‹jƒasssuUpr2_navigation_slamrŒ}r(h}rŽh}rh]rUros/melodic/pr2_navigationr‘assh }r’h }r“h}r”h]r•Uros-melodic-pr2-navigation-slamr–assshˆh}r—h}r˜h}r™h]ršj–asssh}r›h}rœh}rh]ržj–asssuUgenlisprŸ}r (h}r¡h}r¢h]r£Uros/melodic/genlispr¤assh }r¥h }r¦h}r§h]r¨Uros-melodic-genlispr©assshˆh}rªh}r«h}r¬h]r­j©asssh}r®h}r¯h}r°h]r±j©asssuUmrpt_navigationr²}r³(h}r´h}rµh]r¶Uros/melodic/mrpt_navigationr·assh }r¸h }r¹h}rºh]r»Uros-melodic-mrpt-navigationr¼assshˆh}r½h}r¾h}r¿h]rÀj¼asssh}rÁh}rÂh}rÃh]rÄj¼asssuUosg_interactive_markersrÅ}rÆ(h}rÇh}rÈh]rÉUros/melodic/visualization_osgrÊassh }rËh }rÌh}rÍh]rÎU#ros-melodic-osg-interactive-markersrÏassshˆh}rÐh}rÑh}rÒh]rÓjÏasssh}rÔh}rÕh}rÖh]r×jÏasssuU ouster_driverrØ}rÙ(h}rÚh}rÛh]rÜUros/melodic/ousterrÝassh }rÞh }rßh}ràh]ráUros-melodic-ouster-driverrâassshˆh}rãh}räh}råh]ræjâasssh}rçh}rèh}réh]rêjâasssuU mongodb_logrë}rì(h}ríh}rîh]rïUros/melodic/mongodb_storerðassh }rñh }ròh}róh]rôUros-melodic-mongodb-logrõassshˆh}röh}r÷h}røh]rùjõasssh}rúh}rûh}rüh]rýjõasssuUdepthcloud_encoderrþ}rÿ(h}rh}rh]rUros/melodic/depthcloud_encoderrassh }rh }rh}rh]rUros-melodic-depthcloud-encoderrassshˆh}r h}r h}r h]r jasssh}r h}rh}rh]rjasssuU laser_procr}r(h}rh}rh]rUros/melodic/laser_procrassh }rh }rh}rh]rUros-melodic-laser-procrassshˆh}rh}rh}rh]rjasssh}r h}r!h}r"h]r#jasssuUrqt_topr$}r%(h}r&h}r'h]r(Uros/melodic/rqt_topr)assh }r*h }r+h}r,h]r-Uros-melodic-rqt-topr.assshˆh}r/h}r0h}r1h]r2j.asssh}r3h}r4h}r5h]r6j.asssuUexecutive_smachr7}r8(h}r9h}r:h]r;Uros/melodic/executive_smachr<assh }r=h }r>h}r?h]r@Uros-melodic-executive-smachrAassshˆh}rBh}rCh}rDh]rEjAasssh}rFh}rGh}rHh]rIjAasssuUgenmsgrJ}rK(h}rLh}rMh]rNUros/melodic/genmsgrOassh }rPh }rQh}rRh]rSUros-melodic-genmsgrTassshˆh}rUh}rVh}rWh]rXjTasssh}rYh}rZh}r[h]r\jTasssuU turtle_tf2r]}r^(h}r_h}r`h]raUros/melodic/geometry_tutorialsrbassh }rch }rdh}reh]rfUros-melodic-turtle-tf2rgassshˆh}rhh}rih}rjh]rkjgasssh}rlh}rmh}rnh]rojgasssuUvelodynerp}rq(h}rrh}rsh]rtUros/melodic/velodyneruassh }rvh }rwh}rxh]ryUros-melodic-velodynerzassshˆh}r{h}r|h}r}h]r~jzasssh}rh}r€h}rh]r‚jzasssuUigvc_self_drive_descriptionrƒ}r„(h}r…h}r†h]r‡Uros/melodic/igvc_self_drive_simrˆassh }r‰h }rŠh}r‹h]rŒU'ros-melodic-igvc-self-drive-descriptionrassshˆh}rŽh}rh}rh]r‘jasssh}r’h}r“h}r”h]r•jasssuUcob_base_controller_utilsr–}r—(h}r˜h}r™h]ršUros/melodic/cob_controlr›assh }rœh }rh}ržh]rŸU%ros-melodic-cob-base-controller-utilsr assshˆh}r¡h}r¢h}r£h]r¤j asssh}r¥h}r¦h}r§h]r¨j asssuU rosmasterr©}rª(h}r«h}r¬h]r­Uros/melodic/ros_commr®assh }r¯h }r°h}r±h]r²Uros-melodic-rosmasterr³assshˆh}r´h}rµh}r¶h]r·j³asssh}r¸h}r¹h}rºh]r»j³asssuUmovie_publisherr¼}r½(h}r¾h}r¿h]rÀUros/melodic/movie_publisherrÁassh }rÂh }rÃh}rÄh]rÅUros-melodic-movie-publisherrÆassshˆh}rÇh}rÈh}rÉh]rÊjÆasssh}rËh}rÌh}rÍh]rÎjÆasssuU kalman_filterrÏ}rÐ(h}rÑh}rÒh]rÓUros/melodic/wu_ros_toolsrÔassh }rÕh }rÖh}r×h]rØUros-melodic-kalman-filterrÙassshˆh}rÚh}rÛh}rÜh]rÝjÙasssh}rÞh}rßh}ràh]rájÙasssuUmarti_common_msgsrâ}rã(h}räh}råh]ræUros/melodic/marti_messagesrçassh }rèh }réh}rêh]rëUros-melodic-marti-common-msgsrìassshˆh}ríh}rîh}rïh]rðjìasssh}rñh}ròh}róh]rôjìasssuUpeoplerõ}rö(h}r÷h}røh]rùUros/melodic/peoplerúassh }rûh }rüh}rýh]rþUros-melodic-peoplerÿassshˆh}rh}rh}rh]rjÿasssh}rh}rh}rh]rjÿasssuUcob_supported_robotsr}r (h}r h}r h]r U ros/melodic/cob_supported_robotsr assh }rh }rh}rh]rU ros-melodic-cob-supported-robotsrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUtransmission_interfacer}r(h}rh}rh]rUros/melodic/ros_controlr assh }r!h }r"h}r#h]r$U"ros-melodic-transmission-interfacer%assshˆh}r&h}r'h}r(h]r)j%asssh}r*h}r+h}r,h]r-j%asssuU rgbd_launchr.}r/(h}r0h}r1h]r2Uros/melodic/rgbd_launchr3assh }r4h }r5h}r6h]r7Uros-melodic-rgbd-launchr8assshˆh}r9h}r:h}r;h]r<j8asssh}r=h}r>h}r?h]r@j8asssuUroslisprA}rB(h}rCh}rDh]rEUros/melodic/roslisprFassh }rGh }rHh}rIh]rJUros-melodic-roslisprKassshˆh}rLh}rMh}rNh]rOjKasssh}rPh}rQh}rRh]rSjKasssuUrocon_interactionsrT}rU(h}rVh}rWh]rXUros/melodic/rocon_toolsrYassh }rZh }r[h}r\h]r]Uros-melodic-rocon-interactionsr^assshˆh}r_h}r`h}rah]rbj^asssh}rch}rdh}reh]rfj^asssuU graph_msgsrg}rh(h}rih}rjh]rkUros/melodic/graph_msgsrlassh }rmh }rnh}roh]rpUros-melodic-graph-msgsrqassshˆh}rrh}rsh}rth]rujqasssh}rvh}rwh}rxh]ryjqasssuUml_classifiersrz}r{(h}r|h}r}h]r~Uros/melodic/ml_classifiersrassh }r€h }rh}r‚h]rƒUros-melodic-ml-classifiersr„assshˆh}r…h}r†h}r‡h]rˆj„asssh}r‰h}rŠh}r‹h]rŒj„asssuUcob_substituter}rŽ(h}rh}rh]r‘Uros/melodic/cob_substituter’assh }r“h }r”h}r•h]r–Uros-melodic-cob-substituter—assshˆh}r˜h}r™h}ršh]r›j—asssh}rœh}rh}ržh]rŸj—asssuUmir_dwb_criticsr }r¡(h}r¢h}r£h]r¤Uros/melodic/mir_robotr¥assh }r¦h }r§h}r¨h]r©Uros-melodic-mir-dwb-criticsrªassshˆh}r«h}r¬h}r­h]r®jªasssh}r¯h}r°h}r±h]r²jªasssuUqwt_dependencyr³}r´(h}rµh}r¶h]r·Uros/melodic/qwt_dependencyr¸assh }r¹h }rºh}r»h]r¼Uros-melodic-qwt-dependencyr½assshˆh}r¾h}r¿h}rÀh]rÁj½asssh}rÂh}rÃh}rÄh]rÅj½asssuU toposens_msgsrÆ}rÇ(h}rÈh}rÉh]rÊUros/melodic/toposensrËassh }rÌh }rÍh}rÎh]rÏUros-melodic-toposens-msgsrÐassshˆh}rÑh}rÒh}rÓh]rÔjÐasssh}rÕh}rÖh}r×h]rØjÐasssuUethercat_hardwarerÙ}rÚ(h}rÛh}rÜh]rÝU ros/melodic/pr2_ethercat_driversrÞassh }rßh }ràh}ráh]râUros-melodic-ethercat-hardwarerãassshˆh}räh}råh}ræh]rçjãasssh}rèh}réh}rêh]rëjãasssuUrqt_ez_publisherrì}rí(h}rîh}rïh]rðUros/melodic/rqt_ez_publisherrñassh }ròh }róh}rôh]rõUros-melodic-rqt-ez-publisherröassshˆh}r÷h}røh}rùh]rújöasssh}rûh}rüh}rýh]rþjöasssuU rqt_multiplotrÿ}r(h}rh}rh]rU ros/melodic/rqt_multiplot_pluginrassh }rh }rh}rh]rUros-melodic-rqt-multiplotr assshˆh}r h}r h}r h]r j asssh}rh}rh}rh]rj asssuU ecl_time_liter}r(h}rh}rh]rUros/melodic/ecl_literassh }rh }rh}rh]rUros-melodic-ecl-time-literassshˆh}rh}rh}rh]r jasssh}r!h}r"h}r#h]r$jasssuUcob_sick_lms1xxr%}r&(h}r'h}r(h]r)Uros/melodic/cob_driverr*assh }r+h }r,h}r-h]r.Uros-melodic-cob-sick-lms1xxr/assshˆh}r0h}r1h}r2h]r3j/asssh}r4h}r5h}r6h]r7j/asssuU schunk_simulated_tactile_sensorsr8}r9(h}r:h}r;h]r<U#ros/melodic/schunk_modular_roboticsr=assh }r>h }r?h}r@h]rAU,ros-melodic-schunk-simulated-tactile-sensorsrBassshˆh}rCh}rDh}rEh]rFjBasssh}rGh}rHh}rIh]rJjBasssuU jsk_hark_msgsrK}rL(h}rMh}rNh]rOUros/melodic/jsk_common_msgsrPassh }rQh }rRh}rSh]rTUros-melodic-jsk-hark-msgsrUassshˆh}rVh}rWh}rXh]rYjUasssh}rZh}r[h}r\h]r]jUasssuU moveit_corer^}r_(h}r`h}rah]rbUros/melodic/moveitrcassh }rdh }reh}rfh]rgUros-melodic-moveit-corerhassshˆh}rih}rjh}rkh]rljhasssh}rmh}rnh}roh]rpjhasssuU gps_commonrq}rr(h}rsh}rth]ruUros/melodic/gps_umdrvassh }rwh }rxh}ryh]rzUros-melodic-gps-commonr{assshˆh}r|h}r}h}r~h]rj{asssh}r€h}rh}r‚h]rƒj{asssuUjsk_datar„}r…(h}r†h}r‡h]rˆUros/melodic/jsk_commonr‰assh }rŠh }r‹h}rŒh]rUros-melodic-jsk-datarŽassshˆh}rh}rh}r‘h]r’jŽasssh}r“h}r”h}r•h]r–jŽasssuUautoware_system_msgsr—}r˜(h}r™h}ršh]r›Uros/melodic/autoware_msgsrœassh }rh }ržh}rŸh]r U ros-melodic-autoware-system-msgsr¡assshˆh}r¢h}r£h}r¤h]r¥j¡asssh}r¦h}r§h}r¨h]r©j¡asssuUmvsimrª}r«(h}r¬h}r­h]r®Uros/melodic/mvsimr¯assh }r°h }r±h}r²h]r³Uros-melodic-mvsimr´assshˆh}rµh}r¶h}r·h]r¸j´asssh}r¹h}rºh}r»h]r¼j´asssuUcob_phidget_em_stater½}r¾(h}r¿h}rÀh]rÁUros/melodic/cob_driverrÂassh }rÃh }rÄh}rÅh]rÆU ros-melodic-cob-phidget-em-staterÇassshˆh}rÈh}rÉh}rÊh]rËjÇasssh}rÌh}rÍh}rÎh]rÏjÇasssuUcalibration_launchrÐ}rÑ(h}rÒh}rÓh]rÔUros/melodic/calibrationrÕassh }rÖh }r×h}rØh]rÙUros-melodic-calibration-launchrÚassshˆh}rÛh}rÜh}rÝh]rÞjÚasssh}rßh}ràh}ráh]râjÚasssuUvisp_camera_calibrationrã}rä(h}råh}ræh]rçUros/melodic/vision_visprèassh }réh }rêh}rëh]rìU#ros-melodic-visp-camera-calibrationríassshˆh}rîh}rïh}rðh]rñjíasssh}ròh}róh}rôh]rõjíasssuU mcl_3dl_msgsrö}r÷(h}røh}rùh]rúUros/melodic/mcl_3dl_msgsrûassh }rüh }rýh}rþh]rÿUros-melodic-mcl-3dl-msgsrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUpcl_msgsr }r (h}r h}r h]r Uros/melodic/pcl_msgsrassh }rh }rh}rh]rUros-melodic-pcl-msgsrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuU fetch_gazebor}r(h}rh}rh]r Uros/melodic/fetch_gazebor!assh }r"h }r#h}r$h]r%Uros-melodic-fetch-gazebor&assshˆh}r'h}r(h}r)h]r*j&asssh}r+h}r,h}r-h]r.j&asssuUnav_grid_iteratorsr/}r0(h}r1h}r2h]r3Uros/melodic/robot_navigationr4assh }r5h }r6h}r7h]r8Uros-melodic-nav-grid-iteratorsr9assshˆh}r:h}r;h}r<h]r=j9asssh}r>h}r?h}r@h]rAj9asssuUcob_gazebo_toolsrB}rC(h}rDh}rEh]rFUros/melodic/cob_simulationrGassh }rHh }rIh}rJh]rKUros-melodic-cob-gazebo-toolsrLassshˆh}rMh}rNh}rOh]rPjLasssh}rQh}rRh}rSh]rTjLasssuU ecl_toolsrU}rV(h}rWh}rXh]rYUros/melodic/ecl_toolsrZassh }r[h }r\h}r]h]r^Uros-melodic-ecl-toolsr_assshˆh}r`h}rah}rbh]rcj_asssh}rdh}reh}rfh]rgj_asssuUwge100_camera_firmwarerh}ri(h}rjh}rkh]rlUros/melodic/wge100_driverrmassh }rnh }roh}rph]rqU"ros-melodic-wge100-camera-firmwarerrassshˆh}rsh}rth}ruh]rvjrasssh}rwh}rxh}ryh]rzjrasssuUrqt_common_pluginsr{}r|(h}r}h}r~h]rUros/melodic/rqt_common_pluginsr€assh }rh }r‚h}rƒh]r„Uros-melodic-rqt-common-pluginsr…assshˆh}r†h}r‡h}rˆh]r‰j…asssh}rŠh}r‹h}rŒh]rj…asssuU xpp_quadrotorrŽ}r(h}rh}r‘h]r’Uros/melodic/xppr“assh }r”h }r•h}r–h]r—Uros-melodic-xpp-quadrotorr˜assshˆh}r™h}ršh}r›h]rœj˜asssh}rh}ržh}rŸh]r j˜asssuUrqt_plotr¡}r¢(h}r£h}r¤h]r¥Uros/melodic/rqt_plotr¦assh }r§h }r¨h}r©h]rªUros-melodic-rqt-plotr«assshˆh}r¬h}r­h}r®h]r¯j«asssh}r°h}r±h}r²h]r³j«asssuU velodyne_msgsr´}rµ(h}r¶h}r·h]r¸Uros/melodic/velodyner¹assh }rºh }r»h}r¼h]r½Uros-melodic-velodyne-msgsr¾assshˆh}r¿h}rÀh}rÁh]rÂj¾asssh}rÃh}rÄh}rÅh]rÆj¾asssuUwarthog_gazeborÇ}rÈ(h}rÉh}rÊh]rËUros/melodic/warthog_simulatorrÌassh }rÍh }rÎh}rÏh]rÐUros-melodic-warthog-gazeborÑassshˆh}rÒh}rÓh}rÔh]rÕjÑasssh}rÖh}r×h}rØh]rÙjÑasssuUjsk_topic_toolsrÚ}rÛ(h}rÜh}rÝh]rÞUros/melodic/jsk_commonrßassh }ràh }ráh}râh]rãUros-melodic-jsk-topic-toolsräassshˆh}råh}ræh}rçh]rèjäasssh}réh}rêh}rëh]rìjäasssuUridgeback_gazebo_pluginsrí}rî(h}rïh}rðh]rñUros/melodic/ridgeback_simulatorròassh }róh }rôh}rõh]röU$ros-melodic-ridgeback-gazebo-pluginsr÷assshˆh}røh}rùh}rúh]rûj÷asssh}rüh}rýh}rþh]rÿj÷asssuUusb_cam_hardware_interfacer}r(h}rh}rh]rUros/melodic/usb_cam_hardwarerassh }rh }rh}rh]r U&ros-melodic-usb-cam-hardware-interfacer assshˆh}r h}r h}r h]rj asssh}rh}rh}rh]rj asssuUpr2_navigation_configr}r(h}rh}rh]rUros/melodic/pr2_navigationrassh }rh }rh}rh]rU!ros-melodic-pr2-navigation-configrassshˆh}rh}rh}r h]r!jasssh}r"h}r#h}r$h]r%jasssuUecl_converters_liter&}r'(h}r(h}r)h]r*Uros/melodic/ecl_liter+assh }r,h }r-h}r.h]r/Uros-melodic-ecl-converters-liter0assshˆh}r1h}r2h}r3h]r4j0asssh}r5h}r6h}r7h]r8j0asssuU rqt_shellr9}r:(h}r;h}r<h]r=Uros/melodic/rqt_shellr>assh }r?h }r@h}rAh]rBUros-melodic-rqt-shellrCassshˆh}rDh}rEh}rFh]rGjCasssh}rHh}rIh}rJh]rKjCasssuU p2os_driverrL}rM(h}rNh}rOh]rPUros/melodic/p2osrQassh }rRh }rSh}rTh]rUUros-melodic-p2os-driverrVassshˆh}rWh}rXh}rYh]rZjVasssh}r[h}r\h}r]h]r^jVasssuUpr2_teleop_generalr_}r`(h}rah}rbh]rcUros/melodic/pr2_appsrdassh }reh }rfh}rgh]rhUros-melodic-pr2-teleop-generalriassshˆh}rjh}rkh}rlh]rmjiasssh}rnh}roh}rph]rqjiasssuU#turtlebot3_automatic_parking_visionrr}rs(h}rth}ruh]rvU#ros/melodic/turtlebot3_applicationsrwassh }rxh }ryh}rzh]r{U/ros-melodic-turtlebot3-automatic-parking-visionr|assshˆh}r}h}r~h}rh]r€j|asssh}rh}r‚h}rƒh]r„j|asssuU image_view2r…}r†(h}r‡h}rˆh]r‰Uros/melodic/jsk_commonrŠassh }r‹h }rŒh}rh]rŽUros-melodic-image-view2rassshˆh}rh}r‘h}r’h]r“jasssh}r”h}r•h}r–h]r—jasssuUkartech_linear_actuator_msgsr˜}r™(h}ršh}r›h]rœUros/melodic/astuff_sensor_msgsrassh }ržh }rŸh}r h]r¡U(ros-melodic-kartech-linear-actuator-msgsr¢assshˆh}r£h}r¤h}r¥h]r¦j¢asssh}r§h}r¨h}r©h]rªj¢asssuUvisualization_osgr«}r¬(h}r­h}r®h]r¯Uros/melodic/visualization_osgr°assh }r±h }r²h}r³h]r´Uros-melodic-visualization-osgrµassshˆh}r¶h}r·h}r¸h]r¹jµasssh}rºh}r»h}r¼h]r½jµasssuUforce_torque_sensor_controllerr¾}r¿(h}rÀh}rÁh]rÂUros/melodic/ros_controllersrÃassh }rÄh }rÅh}rÆh]rÇU*ros-melodic-force-torque-sensor-controllerrÈassshˆh}rÉh}rÊh}rËh]rÌjÈasssh}rÍh}rÎh}rÏh]rÐjÈasssuUoctomaprÑ}rÒ(h}rÓh}rÔh]rÕUros/melodic/octomaprÖassh }r×h }rØh}rÙh]rÚUros-melodic-octomaprÛassshˆh}rÜh}rÝh}rÞh]rßjÛasssh}ràh}ráh}râh]rãjÛasssuU libphidgetsrä}rå(h}ræh}rçh]rèUros/melodic/cob_externréassh }rêh }rëh}rìh]ríUros-melodic-libphidgetsrîassshˆh}rïh}rðh}rñh]ròjîasssh}róh}rôh}rõh]röjîasssuUfranka_controlr÷}rø(h}rùh}rúh]rûUros/melodic/franka_rosrüassh }rýh }rþh}rÿh]rUros-melodic-franka-controlrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]r jasssuUbondpyr }r (h}r h}r h]rUros/melodic/bond_corerassh }rh }rh}rh]rUros-melodic-bondpyrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuU cnn_bridger}r(h}rh}r h]r!Uros/melodic/cnn_bridger"assh }r#h }r$h}r%h]r&Uros-melodic-cnn-bridger'assshˆh}r(h}r)h}r*h]r+j'asssh}r,h}r-h}r.h]r/j'asssuUtf2_pyr0}r1(h}r2h}r3h]r4Uros/melodic/geometry2r5assh }r6h }r7h}r8h]r9Uros-melodic-tf2-pyr:assshˆh}r;h}r<h}r=h]r>j:asssh}r?h}r@h}rAh]rBj:asssuUrdl_msgsrC}rD(h}rEh}rFh]rGUros/melodic/rdlrHassh }rIh }rJh}rKh]rLUros-melodic-rdl-msgsrMassshˆh}rNh}rOh}rPh]rQjMasssh}rRh}rSh}rTh]rUjMasssuUautomotive_autonomy_msgsrV}rW(h}rXh}rYh]rZU$ros/melodic/automotive_autonomy_msgsr[assh }r\h }r]h}r^h]r_U$ros-melodic-automotive-autonomy-msgsr`assshˆh}rah}rbh}rch]rdj`asssh}reh}rfh}rgh]rhj`asssuUhls_lfcd_lds_driverri}rj(h}rkh}rlh]rmUros/melodic/hls-lfcd-lds-driverrnassh }roh }rph}rqh]rrUros-melodic-hls-lfcd-lds-driverrsassshˆh}rth}ruh}rvh]rwjsasssh}rxh}ryh}rzh]r{jsasssuU nav2d_remoter|}r}(h}r~h}rh]r€Uros/melodic/navigation_2drassh }r‚h }rƒh}r„h]r…Uros-melodic-nav2d-remoter†assshˆh}r‡h}rˆh}r‰h]rŠj†asssh}r‹h}rŒh}rh]rŽj†asssuU rocon_consoler}r(h}r‘h}r’h]r“Uros/melodic/rocon_toolsr”assh }r•h }r–h}r—h]r˜Uros-melodic-rocon-consoler™assshˆh}ršh}r›h}rœh]rj™asssh}ržh}rŸh}r h]r¡j™asssuUrobot_pose_ekfr¢}r£(h}r¤h}r¥h]r¦Uros/melodic/robot_pose_ekfr§assh }r¨h }r©h}rªh]r«Uros-melodic-robot-pose-ekfr¬assshˆh}r­h}r®h}r¯h]r°j¬asssh}r±h}r²h}r³h]r´j¬asssuUgraftrµ}r¶(h}r·h}r¸h]r¹Uros/melodic/graftrºassh }r»h }r¼h}r½h]r¾Uros-melodic-graftr¿assshˆh}rÀh}rÁh}rÂh]rÃj¿asssh}rÄh}rÅh}rÆh]rÇj¿asssuUhector_slam_launchrÈ}rÉ(h}rÊh}rËh]rÌUros/melodic/hector_slamrÍassh }rÎh }rÏh}rÐh]rÑUros-melodic-hector-slam-launchrÒassshˆh}rÓh}rÔh}rÕh]rÖjÒasssh}r×h}rØh}rÙh]rÚjÒasssuU dbw_fca_msgsrÛ}rÜ(h}rÝh}rÞh]rßUros/melodic/dbw_fca_rosràassh }ráh }râh}rãh]räUros-melodic-dbw-fca-msgsråassshˆh}ræh}rçh}rèh]réjåasssh}rêh}rëh}rìh]ríjåasssuUcob_android_msgsrî}rï(h}rðh}rñh]ròUros/melodic/cob_androidróassh }rôh }rõh}röh]r÷Uros-melodic-cob-android-msgsrøassshˆh}rùh}rúh}rûh]rüjøasssh}rýh}rþh}rÿh]rjøasssuU spacenav_noder}r(h}rh}rh]rUros/melodic/joystick_driversrassh }rh }rh}r h]r Uros-melodic-spacenav-noder assshˆh}r h}r h}rh]rj asssh}rh}rh}rh]rj asssuU diagnosticsr}r(h}rh}rh]rUros/melodic/diagnosticsrassh }rh }rh}rh]rUros-melodic-diagnosticsrassshˆh}rh}r h}r!h]r"jasssh}r#h}r$h}r%h]r&jasssuUpr2_common_action_msgsr'}r((h}r)h}r*h]r+Uros/melodic/pr2_common_actionsr,assh }r-h }r.h}r/h]r0U"ros-melodic-pr2-common-action-msgsr1assshˆh}r2h}r3h}r4h]r5j1asssh}r6h}r7h}r8h]r9j1asssuUecl_sigslots_liter:}r;(h}r<h}r=h]r>Uros/melodic/ecl_liter?assh }r@h }rAh}rBh]rCUros-melodic-ecl-sigslots-literDassshˆh}rEh}rFh}rGh]rHjDasssh}rIh}rJh}rKh]rLjDasssuUfetch_navigationrM}rN(h}rOh}rPh]rQUros/melodic/fetch_rosrRassh }rSh }rTh}rUh]rVUros-melodic-fetch-navigationrWassshˆh}rXh}rYh}rZh]r[jWasssh}r\h}r]h}r^h]r_jWasssuUmbf_costmap_navr`}ra(h}rbh}rch]rdUros/melodic/move_base_flexreassh }rfh }rgh}rhh]riUros-melodic-mbf-costmap-navrjassshˆh}rkh}rlh}rmh]rnjjasssh}roh}rph}rqh]rrjjasssuU husky_vizrs}rt(h}ruh}rvh]rwUros/melodic/huskyrxassh }ryh }rzh}r{h]r|Uros-melodic-husky-vizr}assshˆh}r~h}rh}r€h]rj}asssh}r‚h}rƒh}r„h]r…j}asssuUtuw_vehicle_msgsr†}r‡(h}rˆh}r‰h]rŠUros/melodic/tuw_msgsr‹assh }rŒh }rh}rŽh]rUros-melodic-tuw-vehicle-msgsrassshˆh}r‘h}r’h}r“h]r”jasssh}r•h}r–h}r—h]r˜jasssuUjackal_controlr™}rš(h}r›h}rœh]rUros/melodic/jackalržassh }rŸh }r h}r¡h]r¢Uros-melodic-jackal-controlr£assshˆh}r¤h}r¥h}r¦h]r§j£asssh}r¨h}r©h}rªh]r«j£asssuUvrpn_client_rosr¬}r­(h}r®h}r¯h]r°Uros/melodic/vrpn_client_rosr±assh }r²h }r³h}r´h]rµUros-melodic-vrpn-client-rosr¶assshˆh}r·h}r¸h}r¹h]rºj¶asssh}r»h}r¼h}r½h]r¾j¶asssuUmultisense_bringupr¿}rÀ(h}rÁh}rÂh]rÃUros/melodic/multisense_rosrÄassh }rÅh }rÆh}rÇh]rÈUros-melodic-multisense-bringuprÉassshˆh}rÊh}rËh}rÌh]rÍjÉasssh}rÎh}rÏh}rÐh]rÑjÉasssuU leuze_msgsrÒ}rÓ(h}rÔh}rÕh]rÖUros/melodic/leuze_ros_driversr×assh }rØh }rÙh}rÚh]rÛUros-melodic-leuze-msgsrÜassshˆh}rÝh}rÞh}rßh]ràjÜasssh}ráh}râh}rãh]räjÜasssuU p2os_launchrå}ræ(h}rçh}rèh]réUros/melodic/p2osrêassh }rëh }rìh}ríh]rîUros-melodic-p2os-launchrïassshˆh}rðh}rñh}ròh]rójïasssh}rôh}rõh}röh]r÷jïasssuUrosgraphrø}rù(h}rúh}rûh]rüUros/melodic/ros_commrýassh }rþh }rÿh}r h]r Uros-melodic-rosgraphr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuUasync_web_server_cppr }r (h}r h}r h]r U ros/melodic/async_web_server_cppr assh }r h }r h}r h]r U ros-melodic-async-web-server-cppr assshˆh}r h}r h}r h]r j asssh}r h}r h}r h]r j asssuUqt_gui_py_commonr }r (h}r h}r! h]r" Uros/melodic/qt_gui_corer# assh }r$ h }r% h}r& h]r' Uros-melodic-qt-gui-py-commonr( assshˆh}r) h}r* h}r+ h]r, j( asssh}r- h}r. h}r/ h]r0 j( asssuUopenni_descriptionr1 }r2 (h}r3 h}r4 h]r5 Uros/melodic/openni_camerar6 assh }r7 h }r8 h}r9 h]r: Uros-melodic-openni-descriptionr; assshˆh}r< h}r= h}r> h]r? j; asssh}r@ h}rA h}rB h]rC j; asssuUtoposensrD }rE (h}rF h}rG h]rH Uros/melodic/toposensrI assh }rJ h }rK h}rL h]rM Uros-melodic-toposensrN assshˆh}rO h}rP h}rQ h]rR jN asssh}rS h}rT h}rU h]rV jN asssuUrosrW }rX (h}rY h}rZ h]r[ Uros/melodic/rosr\ assh }r] h }r^ h}r_ h]r` Uros-melodic-rosra assshˆh}rb h}rc h}rd h]re ja asssh}rf h}rg h}rh h]ri ja asssuUdwb_msgsrj }rk (h}rl h}rm h]rn Uros/melodic/robot_navigationro assh }rp h }rq h}rr h]rs Uros-melodic-dwb-msgsrt assshˆh}ru h}rv h}rw h]rx jt asssh}ry h}rz h}r{ h]r| jt asssuUrxrosr} }r~ (h}r h}r€ h]r Uros/melodic/rxrosr‚ assh }rƒ h }r„ h}r… h]r† Uros-melodic-rxrosr‡ assshˆh}rˆ h}r‰ h}rŠ h]r‹ j‡ asssh}rŒ h}r h}rŽ h]r j‡ asssuU pose_cov_opsr }r‘ (h}r’ h}r“ h]r” Uros/melodic/pose_cov_opsr• assh }r– h }r— h}r˜ h]r™ Uros-melodic-pose-cov-opsrš assshˆh}r› h}rœ h}r h]rž jš asssh}rŸ h}r  h}r¡ h]r¢ jš asssuUaudibot_descriptionr£ }r¤ (h}r¥ h}r¦ h]r§ Uros/melodic/audibotr¨ assh }r© h }rª h}r« h]r¬ Uros-melodic-audibot-descriptionr­ assshˆh}r® h}r¯ h}r° h]r± j­ asssh}r² h}r³ h}r´ h]rµ j­ asssuUdbw_fcar¶ }r· (h}r¸ h}r¹ h]rº Uros/melodic/dbw_fca_rosr» assh }r¼ h }r½ h}r¾ h]r¿ Uros-melodic-dbw-fcarÀ assshˆh}rÁ h}r h}rà h]rÄ jÀ asssh}rÅ h}rÆ h}rÇ h]rÈ jÀ asssuUpr2_position_scriptsrÉ }rÊ (h}rË h}rÌ h]rÍ Uros/melodic/pr2_appsrÎ assh }rÏ h }rÐ h}rÑ h]rÒ U ros-melodic-pr2-position-scriptsrÓ assshˆh}rÔ h}rÕ h}rÖ h]r× jÓ asssh}rØ h}rÙ h}rÚ h]rÛ jÓ asssuU nmea_commsrÜ }rÝ (h}rÞ h}rß h]rà Uros/melodic/nmea_commsrá assh }râ h }rã h}rä h]rå Uros-melodic-nmea-commsræ assshˆh}rç h}rè h}ré h]rê jæ asssh}rë h}rì h}rí h]rî jæ asssuUecl_literï }rð (h}rñ h}rò h]ró Uros/melodic/ecl_literô assh }rõ h }rö h}r÷ h]rø Uros-melodic-ecl-literù assshˆh}rú h}rû h}rü h]rý jù asssh}rþ h}rÿ h}r!h]r!jù asssuUcob_twist_controllerr!}r!(h}r!h}r!h]r!Uros/melodic/cob_controlr!assh }r!h }r !h}r !h]r !U ros-melodic-cob-twist-controllerr !assshˆh}r !h}r!h}r!h]r!j !asssh}r!h}r!h}r!h]r!j !asssuU map_organizerr!}r!(h}r!h}r!h]r!Uros/melodic/neonavigationr!assh }r!h }r!h}r!h]r!Uros-melodic-map-organizerr!assshˆh}r !h}r!!h}r"!h]r#!j!asssh}r$!h}r%!h}r&!h]r'!j!asssuU&dynamixel_workbench_single_manager_guir(!}r)!(h}r*!h}r+!h]r,!Uros/melodic/dynamixel-workbenchr-!assh }r.!h }r/!h}r0!h]r1!U2ros-melodic-dynamixel-workbench-single-manager-guir2!assshˆh}r3!h}r4!h}r5!h]r6!j2!asssh}r7!h}r8!h}r9!h]r:!j2!asssuUcob_srvsr;!}r!h]r?!Uros/melodic/cob_commonr@!assh }rA!h }rB!h}rC!h]rD!Uros-melodic-cob-srvsrE!assshˆh}rF!h}rG!h}rH!h]rI!jE!asssh}rJ!h}rK!h}rL!h]rM!jE!asssuU cob_phidgetsrN!}rO!(h}rP!h}rQ!h]rR!Uros/melodic/cob_driverrS!assh }rT!h }rU!h}rV!h]rW!Uros-melodic-cob-phidgetsrX!assshˆh}rY!h}rZ!h}r[!h]r\!jX!asssh}r]!h}r^!h}r_!h]r`!jX!asssuU rosboost_cfgra!}rb!(h}rc!h}rd!h]re!Uros/melodic/rosrf!assh }rg!h }rh!h}ri!h]rj!Uros-melodic-rosboost-cfgrk!assshˆh}rl!h}rm!h}rn!h]ro!jk!asssh}rp!h}rq!h}rr!h]rs!jk!asssuUrc_roi_manager_guirt!}ru!(h}rv!h}rw!h]rx!Uros/melodic/rc_visardry!assh }rz!h }r{!h}r|!h]r}!Uros-melodic-rc-roi-manager-guir~!assshˆh}r!h}r€!h}r!h]r‚!j~!asssh}rƒ!h}r„!h}r…!h]r†!j~!asssuU arbotix_msgsr‡!}rˆ!(h}r‰!h}rŠ!h]r‹!Uros/melodic/arbotixrŒ!assh }r!h }rŽ!h}r!h]r!Uros-melodic-arbotix-msgsr‘!assshˆh}r’!h}r“!h}r”!h]r•!j‘!asssh}r–!h}r—!h}r˜!h]r™!j‘!asssuUdynamixel_workbench_operatorsrš!}r›!(h}rœ!h}r!h]rž!Uros/melodic/dynamixel-workbenchrŸ!assh }r !h }r¡!h}r¢!h]r£!U)ros-melodic-dynamixel-workbench-operatorsr¤!assshˆh}r¥!h}r¦!h}r§!h]r¨!j¤!asssh}r©!h}rª!h}r«!h]r¬!j¤!asssuUjsk_interactiver­!}r®!(h}r¯!h}r°!h]r±!Uros/melodic/jsk_visualizationr²!assh }r³!h }r´!h}rµ!h]r¶!Uros-melodic-jsk-interactiver·!assshˆh}r¸!h}r¹!h}rº!h]r»!j·!asssh}r¼!h}r½!h}r¾!h]r¿!j·!asssuU geometry2rÀ!}rÁ!(h}rÂ!h}rÃ!h]rÄ!Uros/melodic/geometry2rÅ!assh }rÆ!h }rÇ!h}rÈ!h]rÉ!Uros-melodic-geometry2rÊ!assshˆh}rË!h}rÌ!h}rÍ!h]rÎ!jÊ!asssh}rÏ!h}rÐ!h}rÑ!h]rÒ!jÊ!asssuUecl_exceptionsrÓ!}rÔ!(h}rÕ!h}rÖ!h]r×!Uros/melodic/ecl_corerØ!assh }rÙ!h }rÚ!h}rÛ!h]rÜ!Uros-melodic-ecl-exceptionsrÝ!assshˆh}rÞ!h}rß!h}rà!h]rá!jÝ!asssh}râ!h}rã!h}rä!h]rå!jÝ!asssuUurdf_geometry_parserræ!}rç!(h}rè!h}ré!h]rê!U ros/melodic/urdf_geometry_parserrë!assh }rì!h }rí!h}rî!h]rï!U ros-melodic-urdf-geometry-parserrð!assshˆh}rñ!h}rò!h}ró!h]rô!jð!asssh}rõ!h}rö!h}r÷!h]rø!jð!asssuUrqt_guirù!}rú!(h}rû!h}rü!h]rý!Uros/melodic/rqtrþ!assh }rÿ!h }r"h}r"h]r"Uros-melodic-rqt-guir"assshˆh}r"h}r"h}r"h]r"j"asssh}r"h}r "h}r "h]r "j"asssuU wifi_ddwrtr "}r "(h}r"h}r"h]r"Uros/melodic/wifi_ddwrtr"assh }r"h }r"h}r"h]r"Uros-melodic-wifi-ddwrtr"assshˆh}r"h}r"h}r"h]r"j"asssh}r"h}r"h}r"h]r"j"asssuUdiagnostic_common_diagnosticsr"}r "(h}r!"h}r""h]r#"Uros/melodic/diagnosticsr$"assh }r%"h }r&"h}r'"h]r("U)ros-melodic-diagnostic-common-diagnosticsr)"assshˆh}r*"h}r+"h}r,"h]r-"j)"asssh}r."h}r/"h}r0"h]r1"j)"asssuUuuv_gazebo_pluginsr2"}r3"(h}r4"h}r5"h]r6"Uros/melodic/uuv_simulatorr7"assh }r8"h }r9"h}r:"h]r;"Uros-melodic-uuv-gazebo-pluginsr<"assshˆh}r="h}r>"h}r?"h]r@"j<"asssh}rA"h}rB"h}rC"h]rD"j<"asssuUcartesian_msgsrE"}rF"(h}rG"h}rH"h]rI"Uros/melodic/cartesian_msgsrJ"assh }rK"h }rL"h}rM"h]rN"Uros-melodic-cartesian-msgsrO"assshˆh}rP"h}rQ"h}rR"h]rS"jO"asssh}rT"h}rU"h}rV"h]rW"jO"asssuU rosthrottlerX"}rY"(h}rZ"h}r["h]r\"Uros/melodic/rosthrottler]"assh }r^"h }r_"h}r`"h]ra"Uros-melodic-rosthrottlerb"assshˆh}rc"h}rd"h}re"h]rf"jb"asssh}rg"h}rh"h}ri"h]rj"jb"asssuUcob_obstacle_distancerk"}rl"(h}rm"h}rn"h]ro"Uros/melodic/cob_controlrp"assh }rq"h }rr"h}rs"h]rt"U!ros-melodic-cob-obstacle-distanceru"assshˆh}rv"h}rw"h}rx"h]ry"ju"asssh}rz"h}r{"h}r|"h]r}"ju"asssuU polled_camerar~"}r"(h}r€"h}r"h]r‚"Uros/melodic/image_commonrƒ"assh }r„"h }r…"h}r†"h]r‡"Uros-melodic-polled-camerarˆ"assshˆh}r‰"h}rŠ"h}r‹"h]rŒ"jˆ"asssh}r"h}rŽ"h}r"h]r"jˆ"asssuUcostmap_converterr‘"}r’"(h}r“"h}r”"h]r•"Uros/melodic/costmap_converterr–"assh }r—"h }r˜"h}r™"h]rš"Uros-melodic-costmap-converterr›"assshˆh}rœ"h}r"h}rž"h]rŸ"j›"asssh}r "h}r¡"h}r¢"h]r£"j›"asssuU ecl_threadsr¤"}r¥"(h}r¦"h}r§"h]r¨"Uros/melodic/ecl_corer©"assh }rª"h }r«"h}r¬"h]r­"Uros-melodic-ecl-threadsr®"assshˆh}r¯"h}r°"h}r±"h]r²"j®"asssh}r³"h}r´"h}rµ"h]r¶"j®"asssuUswri_dbw_interfacer·"}r¸"(h}r¹"h}rº"h]r»"Uros/melodic/marti_commonr¼"assh }r½"h }r¾"h}r¿"h]rÀ"Uros-melodic-swri-dbw-interfacerÁ"assshˆh}rÂ"h}rÃ"h}rÄ"h]rÅ"jÁ"asssh}rÆ"h}rÇ"h}rÈ"h]rÉ"jÁ"asssuUecl_corerÊ"}rË"(h}rÌ"h}rÍ"h]rÎ"Uros/melodic/ecl_corerÏ"assh }rÐ"h }rÑ"h}rÒ"h]rÓ"Uros-melodic-ecl-corerÔ"assshˆh}rÕ"h}rÖ"h}r×"h]rØ"jÔ"asssh}rÙ"h}rÚ"h}rÛ"h]rÜ"jÔ"asssuUrospyrÝ"}rÞ"(h}rß"h}rà"h]rá"Uros/melodic/ros_commrâ"assh }rã"h }rä"h}rå"h]ræ"Uros-melodic-rospyrç"assshˆh}rè"h}ré"h}rê"h]rë"jç"asssh}rì"h}rí"h}rî"h]rï"jç"asssuUrosbash_paramsrð"}rñ"(h}rò"h}ró"h]rô"Uros/melodic/rosbash_paramsrõ"assh }rö"h }r÷"h}rø"h]rù"Uros-melodic-rosbash-paramsrú"assshˆh}rû"h}rü"h}rý"h]rþ"jú"asssh}rÿ"h}r#h}r#h]r#jú"asssuUhector_marker_drawingr#}r#(h}r#h}r#h]r#Uros/melodic/hector_slamr#assh }r #h }r #h}r #h]r #U!ros-melodic-hector-marker-drawingr #assshˆh}r#h}r#h}r#h]r#j #asssh}r#h}r#h}r#h]r#j #asssuUroscpp_tutorialsr#}r#(h}r#h}r#h]r#Uros/melodic/ros_tutorialsr#assh }r#h }r#h}r#h]r#Uros-melodic-roscpp-tutorialsr #assshˆh}r!#h}r"#h}r##h]r$#j #asssh}r%#h}r&#h}r'#h]r(#j #asssuU ecl_buildr)#}r*#(h}r+#h}r,#h]r-#Uros/melodic/ecl_toolsr.#assh }r/#h }r0#h}r1#h]r2#Uros-melodic-ecl-buildr3#assshˆh}r4#h}r5#h}r6#h]r7#j3#asssh}r8#h}r9#h}r:#h]r;#j3#asssuU driver_commonr<#}r=#(h}r>#h}r?#h]r@#Uros/melodic/driver_commonrA#assh }rB#h }rC#h}rD#h]rE#Uros-melodic-driver-commonrF#assshˆh}rG#h}rH#h}rI#h]rJ#jF#asssh}rK#h}rL#h}rM#h]rN#jF#asssuUvisp_hand2eye_calibrationrO#}rP#(h}rQ#h}rR#h]rS#Uros/melodic/vision_visprT#assh }rU#h }rV#h}rW#h]rX#U%ros-melodic-visp-hand2eye-calibrationrY#assshˆh}rZ#h}r[#h}r\#h]r]#jY#asssh}r^#h}r_#h}r`#h]ra#jY#asssuUibeo_luxrb#}rc#(h}rd#h}re#h]rf#Uros/melodic/ibeo_luxrg#assh }rh#h }ri#h}rj#h]rk#Uros-melodic-ibeo-luxrl#assshˆh}rm#h}rn#h}ro#h]rp#jl#asssh}rq#h}rr#h}rs#h]rt#jl#asssuU libcreateru#}rv#(h}rw#h}rx#h]ry#Uros/melodic/libcreaterz#assh }r{#h }r|#h}r}#h]r~#Uros-melodic-libcreater#assshˆh}r€#h}r#h}r‚#h]rƒ#j#asssh}r„#h}r…#h}r†#h]r‡#j#asssuUrosmsgrˆ#}r‰#(h}rŠ#h}r‹#h]rŒ#Uros/melodic/ros_commr#assh }rŽ#h }r#h}r#h]r‘#Uros-melodic-rosmsgr’#assshˆh}r“#h}r”#h}r•#h]r–#j’#asssh}r—#h}r˜#h}r™#h]rš#j’#asssuU navigationr›#}rœ#(h}r#h}rž#h]rŸ#Uros/melodic/navigationr #assh }r¡#h }r¢#h}r£#h]r¤#Uros-melodic-navigationr¥#assshˆh}r¦#h}r§#h}r¨#h]r©#j¥#asssh}rª#h}r«#h}r¬#h]r­#j¥#asssuUabb_irb4400_supportr®#}r¯#(h}r°#h}r±#h]r²#Uros/melodic/abbr³#assh }r´#h }rµ#h}r¶#h]r·#Uros-melodic-abb-irb4400-supportr¸#assshˆh}r¹#h}rº#h}r»#h]r¼#j¸#asssh}r½#h}r¾#h}r¿#h]rÀ#j¸#asssuUleuze_ros_driversrÁ#}rÂ#(h}rÃ#h}rÄ#h]rÅ#Uros/melodic/leuze_ros_driversrÆ#assh }rÇ#h }rÈ#h}rÉ#h]rÊ#Uros-melodic-leuze-ros-driversrË#assshˆh}rÌ#h}rÍ#h}rÎ#h]rÏ#jË#asssh}rÐ#h}rÑ#h}rÒ#h]rÓ#jË#asssuU audio_capturerÔ#}rÕ#(h}rÖ#h}r×#h]rØ#Uros/melodic/audio_commonrÙ#assh }rÚ#h }rÛ#h}rÜ#h]rÝ#Uros-melodic-audio-capturerÞ#assshˆh}rß#h}rà#h}rá#h]râ#jÞ#asssh}rã#h}rä#h}rå#h]ræ#jÞ#asssuUtrajectory_tracker_rviz_pluginsrç#}rè#(h}ré#h}rê#h]rë#U&ros/melodic/neonavigation_rviz_pluginsrì#assh }rí#h }rî#h}rï#h]rð#U+ros-melodic-trajectory-tracker-rviz-pluginsrñ#assshˆh}rò#h}ró#h}rô#h]rõ#jñ#asssh}rö#h}r÷#h}rø#h]rù#jñ#asssuUmulti_map_serverrú#}rû#(h}rü#h}rý#h]rþ#Uros/melodic/jsk_commonrÿ#assh }r$h }r$h}r$h]r$Uros-melodic-multi-map-serverr$assshˆh}r$h}r$h}r$h]r$j$asssh}r $h}r $h}r $h]r $j$asssuUdiagnostic_updaterr $}r$(h}r$h}r$h]r$Uros/melodic/diagnosticsr$assh }r$h }r$h}r$h]r$Uros-melodic-diagnostic-updaterr$assshˆh}r$h}r$h}r$h]r$j$asssh}r$h}r$h}r$h]r$j$asssuUindustrial_corer $}r!$(h}r"$h}r#$h]r$$Uros/melodic/industrial_corer%$assh }r&$h }r'$h}r($h]r)$Uros-melodic-industrial-corer*$assshˆh}r+$h}r,$h}r-$h]r.$j*$asssh}r/$h}r0$h}r1$h]r2$j*$asssuUvelocity_controllersr3$}r4$(h}r5$h}r6$h]r7$Uros/melodic/ros_controllersr8$assh }r9$h }r:$h}r;$h]r<$U ros-melodic-velocity-controllersr=$assshˆh}r>$h}r?$h}r@$h]rA$j=$asssh}rB$h}rC$h}rD$h]rE$j=$asssuUrosmonrF$}rG$(h}rH$h}rI$h]rJ$Uros/melodic/rosmonrK$assh }rL$h }rM$h}rN$h]rO$Uros-melodic-rosmonrP$assshˆh}rQ$h}rR$h}rS$h]rT$jP$asssh}rU$h}rV$h}rW$h]rX$jP$asssuUhector_trajectory_serverrY$}rZ$(h}r[$h}r\$h]r]$Uros/melodic/hector_slamr^$assh }r_$h }r`$h}ra$h]rb$U$ros-melodic-hector-trajectory-serverrc$assshˆh}rd$h}re$h}rf$h]rg$jc$asssh}rh$h}ri$h}rj$h]rk$jc$asssuU topic_toolsrl$}rm$(h}rn$h}ro$h]rp$Uros/melodic/ros_commrq$assh }rr$h }rs$h}rt$h]ru$Uros-melodic-topic-toolsrv$assshˆh}rw$h}rx$h}ry$h]rz$jv$asssh}r{$h}r|$h}r}$h]r~$jv$asssuUdbw_mkz_descriptionr$}r€$(h}r$h}r‚$h]rƒ$Uros/melodic/dbw_mkz_rosr„$assh }r…$h }r†$h}r‡$h]rˆ$Uros-melodic-dbw-mkz-descriptionr‰$assshˆh}rŠ$h}r‹$h}rŒ$h]r$j‰$asssh}rŽ$h}r$h}r$h]r‘$j‰$asssuUmbf_simple_navr’$}r“$(h}r”$h}r•$h]r–$Uros/melodic/move_base_flexr—$assh }r˜$h }r™$h}rš$h]r›$Uros-melodic-mbf-simple-navrœ$assshˆh}r$h}rž$h}rŸ$h]r $jœ$asssh}r¡$h}r¢$h}r£$h]r¤$jœ$asssuUp2os_docr¥$}r¦$(h}r§$h}r¨$h]r©$Uros/melodic/p2osrª$assh }r«$h }r¬$h}r­$h]r®$Uros-melodic-p2os-docr¯$assshˆh}r°$h}r±$h}r²$h]r³$j¯$asssh}r´$h}rµ$h}r¶$h]r·$j¯$asssuUar_track_alvar_msgsr¸$}r¹$(h}rº$h}r»$h]r¼$Uros/melodic/ar_track_alvarr½$assh }r¾$h }r¿$h}rÀ$h]rÁ$Uros-melodic-ar-track-alvar-msgsrÂ$assshˆh}rÃ$h}rÄ$h}rÅ$h]rÆ$jÂ$asssh}rÇ$h}rÈ$h}rÉ$h]rÊ$jÂ$asssuU roscreaterË$}rÌ$(h}rÍ$h}rÎ$h]rÏ$Uros/melodic/rosrÐ$assh }rÑ$h }rÒ$h}rÓ$h]rÔ$Uros-melodic-roscreaterÕ$assshˆh}rÖ$h}r×$h}rØ$h]rÙ$jÕ$asssh}rÚ$h}rÛ$h}rÜ$h]rÝ$jÕ$asssuU rostwitterrÞ$}rß$(h}rà$h}rá$h]râ$Uros/melodic/jsk_3rdpartyrã$assh }rä$h }rå$h}ræ$h]rç$Uros-melodic-rostwitterrè$assshˆh}ré$h}rê$h}rë$h]rì$jè$asssh}rí$h}rî$h}rï$h]rð$jè$asssuUum6rñ$}rò$(h}ró$h}rô$h]rõ$Uros/melodic/um6rö$assh }r÷$h }rø$h}rù$h]rú$Uros-melodic-um6rû$assshˆh}rü$h}rý$h}rþ$h]rÿ$jû$asssh}r%h}r%h}r%h]r%jû$asssuU yocs_joyopr%}r%(h}r%h}r%h]r%Uros/melodic/yujin_ocsr %assh }r %h }r %h}r %h]r %Uros-melodic-yocs-joyopr%assshˆh}r%h}r%h}r%h]r%j%asssh}r%h}r%h}r%h]r%j%asssuU ecl_core_appsr%}r%(h}r%h}r%h]r%Uros/melodic/ecl_corer%assh }r%h }r%h}r%h]r %Uros-melodic-ecl-core-appsr!%assshˆh}r"%h}r#%h}r$%h]r%%j!%asssh}r&%h}r'%h}r(%h]r)%j!%asssuUsrdfdomr*%}r+%(h}r,%h}r-%h]r.%Uros/melodic/srdfdomr/%assh }r0%h }r1%h}r2%h]r3%Uros-melodic-srdfdomr4%assshˆh}r5%h}r6%h}r7%h]r8%j4%asssh}r9%h}r:%h}r;%h]r<%j4%asssuU gazebo_rosr=%}r>%(h}r?%h}r@%h]rA%Uros/melodic/gazebo_ros_pkgsrB%assh }rC%h }rD%h}rE%h]rF%Uros-melodic-gazebo-rosrG%assshˆh}rH%h}rI%h}rJ%h]rK%jG%asssh}rL%h}rM%h}rN%h]rO%jG%asssuU leuze_bringuprP%}rQ%(h}rR%h}rS%h]rT%Uros/melodic/leuze_ros_driversrU%assh }rV%h }rW%h}rX%h]rY%Uros-melodic-leuze-bringuprZ%assshˆh}r[%h}r\%h}r]%h]r^%jZ%asssh}r_%h}r`%h}ra%h]rb%jZ%asssuUswri_opencv_utilrc%}rd%(h}re%h}rf%h]rg%Uros/melodic/marti_commonrh%assh }ri%h }rj%h}rk%h]rl%Uros-melodic-swri-opencv-utilrm%assshˆh}rn%h}ro%h}rp%h]rq%jm%asssh}rr%h}rs%h}rt%h]ru%jm%asssuUjuliusrv%}rw%(h}rx%h}ry%h]rz%Uros/melodic/jsk_3rdpartyr{%assh }r|%h }r}%h}r~%h]r%Uros-melodic-juliusr€%assshˆh}r%h}r‚%h}rƒ%h]r„%j€%asssh}r…%h}r†%h}r‡%h]rˆ%j€%asssuUjsk_rqt_pluginsr‰%}rŠ%(h}r‹%h}rŒ%h]r%Uros/melodic/jsk_visualizationrŽ%assh }r%h }r%h}r‘%h]r’%Uros-melodic-jsk-rqt-pluginsr“%assshˆh}r”%h}r•%h}r–%h]r—%j“%asssh}r˜%h}r™%h}rš%h]r›%j“%asssuU open_manipulator_with_tb3_gazeborœ%}r%(h}rž%h}rŸ%h]r %U1ros/melodic/open_manipulator_with_tb3_simulationsr¡%assh }r¢%h }r£%h}r¤%h]r¥%U,ros-melodic-open-manipulator-with-tb3-gazebor¦%assshˆh}r§%h}r¨%h}r©%h]rª%j¦%asssh}r«%h}r¬%h}r­%h]r®%j¦%asssuUeca_a9_controlr¯%}r°%(h}r±%h}r²%h]r³%Uros/melodic/eca_a9r´%assh }rµ%h }r¶%h}r·%h]r¸%Uros-melodic-eca-a9-controlr¹%assshˆh}rº%h}r»%h}r¼%h]r½%j¹%asssh}r¾%h}r¿%h}rÀ%h]rÁ%j¹%asssuUschunk_powercube_chainrÂ%}rÃ%(h}rÄ%h}rÅ%h]rÆ%U#ros/melodic/schunk_modular_roboticsrÇ%assh }rÈ%h }rÉ%h}rÊ%h]rË%U"ros-melodic-schunk-powercube-chainrÌ%assshˆh}rÍ%h}rÎ%h}rÏ%h]rÐ%jÌ%asssh}rÑ%h}rÒ%h}rÓ%h]rÔ%jÌ%asssuUxpp_msgsrÕ%}rÖ%(h}r×%h}rØ%h]rÙ%Uros/melodic/xpprÚ%assh }rÛ%h }rÜ%h}rÝ%h]rÞ%Uros-melodic-xpp-msgsrß%assshˆh}rà%h}rá%h}râ%h]rã%jß%asssh}rä%h}rå%h}ræ%h]rç%jß%asssuUmultimaster_msgs_fkierè%}ré%(h}rê%h}rë%h]rì%Uros/melodic/multimaster_fkierí%assh }rî%h }rï%h}rð%h]rñ%U!ros-melodic-multimaster-msgs-fkierò%assshˆh}ró%h}rô%h}rõ%h]rö%jò%asssh}r÷%h}rø%h}rù%h]rú%jò%asssuUlibdlibrû%}rü%(h}rý%h}rþ%h]rÿ%Uros/melodic/cob_externr&assh }r&h }r&h}r&h]r&Uros-melodic-libdlibr&assshˆh}r&h}r&h}r&h]r &j&asssh}r &h}r &h}r &h]r &j&asssuUcamera_info_manager_pyr&}r&(h}r&h}r&h]r&U"ros/melodic/camera_info_manager_pyr&assh }r&h }r&h}r&h]r&U"ros-melodic-camera-info-manager-pyr&assshˆh}r&h}r&h}r&h]r&j&asssh}r&h}r&h}r&h]r &j&asssuUrobot_localizationr!&}r"&(h}r#&h}r$&h]r%&Uros/melodic/robot_localizationr&&assh }r'&h }r(&h}r)&h]r*&Uros-melodic-robot-localizationr+&assshˆh}r,&h}r-&h}r.&h]r/&j+&asssh}r0&h}r1&h}r2&h]r3&j+&asssuU nav2d_msgsr4&}r5&(h}r6&h}r7&h]r8&Uros/melodic/navigation_2dr9&assh }r:&h }r;&h}r<&h]r=&Uros-melodic-nav2d-msgsr>&assshˆh}r?&h}r@&h}rA&h]rB&j>&asssh}rC&h}rD&h}rE&h]rF&j>&asssuUwiimoterG&}rH&(h}rI&h}rJ&h]rK&Uros/melodic/joystick_driversrL&assh }rM&h }rN&h}rO&h]rP&Uros-melodic-wiimoterQ&assshˆh}rR&h}rS&h}rT&h]rU&jQ&asssh}rV&h}rW&h}rX&h]rY&jQ&asssuU pr2_tuckarmrZ&}r[&(h}r\&h}r]&h]r^&Uros/melodic/pr2_appsr_&assh }r`&h }ra&h}rb&h]rc&Uros-melodic-pr2-tuckarmrd&assshˆh}re&h}rf&h}rg&h]rh&jd&asssh}ri&h}rj&h}rk&h]rl&jd&asssuUmove_slow_and_clearrm&}rn&(h}ro&h}rp&h]rq&Uros/melodic/navigationrr&assh }rs&h }rt&h}ru&h]rv&Uros-melodic-move-slow-and-clearrw&assshˆh}rx&h}ry&h}rz&h]r{&jw&asssh}r|&h}r}&h}r~&h]r&jw&asssuUqpoases_vendorr€&}r&(h}r‚&h}rƒ&h]r„&Uros/melodic/qpoases_vendorr…&assh }r†&h }r‡&h}rˆ&h]r‰&Uros-melodic-qpoases-vendorrŠ&assshˆh}r‹&h}rŒ&h}r&h]rŽ&jŠ&asssh}r&h}r&h}r‘&h]r’&jŠ&asssuU joy_teleopr“&}r”&(h}r•&h}r–&h]r—&Uros/melodic/teleop_toolsr˜&assh }r™&h }rš&h}r›&h]rœ&Uros-melodic-joy-teleopr&assshˆh}rž&h}rŸ&h}r &h]r¡&j&asssh}r¢&h}r£&h}r¤&h]r¥&j&asssuUcollada_parserr¦&}r§&(h}r¨&h}r©&h]rª&Uros/melodic/collada_urdfr«&assh }r¬&h }r­&h}r®&h]r¯&Uros-melodic-collada-parserr°&assshˆh}r±&h}r²&h}r³&h]r´&j°&asssh}rµ&h}r¶&h}r·&h]r¸&j°&asssuU respeaker_rosr¹&}rº&(h}r»&h}r¼&h]r½&Uros/melodic/jsk_3rdpartyr¾&assh }r¿&h }rÀ&h}rÁ&h]rÂ&Uros-melodic-respeaker-rosrÃ&assshˆh}rÄ&h}rÅ&h}rÆ&h]rÇ&jÃ&asssh}rÈ&h}rÉ&h}rÊ&h]rË&jÃ&asssuU moveit_rosrÌ&}rÍ&(h}rÎ&h}rÏ&h]rÐ&Uros/melodic/moveitrÑ&assh }rÒ&h }rÓ&h}rÔ&h]rÕ&Uros-melodic-moveit-rosrÖ&assshˆh}r×&h}rØ&h}rÙ&h]rÚ&jÖ&asssh}rÛ&h}rÜ&h}rÝ&h]rÞ&jÖ&asssuU lpg_plannerrß&}rà&(h}rá&h}râ&h]rã&Uros/melodic/jsk_3rdpartyrä&assh }rå&h }ræ&h}rç&h]rè&Uros-melodic-lpg-plannerré&assshˆh}rê&h}rë&h}rì&h]rí&jé&asssh}rî&h}rï&h}rð&h]rñ&jé&asssuUrobot_activityrò&}ró&(h}rô&h}rõ&h]rö&Uros/melodic/robot_activityr÷&assh }rø&h }rù&h}rú&h]rû&Uros-melodic-robot-activityrü&assshˆh}rý&h}rþ&h}rÿ&h]r'jü&asssh}r'h}r'h}r'h]r'jü&asssuUcombined_robot_hw_testsr'}r'(h}r'h}r'h]r 'Uros/melodic/ros_controlr 'assh }r 'h }r 'h}r 'h]r'U#ros-melodic-combined-robot-hw-testsr'assshˆh}r'h}r'h}r'h]r'j'asssh}r'h}r'h}r'h]r'j'asssuU pr2eus_moveitr'}r'(h}r'h}r'h]r'Uros/melodic/jsk_pr2eusr'assh }r'h }r'h}r 'h]r!'Uros-melodic-pr2eus-moveitr"'assshˆh}r#'h}r$'h}r%'h]r&'j"'asssh}r''h}r('h}r)'h]r*'j"'asssuU sick_scanr+'}r,'(h}r-'h}r.'h]r/'Uros/melodic/sick_scanr0'assh }r1'h }r2'h}r3'h]r4'Uros-melodic-sick-scanr5'assshˆh}r6'h}r7'h}r8'h]r9'j5'asssh}r:'h}r;'h}r<'h]r='j5'asssuUmoveit_visual_toolsr>'}r?'(h}r@'h}rA'h]rB'Uros/melodic/moveit_visual_toolsrC'assh }rD'h }rE'h}rF'h]rG'Uros-melodic-moveit-visual-toolsrH'assshˆh}rI'h}rJ'h}rK'h]rL'jH'asssh}rM'h}rN'h}rO'h]rP'jH'asssuUgmappingrQ'}rR'(h}rS'h}rT'h]rU'Uros/melodic/slam_gmappingrV'assh }rW'h }rX'h}rY'h]rZ'Uros-melodic-gmappingr['assshˆh}r\'h}r]'h}r^'h]r_'j['asssh}r`'h}ra'h}rb'h]rc'j['asssuUturtlebot3_simulationsrd'}re'(h}rf'h}rg'h]rh'U"ros/melodic/turtlebot3_simulationsri'assh }rj'h }rk'h}rl'h]rm'U"ros-melodic-turtlebot3-simulationsrn'assshˆh}ro'h}rp'h}rq'h]rr'jn'asssh}rs'h}rt'h}ru'h]rv'jn'asssuUtablet_socket_msgsrw'}rx'(h}ry'h}rz'h]r{'Uros/melodic/autoware_msgsr|'assh }r}'h }r~'h}r'h]r€'Uros-melodic-tablet-socket-msgsr'assshˆh}r‚'h}rƒ'h}r„'h]r…'j'asssh}r†'h}r‡'h}rˆ'h]r‰'j'asssuU rqt_tf_treerŠ'}r‹'(h}rŒ'h}r'h]rŽ'Uros/melodic/rqt_tf_treer'assh }r'h }r‘'h}r’'h]r“'Uros-melodic-rqt-tf-treer”'assshˆh}r•'h}r–'h}r—'h]r˜'j”'asssh}r™'h}rš'h}r›'h]rœ'j”'asssuUgazebo_ros_controlr'}rž'(h}rŸ'h}r 'h]r¡'Uros/melodic/gazebo_ros_pkgsr¢'assh }r£'h }r¤'h}r¥'h]r¦'Uros-melodic-gazebo-ros-controlr§'assshˆh}r¨'h}r©'h}rª'h]r«'j§'asssh}r¬'h}r­'h}r®'h]r¯'j§'asssuUjoint_trajectory_controllerr°'}r±'(h}r²'h}r³'h]r´'Uros/melodic/ros_controllersrµ'assh }r¶'h }r·'h}r¸'h]r¹'U'ros-melodic-joint-trajectory-controllerrº'assshˆh}r»'h}r¼'h}r½'h]r¾'jº'asssh}r¿'h}rÀ'h}rÁ'h]rÂ'jº'asssuUeuslisprÃ'}rÄ'(h}rÅ'h}rÆ'h]rÇ'Uros/melodic/euslisprÈ'assh }rÉ'h }rÊ'h}rË'h]rÌ'Uros-melodic-euslisprÍ'assshˆh}rÎ'h}rÏ'h}rÐ'h]rÑ'jÍ'asssh}rÒ'h}rÓ'h}rÔ'h]rÕ'jÍ'asssuUyocs_virtual_sensorrÖ'}r×'(h}rØ'h}rÙ'h]rÚ'Uros/melodic/yujin_ocsrÛ'assh }rÜ'h }rÝ'h}rÞ'h]rß'Uros-melodic-yocs-virtual-sensorrà'assshˆh}rá'h}râ'h}rã'h]rä'jà'asssh}rå'h}ræ'h}rç'h]rè'jà'asssuUpr2_app_managerré'}rê'(h}rë'h}rì'h]rí'Uros/melodic/pr2_appsrî'assh }rï'h }rð'h}rñ'h]rò'Uros-melodic-pr2-app-managerró'assshˆh}rô'h}rõ'h}rö'h]r÷'jó'asssh}rø'h}rù'h}rú'h]rû'jó'asssuU grid_map_cvrü'}rý'(h}rþ'h}rÿ'h]r(Uros/melodic/grid_mapr(assh }r(h }r(h}r(h]r(Uros-melodic-grid-map-cvr(assshˆh}r(h}r(h}r (h]r (j(asssh}r (h}r (h}r (h]r(j(asssuU rocon_urir(}r((h}r(h}r(h]r(Uros/melodic/rocon_toolsr(assh }r(h }r(h}r(h]r(Uros-melodic-rocon-urir(assshˆh}r(h}r(h}r(h]r(j(asssh}r(h}r(h}r (h]r!(j(asssuU media_exportr"(}r#((h}r$(h}r%(h]r&(Uros/melodic/media_exportr'(assh }r((h }r)(h}r*(h]r+(Uros-melodic-media-exportr,(assshˆh}r-(h}r.(h}r/(h]r0(j,(asssh}r1(h}r2(h}r3(h]r4(j,(asssuUlaptop_battery_monitorr5(}r6((h}r7(h}r8(h]r9(U'ros/melodic/linux_peripheral_interfacesr:(assh }r;(h }r<(h}r=(h]r>(U"ros-melodic-laptop-battery-monitorr?(assshˆh}r@(h}rA(h}rB(h]rC(j?(asssh}rD(h}rE(h}rF(h]rG(j?(asssuU geometry_msgsrH(}rI((h}rJ(h}rK(h]rL(Uros/melodic/common_msgsrM(assh }rN(h }rO(h}rP(h]rQ(Uros-melodic-geometry-msgsrR(assshˆh}rS(h}rT(h}rU(h]rV(jR(asssh}rW(h}rX(h}rY(h]rZ(jR(asssuUvolksbot_driverr[(}r\((h}r](h}r^(h]r_(Uros/melodic/volksbot_driverr`(assh }ra(h }rb(h}rc(h]rd(Uros-melodic-volksbot-driverre(assshˆh}rf(h}rg(h}rh(h]ri(je(asssh}rj(h}rk(h}rl(h]rm(je(asssuUros_controllersrn(}ro((h}rp(h}rq(h]rr(Uros/melodic/ros_controllersrs(assh }rt(h }ru(h}rv(h]rw(Uros-melodic-ros-controllersrx(assshˆh}ry(h}rz(h}r{(h]r|(jx(asssh}r}(h}r~(h}r(h]r€(jx(asssuUoctomap_mappingr(}r‚((h}rƒ(h}r„(h]r…(Uros/melodic/octomap_mappingr†(assh }r‡(h }rˆ(h}r‰(h]rŠ(Uros-melodic-octomap-mappingr‹(assshˆh}rŒ(h}r(h}rŽ(h]r(j‹(asssh}r(h}r‘(h}r’(h]r“(j‹(asssuUmoveit_runtimer”(}r•((h}r–(h}r—(h]r˜(Uros/melodic/moveitr™(assh }rš(h }r›(h}rœ(h]r(Uros-melodic-moveit-runtimerž(assshˆh}rŸ(h}r (h}r¡(h]r¢(jž(asssh}r£(h}r¤(h}r¥(h]r¦(jž(asssuUttsr§(}r¨((h}r©(h}rª(h]r«(Uros/melodic/ttsr¬(assh }r­(h }r®(h}r¯(h]r°(Uros-melodic-ttsr±(assshˆh}r²(h}r³(h}r´(h]rµ(j±(asssh}r¶(h}r·(h}r¸(h]r¹(j±(asssuUcob_default_env_configrº(}r»((h}r¼(h}r½(h]r¾(Uros/melodic/cob_environmentsr¿(assh }rÀ(h }rÁ(h}rÂ(h]rÃ(U"ros-melodic-cob-default-env-configrÄ(assshˆh}rÅ(h}rÆ(h}rÇ(h]rÈ(jÄ(asssh}rÉ(h}rÊ(h}rË(h]rÌ(jÄ(asssuUmir_navigationrÍ(}rÎ((h}rÏ(h}rÐ(h]rÑ(Uros/melodic/mir_robotrÒ(assh }rÓ(h }rÔ(h}rÕ(h]rÖ(Uros-melodic-mir-navigationr×(assshˆh}rØ(h}rÙ(h}rÚ(h]rÛ(j×(asssh}rÜ(h}rÝ(h}rÞ(h]rß(j×(asssuUrotate_recoveryrà(}rá((h}râ(h}rã(h]rä(Uros/melodic/navigationrå(assh }ræ(h }rç(h}rè(h]ré(Uros-melodic-rotate-recoveryrê(assshˆh}rë(h}rì(h}rí(h]rî(jê(asssh}rï(h}rð(h}rñ(h]rò(jê(asssuUuuv_control_utilsró(}rô((h}rõ(h}rö(h]r÷(Uros/melodic/uuv_simulatorrø(assh }rù(h }rú(h}rû(h]rü(Uros-melodic-uuv-control-utilsrý(assshˆh}rþ(h}rÿ(h}r)h]r)jý(asssh}r)h}r)h}r)h]r)jý(asssuU warthog_msgsr)}r)(h}r)h}r )h]r )Uros/melodic/warthogr )assh }r )h }r )h}r)h]r)Uros-melodic-warthog-msgsr)assshˆh}r)h}r)h}r)h]r)j)asssh}r)h}r)h}r)h]r)j)asssuUmoveit_ros_planning_interfacer)}r)(h}r)h}r)h]r)Uros/melodic/moveitr)assh }r)h }r )h}r!)h]r")U)ros-melodic-moveit-ros-planning-interfacer#)assshˆh}r$)h}r%)h}r&)h]r')j#)asssh}r()h}r))h}r*)h]r+)j#)asssuUmrpt1r,)}r-)(h}r.)h}r/)h]r0)Uros/melodic/mrpt1r1)assh }r2)h }r3)h}r4)h]r5)Uros-melodic-mrpt1r6)assshˆh}r7)h}r8)h}r9)h]r:)j6)asssh}r;)h}r<)h}r=)h]r>)j6)asssuU jsk_roseusr?)}r@)(h}rA)h}rB)h]rC)Uros/melodic/jsk_roseusrD)assh }rE)h }rF)h}rG)h]rH)Uros-melodic-jsk-roseusrI)assshˆh}rJ)h}rK)h}rL)h]rM)jI)asssh}rN)h}rO)h}rP)h]rQ)jI)asssuUpr2_common_actionsrR)}rS)(h}rT)h}rU)h]rV)Uros/melodic/pr2_common_actionsrW)assh }rX)h }rY)h}rZ)h]r[)Uros-melodic-pr2-common-actionsr\)assshˆh}r])h}r^)h}r_)h]r`)j\)asssh}ra)h}rb)h}rc)h]rd)j\)asssuU bond_corere)}rf)(h}rg)h}rh)h]ri)Uros/melodic/bond_corerj)assh }rk)h }rl)h}rm)h]rn)Uros-melodic-bond-corero)assshˆh}rp)h}rq)h}rr)h]rs)jo)asssh}rt)h}ru)h}rv)h]rw)jo)asssuUopen_manipulator_simulationsrx)}ry)(h}rz)h}r{)h]r|)U(ros/melodic/open_manipulator_simulationsr})assh }r~)h }r)h}r€)h]r)U(ros-melodic-open-manipulator-simulationsr‚)assshˆh}rƒ)h}r„)h}r…)h]r†)j‚)asssh}r‡)h}rˆ)h}r‰)h]rŠ)j‚)asssuUmavrosr‹)}rŒ)(h}r)h}rŽ)h]r)Uros/melodic/mavrosr)assh }r‘)h }r’)h}r“)h]r”)Uros-melodic-mavrosr•)assshˆh}r–)h}r—)h}r˜)h]r™)j•)asssh}rš)h}r›)h}rœ)h]r)j•)asssuUyosemite_valleyrž)}rŸ)(h}r )h}r¡)h]r¢)Uros/melodic/uav_testingr£)assh }r¤)h }r¥)h}r¦)h]r§)Uros-melodic-yosemite-valleyr¨)assshˆh}r©)h}rª)h}r«)h]r¬)j¨)asssh}r­)h}r®)h}r¯)h]r°)j¨)asssuU dataspeed_canr±)}r²)(h}r³)h}r´)h]rµ)Uros/melodic/dataspeed_canr¶)assh }r·)h }r¸)h}r¹)h]rº)Uros-melodic-dataspeed-canr»)assshˆh}r¼)h}r½)h}r¾)h]r¿)j»)asssh}rÀ)h}rÁ)h}rÂ)h]rÃ)j»)asssuU husky_gazeborÄ)}rÅ)(h}rÆ)h}rÇ)h]rÈ)Uros/melodic/huskyrÉ)assh }rÊ)h }rË)h}rÌ)h]rÍ)Uros-melodic-husky-gazeborÎ)assshˆh}rÏ)h}rÐ)h}rÑ)h]rÒ)jÎ)asssh}rÓ)h}rÔ)h}rÕ)h]rÖ)jÎ)asssuUqb_device_descriptionr×)}rØ)(h}rÙ)h}rÚ)h]rÛ)Uros/melodic/qb_devicerÜ)assh }rÝ)h }rÞ)h}rß)h]rà)U!ros-melodic-qb-device-descriptionrá)assshˆh}râ)h}rã)h}rä)h]rå)já)asssh}ræ)h}rç)h}rè)h]ré)já)asssuUmobileye_560_660_msgsrê)}rë)(h}rì)h}rí)h]rî)Uros/melodic/astuff_sensor_msgsrï)assh }rð)h }rñ)h}rò)h]ró)U!ros-melodic-mobileye-560-660-msgsrô)assshˆh}rõ)h}rö)h}r÷)h]rø)jô)asssh}rù)h}rú)h}rû)h]rü)jô)asssuUuuv_descriptionsrý)}rþ)(h}rÿ)h}r*h]r*Uros/melodic/uuv_simulatorr*assh }r*h }r*h}r*h]r*Uros-melodic-uuv-descriptionsr*assshˆh}r*h}r *h}r *h]r *j*asssh}r *h}r *h}r*h]r*j*asssuUrospingr*}r*(h}r*h}r*h]r*Uros/melodic/jsk_3rdpartyr*assh }r*h }r*h}r*h]r*Uros-melodic-rospingr*assshˆh}r*h}r*h}r*h]r*j*asssh}r*h}r *h}r!*h]r"*j*asssuUpilz_trajectory_generationr#*}r$*(h}r%*h}r&*h]r'*U"ros/melodic/pilz_industrial_motionr(*assh }r)*h }r**h}r+*h]r,*U&ros-melodic-pilz-trajectory-generationr-*assshˆh}r.*h}r/*h}r0*h]r1*j-*asssh}r2*h}r3*h}r4*h]r5*j-*asssuU mavros_extrasr6*}r7*(h}r8*h}r9*h]r:*Uros/melodic/mavrosr;*assh }r<*h }r=*h}r>*h]r?*Uros-melodic-mavros-extrasr@*assshˆh}rA*h}rB*h}rC*h]rD*j@*asssh}rE*h}rF*h}rG*h]rH*j@*asssuUrdl_urdfreaderrI*}rJ*(h}rK*h}rL*h]rM*Uros/melodic/rdlrN*assh }rO*h }rP*h}rQ*h]rR*Uros-melodic-rdl-urdfreaderrS*assshˆh}rT*h}rU*h}rV*h]rW*jS*asssh}rX*h}rY*h}rZ*h]r[*jS*asssuUnode_manager_fkier\*}r]*(h}r^*h}r_*h]r`*Uros/melodic/multimaster_fkiera*assh }rb*h }rc*h}rd*h]re*Uros-melodic-node-manager-fkierf*assshˆh}rg*h}rh*h}ri*h]rj*jf*asssh}rk*h}rl*h}rm*h]rn*jf*asssuUrospackro*}rp*(h}rq*h}rr*h]rs*Uros/melodic/rospackrt*assh }ru*h }rv*h}rw*h]rx*Uros-melodic-rospackry*assshˆh}rz*h}r{*h}r|*h]r}*jy*asssh}r~*h}r*h}r€*h]r*jy*asssuUcob_script_serverr‚*}rƒ*(h}r„*h}r…*h]r†*Uros/melodic/cob_command_toolsr‡*assh }rˆ*h }r‰*h}rŠ*h]r‹*Uros-melodic-cob-script-serverrŒ*assshˆh}r*h}rŽ*h}r*h]r*jŒ*asssh}r‘*h}r’*h}r“*h]r”*jŒ*asssuU mir_actionsr•*}r–*(h}r—*h}r˜*h]r™*Uros/melodic/mir_robotrš*assh }r›*h }rœ*h}r*h]rž*Uros-melodic-mir-actionsrŸ*assshˆh}r *h}r¡*h}r¢*h]r£*jŸ*asssh}r¤*h}r¥*h}r¦*h]r§*jŸ*asssuU image_rotater¨*}r©*(h}rª*h}r«*h]r¬*Uros/melodic/image_pipeliner­*assh }r®*h }r¯*h}r°*h]r±*Uros-melodic-image-rotater²*assshˆh}r³*h}r´*h}rµ*h]r¶*j²*asssh}r·*h}r¸*h}r¹*h]rº*j²*asssuU!industrial_robot_status_interfacer»*}r¼*(h}r½*h}r¾*h]r¿*U.ros/melodic/industrial_robot_status_controllerrÀ*assh }rÁ*h }rÂ*h}rÃ*h]rÄ*U-ros-melodic-industrial-robot-status-interfacerÅ*assshˆh}rÆ*h}rÇ*h}rÈ*h]rÉ*jÅ*asssh}rÊ*h}rË*h}rÌ*h]rÍ*jÅ*asssuUbayesian_belief_networksrÎ*}rÏ*(h}rÐ*h}rÑ*h]rÒ*Uros/melodic/jsk_3rdpartyrÓ*assh }rÔ*h }rÕ*h}rÖ*h]r×*U$ros-melodic-bayesian-belief-networksrØ*assshˆh}rÙ*h}rÚ*h}rÛ*h]rÜ*jØ*asssh}rÝ*h}rÞ*h}rß*h]rà*jØ*asssuUopen_manipulator_msgsrá*}râ*(h}rã*h}rä*h]rå*U!ros/melodic/open_manipulator_msgsræ*assh }rç*h }rè*h}ré*h]rê*U!ros-melodic-open-manipulator-msgsrë*assshˆh}rì*h}rí*h}rî*h]rï*jë*asssh}rð*h}rñ*h}rò*h]ró*jë*asssuU yocs_msgsrô*}rõ*(h}rö*h}r÷*h]rø*Uros/melodic/yocs_msgsrù*assh }rú*h }rû*h}rü*h]rý*Uros-melodic-yocs-msgsrþ*assshˆh}rÿ*h}r+h}r+h]r+jþ*asssh}r+h}r+h}r+h]r+jþ*asssuUhpp-fclr+}r+(h}r +h}r +h]r +Uros/melodic/hpp-fclr +assh }r +h }r+h}r+h]r+Uros-melodic-hpp-fclr+assshˆh}r+h}r+h}r+h]r+j+asssh}r+h}r+h}r+h]r+j+asssuUqb_move_controlr+}r+(h}r+h}r+h]r+Uros/melodic/qb_mover+assh }r +h }r!+h}r"+h]r#+Uros-melodic-qb-move-controlr$+assshˆh}r%+h}r&+h}r'+h]r(+j$+asssh}r)+h}r*+h}r++h]r,+j$+asssuUcartographer_rosr-+}r.+(h}r/+h}r0+h]r1+Uros/melodic/cartographer_rosr2+assh }r3+h }r4+h}r5+h]r6+Uros-melodic-cartographer-rosr7+assshˆh}r8+h}r9+h}r:+h]r;+j7+asssh}r<+h}r=+h}r>+h]r?+j7+asssuU ibeo_corer@+}rA+(h}rB+h}rC+h]rD+Uros/melodic/ibeo_corerE+assh }rF+h }rG+h}rH+h]rI+Uros-melodic-ibeo-corerJ+assshˆh}rK+h}rL+h}rM+h]rN+jJ+asssh}rO+h}rP+h}rQ+h]rR+jJ+asssuUcob_safety_controllerrS+}rT+(h}rU+h}rV+h]rW+Uros/melodic/cob_substituterX+assh }rY+h }rZ+h}r[+h]r\+U!ros-melodic-cob-safety-controllerr]+assshˆh}r^+h}r_+h}r`+h]ra+j]+asssh}rb+h}rc+h}rd+h]re+j]+asssuUabb_irb5400_supportrf+}rg+(h}rh+h}ri+h]rj+Uros/melodic/abbrk+assh }rl+h }rm+h}rn+h]ro+Uros-melodic-abb-irb5400-supportrp+assshˆh}rq+h}rr+h}rs+h]rt+jp+asssh}ru+h}rv+h}rw+h]rx+jp+asssuUdiff_drive_controllerry+}rz+(h}r{+h}r|+h]r}+Uros/melodic/ros_controllersr~+assh }r+h }r€+h}r+h]r‚+U!ros-melodic-diff-drive-controllerrƒ+assshˆh}r„+h}r…+h}r†+h]r‡+jƒ+asssh}rˆ+h}r‰+h}rŠ+h]r‹+jƒ+asssuUrc_tagdetect_clientrŒ+}r+(h}rŽ+h}r+h]r+Uros/melodic/rc_visardr‘+assh }r’+h }r“+h}r”+h]r•+Uros-melodic-rc-tagdetect-clientr–+assshˆh}r—+h}r˜+h}r™+h]rš+j–+asssh}r›+h}rœ+h}r+h]rž+j–+asssuU cob_sick_s300rŸ+}r +(h}r¡+h}r¢+h]r£+Uros/melodic/cob_driverr¤+assh }r¥+h }r¦+h}r§+h]r¨+Uros-melodic-cob-sick-s300r©+assshˆh}rª+h}r«+h}r¬+h]r­+j©+asssh}r®+h}r¯+h}r°+h]r±+j©+asssuUrocon_device_msgsr²+}r³+(h}r´+h}rµ+h]r¶+Uros/melodic/rocon_msgsr·+assh }r¸+h }r¹+h}rº+h]r»+Uros-melodic-rocon-device-msgsr¼+assshˆh}r½+h}r¾+h}r¿+h]rÀ+j¼+asssh}rÁ+h}rÂ+h}rÃ+h]rÄ+j¼+asssuU dbw_mkz_msgsrÅ+}rÆ+(h}rÇ+h}rÈ+h]rÉ+Uros/melodic/dbw_mkz_rosrÊ+assh }rË+h }rÌ+h}rÍ+h]rÎ+Uros-melodic-dbw-mkz-msgsrÏ+assshˆh}rÐ+h}rÑ+h}rÒ+h]rÓ+jÏ+asssh}rÔ+h}rÕ+h}rÖ+h]r×+jÏ+asssuU flexbe_msgsrØ+}rÙ+(h}rÚ+h}rÛ+h]rÜ+Uros/melodic/flexberÝ+assh }rÞ+h }rß+h}rà+h]rá+Uros-melodic-flexbe-msgsrâ+assshˆh}rã+h}rä+h}rå+h]ræ+jâ+asssh}rç+h}rè+h}ré+h]rê+jâ+asssuUcamera_calibrationrë+}rì+(h}rí+h}rî+h]rï+Uros/melodic/image_pipelinerð+assh }rñ+h }rò+h}ró+h]rô+Uros-melodic-camera-calibrationrõ+assshˆh}rö+h}r÷+h}rø+h]rù+jõ+asssh}rú+h}rû+h}rü+h]rý+jõ+asssuUdlux_global_plannerrþ+}rÿ+(h}r,h}r,h]r,Uros/melodic/robot_navigationr,assh }r,h }r,h}r,h]r,Uros-melodic-dlux-global-plannerr,assshˆh}r ,h}r ,h}r ,h]r ,j,asssh}r ,h}r,h}r,h]r,j,asssuU rosservicer,}r,(h}r,h}r,h]r,Uros/melodic/ros_commr,assh }r,h }r,h}r,h]r,Uros-melodic-rosservicer,assshˆh}r,h}r,h}r,h]r,j,asssh}r ,h}r!,h}r",h]r#,j,asssuU moveit_pr2r$,}r%,(h}r&,h}r',h]r(,Uros/melodic/moveit_pr2r),assh }r*,h }r+,h}r,,h]r-,Uros-melodic-moveit-pr2r.,assshˆh}r/,h}r0,h}r1,h]r2,j.,asssh}r3,h}r4,h}r5,h]r6,j.,asssuUvisualization_marker_tutorialsr7,}r8,(h}r9,h}r:,h]r;,U#ros/melodic/visualization_tutorialsr<,assh }r=,h }r>,h}r?,h]r@,U*ros-melodic-visualization-marker-tutorialsrA,assshˆh}rB,h}rC,h}rD,h]rE,jA,asssh}rF,h}rG,h}rH,h]rI,jA,asssuUpluginlib_tutorialsrJ,}rK,(h}rL,h}rM,h]rN,Uros/melodic/common_tutorialsrO,assh }rP,h }rQ,h}rR,h]rS,Uros-melodic-pluginlib-tutorialsrT,assshˆh}rU,h}rV,h}rW,h]rX,jT,asssh}rY,h}rZ,h}r[,h]r\,jT,asssuUsbplr],}r^,(h}r_,h}r`,h]ra,Uros/melodic/sbplrb,assh }rc,h }rd,h}re,h]rf,Uros-melodic-sbplrg,assshˆh}rh,h}ri,h}rj,h]rk,jg,asssh}rl,h}rm,h}rn,h]ro,jg,asssuUmd49_base_controllerrp,}rq,(h}rr,h}rs,h]rt,U ros/melodic/md49_base_controllerru,assh }rv,h }rw,h}rx,h]ry,U ros-melodic-md49-base-controllerrz,assshˆh}r{,h}r|,h}r},h]r~,jz,asssh}r,h}r€,h}r,h]r‚,jz,asssuUdataspeed_can_usbrƒ,}r„,(h}r…,h}r†,h]r‡,Uros/melodic/dataspeed_canrˆ,assh }r‰,h }rŠ,h}r‹,h]rŒ,Uros-melodic-dataspeed-can-usbr,assshˆh}rŽ,h}r,h}r,h]r‘,j,asssh}r’,h}r“,h}r”,h]r•,j,asssuUrqt_robot_monitorr–,}r—,(h}r˜,h}r™,h]rš,Uros/melodic/rqt_robot_monitorr›,assh }rœ,h }r,h}rž,h]rŸ,Uros-melodic-rqt-robot-monitorr ,assshˆh}r¡,h}r¢,h}r£,h]r¤,j ,asssh}r¥,h}r¦,h}r§,h]r¨,j ,asssuU slime_wrapperr©,}rª,(h}r«,h}r¬,h]r­,Uros/melodic/ros_emacs_utilsr®,assh }r¯,h }r°,h}r±,h]r²,Uros-melodic-slime-wrapperr³,assshˆh}r´,h}rµ,h}r¶,h]r·,j³,asssh}r¸,h}r¹,h}rº,h]r»,j³,asssuU visp_trackerr¼,}r½,(h}r¾,h}r¿,h]rÀ,Uros/melodic/vision_visprÁ,assh }rÂ,h }rÃ,h}rÄ,h]rÅ,Uros-melodic-visp-trackerrÆ,assshˆh}rÇ,h}rÈ,h}rÉ,h]rÊ,jÆ,asssh}rË,h}rÌ,h}rÍ,h]rÎ,jÆ,asssuU ecl_errorsrÏ,}rÐ,(h}rÑ,h}rÒ,h]rÓ,Uros/melodic/ecl_literÔ,assh }rÕ,h }rÖ,h}r×,h]rØ,Uros-melodic-ecl-errorsrÙ,assshˆh}rÚ,h}rÛ,h}rÜ,h]rÝ,jÙ,asssh}rÞ,h}rß,h}rà,h]rá,jÙ,asssuU%open_manipulator_with_tb3_simulationsrâ,}rã,(h}rä,h}rå,h]ræ,U1ros/melodic/open_manipulator_with_tb3_simulationsrç,assh }rè,h }ré,h}rê,h]rë,U1ros-melodic-open-manipulator-with-tb3-simulationsrì,assshˆh}rí,h}rî,h}rï,h]rð,jì,asssh}rñ,h}rò,h}ró,h]rô,jì,asssuUvelodyne_laserscanrõ,}rö,(h}r÷,h}rø,h]rù,Uros/melodic/velodynerú,assh }rû,h }rü,h}rý,h]rþ,Uros-melodic-velodyne-laserscanrÿ,assshˆh}r-h}r-h}r-h]r-jÿ,asssh}r-h}r-h}r-h]r-jÿ,asssuU prbt_supportr-}r -(h}r -h}r -h]r -Uros/melodic/pilz_robotsr -assh }r-h }r-h}r-h]r-Uros-melodic-prbt-supportr-assshˆh}r-h}r-h}r-h]r-j-asssh}r-h}r-h}r-h]r-j-asssuU yocs_rappsr-}r-(h}r-h}r-h]r-Uros/melodic/yujin_ocsr -assh }r!-h }r"-h}r#-h]r$-Uros-melodic-yocs-rappsr%-assshˆh}r&-h}r'-h}r(-h]r)-j%-asssh}r*-h}r+-h}r,-h]r--j%-asssuUcob_perception_commonr.-}r/-(h}r0-h}r1-h]r2-U!ros/melodic/cob_perception_commonr3-assh }r4-h }r5-h}r6-h]r7-U!ros-melodic-cob-perception-commonr8-assshˆh}r9-h}r:-h}r;-h]r<-j8-asssh}r=-h}r>-h}r?-h]r@-j8-asssuU cpp_commonrA-}rB-(h}rC-h}rD-h]rE-Uros/melodic/roscpp_corerF-assh }rG-h }rH-h}rI-h]rJ-Uros-melodic-cpp-commonrK-assshˆh}rL-h}rM-h}rN-h]rO-jK-asssh}rP-h}rQ-h}rR-h]rS-jK-asssuUinteractive_marker_proxyrT-}rU-(h}rV-h}rW-h]rX-U$ros/melodic/interactive_marker_proxyrY-assh }rZ-h }r[-h}r\-h]r]-U$ros-melodic-interactive-marker-proxyr^-assshˆh}r_-h}r`-h}ra-h]rb-j^-asssh}rc-h}rd-h}re-h]rf-j^-asssuUnavigation_stagerg-}rh-(h}ri-h}rj-h]rk-U ros/melodic/navigation_tutorialsrl-assh }rm-h }rn-h}ro-h]rp-Uros-melodic-navigation-stagerq-assshˆh}rr-h}rs-h}rt-h]ru-jq-asssh}rv-h}rw-h}rx-h]ry-jq-asssuUrviz_imu_pluginrz-}r{-(h}r|-h}r}-h]r~-Uros/melodic/imu_toolsr-assh }r€-h }r-h}r‚-h]rƒ-Uros-melodic-rviz-imu-pluginr„-assshˆh}r…-h}r†-h}r‡-h]rˆ-j„-asssh}r‰-h}rŠ-h}r‹-h]rŒ-j„-asssuU simulatorsr-}rŽ-(h}r-h}r-h]r‘-Uros/melodic/metapackagesr’-assh }r“-h }r”-h}r•-h]r–-Uros-melodic-simulatorsr—-assshˆh}r˜-h}r™-h}rš-h]r›-j—-asssh}rœ-h}r-h}rž-h]rŸ-j—-asssuU qt_dotgraphr -}r¡-(h}r¢-h}r£-h]r¤-Uros/melodic/qt_gui_corer¥-assh }r¦-h }r§-h}r¨-h]r©-Uros-melodic-qt-dotgraphrª-assshˆh}r«-h}r¬-h}r­-h]r®-jª-asssh}r¯-h}r°-h}r±-h]r²-jª-asssuUautomotive_navigation_msgsr³-}r´-(h}rµ-h}r¶-h]r·-U$ros/melodic/automotive_autonomy_msgsr¸-assh }r¹-h }rº-h}r»-h]r¼-U&ros-melodic-automotive-navigation-msgsr½-assshˆh}r¾-h}r¿-h}rÀ-h]rÁ-j½-asssh}rÂ-h}rÃ-h}rÄ-h]rÅ-j½-asssuUcob_gazebo_pluginsrÆ-}rÇ-(h}rÈ-h}rÉ-h]rÊ-Uros/melodic/cob_gazebo_pluginsrË-assh }rÌ-h }rÍ-h}rÎ-h]rÏ-Uros-melodic-cob-gazebo-pluginsrÐ-assshˆh}rÑ-h}rÒ-h}rÓ-h]rÔ-jÐ-asssh}rÕ-h}rÖ-h}r×-h]rØ-jÐ-asssuUuwsim_osgoceanrÙ-}rÚ-(h}rÛ-h}rÜ-h]rÝ-Uros/melodic/uwsim_osgoceanrÞ-assh }rß-h }rà-h}rá-h]râ-Uros-melodic-uwsim-osgoceanrã-assshˆh}rä-h}rå-h}ræ-h]rç-jã-asssh}rè-h}ré-h}rê-h]rë-jã-asssuU apriltag_rosrì-}rí-(h}rî-h}rï-h]rð-Uros/melodic/apriltag_rosrñ-assh }rò-h }ró-h}rô-h]rõ-Uros-melodic-apriltag-rosrö-assshˆh}r÷-h}rø-h}rù-h]rú-jö-asssh}rû-h}rü-h}rý-h]rþ-jö-asssuU openni_launchrÿ-}r.(h}r.h}r.h]r.Uros/melodic/openni_camerar.assh }r.h }r.h}r.h]r.Uros-melodic-openni-launchr .assshˆh}r .h}r .h}r .h]r .j .asssh}r.h}r.h}r.h]r.j .asssuU grid_map_corer.}r.(h}r.h}r.h]r.Uros/melodic/grid_mapr.assh }r.h }r.h}r.h]r.Uros-melodic-grid-map-corer.assshˆh}r.h}r.h}r.h]r .j.asssh}r!.h}r".h}r#.h]r$.j.asssuU vapor_masterr%.}r&.(h}r'.h}r(.h]r).Uros/melodic/vapor_masterr*.assh }r+.h }r,.h}r-.h]r..Uros-melodic-vapor-masterr/.assshˆh}r0.h}r1.h}r2.h]r3.j/.asssh}r4.h}r5.h}r6.h]r7.j/.asssuUtuw_marker_pose_estimationr8.}r9.(h}r:.h}r;.h]r<.U ros/melodic/tuw_marker_detectionr=.assh }r>.h }r?.h}r@.h]rA.U&ros-melodic-tuw-marker-pose-estimationrB.assshˆh}rC.h}rD.h}rE.h]rF.jB.asssh}rG.h}rH.h}rI.h]rJ.jB.asssuU dwb_criticsrK.}rL.(h}rM.h}rN.h]rO.Uros/melodic/robot_navigationrP.assh }rQ.h }rR.h}rS.h]rT.Uros-melodic-dwb-criticsrU.assshˆh}rV.h}rW.h}rX.h]rY.jU.asssh}rZ.h}r[.h}r\.h]r].jU.asssuU collada_urdfr^.}r_.(h}r`.h}ra.h]rb.Uros/melodic/collada_urdfrc.assh }rd.h }re.h}rf.h]rg.Uros-melodic-collada-urdfrh.assshˆh}ri.h}rj.h}rk.h]rl.jh.asssh}rm.h}rn.h}ro.h]rp.jh.asssuU swri_profilerrq.}rr.(h}rs.h}rt.h]ru.Uros/melodic/swri_profilerrv.assh }rw.h }rx.h}ry.h]rz.Uros-melodic-swri-profilerr{.assshˆh}r|.h}r}.h}r~.h]r.j{.asssh}r€.h}r.h}r‚.h]rƒ.j{.asssuU uuid_msgsr„.}r….(h}r†.h}r‡.h]rˆ.Uros/melodic/unique_identifierr‰.assh }rŠ.h }r‹.h}rŒ.h]r.Uros-melodic-uuid-msgsrŽ.assshˆh}r.h}r.h}r‘.h]r’.jŽ.asssh}r“.h}r”.h}r•.h]r–.jŽ.asssuUpacmod_game_controlr—.}r˜.(h}r™.h}rš.h]r›.Uros/melodic/pacmod_game_controlrœ.assh }r.h }rž.h}rŸ.h]r .Uros-melodic-pacmod-game-controlr¡.assshˆh}r¢.h}r£.h}r¤.h]r¥.j¡.asssh}r¦.h}r§.h}r¨.h]r©.j¡.asssuUcob_hardware_emulationrª.}r«.(h}r¬.h}r­.h]r®.Uros/melodic/cob_controlr¯.assh }r°.h }r±.h}r².h]r³.U"ros-melodic-cob-hardware-emulationr´.assshˆh}rµ.h}r¶.h}r·.h]r¸.j´.asssh}r¹.h}rº.h}r».h]r¼.j´.asssuUyocs_waypoint_providerr½.}r¾.(h}r¿.h}rÀ.h]rÁ.Uros/melodic/yujin_ocsrÂ.assh }rÃ.h }rÄ.h}rÅ.h]rÆ.U"ros-melodic-yocs-waypoint-providerrÇ.assshˆh}rÈ.h}rÉ.h}rÊ.h]rË.jÇ.asssh}rÌ.h}rÍ.h}rÎ.h]rÏ.jÇ.asssuUschunk_descriptionrÐ.}rÑ.(h}rÒ.h}rÓ.h]rÔ.U#ros/melodic/schunk_modular_roboticsrÕ.assh }rÖ.h }r×.h}rØ.h]rÙ.Uros-melodic-schunk-descriptionrÚ.assshˆh}rÛ.h}rÜ.h}rÝ.h]rÞ.jÚ.asssh}rß.h}rà.h}rá.h]râ.jÚ.asssuU fiducial_msgsrã.}rä.(h}rå.h}ræ.h]rç.Uros/melodic/fiducialsrè.assh }ré.h }rê.h}rë.h]rì.Uros-melodic-fiducial-msgsrí.assshˆh}rî.h}rï.h}rð.h]rñ.jí.asssh}rò.h}ró.h}rô.h]rõ.jí.asssuUgrid_maprö.}r÷.(h}rø.h}rù.h]rú.Uros/melodic/grid_maprû.assh }rü.h }rý.h}rþ.h]rÿ.Uros-melodic-grid-mapr/assshˆh}r/h}r/h}r/h]r/j/asssh}r/h}r/h}r/h]r/j/asssuUabb_irb2400_moveit_configr /}r /(h}r /h}r /h]r /Uros/melodic/abbr/assh }r/h }r/h}r/h]r/U%ros-melodic-abb-irb2400-moveit-configr/assshˆh}r/h}r/h}r/h]r/j/asssh}r/h}r/h}r/h]r/j/asssuUindustrial_robot_clientr/}r/(h}r/h}r/h]r /Uros/melodic/industrial_corer!/assh }r"/h }r#/h}r$/h]r%/U#ros-melodic-industrial-robot-clientr&/assshˆh}r'/h}r(/h}r)/h]r*/j&/asssh}r+/h}r,/h}r-/h]r./j&/asssuU phidgets_imur//}r0/(h}r1/h}r2/h]r3/Uros/melodic/phidgets_driversr4/assh }r5/h }r6/h}r7/h]r8/Uros-melodic-phidgets-imur9/assshˆh}r:/h}r;/h}r/h}r?/h}r@/h]rA/j9/asssuUmarti_perception_msgsrB/}rC/(h}rD/h}rE/h]rF/Uros/melodic/marti_messagesrG/assh }rH/h }rI/h}rJ/h]rK/U!ros-melodic-marti-perception-msgsrL/assshˆh}rM/h}rN/h}rO/h]rP/jL/asssh}rQ/h}rR/h}rS/h]rT/jL/asssuUrotors_hil_interfacerU/}rV/(h}rW/h}rX/h]rY/Uros/melodic/rotors_simulatorrZ/assh }r[/h }r\/h}r]/h]r^/U ros-melodic-rotors-hil-interfacer_/assshˆh}r`/h}ra/h}rb/h]rc/j_/asssh}rd/h}re/h}rf/h]rg/j_/asssuUcob_environmentsrh/}ri/(h}rj/h}rk/h]rl/Uros/melodic/cob_environmentsrm/assh }rn/h }ro/h}rp/h]rq/Uros-melodic-cob-environmentsrr/assshˆh}rs/h}rt/h}ru/h]rv/jr/asssh}rw/h}rx/h}ry/h]rz/jr/asssuUpr2_appsr{/}r|/(h}r}/h}r~/h]r/Uros/melodic/pr2_appsr€/assh }r/h }r‚/h}rƒ/h]r„/Uros-melodic-pr2-appsr…/assshˆh}r†/h}r‡/h}rˆ/h]r‰/j…/asssh}rŠ/h}r‹/h}rŒ/h]r/j…/asssuU willow_mapsrŽ/}r/(h}r/h}r‘/h]r’/Uros/melodic/willow_mapsr“/assh }r”/h }r•/h}r–/h]r—/Uros-melodic-willow-mapsr˜/assshˆh}r™/h}rš/h}r›/h]rœ/j˜/asssh}r/h}rž/h}rŸ/h]r /j˜/asssuUrc_visard_driverr¡/}r¢/(h}r£/h}r¤/h]r¥/Uros/melodic/rc_visardr¦/assh }r§/h }r¨/h}r©/h]rª/Uros-melodic-rc-visard-driverr«/assshˆh}r¬/h}r­/h}r®/h]r¯/j«/asssh}r°/h}r±/h}r²/h]r³/j«/asssuUrobot_calibrationr´/}rµ/(h}r¶/h}r·/h]r¸/Uros/melodic/robot_calibrationr¹/assh }rº/h }r»/h}r¼/h]r½/Uros-melodic-robot-calibrationr¾/assshˆh}r¿/h}rÀ/h}rÁ/h]rÂ/j¾/asssh}rÃ/h}rÄ/h}rÅ/h]rÆ/j¾/asssuUnodelet_topic_toolsrÇ/}rÈ/(h}rÉ/h}rÊ/h]rË/Uros/melodic/nodelet_corerÌ/assh }rÍ/h }rÎ/h}rÏ/h]rÐ/Uros-melodic-nodelet-topic-toolsrÑ/assshˆh}rÒ/h}rÓ/h}rÔ/h]rÕ/jÑ/asssh}rÖ/h}r×/h}rØ/h]rÙ/jÑ/asssuUabb_irb6600_supportrÚ/}rÛ/(h}rÜ/h}rÝ/h]rÞ/Uros/melodic/abbrß/assh }rà/h }rá/h}râ/h]rã/Uros-melodic-abb-irb6600-supporträ/assshˆh}rå/h}ræ/h}rç/h]rè/jä/asssh}ré/h}rê/h}rë/h]rì/jä/asssuU rdl_benchmarkrí/}rî/(h}rï/h}rð/h]rñ/Uros/melodic/rdlrò/assh }ró/h }rô/h}rõ/h]rö/Uros-melodic-rdl-benchmarkr÷/assshˆh}rø/h}rù/h}rú/h]rû/j÷/asssh}rü/h}rý/h}rþ/h]rÿ/j÷/asssuUnav2dr0}r0(h}r0h}r0h]r0Uros/melodic/navigation_2dr0assh }r0h }r0h}r0h]r 0Uros-melodic-nav2dr 0assshˆh}r 0h}r 0h}r 0h]r0j 0asssh}r0h}r0h}r0h]r0j 0asssuUimage_pipeliner0}r0(h}r0h}r0h]r0Uros/melodic/image_pipeliner0assh }r0h }r0h}r0h]r0Uros-melodic-image-pipeliner0assshˆh}r0h}r0h}r 0h]r!0j0asssh}r"0h}r#0h}r$0h]r%0j0asssuUcob_navigation_globalr&0}r'0(h}r(0h}r)0h]r*0Uros/melodic/cob_navigationr+0assh }r,0h }r-0h}r.0h]r/0U!ros-melodic-cob-navigation-globalr00assshˆh}r10h}r20h}r30h]r40j00asssh}r50h}r60h}r70h]r80j00asssuU eus_assimpr90}r:0(h}r;0h}r<0h]r=0Uros/melodic/jsk_model_toolsr>0assh }r?0h }r@0h}rA0h]rB0Uros-melodic-eus-assimprC0assshˆh}rD0h}rE0h}rF0h]rG0jC0asssh}rH0h}rI0h}rJ0h]rK0jC0asssuUcob_gazebo_ros_controlrL0}rM0(h}rN0h}rO0h]rP0Uros/melodic/cob_gazebo_pluginsrQ0assh }rR0h }rS0h}rT0h]rU0U"ros-melodic-cob-gazebo-ros-controlrV0assshˆh}rW0h}rX0h}rY0h]rZ0jV0asssh}r[0h}r\0h}r]0h]r^0jV0asssuUdataspeed_pds_canr_0}r`0(h}ra0h}rb0h]rc0Uros/melodic/dataspeed_pdsrd0assh }re0h }rf0h}rg0h]rh0Uros-melodic-dataspeed-pds-canri0assshˆh}rj0h}rk0h}rl0h]rm0ji0asssh}rn0h}ro0h}rp0h]rq0ji0asssuUexotica_collision_scene_fclrr0}rs0(h}rt0h}ru0h]rv0Uros/melodic/exoticarw0assh }rx0h }ry0h}rz0h]r{0U'ros-melodic-exotica-collision-scene-fclr|0assshˆh}r}0h}r~0h}r0h]r€0j|0asssh}r0h}r‚0h}rƒ0h]r„0j|0asssuU ecl_licenser…0}r†0(h}r‡0h}rˆ0h]r‰0Uros/melodic/ecl_toolsrŠ0assh }r‹0h }rŒ0h}r0h]rŽ0Uros-melodic-ecl-licenser0assshˆh}r0h}r‘0h}r’0h]r“0j0asssh}r”0h}r•0h}r–0h]r—0j0asssuUraw_descriptionr˜0}r™0(h}rš0h}r›0h]rœ0Uros/melodic/cob_commonr0assh }rž0h }rŸ0h}r 0h]r¡0Uros-melodic-raw-descriptionr¢0assshˆh}r£0h}r¤0h}r¥0h]r¦0j¢0asssh}r§0h}r¨0h}r©0h]rª0j¢0asssuUwarthog_desktopr«0}r¬0(h}r­0h}r®0h]r¯0Uros/melodic/warthog_desktopr°0assh }r±0h }r²0h}r³0h]r´0Uros-melodic-warthog-desktoprµ0assshˆh}r¶0h}r·0h}r¸0h]r¹0jµ0asssh}rº0h}r»0h}r¼0h]r½0jµ0asssuU kobuki_corer¾0}r¿0(h}rÀ0h}rÁ0h]rÂ0Uros/melodic/kobuki_corerÃ0assh }rÄ0h }rÅ0h}rÆ0h]rÇ0Uros-melodic-kobuki-corerÈ0assshˆh}rÉ0h}rÊ0h}rË0h]rÌ0jÈ0asssh}rÍ0h}rÎ0h}rÏ0h]rÐ0jÈ0asssuUxmlrpcpprÑ0}rÒ0(h}rÓ0h}rÔ0h]rÕ0Uros/melodic/ros_commrÖ0assh }r×0h }rØ0h}rÙ0h]rÚ0Uros-melodic-xmlrpcpprÛ0assshˆh}rÜ0h}rÝ0h}rÞ0h]rß0jÛ0asssh}rà0h}rá0h}râ0h]rã0jÛ0asssuU gl_dependencyrä0}rå0(h}ræ0h}rç0h]rè0Uros/melodic/gl_dependencyré0assh }rê0h }rë0h}rì0h]rí0Uros-melodic-gl-dependencyrî0assshˆh}rï0h}rð0h}rñ0h]rò0jî0asssh}ró0h}rô0h}rõ0h]rö0jî0asssuU fetch_bringupr÷0}rø0(h}rù0h}rú0h]rû0Uros/melodic/fetch_robotsrü0assh }rý0h }rþ0h}rÿ0h]r1Uros-melodic-fetch-bringupr1assshˆh}r1h}r1h}r1h]r1j1asssh}r1h}r1h}r1h]r 1j1asssuUcpr_multimaster_toolsr 1}r 1(h}r 1h}r 1h]r1U!ros/melodic/cpr_multimaster_toolsr1assh }r1h }r1h}r1h]r1U!ros-melodic-cpr-multimaster-toolsr1assshˆh}r1h}r1h}r1h]r1j1asssh}r1h}r1h}r1h]r1j1asssuUfmi_adapter_examplesr1}r1(h}r1h}r 1h]r!1Uros/melodic/fmi_adapterr"1assh }r#1h }r$1h}r%1h]r&1U ros-melodic-fmi-adapter-examplesr'1assshˆh}r(1h}r)1h}r*1h]r+1j'1asssh}r,1h}r-1h}r.1h]r/1j'1asssuU py_trees_msgsr01}r11(h}r21h}r31h]r41Uros/melodic/py_trees_msgsr51assh }r61h }r71h}r81h]r91Uros-melodic-py-trees-msgsr:1assshˆh}r;1h}r<1h}r=1h]r>1j:1asssh}r?1h}r@1h}rA1h]rB1j:1asssuUecl_filesystemrC1}rD1(h}rE1h}rF1h]rG1Uros/melodic/ecl_corerH1assh }rI1h }rJ1h}rK1h]rL1Uros-melodic-ecl-filesystemrM1assshˆh}rN1h}rO1h}rP1h]rQ1jM1asssh}rR1h}rS1h}rT1h]rU1jM1asssuU libuvc_rosrV1}rW1(h}rX1h}rY1h]rZ1Uros/melodic/libuvc_rosr[1assh }r\1h }r]1h}r^1h]r_1Uros-melodic-libuvc-rosr`1assshˆh}ra1h}rb1h}rc1h]rd1j`1asssh}re1h}rf1h}rg1h]rh1j`1asssuUsingle_joint_position_actionri1}rj1(h}rk1h}rl1h]rm1Uros/melodic/pr2_controllersrn1assh }ro1h }rp1h}rq1h]rr1U(ros-melodic-single-joint-position-actionrs1assshˆh}rt1h}ru1h}rv1h]rw1js1asssh}rx1h}ry1h}rz1h]r{1js1asssuUclear_costmap_recoveryr|1}r}1(h}r~1h}r1h]r€1Uros/melodic/navigationr1assh }r‚1h }rƒ1h}r„1h]r…1U"ros-melodic-clear-costmap-recoveryr†1assshˆh}r‡1h}rˆ1h}r‰1h]rŠ1j†1asssh}r‹1h}rŒ1h}r1h]rŽ1j†1asssuUturtlebot3_exampler1}r1(h}r‘1h}r’1h]r“1Uros/melodic/turtlebot3r”1assh }r•1h }r–1h}r—1h]r˜1Uros-melodic-turtlebot3-exampler™1assshˆh}rš1h}r›1h}rœ1h]r1j™1asssh}rž1h}rŸ1h}r 1h]r¡1j™1asssuU slime_rosr¢1}r£1(h}r¤1h}r¥1h]r¦1Uros/melodic/ros_emacs_utilsr§1assh }r¨1h }r©1h}rª1h]r«1Uros-melodic-slime-rosr¬1assshˆh}r­1h}r®1h}r¯1h]r°1j¬1asssh}r±1h}r²1h}r³1h]r´1j¬1asssuUyocs_diff_drive_pose_controllerrµ1}r¶1(h}r·1h}r¸1h]r¹1Uros/melodic/yujin_ocsrº1assh }r»1h }r¼1h}r½1h]r¾1U+ros-melodic-yocs-diff-drive-pose-controllerr¿1assshˆh}rÀ1h}rÁ1h}rÂ1h]rÃ1j¿1asssh}rÄ1h}rÅ1h}rÆ1h]rÇ1j¿1asssuUmultisense_descriptionrÈ1}rÉ1(h}rÊ1h}rË1h]rÌ1Uros/melodic/multisense_rosrÍ1assh }rÎ1h }rÏ1h}rÐ1h]rÑ1U"ros-melodic-multisense-descriptionrÒ1assshˆh}rÓ1h}rÔ1h}rÕ1h]rÖ1jÒ1asssh}r×1h}rØ1h}rÙ1h]rÚ1jÒ1asssuU mir_driverrÛ1}rÜ1(h}rÝ1h}rÞ1h]rß1Uros/melodic/mir_robotrà1assh }rá1h }râ1h}rã1h]rä1Uros-melodic-mir-driverrå1assshˆh}ræ1h}rç1h}rè1h]ré1jå1asssh}rê1h}rë1h}rì1h]rí1jå1asssuUwarthog_simulatorrî1}rï1(h}rð1h}rñ1h]rò1Uros/melodic/warthog_simulatorró1assh }rô1h }rõ1h}rö1h]r÷1Uros-melodic-warthog-simulatorrø1assshˆh}rù1h}rú1h}rû1h]rü1jø1asssh}rý1h}rþ1h}rÿ1h]r2jø1asssuUexotica_val_descriptionr2}r2(h}r2h}r2h]r2U#ros/melodic/exotica_val_descriptionr2assh }r2h }r2h}r 2h]r 2U#ros-melodic-exotica-val-descriptionr 2assshˆh}r 2h}r 2h}r2h]r2j 2asssh}r2h}r2h}r2h]r2j 2asssuU cob_externr2}r2(h}r2h}r2h]r2Uros/melodic/cob_externr2assh }r2h }r2h}r2h]r2Uros-melodic-cob-externr2assshˆh}r2h}r 2h}r!2h]r"2j2asssh}r#2h}r$2h}r%2h]r&2j2asssuUdynamixel_workbench_toolboxr'2}r(2(h}r)2h}r*2h]r+2Uros/melodic/dynamixel-workbenchr,2assh }r-2h }r.2h}r/2h]r02U'ros-melodic-dynamixel-workbench-toolboxr12assshˆh}r22h}r32h}r42h]r52j12asssh}r62h}r72h}r82h]r92j12asssuUactionlib_tutorialsr:2}r;2(h}r<2h}r=2h]r>2Uros/melodic/common_tutorialsr?2assh }r@2h }rA2h}rB2h]rC2Uros-melodic-actionlib-tutorialsrD2assshˆh}rE2h}rF2h}rG2h]rH2jD2asssh}rI2h}rJ2h}rK2h]rL2jD2asssuUturtle_actionlibrM2}rN2(h}rO2h}rP2h]rQ2Uros/melodic/common_tutorialsrR2assh }rS2h }rT2h}rU2h]rV2Uros-melodic-turtle-actionlibrW2assshˆh}rX2h}rY2h}rZ2h]r[2jW2asssh}r\2h}r]2h}r^2h]r_2jW2asssuU ksql_airportr`2}ra2(h}rb2h}rc2h]rd2Uros/melodic/uav_testingre2assh }rf2h }rg2h}rh2h]ri2Uros-melodic-ksql-airportrj2assshˆh}rk2h}rl2h}rm2h]rn2jj2asssh}ro2h}rp2h}rq2h]rr2jj2asssuUdataspeed_ulc_canrs2}rt2(h}ru2h}rv2h]rw2Uros/melodic/dataspeed_ulc_rosrx2assh }ry2h }rz2h}r{2h]r|2Uros-melodic-dataspeed-ulc-canr}2assshˆh}r~2h}r2h}r€2h]r2j}2asssh}r‚2h}rƒ2h}r„2h]r…2j}2asssuUlibqt_concurrentr†2}r‡2(h}rˆ2h}r‰2h]rŠ2Uros/melodic/qt_metapackagesr‹2assh }rŒ2h }r2h}rŽ2h]r2Uros-melodic-libqt-concurrentr2assshˆh}r‘2h}r’2h}r“2h]r”2j2asssh}r•2h}r–2h}r—2h]r˜2j2asssuUopenhrp3r™2}rš2(h}r›2h}rœ2h]r2Uros/melodic/openhrp3rž2assh }rŸ2h }r 2h}r¡2h]r¢2Uros-melodic-openhrp3r£2assshˆh}r¤2h}r¥2h}r¦2h]r§2j£2asssh}r¨2h}r©2h}rª2h]r«2j£2asssuUrotors_gazebo_pluginsr¬2}r­2(h}r®2h}r¯2h]r°2Uros/melodic/rotors_simulatorr±2assh }r²2h }r³2h}r´2h]rµ2U!ros-melodic-rotors-gazebo-pluginsr¶2assshˆh}r·2h}r¸2h}r¹2h]rº2j¶2asssh}r»2h}r¼2h}r½2h]r¾2j¶2asssuUdataspeed_can_msg_filtersr¿2}rÀ2(h}rÁ2h}rÂ2h]rÃ2Uros/melodic/dataspeed_canrÄ2assh }rÅ2h }rÆ2h}rÇ2h]rÈ2U%ros-melodic-dataspeed-can-msg-filtersrÉ2assshˆh}rÊ2h}rË2h}rÌ2h]rÍ2jÉ2asssh}rÎ2h}rÏ2h}rÐ2h]rÑ2jÉ2asssuUecl_convertersrÒ2}rÓ2(h}rÔ2h}rÕ2h]rÖ2Uros/melodic/ecl_corer×2assh }rØ2h }rÙ2h}rÚ2h]rÛ2Uros-melodic-ecl-convertersrÜ2assshˆh}rÝ2h}rÞ2h}rß2h]rà2jÜ2asssh}rá2h}râ2h}rã2h]rä2jÜ2asssuU adi_driverrå2}ræ2(h}rç2h}rè2h]ré2Uros/melodic/adi_driverrê2assh }rë2h }rì2h}rí2h]rî2Uros-melodic-adi-driverrï2assshˆh}rð2h}rñ2h}rò2h]ró2jï2asssh}rô2h}rõ2h}rö2h]r÷2jï2asssuUview_controller_msgsrø2}rù2(h}rú2h}rû2h]rü2U ros/melodic/view_controller_msgsrý2assh }rþ2h }rÿ2h}r3h]r3U ros-melodic-view-controller-msgsr3assshˆh}r3h}r3h}r3h]r3j3asssh}r3h}r3h}r 3h]r 3j3asssuUinteractive_markersr 3}r 3(h}r 3h}r3h]r3Uros/melodic/interactive_markersr3assh }r3h }r3h}r3h]r3Uros-melodic-interactive-markersr3assshˆh}r3h}r3h}r3h]r3j3asssh}r3h}r3h}r3h]r3j3asssuUjackal_descriptionr3}r3(h}r 3h}r!3h]r"3Uros/melodic/jackalr#3assh }r$3h }r%3h}r&3h]r'3Uros-melodic-jackal-descriptionr(3assshˆh}r)3h}r*3h}r+3h]r,3j(3asssh}r-3h}r.3h}r/3h]r03j(3asssuUpr2_ethercat_driversr13}r23(h}r33h}r43h]r53U ros/melodic/pr2_ethercat_driversr63assh }r73h }r83h}r93h]r:3U ros-melodic-pr2-ethercat-driversr;3assshˆh}r<3h}r=3h}r>3h]r?3j;3asssh}r@3h}rA3h}rB3h]rC3j;3asssuUjsk_pcl_ros_utilsrD3}rE3(h}rF3h}rG3h]rH3Uros/melodic/jsk_recognitionrI3assh }rJ3h }rK3h}rL3h]rM3Uros-melodic-jsk-pcl-ros-utilsrN3assshˆh}rO3h}rP3h}rQ3h]rR3jN3asssh}rS3h}rT3h}rU3h]rV3jN3asssuUopen_manipulator_with_tb3_toolsrW3}rX3(h}rY3h}rZ3h]r[3U%ros/melodic/open_manipulator_with_tb3r\3assh }r]3h }r^3h}r_3h]r`3U+ros-melodic-open-manipulator-with-tb3-toolsra3assshˆh}rb3h}rc3h}rd3h]re3ja3asssh}rf3h}rg3h}rh3h]ri3ja3asssuU service_toolsrj3}rk3(h}rl3h}rm3h]rn3Uros/melodic/cob_command_toolsro3assh }rp3h }rq3h}rr3h]rs3Uros-melodic-service-toolsrt3assshˆh}ru3h}rv3h}rw3h]rx3jt3asssh}ry3h}rz3h}r{3h]r|3jt3asssuUigvc_self_drive_simr}3}r~3(h}r3h}r€3h]r3Uros/melodic/igvc_self_drive_simr‚3assh }rƒ3h }r„3h}r…3h]r†3Uros-melodic-igvc-self-drive-simr‡3assshˆh}rˆ3h}r‰3h}rŠ3h]r‹3j‡3asssh}rŒ3h}r3h}rŽ3h]r3j‡3asssuUpr2_controller_interfacer3}r‘3(h}r’3h}r“3h]r”3Uros/melodic/pr2_mechanismr•3assh }r–3h }r—3h}r˜3h]r™3U$ros-melodic-pr2-controller-interfacerš3assshˆh}r›3h}rœ3h}r3h]rž3jš3asssh}rŸ3h}r 3h}r¡3h]r¢3jš3asssuUcodec_image_transportr£3}r¤3(h}r¥3h}r¦3h]r§3U!ros/melodic/codec_image_transportr¨3assh }r©3h }rª3h}r«3h]r¬3U!ros-melodic-codec-image-transportr­3assshˆh}r®3h}r¯3h}r°3h]r±3j­3asssh}r²3h}r³3h}r´3h]rµ3j­3asssuUros_emacs_utilsr¶3}r·3(h}r¸3h}r¹3h]rº3Uros/melodic/ros_emacs_utilsr»3assh }r¼3h }r½3h}r¾3h]r¿3Uros-melodic-ros-emacs-utilsrÀ3assshˆh}rÁ3h}rÂ3h}rÃ3h]rÄ3jÀ3asssh}rÅ3h}rÆ3h}rÇ3h]rÈ3jÀ3asssuUturtlebot3_msgsrÉ3}rÊ3(h}rË3h}rÌ3h]rÍ3Uros/melodic/turtlebot3_msgsrÎ3assh }rÏ3h }rÐ3h}rÑ3h]rÒ3Uros-melodic-turtlebot3-msgsrÓ3assshˆh}rÔ3h}rÕ3h}rÖ3h]r×3jÓ3asssh}rØ3h}rÙ3h}rÚ3h]rÛ3jÓ3asssuUcan_msgsrÜ3}rÝ3(h}rÞ3h}rß3h]rà3Uros/melodic/ros_canopenrá3assh }râ3h }rã3h}rä3h]rå3Uros-melodic-can-msgsræ3assshˆh}rç3h}rè3h}ré3h]rê3jæ3asssh}rë3h}rì3h}rí3h]rî3jæ3asssuUrocon_app_manager_msgsrï3}rð3(h}rñ3h}rò3h]ró3Uros/melodic/rocon_msgsrô3assh }rõ3h }rö3h}r÷3h]rø3U"ros-melodic-rocon-app-manager-msgsrù3assshˆh}rú3h}rû3h}rü3h]rý3jù3asssh}rþ3h}rÿ3h}r4h]r4jù3asssuUtrajectory_trackerr4}r4(h}r4h}r4h]r4Uros/melodic/neonavigationr4assh }r4h }r 4h}r 4h]r 4Uros-melodic-trajectory-trackerr 4assshˆh}r 4h}r4h}r4h]r4j 4asssh}r4h}r4h}r4h]r4j 4asssuUrosrtr4}r4(h}r4h}r4h]r4Uros/melodic/ros_realtimer4assh }r4h }r4h}r4h]r4Uros-melodic-rosrtr4assshˆh}r 4h}r!4h}r"4h]r#4j4asssh}r$4h}r%4h}r&4h]r'4j4asssuUmrpt_tutorialsr(4}r)4(h}r*4h}r+4h]r,4Uros/melodic/mrpt_navigationr-4assh }r.4h }r/4h}r04h]r14Uros-melodic-mrpt-tutorialsr24assshˆh}r34h}r44h}r54h]r64j24asssh}r74h}r84h}r94h]r:4j24asssuUqb_device_srvsr;4}r<4(h}r=4h}r>4h]r?4Uros/melodic/qb_devicer@4assh }rA4h }rB4h}rC4h]rD4Uros-melodic-qb-device-srvsrE4assshˆh}rF4h}rG4h}rH4h]rI4jE4asssh}rJ4h}rK4h}rL4h]rM4jE4asssuUrosparam_shortcutsrN4}rO4(h}rP4h}rQ4h]rR4Uros/melodic/rosparam_shortcutsrS4assh }rT4h }rU4h}rV4h]rW4Uros-melodic-rosparam-shortcutsrX4assshˆh}rY4h}rZ4h}r[4h]r\4jX4asssh}r]4h}r^4h}r_4h]r`4jX4asssuU husky_bringupra4}rb4(h}rc4h}rd4h]re4Uros/melodic/huskyrf4assh }rg4h }rh4h}ri4h]rj4Uros-melodic-husky-bringuprk4assshˆh}rl4h}rm4h}rn4h]ro4jk4asssh}rp4h}rq4h}rr4h]rs4jk4asssuUgrid_map_visualizationrt4}ru4(h}rv4h}rw4h]rx4Uros/melodic/grid_mapry4assh }rz4h }r{4h}r|4h]r}4U"ros-melodic-grid-map-visualizationr~4assshˆh}r4h}r€4h}r4h]r‚4j~4asssh}rƒ4h}r„4h}r…4h]r†4j~4asssuUrqt_webr‡4}rˆ4(h}r‰4h}rŠ4h]r‹4Uros/melodic/rqt_webrŒ4assh }r4h }rŽ4h}r4h]r4Uros-melodic-rqt-webr‘4assshˆh}r’4h}r“4h}r”4h]r•4j‘4asssh}r–4h}r—4h}r˜4h]r™4j‘4asssuU ros_realtimerš4}r›4(h}rœ4h}r4h]rž4Uros/melodic/ros_realtimerŸ4assh }r 4h }r¡4h}r¢4h]r£4Uros-melodic-ros-realtimer¤4assshˆh}r¥4h}r¦4h}r§4h]r¨4j¤4asssh}r©4h}rª4h}r«4h]r¬4j¤4asssuUfetchit_challenger­4}r®4(h}r¯4h}r°4h]r±4Uros/melodic/fetch_gazebor²4assh }r³4h }r´4h}rµ4h]r¶4Uros-melodic-fetchit-challenger·4assshˆh}r¸4h}r¹4h}rº4h]r»4j·4asssh}r¼4h}r½4h}r¾4h]r¿4j·4asssuU cob_driverrÀ4}rÁ4(h}rÂ4h}rÃ4h]rÄ4Uros/melodic/cob_driverrÅ4assh }rÆ4h }rÇ4h}rÈ4h]rÉ4Uros-melodic-cob-driverrÊ4assshˆh}rË4h}rÌ4h}rÍ4h]rÎ4jÊ4asssh}rÏ4h}rÐ4h}rÑ4h]rÒ4jÊ4asssuUturtlesim_dash_tutorialrÓ4}rÔ4(h}rÕ4h}rÖ4h]r×4U#ros/melodic/turtlesim_dash_tutorialrØ4assh }rÙ4h }rÚ4h}rÛ4h]rÜ4U#ros-melodic-turtlesim-dash-tutorialrÝ4assshˆh}rÞ4h}rß4h}rà4h]rá4jÝ4asssh}râ4h}rã4h}rä4h]rå4jÝ4asssuUcanopen_chain_noderæ4}rç4(h}rè4h}ré4h]rê4Uros/melodic/ros_canopenrë4assh }rì4h }rí4h}rî4h]rï4Uros-melodic-canopen-chain-noderð4assshˆh}rñ4h}rò4h}ró4h]rô4jð4asssh}rõ4h}rö4h}r÷4h]rø4jð4asssuUoctomap_serverrù4}rú4(h}rû4h}rü4h]rý4Uros/melodic/octomap_mappingrþ4assh }rÿ4h }r5h}r5h]r5Uros-melodic-octomap-serverr5assshˆh}r5h}r5h}r5h]r5j5asssh}r5h}r 5h}r 5h]r 5j5asssuU md49_messagesr 5}r 5(h}r5h}r5h]r5U ros/melodic/md49_base_controllerr5assh }r5h }r5h}r5h]r5Uros-melodic-md49-messagesr5assshˆh}r5h}r5h}r5h]r5j5asssh}r5h}r5h}r5h]r5j5asssuU jsk_commonr5}r 5(h}r!5h}r"5h]r#5Uros/melodic/jsk_commonr$5assh }r%5h }r&5h}r'5h]r(5Uros-melodic-jsk-commonr)5assshˆh}r*5h}r+5h}r,5h]r-5j)5asssh}r.5h}r/5h}r05h]r15j)5asssuUmavlinkr25}r35(h}r45h}r55h]r65Uros/melodic/mavlinkr75assh }r85h }r95h}r:5h]r;5Uros-melodic-mavlinkr<5assshˆh}r=5h}r>5h}r?5h]r@5j<5asssh}rA5h}rB5h}rC5h]rD5j<5asssuUplanner_cspacerE5}rF5(h}rG5h}rH5h]rI5Uros/melodic/neonavigationrJ5assh }rK5h }rL5h}rM5h]rN5Uros-melodic-planner-cspacerO5assshˆh}rP5h}rQ5h}rR5h]rS5jO5asssh}rT5h}rU5h}rV5h]rW5jO5asssuU ros_pytestrX5}rY5(h}rZ5h}r[5h]r\5Uros/melodic/ros_pytestr]5assh }r^5h }r_5h}r`5h]ra5Uros-melodic-ros-pytestrb5assshˆh}rc5h}rd5h}re5h]rf5jb5asssh}rg5h}rh5h}ri5h]rj5jb5asssuUrosbridge_suiterk5}rl5(h}rm5h}rn5h]ro5Uros/melodic/rosbridge_suiterp5assh }rq5h }rr5h}rs5h]rt5Uros-melodic-rosbridge-suiteru5assshˆh}rv5h}rw5h}rx5h]ry5ju5asssh}rz5h}r{5h}r|5h]r}5ju5asssuUrobot_setup_tf_tutorialr~5}r5(h}r€5h}r5h]r‚5U ros/melodic/navigation_tutorialsrƒ5assh }r„5h }r…5h}r†5h]r‡5U#ros-melodic-robot-setup-tf-tutorialrˆ5assshˆh}r‰5h}rŠ5h}r‹5h]rŒ5jˆ5asssh}r5h}rŽ5h}r5h]r5jˆ5asssuUublox_serializationr‘5}r’5(h}r“5h}r”5h]r•5Uros/melodic/ubloxr–5assh }r—5h }r˜5h}r™5h]rš5Uros-melodic-ublox-serializationr›5assshˆh}rœ5h}r5h}rž5h]rŸ5j›5asssh}r 5h}r¡5h}r¢5h]r£5j›5asssuUnavigation_layersr¤5}r¥5(h}r¦5h}r§5h]r¨5Uros/melodic/navigation_layersr©5assh }rª5h }r«5h}r¬5h]r­5Uros-melodic-navigation-layersr®5assshˆh}r¯5h}r°5h}r±5h]r²5j®5asssh}r³5h}r´5h}rµ5h]r¶5j®5asssuU roslaunchr·5}r¸5(h}r¹5h}rº5h]r»5Uros/melodic/ros_commr¼5assh }r½5h }r¾5h}r¿5h]rÀ5Uros-melodic-roslaunchrÁ5assshˆh}rÂ5h}rÃ5h}rÄ5h]rÅ5jÁ5asssh}rÆ5h}rÇ5h}rÈ5h]rÉ5jÁ5asssuUlaser_pipelinerÊ5}rË5(h}rÌ5h}rÍ5h]rÎ5Uros/melodic/laser_pipelinerÏ5assh }rÐ5h }rÑ5h}rÒ5h]rÓ5Uros-melodic-laser-pipelinerÔ5assshˆh}rÕ5h}rÖ5h}r×5h]rØ5jÔ5asssh}rÙ5h}rÚ5h}rÛ5h]rÜ5jÔ5asssuUopenslam_gmappingrÝ5}rÞ5(h}rß5h}rà5h]rá5Uros/melodic/openslam_gmappingrâ5assh }rã5h }rä5h}rå5h]ræ5Uros-melodic-openslam-gmappingrç5assshˆh}rè5h}ré5h}rê5h]rë5jç5asssh}rì5h}rí5h}rî5h]rï5jç5asssuU imagesiftrð5}rñ5(h}rò5h}ró5h]rô5Uros/melodic/jsk_recognitionrõ5assh }rö5h }r÷5h}rø5h]rù5Uros-melodic-imagesiftrú5assshˆh}rû5h}rü5h}rý5h]rþ5jú5asssh}rÿ5h}r6h}r6h]r6jú5asssuUethercat_grantr6}r6(h}r6h}r6h]r6Uros/melodic/ethercat_grantr6assh }r 6h }r 6h}r 6h]r 6Uros-melodic-ethercat-grantr 6assshˆh}r6h}r6h}r6h]r6j 6asssh}r6h}r6h}r6h]r6j 6asssuU image_viewr6}r6(h}r6h}r6h]r6Uros/melodic/image_pipeliner6assh }r6h }r6h}r6h]r6Uros-melodic-image-viewr 6assshˆh}r!6h}r"6h}r#6h]r$6j 6asssh}r%6h}r&6h}r'6h]r(6j 6asssuU mir_robotr)6}r*6(h}r+6h}r,6h]r-6Uros/melodic/mir_robotr.6assh }r/6h }r06h}r16h]r26Uros-melodic-mir-robotr36assshˆh}r46h}r56h}r66h]r76j36asssh}r86h}r96h}r:6h]r;6j36asssuUdataspeed_pds_msgsr<6}r=6(h}r>6h}r?6h]r@6Uros/melodic/dataspeed_pdsrA6assh }rB6h }rC6h}rD6h]rE6Uros-melodic-dataspeed-pds-msgsrF6assshˆh}rG6h}rH6h}rI6h]rJ6jF6asssh}rK6h}rL6h}rM6h]rN6jF6asssuUpointcloud_to_laserscanrO6}rP6(h}rQ6h}rR6h]rS6U#ros/melodic/pointcloud_to_laserscanrT6assh }rU6h }rV6h}rW6h]rX6U#ros-melodic-pointcloud-to-laserscanrY6assshˆh}rZ6h}r[6h}r\6h]r]6jY6asssh}r^6h}r_6h}r`6h]ra6jY6asssuUcontroller_manager_testsrb6}rc6(h}rd6h}re6h]rf6Uros/melodic/ros_controlrg6assh }rh6h }ri6h}rj6h]rk6U$ros-melodic-controller-manager-testsrl6assshˆh}rm6h}rn6h}ro6h]rp6jl6asssh}rq6h}rr6h}rs6h]rt6jl6asssuUtuw_airskin_msgsru6}rv6(h}rw6h}rx6h]ry6Uros/melodic/tuw_msgsrz6assh }r{6h }r|6h}r}6h]r~6Uros-melodic-tuw-airskin-msgsr6assshˆh}r€6h}r6h}r‚6h]rƒ6j6asssh}r„6h}r…6h}r†6h]r‡6j6asssuUhusky_navigationrˆ6}r‰6(h}rŠ6h}r‹6h]rŒ6Uros/melodic/huskyr6assh }rŽ6h }r6h}r6h]r‘6Uros-melodic-husky-navigationr’6assshˆh}r“6h}r”6h}r•6h]r–6j’6asssh}r—6h}r˜6h}r™6h]rš6j’6asssuUnavfnr›6}rœ6(h}r6h}rž6h]rŸ6Uros/melodic/navigationr 6assh }r¡6h }r¢6h}r£6h]r¤6Uros-melodic-navfnr¥6assshˆh}r¦6h}r§6h}r¨6h]r©6j¥6asssh}rª6h}r«6h}r¬6h]r­6j¥6asssuUautoware_can_msgsr®6}r¯6(h}r°6h}r±6h]r²6Uros/melodic/autoware_msgsr³6assh }r´6h }rµ6h}r¶6h]r·6Uros-melodic-autoware-can-msgsr¸6assshˆh}r¹6h}rº6h}r»6h]r¼6j¸6asssh}r½6h}r¾6h}r¿6h]rÀ6j¸6asssuUdwa_local_plannerrÁ6}rÂ6(h}rÃ6h}rÄ6h]rÅ6Uros/melodic/navigationrÆ6assh }rÇ6h }rÈ6h}rÉ6h]rÊ6Uros-melodic-dwa-local-plannerrË6assshˆh}rÌ6h}rÍ6h}rÎ6h]rÏ6jË6asssh}rÐ6h}rÑ6h}rÒ6h]rÓ6jË6asssuUturtlebot3_autoracerÔ6}rÕ6(h}rÖ6h}r×6h]rØ6Uros/melodic/turtlebot3_autoracerÙ6assh }rÚ6h }rÛ6h}rÜ6h]rÝ6Uros-melodic-turtlebot3-autoracerÞ6assshˆh}rß6h}rà6h}rá6h]râ6jÞ6asssh}rã6h}rä6h}rå6h]ræ6jÞ6asssuUturtlebot3_followerrç6}rè6(h}ré6h}rê6h]rë6U#ros/melodic/turtlebot3_applicationsrì6assh }rí6h }rî6h}rï6h]rð6Uros-melodic-turtlebot3-followerrñ6assshˆh}rò6h}ró6h}rô6h]rõ6jñ6asssh}rö6h}r÷6h}rø6h]rù6jñ6asssuUdesktoprú6}rû6(h}rü6h}rý6h]rþ6Uros/melodic/metapackagesrÿ6assh }r7h }r7h}r7h]r7Uros-melodic-desktopr7assshˆh}r7h}r7h}r7h]r7j7asssh}r 7h}r 7h}r 7h]r 7j7asssuUjsk_footstep_msgsr 7}r7(h}r7h}r7h]r7Uros/melodic/jsk_common_msgsr7assh }r7h }r7h}r7h]r7Uros-melodic-jsk-footstep-msgsr7assshˆh}r7h}r7h}r7h]r7j7asssh}r7h}r7h}r7h]r7j7asssuUpr2_navigation_localr 7}r!7(h}r"7h}r#7h]r$7Uros/melodic/pr2_navigationr%7assh }r&7h }r'7h}r(7h]r)7U ros-melodic-pr2-navigation-localr*7assshˆh}r+7h}r,7h}r-7h]r.7j*7asssh}r/7h}r07h}r17h]r27j*7asssuUros_corer37}r47(h}r57h}r67h]r77Uros/melodic/metapackagesr87assh }r97h }r:7h}r;7h]r<7Uros-melodic-ros-corer=7assshˆh}r>7h}r?7h}r@7h]rA7j=7asssh}rB7h}rC7h}rD7h]rE7j=7asssuU cv_camerarF7}rG7(h}rH7h}rI7h]rJ7Uros/melodic/cv_camerarK7assh }rL7h }rM7h}rN7h]rO7Uros-melodic-cv-camerarP7assshˆh}rQ7h}rR7h}rS7h]rT7jP7asssh}rU7h}rV7h}rW7h]rX7jP7asssuU voice_textrY7}rZ7(h}r[7h}r\7h]r]7Uros/melodic/jsk_3rdpartyr^7assh }r_7h }r`7h}ra7h]rb7Uros-melodic-voice-textrc7assshˆh}rd7h}re7h}rf7h]rg7jc7asssh}rh7h}ri7h}rj7h]rk7jc7asssuUrosbridge_serverrl7}rm7(h}rn7h}ro7h]rp7Uros/melodic/rosbridge_suiterq7assh }rr7h }rs7h}rt7h]ru7Uros-melodic-rosbridge-serverrv7assshˆh}rw7h}rx7h}ry7h]rz7jv7asssh}r{7h}r|7h}r}7h]r~7jv7asssuUurg_noder7}r€7(h}r7h}r‚7h]rƒ7Uros/melodic/urg_noder„7assh }r…7h }r†7h}r‡7h]rˆ7Uros-melodic-urg-noder‰7assshˆh}rŠ7h}r‹7h}rŒ7h]r7j‰7asssh}rŽ7h}r7h}r7h]r‘7j‰7asssuUsocketcan_interfacer’7}r“7(h}r”7h}r•7h]r–7Uros/melodic/ros_canopenr—7assh }r˜7h }r™7h}rš7h]r›7Uros-melodic-socketcan-interfacerœ7assshˆh}r7h}rž7h}rŸ7h]r 7jœ7asssh}r¡7h}r¢7h}r£7h]r¤7jœ7asssuUepos2_motor_controllerr¥7}r¦7(h}r§7h}r¨7h]r©7U"ros/melodic/epos2_motor_controllerrª7assh }r«7h }r¬7h}r­7h]r®7U"ros-melodic-epos2-motor-controllerr¯7assshˆh}r°7h}r±7h}r²7h]r³7j¯7asssh}r´7h}rµ7h}r¶7h]r·7j¯7asssuUrosserial_pythonr¸7}r¹7(h}rº7h}r»7h]r¼7Uros/melodic/rosserialr½7assh }r¾7h }r¿7h}rÀ7h]rÁ7Uros-melodic-rosserial-pythonrÂ7assshˆh}rÃ7h}rÄ7h}rÅ7h]rÆ7jÂ7asssh}rÇ7h}rÈ7h}rÉ7h]rÊ7jÂ7asssuU jsk_3rdpartyrË7}rÌ7(h}rÍ7h}rÎ7h]rÏ7Uros/melodic/jsk_3rdpartyrÐ7assh }rÑ7h }rÒ7h}rÓ7h]rÔ7Uros-melodic-jsk-3rdpartyrÕ7assshˆh}rÖ7h}r×7h}rØ7h]rÙ7jÕ7asssh}rÚ7h}rÛ7h}rÜ7h]rÝ7jÕ7asssuUdownwardrÞ7}rß7(h}rà7h}rá7h]râ7Uros/melodic/jsk_3rdpartyrã7assh }rä7h }rå7h}ræ7h]rç7Uros-melodic-downwardrè7assshˆh}ré7h}rê7h}rë7h]rì7jè7asssh}rí7h}rî7h}rï7h]rð7jè7asssuU dynamixel_sdkrñ7}rò7(h}ró7h}rô7h]rõ7Uros/melodic/dynamixel_sdkrö7assh }r÷7h }rø7h}rù7h]rú7Uros-melodic-dynamixel-sdkrû7assshˆh}rü7h}rý7h}rþ7h]rÿ7jû7asssh}r8h}r8h}r8h]r8jû7asssuU libqt_guir8}r8(h}r8h}r8h]r8Uros/melodic/qt_metapackagesr 8assh }r 8h }r 8h}r 8h]r 8Uros-melodic-libqt-guir8assshˆh}r8h}r8h}r8h]r8j8asssh}r8h}r8h}r8h]r8j8asssuU multisenser8}r8(h}r8h}r8h]r8Uros/melodic/multisense_rosr8assh }r8h }r8h}r8h]r 8Uros-melodic-multisenser!8assshˆh}r"8h}r#8h}r$8h]r%8j!8asssh}r&8h}r'8h}r(8h]r)8j!8asssuUcob_canopen_motorr*8}r+8(h}r,8h}r-8h]r.8Uros/melodic/cob_driverr/8assh }r08h }r18h}r28h]r38Uros-melodic-cob-canopen-motorr48assshˆh}r58h}r68h}r78h]r88j48asssh}r98h}r:8h}r;8h]r<8j48asssuUlaser_geometryr=8}r>8(h}r?8h}r@8h]rA8Uros/melodic/laser_geometryrB8assh }rC8h }rD8h}rE8h]rF8Uros-melodic-laser-geometryrG8assshˆh}rH8h}rI8h}rJ8h]rK8jG8asssh}rL8h}rM8h}rN8h]rO8jG8asssuU leap_motionrP8}rQ8(h}rR8h}rS8h]rT8Uros/melodic/leap_motionrU8assh }rV8h }rW8h}rX8h]rY8Uros-melodic-leap-motionrZ8assshˆh}r[8h}r\8h}r]8h]r^8jZ8asssh}r_8h}r`8h}ra8h]rb8jZ8asssuU key_teleoprc8}rd8(h}re8h}rf8h]rg8Uros/melodic/teleop_toolsrh8assh }ri8h }rj8h}rk8h]rl8Uros-melodic-key-teleoprm8assshˆh}rn8h}ro8h}rp8h]rq8jm8asssh}rr8h}rs8h}rt8h]ru8jm8asssuUrqt_bagrv8}rw8(h}rx8h}ry8h]rz8Uros/melodic/rqt_bagr{8assh }r|8h }r}8h}r~8h]r8Uros-melodic-rqt-bagr€8assshˆh}r8h}r‚8h}rƒ8h]r„8j€8asssh}r…8h}r†8h}r‡8h]rˆ8j€8asssuUrc_genicam_apir‰8}rŠ8(h}r‹8h}rŒ8h]r8Uros/melodic/rc_genicam_apirŽ8assh }r8h }r8h}r‘8h]r’8Uros-melodic-rc-genicam-apir“8assshˆh}r”8h}r•8h}r–8h]r—8j“8asssh}r˜8h}r™8h}rš8h]r›8j“8asssuUturtlebot3_automatic_parkingrœ8}r8(h}rž8h}rŸ8h]r 8U#ros/melodic/turtlebot3_applicationsr¡8assh }r¢8h }r£8h}r¤8h]r¥8U(ros-melodic-turtlebot3-automatic-parkingr¦8assshˆh}r§8h}r¨8h}r©8h]rª8j¦8asssh}r«8h}r¬8h}r­8h]r®8j¦8asssuUcamera_calibration_parsersr¯8}r°8(h}r±8h}r²8h]r³8Uros/melodic/image_commonr´8assh }rµ8h }r¶8h}r·8h]r¸8U&ros-melodic-camera-calibration-parsersr¹8assshˆh}rº8h}r»8h}r¼8h]r½8j¹8asssh}r¾8h}r¿8h}rÀ8h]rÁ8j¹8asssuU p2os_msgsrÂ8}rÃ8(h}rÄ8h}rÅ8h]rÆ8Uros/melodic/p2osrÇ8assh }rÈ8h }rÉ8h}rÊ8h]rË8Uros-melodic-p2os-msgsrÌ8assshˆh}rÍ8h}rÎ8h}rÏ8h]rÐ8jÌ8asssh}rÑ8h}rÒ8h}rÓ8h]rÔ8jÌ8asssuUfour_wheel_steering_controllerrÕ8}rÖ8(h}r×8h}rØ8h]rÙ8Uros/melodic/ros_controllersrÚ8assh }rÛ8h }rÜ8h}rÝ8h]rÞ8U*ros-melodic-four-wheel-steering-controllerrß8assshˆh}rà8h}rá8h}râ8h]rã8jß8asssh}rä8h}rå8h}ræ8h]rç8jß8asssuU nmea_msgsrè8}ré8(h}rê8h}rë8h]rì8Uros/melodic/nmea_msgsrí8assh }rî8h }rï8h}rð8h]rñ8Uros-melodic-nmea-msgsrò8assshˆh}ró8h}rô8h}rõ8h]rö8jò8asssh}r÷8h}rø8h}rù8h]rú8jò8asssuUdynamixel_workbench_controllersrû8}rü8(h}rý8h}rþ8h]rÿ8Uros/melodic/dynamixel-workbenchr9assh }r9h }r9h}r9h]r9U+ros-melodic-dynamixel-workbench-controllersr9assshˆh}r9h}r9h}r9h]r 9j9asssh}r 9h}r 9h}r 9h]r 9j9asssuUcob_navigation_localr9}r9(h}r9h}r9h]r9Uros/melodic/cob_navigationr9assh }r9h }r9h}r9h]r9U ros-melodic-cob-navigation-localr9assshˆh}r9h}r9h}r9h]r9j9asssh}r9h}r9h}r9h]r 9j9asssuUrosparam_handlerr!9}r"9(h}r#9h}r$9h]r%9Uros/melodic/rosparam_handlerr&9assh }r'9h }r(9h}r)9h]r*9Uros-melodic-rosparam-handlerr+9assshˆh}r,9h}r-9h}r.9h]r/9j+9asssh}r09h}r19h}r29h]r39j+9asssuU libqt_networkr49}r59(h}r69h}r79h]r89Uros/melodic/qt_metapackagesr99assh }r:9h }r;9h}r<9h]r=9Uros-melodic-libqt-networkr>9assshˆh}r?9h}r@9h}rA9h]rB9j>9asssh}rC9h}rD9h}rE9h]rF9j>9asssuUcartographer_ros_msgsrG9}rH9(h}rI9h}rJ9h]rK9Uros/melodic/cartographer_rosrL9assh }rM9h }rN9h}rO9h]rP9U!ros-melodic-cartographer-ros-msgsrQ9assshˆh}rR9h}rS9h}rT9h]rU9jQ9asssh}rV9h}rW9h}rX9h]rY9jQ9asssuU smach_viewerrZ9}r[9(h}r\9h}r]9h]r^9U)ros/melodic/executive_smach_visualizationr_9assh }r`9h }ra9h}rb9h]rc9Uros-melodic-smach-viewerrd9assshˆh}re9h}rf9h}rg9h]rh9jd9asssh}ri9h}rj9h}rk9h]rl9jd9asssuUtrack_odometryrm9}rn9(h}ro9h}rp9h]rq9Uros/melodic/neonavigationrr9assh }rs9h }rt9h}ru9h]rv9Uros-melodic-track-odometryrw9assshˆh}rx9h}ry9h}rz9h]r{9jw9asssh}r|9h}r}9h}r~9h]r9jw9asssuUmultisense_rosr€9}r9(h}r‚9h}rƒ9h]r„9Uros/melodic/multisense_rosr…9assh }r†9h }r‡9h}rˆ9h]r‰9Uros-melodic-multisense-rosrŠ9assshˆh}r‹9h}rŒ9h}r9h]rŽ9jŠ9asssh}r9h}r9h}r‘9h]r’9jŠ9asssuU locomove_baser“9}r”9(h}r•9h}r–9h]r—9Uros/melodic/robot_navigationr˜9assh }r™9h }rš9h}r›9h]rœ9Uros-melodic-locomove-baser9assshˆh}rž9h}rŸ9h}r 9h]r¡9j9asssh}r¢9h}r£9h}r¤9h]r¥9j9asssuUexoticar¦9}r§9(h}r¨9h}r©9h]rª9Uros/melodic/exoticar«9assh }r¬9h }r­9h}r®9h]r¯9Uros-melodic-exoticar°9assshˆh}r±9h}r²9h}r³9h]r´9j°9asssh}rµ9h}r¶9h}r·9h]r¸9j°9asssuU rosmon_msgsr¹9}rº9(h}r»9h}r¼9h]r½9Uros/melodic/rosmonr¾9assh }r¿9h }rÀ9h}rÁ9h]rÂ9Uros-melodic-rosmon-msgsrÃ9assshˆh}rÄ9h}rÅ9h}rÆ9h]rÇ9jÃ9asssh}rÈ9h}rÉ9h}rÊ9h]rË9jÃ9asssuU yocs_keyoprÌ9}rÍ9(h}rÎ9h}rÏ9h]rÐ9Uros/melodic/yujin_ocsrÑ9assh }rÒ9h }rÓ9h}rÔ9h]rÕ9Uros-melodic-yocs-keyoprÖ9assshˆh}r×9h}rØ9h}rÙ9h]rÚ9jÖ9asssh}rÛ9h}rÜ9h}rÝ9h]rÞ9jÖ9asssuUcontroller_interfacerß9}rà9(h}rá9h}râ9h]rã9Uros/melodic/ros_controlrä9assh }rå9h }ræ9h}rç9h]rè9U ros-melodic-controller-interfaceré9assshˆh}rê9h}rë9h}rì9h]rí9jé9asssh}rî9h}rï9h}rð9h]rñ9jé9asssuUmir_msgsrò9}ró9(h}rô9h}rõ9h]rö9Uros/melodic/mir_robotr÷9assh }rø9h }rù9h}rú9h]rû9Uros-melodic-mir-msgsrü9assshˆh}rý9h}rþ9h}rÿ9h]r:jü9asssh}r:h}r:h}r:h]r:jü9asssuUusb_camr:}r:(h}r:h}r:h]r :Uros/melodic/usb_camr :assh }r :h }r :h}r :h]r:Uros-melodic-usb-camr:assshˆh}r:h}r:h}r:h]r:j:asssh}r:h}r:h}r:h]r:j:asssuUrviz_python_tutorialr:}r:(h}r:h}r:h]r:U#ros/melodic/visualization_tutorialsr:assh }r:h }r:h}r :h]r!:U ros-melodic-rviz-python-tutorialr":assshˆh}r#:h}r$:h}r%:h]r&:j":asssh}r':h}r(:h}r):h]r*:j":asssuUopengmr+:}r,:(h}r-:h}r.:h]r/:Uros/melodic/cob_externr0:assh }r1:h }r2:h}r3:h]r4:Uros-melodic-opengmr5:assshˆh}r6:h}r7:h}r8:h]r9:j5:asssh}r::h}r;:h}r<:h]r=:j5:asssuUcob_monitoringr>:}r?:(h}r@:h}rA:h]rB:Uros/melodic/cob_command_toolsrC:assh }rD:h }rE:h}rF:h]rG:Uros-melodic-cob-monitoringrH:assshˆh}rI:h}rJ:h}rK:h]rL:jH:asssh}rM:h}rN:h}rO:h]rP:jH:asssuUeigenpyrQ:}rR:(h}rS:h}rT:h]rU:Uros/melodic/eigenpyrV:assh }rW:h }rX:h}rY:h]rZ:Uros-melodic-eigenpyr[:assshˆh}r\:h}r]:h}r^:h]r_:j[:asssh}r`:h}ra:h}rb:h]rc:j[:asssuUuwsimrd:}re:(h}rf:h}rg:h]rh:U!ros/melodic/underwater_simulationri:assh }rj:h }rk:h}rl:h]rm:Uros-melodic-uwsimrn:assshˆh}ro:h}rp:h}rq:h]rr:jn:asssh}rs:h}rt:h}ru:h]rv:jn:asssuUteleop_twist_joyrw:}rx:(h}ry:h}rz:h]r{:Uros/melodic/teleop_twist_joyr|:assh }r}:h }r~:h}r:h]r€:Uros-melodic-teleop-twist-joyr:assshˆh}r‚:h}rƒ:h}r„:h]r…:j:asssh}r†:h}r‡:h}rˆ:h]r‰:j:asssuU warthog_vizrŠ:}r‹:(h}rŒ:h}r:h]rŽ:Uros/melodic/warthog_desktopr:assh }r:h }r‘:h}r’:h]r“:Uros-melodic-warthog-vizr”:assshˆh}r•:h}r–:h}r—:h]r˜:j”:asssh}r™:h}rš:h}r›:h]rœ:j”:asssuUtoposens_pointcloudr:}rž:(h}rŸ:h}r :h]r¡:Uros/melodic/toposensr¢:assh }r£:h }r¤:h}r¥:h]r¦:Uros-melodic-toposens-pointcloudr§:assshˆh}r¨:h}r©:h}rª:h]r«:j§:asssh}r¬:h}r­:h}r®:h]r¯:j§:asssuU flexbe_widgetr°:}r±:(h}r²:h}r³:h]r´:Uros/melodic/flexberµ:assh }r¶:h }r·:h}r¸:h]r¹:Uros-melodic-flexbe-widgetrº:assshˆh}r»:h}r¼:h}r½:h]r¾:jº:asssh}r¿:h}rÀ:h}rÁ:h]rÂ:jº:asssuUjoint_state_controllerrÃ:}rÄ:(h}rÅ:h}rÆ:h]rÇ:Uros/melodic/ros_controllersrÈ:assh }rÉ:h }rÊ:h}rË:h]rÌ:U"ros-melodic-joint-state-controllerrÍ:assshˆh}rÎ:h}rÏ:h}rÐ:h]rÑ:jÍ:asssh}rÒ:h}rÓ:h}rÔ:h]rÕ:jÍ:asssuUroslisp_utilitiesrÖ:}r×:(h}rØ:h}rÙ:h]rÚ:Uros/melodic/roslisp_commonrÛ:assh }rÜ:h }rÝ:h}rÞ:h]rß:Uros-melodic-roslisp-utilitiesrà:assshˆh}rá:h}râ:h}rã:h]rä:jà:asssh}rå:h}ræ:h}rç:h]rè:jà:asssuU cv_bridgeré:}rê:(h}rë:h}rì:h]rí:Uros/melodic/vision_opencvrî:assh }rï:h }rð:h}rñ:h]rò:Uros-melodic-cv-bridgeró:assshˆh}rô:h}rõ:h}rö:h]r÷:jó:asssh}rø:h}rù:h}rú:h]rû:jó:asssuUrocon_interaction_msgsrü:}rý:(h}rþ:h}rÿ:h]r;Uros/melodic/rocon_msgsr;assh }r;h }r;h}r;h]r;U"ros-melodic-rocon-interaction-msgsr;assshˆh}r;h}r;h}r ;h]r ;j;asssh}r ;h}r ;h}r ;h]r;j;asssuUaudio_common_msgsr;}r;(h}r;h}r;h]r;Uros/melodic/audio_commonr;assh }r;h }r;h}r;h]r;Uros-melodic-audio-common-msgsr;assshˆh}r;h}r;h}r;h]r;j;asssh}r;h}r;h}r ;h]r!;j;asssuUimage_transport_pluginsr";}r#;(h}r$;h}r%;h]r&;U#ros/melodic/image_transport_pluginsr';assh }r(;h }r);h}r*;h]r+;U#ros-melodic-image-transport-pluginsr,;assshˆh}r-;h}r.;h}r/;h]r0;j,;asssh}r1;h}r2;h}r3;h]r4;j,;asssuUstd_srvsr5;}r6;(h}r7;h}r8;h]r9;Uros/melodic/ros_comm_msgsr:;assh }r;;h }r<;h}r=;h]r>;Uros-melodic-std-srvsr?;assshˆh}r@;h}rA;h}rB;h]rC;j?;asssh}rD;h}rE;h}rF;h]rG;j?;asssuUrocon_python_utilsrH;}rI;(h}rJ;h}rK;h]rL;Uros/melodic/rocon_toolsrM;assh }rN;h }rO;h}rP;h]rQ;Uros-melodic-rocon-python-utilsrR;assshˆh}rS;h}rT;h}rU;h]rV;jR;asssh}rW;h}rX;h}rY;h]rZ;jR;asssuUyocs_localization_managerr[;}r\;(h}r];h}r^;h]r_;Uros/melodic/yujin_ocsr`;assh }ra;h }rb;h}rc;h]rd;U%ros-melodic-yocs-localization-managerre;assshˆh}rf;h}rg;h}rh;h]ri;je;asssh}rj;h}rk;h}rl;h]rm;je;asssuUphidgets_driversrn;}ro;(h}rp;h}rq;h]rr;Uros/melodic/phidgets_driversrs;assh }rt;h }ru;h}rv;h]rw;Uros-melodic-phidgets-driversrx;assshˆh}ry;h}rz;h}r{;h]r|;jx;asssh}r};h}r~;h}r;h]r€;jx;asssuU uwsim_bulletr;}r‚;(h}rƒ;h}r„;h]r…;Uros/melodic/uwsim_bulletr†;assh }r‡;h }rˆ;h}r‰;h]rŠ;Uros-melodic-uwsim-bulletr‹;assshˆh}rŒ;h}r;h}rŽ;h]r;j‹;asssh}r;h}r‘;h}r’;h]r“;j‹;asssuUpr2_navigationr”;}r•;(h}r–;h}r—;h]r˜;Uros/melodic/pr2_navigationr™;assh }rš;h }r›;h}rœ;h]r;Uros-melodic-pr2-navigationrž;assshˆh}rŸ;h}r ;h}r¡;h]r¢;jž;asssh}r£;h}r¤;h}r¥;h]r¦;jž;asssuU franka_hwr§;}r¨;(h}r©;h}rª;h]r«;Uros/melodic/franka_rosr¬;assh }r­;h }r®;h}r¯;h]r°;Uros-melodic-franka-hwr±;assshˆh}r²;h}r³;h}r´;h]rµ;j±;asssh}r¶;h}r·;h}r¸;h]r¹;j±;asssuUvariant_topic_toolsrº;}r»;(h}r¼;h}r½;h]r¾;Uros/melodic/variantr¿;assh }rÀ;h }rÁ;h}rÂ;h]rÃ;Uros-melodic-variant-topic-toolsrÄ;assshˆh}rÅ;h}rÆ;h}rÇ;h]rÈ;jÄ;asssh}rÉ;h}rÊ;h}rË;h]rÌ;jÄ;asssuU agni_tf_toolsrÍ;}rÎ;(h}rÏ;h}rÐ;h]rÑ;Uros/melodic/agni_tf_toolsrÒ;assh }rÓ;h }rÔ;h}rÕ;h]rÖ;Uros-melodic-agni-tf-toolsr×;assshˆh}rØ;h}rÙ;h}rÚ;h]rÛ;j×;asssh}rÜ;h}rÝ;h}rÞ;h]rß;j×;asssuUmcmillan_airfieldrà;}rá;(h}râ;h}rã;h]rä;Uros/melodic/uav_testingrå;assh }ræ;h }rç;h}rè;h]ré;Uros-melodic-mcmillan-airfieldrê;assshˆh}rë;h}rì;h}rí;h]rî;jê;asssh}rï;h}rð;h}rñ;h]rò;jê;asssuUlibuvcró;}rô;(h}rõ;h}rö;h]r÷;Uros/melodic/libuvcrø;assh }rù;h }rú;h}rû;h]rü;Uros-melodic-libuvcrý;assshˆh}rþ;h}rÿ;h}r<h]r<jý;asssh}r<h}r<h}r<h]r<jý;asssuUmav_commr<}r<(h}r<h}r <h]r <Uros/melodic/mav_commr <assh }r <h }r <h}r<h]r<Uros-melodic-mav-commr<assshˆh}r<h}r<h}r<h]r<j<asssh}r<h}r<h}r<h]r<j<asssuU gennodejsr<}r<(h}r<h}r<h]r<Uros/melodic/gennodejsr<assh }r<h }r <h}r!<h]r"<Uros-melodic-gennodejsr#<assshˆh}r$<h}r%<h}r&<h]r'<j#<asssh}r(<h}r)<h}r*<h]r+<j#<asssuUrobot_body_filterr,<}r-<(h}r.<h}r/<h]r0<Uros/melodic/robot_body_filterr1<assh }r2<h }r3<h}r4<h]r5<Uros-melodic-robot-body-filterr6<assshˆh}r7<h}r8<h}r9<h]r:<j6<asssh}r;<h}r<<h}r=<h]r><j6<asssuUleuze_phidget_driverr?<}r@<(h}rA<h}rB<h]rC<Uros/melodic/leuze_ros_driversrD<assh }rE<h }rF<h}rG<h]rH<U ros-melodic-leuze-phidget-driverrI<assshˆh}rJ<h}rK<h}rL<h]rM<jI<asssh}rN<h}rO<h}rP<h]rQ<jI<asssuUcollada_urdf_jsk_patchrR<}rS<(h}rT<h}rU<h]rV<Uros/melodic/jsk_3rdpartyrW<assh }rX<h }rY<h}rZ<h]r[<U"ros-melodic-collada-urdf-jsk-patchr\<assshˆh}r]<h}r^<h}r_<h]r`<j\<asssh}ra<h}rb<h}rc<h]rd<j\<asssuUroscppre<}rf<(h}rg<h}rh<h]ri<Uros/melodic/ros_commrj<assh }rk<h }rl<h}rm<h]rn<Uros-melodic-roscppro<assshˆh}rp<h}rq<h}rr<h]rs<jo<asssh}rt<h}ru<h}rv<h]rw<jo<asssuUcontroller_managerrx<}ry<(h}rz<h}r{<h]r|<Uros/melodic/ros_controlr}<assh }r~<h }r<h}r€<h]r<Uros-melodic-controller-managerr‚<assshˆh}rƒ<h}r„<h}r…<h]r†<j‚<asssh}r‡<h}rˆ<h}r‰<h]rŠ<j‚<asssuUrviz_plugin_tutorialsr‹<}rŒ<(h}r<h}rŽ<h]r<U#ros/melodic/visualization_tutorialsr<assh }r‘<h }r’<h}r“<h]r”<U!ros-melodic-rviz-plugin-tutorialsr•<assshˆh}r–<h}r—<h}r˜<h]r™<j•<asssh}rš<h}r›<h}rœ<h]r<j•<asssuU webrtc_rosrž<}rŸ<(h}r <h}r¡<h]r¢<Uros/melodic/webrtc_rosr£<assh }r¤<h }r¥<h}r¦<h]r§<Uros-melodic-webrtc-rosr¨<assshˆh}r©<h}rª<h}r«<h]r¬<j¨<asssh}r­<h}r®<h}r¯<h]r°<j¨<asssuUexotica_ik_solverr±<}r²<(h}r³<h}r´<h]rµ<Uros/melodic/exoticar¶<assh }r·<h }r¸<h}r¹<h]rº<Uros-melodic-exotica-ik-solverr»<assshˆh}r¼<h}r½<h}r¾<h]r¿<j»<asssh}rÀ<h}rÁ<h}rÂ<h]rÃ<j»<asssuU tuw_arucorÄ<}rÅ<(h}rÆ<h}rÇ<h]rÈ<U ros/melodic/tuw_marker_detectionrÉ<assh }rÊ<h }rË<h}rÌ<h]rÍ<Uros-melodic-tuw-arucorÎ<assshˆh}rÏ<h}rÐ<h}rÑ<h]rÒ<jÎ<asssh}rÓ<h}rÔ<h}rÕ<h]rÖ<jÎ<asssuU qt_gui_cppr×<}rØ<(h}rÙ<h}rÚ<h]rÛ<Uros/melodic/qt_gui_corerÜ<assh }rÝ<h }rÞ<h}rß<h]rà<Uros-melodic-qt-gui-cpprá<assshˆh}râ<h}rã<h}rä<h]rå<já<asssh}ræ<h}rç<h}rè<h]ré<já<asssuUautoware_map_msgsrê<}rë<(h}rì<h}rí<h]rî<Uros/melodic/autoware_msgsrï<assh }rð<h }rñ<h}rò<h]ró<Uros-melodic-autoware-map-msgsrô<assshˆh}rõ<h}rö<h}r÷<h]rø<jô<asssh}rù<h}rú<h}rû<h]rü<jô<asssuUmbf_msgsrý<}rþ<(h}rÿ<h}r=h]r=Uros/melodic/move_base_flexr=assh }r=h }r=h}r=h]r=Uros-melodic-mbf-msgsr=assshˆh}r=h}r =h}r =h]r =j=asssh}r =h}r =h}r=h]r=j=asssuUstd_msgsr=}r=(h}r=h}r=h]r=Uros/melodic/std_msgsr=assh }r=h }r=h}r=h]r=Uros-melodic-std-msgsr=assshˆh}r=h}r=h}r=h]r=j=asssh}r=h}r =h}r!=h]r"=j=asssuUnav2d_localizerr#=}r$=(h}r%=h}r&=h]r'=Uros/melodic/navigation_2dr(=assh }r)=h }r*=h}r+=h]r,=Uros-melodic-nav2d-localizerr-=assshˆh}r.=h}r/=h}r0=h]r1=j-=asssh}r2=h}r3=h}r4=h]r5=j-=asssuUautomotive_platform_msgsr6=}r7=(h}r8=h}r9=h]r:=U$ros/melodic/automotive_autonomy_msgsr;=assh }r<=h }r==h}r>=h]r?=U$ros-melodic-automotive-platform-msgsr@=assshˆh}rA=h}rB=h}rC=h]rD=j@=asssh}rE=h}rF=h}rG=h]rH=j@=asssuUrandom_numbersrI=}rJ=(h}rK=h}rL=h]rM=Uros/melodic/random_numbersrN=assh }rO=h }rP=h}rQ=h]rR=Uros-melodic-random-numbersrS=assshˆh}rT=h}rU=h}rV=h]rW=jS=asssh}rX=h}rY=h}rZ=h]r[=jS=asssuUgazebo_pluginsr\=}r]=(h}r^=h}r_=h]r`=Uros/melodic/gazebo_ros_pkgsra=assh }rb=h }rc=h}rd=h]re=Uros-melodic-gazebo-pluginsrf=assshˆh}rg=h}rh=h}ri=h]rj=jf=asssh}rk=h}rl=h}rm=h]rn=jf=asssuUqb_device_msgsro=}rp=(h}rq=h}rr=h]rs=Uros/melodic/qb_devicert=assh }ru=h }rv=h}rw=h]rx=Uros-melodic-qb-device-msgsry=assshˆh}rz=h}r{=h}r|=h]r}=jy=asssh}r~=h}r=h}r€=h]r=jy=asssuUvelodyne_pointcloudr‚=}rƒ=(h}r„=h}r…=h]r†=Uros/melodic/velodyner‡=assh }rˆ=h }r‰=h}rŠ=h]r‹=Uros-melodic-velodyne-pointcloudrŒ=assshˆh}r=h}rŽ=h}r=h]r=jŒ=asssh}r‘=h}r’=h}r“=h]r”=jŒ=asssuU voxel_gridr•=}r–=(h}r—=h}r˜=h]r™=Uros/melodic/navigationrš=assh }r›=h }rœ=h}r=h]rž=Uros-melodic-voxel-gridrŸ=assshˆh}r =h}r¡=h}r¢=h]r£=jŸ=asssh}r¤=h}r¥=h}r¦=h]r§=jŸ=asssuUmoveit_plannersr¨=}r©=(h}rª=h}r«=h]r¬=Uros/melodic/moveitr­=assh }r®=h }r¯=h}r°=h]r±=Uros-melodic-moveit-plannersr²=assshˆh}r³=h}r´=h}rµ=h]r¶=j²=asssh}r·=h}r¸=h}r¹=h]rº=j²=asssuU grasping_msgsr»=}r¼=(h}r½=h}r¾=h]r¿=Uros/melodic/grasping_msgsrÀ=assh }rÁ=h }rÂ=h}rÃ=h]rÄ=Uros-melodic-grasping-msgsrÅ=assshˆh}rÆ=h}rÇ=h}rÈ=h]rÉ=jÅ=asssh}rÊ=h}rË=h}rÌ=h]rÍ=jÅ=asssuUpr2_calibration_controllersrÎ=}rÏ=(h}rÐ=h}rÑ=h]rÒ=Uros/melodic/pr2_controllersrÓ=assh }rÔ=h }rÕ=h}rÖ=h]r×=U'ros-melodic-pr2-calibration-controllersrØ=assshˆh}rÙ=h}rÚ=h}rÛ=h]rÜ=jØ=asssh}rÝ=h}rÞ=h}rß=h]rà=jØ=asssuU'exotica_time_indexed_rrt_connect_solverrá=}râ=(h}rã=h}rä=h]rå=Uros/melodic/exoticaræ=assh }rç=h }rè=h}ré=h]rê=U3ros-melodic-exotica-time-indexed-rrt-connect-solverrë=assshˆh}rì=h}rí=h}rî=h]rï=jë=asssh}rð=h}rñ=h}rò=h]ró=jë=asssuU power_monitorrô=}rõ=(h}rö=h}r÷=h]rø=Uros/melodic/pr2_power_driversrù=assh }rú=h }rû=h}rü=h]rý=Uros-melodic-power-monitorrþ=assshˆh}rÿ=h}r>h}r>h]r>jþ=asssh}r>h}r>h}r>h]r>jþ=asssuUtalos_descriptionr>}r>(h}r >h}r >h]r >Uros/melodic/talos_robotr >assh }r >h }r>h}r>h]r>Uros-melodic-talos-descriptionr>assshˆh}r>h}r>h}r>h]r>j>asssh}r>h}r>h}r>h]r>j>asssuUhector_map_serverr>}r>(h}r>h}r>h]r>Uros/melodic/hector_slamr>assh }r >h }r!>h}r">h]r#>Uros-melodic-hector-map-serverr$>assshˆh}r%>h}r&>h}r'>h]r(>j$>asssh}r)>h}r*>h}r+>h]r,>j$>asssuUrc_hand_eye_calibration_clientr->}r.>(h}r/>h}r0>h]r1>Uros/melodic/rc_visardr2>assh }r3>h }r4>h}r5>h]r6>U*ros-melodic-rc-hand-eye-calibration-clientr7>assshˆh}r8>h}r9>h}r:>h]r;>j7>asssh}r<>h}r=>h}r>>h]r?>j7>asssuU sbpl_recoveryr@>}rA>(h}rB>h}rC>h]rD>U#ros/melodic/navigation_experimentalrE>assh }rF>h }rG>h}rH>h]rI>Uros-melodic-sbpl-recoveryrJ>assshˆh}rK>h}rL>h}rM>h]rN>jJ>asssh}rO>h}rP>h}rQ>h]rR>jJ>asssuUcalibration_estimationrS>}rT>(h}rU>h}rV>h]rW>Uros/melodic/calibrationrX>assh }rY>h }rZ>h}r[>h]r\>U"ros-melodic-calibration-estimationr]>assshˆh}r^>h}r_>h}r`>h]ra>j]>asssh}rb>h}rc>h}rd>h]re>j]>asssuUrocon_service_pair_msgsrf>}rg>(h}rh>h}ri>h]rj>Uros/melodic/rocon_msgsrk>assh }rl>h }rm>h}rn>h]ro>U#ros-melodic-rocon-service-pair-msgsrp>assshˆh}rq>h}rr>h}rs>h]rt>jp>asssh}ru>h}rv>h}rw>h]rx>jp>asssuUopen_manipulatorry>}rz>(h}r{>h}r|>h]r}>Uros/melodic/open_manipulatorr~>assh }r>h }r€>h}r>h]r‚>Uros-melodic-open-manipulatorrƒ>assshˆh}r„>h}r…>h}r†>h]r‡>jƒ>asssh}rˆ>h}r‰>h}rŠ>h]r‹>jƒ>asssuUaws_ros1_commonrŒ>}r>(h}rŽ>h}r>h]r>Uros/melodic/aws_ros1_commonr‘>assh }r’>h }r“>h}r”>h]r•>Uros-melodic-aws-ros1-commonr–>assshˆh}r—>h}r˜>h}r™>h]rš>j–>asssh}r›>h}rœ>h}r>h]rž>j–>asssuUswri_yaml_utilrŸ>}r >(h}r¡>h}r¢>h]r£>Uros/melodic/marti_commonr¤>assh }r¥>h }r¦>h}r§>h]r¨>Uros-melodic-swri-yaml-utilr©>assshˆh}rª>h}r«>h}r¬>h]r­>j©>asssh}r®>h}r¯>h}r°>h]r±>j©>asssuUdynamic_robot_state_publisherr²>}r³>(h}r´>h}rµ>h]r¶>U)ros/melodic/dynamic_robot_state_publisherr·>assh }r¸>h }r¹>h}rº>h]r»>U)ros-melodic-dynamic-robot-state-publisherr¼>assshˆh}r½>h}r¾>h}r¿>h]rÀ>j¼>asssh}rÁ>h}rÂ>h}rÃ>h]rÄ>j¼>asssuUgps_umdrÅ>}rÆ>(h}rÇ>h}rÈ>h]rÉ>Uros/melodic/gps_umdrÊ>assh }rË>h }rÌ>h}rÍ>h]rÎ>Uros-melodic-gps-umdrÏ>assshˆh}rÐ>h}rÑ>h}rÒ>h]rÓ>jÏ>asssh}rÔ>h}rÕ>h}rÖ>h]r×>jÏ>asssuUmoveit_sim_controllerrØ>}rÙ>(h}rÚ>h}rÛ>h]rÜ>U!ros/melodic/moveit_sim_controllerrÝ>assh }rÞ>h }rß>h}rà>h]rá>U!ros-melodic-moveit-sim-controllerrâ>assshˆh}rã>h}rä>h}rå>h]ræ>jâ>asssh}rç>h}rè>h}ré>h]rê>jâ>asssuU pilz_controlrë>}rì>(h}rí>h}rî>h]rï>Uros/melodic/pilz_robotsrð>assh }rñ>h }rò>h}ró>h]rô>Uros-melodic-pilz-controlrõ>assshˆh}rö>h}r÷>h}rø>h]rù>jõ>asssh}rú>h}rû>h}rü>h]rý>jõ>asssuUtfrþ>}rÿ>(h}r?h}r?h]r?Uros/melodic/geometryr?assh }r?h }r?h}r?h]r?Uros-melodic-tfr?assshˆh}r ?h}r ?h}r ?h]r ?j?asssh}r ?h}r?h}r?h]r?j?asssuUastuff_sensor_msgsr?}r?(h}r?h}r?h]r?Uros/melodic/astuff_sensor_msgsr?assh }r?h }r?h}r?h]r?Uros-melodic-astuff-sensor-msgsr?assshˆh}r?h}r?h}r?h]r?j?asssh}r ?h}r!?h}r"?h]r#?j?asssuUros_baser$?}r%?(h}r&?h}r'?h]r(?Uros/melodic/metapackagesr)?assh }r*?h }r+?h}r,?h]r-?Uros-melodic-ros-baser.?assshˆh}r/?h}r0?h}r1?h]r2?j.?asssh}r3?h}r4?h}r5?h]r6?j.?asssuUdiagnostic_aggregatorr7?}r8?(h}r9?h}r:?h]r;?Uros/melodic/diagnosticsr?h}r??h]r@?U!ros-melodic-diagnostic-aggregatorrA?assshˆh}rB?h}rC?h}rD?h]rE?jA?asssh}rF?h}rG?h}rH?h]rI?jA?asssuUubloxrJ?}rK?(h}rL?h}rM?h]rN?Uros/melodic/ubloxrO?assh }rP?h }rQ?h}rR?h]rS?Uros-melodic-ubloxrT?assshˆh}rU?h}rV?h}rW?h]rX?jT?asssh}rY?h}rZ?h}r[?h]r\?jT?asssuUteb_local_plannerr]?}r^?(h}r_?h}r`?h]ra?Uros/melodic/teb_local_plannerrb?assh }rc?h }rd?h}re?h]rf?Uros-melodic-teb-local-plannerrg?assshˆh}rh?h}ri?h}rj?h]rk?jg?asssh}rl?h}rm?h}rn?h]ro?jg?asssuU tf2_eigenrp?}rq?(h}rr?h}rs?h]rt?Uros/melodic/geometry2ru?assh }rv?h }rw?h}rx?h]ry?Uros-melodic-tf2-eigenrz?assshˆh}r{?h}r|?h}r}?h]r~?jz?asssh}r?h}r€?h}r?h]r‚?jz?asssuUvariant_topic_testrƒ?}r„?(h}r…?h}r†?h]r‡?Uros/melodic/variantrˆ?assh }r‰?h }rŠ?h}r‹?h]rŒ?Uros-melodic-variant-topic-testr?assshˆh}rŽ?h}r?h}r?h]r‘?j?asssh}r’?h}r“?h}r”?h]r•?j?asssuUjsk_rviz_pluginsr–?}r—?(h}r˜?h}r™?h]rš?Uros/melodic/jsk_visualizationr›?assh }rœ?h }r?h}rž?h]rŸ?Uros-melodic-jsk-rviz-pluginsr ?assshˆh}r¡?h}r¢?h}r£?h]r¤?j ?asssh}r¥?h}r¦?h}r§?h]r¨?j ?asssuUtuw_multi_robot_msgsr©?}rª?(h}r«?h}r¬?h]r­?Uros/melodic/tuw_msgsr®?assh }r¯?h }r°?h}r±?h]r²?U ros-melodic-tuw-multi-robot-msgsr³?assshˆh}r´?h}rµ?h}r¶?h]r·?j³?asssh}r¸?h}r¹?h}rº?h]r»?j³?asssuUyocs_velocity_smootherr¼?}r½?(h}r¾?h}r¿?h]rÀ?Uros/melodic/yujin_ocsrÁ?assh }rÂ?h }rÃ?h}rÄ?h]rÅ?U"ros-melodic-yocs-velocity-smootherrÆ?assshˆh}rÇ?h}rÈ?h}rÉ?h]rÊ?jÆ?asssh}rË?h}rÌ?h}rÍ?h]rÎ?jÆ?asssuUcloudwatch_metrics_collectorrÏ?}rÐ?(h}rÑ?h}rÒ?h]rÓ?U(ros/melodic/cloudwatch_metrics_collectorrÔ?assh }rÕ?h }rÖ?h}r×?h]rØ?U(ros-melodic-cloudwatch-metrics-collectorrÙ?assshˆh}rÚ?h}rÛ?h}rÜ?h]rÝ?jÙ?asssh}rÞ?h}rß?h}rà?h]rá?jÙ?asssuUpcl_conversionsrâ?}rã?(h}rä?h}rå?h]ræ?Uros/melodic/perception_pclrç?assh }rè?h }ré?h}rê?h]rë?Uros-melodic-pcl-conversionsrì?assshˆh}rí?h}rî?h}rï?h]rð?jì?asssh}rñ?h}rò?h}ró?h]rô?jì?asssuUhector_gazebo_pluginsrõ?}rö?(h}r÷?h}rø?h]rù?Uros/melodic/hector_gazeború?assh }rû?h }rü?h}rý?h]rþ?U!ros-melodic-hector-gazebo-pluginsrÿ?assshˆh}r@h}r@h}r@h]r@jÿ?asssh}r@h}r@h}r@h]r@jÿ?asssuU rqt_py_treesr@}r @(h}r @h}r @h]r @Uros/melodic/rqt_py_treesr @assh }r@h }r@h}r@h]r@Uros-melodic-rqt-py-treesr@assshˆh}r@h}r@h}r@h]r@j@asssh}r@h}r@h}r@h]r@j@asssuUlaser_scan_densifierr@}r@(h}r@h}r@h]r@Uros/melodic/cob_driverr @assh }r!@h }r"@h}r#@h]r$@U ros-melodic-laser-scan-densifierr%@assshˆh}r&@h}r'@h}r(@h]r)@j%@asssh}r*@h}r+@h}r,@h]r-@j%@asssuUrqt_image_viewr.@}r/@(h}r0@h}r1@h]r2@Uros/melodic/rqt_image_viewr3@assh }r4@h }r5@h}r6@h]r7@Uros-melodic-rqt-image-viewr8@assshˆh}r9@h}r:@h}r;@h]r<@j8@asssh}r=@h}r>@h}r?@h]r@@j8@asssuU rqt_consolerA@}rB@(h}rC@h}rD@h]rE@Uros/melodic/rqt_consolerF@assh }rG@h }rH@h}rI@h]rJ@Uros-melodic-rqt-consolerK@assshˆh}rL@h}rM@h}rN@h]rO@jK@asssh}rP@h}rQ@h}rR@h]rS@jK@asssuU pacmod_msgsrT@}rU@(h}rV@h}rW@h]rX@Uros/melodic/astuff_sensor_msgsrY@assh }rZ@h }r[@h}r\@h]r]@Uros-melodic-pacmod-msgsr^@assshˆh}r_@h}r`@h}ra@h]rb@j^@asssh}rc@h}rd@h}re@h]rf@j^@asssuUautoware_external_msgsrg@}rh@(h}ri@h}rj@h]rk@Uros/melodic/autoware_msgsrl@assh }rm@h }rn@h}ro@h]rp@U"ros-melodic-autoware-external-msgsrq@assshˆh}rr@h}rs@h}rt@h]ru@jq@asssh}rv@h}rw@h}rx@h]ry@jq@asssuUabbrz@}r{@(h}r|@h}r}@h]r~@Uros/melodic/abbr@assh }r€@h }r@h}r‚@h]rƒ@Uros-melodic-abbr„@assshˆh}r…@h}r†@h}r‡@h]rˆ@j„@asssh}r‰@h}rŠ@h}r‹@h]rŒ@j„@asssuUeigen_conversionsr@}rŽ@(h}r@h}r@h]r‘@Uros/melodic/geometryr’@assh }r“@h }r”@h}r•@h]r–@Uros-melodic-eigen-conversionsr—@assshˆh}r˜@h}r™@h}rš@h]r›@j—@asssh}rœ@h}r@h}rž@h]rŸ@j—@asssuUsick_timr @}r¡@(h}r¢@h}r£@h]r¤@Uros/melodic/sick_timr¥@assh }r¦@h }r§@h}r¨@h]r©@Uros-melodic-sick-timrª@assshˆh}r«@h}r¬@h}r­@h]r®@jª@asssh}r¯@h}r°@h}r±@h]r²@jª@asssuU audio_commonr³@}r´@(h}rµ@h}r¶@h]r·@Uros/melodic/audio_commonr¸@assh }r¹@h }rº@h}r»@h]r¼@Uros-melodic-audio-commonr½@assshˆh}r¾@h}r¿@h}rÀ@h]rÁ@j½@asssh}rÂ@h}rÃ@h}rÄ@h]rÅ@j½@asssuUcob_hand_bridgerÆ@}rÇ@(h}rÈ@h}rÉ@h]rÊ@Uros/melodic/cob_handrË@assh }rÌ@h }rÍ@h}rÎ@h]rÏ@Uros-melodic-cob-hand-bridgerÐ@assshˆh}rÑ@h}rÒ@h}rÓ@h]rÔ@jÐ@asssh}rÕ@h}rÖ@h}r×@h]rØ@jÐ@asssuUdwb_local_plannerrÙ@}rÚ@(h}rÛ@h}rÜ@h]rÝ@Uros/melodic/robot_navigationrÞ@assh }rß@h }rà@h}rá@h]râ@Uros-melodic-dwb-local-plannerrã@assshˆh}rä@h}rå@h}ræ@h]rç@jã@asssh}rè@h}ré@h}rê@h]rë@jã@asssuUmrpt_reactivenav2drì@}rí@(h}rî@h}rï@h]rð@Uros/melodic/mrpt_navigationrñ@assh }rò@h }ró@h}rô@h]rõ@Uros-melodic-mrpt-reactivenav2drö@assshˆh}r÷@h}rø@h}rù@h]rú@jö@asssh}rû@h}rü@h}rý@h]rþ@jö@asssuUfkie_potree_rviz_pluginrÿ@}rA(h}rAh}rAh]rAU#ros/melodic/fkie_potree_rviz_pluginrAassh }rAh }rAh}rAh]rAU#ros-melodic-fkie-potree-rviz-pluginr Aassshˆh}r Ah}r Ah}r Ah]r Aj Aasssh}rAh}rAh}rAh]rAj AasssuUridgeback_desktoprA}rA(h}rAh}rAh]rAUros/melodic/ridgeback_desktoprAassh }rAh }rAh}rAh]rAUros-melodic-ridgeback-desktoprAassshˆh}rAh}rAh}rAh]r AjAasssh}r!Ah}r"Ah}r#Ah]r$AjAasssuUswri_profiler_msgsr%A}r&A(h}r'Ah}r(Ah]r)AUros/melodic/swri_profilerr*Aassh }r+Ah }r,Ah}r-Ah]r.AUros-melodic-swri-profiler-msgsr/Aassshˆh}r0Ah}r1Ah}r2Ah]r3Aj/Aasssh}r4Ah}r5Ah}r6Ah]r7Aj/AasssuUmicrostrain_3dmgx2_imur8A}r9A(h}r:Ah}r;Ah]rAh }r?Ah}r@Ah]rAAU"ros-melodic-microstrain-3dmgx2-imurBAassshˆh}rCAh}rDAh}rEAh]rFAjBAasssh}rGAh}rHAh}rIAh]rJAjBAasssuU tuw_geometryrKA}rLA(h}rMAh}rNAh]rOAUros/melodic/tuw_geometryrPAassh }rQAh }rRAh}rSAh]rTAUros-melodic-tuw-geometryrUAassshˆh}rVAh}rWAh}rXAh]rYAjUAasssh}rZAh}r[Ah}r\Ah]r]AjUAasssuU hector_modelsr^A}r_A(h}r`Ah}raAh]rbAUros/melodic/hector_modelsrcAassh }rdAh }reAh}rfAh]rgAUros-melodic-hector-modelsrhAassshˆh}riAh}rjAh}rkAh]rlAjhAasssh}rmAh}rnAh}roAh]rpAjhAasssuUcob_voltage_controlrqA}rrA(h}rsAh}rtAh]ruAUros/melodic/cob_driverrvAassh }rwAh }rxAh}ryAh]rzAUros-melodic-cob-voltage-controlr{Aassshˆh}r|Ah}r}Ah}r~Ah]rAj{Aasssh}r€Ah}rAh}r‚Ah]rƒAj{AasssuUjsk_tilt_laserr„A}r…A(h}r†Ah}r‡Ah]rˆAUros/melodic/jsk_commonr‰Aassh }rŠAh }r‹Ah}rŒAh]rAUros-melodic-jsk-tilt-laserrŽAassshˆh}rAh}rAh}r‘Ah]r’AjŽAasssh}r“Ah}r”Ah}r•Ah]r–AjŽAasssuUpeople_tracking_filterr—A}r˜A(h}r™Ah}ršAh]r›AUros/melodic/peoplerœAassh }rAh }ržAh}rŸAh]r AU"ros-melodic-people-tracking-filterr¡Aassshˆh}r¢Ah}r£Ah}r¤Ah]r¥Aj¡Aasssh}r¦Ah}r§Ah}r¨Ah]r©Aj¡AasssuUusb_cam_hardwarerªA}r«A(h}r¬Ah}r­Ah]r®AUros/melodic/usb_cam_hardwarer¯Aassh }r°Ah }r±Ah}r²Ah]r³AUros-melodic-usb-cam-hardwarer´Aassshˆh}rµAh}r¶Ah}r·Ah]r¸Aj´Aasssh}r¹Ah}rºAh}r»Ah]r¼Aj´AasssuU!moveit_controller_manager_exampler½A}r¾A(h}r¿Ah}rÀAh]rÁAUros/melodic/moveitrÂAassh }rÃAh }rÄAh}rÅAh]rÆAU-ros-melodic-moveit-controller-manager-examplerÇAassshˆh}rÈAh}rÉAh}rÊAh]rËAjÇAasssh}rÌAh}rÍAh}rÎAh]rÏAjÇAasssuUvizrÐA}rÑA(h}rÒAh}rÓAh]rÔAUros/melodic/metapackagesrÕAassh }rÖAh }r×Ah}rØAh]rÙAUros-melodic-vizrÚAassshˆh}rÛAh}rÜAh}rÝAh]rÞAjÚAasssh}rßAh}ràAh}ráAh]râAjÚAasssuUmoveit_ros_control_interfacerãA}räA(h}råAh}ræAh]rçAUros/melodic/moveitrèAassh }réAh }rêAh}rëAh]rìAU(ros-melodic-moveit-ros-control-interfaceríAassshˆh}rîAh}rïAh}rðAh]rñAjíAasssh}ròAh}róAh}rôAh]rõAjíAasssuUrqt_runtime_monitorröA}r÷A(h}røAh}rùAh]rúAUros/melodic/rqt_runtime_monitorrûAassh }rüAh }rýAh}rþAh]rÿAUros-melodic-rqt-runtime-monitorrBassshˆh}rBh}rBh}rBh]rBjBasssh}rBh}rBh}rBh]rBjBasssuU ecl_eigenr B}r B(h}r Bh}r Bh]r BUros/melodic/ecl_corerBassh }rBh }rBh}rBh]rBUros-melodic-ecl-eigenrBassshˆh}rBh}rBh}rBh]rBjBasssh}rBh}rBh}rBh]rBjBasssuU vision_opencvrB}rB(h}rBh}rBh]r BUros/melodic/vision_opencvr!Bassh }r"Bh }r#Bh}r$Bh]r%BUros-melodic-vision-opencvr&Bassshˆh}r'Bh}r(Bh}r)Bh]r*Bj&Basssh}r+Bh}r,Bh}r-Bh]r.Bj&BasssuUtrac_ikr/B}r0B(h}r1Bh}r2Bh]r3BUros/melodic/trac_ikr4Bassh }r5Bh }r6Bh}r7Bh]r8BUros-melodic-trac-ikr9Bassshˆh}r:Bh}r;Bh}rBh}r?Bh}r@Bh]rABj9BasssuUmultisense_librBB}rCB(h}rDBh}rEBh]rFBUros/melodic/multisense_rosrGBassh }rHBh }rIBh}rJBh]rKBUros-melodic-multisense-librLBassshˆh}rMBh}rNBh}rOBh]rPBjLBasssh}rQBh}rRBh}rSBh]rTBjLBasssuUsemantic_point_annotatorrUB}rVB(h}rWBh}rXBh]rYBUros/melodic/pr2_navigationrZBassh }r[Bh }r\Bh}r]Bh]r^BU$ros-melodic-semantic-point-annotatorr_Bassshˆh}r`Bh}raBh}rbBh]rcBj_Basssh}rdBh}reBh}rfBh]rgBj_BasssuUlibntcanrhB}riB(h}rjBh}rkBh]rlBUros/melodic/cob_externrmBassh }rnBh }roBh}rpBh]rqBUros-melodic-libntcanrrBassshˆh}rsBh}rtBh}ruBh]rvBjrBasssh}rwBh}rxBh}ryBh]rzBjrBasssuUcob_relayboardr{B}r|B(h}r}Bh}r~Bh]rBUros/melodic/cob_driverr€Bassh }rBh }r‚Bh}rƒBh]r„BUros-melodic-cob-relayboardr…Bassshˆh}r†Bh}r‡Bh}rˆBh]r‰Bj…Basssh}rŠBh}r‹Bh}rŒBh]rBj…BasssuUfetch_simple_linear_controllerrŽB}rB(h}rBh}r‘Bh]r’BU*ros/melodic/fetch_simple_linear_controllerr“Bassh }r”Bh }r•Bh}r–Bh]r—BU*ros-melodic-fetch-simple-linear-controllerr˜Bassshˆh}r™Bh}ršBh}r›Bh]rœBj˜Basssh}rBh}ržBh}rŸBh]r Bj˜BasssuUnavigation_experimentalr¡B}r¢B(h}r£Bh}r¤Bh]r¥BU#ros/melodic/navigation_experimentalr¦Bassh }r§Bh }r¨Bh}r©Bh]rªBU#ros-melodic-navigation-experimentalr«Bassshˆh}r¬Bh}r­Bh}r®Bh]r¯Bj«Basssh}r°Bh}r±Bh}r²Bh]r³Bj«BasssuUswri_system_utilr´B}rµB(h}r¶Bh}r·Bh]r¸BUros/melodic/marti_commonr¹Bassh }rºBh }r»Bh}r¼Bh]r½BUros-melodic-swri-system-utilr¾Bassshˆh}r¿Bh}rÀBh}rÁBh]rÂBj¾Basssh}rÃBh}rÄBh}rÅBh]rÆBj¾BasssuUgeographic_msgsrÇB}rÈB(h}rÉBh}rÊBh]rËBUros/melodic/geographic_inforÌBassh }rÍBh }rÎBh}rÏBh]rÐBUros-melodic-geographic-msgsrÑBassshˆh}rÒBh}rÓBh}rÔBh]rÕBjÑBasssh}rÖBh}r×Bh}rØBh]rÙBjÑBasssuUdepthimage_to_laserscanrÚB}rÛB(h}rÜBh}rÝBh]rÞBU#ros/melodic/depthimage_to_laserscanrßBassh }ràBh }ráBh}râBh]rãBU#ros-melodic-depthimage-to-laserscanräBassshˆh}råBh}ræBh}rçBh]rèBjäBasssh}réBh}rêBh}rëBh]rìBjäBasssuUuuv_world_ros_plugins_msgsríB}rîB(h}rïBh}rðBh]rñBUros/melodic/uuv_simulatorròBassh }róBh }rôBh}rõBh]röBU&ros-melodic-uuv-world-ros-plugins-msgsr÷Bassshˆh}røBh}rùBh}rúBh]rûBj÷Basssh}rüBh}rýBh}rþBh]rÿBj÷BasssuUuuv_sensor_ros_pluginsrC}rC(h}rCh}rCh]rCUros/melodic/uuv_simulatorrCassh }rCh }rCh}rCh]r CU"ros-melodic-uuv-sensor-ros-pluginsr Cassshˆh}r Ch}r Ch}r Ch]rCj Casssh}rCh}rCh}rCh]rCj CasssuUnonpersistent_voxel_layerrC}rC(h}rCh}rCh]rCU%ros/melodic/nonpersistent_voxel_layerrCassh }rCh }rCh}rCh]rCU%ros-melodic-nonpersistent-voxel-layerrCassshˆh}rCh}rCh}r Ch]r!CjCasssh}r"Ch}r#Ch}r$Ch]r%CjCasssuUrc_common_msgsr&C}r'C(h}r(Ch}r)Ch]r*CUros/melodic/rc_common_msgsr+Cassh }r,Ch }r-Ch}r.Ch]r/CUros-melodic-rc-common-msgsr0Cassshˆh}r1Ch}r2Ch}r3Ch]r4Cj0Casssh}r5Ch}r6Ch}r7Ch]r8Cj0CasssuU teleop_toolsr9C}r:C(h}r;Ch}rCassh }r?Ch }r@Ch}rACh]rBCUros-melodic-teleop-toolsrCCassshˆh}rDCh}rECh}rFCh]rGCjCCasssh}rHCh}rICh}rJCh]rKCjCCasssuUvideo_stream_opencvrLC}rMC(h}rNCh}rOCh]rPCUros/melodic/video_stream_opencvrQCassh }rRCh }rSCh}rTCh]rUCUros-melodic-video-stream-opencvrVCassshˆh}rWCh}rXCh}rYCh]rZCjVCasssh}r[Ch}r\Ch}r]Ch]r^CjVCasssuUgrid_map_demosr_C}r`C(h}raCh}rbCh]rcCUros/melodic/grid_maprdCassh }reCh }rfCh}rgCh]rhCUros-melodic-grid-map-demosriCassshˆh}rjCh}rkCh}rlCh]rmCjiCasssh}rnCh}roCh}rpCh]rqCjiCasssuUunderwater_sensor_msgsrrC}rsC(h}rtCh}ruCh]rvCU!ros/melodic/underwater_simulationrwCassh }rxCh }ryCh}rzCh]r{CU"ros-melodic-underwater-sensor-msgsr|Cassshˆh}r}Ch}r~Ch}rCh]r€Cj|Casssh}rCh}r‚Ch}rƒCh]r„Cj|CasssuUecl_mathr…C}r†C(h}r‡Ch}rˆCh]r‰CUros/melodic/ecl_corerŠCassh }r‹Ch }rŒCh}rCh]rŽCUros-melodic-ecl-mathrCassshˆh}rCh}r‘Ch}r’Ch]r“CjCasssh}r”Ch}r•Ch}r–Ch]r—CjCasssuUexecutive_smach_visualizationr˜C}r™C(h}ršCh}r›Ch]rœCU)ros/melodic/executive_smach_visualizationrCassh }ržCh }rŸCh}r Ch]r¡CU)ros-melodic-executive-smach-visualizationr¢Cassshˆh}r£Ch}r¤Ch}r¥Ch]r¦Cj¢Casssh}r§Ch}r¨Ch}r©Ch]rªCj¢CasssuU imagezero_rosr«C}r¬C(h}r­Ch}r®Ch]r¯CUros/melodic/imagezero_transportr°Cassh }r±Ch }r²Ch}r³Ch]r´CUros-melodic-imagezero-rosrµCassshˆh}r¶Ch}r·Ch}r¸Ch]r¹CjµCasssh}rºCh}r»Ch}r¼Ch]r½CjµCasssuUecl_linear_algebrar¾C}r¿C(h}rÀCh}rÁCh]rÂCUros/melodic/ecl_corerÃCassh }rÄCh }rÅCh}rÆCh]rÇCUros-melodic-ecl-linear-algebrarÈCassshˆh}rÉCh}rÊCh}rËCh]rÌCjÈCasssh}rÍCh}rÎCh}rÏCh]rÐCjÈCasssuUtowrrÑC}rÒC(h}rÓCh}rÔCh]rÕCUros/melodic/towrrÖCassh }r×Ch }rØCh}rÙCh]rÚCUros-melodic-towrrÛCassshˆh}rÜCh}rÝCh}rÞCh]rßCjÛCasssh}ràCh}ráCh}râCh]rãCjÛCasssuUgazebo_ros_pkgsräC}råC(h}ræCh}rçCh]rèCUros/melodic/gazebo_ros_pkgsréCassh }rêCh }rëCh}rìCh]ríCUros-melodic-gazebo-ros-pkgsrîCassshˆh}rïCh}rðCh}rñCh]ròCjîCasssh}róCh}rôCh}rõCh]röCjîCasssuU smach_rosr÷C}røC(h}rùCh}rúCh]rûCUros/melodic/executive_smachrüCassh }rýCh }rþCh}rÿCh]rDUros-melodic-smach-rosrDassshˆh}rDh}rDh}rDh]rDjDasssh}rDh}rDh}rDh]r DjDasssuUjoint_states_settlerr D}r D(h}r Dh}r Dh]rDUros/melodic/calibrationrDassh }rDh }rDh}rDh]rDU ros-melodic-joint-states-settlerrDassshˆh}rDh}rDh}rDh]rDjDasssh}rDh}rDh}rDh]rDjDasssuUodom_frame_publisherrD}rD(h}rDh}r Dh]r!DU ros/melodic/odom_frame_publisherr"Dassh }r#Dh }r$Dh}r%Dh]r&DU ros-melodic-odom-frame-publisherr'Dassshˆh}r(Dh}r)Dh}r*Dh]r+Dj'Dasssh}r,Dh}r-Dh}r.Dh]r/Dj'DasssuUposedetection_msgsr0D}r1D(h}r2Dh}r3Dh]r4DUros/melodic/jsk_common_msgsr5Dassh }r6Dh }r7Dh}r8Dh]r9DUros-melodic-posedetection-msgsr:Dassshˆh}r;Dh}rDj:Dasssh}r?Dh}r@Dh}rADh]rBDj:DasssuU rail_mesh_icprCD}rDD(h}rEDh}rFDh]rGDUros/melodic/rail_mesh_icprHDassh }rIDh }rJDh}rKDh]rLDUros-melodic-rail-mesh-icprMDassshˆh}rNDh}rODh}rPDh]rQDjMDasssh}rRDh}rSDh}rTDh]rUDjMDasssuUsbpl_lattice_plannerrVD}rWD(h}rXDh}rYDh]rZDU#ros/melodic/navigation_experimentalr[Dassh }r\Dh }r]Dh}r^Dh]r_DU ros-melodic-sbpl-lattice-plannerr`Dassshˆh}raDh}rbDh}rcDh]rdDj`Dasssh}reDh}rfDh}rgDh]rhDj`DasssuUpr2_moveit_configriD}rjD(h}rkDh}rlDh]rmDUros/melodic/moveit_pr2rnDassh }roDh }rpDh}rqDh]rrDUros-melodic-pr2-moveit-configrsDassshˆh}rtDh}ruDh}rvDh]rwDjsDasssh}rxDh}ryDh}rzDh]r{DjsDasssuUpcl_rosr|D}r}D(h}r~Dh}rDh]r€DUros/melodic/perception_pclrDassh }r‚Dh }rƒDh}r„Dh]r…DUros-melodic-pcl-rosr†Dassshˆh}r‡Dh}rˆDh}r‰Dh]rŠDj†Dasssh}r‹Dh}rŒDh}rDh]rŽDj†DasssuU pyros_testrD}rD(h}r‘Dh}r’Dh]r“DUros/melodic/pyros_testr”Dassh }r•Dh }r–Dh}r—Dh]r˜DUros-melodic-pyros-testr™Dassshˆh}ršDh}r›Dh}rœDh]rDj™Dasssh}ržDh}rŸDh}r Dh]r¡Dj™DasssuU map_laserr¢D}r£D(h}r¤Dh}r¥Dh]r¦DUros/melodic/laser_filteringr§Dassh }r¨Dh }r©Dh}rªDh]r«DUros-melodic-map-laserr¬Dassshˆh}r­Dh}r®Dh}r¯Dh]r°Dj¬Dasssh}r±Dh}r²Dh}r³Dh]r´Dj¬DasssuUrqt_srvrµD}r¶D(h}r·Dh}r¸Dh]r¹DUros/melodic/rqt_srvrºDassh }r»Dh }r¼Dh}r½Dh]r¾DUros-melodic-rqt-srvr¿Dassshˆh}rÀDh}rÁDh}rÂDh]rÃDj¿Dasssh}rÄDh}rÅDh}rÆDh]rÇDj¿DasssuU flexbe_mirrorrÈD}rÉD(h}rÊDh}rËDh]rÌDUros/melodic/flexberÍDassh }rÎDh }rÏDh}rÐDh]rÑDUros-melodic-flexbe-mirrorrÒDassshˆh}rÓDh}rÔDh}rÕDh]rÖDjÒDasssh}r×Dh}rØDh}rÙDh]rÚDjÒDasssuU qt_gui_corerÛD}rÜD(h}rÝDh}rÞDh]rßDUros/melodic/qt_gui_coreràDassh }ráDh }râDh}rãDh]räDUros-melodic-qt-gui-coreråDassshˆh}ræDh}rçDh}rèDh]réDjåDasssh}rêDh}rëDh}rìDh]ríDjåDasssuUkinesis_video_streamerrîD}rïD(h}rðDh}rñDh]ròDU"ros/melodic/kinesis_video_streamerróDassh }rôDh }rõDh}röDh]r÷DU"ros-melodic-kinesis-video-streamerrøDassshˆh}rùDh}rúDh}rûDh]rüDjøDasssh}rýDh}rþDh}rÿDh]rEjøDasssuUturtlebot3_autorace_camerarE}rE(h}rEh}rEh]rEUros/melodic/turtlebot3_autoracerEassh }rEh }rEh}r Eh]r EU&ros-melodic-turtlebot3-autorace-camerar Eassshˆh}r Eh}r Eh}rEh]rEj Easssh}rEh}rEh}rEh]rEj EasssuUeigen_stl_containersrE}rE(h}rEh}rEh]rEU ros/melodic/eigen_stl_containersrEassh }rEh }rEh}rEh]rEU ros-melodic-eigen-stl-containersrEassshˆh}rEh}r Eh}r!Eh]r"EjEasssh}r#Eh}r$Eh}r%Eh]r&EjEasssuUgrid_map_loaderr'E}r(E(h}r)Eh}r*Eh]r+EUros/melodic/grid_mapr,Eassh }r-Eh }r.Eh}r/Eh]r0EUros-melodic-grid-map-loaderr1Eassshˆh}r2Eh}r3Eh}r4Eh]r5Ej1Easssh}r6Eh}r7Eh}r8Eh]r9Ej1EasssuUtalos_description_calibrationr:E}r;E(h}rEUros/melodic/talos_robotr?Eassh }r@Eh }rAEh}rBEh]rCEU)ros-melodic-talos-description-calibrationrDEassshˆh}rEEh}rFEh}rGEh]rHEjDEasssh}rIEh}rJEh}rKEh]rLEjDEasssuUvariantrME}rNE(h}rOEh}rPEh]rQEUros/melodic/variantrREassh }rSEh }rTEh}rUEh]rVEUros-melodic-variantrWEassshˆh}rXEh}rYEh}rZEh]r[EjWEasssh}r\Eh}r]Eh}r^Eh]r_EjWEasssuUrocon_bubble_iconsr`E}raE(h}rbEh}rcEh]rdEUros/melodic/rocon_toolsreEassh }rfEh }rgEh}rhEh]riEUros-melodic-rocon-bubble-iconsrjEassshˆh}rkEh}rlEh}rmEh]rnEjjEasssh}roEh}rpEh}rqEh]rrEjjEasssuUffrsE}rtE(h}ruEh}rvEh]rwEUros/melodic/jsk_3rdpartyrxEassh }ryEh }rzEh}r{Eh]r|EUros-melodic-ffr}Eassshˆh}r~Eh}rEh}r€Eh]rEj}Easssh}r‚Eh}rƒEh}r„Eh]r…Ej}EasssuUlockfreer†E}r‡E(h}rˆEh}r‰Eh]rŠEUros/melodic/ros_realtimer‹Eassh }rŒEh }rEh}rŽEh]rEUros-melodic-lockfreerEassshˆh}r‘Eh}r’Eh}r“Eh]r”EjEasssh}r•Eh}r–Eh}r—Eh]r˜EjEasssuUmoveit_chomp_optimizer_adapterr™E}ršE(h}r›Eh}rœEh]rEUros/melodic/moveitržEassh }rŸEh }r Eh}r¡Eh]r¢EU*ros-melodic-moveit-chomp-optimizer-adapterr£Eassshˆh}r¤Eh}r¥Eh}r¦Eh]r§Ej£Easssh}r¨Eh}r©Eh}rªEh]r«Ej£EasssuU rosbag_fancyr¬E}r­E(h}r®Eh}r¯Eh]r°EUros/melodic/rosbag_fancyr±Eassh }r²Eh }r³Eh}r´Eh]rµEUros-melodic-rosbag-fancyr¶Eassshˆh}r·Eh}r¸Eh}r¹Eh]rºEj¶Easssh}r»Eh}r¼Eh}r½Eh]r¾Ej¶EasssuUrobot_activity_msgsr¿E}rÀE(h}rÁEh}rÂEh]rÃEUros/melodic/robot_activityrÄEassh }rÅEh }rÆEh}rÇEh]rÈEUros-melodic-robot-activity-msgsrÉEassshˆh}rÊEh}rËEh}rÌEh]rÍEjÉEasssh}rÎEh}rÏEh}rÐEh]rÑEjÉEasssuU#pr2_controller_configuration_gazeborÒE}rÓE(h}rÔEh}rÕEh]rÖEUros/melodic/pr2_simulatorr×Eassh }rØEh }rÙEh}rÚEh]rÛEU/ros-melodic-pr2-controller-configuration-gazeborÜEassshˆh}rÝEh}rÞEh}rßEh]ràEjÜEasssh}ráEh}râEh}rãEh]räEjÜEasssuUlex_common_msgsråE}ræE(h}rçEh}rèEh]réEUros/melodic/lex_noderêEassh }rëEh }rìEh}ríEh]rîEUros-melodic-lex-common-msgsrïEassshˆh}rðEh}rñEh}ròEh]róEjïEasssh}rôEh}rõEh}röEh]r÷EjïEasssuUurdfrøE}rùE(h}rúEh}rûEh]rüEUros/melodic/urdfrýEassh }rþEh }rÿEh}rFh]rFUros-melodic-urdfrFassshˆh}rFh}rFh}rFh]rFjFasssh}rFh}rFh}r Fh]r FjFasssuUresource_retrieverr F}r F(h}r Fh}rFh]rFUros/melodic/resource_retrieverrFassh }rFh }rFh}rFh]rFUros-melodic-resource-retrieverrFassshˆh}rFh}rFh}rFh]rFjFasssh}rFh}rFh}rFh]rFjFasssuUdelphi_esr_msgsrF}rF(h}r Fh}r!Fh]r"FUros/melodic/astuff_sensor_msgsr#Fassh }r$Fh }r%Fh}r&Fh]r'FUros-melodic-delphi-esr-msgsr(Fassshˆh}r)Fh}r*Fh}r+Fh]r,Fj(Fasssh}r-Fh}r.Fh}r/Fh]r0Fj(FasssuUfiltersr1F}r2F(h}r3Fh}r4Fh]r5FUros/melodic/filtersr6Fassh }r7Fh }r8Fh}r9Fh]r:FUros-melodic-filtersr;Fassshˆh}rFh]r?Fj;Fasssh}r@Fh}rAFh}rBFh]rCFj;FasssuU rdl_cmakerDF}rEF(h}rFFh}rGFh]rHFUros/melodic/rdlrIFassh }rJFh }rKFh}rLFh]rMFUros-melodic-rdl-cmakerNFassshˆh}rOFh}rPFh}rQFh]rRFjNFasssh}rSFh}rTFh}rUFh]rVFjNFasssuUperception_pclrWF}rXF(h}rYFh}rZFh]r[FUros/melodic/perception_pclr\Fassh }r]Fh }r^Fh}r_Fh]r`FUros-melodic-perception-pclraFassshˆh}rbFh}rcFh}rdFh]reFjaFasssh}rfFh}rgFh}rhFh]riFjaFasssuU fetch_mapsrjF}rkF(h}rlFh}rmFh]rnFUros/melodic/fetch_rosroFassh }rpFh }rqFh}rrFh]rsFUros-melodic-fetch-mapsrtFassshˆh}ruFh}rvFh}rwFh]rxFjtFasssh}ryFh}rzFh}r{Fh]r|FjtFasssuUdesistek_saga_descriptionr}F}r~F(h}rFh}r€Fh]rFUros/melodic/desistek_sagar‚Fassh }rƒFh }r„Fh}r…Fh]r†FU%ros-melodic-desistek-saga-descriptionr‡Fassshˆh}rˆFh}r‰Fh}rŠFh]r‹Fj‡Fasssh}rŒFh}rFh}rŽFh]rFj‡FasssuUcombined_robot_hwrF}r‘F(h}r’Fh}r“Fh]r”FUros/melodic/ros_controlr•Fassh }r–Fh }r—Fh}r˜Fh]r™FUros-melodic-combined-robot-hwršFassshˆh}r›Fh}rœFh}rFh]ržFjšFasssh}rŸFh}r Fh}r¡Fh]r¢FjšFasssuUmoveit_kinematicsr£F}r¤F(h}r¥Fh}r¦Fh]r§FUros/melodic/moveitr¨Fassh }r©Fh }rªFh}r«Fh]r¬FUros-melodic-moveit-kinematicsr­Fassshˆh}r®Fh}r¯Fh}r°Fh]r±Fj­Fasssh}r²Fh}r³Fh}r´Fh]rµFj­FasssuU dataspeed_pdsr¶F}r·F(h}r¸Fh}r¹Fh]rºFUros/melodic/dataspeed_pdsr»Fassh }r¼Fh }r½Fh}r¾Fh]r¿FUros-melodic-dataspeed-pdsrÀFassshˆh}rÁFh}rÂFh}rÃFh]rÄFjÀFasssh}rÅFh}rÆFh}rÇFh]rÈFjÀFasssuU urdfdom_pyrÉF}rÊF(h}rËFh}rÌFh]rÍFUros/melodic/urdfdom_pyrÎFassh }rÏFh }rÐFh}rÑFh]rÒFUros-melodic-urdfdom-pyrÓFassshˆh}rÔFh}rÕFh}rÖFh]r×FjÓFasssh}rØFh}rÙFh}rÚFh]rÛFjÓFasssuU rqt_actionrÜF}rÝF(h}rÞFh}rßFh]ràFUros/melodic/rqt_actionráFassh }râFh }rãFh}räFh]råFUros-melodic-rqt-actionræFassshˆh}rçFh}rèFh}réFh]rêFjæFasssh}rëFh}rìFh}ríFh]rîFjæFasssuU roseus_mongorïF}rðF(h}rñFh}ròFh]róFUros/melodic/jsk_roseusrôFassh }rõFh }röFh}r÷Fh]røFUros-melodic-roseus-mongorùFassshˆh}rúFh}rûFh}rüFh]rýFjùFasssh}rþFh}rÿFh}rGh]rGjùFasssuUgripper_action_controllerrG}rG(h}rGh}rGh]rGUros/melodic/ros_controllersrGassh }rGh }r Gh}r Gh]r GU%ros-melodic-gripper-action-controllerr Gassshˆh}r Gh}rGh}rGh]rGj Gasssh}rGh}rGh}rGh]rGj GasssuUxpp_hyqrG}rG(h}rGh}rGh]rGUros/melodic/xpprGassh }rGh }rGh}rGh]rGUros-melodic-xpp-hyqrGassshˆh}r Gh}r!Gh}r"Gh]r#GjGasssh}r$Gh}r%Gh}r&Gh]r'GjGasssuUdynamixel_workbenchr(G}r)G(h}r*Gh}r+Gh]r,GUros/melodic/dynamixel-workbenchr-Gassh }r.Gh }r/Gh}r0Gh]r1GUros-melodic-dynamixel-workbenchr2Gassshˆh}r3Gh}r4Gh}r5Gh]r6Gj2Gasssh}r7Gh}r8Gh}r9Gh]r:Gj2GasssuU schunk_sdhr;G}rGh]r?GU#ros/melodic/schunk_modular_roboticsr@Gassh }rAGh }rBGh}rCGh]rDGUros-melodic-schunk-sdhrEGassshˆh}rFGh}rGGh}rHGh]rIGjEGasssh}rJGh}rKGh}rLGh]rMGjEGasssuU mini_maxwellrNG}rOG(h}rPGh}rQGh]rRGUros/melodic/jsk_3rdpartyrSGassh }rTGh }rUGh}rVGh]rWGUros-melodic-mini-maxwellrXGassshˆh}rYGh}rZGh}r[Gh]r\GjXGasssh}r]Gh}r^Gh}r_Gh]r`GjXGasssuUdynamic_edt_3draG}rbG(h}rcGh}rdGh]reGUros/melodic/octomaprfGassh }rgGh }rhGh}riGh]rjGUros-melodic-dynamic-edt-3drkGassshˆh}rlGh}rmGh}rnGh]roGjkGasssh}rpGh}rqGh}rrGh]rsGjkGasssuU sand_islandrtG}ruG(h}rvGh}rwGh]rxGUros/melodic/uav_testingryGassh }rzGh }r{Gh}r|Gh]r}GUros-melodic-sand-islandr~Gassshˆh}rGh}r€Gh}rGh]r‚Gj~Gasssh}rƒGh}r„Gh}r…Gh]r†Gj~GasssuU tuw_ellipsesr‡G}rˆG(h}r‰Gh}rŠGh]r‹GU ros/melodic/tuw_marker_detectionrŒGassh }rGh }rŽGh}rGh]rGUros-melodic-tuw-ellipsesr‘Gassshˆh}r’Gh}r“Gh}r”Gh]r•Gj‘Gasssh}r–Gh}r—Gh}r˜Gh]r™Gj‘GasssuUswri_math_utilršG}r›G(h}rœGh}rGh]ržGUros/melodic/marti_commonrŸGassh }r Gh }r¡Gh}r¢Gh]r£GUros-melodic-swri-math-utilr¤Gassshˆh}r¥Gh}r¦Gh}r§Gh]r¨Gj¤Gasssh}r©Gh}rªGh}r«Gh]r¬Gj¤GasssuUlocomotor_msgsr­G}r®G(h}r¯Gh}r°Gh]r±GUros/melodic/robot_navigationr²Gassh }r³Gh }r´Gh}rµGh]r¶GUros-melodic-locomotor-msgsr·Gassshˆh}r¸Gh}r¹Gh}rºGh]r»Gj·Gasssh}r¼Gh}r½Gh}r¾Gh]r¿Gj·GasssuUyocs_safety_controllerrÀG}rÁG(h}rÂGh}rÃGh]rÄGUros/melodic/yujin_ocsrÅGassh }rÆGh }rÇGh}rÈGh]rÉGU"ros-melodic-yocs-safety-controllerrÊGassshˆh}rËGh}rÌGh}rÍGh]rÎGjÊGasssh}rÏGh}rÐGh}rÑGh]rÒGjÊGasssuU prbt_gazeborÓG}rÔG(h}rÕGh}rÖGh]r×GUros/melodic/pilz_robotsrØGassh }rÙGh }rÚGh}rÛGh]rÜGUros-melodic-prbt-gazeborÝGassshˆh}rÞGh}rßGh}ràGh]ráGjÝGasssh}râGh}rãGh}räGh]råGjÝGasssuU rslidar_msgsræG}rçG(h}rèGh}réGh]rêGUros/melodic/robosenserëGassh }rìGh }ríGh}rîGh]rïGUros-melodic-rslidar-msgsrðGassshˆh}rñGh}ròGh}róGh]rôGjðGasssh}rõGh}röGh}r÷Gh]røGjðGasssuUactionlib_lisprùG}rúG(h}rûGh}rüGh]rýGUros/melodic/roslisp_commonrþGassh }rÿGh }rHh}rHh]rHUros-melodic-actionlib-lisprHassshˆh}rHh}rHh}rHh]rHjHasssh}rHh}r Hh}r Hh]r HjHasssuUcalibration_setup_helperr H}r H(h}rHh}rHh]rHUros/melodic/calibrationrHassh }rHh }rHh}rHh]rHU$ros-melodic-calibration-setup-helperrHassshˆh}rHh}rHh}rHh]rHjHasssh}rHh}rHh}rHh]rHjHasssuUvelodyne_descriptionrH}r H(h}r!Hh}r"Hh]r#HUros/melodic/velodyne_simulatorr$Hassh }r%Hh }r&Hh}r'Hh]r(HU ros-melodic-velodyne-descriptionr)Hassshˆh}r*Hh}r+Hh}r,Hh]r-Hj)Hasssh}r.Hh}r/Hh}r0Hh]r1Hj)HasssuUmbf_abstract_corer2H}r3H(h}r4Hh}r5Hh]r6HUros/melodic/move_base_flexr7Hassh }r8Hh }r9Hh}r:Hh]r;HUros-melodic-mbf-abstract-corerHh}r?Hh]r@HjIh}r?Ih]r@IUros/melodic/grid_maprAIassh }rBIh }rCIh}rDIh]rEIUros-melodic-grid-map-pclrFIassshˆh}rGIh}rHIh}rIIh]rJIjFIasssh}rKIh}rLIh}rMIh]rNIjFIasssuUschunk_modular_roboticsrOI}rPI(h}rQIh}rRIh]rSIU#ros/melodic/schunk_modular_roboticsrTIassh }rUIh }rVIh}rWIh]rXIU#ros-melodic-schunk-modular-roboticsrYIassshˆh}rZIh}r[Ih}r\Ih]r]IjYIasssh}r^Ih}r_Ih}r`Ih]raIjYIasssuUturtlebot3_slamrbI}rcI(h}rdIh}reIh]rfIUros/melodic/turtlebot3rgIassh }rhIh }riIh}rjIh]rkIUros-melodic-turtlebot3-slamrlIassshˆh}rmIh}rnIh}roIh]rpIjlIasssh}rqIh}rrIh}rsIh]rtIjlIasssuUturtlebot3_bringupruI}rvI(h}rwIh}rxIh]ryIUros/melodic/turtlebot3rzIassh }r{Ih }r|Ih}r}Ih]r~IUros-melodic-turtlebot3-bringuprIassshˆh}r€Ih}rIh}r‚Ih]rƒIjIasssh}r„Ih}r…Ih}r†Ih]r‡IjIasssuU husky_desktoprˆI}r‰I(h}rŠIh}r‹Ih]rŒIUros/melodic/huskyrIassh }rŽIh }rIh}rIh]r‘IUros-melodic-husky-desktopr’Iassshˆh}r“Ih}r”Ih}r•Ih]r–Ij’Iasssh}r—Ih}r˜Ih}r™Ih]ršIj’IasssuUjoystick_interruptr›I}rœI(h}rIh}ržIh]rŸIUros/melodic/neonavigationr Iassh }r¡Ih }r¢Ih}r£Ih]r¤IUros-melodic-joystick-interruptr¥Iassshˆh}r¦Ih}r§Ih}r¨Ih]r©Ij¥Iasssh}rªIh}r«Ih}r¬Ih]r­Ij¥IasssuUobject_recognition_msgsr®I}r¯I(h}r°Ih}r±Ih]r²IU#ros/melodic/object_recognition_msgsr³Iassh }r´Ih }rµIh}r¶Ih]r·IU#ros-melodic-object-recognition-msgsr¸Iassshˆh}r¹Ih}rºIh}r»Ih]r¼Ij¸Iasssh}r½Ih}r¾Ih}r¿Ih]rÀIj¸IasssuUtalos_description_inertialrÁI}rÂI(h}rÃIh}rÄIh]rÅIUros/melodic/talos_robotrÆIassh }rÇIh }rÈIh}rÉIh]rÊIU&ros-melodic-talos-description-inertialrËIassshˆh}rÌIh}rÍIh}rÎIh]rÏIjËIasssh}rÐIh}rÑIh}rÒIh]rÓIjËIasssuU backward_rosrÔI}rÕI(h}rÖIh}r×Ih]rØIUros/melodic/backward_rosrÙIassh }rÚIh }rÛIh}rÜIh]rÝIUros-melodic-backward-rosrÞIassshˆh}rßIh}ràIh}ráIh]râIjÞIasssh}rãIh}räIh}råIh]ræIjÞIasssuUpilz_robot_programmingrçI}rèI(h}réIh}rêIh]rëIU"ros/melodic/pilz_industrial_motionrìIassh }ríIh }rîIh}rïIh]rðIU"ros-melodic-pilz-robot-programmingrñIassshˆh}ròIh}róIh}rôIh]rõIjñIasssh}röIh}r÷Ih}røIh]rùIjñIasssuUtf2rúI}rûI(h}rüIh}rýIh]rþIUros/melodic/geometry2rÿIassh }rJh }rJh}rJh]rJUros-melodic-tf2rJassshˆh}rJh}rJh}rJh]rJjJasssh}r Jh}r Jh}r Jh]r JjJasssuUnav_core_adapterr J}rJ(h}rJh}rJh]rJUros/melodic/robot_navigationrJassh }rJh }rJh}rJh]rJUros-melodic-nav-core-adapterrJassshˆh}rJh}rJh}rJh]rJjJasssh}rJh}rJh}rJh]rJjJasssuUjsk_model_toolsr J}r!J(h}r"Jh}r#Jh]r$JUros/melodic/jsk_model_toolsr%Jassh }r&Jh }r'Jh}r(Jh]r)JUros-melodic-jsk-model-toolsr*Jassshˆh}r+Jh}r,Jh}r-Jh]r.Jj*Jasssh}r/Jh}r0Jh}r1Jh]r2Jj*JasssuU pr2_machiner3J}r4J(h}r5Jh}r6Jh]r7JUros/melodic/pr2_commonr8Jassh }r9Jh }r:Jh}r;Jh]rJh}r?Jh}r@Jh]rAJj=Jasssh}rBJh}rCJh}rDJh]rEJj=Jasssuu(Ucob_cartesian_controllerrFJ}rGJ(h}rHJh}rIJh]rJJUros/melodic/cob_controlrKJassh }rLJh }rMJh}rNJh]rOJU$ros-melodic-cob-cartesian-controllerrPJassshˆh}rQJh}rRJh}rSJh]rTJjPJasssh}rUJh}rVJh}rWJh]rXJjPJasssuUrostestrYJ}rZJ(h}r[Jh}r\Jh]r]JUros/melodic/ros_commr^Jassh }r_Jh }r`Jh}raJh]rbJUros-melodic-rostestrcJassshˆh}rdJh}reJh}rfJh]rgJjcJasssh}rhJh}riJh}rjJh]rkJjcJasssuU pr2_simulatorrlJ}rmJ(h}rnJh}roJh]rpJUros/melodic/pr2_simulatorrqJassh }rrJh }rsJh}rtJh]ruJUros-melodic-pr2-simulatorrvJassshˆh}rwJh}rxJh}ryJh]rzJjvJasssh}r{Jh}r|Jh}r}Jh]r~JjvJasssuUnodeletrJ}r€J(h}rJh}r‚Jh]rƒJUros/melodic/nodelet_corer„Jassh }r…Jh }r†Jh}r‡Jh]rˆJUros-melodic-nodeletr‰Jassshˆh}rŠJh}r‹Jh}rŒJh]rJj‰Jasssh}rŽJh}rJh}rJh]r‘Jj‰JasssuUcob_vision_utilsr’J}r“J(h}r”Jh}r•Jh]r–JU!ros/melodic/cob_perception_commonr—Jassh }r˜Jh }r™Jh}ršJh]r›JUros-melodic-cob-vision-utilsrœJassshˆh}rJh}ržJh}rŸJh]r JjœJasssh}r¡Jh}r¢Jh}r£Jh]r¤JjœJasssuUimage_transportr¥J}r¦J(h}r§Jh}r¨Jh]r©JUros/melodic/image_commonrªJassh }r«Jh }r¬Jh}r­Jh]r®JUros-melodic-image-transportr¯Jassshˆh}r°Jh}r±Jh}r²Jh]r³Jj¯Jasssh}r´Jh}rµJh}r¶Jh]r·Jj¯JasssuUturtlebot3_teleopr¸J}r¹J(h}rºJh}r»Jh]r¼JUros/melodic/turtlebot3r½Jassh }r¾Jh }r¿Jh}rÀJh]rÁJUros-melodic-turtlebot3-teleoprÂJassshˆh}rÃJh}rÄJh}rÅJh]rÆJjÂJasssh}rÇJh}rÈJh}rÉJh]rÊJjÂJasssuUopenni2_launchrËJ}rÌJ(h}rÍJh}rÎJh]rÏJUros/melodic/openni2_camerarÐJassh }rÑJh }rÒJh}rÓJh]rÔJUros-melodic-openni2-launchrÕJassshˆh}rÖJh}r×Jh}rØJh]rÙJjÕJasssh}rÚJh}rÛJh}rÜJh]rÝJjÕJasssuU fetch_teleoprÞJ}rßJ(h}ràJh}ráJh]râJUros/melodic/fetch_rosrãJassh }räJh }råJh}ræJh]rçJUros-melodic-fetch-teleoprèJassshˆh}réJh}rêJh}rëJh]rìJjèJasssh}ríJh}rîJh}rïJh]rðJjèJasssuU mrpt_rawlogrñJ}ròJ(h}róJh}rôJh]rõJUros/melodic/mrpt_navigationröJassh }r÷Jh }røJh}rùJh]rúJUros-melodic-mrpt-rawlogrûJassshˆh}rüJh}rýJh}rþJh]rÿJjûJasssh}rKh}rKh}rKh]rKjûJasssuUfingertip_pressurerK}rK(h}rKh}rKh]rKU ros/melodic/pr2_ethercat_driversr Kassh }r Kh }r Kh}r Kh]r KUros-melodic-fingertip-pressurerKassshˆh}rKh}rKh}rKh]rKjKasssh}rKh}rKh}rKh]rKjKasssuUexotica_ompl_solverrK}rK(h}rKh}rKh]rKUros/melodic/exoticarKassh }rKh }rKh}rKh]r KUros-melodic-exotica-ompl-solverr!Kassshˆh}r"Kh}r#Kh}r$Kh]r%Kj!Kasssh}r&Kh}r'Kh}r(Kh]r)Kj!KasssuUridgeback_controlr*K}r+K(h}r,Kh}r-Kh]r.KUros/melodic/ridgebackr/Kassh }r0Kh }r1Kh}r2Kh]r3KUros-melodic-ridgeback-controlr4Kassshˆh}r5Kh}r6Kh}r7Kh]r8Kj4Kasssh}r9Kh}r:Kh}r;Kh]rK(h}r?Kh}r@Kh]rAKUros/melodic/acadorBKassh }rCKh }rDKh}rEKh]rFKUros-melodic-acadorGKassshˆh}rHKh}rIKh}rJKh]rKKjGKasssh}rLKh}rMKh}rNKh]rOKjGKasssuUpr2_controller_managerrPK}rQK(h}rRKh}rSKh]rTKUros/melodic/pr2_mechanismrUKassh }rVKh }rWKh}rXKh]rYKU"ros-melodic-pr2-controller-managerrZKassshˆh}r[Kh}r\Kh}r]Kh]r^KjZKasssh}r_Kh}r`Kh}raKh]rbKjZKasssuUuuv_world_pluginsrcK}rdK(h}reKh}rfKh]rgKUros/melodic/uuv_simulatorrhKassh }riKh }rjKh}rkKh]rlKUros-melodic-uuv-world-pluginsrmKassshˆh}rnKh}roKh}rpKh]rqKjmKasssh}rrKh}rsKh}rtKh]ruKjmKasssuUrosserial_vex_cortexrvK}rwK(h}rxKh}ryKh]rzKUros/melodic/rosserialr{Kassh }r|Kh }r}Kh}r~Kh]rKU ros-melodic-rosserial-vex-cortexr€Kassshˆh}rKh}r‚Kh}rƒKh]r„Kj€Kasssh}r…Kh}r†Kh}r‡Kh]rˆKj€KasssuUmonocam_settlerr‰K}rŠK(h}r‹Kh}rŒKh]rKUros/melodic/calibrationrŽKassh }rKh }rKh}r‘Kh]r’KUros-melodic-monocam-settlerr“Kassshˆh}r”Kh}r•Kh}r–Kh]r—Kj“Kasssh}r˜Kh}r™Kh}ršKh]r›Kj“KasssuU pr2_mechanismrœK}rK(h}ržKh}rŸKh]r KUros/melodic/pr2_mechanismr¡Kassh }r¢Kh }r£Kh}r¤Kh]r¥KUros-melodic-pr2-mechanismr¦Kassshˆh}r§Kh}r¨Kh}r©Kh]rªKj¦Kasssh}r«Kh}r¬Kh}r­Kh]r®Kj¦KasssuUrtshellr¯K}r°K(h}r±Kh}r²Kh]r³KUros/melodic/rtshellr´Kassh }rµKh }r¶Kh}r·Kh]r¸KUros-melodic-rtshellr¹Kassshˆh}rºKh}r»Kh}r¼Kh]r½Kj¹Kasssh}r¾Kh}r¿Kh}rÀKh]rÁKj¹KasssuU slam_kartorÂK}rÃK(h}rÄKh}rÅKh]rÆKUros/melodic/slam_kartorÇKassh }rÈKh }rÉKh}rÊKh]rËKUros-melodic-slam-kartorÌKassshˆh}rÍKh}rÎKh}rÏKh]rÐKjÌKasssh}rÑKh}rÒKh}rÓKh]rÔKjÌKasssuUimu_complementary_filterrÕK}rÖK(h}r×Kh}rØKh]rÙKUros/melodic/imu_toolsrÚKassh }rÛKh }rÜKh}rÝKh]rÞKU$ros-melodic-imu-complementary-filterrßKassshˆh}ràKh}ráKh}râKh]rãKjßKasssh}räKh}råKh}ræKh]rçKjßKasssuU pr2_commonrèK}réK(h}rêKh}rëKh]rìKUros/melodic/pr2_commonríKassh }rîKh }rïKh}rðKh]rñKUros-melodic-pr2-commonròKassshˆh}róKh}rôKh}rõKh]röKjòKasssh}r÷Kh}røKh}rùKh]rúKjòKasssuUcob_3d_mapping_msgsrûK}rüK(h}rýKh}rþKh]rÿKU!ros/melodic/cob_perception_commonrLassh }rLh }rLh}rLh]rLUros-melodic-cob-3d-mapping-msgsrLassshˆh}rLh}rLh}rLh]r LjLasssh}r Lh}r Lh}r Lh]r LjLasssuUecl_type_traitsrL}rL(h}rLh}rLh]rLUros/melodic/ecl_corerLassh }rLh }rLh}rLh]rLUros-melodic-ecl-type-traitsrLassshˆh}rLh}rLh}rLh]rLjLasssh}rLh}rLh}rLh]r LjLasssuUqb_chainr!L}r"L(h}r#Lh}r$Lh]r%LUros/melodic/qb_chainr&Lassh }r'Lh }r(Lh}r)Lh]r*LUros-melodic-qb-chainr+Lassshˆh}r,Lh}r-Lh}r.Lh]r/Lj+Lasssh}r0Lh}r1Lh}r2Lh]r3Lj+LasssuU tf2_toolsr4L}r5L(h}r6Lh}r7Lh]r8LUros/melodic/geometry2r9Lassh }r:Lh }r;Lh}rLassshˆh}r?Lh}r@Lh}rALh]rBLj>Lasssh}rCLh}rDLh}rELh]rFLj>LasssuU actionlibrGL}rHL(h}rILh}rJLh]rKLUros/melodic/actionlibrLLassh }rMLh }rNLh}rOLh]rPLUros-melodic-actionlibrQLassshˆh}rRLh}rSLh}rTLh]rULjQLasssh}rVLh}rWLh}rXLh]rYLjQLasssuUtuw_object_msgsrZL}r[L(h}r\Lh}r]Lh]r^LUros/melodic/tuw_msgsr_Lassh }r`Lh }raLh}rbLh]rcLUros-melodic-tuw-object-msgsrdLassshˆh}reLh}rfLh}rgLh]rhLjdLasssh}riLh}rjLh}rkLh]rlLjdLasssuUbase_local_plannerrmL}rnL(h}roLh}rpLh]rqLUros/melodic/navigationrrLassh }rsLh }rtLh}ruLh]rvLUros-melodic-base-local-plannerrwLassshˆh}rxLh}ryLh}rzLh]r{LjwLasssh}r|Lh}r}Lh}r~Lh]rLjwLasssuU franka_rosr€L}rL(h}r‚Lh}rƒLh]r„LUros/melodic/franka_rosr…Lassh }r†Lh }r‡Lh}rˆLh]r‰LUros-melodic-franka-rosrŠLassshˆh}r‹Lh}rŒLh}rLh]rŽLjŠLasssh}rLh}rLh}r‘Lh]r’LjŠLasssuU async_commr“L}r”L(h}r•Lh}r–Lh]r—LUros/melodic/async_commr˜Lassh }r™Lh }ršLh}r›Lh]rœLUros-melodic-async-commrLassshˆh}ržLh}rŸLh}r Lh]r¡LjLasssh}r¢Lh}r£Lh}r¤Lh]r¥LjLasssuUmoveit_commanderr¦L}r§L(h}r¨Lh}r©Lh]rªLUros/melodic/moveitr«Lassh }r¬Lh }r­Lh}r®Lh]r¯LUros-melodic-moveit-commanderr°Lassshˆh}r±Lh}r²Lh}r³Lh]r´Lj°Lasssh}rµLh}r¶Lh}r·Lh]r¸Lj°LasssuUeusurdfr¹L}rºL(h}r»Lh}r¼Lh]r½LUros/melodic/jsk_model_toolsr¾Lassh }r¿Lh }rÀLh}rÁLh]rÂLUros-melodic-eusurdfrÃLassshˆh}rÄLh}rÅLh}rÆLh]rÇLjÃLasssh}rÈLh}rÉLh}rÊLh]rËLjÃLasssuU opencv_appsrÌL}rÍL(h}rÎLh}rÏLh]rÐLUros/melodic/opencv_appsrÑLassh }rÒLh }rÓLh}rÔLh]rÕLUros-melodic-opencv-appsrÖLassshˆh}r×Lh}rØLh}rÙLh]rÚLjÖLasssh}rÛLh}rÜLh}rÝLh]rÞLjÖLasssuUyocs_cmd_vel_muxrßL}ràL(h}ráLh}râLh]rãLUros/melodic/yujin_ocsräLassh }råLh }ræLh}rçLh]rèLUros-melodic-yocs-cmd-vel-muxréLassshˆh}rêLh}rëLh}rìLh]ríLjéLasssh}rîLh}rïLh}rðLh]rñLjéLasssuUroslisp_commonròL}róL(h}rôLh}rõLh]röLUros/melodic/roslisp_commonr÷Lassh }røLh }rùLh}rúLh]rûLUros-melodic-roslisp-commonrüLassshˆh}rýLh}rþLh}rÿLh]rMjüLasssh}rMh}rMh}rMh]rMjüLasssuUridgeback_navigationrM}rM(h}rMh}rMh]r MUros/melodic/ridgebackr Massh }r Mh }r Mh}r Mh]rMU ros-melodic-ridgeback-navigationrMassshˆh}rMh}rMh}rMh]rMjMasssh}rMh}rMh}rMh]rMjMasssuUrc_dynamics_apirM}rM(h}rMh}rMh]rMUros/melodic/rc_dynamics_apirMassh }rMh }rMh}r Mh]r!MUros-melodic-rc-dynamics-apir"Massshˆh}r#Mh}r$Mh}r%Mh]r&Mj"Masssh}r'Mh}r(Mh}r)Mh]r*Mj"MasssuU rqt_py_commonr+M}r,M(h}r-Mh}r.Mh]r/MUros/melodic/rqtr0Massh }r1Mh }r2Mh}r3Mh]r4MUros-melodic-rqt-py-commonr5Massshˆh}r6Mh}r7Mh}r8Mh]r9Mj5Masssh}r:Mh}r;Mh}rM}r?M(h}r@Mh}rAMh]rBMUros/melodic/rocon_toolsrCMassh }rDMh }rEMh}rFMh]rGMUros-melodic-rocon-iconsrHMassshˆh}rIMh}rJMh}rKMh]rLMjHMasssh}rMMh}rNMh}rOMh]rPMjHMasssuU compressed_depth_image_transportrQM}rRM(h}rSMh}rTMh]rUMU#ros/melodic/image_transport_pluginsrVMassh }rWMh }rXMh}rYMh]rZMU,ros-melodic-compressed-depth-image-transportr[Massshˆh}r\Mh}r]Mh}r^Mh]r_Mj[Masssh}r`Mh}raMh}rbMh]rcMj[MasssuU uuv_teleoprdM}reM(h}rfMh}rgMh]rhMUros/melodic/uuv_simulatorriMassh }rjMh }rkMh}rlMh]rmMUros-melodic-uuv-teleoprnMassshˆh}roMh}rpMh}rqMh]rrMjnMasssh}rsMh}rtMh}ruMh]rvMjnMasssuU fetch_toolsrwM}rxM(h}ryMh}rzMh]r{MUros/melodic/fetch_toolsr|Massh }r}Mh }r~Mh}rMh]r€MUros-melodic-fetch-toolsrMassshˆh}r‚Mh}rƒMh}r„Mh]r…MjMasssh}r†Mh}r‡Mh}rˆMh]r‰MjMasssuU flexbe_apprŠM}r‹M(h}rŒMh}rMh]rŽMUros/melodic/flexbe_apprMassh }rMh }r‘Mh}r’Mh]r“MUros-melodic-flexbe-appr”Massshˆh}r•Mh}r–Mh}r—Mh]r˜Mj”Masssh}r™Mh}ršMh}r›Mh]rœMj”MasssuUkobuki_dock_driverM}ržM(h}rŸMh}r Mh]r¡MUros/melodic/kobuki_corer¢Massh }r£Mh }r¤Mh}r¥Mh]r¦MUros-melodic-kobuki-dock-driver§Massshˆh}r¨Mh}r©Mh}rªMh]r«Mj§Masssh}r¬Mh}r­Mh}r®Mh]r¯Mj§MasssuU rtsprofiler°M}r±M(h}r²Mh}r³Mh]r´MUros/melodic/rtsprofilerµMassh }r¶Mh }r·Mh}r¸Mh]r¹MUros-melodic-rtsprofilerºMassshˆh}r»Mh}r¼Mh}r½Mh]r¾MjºMasssh}r¿Mh}rÀMh}rÁMh]rÂMjºMasssuUrosbag_migration_rulerÃM}rÄM(h}rÅMh}rÆMh]rÇMU!ros/melodic/rosbag_migration_rulerÈMassh }rÉMh }rÊMh}rËMh]rÌMU!ros-melodic-rosbag-migration-rulerÍMassshˆh}rÎMh}rÏMh}rÐMh]rÑMjÍMasssh}rÒMh}rÓMh}rÔMh]rÕMjÍMasssuUivconrÖM}r×M(h}rØMh}rÙMh]rÚMUros/melodic/ivconrÛMassh }rÜMh }rÝMh}rÞMh]rßMUros-melodic-ivconràMassshˆh}ráMh}râMh}rãMh]räMjàMasssh}råMh}ræMh}rçMh]rèMjàMasssuUrviz_visual_toolsréM}rêM(h}rëMh}rìMh]ríMUros/melodic/rviz_visual_toolsrîMassh }rïMh }rðMh}rñMh]ròMUros-melodic-rviz-visual-toolsróMassshˆh}rôMh}rõMh}röMh]r÷MjóMasssh}røMh}rùMh}rúMh]rûMjóMasssuUcob_command_toolsrüM}rýM(h}rþMh}rÿMh]rNUros/melodic/cob_command_toolsrNassh }rNh }rNh}rNh]rNUros-melodic-cob-command-toolsrNassshˆh}rNh}rNh}r Nh]r NjNasssh}r Nh}r Nh}r Nh]rNjNasssuUmulti_object_tracking_lidarrN}rN(h}rNh}rNh]rNU'ros/melodic/multi_object_tracking_lidarrNassh }rNh }rNh}rNh]rNU'ros-melodic-multi-object-tracking-lidarrNassshˆh}rNh}rNh}rNh]rNjNasssh}rNh}rNh}r Nh]r!NjNasssuUnovatel_gps_msgsr"N}r#N(h}r$Nh}r%Nh]r&NUros/melodic/novatel_gps_driverr'Nassh }r(Nh }r)Nh}r*Nh]r+NUros-melodic-novatel-gps-msgsr,Nassshˆh}r-Nh}r.Nh}r/Nh]r0Nj,Nasssh}r1Nh}r2Nh}r3Nh]r4Nj,NasssuU pgm_learnerr5N}r6N(h}r7Nh}r8Nh]r9NUros/melodic/jsk_3rdpartyr:Nassh }r;Nh }rNUros-melodic-pgm-learnerr?Nassshˆh}r@Nh}rANh}rBNh]rCNj?Nasssh}rDNh}rENh}rFNh]rGNj?NasssuU wge100_driverrHN}rIN(h}rJNh}rKNh]rLNUros/melodic/wge100_driverrMNassh }rNNh }rONh}rPNh]rQNUros-melodic-wge100-driverrRNassshˆh}rSNh}rTNh}rUNh]rVNjRNasssh}rWNh}rXNh}rYNh]rZNjRNasssuUwarthog_controlr[N}r\N(h}r]Nh}r^Nh]r_NUros/melodic/warthogr`Nassh }raNh }rbNh}rcNh]rdNUros-melodic-warthog-controlreNassshˆh}rfNh}rgNh}rhNh]riNjeNasssh}rjNh}rkNh}rlNh]rmNjeNasssuUrosparamrnN}roN(h}rpNh}rqNh]rrNUros/melodic/ros_commrsNassh }rtNh }ruNh}rvNh]rwNUros-melodic-rosparamrxNassshˆh}ryNh}rzNh}r{Nh]r|NjxNasssh}r}Nh}r~Nh}rNh]r€NjxNasssuUbflrN}r‚N(h}rƒNh}r„Nh]r…NUros/melodic/bflr†Nassh }r‡Nh }rˆNh}r‰Nh]rŠNUros-melodic-bflr‹Nassshˆh}rŒNh}rNh}rŽNh]rNj‹Nasssh}rNh}r‘Nh}r’Nh]r“Nj‹NasssuUjson_transportr”N}r•N(h}r–Nh}r—Nh]r˜NUros/melodic/json_transportr™Nassh }ršNh }r›Nh}rœNh]rNUros-melodic-json-transportržNassshˆh}rŸNh}r Nh}r¡Nh]r¢NjžNasssh}r£Nh}r¤Nh}r¥Nh]r¦NjžNasssuU shape_msgsr§N}r¨N(h}r©Nh}rªNh]r«NUros/melodic/common_msgsr¬Nassh }r­Nh }r®Nh}r¯Nh]r°NUros-melodic-shape-msgsr±Nassshˆh}r²Nh}r³Nh}r´Nh]rµNj±Nasssh}r¶Nh}r·Nh}r¸Nh]r¹Nj±NasssuU twist_muxrºN}r»N(h}r¼Nh}r½Nh]r¾NUros/melodic/twist_muxr¿Nassh }rÀNh }rÁNh}rÂNh]rÃNUros-melodic-twist-muxrÄNassshˆh}rÅNh}rÆNh}rÇNh]rÈNjÄNasssh}rÉNh}rÊNh}rËNh]rÌNjÄNasssuUackermann_steering_controllerrÍN}rÎN(h}rÏNh}rÐNh]rÑNUros/melodic/ros_controllersrÒNassh }rÓNh }rÔNh}rÕNh]rÖNU)ros-melodic-ackermann-steering-controllerr×Nassshˆh}rØNh}rÙNh}rÚNh]rÛNj×Nasssh}rÜNh}rÝNh}rÞNh]rßNj×NasssuU xpp_statesràN}ráN(h}râNh}rãNh]räNUros/melodic/xppråNassh }ræNh }rçNh}rèNh]réNUros-melodic-xpp-statesrêNassshˆh}rëNh}rìNh}ríNh]rîNjêNasssh}rïNh}rðNh}rñNh]ròNjêNasssuUcob_perception_msgsróN}rôN(h}rõNh}röNh]r÷NU!ros/melodic/cob_perception_commonrøNassh }rùNh }rúNh}rûNh]rüNUros-melodic-cob-perception-msgsrýNassshˆh}rþNh}rÿNh}rOh]rOjýNasssh}rOh}rOh}rOh]rOjýNasssuUrqt_rvizrO}rO(h}rOh}r Oh]r OUros/melodic/rqt_rvizr Oassh }r Oh }r Oh}rOh]rOUros-melodic-rqt-rvizrOassshˆh}rOh}rOh}rOh]rOjOasssh}rOh}rOh}rOh]rOjOasssuUrosserial_tivacrO}rO(h}rOh}rOh]rOUros/melodic/rosserialrOassh }rOh }r Oh}r!Oh]r"OUros-melodic-rosserial-tivacr#Oassshˆh}r$Oh}r%Oh}r&Oh]r'Oj#Oasssh}r(Oh}r)Oh}r*Oh]r+Oj#OasssuUfranka_visualizationr,O}r-O(h}r.Oh}r/Oh]r0OUros/melodic/franka_rosr1Oassh }r2Oh }r3Oh}r4Oh]r5OU ros-melodic-franka-visualizationr6Oassshˆh}r7Oh}r8Oh}r9Oh]r:Oj6Oasssh}r;Oh}rOj6OasssuU libsiftfastr?O}r@O(h}rAOh}rBOh]rCOUros/melodic/jsk_3rdpartyrDOassh }rEOh }rFOh}rGOh]rHOUros-melodic-libsiftfastrIOassshˆh}rJOh}rKOh}rLOh]rMOjIOasssh}rNOh}rOOh}rPOh]rQOjIOasssuUschunk_libm5apirRO}rSO(h}rTOh}rUOh]rVOU#ros/melodic/schunk_modular_roboticsrWOassh }rXOh }rYOh}rZOh]r[OUros-melodic-schunk-libm5apir\Oassshˆh}r]Oh}r^Oh}r_Oh]r`Oj\Oasssh}raOh}rbOh}rcOh]rdOj\OasssuU tuw_nav_msgsreO}rfO(h}rgOh}rhOh]riOUros/melodic/tuw_msgsrjOassh }rkOh }rlOh}rmOh]rnOUros-melodic-tuw-nav-msgsroOassshˆh}rpOh}rqOh}rrOh]rsOjoOasssh}rtOh}ruOh}rvOh]rwOjoOasssuUtuw_gazebo_msgsrxO}ryO(h}rzOh}r{Oh]r|OUros/melodic/tuw_msgsr}Oassh }r~Oh }rOh}r€Oh]rOUros-melodic-tuw-gazebo-msgsr‚Oassshˆh}rƒOh}r„Oh}r…Oh]r†Oj‚Oasssh}r‡Oh}rˆOh}r‰Oh]rŠOj‚OasssuUmulti_interface_roamr‹O}rŒO(h}rOh}rŽOh]rOUros/melodic/linux_networkingrOassh }r‘Oh }r’Oh}r“Oh]r”OU ros-melodic-multi-interface-roamr•Oassshˆh}r–Oh}r—Oh}r˜Oh]r™Oj•Oasssh}ršOh}r›Oh}rœOh]rOj•OasssuUturtlebot3_autorace_detectržO}rŸO(h}r Oh}r¡Oh]r¢OUros/melodic/turtlebot3_autoracer£Oassh }r¤Oh }r¥Oh}r¦Oh]r§OU&ros-melodic-turtlebot3-autorace-detectr¨Oassshˆh}r©Oh}rªOh}r«Oh]r¬Oj¨Oasssh}r­Oh}r®Oh}r¯Oh]r°Oj¨OasssuUnmea_navsat_driverr±O}r²O(h}r³Oh}r´Oh]rµOUros/melodic/nmea_navsat_driverr¶Oassh }r·Oh }r¸Oh}r¹Oh]rºOUros-melodic-nmea-navsat-driverr»Oassshˆh}r¼Oh}r½Oh}r¾Oh]r¿Oj»Oasssh}rÀOh}rÁOh}rÂOh]rÃOj»OasssuU cob_commonrÄO}rÅO(h}rÆOh}rÇOh]rÈOUros/melodic/cob_commonrÉOassh }rÊOh }rËOh}rÌOh]rÍOUros-melodic-cob-commonrÎOassshˆh}rÏOh}rÐOh}rÑOh]rÒOjÎOasssh}rÓOh}rÔOh}rÕOh]rÖOjÎOasssuUpr2_power_boardr×O}rØO(h}rÙOh}rÚOh]rÛOUros/melodic/pr2_power_driversrÜOassh }rÝOh }rÞOh}rßOh]ràOUros-melodic-pr2-power-boardráOassshˆh}râOh}rãOh}räOh]råOjáOasssh}ræOh}rçOh}rèOh]réOjáOasssuU husky_controlrêO}rëO(h}rìOh}ríOh]rîOUros/melodic/huskyrïOassh }rðOh }rñOh}ròOh]róOUros-melodic-husky-controlrôOassshˆh}rõOh}röOh}r÷Oh]røOjôOasssh}rùOh}rúOh}rûOh]rüOjôOasssuUdepth_image_procrýO}rþO(h}rÿOh}rPh]rPUros/melodic/image_pipelinerPassh }rPh }rPh}rPh]rPUros-melodic-depth-image-procrPassshˆh}rPh}r Ph}r Ph]r PjPasssh}r Ph}r Ph}rPh]rPjPasssuU libuvc_camerarP}rP(h}rPh}rPh]rPUros/melodic/libuvc_rosrPassh }rPh }rPh}rPh]rPUros-melodic-libuvc-camerarPassshˆh}rPh}rPh}rPh]rPjPasssh}rPh}r Ph}r!Ph]r"PjPasssuUpython_qt_bindingr#P}r$P(h}r%Ph}r&Ph]r'PUros/melodic/python_qt_bindingr(Passh }r)Ph }r*Ph}r+Ph]r,PUros-melodic-python-qt-bindingr-Passshˆh}r.Ph}r/Ph}r0Ph]r1Pj-Passsh}r2Ph}r3Ph}r4Ph]r5Pj-PasssuUlibcmtr6P}r7P(h}r8Ph}r9Ph]r:PUros/melodic/jsk_3rdpartyr;Passh }rPh]r?PUros-melodic-libcmtr@Passshˆh}rAPh}rBPh}rCPh]rDPj@Passsh}rEPh}rFPh}rGPh]rHPj@PasssuU osg_markersrIP}rJP(h}rKPh}rLPh]rMPUros/melodic/visualization_osgrNPassh }rOPh }rPPh}rQPh]rRPUros-melodic-osg-markersrSPassshˆh}rTPh}rUPh}rVPh]rWPjSPasssh}rXPh}rYPh}rZPh]r[PjSPasssuU smach_msgsr\P}r]P(h}r^Ph}r_Ph]r`PUros/melodic/executive_smachraPassh }rbPh }rcPh}rdPh]rePUros-melodic-smach-msgsrfPassshˆh}rgPh}rhPh}riPh]rjPjfPasssh}rkPh}rlPh}rmPh]rnPjfPasssuUridgeback_simulatorroP}rpP(h}rqPh}rrPh]rsPUros/melodic/ridgeback_simulatorrtPassh }ruPh }rvPh}rwPh]rxPUros-melodic-ridgeback-simulatorryPassshˆh}rzPh}r{Ph}r|Ph]r}PjyPasssh}r~Ph}rPh}r€Ph]rPjyPasssuU visp_bridger‚P}rƒP(h}r„Ph}r…Ph]r†PUros/melodic/vision_vispr‡Passh }rˆPh }r‰Ph}rŠPh]r‹PUros-melodic-visp-bridgerŒPassshˆh}rPh}rŽPh}rPh]rPjŒPasssh}r‘Ph}r’Ph}r“Ph]r”PjŒPasssuUimage_cb_detectorr•P}r–P(h}r—Ph}r˜Ph]r™PUros/melodic/calibrationršPassh }r›Ph }rœPh}rPh]ržPUros-melodic-image-cb-detectorrŸPassshˆh}r Ph}r¡Ph}r¢Ph]r£PjŸPasssh}r¤Ph}r¥Ph}r¦Ph]r§PjŸPasssuU gazebo_devr¨P}r©P(h}rªPh}r«Ph]r¬PUros/melodic/gazebo_ros_pkgsr­Passh }r®Ph }r¯Ph}r°Ph]r±PUros-melodic-gazebo-devr²Passshˆh}r³Ph}r´Ph}rµPh]r¶Pj²Passsh}r·Ph}r¸Ph}r¹Ph]rºPj²PasssuU cartographerr»P}r¼P(h}r½Ph}r¾Ph]r¿PUros/melodic/cartographerrÀPassh }rÁPh }rÂPh}rÃPh]rÄPUros-melodic-cartographerrÅPassshˆh}rÆPh}rÇPh}rÈPh]rÉPjÅPasssh}rÊPh}rËPh}rÌPh]rÍPjÅPasssuUkdl_conversionsrÎP}rÏP(h}rÐPh}rÑPh]rÒPUros/melodic/geometryrÓPassh }rÔPh }rÕPh}rÖPh]r×PUros-melodic-kdl-conversionsrØPassshˆh}rÙPh}rÚPh}rÛPh]rÜPjØPasssh}rÝPh}rÞPh}rßPh]ràPjØPasssuU rotors_gazeboráP}râP(h}rãPh}räPh]råPUros/melodic/rotors_simulatorræPassh }rçPh }rèPh}réPh]rêPUros-melodic-rotors-gazeborëPassshˆh}rìPh}ríPh}rîPh]rïPjëPasssh}rðPh}rñPh}ròPh]róPjëPasssuU%open_manipulator_with_tb3_descriptionrôP}rõP(h}röPh}r÷Ph]røPU%ros/melodic/open_manipulator_with_tb3rùPassh }rúPh }rûPh}rüPh]rýPU1ros-melodic-open-manipulator-with-tb3-descriptionrþPassshˆh}rÿPh}rQh}rQh]rQjþPasssh}rQh}rQh}rQh]rQjþPasssuUmap_msgsrQ}rQ(h}r Qh}r Qh]r QUros/melodic/navigation_msgsr Qassh }r Qh }rQh}rQh]rQUros-melodic-map-msgsrQassshˆh}rQh}rQh}rQh]rQjQasssh}rQh}rQh}rQh]rQjQasssuUipa_3d_fov_visualizationrQ}rQ(h}rQh}rQh]rQU!ros/melodic/cob_perception_commonrQassh }r Qh }r!Qh}r"Qh]r#QU$ros-melodic-ipa-3d-fov-visualizationr$Qassshˆh}r%Qh}r&Qh}r'Qh]r(Qj$Qasssh}r)Qh}r*Qh}r+Qh]r,Qj$QasssuUnetwork_traffic_controlr-Q}r.Q(h}r/Qh}r0Qh]r1QUros/melodic/linux_networkingr2Qassh }r3Qh }r4Qh}r5Qh]r6QU#ros-melodic-network-traffic-controlr7Qassshˆh}r8Qh}r9Qh}r:Qh]r;Qj7Qasssh}rQh]r?Qj7QasssuU common_msgsr@Q}rAQ(h}rBQh}rCQh]rDQUros/melodic/common_msgsrEQassh }rFQh }rGQh}rHQh]rIQUros-melodic-common-msgsrJQassshˆh}rKQh}rLQh}rMQh]rNQjJQasssh}rOQh}rPQh}rQQh]rRQjJQasssuUvelodyne_simulatorrSQ}rTQ(h}rUQh}rVQh]rWQUros/melodic/velodyne_simulatorrXQassh }rYQh }rZQh}r[Qh]r\QUros-melodic-velodyne-simulatorr]Qassshˆh}r^Qh}r_Qh}r`Qh]raQj]Qasssh}rbQh}rcQh}rdQh]reQj]QasssuUbondcpprfQ}rgQ(h}rhQh}riQh]rjQUros/melodic/bond_corerkQassh }rlQh }rmQh}rnQh]roQUros-melodic-bondcpprpQassshˆh}rqQh}rrQh}rsQh]rtQjpQasssh}ruQh}rvQh}rwQh]rxQjpQasssuUleuze_rsl_driverryQ}rzQ(h}r{Qh}r|Qh]r}QUros/melodic/leuze_ros_driversr~Qassh }rQh }r€Qh}rQh]r‚QUros-melodic-leuze-rsl-driverrƒQassshˆh}r„Qh}r…Qh}r†Qh]r‡QjƒQasssh}rˆQh}r‰Qh}rŠQh]r‹QjƒQasssuU"exotica_collision_scene_fcl_latestrŒQ}rQ(h}rŽQh}rQh]rQUros/melodic/exoticar‘Qassh }r’Qh }r“Qh}r”Qh]r•QU.ros-melodic-exotica-collision-scene-fcl-latestr–Qassshˆh}r—Qh}r˜Qh}r™Qh]ršQj–Qasssh}r›Qh}rœQh}rQh]ržQj–QasssuUmav_planning_msgsrŸQ}r Q(h}r¡Qh}r¢Qh]r£QUros/melodic/mav_commr¤Qassh }r¥Qh }r¦Qh}r§Qh]r¨QUros-melodic-mav-planning-msgsr©Qassshˆh}rªQh}r«Qh}r¬Qh]r­Qj©Qasssh}r®Qh}r¯Qh}r°Qh]r±Qj©QasssuUimu_transformerr²Q}r³Q(h}r´Qh}rµQh]r¶QUros/melodic/imu_pipeliner·Qassh }r¸Qh }r¹Qh}rºQh]r»QUros-melodic-imu-transformerr¼Qassshˆh}r½Qh}r¾Qh}r¿Qh]rÀQj¼Qasssh}rÁQh}rÂQh}rÃQh]rÄQj¼QasssuUsmclibrÅQ}rÆQ(h}rÇQh}rÈQh]rÉQUros/melodic/bond_corerÊQassh }rËQh }rÌQh}rÍQh]rÎQUros-melodic-smclibrÏQassshˆh}rÐQh}rÑQh}rÒQh]rÓQjÏQasssh}rÔQh}rÕQh}rÖQh]r×QjÏQasssuUprbt_hardware_supportrØQ}rÙQ(h}rÚQh}rÛQh]rÜQUros/melodic/pilz_robotsrÝQassh }rÞQh }rßQh}ràQh]ráQU!ros-melodic-prbt-hardware-supportrâQassshˆh}rãQh}räQh}råQh]ræQjâQasssh}rçQh}rèQh}réQh]rêQjâQasssuU toposens_syncrëQ}rìQ(h}ríQh}rîQh]rïQUros/melodic/toposensrðQassh }rñQh }ròQh}róQh]rôQUros-melodic-toposens-syncrõQassshˆh}röQh}r÷Qh}røQh]rùQjõQasssh}rúQh}rûQh}rüQh]rýQjõQasssuUrosemacsrþQ}rÿQ(h}rRh}rRh]rRUros/melodic/ros_emacs_utilsrRassh }rRh }rRh}rRh]rRUros-melodic-rosemacsrRassshˆh}r Rh}r Rh}r Rh]r RjRasssh}r Rh}rRh}rRh]rRjRasssuUcob_docker_controlrR}rR(h}rRh}rRh]rRUros/melodic/cob_substituterRassh }rRh }rRh}rRh]rRUros-melodic-cob-docker-controlrRassshˆh}rRh}rRh}rRh]rRjRasssh}r Rh}r!Rh}r"Rh]r#RjRasssuUgeographic_infor$R}r%R(h}r&Rh}r'Rh]r(RUros/melodic/geographic_infor)Rassh }r*Rh }r+Rh}r,Rh]r-RUros-melodic-geographic-infor.Rassshˆh}r/Rh}r0Rh}r1Rh]r2Rj.Rasssh}r3Rh}r4Rh}r5Rh]r6Rj.RasssuU variant_msgsr7R}r8R(h}r9Rh}r:Rh]r;RUros/melodic/variantrRh}r?Rh]r@RUros-melodic-variant-msgsrARassshˆh}rBRh}rCRh}rDRh]rERjARasssh}rFRh}rGRh}rHRh]rIRjARasssuU pilz_robotsrJR}rKR(h}rLRh}rMRh]rNRUros/melodic/pilz_robotsrORassh }rPRh }rQRh}rRRh]rSRUros-melodic-pilz-robotsrTRassshˆh}rURh}rVRh}rWRh]rXRjTRasssh}rYRh}rZRh}r[Rh]r\RjTRasssuUfsrobo_r_driverr]R}r^R(h}r_Rh}r`Rh]raRUros/melodic/fsrobo_rrbRassh }rcRh }rdRh}reRh]rfRUros-melodic-fsrobo-r-driverrgRassshˆh}rhRh}riRh}rjRh]rkRjgRasssh}rlRh}rmRh}rnRh]roRjgRasssuUnovatel_span_driverrpR}rqR(h}rrRh}rsRh]rtRUros/melodic/novatel_span_driverruRassh }rvRh }rwRh}rxRh]ryRUros-melodic-novatel-span-driverrzRassshˆh}r{Rh}r|Rh}r}Rh]r~RjzRasssh}rRh}r€Rh}rRh]r‚RjzRasssuUvisp_auto_trackerrƒR}r„R(h}r…Rh}r†Rh]r‡RUros/melodic/vision_visprˆRassh }r‰Rh }rŠRh}r‹Rh]rŒRUros-melodic-visp-auto-trackerrRassshˆh}rŽRh}rRh}rRh]r‘RjRasssh}r’Rh}r“Rh}r”Rh]r•RjRasssuUcalibration_msgsr–R}r—R(h}r˜Rh}r™Rh]ršRUros/melodic/calibrationr›Rassh }rœRh }rRh}ržRh]rŸRUros-melodic-calibration-msgsr Rassshˆh}r¡Rh}r¢Rh}r£Rh]r¤Rj Rasssh}r¥Rh}r¦Rh}r§Rh]r¨Rj RasssuUcob_reflector_referencingr©R}rªR(h}r«Rh}r¬Rh]r­RUros/melodic/cob_substituter®Rassh }r¯Rh }r°Rh}r±Rh]r²RU%ros-melodic-cob-reflector-referencingr³Rassshˆh}r´Rh}rµRh}r¶Rh]r·Rj³Rasssh}r¸Rh}r¹Rh}rºRh]r»Rj³RasssuUrosauthr¼R}r½R(h}r¾Rh}r¿Rh]rÀRUros/melodic/rosauthrÁRassh }rÂRh }rÃRh}rÄRh]rÅRUros-melodic-rosauthrÆRassshˆh}rÇRh}rÈRh}rÉRh]rÊRjÆRasssh}rËRh}rÌRh}rÍRh]rÎRjÆRasssuU nav_2d_msgsrÏR}rÐR(h}rÑRh}rÒRh]rÓRUros/melodic/robot_navigationrÔRassh }rÕRh }rÖRh}r×Rh]rØRUros-melodic-nav-2d-msgsrÙRassshˆh}rÚRh}rÛRh}rÜRh]rÝRjÙRasssh}rÞRh}rßRh}ràRh]ráRjÙRasssuU abb_driverrâR}rãR(h}räRh}råRh]ræRUros/melodic/abbrçRassh }rèRh }réRh}rêRh]rëRUros-melodic-abb-driverrìRassshˆh}ríRh}rîRh}rïRh]rðRjìRasssh}rñRh}ròRh}róRh]rôRjìRasssuUuuv_control_cascaded_pidrõR}röR(h}r÷Rh}røRh]rùRUros/melodic/uuv_simulatorrúRassh }rûRh }rüRh}rýRh]rþRU$ros-melodic-uuv-control-cascaded-pidrÿRassshˆh}rSh}rSh}rSh]rSjÿRasssh}rSh}rSh}rSh]rSjÿRasssuUmessage_runtimerS}r S(h}r Sh}r Sh]r SUros/melodic/message_runtimer Sassh }rSh }rSh}rSh]rSUros-melodic-message-runtimerSassshˆh}rSh}rSh}rSh]rSjSasssh}rSh}rSh}rSh]rSjSasssuUlibg2orS}rS(h}rSh}rSh]rSUros/melodic/libg2or Sassh }r!Sh }r"Sh}r#Sh]r$SUros-melodic-libg2or%Sassshˆh}r&Sh}r'Sh}r(Sh]r)Sj%Sasssh}r*Sh}r+Sh}r,Sh]r-Sj%SasssuUcl_urdfr.S}r/S(h}r0Sh}r1Sh]r2SUros/melodic/roslisp_commonr3Sassh }r4Sh }r5Sh}r6Sh]r7SUros-melodic-cl-urdfr8Sassshˆh}r9Sh}r:Sh}r;Sh]rSh}r?Sh]r@Sj8SasssuU ublox_gpsrAS}rBS(h}rCSh}rDSh]rESUros/melodic/ubloxrFSassh }rGSh }rHSh}rISh]rJSUros-melodic-ublox-gpsrKSassshˆh}rLSh}rMSh}rNSh]rOSjKSasssh}rPSh}rQSh}rRSh]rSSjKSasssuUtrac_ik_pythonrTS}rUS(h}rVSh}rWSh]rXSUros/melodic/trac_ikrYSassh }rZSh }r[Sh}r\Sh]r]SUros-melodic-trac-ik-pythonr^Sassshˆh}r_Sh}r`Sh}raSh]rbSj^Sasssh}rcSh}rdSh}reSh]rfSj^SasssuUyocs_waypoints_navirgS}rhS(h}riSh}rjSh]rkSUros/melodic/yujin_ocsrlSassh }rmSh }rnSh}roSh]rpSUros-melodic-yocs-waypoints-navirqSassshˆh}rrSh}rsSh}rtSh]ruSjqSasssh}rvSh}rwSh}rxSh]rySjqSasssuUstereo_image_procrzS}r{S(h}r|Sh}r}Sh]r~SUros/melodic/image_pipelinerSassh }r€Sh }rSh}r‚Sh]rƒSUros-melodic-stereo-image-procr„Sassshˆh}r…Sh}r†Sh}r‡Sh]rˆSj„Sasssh}r‰Sh}rŠSh}r‹Sh]rŒSj„SasssuU simple_navigation_goals_tutorialrS}rŽS(h}rSh}rSh]r‘SU ros/melodic/navigation_tutorialsr’Sassh }r“Sh }r”Sh}r•Sh]r–SU,ros-melodic-simple-navigation-goals-tutorialr—Sassshˆh}r˜Sh}r™Sh}ršSh]r›Sj—Sasssh}rœSh}rSh}ržSh]rŸSj—SasssuU goal_passerr S}r¡S(h}r¢Sh}r£Sh]r¤SU#ros/melodic/navigation_experimentalr¥Sassh }r¦Sh }r§Sh}r¨Sh]r©SUros-melodic-goal-passerrªSassshˆh}r«Sh}r¬Sh}r­Sh]r®SjªSasssh}r¯Sh}r°Sh}r±Sh]r²SjªSasssuUabb_irb6640_moveit_configr³S}r´S(h}rµSh}r¶Sh]r·SUros/melodic/abbr¸Sassh }r¹Sh }rºSh}r»Sh]r¼SU%ros-melodic-abb-irb6640-moveit-configr½Sassshˆh}r¾Sh}r¿Sh}rÀSh]rÁSj½Sasssh}rÂSh}rÃSh}rÄSh]rÅSj½SasssuU class_loaderrÆS}rÇS(h}rÈSh}rÉSh]rÊSUros/melodic/class_loaderrËSassh }rÌSh }rÍSh}rÎSh]rÏSUros-melodic-class-loaderrÐSassshˆh}rÑSh}rÒSh}rÓSh]rÔSjÐSasssh}rÕSh}rÖSh}r×Sh]rØSjÐSasssuU concert_msgsrÙS}rÚS(h}rÛSh}rÜSh]rÝSUros/melodic/rocon_msgsrÞSassh }rßSh }ràSh}ráSh]râSUros-melodic-concert-msgsrãSassshˆh}räSh}råSh}ræSh]rçSjãSasssh}rèSh}réSh}rêSh]rëSjãSasssuU franka_msgsrìS}ríS(h}rîSh}rïSh]rðSUros/melodic/franka_rosrñSassh }ròSh }róSh}rôSh]rõSUros-melodic-franka-msgsröSassshˆh}r÷Sh}røSh}rùSh]rúSjöSasssh}rûSh}rüSh}rýSh]rþSjöSasssuUpilz_industrial_motionrÿS}rT(h}rTh}rTh]rTU"ros/melodic/pilz_industrial_motionrTassh }rTh }rTh}rTh]rTU"ros-melodic-pilz-industrial-motionr Tassshˆh}r Th}r Th}r Th]r Tj Tasssh}rTh}rTh}rTh]rTj TasssuUrexrov2_descriptionrT}rT(h}rTh}rTh]rTUros/melodic/rexrov2rTassh }rTh }rTh}rTh]rTUros-melodic-rexrov2-descriptionrTassshˆh}rTh}rTh}rTh]r TjTasssh}r!Th}r"Th}r#Th]r$TjTasssuUcl_transforms_stampedr%T}r&T(h}r'Th}r(Th]r)TUros/melodic/roslisp_commonr*Tassh }r+Th }r,Th}r-Th]r.TU!ros-melodic-cl-transforms-stampedr/Tassshˆh}r0Th}r1Th}r2Th]r3Tj/Tasssh}r4Th}r5Th}r6Th]r7Tj/TasssuU libqt_corer8T}r9T(h}r:Th}r;Th]rTh }r?Th}r@Th]rATUros-melodic-libqt-corerBTassshˆh}rCTh}rDTh}rETh]rFTjBTasssh}rGTh}rHTh}rITh]rJTjBTasssuUsimple_messagerKT}rLT(h}rMTh}rNTh]rOTUros/melodic/industrial_corerPTassh }rQTh }rRTh}rSTh]rTTUros-melodic-simple-messagerUTassshˆh}rVTh}rWTh}rXTh]rYTjUTasssh}rZTh}r[Th}r\Th]r]TjUTasssuUpr2_arm_move_ikr^T}r_T(h}r`Th}raTh]rbTUros/melodic/pr2_common_actionsrcTassh }rdTh }reTh}rfTh]rgTUros-melodic-pr2-arm-move-ikrhTassshˆh}riTh}rjTh}rkTh]rlTjhTasssh}rmTh}rnTh}roTh]rpTjhTasssuUtf2_rosrqT}rrT(h}rsTh}rtTh]ruTUros/melodic/geometry2rvTassh }rwTh }rxTh}ryTh]rzTUros-melodic-tf2-rosr{Tassshˆh}r|Th}r}Th}r~Th]rTj{Tasssh}r€Th}rTh}r‚Th]rƒTj{TasssuUbehaviortree_cpp_v3r„T}r…T(h}r†Th}r‡Th]rˆTUros/melodic/behaviotree_cpp_v3r‰Tassh }rŠTh }r‹Th}rŒTh]rTUros-melodic-behaviortree-cpp-v3rŽTassshˆh}rTh}rTh}r‘Th]r’TjŽTasssh}r“Th}r”Th}r•Th]r–TjŽTasssuUlibrviz_tutorialr—T}r˜T(h}r™Th}ršTh]r›TU#ros/melodic/visualization_tutorialsrœTassh }rTh }ržTh}rŸTh]r TUros-melodic-librviz-tutorialr¡Tassshˆh}r¢Th}r£Th}r¤Th]r¥Tj¡Tasssh}r¦Th}r§Th}r¨Th]r©Tj¡TasssuUswri_geometry_utilrªT}r«T(h}r¬Th}r­Th]r®TUros/melodic/marti_commonr¯Tassh }r°Th }r±Th}r²Th]r³TUros-melodic-swri-geometry-utilr´Tassshˆh}rµTh}r¶Th}r·Th]r¸Tj´Tasssh}r¹Th}rºTh}r»Th]r¼Tj´TasssuUcob_model_identifierr½T}r¾T(h}r¿Th}rÀTh]rÁTUros/melodic/cob_controlrÂTassh }rÃTh }rÄTh}rÅTh]rÆTU ros-melodic-cob-model-identifierrÇTassshˆh}rÈTh}rÉTh}rÊTh]rËTjÇTasssh}rÌTh}rÍTh}rÎTh]rÏTjÇTasssuUmrpt_icp_slam_2drÐT}rÑT(h}rÒTh}rÓTh]rÔTUros/melodic/mrpt_slamrÕTassh }rÖTh }r×Th}rØTh]rÙTUros-melodic-mrpt-icp-slam-2drÚTassshˆh}rÛTh}rÜTh}rÝTh]rÞTjÚTasssh}rßTh}ràTh}ráTh]râTjÚTasssuU jsk_gui_msgsrãT}räT(h}råTh}ræTh]rçTUros/melodic/jsk_common_msgsrèTassh }réTh }rêTh}rëTh]rìTUros-melodic-jsk-gui-msgsríTassshˆh}rîTh}rïTh}rðTh]rñTjíTasssh}ròTh}róTh}rôTh]rõTjíTasssuU vision_msgsröT}r÷T(h}røTh}rùTh]rúTUros/melodic/vision_msgsrûTassh }rüTh }rýTh}rþTh]rÿTUros-melodic-vision-msgsrUassshˆh}rUh}rUh}rUh]rUjUasssh}rUh}rUh}rUh]rUjUasssuU octomap_rosr U}r U(h}r Uh}r Uh]r UUros/melodic/octomap_rosrUassh }rUh }rUh}rUh]rUUros-melodic-octomap-rosrUassshˆh}rUh}rUh}rUh]rUjUasssh}rUh}rUh}rUh]rUjUasssuU*open_manipulator_with_tb3_waffle_pi_moveitrU}rU(h}rUh}rUh]r UU%ros/melodic/open_manipulator_with_tb3r!Uassh }r"Uh }r#Uh}r$Uh]r%UU6ros-melodic-open-manipulator-with-tb3-waffle-pi-moveitr&Uassshˆh}r'Uh}r(Uh}r)Uh]r*Uj&Uasssh}r+Uh}r,Uh}r-Uh]r.Uj&UasssuU rosbagliver/U}r0U(h}r1Uh}r2Uh]r3UUros/melodic/wu_ros_toolsr4Uassh }r5Uh }r6Uh}r7Uh]r8UUros-melodic-rosbagliver9Uassshˆh}r:Uh}r;Uh}rUh}r?Uh}r@Uh]rAUj9UasssuUvisualization_tutorialsrBU}rCU(h}rDUh}rEUh]rFUU#ros/melodic/visualization_tutorialsrGUassh }rHUh }rIUh}rJUh]rKUU#ros-melodic-visualization-tutorialsrLUassshˆh}rMUh}rNUh}rOUh]rPUjLUasssh}rQUh}rRUh}rSUh]rTUjLUasssuU jackal_gazeborUU}rVU(h}rWUh}rXUh]rYUUros/melodic/jackal_simulatorrZUassh }r[Uh }r\Uh}r]Uh]r^UUros-melodic-jackal-gazebor_Uassshˆh}r`Uh}raUh}rbUh]rcUj_Uasssh}rdUh}reUh}rfUh]rgUj_UasssuUvirtual_force_publisherrhU}riU(h}rjUh}rkUh]rlUUros/melodic/jsk_commonrmUassh }rnUh }roUh}rpUh]rqUU#ros-melodic-virtual-force-publisherrrUassshˆh}rsUh}rtUh}ruUh]rvUjrUasssh}rwUh}rxUh}ryUh]rzUjrUasssuUswri_string_utilr{U}r|U(h}r}Uh}r~Uh]rUUros/melodic/marti_commonr€Uassh }rUh }r‚Uh}rƒUh]r„UUros-melodic-swri-string-utilr…Uassshˆh}r†Uh}r‡Uh}rˆUh]r‰Uj…Uasssh}rŠUh}r‹Uh}rŒUh]rUj…UasssuUcanopen_masterrŽU}rU(h}rUh}r‘Uh]r’UUros/melodic/ros_canopenr“Uassh }r”Uh }r•Uh}r–Uh]r—UUros-melodic-canopen-masterr˜Uassshˆh}r™Uh}ršUh}r›Uh]rœUj˜Uasssh}rUh}ržUh}rŸUh]r Uj˜UasssuUrexrov2_controlr¡U}r¢U(h}r£Uh}r¤Uh]r¥UUros/melodic/rexrov2r¦Uassh }r§Uh }r¨Uh}r©Uh]rªUUros-melodic-rexrov2-controlr«Uassshˆh}r¬Uh}r­Uh}r®Uh]r¯Uj«Uasssh}r°Uh}r±Uh}r²Uh]r³Uj«UasssuUrqt_joint_trajectory_controllerr´U}rµU(h}r¶Uh}r·Uh]r¸UUros/melodic/ros_controllersr¹Uassh }rºUh }r»Uh}r¼Uh]r½UU+ros-melodic-rqt-joint-trajectory-controllerr¾Uassshˆh}r¿Uh}rÀUh}rÁUh]rÂUj¾Uasssh}rÃUh}rÄUh}rÅUh]rÆUj¾UasssuUnetwork_monitor_udprÇU}rÈU(h}rÉUh}rÊUh]rËUUros/melodic/linux_networkingrÌUassh }rÍUh }rÎUh}rÏUh]rÐUUros-melodic-network-monitor-udprÑUassshˆh}rÒUh}rÓUh}rÔUh]rÕUjÑUasssh}rÖUh}r×Uh}rØUh]rÙUjÑUasssuU jackal_vizrÚU}rÛU(h}rÜUh}rÝUh]rÞUUros/melodic/jackal_desktoprßUassh }ràUh }ráUh}râUh]rãUUros-melodic-jackal-vizräUassshˆh}råUh}ræUh}rçUh]rèUjäUasssh}réUh}rêUh}rëUh]rìUjäUasssuUmongodb_store_msgsríU}rîU(h}rïUh}rðUh]rñUUros/melodic/mongodb_storeròUassh }róUh }rôUh}rõUh]röUUros-melodic-mongodb-store-msgsr÷Uassshˆh}røUh}rùUh}rúUh]rûUj÷Uasssh}rüUh}rýUh}rþUh]rÿUj÷UasssuUcatkinrV}rV(h}rVh}rVh]rVUros/melodic/catkinrVassh }rVh }rVh}rVh]r VUros-melodic-catkinr Vassshˆh}r Vh}r Vh}r Vh]rVj Vasssh}rVh}rVh}rVh]rVj VasssuUweb_video_serverrV}rV(h}rVh}rVh]rVUros/melodic/web_video_serverrVassh }rVh }rVh}rVh]rVUros-melodic-web-video-serverrVassshˆh}rVh}rVh}r Vh]r!VjVasssh}r"Vh}r#Vh}r$Vh]r%VjVasssuUcostmap_cspace_msgsr&V}r'V(h}r(Vh}r)Vh]r*VUros/melodic/neonavigation_msgsr+Vassh }r,Vh }r-Vh}r.Vh]r/VUros-melodic-costmap-cspace-msgsr0Vassshˆh}r1Vh}r2Vh}r3Vh]r4Vj0Vasssh}r5Vh}r6Vh}r7Vh]r8Vj0VasssuUpr2_mannequin_moder9V}r:V(h}r;Vh}rVassh }r?Vh }r@Vh}rAVh]rBVUros-melodic-pr2-mannequin-moderCVassshˆh}rDVh}rEVh}rFVh]rGVjCVasssh}rHVh}rIVh}rJVh]rKVjCVasssuUmoveit_ros_planningrLV}rMV(h}rNVh}rOVh]rPVUros/melodic/moveitrQVassh }rRVh }rSVh}rTVh]rUVUros-melodic-moveit-ros-planningrVVassshˆh}rWVh}rXVh}rYVh]rZVjVVasssh}r[Vh}r\Vh}r]Vh]r^VjVVasssuU parrot_arsdkr_V}r`V(h}raVh}rbVh]rcVUros/melodic/parrot_arsdkrdVassh }reVh }rfVh}rgVh]rhVUros-melodic-parrot-arsdkriVassshˆh}rjVh}rkVh}rlVh]rmVjiVasssh}rnVh}roVh}rpVh]rqVjiVasssuUmultires_imagerrV}rsV(h}rtVh}ruVh]rvVUros/melodic/mapvizrwVassh }rxVh }ryVh}rzVh]r{VUros-melodic-multires-imager|Vassshˆh}r}Vh}r~Vh}rVh]r€Vj|Vasssh}rVh}r‚Vh}rƒVh]r„Vj|VasssuUcob_descriptionr…V}r†V(h}r‡Vh}rˆVh]r‰VUros/melodic/cob_commonrŠVassh }r‹Vh }rŒVh}rVh]rŽVUros-melodic-cob-descriptionrVassshˆh}rVh}r‘Vh}r’Vh]r“VjVasssh}r”Vh}r•Vh}r–Vh]r—VjVasssuU kobuki_msgsr˜V}r™V(h}ršVh}r›Vh]rœVUros/melodic/kobuki_msgsrVassh }ržVh }rŸVh}r Vh]r¡VUros-melodic-kobuki-msgsr¢Vassshˆh}r£Vh}r¤Vh}r¥Vh]r¦Vj¢Vasssh}r§Vh}r¨Vh}r©Vh]rªVj¢VasssuUnloptr«V}r¬V(h}r­Vh}r®Vh]r¯VUros/melodic/jsk_3rdpartyr°Vassh }r±Vh }r²Vh}r³Vh]r´VUros-melodic-nloptrµVassshˆh}r¶Vh}r·Vh}r¸Vh]r¹VjµVasssh}rºVh}r»Vh}r¼Vh]r½VjµVasssuUdataspeed_pds_rqtr¾V}r¿V(h}rÀVh}rÁVh]rÂVUros/melodic/dataspeed_pdsrÃVassh }rÄVh }rÅVh}rÆVh]rÇVUros-melodic-dataspeed-pds-rqtrÈVassshˆh}rÉVh}rÊVh}rËVh]rÌVjÈVasssh}rÍVh}rÎVh}rÏVh]rÐVjÈVasssuUmultimaster_fkierÑV}rÒV(h}rÓVh}rÔVh]rÕVUros/melodic/multimaster_fkierÖVassh }r×Vh }rØVh}rÙVh]rÚVUros-melodic-multimaster-fkierÛVassshˆh}rÜVh}rÝVh}rÞVh]rßVjÛVasssh}ràVh}ráVh}râVh]rãVjÛVasssuU rotors_commräV}råV(h}ræVh}rçVh]rèVUros/melodic/rotors_simulatorréVassh }rêVh }rëVh}rìVh]ríVUros-melodic-rotors-commrîVassshˆh}rïVh}rðVh}rñVh]ròVjîVasssh}róVh}rôVh}rõVh]röVjîVasssuU imu_toolsr÷V}røV(h}rùVh}rúVh]rûVUros/melodic/imu_toolsrüVassh }rýVh }rþVh}rÿVh]rWUros-melodic-imu-toolsrWassshˆh}rWh}rWh}rWh]rWjWasssh}rWh}rWh}rWh]r WjWasssuUfranka_example_controllersr W}r W(h}r Wh}r Wh]rWUros/melodic/franka_rosrWassh }rWh }rWh}rWh]rWU&ros-melodic-franka-example-controllersrWassshˆh}rWh}rWh}rWh]rWjWasssh}rWh}rWh}rWh]rWjWasssuUcatkin_virtualenvrW}rW(h}rWh}r Wh]r!WUros/melodic/catkin_virtualenvr"Wassh }r#Wh }r$Wh}r%Wh]r&WUros-melodic-catkin-virtualenvr'Wassshˆh}r(Wh}r)Wh}r*Wh]r+Wj'Wasssh}r,Wh}r-Wh}r.Wh]r/Wj'WasssuU ecl_devicesr0W}r1W(h}r2Wh}r3Wh]r4WUros/melodic/ecl_corer5Wassh }r6Wh }r7Wh}r8Wh]r9WUros-melodic-ecl-devicesr:Wassshˆh}r;Wh}rWj:Wasssh}r?Wh}r@Wh}rAWh]rBWj:WasssuU mrpt_msgsrCW}rDW(h}rEWh}rFWh]rGWUros/melodic/mrpt_msgsrHWassh }rIWh }rJWh}rKWh]rLWUros-melodic-mrpt-msgsrMWassshˆh}rNWh}rOWh}rPWh]rQWjMWasssh}rRWh}rSWh}rTWh]rUWjMWasssuU urg_stampedrVW}rWW(h}rXWh}rYWh]rZWUros/melodic/urg_stampedr[Wassh }r\Wh }r]Wh}r^Wh]r_WUros-melodic-urg-stampedr`Wassshˆh}raWh}rbWh}rcWh]rdWj`Wasssh}reWh}rfWh}rgWh]rhWj`WasssuUlibpcanriW}rjW(h}rkWh}rlWh]rmWUros/melodic/cob_externrnWassh }roWh }rpWh}rqWh]rrWUros-melodic-libpcanrsWassshˆh}rtWh}ruWh}rvWh]rwWjsWasssh}rxWh}ryWh}rzWh]r{WjsWasssuU move_baser|W}r}W(h}r~Wh}rWh]r€WUros/melodic/navigationrWassh }r‚Wh }rƒWh}r„Wh]r…WUros-melodic-move-baser†Wassshˆh}r‡Wh}rˆWh}r‰Wh]rŠWj†Wasssh}r‹Wh}rŒWh}rWh]rŽWj†WasssuUturtlebot3_fakerW}rW(h}r‘Wh}r’Wh]r“WU"ros/melodic/turtlebot3_simulationsr”Wassh }r•Wh }r–Wh}r—Wh]r˜WUros-melodic-turtlebot3-faker™Wassshˆh}ršWh}r›Wh}rœWh]rWj™Wasssh}ržWh}rŸWh}r Wh]r¡Wj™WasssuU cob_teleopr¢W}r£W(h}r¤Wh}r¥Wh]r¦WUros/melodic/cob_command_toolsr§Wassh }r¨Wh }r©Wh}rªWh]r«WUros-melodic-cob-teleopr¬Wassshˆh}r­Wh}r®Wh}r¯Wh]r°Wj¬Wasssh}r±Wh}r²Wh}r³Wh]r´Wj¬WasssuU dwb_pluginsrµW}r¶W(h}r·Wh}r¸Wh]r¹WUros/melodic/robot_navigationrºWassh }r»Wh }r¼Wh}r½Wh]r¾WUros-melodic-dwb-pluginsr¿Wassshˆh}rÀWh}rÁWh}rÂWh]rÃWj¿Wasssh}rÄWh}rÅWh}rÆWh]rÇWj¿WasssuUrobot_state_publisherrÈW}rÉW(h}rÊWh}rËWh]rÌWU!ros/melodic/robot_state_publisherrÍWassh }rÎWh }rÏWh}rÐWh]rÑWU!ros-melodic-robot-state-publisherrÒWassshˆh}rÓWh}rÔWh}rÕWh]rÖWjÒWasssh}r×Wh}rØWh}rÙWh]rÚWjÒWasssuUainstein_radar_toolsrÛW}rÜW(h}rÝWh}rÞWh]rßWUros/melodic/ainstein_radarràWassh }ráWh }râWh}rãWh]räWU ros-melodic-ainstein-radar-toolsråWassshˆh}ræWh}rçWh}rèWh]réWjåWasssh}rêWh}rëWh}rìWh]ríWjåWasssuUpr2_hardware_interfacerîW}rïW(h}rðWh}rñWh]ròWUros/melodic/pr2_mechanismróWassh }rôWh }rõWh}röWh]r÷WU"ros-melodic-pr2-hardware-interfacerøWassshˆh}rùWh}rúWh}rûWh]rüWjøWasssh}rýWh}rþWh}rÿWh]rXjøWasssuU joy_listenerrX}rX(h}rXh}rXh]rXUros/melodic/wu_ros_toolsrXassh }rXh }rXh}r Xh]r XUros-melodic-joy-listenerr Xassshˆh}r Xh}r Xh}rXh]rXj Xasssh}rXh}rXh}rXh]rXj XasssuU hector_slamrX}rX(h}rXh}rXh]rXUros/melodic/hector_slamrXassh }rXh }rXh}rXh]rXUros-melodic-hector-slamrXassshˆh}rXh}r Xh}r!Xh]r"XjXasssh}r#Xh}r$Xh}r%Xh]r&XjXasssuUjskeusr'X}r(X(h}r)Xh}r*Xh]r+XUros/melodic/jskeusr,Xassh }r-Xh }r.Xh}r/Xh]r0XUros-melodic-jskeusr1Xassshˆh}r2Xh}r3Xh}r4Xh]r5Xj1Xasssh}r6Xh}r7Xh}r8Xh]r9Xj1XasssuUcontrol_toolboxr:X}r;X(h}rXUros/melodic/control_toolboxr?Xassh }r@Xh }rAXh}rBXh]rCXUros-melodic-control-toolboxrDXassshˆh}rEXh}rFXh}rGXh]rHXjDXasssh}rIXh}rJXh}rKXh]rLXjDXasssuUlinux_peripheral_interfacesrMX}rNX(h}rOXh}rPXh]rQXU'ros/melodic/linux_peripheral_interfacesrRXassh }rSXh }rTXh}rUXh]rVXU'ros-melodic-linux-peripheral-interfacesrWXassshˆh}rXXh}rYXh}rZXh]r[XjWXasssh}r\Xh}r]Xh}r^Xh]r_XjWXasssuUainstein_radar_gazebo_pluginsr`X}raX(h}rbXh}rcXh]rdXUros/melodic/ainstein_radarreXassh }rfXh }rgXh}rhXh]riXU)ros-melodic-ainstein-radar-gazebo-pluginsrjXassshˆh}rkXh}rlXh}rmXh]rnXjjXasssh}roXh}rpXh}rqXh]rrXjjXasssuUainstein_radar_rviz_pluginsrsX}rtX(h}ruXh}rvXh]rwXUros/melodic/ainstein_radarrxXassh }ryXh }rzXh}r{Xh]r|XU'ros-melodic-ainstein-radar-rviz-pluginsr}Xassshˆh}r~Xh}rXh}r€Xh]rXj}Xasssh}r‚Xh}rƒXh}r„Xh]r…Xj}XasssuU cob_utilitiesr†X}r‡X(h}rˆXh}r‰Xh]rŠXUros/melodic/cob_driverr‹Xassh }rŒXh }rXh}rŽXh]rXUros-melodic-cob-utilitiesrXassshˆh}r‘Xh}r’Xh}r“Xh]r”XjXasssh}r•Xh}r–Xh}r—Xh]r˜XjXasssuUrobot_mechanism_controllersr™X}ršX(h}r›Xh}rœXh]rXUros/melodic/pr2_controllersržXassh }rŸXh }r Xh}r¡Xh]r¢XU'ros-melodic-robot-mechanism-controllersr£Xassshˆh}r¤Xh}r¥Xh}r¦Xh]r§Xj£Xasssh}r¨Xh}r©Xh}rªXh]r«Xj£XasssuUprbt_moveit_configr¬X}r­X(h}r®Xh}r¯Xh]r°XUros/melodic/pilz_robotsr±Xassh }r²Xh }r³Xh}r´Xh]rµXUros-melodic-prbt-moveit-configr¶Xassshˆh}r·Xh}r¸Xh}r¹Xh]rºXj¶Xasssh}r»Xh}r¼Xh}r½Xh]r¾Xj¶XasssuU aws_commonr¿X}rÀX(h}rÁXh}rÂXh]rÃXUros/melodic/aws_commonrÄXassh }rÅXh }rÆXh}rÇXh]rÈXUros-melodic-aws-commonrÉXassshˆh}rÊXh}rËXh}rÌXh]rÍXjÉXasssh}rÎXh}rÏXh}rÐXh]rÑXjÉXasssuUdistance_map_noderÒX}rÓX(h}rÔXh}rÕXh]rÖXUros/melodic/distance_mapr×Xassh }rØXh }rÙXh}rÚXh]rÛXUros-melodic-distance-map-noderÜXassshˆh}rÝXh}rÞXh}rßXh]ràXjÜXasssh}ráXh}râXh}rãXh]räXjÜXasssuUqb_hand_controlråX}ræX(h}rçXh}rèXh]réXUros/melodic/qb_handrêXassh }rëXh }rìXh}ríXh]rîXUros-melodic-qb-hand-controlrïXassshˆh}rðXh}rñXh}ròXh]róXjïXasssh}rôXh}rõXh}röXh]r÷XjïXasssuUwebkit_dependencyrøX}rùX(h}rúXh}rûXh]rüXUros/melodic/webkit_dependencyrýXassh }rþXh }rÿXh}rYh]rYUros-melodic-webkit-dependencyrYassshˆh}rYh}rYh}rYh]rYjYasssh}rYh}rYh}r Yh]r YjYasssuUcostmap_cspacer Y}r Y(h}r Yh}rYh]rYUros/melodic/neonavigationrYassh }rYh }rYh}rYh]rYUros-melodic-costmap-cspacerYassshˆh}rYh}rYh}rYh]rYjYasssh}rYh}rYh}rYh]rYjYasssuUrosserial_clientrY}rY(h}r Yh}r!Yh]r"YUros/melodic/rosserialr#Yassh }r$Yh }r%Yh}r&Yh]r'YUros-melodic-rosserial-clientr(Yassshˆh}r)Yh}r*Yh}r+Yh]r,Yj(Yasssh}r-Yh}r.Yh}r/Yh]r0Yj(YasssuUfsrobo_r_trajectory_filtersr1Y}r2Y(h}r3Yh}r4Yh]r5YUros/melodic/fsrobo_rr6Yassh }r7Yh }r8Yh}r9Yh]r:YU'ros-melodic-fsrobo-r-trajectory-filtersr;Yassshˆh}rYh]r?Yj;Yasssh}r@Yh}rAYh}rBYh]rCYj;YasssuUsocketcan_bridgerDY}rEY(h}rFYh}rGYh]rHYUros/melodic/ros_canopenrIYassh }rJYh }rKYh}rLYh]rMYUros-melodic-socketcan-bridgerNYassshˆh}rOYh}rPYh}rQYh]rRYjNYasssh}rSYh}rTYh}rUYh]rVYjNYasssuU dlux_pluginsrWY}rXY(h}rYYh}rZYh]r[YUros/melodic/robot_navigationr\Yassh }r]Yh }r^Yh}r_Yh]r`YUros-melodic-dlux-pluginsraYassshˆh}rbYh}rcYh}rdYh]reYjaYasssh}rfYh}rgYh}rhYh]riYjaYasssuU opt_camerarjY}rkY(h}rlYh}rmYh]rnYUros/melodic/jsk_3rdpartyroYassh }rpYh }rqYh}rrYh]rsYUros-melodic-opt-camerartYassshˆh}ruYh}rvYh}rwYh]rxYjtYasssh}ryYh}rzYh}r{Yh]r|YjtYasssuUridgeback_descriptionr}Y}r~Y(h}rYh}r€Yh]rYUros/melodic/ridgebackr‚Yassh }rƒYh }r„Yh}r…Yh]r†YU!ros-melodic-ridgeback-descriptionr‡Yassshˆh}rˆYh}r‰Yh}rŠYh]r‹Yj‡Yasssh}rŒYh}rYh}rŽYh]rYj‡YasssuU euscolladarY}r‘Y(h}r’Yh}r“Yh]r”YUros/melodic/jsk_model_toolsr•Yassh }r–Yh }r—Yh}r˜Yh]r™YUros-melodic-euscolladaršYassshˆh}r›Yh}rœYh}rYh]ržYjšYasssh}rŸYh}r Yh}r¡Yh]r¢YjšYasssuUrosoutr£Y}r¤Y(h}r¥Yh}r¦Yh]r§YUros/melodic/ros_commr¨Yassh }r©Yh }rªYh}r«Yh]r¬YUros-melodic-rosoutr­Yassshˆh}r®Yh}r¯Yh}r°Yh]r±Yj­Yasssh}r²Yh}r³Yh}r´Yh]rµYj­YasssuUturtlebot3_descriptionr¶Y}r·Y(h}r¸Yh}r¹Yh]rºYUros/melodic/turtlebot3r»Yassh }r¼Yh }r½Yh}r¾Yh]r¿YU"ros-melodic-turtlebot3-descriptionrÀYassshˆh}rÁYh}rÂYh}rÃYh]rÄYjÀYasssh}rÅYh}rÆYh}rÇYh]rÈYjÀYasssuU cob_controlrÉY}rÊY(h}rËYh}rÌYh]rÍYUros/melodic/cob_controlrÎYassh }rÏYh }rÐYh}rÑYh]rÒYUros-melodic-cob-controlrÓYassshˆh}rÔYh}rÕYh}rÖYh]r×YjÓYasssh}rØYh}rÙYh}rÚYh]rÛYjÓYasssuU iirob_filtersrÜY}rÝY(h}rÞYh}rßYh]ràYUros/melodic/iirob_filtersráYassh }râYh }rãYh}räYh]råYUros-melodic-iirob-filtersræYassshˆh}rçYh}rèYh}réYh]rêYjæYasssh}rëYh}rìYh}ríYh]rîYjæYasssuUrosserial_arduinorïY}rðY(h}rñYh}ròYh]róYUros/melodic/rosserialrôYassh }rõYh }röYh}r÷Yh]røYUros-melodic-rosserial-arduinorùYassshˆh}rúYh}rûYh}rüYh]rýYjùYasssh}rþYh}rÿYh}rZh]rZjùYasssuUrostimerZ}rZ(h}rZh}rZh]rZUros/melodic/roscpp_corerZassh }rZh }r Zh}r Zh]r ZUros-melodic-rostimer Zassshˆh}r Zh}rZh}rZh]rZj Zasssh}rZh}rZh}rZh]rZj ZasssuUrosunitrZ}rZ(h}rZh}rZh]rZUros/melodic/rosrZassh }rZh }rZh}rZh]rZUros-melodic-rosunitrZassshˆh}r Zh}r!Zh}r"Zh]r#ZjZasssh}r$Zh}r%Zh}r&Zh]r'ZjZasssuUmove_base_msgsr(Z}r)Z(h}r*Zh}r+Zh]r,ZUros/melodic/navigation_msgsr-Zassh }r.Zh }r/Zh}r0Zh]r1ZUros-melodic-move-base-msgsr2Zassshˆh}r3Zh}r4Zh}r5Zh]r6Zj2Zasssh}r7Zh}r8Zh}r9Zh]r:Zj2ZasssuUdelphi_srr_msgsr;Z}rZh]r?ZUros/melodic/astuff_sensor_msgsr@Zassh }rAZh }rBZh}rCZh]rDZUros-melodic-delphi-srr-msgsrEZassshˆh}rFZh}rGZh}rHZh]rIZjEZasssh}rJZh}rKZh}rLZh]rMZjEZasssuU mrpt_bridgerNZ}rOZ(h}rPZh}rQZh]rRZUros/melodic/mrpt_bridgerSZassh }rTZh }rUZh}rVZh]rWZUros-melodic-mrpt-bridgerXZassshˆh}rYZh}rZZh}r[Zh]r\ZjXZasssh}r]Zh}r^Zh}r_Zh]r`ZjXZasssuUcamera_info_managerraZ}rbZ(h}rcZh}rdZh]reZUros/melodic/image_commonrfZassh }rgZh }rhZh}riZh]rjZUros-melodic-camera-info-managerrkZassshˆh}rlZh}rmZh}rnZh]roZjkZasssh}rpZh}rqZh}rrZh]rsZjkZasssuUasmachrtZ}ruZ(h}rvZh}rwZh]rxZUros/melodic/linux_networkingryZassh }rzZh }r{Zh}r|Zh]r}ZUros-melodic-asmachr~Zassshˆh}rZh}r€Zh}rZh]r‚Zj~Zasssh}rƒZh}r„Zh}r…Zh]r†Zj~ZasssuUstatic_transform_muxr‡Z}rˆZ(h}r‰Zh}rŠZh]r‹ZU ros/melodic/static_transform_muxrŒZassh }rZh }rŽZh}rZh]rZU ros-melodic-static-transform-muxr‘Zassshˆh}r’Zh}r“Zh}r”Zh]r•Zj‘Zasssh}r–Zh}r—Zh}r˜Zh]r™Zj‘ZasssuU tracetoolsršZ}r›Z(h}rœZh}rZh]ržZUros/melodic/tracetoolsrŸZassh }r Zh }r¡Zh}r¢Zh]r£ZUros-melodic-tracetoolsr¤Zassshˆh}r¥Zh}r¦Zh}r§Zh]r¨Zj¤Zasssh}r©Zh}rªZh}r«Zh]r¬Zj¤ZasssuUquaternion_operationr­Z}r®Z(h}r¯Zh}r°Zh]r±ZU ros/melodic/quaternion_operationr²Zassh }r³Zh }r´Zh}rµZh]r¶ZU ros-melodic-quaternion-operationr·Zassshˆh}r¸Zh}r¹Zh}rºZh]r»Zj·Zasssh}r¼Zh}r½Zh}r¾Zh]r¿Zj·ZasssuUqb_hand_descriptionrÀZ}rÁZ(h}rÂZh}rÃZh]rÄZUros/melodic/qb_handrÅZassh }rÆZh }rÇZh}rÈZh]rÉZUros-melodic-qb-hand-descriptionrÊZassshˆh}rËZh}rÌZh}rÍZh]rÎZjÊZasssh}rÏZh}rÐZh}rÑZh]rÒZjÊZasssuUprbt_pg70_supportrÓZ}rÔZ(h}rÕZh}rÖZh]r×ZUros/melodic/prbt_grippersrØZassh }rÙZh }rÚZh}rÛZh]rÜZUros-melodic-prbt-pg70-supportrÝZassshˆh}rÞZh}rßZh}ràZh]ráZjÝZasssh}râZh}rãZh}räZh]råZjÝZasssuU xsens_driverræZ}rçZ(h}rèZh}réZh]rêZUros/melodic/xsens_driverrëZassh }rìZh }ríZh}rîZh]rïZUros-melodic-xsens-driverrðZassshˆh}rñZh}ròZh}róZh]rôZjðZasssh}rõZh}röZh}r÷Zh]røZjðZasssuUprbt_ikfast_manipulator_pluginrùZ}rúZ(h}rûZh}rüZh]rýZUros/melodic/pilz_robotsrþZassh }rÿZh }r[h}r[h]r[U*ros-melodic-prbt-ikfast-manipulator-pluginr[assshˆh}r[h}r[h}r[h]r[j[asssh}r[h}r [h}r [h]r [j[asssuUjackal_desktopr [}r [(h}r[h}r[h]r[Uros/melodic/jackal_desktopr[assh }r[h }r[h}r[h]r[Uros-melodic-jackal-desktopr[assshˆh}r[h}r[h}r[h]r[j[asssh}r}r[h}r[h]r[j[asssuUqb_device_bringupr[}r [(h}r![h}r"[h]r#[Uros/melodic/qb_devicer$[assh }r%[h }r&[h}r'[h]r([Uros-melodic-qb-device-bringupr)[assshˆh}r*[h}r+[h}r,[h]r-[j)[asssh}r.[h}r/[h}r0[h]r1[j)[asssuUrosbashr2[}r3[(h}r4[h}r5[h]r6[Uros/melodic/rosr7[assh }r8[h }r9[h}r:[h]r;[Uros-melodic-rosbashr<[assshˆh}r=[h}r>[h}r?[h]r@[j<[asssh}rA[h}rB[h}rC[h]rD[j<[asssuUrqt_deprE[}rF[(h}rG[h}rH[h]rI[Uros/melodic/rqt_deprJ[assh }rK[h }rL[h}rM[h]rN[Uros-melodic-rqt-deprO[assshˆh}rP[h}rQ[h}rR[h]rS[jO[asssh}rT[h}rU[h}rV[h]rW[jO[asssuU gpsd_clientrX[}rY[(h}rZ[h}r[[h]r\[Uros/melodic/gps_umdr][assh }r^[h }r_[h}r`[h]ra[Uros-melodic-gpsd-clientrb[assshˆh}rc[h}rd[h}re[h]rf[jb[asssh}rg[h}rh[h}ri[h]rj[jb[asssuUscheduler_msgsrk[}rl[(h}rm[h}rn[h]ro[Uros/melodic/rocon_msgsrp[assh }rq[h }rr[h}rs[h]rt[Uros-melodic-scheduler-msgsru[assshˆh}rv[h}rw[h}rx[h]ry[ju[asssh}rz[h}r{[h}r|[h]r}[ju[asssuU control_msgsr~[}r[(h}r€[h}r[h]r‚[Uros/melodic/control_msgsrƒ[assh }r„[h }r…[h}r†[h]r‡[Uros-melodic-control-msgsrˆ[assshˆh}r‰[h}rŠ[h}r‹[h]rŒ[jˆ[asssh}r[h}rŽ[h}r[h]r[jˆ[asssuUuuv_assistantsr‘[}r’[(h}r“[h}r”[h]r•[Uros/melodic/uuv_simulatorr–[assh }r—[h }r˜[h}r™[h]rš[Uros-melodic-uuv-assistantsr›[assshˆh}rœ[h}r[h}rž[h]rŸ[j›[asssh}r [h}r¡[h}r¢[h]r£[j›[asssuUxppr¤[}r¥[(h}r¦[h}r§[h]r¨[Uros/melodic/xppr©[assh }rª[h }r«[h}r¬[h]r­[Uros-melodic-xppr®[assshˆh}r¯[h}r°[h}r±[h]r²[j®[asssh}r³[h}r´[h}rµ[h]r¶[j®[asssuUjsk_interactive_testr·[}r¸[(h}r¹[h}rº[h]r»[Uros/melodic/jsk_visualizationr¼[assh }r½[h }r¾[h}r¿[h]rÀ[U ros-melodic-jsk-interactive-testrÁ[assshˆh}rÂ[h}rÃ[h}rÄ[h]rÅ[jÁ[asssh}rÆ[h}rÇ[h}rÈ[h]rÉ[jÁ[asssuU robot_onerÊ[}rË[(h}rÌ[h}rÍ[h]rÎ[Uros/melodic/robot_onerÏ[assh }rÐ[h }rÑ[h}rÒ[h]rÓ[Uros-melodic-robot-onerÔ[assshˆh}rÕ[h}rÖ[h}r×[h]rØ[jÔ[asssh}rÙ[h}rÚ[h}rÛ[h]rÜ[jÔ[asssuUcontroller_manager_msgsrÝ[}rÞ[(h}rß[h}rà[h]rá[Uros/melodic/ros_controlrâ[assh }rã[h }rä[h}rå[h]ræ[U#ros-melodic-controller-manager-msgsrç[assshˆh}rè[h}ré[h}rê[h]rë[jç[asssh}rì[h}rí[h}rî[h]rï[jç[asssuUmrpt_local_obstaclesrð[}rñ[(h}rò[h}ró[h]rô[Uros/melodic/mrpt_navigationrõ[assh }rö[h }r÷[h}rø[h]rù[U ros-melodic-mrpt-local-obstaclesrú[assshˆh}rû[h}rü[h}rý[h]rþ[jú[asssh}rÿ[h}r\h}r\h]r\jú[asssuUopen_manipulator_control_guir\}r\(h}r\h}r\h]r\Uros/melodic/open_manipulatorr\assh }r \h }r \h}r \h]r \U(ros-melodic-open-manipulator-control-guir \assshˆh}r\h}r\h}r\h]r\j \asssh}r\h}r\h}r\h]r\j \asssuU ridgeback_vizr\}r\(h}r\h}r\h]r\Uros/melodic/ridgeback_desktopr\assh }r\h }r\h}r\h]r\Uros-melodic-ridgeback-vizr \assshˆh}r!\h}r"\h}r#\h]r$\j \asssh}r%\h}r&\h}r'\h]r(\j \asssuUautoware_config_msgsr)\}r*\(h}r+\h}r,\h]r-\Uros/melodic/autoware_msgsr.\assh }r/\h }r0\h}r1\h]r2\U ros-melodic-autoware-config-msgsr3\assshˆh}r4\h}r5\h}r6\h]r7\j3\asssh}r8\h}r9\h}r:\h]r;\j3\asssuUpanda_moveit_configr<\}r=\(h}r>\h}r?\h]r@\Uros/melodic/panda_moveit_configrA\assh }rB\h }rC\h}rD\h]rE\Uros-melodic-panda-moveit-configrF\assshˆh}rG\h}rH\h}rI\h]rJ\jF\asssh}rK\h}rL\h}rM\h]rN\jF\asssuUdbw_mkzrO\}rP\(h}rQ\h}rR\h]rS\Uros/melodic/dbw_mkz_rosrT\assh }rU\h }rV\h}rW\h]rX\Uros-melodic-dbw-mkzrY\assshˆh}rZ\h}r[\h}r\\h]r]\jY\asssh}r^\h}r_\h}r`\h]ra\jY\asssuU libmodbusrb\}rc\(h}rd\h}re\h]rf\Uros/melodic/ipr_externrg\assh }rh\h }ri\h}rj\h]rk\Uros-melodic-libmodbusrl\assshˆh}rm\h}rn\h}ro\h]rp\jl\asssh}rq\h}rr\h}rs\h]rt\jl\asssuUtoposens_markersru\}rv\(h}rw\h}rx\h]ry\Uros/melodic/toposensrz\assh }r{\h }r|\h}r}\h]r~\Uros-melodic-toposens-markersr\assshˆh}r€\h}r\h}r‚\h]rƒ\j\asssh}r„\h}r…\h}r†\h]r‡\j\asssuU swri_consolerˆ\}r‰\(h}rŠ\h}r‹\h]rŒ\Uros/melodic/swri_consoler\assh }rŽ\h }r\h}r\h]r‘\Uros-melodic-swri-consoler’\assshˆh}r“\h}r”\h}r•\h]r–\j’\asssh}r—\h}r˜\h}r™\h]rš\j’\asssuUpr2_tilt_laser_interfacer›\}rœ\(h}r\h}rž\h]rŸ\Uros/melodic/pr2_common_actionsr \assh }r¡\h }r¢\h}r£\h]r¤\U$ros-melodic-pr2-tilt-laser-interfacer¥\assshˆh}r¦\h}r§\h}r¨\h]r©\j¥\asssh}rª\h}r«\h}r¬\h]r­\j¥\asssuUpr2_kinematicsr®\}r¯\(h}r°\h}r±\h]r²\Uros/melodic/pr2_kinematicsr³\assh }r´\h }rµ\h}r¶\h]r·\Uros-melodic-pr2-kinematicsr¸\assshˆh}r¹\h}rº\h}r»\h]r¼\j¸\asssh}r½\h}r¾\h}r¿\h]rÀ\j¸\asssuU jackal_msgsrÁ\}rÂ\(h}rÃ\h}rÄ\h]rÅ\Uros/melodic/jackalrÆ\assh }rÇ\h }rÈ\h}rÉ\h]rÊ\Uros-melodic-jackal-msgsrË\assshˆh}rÌ\h}rÍ\h}rÎ\h]rÏ\jË\asssh}rÐ\h}rÑ\h}rÒ\h]rÓ\jË\asssuU fcl_catkinrÔ\}rÕ\(h}rÖ\h}r×\h]rØ\Uros/melodic/fcl_catkinrÙ\assh }rÚ\h }rÛ\h}rÜ\h]rÝ\Uros-melodic-fcl-catkinrÞ\assshˆh}rß\h}rà\h}rá\h]râ\jÞ\asssh}rã\h}rä\h}rå\h]ræ\jÞ\asssuUdataspeed_pds_scriptsrç\}rè\(h}ré\h}rê\h]rë\Uros/melodic/dataspeed_pdsrì\assh }rí\h }rî\h}rï\h]rð\U!ros-melodic-dataspeed-pds-scriptsrñ\assshˆh}rò\h}ró\h}rô\h]rõ\jñ\asssh}rö\h}r÷\h}rø\h]rù\jñ\asssuUhardware_interfacerú\}rû\(h}rü\h}rý\h]rþ\Uros/melodic/ros_controlrÿ\assh }r]h }r]h}r]h]r]Uros-melodic-hardware-interfacer]assshˆh}r]h}r]h}r]h]r]j]asssh}r ]h}r ]h}r ]h]r ]j]asssuUridgeback_gazebor ]}r](h}r]h}r]h]r]Uros/melodic/ridgeback_simulatorr]assh }r]h }r]h}r]h]r]Uros-melodic-ridgeback-gazebor]assshˆh}r]h}r]h}r]h]r]j]asssh}r]h}r]h}r]h]r]j]asssuUxv_11_laser_driverr ]}r!](h}r"]h}r#]h]r$]Uros/melodic/xv_11_laser_driverr%]assh }r&]h }r']h}r(]h]r)]Uros-melodic-xv-11-laser-driverr*]assshˆh}r+]h}r,]h}r-]h]r.]j*]asssh}r/]h}r0]h}r1]h]r2]j*]asssuUqb_device_hardware_interfacer3]}r4](h}r5]h}r6]h]r7]Uros/melodic/qb_devicer8]assh }r9]h }r:]h}r;]h]r<]U(ros-melodic-qb-device-hardware-interfacer=]assshˆh}r>]h}r?]h}r@]h]rA]j=]asssh}rB]h}rC]h}rD]h]rE]j=]asssuU image_procrF]}rG](h}rH]h}rI]h]rJ]Uros/melodic/image_pipelinerK]assh }rL]h }rM]h}rN]h]rO]Uros-melodic-image-procrP]assshˆh}rQ]h}rR]h}rS]h]rT]jP]asssh}rU]h}rV]h}rW]h]rX]jP]asssuUfetch_gazebo_demorY]}rZ](h}r[]h}r\]h]r]]Uros/melodic/fetch_gazebor^]assh }r_]h }r`]h}ra]h]rb]Uros-melodic-fetch-gazebo-demorc]assshˆh}rd]h}re]h}rf]h]rg]jc]asssh}rh]h}ri]h}rj]h]rk]jc]asssuU neonavigationrl]}rm](h}rn]h}ro]h]rp]Uros/melodic/neonavigationrq]assh }rr]h }rs]h}rt]h]ru]Uros-melodic-neonavigationrv]assshˆh}rw]h}rx]h}ry]h]rz]jv]asssh}r{]h}r|]h}r}]h]r~]jv]asssuUleuze_descriptionr]}r€](h}r]h}r‚]h]rƒ]Uros/melodic/leuze_ros_driversr„]assh }r…]h }r†]h}r‡]h]rˆ]Uros-melodic-leuze-descriptionr‰]assshˆh}rŠ]h}r‹]h}rŒ]h]r]j‰]asssh}rŽ]h}r]h}r]h]r‘]j‰]asssuUvelodyne_driverr’]}r“](h}r”]h}r•]h]r–]Uros/melodic/velodyner—]assh }r˜]h }r™]h}rš]h]r›]Uros-melodic-velodyne-driverrœ]assshˆh}r]h}rž]h}rŸ]h]r ]jœ]asssh}r¡]h}r¢]h}r£]h]r¤]jœ]asssuUrocon_tutorial_msgsr¥]}r¦](h}r§]h}r¨]h]r©]Uros/melodic/rocon_msgsrª]assh }r«]h }r¬]h}r­]h]r®]Uros-melodic-rocon-tutorial-msgsr¯]assshˆh}r°]h}r±]h}r²]h]r³]j¯]asssh}r´]h}rµ]h}r¶]h]r·]j¯]asssuUcl_tfr¸]}r¹](h}rº]h}r»]h]r¼]Uros/melodic/roslisp_commonr½]assh }r¾]h }r¿]h}rÀ]h]rÁ]Uros-melodic-cl-tfrÂ]assshˆh}rÃ]h}rÄ]h}rÅ]h]rÆ]jÂ]asssh}rÇ]h}rÈ]h}rÉ]h]rÊ]jÂ]asssuUgeodesyrË]}rÌ](h}rÍ]h}rÎ]h]rÏ]Uros/melodic/geographic_inforÐ]assh }rÑ]h }rÒ]h}rÓ]h]rÔ]Uros-melodic-geodesyrÕ]assshˆh}rÖ]h}r×]h}rØ]h]rÙ]jÕ]asssh}rÚ]h}rÛ]h}rÜ]h]rÝ]jÕ]asssuUfetch_descriptionrÞ]}rß](h}rà]h}rá]h]râ]Uros/melodic/fetch_rosrã]assh }rä]h }rå]h}ræ]h]rç]Uros-melodic-fetch-descriptionrè]assshˆh}ré]h}rê]h}rë]h]rì]jè]asssh}rí]h}rî]h}rï]h]rð]jè]asssuUrospy_tutorialsrñ]}rò](h}ró]h}rô]h]rõ]Uros/melodic/ros_tutorialsrö]assh }r÷]h }rø]h}rù]h]rú]Uros-melodic-rospy-tutorialsrû]assshˆh}rü]h}rý]h}rþ]h]rÿ]jû]asssh}r^h}r^h}r^h]r^jû]asssuU rqt_gui_pyr^}r^(h}r^h}r^h]r^Uros/melodic/rqtr ^assh }r ^h }r ^h}r ^h]r ^Uros-melodic-rqt-gui-pyr^assshˆh}r^h}r^h}r^h]r^j^asssh}r^h}r^h}r^h]r^j^asssuUexotica_core_task_mapsr^}r^(h}r^h}r^h]r^Uros/melodic/exoticar^assh }r^h }r^h}r^h]r ^U"ros-melodic-exotica-core-task-mapsr!^assshˆh}r"^h}r#^h}r$^h]r%^j!^asssh}r&^h}r'^h}r(^h]r)^j!^asssuUdesistek_saga_controlr*^}r+^(h}r,^h}r-^h]r.^Uros/melodic/desistek_sagar/^assh }r0^h }r1^h}r2^h]r3^U!ros-melodic-desistek-saga-controlr4^assshˆh}r5^h}r6^h}r7^h]r8^j4^asssh}r9^h}r:^h}r;^h]r<^j4^asssuUrosserial_mbedr=^}r>^(h}r?^h}r@^h]rA^Uros/melodic/rosserialrB^assh }rC^h }rD^h}rE^h]rF^Uros-melodic-rosserial-mbedrG^assshˆh}rH^h}rI^h}rJ^h]rK^jG^asssh}rL^h}rM^h}rN^h]rO^jG^asssuUqb_device_controlrP^}rQ^(h}rR^h}rS^h]rT^Uros/melodic/qb_devicerU^assh }rV^h }rW^h}rX^h]rY^Uros-melodic-qb-device-controlrZ^assshˆh}r[^h}r\^h}r]^h]r^^jZ^asssh}r_^h}r`^h}ra^h]rb^jZ^asssuUfetch_moveit_configrc^}rd^(h}re^h}rf^h]rg^Uros/melodic/fetch_rosrh^assh }ri^h }rj^h}rk^h]rl^Uros-melodic-fetch-moveit-configrm^assshˆh}rn^h}ro^h}rp^h]rq^jm^asssh}rr^h}rs^h}rt^h]ru^jm^asssuUneobotix_usboard_msgsrv^}rw^(h}rx^h}ry^h]rz^Uros/melodic/astuff_sensor_msgsr{^assh }r|^h }r}^h}r~^h]r^U!ros-melodic-neobotix-usboard-msgsr€^assshˆh}r^h}r‚^h}rƒ^h]r„^j€^asssh}r…^h}r†^h}r‡^h]rˆ^j€^asssuUmoveitr‰^}rŠ^(h}r‹^h}rŒ^h]r^Uros/melodic/moveitrŽ^assh }r^h }r^h}r‘^h]r’^Uros-melodic-moveitr“^assshˆh}r”^h}r•^h}r–^h]r—^j“^asssh}r˜^h}r™^h}rš^h]r›^j“^asssuUrocon_python_wifirœ^}r^(h}rž^h}rŸ^h]r ^Uros/melodic/rocon_toolsr¡^assh }r¢^h }r£^h}r¤^h]r¥^Uros-melodic-rocon-python-wifir¦^assshˆh}r§^h}r¨^h}r©^h]rª^j¦^asssh}r«^h}r¬^h}r­^h]r®^j¦^asssuUhector_gazebo_worldsr¯^}r°^(h}r±^h}r²^h]r³^Uros/melodic/hector_gazebor´^assh }rµ^h }r¶^h}r·^h]r¸^U ros-melodic-hector-gazebo-worldsr¹^assshˆh}rº^h}r»^h}r¼^h]r½^j¹^asssh}r¾^h}r¿^h}rÀ^h]rÁ^j¹^asssuU json_msgsrÂ^}rÃ^(h}rÄ^h}rÅ^h]rÆ^Uros/melodic/json_transportrÇ^assh }rÈ^h }rÉ^h}rÊ^h]rË^Uros-melodic-json-msgsrÌ^assshˆh}rÍ^h}rÎ^h}rÏ^h]rÐ^jÌ^asssh}rÑ^h}rÒ^h}rÓ^h]rÔ^jÌ^asssuU roscpp_corerÕ^}rÖ^(h}r×^h}rØ^h]rÙ^Uros/melodic/roscpp_corerÚ^assh }rÛ^h }rÜ^h}rÝ^h]rÞ^Uros-melodic-roscpp-corerß^assshˆh}rà^h}rá^h}râ^h]rã^jß^asssh}rä^h}rå^h}ræ^h]rç^jß^asssuUvector_map_msgsrè^}ré^(h}rê^h}rë^h]rì^Uros/melodic/autoware_msgsrí^assh }rî^h }rï^h}rð^h]rñ^Uros-melodic-vector-map-msgsrò^assshˆh}ró^h}rô^h}rõ^h]rö^jò^asssh}r÷^h}rø^h}rù^h]rú^jò^asssuUrocon_python_commsrû^}rü^(h}rý^h}rþ^h]rÿ^Uros/melodic/rocon_toolsr_assh }r_h }r_h}r_h]r_Uros-melodic-rocon-python-commsr_assshˆh}r_h}r_h}r_h]r _j_asssh}r _h}r _h}r _h]r _j_asssuUtrac_ik_examplesr_}r_(h}r_h}r_h]r_Uros/melodic/trac_ikr_assh }r_h }r_h}r_h]r_Uros-melodic-trac-ik-examplesr_assshˆh}r_h}r_h}r_h]r_j_asssh}r_h}r_h}r_h]r _j_asssuU roslisp_replr!_}r"_(h}r#_h}r$_h]r%_Uros/melodic/ros_emacs_utilsr&_assh }r'_h }r(_h}r)_h]r*_Uros-melodic-roslisp-replr+_assshˆh}r,_h}r-_h}r._h]r/_j+_asssh}r0_h}r1_h}r2_h]r3_j+_asssuUabb_irb2400_supportr4_}r5_(h}r6_h}r7_h]r8_Uros/melodic/abbr9_assh }r:_h }r;_h}r<_h]r=_Uros-melodic-abb-irb2400-supportr>_assshˆh}r?_h}r@_h}rA_h]rB_j>_asssh}rC_h}rD_h}rE_h]rF_j>_asssuUdataspeed_ulc_msgsrG_}rH_(h}rI_h}rJ_h]rK_Uros/melodic/dataspeed_ulc_rosrL_assh }rM_h }rN_h}rO_h]rP_Uros-melodic-dataspeed-ulc-msgsrQ_assshˆh}rR_h}rS_h}rT_h]rU_jQ_asssh}rV_h}rW_h}rX_h]rY_jQ_asssuU pyros_utilsrZ_}r[_(h}r\_h}r]_h]r^_Uros/melodic/pyros_utilsr__assh }r`_h }ra_h}rb_h]rc_Uros-melodic-pyros-utilsrd_assshˆh}re_h}rf_h}rg_h]rh_jd_asssh}ri_h}rj_h}rk_h]rl_jd_asssuUrexrov2_gazeborm_}rn_(h}ro_h}rp_h]rq_Uros/melodic/rexrov2rr_assh }rs_h }rt_h}ru_h]rv_Uros-melodic-rexrov2-gazeborw_assshˆh}rx_h}ry_h}rz_h]r{_jw_asssh}r|_h}r}_h}r~_h]r_jw_asssuUfour_wheel_steering_msgsr€_}r_(h}r‚_h}rƒ_h]r„_U$ros/melodic/four_wheel_steering_msgsr…_assh }r†_h }r‡_h}rˆ_h]r‰_U$ros-melodic-four-wheel-steering-msgsrŠ_assshˆh}r‹_h}rŒ_h}r_h]rŽ_jŠ_asssh}r_h}r_h}r‘_h]r’_jŠ_asssuUyocs_ar_marker_trackingr“_}r”_(h}r•_h}r–_h]r—_Uros/melodic/yujin_ocsr˜_assh }r™_h }rš_h}r›_h]rœ_U#ros-melodic-yocs-ar-marker-trackingr_assshˆh}rž_h}rŸ_h}r _h]r¡_j_asssh}r¢_h}r£_h}r¤_h]r¥_j_asssuU rqt_publisherr¦_}r§_(h}r¨_h}r©_h]rª_Uros/melodic/rqt_publisherr«_assh }r¬_h }r­_h}r®_h]r¯_Uros-melodic-rqt-publisherr°_assshˆh}r±_h}r²_h}r³_h]r´_j°_asssh}rµ_h}r¶_h}r·_h]r¸_j°_asssuUcob_handr¹_}rº_(h}r»_h}r¼_h]r½_Uros/melodic/cob_handr¾_assh }r¿_h }rÀ_h}rÁ_h]rÂ_Uros-melodic-cob-handrÃ_assshˆh}rÄ_h}rÅ_h}rÆ_h]rÇ_jÃ_asssh}rÈ_h}rÉ_h}rÊ_h]rË_jÃ_asssuUtimestamp_toolsrÌ_}rÍ_(h}rÎ_h}rÏ_h]rÐ_Uros/melodic/driver_commonrÑ_assh }rÒ_h }rÓ_h}rÔ_h]rÕ_Uros-melodic-timestamp-toolsrÖ_assshˆh}r×_h}rØ_h}rÙ_h]rÚ_jÖ_asssh}rÛ_h}rÜ_h}rÝ_h]rÞ_jÖ_asssuU ecl_streamsrß_}rà_(h}rá_h}râ_h]rã_Uros/melodic/ecl_corerä_assh }rå_h }ræ_h}rç_h]rè_Uros-melodic-ecl-streamsré_assshˆh}rê_h}rë_h}rì_h]rí_jé_asssh}rî_h}rï_h}rð_h]rñ_jé_asssuUrobot_self_filterrò_}ró_(h}rô_h}rõ_h]rö_Uros/melodic/robot_self_filterr÷_assh }rø_h }rù_h}rú_h]rû_Uros-melodic-robot-self-filterrü_assshˆh}rý_h}rþ_h}rÿ_h]r`jü_asssh}r`h}r`h}r`h]r`jü_asssuU rqt_topicr`}r`(h}r`h}r`h]r `Uros/melodic/rqt_topicr `assh }r `h }r `h}r `h]r`Uros-melodic-rqt-topicr`assshˆh}r`h}r`h}r`h]r`j`asssh}r`h}r`h}r`h]r`j`asssuUrotors_evaluationr`}r`(h}r`h}r`h]r`Uros/melodic/rotors_simulatorr`assh }r`h }r`h}r `h]r!`Uros-melodic-rotors-evaluationr"`assshˆh}r#`h}r$`h}r%`h]r&`j"`asssh}r'`h}r(`h}r)`h]r*`j"`asssuUrostate_machiner+`}r,`(h}r-`h}r.`h]r/`Uros/melodic/rostate_machiner0`assh }r1`h }r2`h}r3`h]r4`Uros-melodic-rostate-machiner5`assshˆh}r6`h}r7`h}r8`h]r9`j5`asssh}r:`h}r;`h}r<`h]r=`j5`asssuUpr2_head_actionr>`}r?`(h}r@`h}rA`h]rB`Uros/melodic/pr2_controllersrC`assh }rD`h }rE`h}rF`h]rG`Uros-melodic-pr2-head-actionrH`assshˆh}rI`h}rJ`h}rK`h]rL`jH`asssh}rM`h}rN`h}rO`h]rP`jH`asssuUnav_gridrQ`}rR`(h}rS`h}rT`h]rU`Uros/melodic/robot_navigationrV`assh }rW`h }rX`h}rY`h]rZ`Uros-melodic-nav-gridr[`assshˆh}r\`h}r]`h}r^`h]r_`j[`asssh}r``h}ra`h}rb`h]rc`j[`asssuUfetch_calibrationrd`}re`(h}rf`h}rg`h]rh`Uros/melodic/fetch_rosri`assh }rj`h }rk`h}rl`h]rm`Uros-melodic-fetch-calibrationrn`assshˆh}ro`h}rp`h}rq`h]rr`jn`asssh}rs`h}rt`h}ru`h]rv`jn`asssuUecl_iorw`}rx`(h}ry`h}rz`h]r{`Uros/melodic/ecl_liter|`assh }r}`h }r~`h}r`h]r€`Uros-melodic-ecl-ior`assshˆh}r‚`h}rƒ`h}r„`h]r…`j`asssh}r†`h}r‡`h}rˆ`h]r‰`j`asssuUrqt_service_callerrŠ`}r‹`(h}rŒ`h}r`h]rŽ`Uros/melodic/rqt_service_callerr`assh }r`h }r‘`h}r’`h]r“`Uros-melodic-rqt-service-callerr”`assshˆh}r•`h}r–`h}r—`h]r˜`j”`asssh}r™`h}rš`h}r›`h]rœ`j”`asssuUfsrobo_r_descriptionr`}rž`(h}rŸ`h}r `h]r¡`Uros/melodic/fsrobo_rr¢`assh }r£`h }r¤`h}r¥`h]r¦`U ros-melodic-fsrobo-r-descriptionr§`assshˆh}r¨`h}r©`h}rª`h]r«`j§`asssh}r¬`h}r­`h}r®`h]r¯`j§`asssuU flexbe_statesr°`}r±`(h}r²`h}r³`h]r´`Uros/melodic/flexberµ`assh }r¶`h }r·`h}r¸`h]r¹`Uros-melodic-flexbe-statesrº`assshˆh}r»`h}r¼`h}r½`h]r¾`jº`asssh}r¿`h}rÀ`h}rÁ`h]rÂ`jº`asssuUrobot_controllersrÃ`}rÄ`(h}rÅ`h}rÆ`h]rÇ`Uros/melodic/robot_controllersrÈ`assh }rÉ`h }rÊ`h}rË`h]rÌ`Uros-melodic-robot-controllersrÍ`assshˆh}rÎ`h}rÏ`h}rÐ`h]rÑ`jÍ`asssh}rÒ`h}rÓ`h}rÔ`h]rÕ`jÍ`asssuUphidgets_high_speed_encoderrÖ`}r×`(h}rØ`h}rÙ`h]rÚ`Uros/melodic/phidgets_driversrÛ`assh }rÜ`h }rÝ`h}rÞ`h]rß`U'ros-melodic-phidgets-high-speed-encoderrà`assshˆh}rá`h}râ`h}rã`h]rä`jà`asssh}rå`h}ræ`h}rç`h]rè`jà`asssuU desktop_fullré`}rê`(h}rë`h}rì`h]rí`Uros/melodic/metapackagesrî`assh }rï`h }rð`h}rñ`h]rò`Uros-melodic-desktop-fullró`assshˆh}rô`h}rõ`h}rö`h]r÷`jó`asssh}rø`h}rù`h}rú`h]rû`jó`asssuU warehouse_rosrü`}rý`(h}rþ`h}rÿ`h]raUros/melodic/warehouse_rosraassh }rah }rah}rah]raUros-melodic-warehouse-rosraassshˆh}rah}rah}r ah]r ajaasssh}r ah}r ah}r ah]rajaasssuUrosserial_windowsra}ra(h}rah}rah]raUros/melodic/rosserialraassh }rah }rah}rah]raUros-melodic-rosserial-windowsraassshˆh}rah}rah}rah]rajaasssh}rah}rah}r ah]r!ajaasssuU flexbe_inputr"a}r#a(h}r$ah}r%ah]r&aUros/melodic/flexber'aassh }r(ah }r)ah}r*ah]r+aUros-melodic-flexbe-inputr,aassshˆh}r-ah}r.ah}r/ah]r0aj,aasssh}r1ah}r2ah}r3ah]r4aj,aasssuUnav2d_navigatorr5a}r6a(h}r7ah}r8ah]r9aUros/melodic/navigation_2dr:aassh }r;ah }raUros-melodic-nav2d-navigatorr?aassshˆh}r@ah}rAah}rBah]rCaj?aasssh}rDah}rEah}rFah]rGaj?aasssuUhector_imu_attitude_to_tfrHa}rIa(h}rJah}rKah]rLaUros/melodic/hector_slamrMaassh }rNah }rOah}rPah]rQaU%ros-melodic-hector-imu-attitude-to-tfrRaassshˆh}rSah}rTah}rUah]rVajRaasssh}rWah}rXah}rYah]rZajRaasssuUgeometry_tutorialsr[a}r\a(h}r]ah}r^ah]r_aUros/melodic/geometry_tutorialsr`aassh }raah }rbah}rcah]rdaUros-melodic-geometry-tutorialsreaassshˆh}rfah}rgah}rhah]riajeaasssh}rjah}rkah}rlah]rmajeaasssuUros_speech_recognitionrna}roa(h}rpah}rqah]rraUros/melodic/jsk_3rdpartyrsaassh }rtah }ruah}rvah]rwaU"ros-melodic-ros-speech-recognitionrxaassshˆh}ryah}rzah}r{ah]r|ajxaasssh}r}ah}r~ah}rah]r€ajxaasssuUainstein_radar_msgsra}r‚a(h}rƒah}r„ah]r…aUros/melodic/ainstein_radarr†aassh }r‡ah }rˆah}r‰ah]rŠaUros-melodic-ainstein-radar-msgsr‹aassshˆh}rŒah}rah}rŽah]raj‹aasssh}rah}r‘ah}r’ah]r“aj‹aasssuU ecl_sigslotsr”a}r•a(h}r–ah}r—ah]r˜aUros/melodic/ecl_corer™aassh }ršah }r›ah}rœah]raUros-melodic-ecl-sigslotsržaassshˆh}rŸah}r ah}r¡ah]r¢ajžaasssh}r£ah}r¤ah}r¥ah]r¦ajžaasssuUopen_manipulator_descriptionr§a}r¨a(h}r©ah}rªah]r«aUros/melodic/open_manipulatorr¬aassh }r­ah }r®ah}r¯ah]r°aU(ros-melodic-open-manipulator-descriptionr±aassshˆh}r²ah}r³ah}r´ah]rµaj±aasssh}r¶ah}r·ah}r¸ah]r¹aj±aasssuUoctovisrºa}r»a(h}r¼ah}r½ah]r¾aUros/melodic/octomapr¿aassh }rÀah }rÁah}rÂah]rÃaUros-melodic-octovisrÄaassshˆh}rÅah}rÆah}rÇah]rÈajÄaasssh}rÉah}rÊah}rËah]rÌajÄaasssuUturtlebot3_navigationrÍa}rÎa(h}rÏah}rÐah]rÑaUros/melodic/turtlebot3rÒaassh }rÓah }rÔah}rÕah]rÖaU!ros-melodic-turtlebot3-navigationr×aassshˆh}rØah}rÙah}rÚah]rÛaj×aasssh}rÜah}rÝah}rÞah]rßaj×aasssuUswri_prefix_toolsràa}ráa(h}râah}rãah]räaUros/melodic/marti_commonråaassh }ræah }rçah}rèah]réaUros-melodic-swri-prefix-toolsrêaassshˆh}rëah}rìah}ríah]rîajêaasssh}rïah}rðah}rñah]ròajêaasssuUprosilica_gige_sdkróa}rôa(h}rõah}röah]r÷aUros/melodic/prosilica_gige_sdkrøaassh }rùah }rúah}rûah]rüaUros-melodic-prosilica-gige-sdkrýaassshˆh}rþah}rÿah}rbh]rbjýaasssh}rbh}rbh}rbh]rbjýaasssuUrslidarrb}rb(h}rbh}r bh]r bUros/melodic/robosenser bassh }r bh }r bh}rbh]rbUros-melodic-rslidarrbassshˆh}rbh}rbh}rbh]rbjbasssh}rbh}rbh}rbh]rbjbasssuUrostopicrb}rb(h}rbh}rbh]rbUros/melodic/ros_commrbassh }rbh }r bh}r!bh]r"bUros-melodic-rostopicr#bassshˆh}r$bh}r%bh}r&bh]r'bj#basssh}r(bh}r)bh}r*bh]r+bj#basssuUjackal_tutorialsr,b}r-b(h}r.bh}r/bh]r0bUros/melodic/jackalr1bassh }r2bh }r3bh}r4bh]r5bUros-melodic-jackal-tutorialsr6bassshˆh}r7bh}r8bh}r9bh]r:bj6basssh}r;bh}rbj6basssuUmap_organizer_msgsr?b}r@b(h}rAbh}rBbh]rCbUros/melodic/neonavigation_msgsrDbassh }rEbh }rFbh}rGbh]rHbUros-melodic-map-organizer-msgsrIbassshˆh}rJbh}rKbh}rLbh]rMbjIbasssh}rNbh}rObh}rPbh]rQbjIbasssuUinterval_intersectionrRb}rSb(h}rTbh}rUbh]rVbUros/melodic/calibrationrWbassh }rXbh }rYbh}rZbh]r[bU!ros-melodic-interval-intersectionr\bassshˆh}r]bh}r^bh}r_bh]r`bj\basssh}rabh}rbbh}rcbh]rdbj\basssuUhusky_descriptionreb}rfb(h}rgbh}rhbh]ribUros/melodic/huskyrjbassh }rkbh }rlbh}rmbh]rnbUros-melodic-husky-descriptionrobassshˆh}rpbh}rqbh}rrbh]rsbjobasssh}rtbh}rubh}rvbh]rwbjobasssuUpr2_controllersrxb}ryb(h}rzbh}r{bh]r|bUros/melodic/pr2_controllersr}bassh }r~bh }rbh}r€bh]rbUros-melodic-pr2-controllersr‚bassshˆh}rƒbh}r„bh}r…bh]r†bj‚basssh}r‡bh}rˆbh}r‰bh]rŠbj‚basssuUhector_sensors_descriptionr‹b}rŒb(h}rbh}rŽbh]rbUros/melodic/hector_modelsrbassh }r‘bh }r’bh}r“bh]r”bU&ros-melodic-hector-sensors-descriptionr•bassshˆh}r–bh}r—bh}r˜bh]r™bj•basssh}ršbh}r›bh}rœbh]rbj•basssuUlibreflexxestype2ržb}rŸb(h}r bh}r¡bh]r¢bUros/melodic/ipr_externr£bassh }r¤bh }r¥bh}r¦bh]r§bUros-melodic-libreflexxestype2r¨bassshˆh}r©bh}rªbh}r«bh]r¬bj¨basssh}r­bh}r®bh}r¯bh]r°bj¨basssuUnav_grid_pub_subr±b}r²b(h}r³bh}r´bh]rµbUros/melodic/robot_navigationr¶bassh }r·bh }r¸bh}r¹bh]rºbUros-melodic-nav-grid-pub-subr»bassshˆh}r¼bh}r½bh}r¾bh]r¿bj»basssh}rÀbh}rÁbh}rÂbh]rÃbj»basssuUneonavigation_commonrÄb}rÅb(h}rÆbh}rÇbh]rÈbUros/melodic/neonavigationrÉbassh }rÊbh }rËbh}rÌbh]rÍbU ros-melodic-neonavigation-commonrÎbassshˆh}rÏbh}rÐbh}rÑbh]rÒbjÎbasssh}rÓbh}rÔbh}rÕbh]rÖbjÎbasssuU message_relayr×b}rØb(h}rÙbh}rÚbh]rÛbU!ros/melodic/cpr_multimaster_toolsrÜbassh }rÝbh }rÞbh}rßbh]ràbUros-melodic-message-relayrábassshˆh}râbh}rãbh}räbh]råbjábasssh}ræbh}rçbh}rèbh]rébjábasssuUrdlrêb}rëb(h}rìbh}ríbh]rîbUros/melodic/rdlrïbassh }rðbh }rñbh}ròbh]róbUros-melodic-rdlrôbassshˆh}rõbh}röbh}r÷bh]røbjôbasssh}rùbh}rúbh}rûbh]rübjôbasssuUtrajectory_tracker_msgsrýb}rþb(h}rÿbh}rch]rcUros/melodic/neonavigation_msgsrcassh }rch }rch}rch]rcU#ros-melodic-trajectory-tracker-msgsrcassshˆh}rch}r ch}r ch]r cjcasssh}r ch}r ch}rch]rcjcasssuUsparse_bundle_adjustmentrc}rc(h}rch}rch]rcU$ros/melodic/sparse_bundle_adjustmentrcassh }rch }rch}rch]rcU$ros-melodic-sparse-bundle-adjustmentrcassshˆh}rch}rch}rch]rcjcasssh}rch}r ch}r!ch]r"cjcasssuUjoint_trajectory_generatorr#c}r$c(h}r%ch}r&ch]r'cUros/melodic/pr2_common_actionsr(cassh }r)ch }r*ch}r+ch]r,cU&ros-melodic-joint-trajectory-generatorr-cassshˆh}r.ch}r/ch}r0ch]r1cj-casssh}r2ch}r3ch}r4ch]r5cj-casssuUhector_map_toolsr6c}r7c(h}r8ch}r9ch]r:cUros/melodic/hector_slamr;cassh }rch]r?cUros-melodic-hector-map-toolsr@cassshˆh}rAch}rBch}rCch]rDcj@casssh}rEch}rFch}rGch]rHcj@casssuUcob_map_accessibility_analysisrIc}rJc(h}rKch}rLch]rMcUros/melodic/cob_navigationrNcassh }rOch }rPch}rQch]rRcU*ros-melodic-cob-map-accessibility-analysisrScassshˆh}rTch}rUch}rVch]rWcjScasssh}rXch}rYch}rZch]r[cjScasssuUros_control_boilerplater\c}r]c(h}r^ch}r_ch]r`cU#ros/melodic/ros_control_boilerplateracassh }rbch }rcch}rdch]recU#ros-melodic-ros-control-boilerplaterfcassshˆh}rgch}rhch}rich]rjcjfcasssh}rkch}rlch}rmch]rncjfcasssuUmd49_serialportroc}rpc(h}rqch}rrch]rscU ros/melodic/md49_base_controllerrtcassh }ruch }rvch}rwch]rxcUros-melodic-md49-serialportrycassshˆh}rzch}r{ch}r|ch]r}cjycasssh}r~ch}rch}r€ch]rcjycasssuUuuv_gazebo_worldsr‚c}rƒc(h}r„ch}r…ch]r†cUros/melodic/uuv_simulatorr‡cassh }rˆch }r‰ch}rŠch]r‹cUros-melodic-uuv-gazebo-worldsrŒcassshˆh}rch}rŽch}rch]rcjŒcasssh}r‘ch}r’ch}r“ch]r”cjŒcasssuUjsk_recognition_utilsr•c}r–c(h}r—ch}r˜ch]r™cUros/melodic/jsk_recognitionršcassh }r›ch }rœch}rch]ržcU!ros-melodic-jsk-recognition-utilsrŸcassshˆh}r ch}r¡ch}r¢ch]r£cjŸcasssh}r¤ch}r¥ch}r¦ch]r§cjŸcasssuUmove_base_flexr¨c}r©c(h}rªch}r«ch]r¬cUros/melodic/move_base_flexr­cassh }r®ch }r¯ch}r°ch]r±cUros-melodic-move-base-flexr²cassshˆh}r³ch}r´ch}rµch]r¶cj²casssh}r·ch}r¸ch}r¹ch]rºcj²casssuUhector_gazebo_thermal_camerar»c}r¼c(h}r½ch}r¾ch]r¿cUros/melodic/hector_gazeborÀcassh }rÁch }rÂch}rÃch]rÄcU(ros-melodic-hector-gazebo-thermal-camerarÅcassshˆh}rÆch}rÇch}rÈch]rÉcjÅcasssh}rÊch}rËch}rÌch]rÍcjÅcasssuUpr2_tuck_arms_actionrÎc}rÏc(h}rÐch}rÑch]rÒcUros/melodic/pr2_common_actionsrÓcassh }rÔch }rÕch}rÖch]r×cU ros-melodic-pr2-tuck-arms-actionrØcassshˆh}rÙch}rÚch}rÛch]rÜcjØcasssh}rÝch}rÞch}rßch]ràcjØcasssuU phidgets_ikrác}râc(h}rãch}räch]råcUros/melodic/phidgets_driversræcassh }rçch }rèch}réch]rêcUros-melodic-phidgets-ikrëcassshˆh}rìch}rích}rîch]rïcjëcasssh}rðch}rñch}ròch]rócjëcasssuUmcl_3dlrôc}rõc(h}röch}r÷ch]røcUros/melodic/mcl_3dlrùcassh }rúch }rûch}rüch]rýcUros-melodic-mcl-3dlrþcassshˆh}rÿch}rdh}rdh]rdjþcasssh}rdh}rdh}rdh]rdjþcasssuU husky_baserd}rd(h}r dh}r dh]r dUros/melodic/huskyr dassh }r dh }rdh}rdh]rdUros-melodic-husky-baserdassshˆh}rdh}rdh}rdh]rdjdasssh}rdh}rdh}rdh]rdjdasssuUrqt_robot_pluginsrd}rd(h}rdh}rdh]rdUros/melodic/rqt_robot_pluginsrdassh }r dh }r!dh}r"dh]r#dUros-melodic-rqt-robot-pluginsr$dassshˆh}r%dh}r&dh}r'dh]r(dj$dasssh}r)dh}r*dh}r+dh]r,dj$dasssuU stage_rosr-d}r.d(h}r/dh}r0dh]r1dUros/melodic/stage_rosr2dassh }r3dh }r4dh}r5dh]r6dUros-melodic-stage-rosr7dassshˆh}r8dh}r9dh}r:dh]r;dj7dasssh}rdh]r?dj7dasssuUrqt_robot_steeringr@d}rAd(h}rBdh}rCdh]rDdUros/melodic/rqt_robot_steeringrEdassh }rFdh }rGdh}rHdh]rIdUros-melodic-rqt-robot-steeringrJdassshˆh}rKdh}rLdh}rMdh]rNdjJdasssh}rOdh}rPdh}rQdh]rRdjJdasssuUgenpyrSd}rTd(h}rUdh}rVdh]rWdUros/melodic/genpyrXdassh }rYdh }rZdh}r[dh]r\dUros-melodic-genpyr]dassshˆh}r^dh}r_dh}r`dh]radj]dasssh}rbdh}rcdh}rddh]redj]dasssuUrotors_controlrfd}rgd(h}rhdh}ridh]rjdUros/melodic/rotors_simulatorrkdassh }rldh }rmdh}rndh]rodUros-melodic-rotors-controlrpdassshˆh}rqdh}rrdh}rsdh]rtdjpdasssh}rudh}rvdh}rwdh]rxdjpdasssuU jsk_pcl_rosryd}rzd(h}r{dh}r|dh]r}dUros/melodic/jsk_recognitionr~dassh }rdh }r€dh}rdh]r‚dUros-melodic-jsk-pcl-rosrƒdassshˆh}r„dh}r…dh}r†dh]r‡djƒdasssh}rˆdh}r‰dh}rŠdh]r‹djƒdasssuU settlerlibrŒd}rd(h}rŽdh}rdh]rdUros/melodic/calibrationr‘dassh }r’dh }r“dh}r”dh]r•dUros-melodic-settlerlibr–dassshˆh}r—dh}r˜dh}r™dh]ršdj–dasssh}r›dh}rœdh}rdh]rždj–dasssuU sbg_driverrŸd}r d(h}r¡dh}r¢dh]r£dUros/melodic/sbg_driverr¤dassh }r¥dh }r¦dh}r§dh]r¨dUros-melodic-sbg-driverr©dassshˆh}rªdh}r«dh}r¬dh]r­dj©dasssh}r®dh}r¯dh}r°dh]r±dj©dasssuU hector_gazebor²d}r³d(h}r´dh}rµdh]r¶dUros/melodic/hector_gazebor·dassh }r¸dh }r¹dh}rºdh]r»dUros-melodic-hector-gazebor¼dassshˆh}r½dh}r¾dh}r¿dh]rÀdj¼dasssh}rÁdh}rÂdh}rÃdh]rÄdj¼dasssuUimu_processorsrÅd}rÆd(h}rÇdh}rÈdh]rÉdUros/melodic/imu_pipelinerÊdassh }rËdh }rÌdh}rÍdh]rÎdUros-melodic-imu-processorsrÏdassshˆh}rÐdh}rÑdh}rÒdh]rÓdjÏdasssh}rÔdh}rÕdh}rÖdh]r×djÏdasssuUdccomms_ros_msgsrØd}rÙd(h}rÚdh}rÛdh]rÜdUros/melodic/dccomms_ros_pkgsrÝdassh }rÞdh }rßdh}ràdh]rádUros-melodic-dccomms-ros-msgsrâdassshˆh}rãdh}rädh}rådh]rædjâdasssh}rçdh}rèdh}rédh]rêdjâdasssuUqb_device_driverrëd}rìd(h}rídh}rîdh]rïdUros/melodic/qb_devicerðdassh }rñdh }ròdh}ródh]rôdUros-melodic-qb-device-driverrõdassshˆh}rödh}r÷dh}rødh]rùdjõdasssh}rúdh}rûdh}rüdh]rýdjõdasssuU rplidar_rosrþd}rÿd(h}reh}reh]reUros/melodic/rplidar_rosreassh }reh }reh}reh]reUros-melodic-rplidar-rosreassshˆh}r eh}r eh}r eh]r ejeasssh}r eh}reh}reh]rejeasssuU vision_vispre}re(h}reh}reh]reUros/melodic/vision_vispreassh }reh }reh}reh]reUros-melodic-vision-vispreassshˆh}reh}reh}reh]rejeasssh}r eh}r!eh}r"eh]r#ejeasssuUabb_irb2400_moveit_pluginsr$e}r%e(h}r&eh}r'eh]r(eUros/melodic/abbr)eassh }r*eh }r+eh}r,eh]r-eU&ros-melodic-abb-irb2400-moveit-pluginsr.eassshˆh}r/eh}r0eh}r1eh]r2ej.easssh}r3eh}r4eh}r5eh]r6ej.easssuUrc_visard_descriptionr7e}r8e(h}r9eh}r:eh]r;eUros/melodic/rc_visardreh}r?eh]r@eU!ros-melodic-rc-visard-descriptionrAeassshˆh}rBeh}rCeh}rDeh]rEejAeasssh}rFeh}rGeh}rHeh]rIejAeasssuUpr2_mechanism_msgsrJe}rKe(h}rLeh}rMeh]rNeUros/melodic/pr2_mechanism_msgsrOeassh }rPeh }rQeh}rReh]rSeUros-melodic-pr2-mechanism-msgsrTeassshˆh}rUeh}rVeh}rWeh]rXejTeasssh}rYeh}rZeh}r[eh]r\ejTeasssuUslicr]e}r^e(h}r_eh}r`eh]raeUros/melodic/jsk_3rdpartyrbeassh }rceh }rdeh}reeh]rfeUros-melodic-slicrgeassshˆh}rheh}rieh}rjeh]rkejgeasssh}rleh}rmeh}rneh]roejgeasssuUnovatel_gps_driverrpe}rqe(h}rreh}rseh]rteUros/melodic/novatel_gps_driverrueassh }rveh }rweh}rxeh]ryeUros-melodic-novatel-gps-driverrzeassshˆh}r{eh}r|eh}r}eh]r~ejzeasssh}reh}r€eh}reh]r‚ejzeasssuUrocon_semantic_versionrƒe}r„e(h}r…eh}r†eh]r‡eUros/melodic/rocon_toolsrˆeassh }r‰eh }rŠeh}r‹eh]rŒeU"ros-melodic-rocon-semantic-versionreassshˆh}rŽeh}reh}reh]r‘ejeasssh}r’eh}r“eh}r”eh]r•ejeasssuUsick_safetyscannersr–e}r—e(h}r˜eh}r™eh]ršeUros/melodic/sick_safetyscannersr›eassh }rœeh }reh}ržeh]rŸeUros-melodic-sick-safetyscannersr eassshˆh}r¡eh}r¢eh}r£eh]r¤ej easssh}r¥eh}r¦eh}r§eh]r¨ej easssuUfetch_depth_layerr©e}rªe(h}r«eh}r¬eh]r­eUros/melodic/fetch_rosr®eassh }r¯eh }r°eh}r±eh]r²eUros-melodic-fetch-depth-layerr³eassshˆh}r´eh}rµeh}r¶eh]r·ej³easssh}r¸eh}r¹eh}rºeh]r»ej³easssuUmoveit_experimentalr¼e}r½e(h}r¾eh}r¿eh]rÀeUros/melodic/moveitrÁeassh }rÂeh }rÃeh}rÄeh]rÅeUros-melodic-moveit-experimentalrÆeassshˆh}rÇeh}rÈeh}rÉeh]rÊejÆeasssh}rËeh}rÌeh}rÍeh]rÎejÆeasssuUserialrÏe}rÐe(h}rÑeh}rÒeh]rÓeUros/melodic/serialrÔeassh }rÕeh }rÖeh}r×eh]rØeUros-melodic-serialrÙeassshˆh}rÚeh}rÛeh}rÜeh]rÝejÙeasssh}rÞeh}rßeh}ràeh]ráejÙeasssuU hebi_cpp_apirâe}rãe(h}räeh}råeh]ræeUros/melodic/hebi_cpp_api_rosrçeassh }rèeh }réeh}rêeh]rëeUros-melodic-hebi-cpp-apirìeassshˆh}ríeh}rîeh}rïeh]rðejìeasssh}rñeh}ròeh}róeh]rôejìeasssuUainstein_radarrõe}röe(h}r÷eh}røeh]rùeUros/melodic/ainstein_radarrúeassh }rûeh }rüeh}rýeh]rþeUros-melodic-ainstein-radarrÿeassshˆh}rfh}rfh}rfh]rfjÿeasssh}rfh}rfh}rfh]rfjÿeasssuUpacmod3rf}r f(h}r fh}r fh]r fUros/melodic/pacmod3r fassh }rfh }rfh}rfh]rfUros-melodic-pacmod3rfassshˆh}rfh}rfh}rfh]rfjfasssh}rfh}rfh}rfh]rfjfasssuU trac_ik_librf}rf(h}rfh}rfh]rfUros/melodic/trac_ikr fassh }r!fh }r"fh}r#fh]r$fUros-melodic-trac-ik-libr%fassshˆh}r&fh}r'fh}r(fh]r)fj%fasssh}r*fh}r+fh}r,fh]r-fj%fasssuUhector_geotiff_pluginsr.f}r/f(h}r0fh}r1fh]r2fUros/melodic/hector_slamr3fassh }r4fh }r5fh}r6fh]r7fU"ros-melodic-hector-geotiff-pluginsr8fassshˆh}r9fh}r:fh}r;fh]rfh}r?fh]r@fj8fasssuUfile_managementrAf}rBf(h}rCfh}rDfh]rEfUros/melodic/cloudwatch_commonrFfassh }rGfh }rHfh}rIfh]rJfUros-melodic-file-managementrKfassshˆh}rLfh}rMfh}rNfh]rOfjKfasssh}rPfh}rQfh}rRfh]rSfjKfasssuUcob_object_detection_visualizerrTf}rUf(h}rVfh}rWfh]rXfU!ros/melodic/cob_perception_commonrYfassh }rZfh }r[fh}r\fh]r]fU+ros-melodic-cob-object-detection-visualizerr^fassshˆh}r_fh}r`fh}rafh]rbfj^fasssh}rcfh}rdfh}refh]rffj^fasssuUcloudwatch_logs_commonrgf}rhf(h}rifh}rjfh]rkfUros/melodic/cloudwatch_commonrlfassh }rmfh }rnfh}rofh]rpfU"ros-melodic-cloudwatch-logs-commonrqfassshˆh}rrfh}rsfh}rtfh]rufjqfasssh}rvfh}rwfh}rxfh]ryfjqfasssuUobj_to_pointcloudrzf}r{f(h}r|fh}r}fh]r~fUros/melodic/neonavigationrfassh }r€fh }rfh}r‚fh]rƒfUros-melodic-obj-to-pointcloudr„fassshˆh}r…fh}r†fh}r‡fh]rˆfj„fasssh}r‰fh}rŠfh}r‹fh]rŒfj„fasssuU ecl_consolerf}rŽf(h}rfh}rfh]r‘fUros/melodic/ecl_liter’fassh }r“fh }r”fh}r•fh]r–fUros-melodic-ecl-consoler—fassshˆh}r˜fh}r™fh}ršfh]r›fj—fasssh}rœfh}rfh}ržfh]rŸfj—fasssuUpr2_gazebo_pluginsr f}r¡f(h}r¢fh}r£fh]r¤fUros/melodic/pr2_simulatorr¥fassh }r¦fh }r§fh}r¨fh]r©fUros-melodic-pr2-gazebo-pluginsrªfassshˆh}r«fh}r¬fh}r­fh]r®fjªfasssh}r¯fh}r°fh}r±fh]r²fjªfasssuU rqt_moveitr³f}r´f(h}rµfh}r¶fh]r·fUros/melodic/rqt_moveitr¸fassh }r¹fh }rºfh}r»fh]r¼fUros-melodic-rqt-moveitr½fassshˆh}r¾fh}r¿fh}rÀfh]rÁfj½fasssh}rÂfh}rÃfh}rÄfh]rÅfj½fasssuU openni_camerarÆf}rÇf(h}rÈfh}rÉfh]rÊfUros/melodic/openni_camerarËfassh }rÌfh }rÍfh}rÎfh]rÏfUros-melodic-openni-camerarÐfassshˆh}rÑfh}rÒfh}rÓfh]rÔfjÐfasssh}rÕfh}rÖfh}r×fh]rØfjÐfasssuUrobotrÙf}rÚf(h}rÛfh}rÜfh]rÝfUros/melodic/metapackagesrÞfassh }rßfh }ràfh}ráfh]râfUros-melodic-robotrãfassshˆh}räfh}råfh}ræfh]rçfjãfasssh}rèfh}réfh}rêfh]rëfjãfasssuUfind_object_2drìf}ríf(h}rîfh}rïfh]rðfUros/melodic/find_object_2drñfassh }ròfh }rófh}rôfh]rõfUros-melodic-find-object-2dröfassshˆh}r÷fh}røfh}rùfh]rúfjöfasssh}rûfh}rüfh}rýfh]rþfjöfasssuUtheora_image_transportrÿf}rg(h}rgh}rgh]rgU#ros/melodic/image_transport_pluginsrgassh }rgh }rgh}rgh]rgU"ros-melodic-theora-image-transportr gassshˆh}r gh}r gh}r gh]r gj gasssh}rgh}rgh}rgh]rgj gasssuU easy_markersrg}rg(h}rgh}rgh]rgUros/melodic/wu_ros_toolsrgassh }rgh }rgh}rgh]rgUros-melodic-easy-markersrgassshˆh}rgh}rgh}rgh]r gjgasssh}r!gh}r"gh}r#gh]r$gjgasssuU locomotorr%g}r&g(h}r'gh}r(gh]r)gUros/melodic/robot_navigationr*gassh }r+gh }r,gh}r-gh]r.gUros-melodic-locomotorr/gassshˆh}r0gh}r1gh}r2gh]r3gj/gasssh}r4gh}r5gh}r6gh]r7gj/gasssuU unique_idr8g}r9g(h}r:gh}r;gh]rgh }r?gh}r@gh]rAgUros-melodic-unique-idrBgassshˆh}rCgh}rDgh}rEgh]rFgjBgasssh}rGgh}rHgh}rIgh]rJgjBgasssuUpr2_mechanism_modelrKg}rLg(h}rMgh}rNgh]rOgUros/melodic/pr2_mechanismrPgassh }rQgh }rRgh}rSgh]rTgUros-melodic-pr2-mechanism-modelrUgassshˆh}rVgh}rWgh}rXgh]rYgjUgasssh}rZgh}r[gh}r\gh]r]gjUgasssuUieee80211_channelsr^g}r_g(h}r`gh}ragh]rbgUros/melodic/linux_networkingrcgassh }rdgh }regh}rfgh]rggUros-melodic-ieee80211-channelsrhgassshˆh}righ}rjgh}rkgh]rlgjhgasssh}rmgh}rngh}rogh]rpgjhgasssuU rocon_launchrqg}rrg(h}rsgh}rtgh]rugUros/melodic/rocon_toolsrvgassh }rwgh }rxgh}rygh]rzgUros-melodic-rocon-launchr{gassshˆh}r|gh}r}gh}r~gh]rgj{gasssh}r€gh}rgh}r‚gh]rƒgj{gasssuU mongodb_storer„g}r…g(h}r†gh}r‡gh]rˆgUros/melodic/mongodb_storer‰gassh }rŠgh }r‹gh}rŒgh]rgUros-melodic-mongodb-storerŽgassshˆh}rgh}rgh}r‘gh]r’gjŽgasssh}r“gh}r”gh}r•gh]r–gjŽgasssuU dataflow_liter—g}r˜g(h}r™gh}ršgh]r›gUros/melodic/cloudwatch_commonrœgassh }rgh }ržgh}rŸgh]r gUros-melodic-dataflow-liter¡gassshˆh}r¢gh}r£gh}r¤gh]r¥gj¡gasssh}r¦gh}r§gh}r¨gh]r©gj¡gasssuUocean_battery_driverrªg}r«g(h}r¬gh}r­gh]r®gUros/melodic/pr2_power_driversr¯gassh }r°gh }r±gh}r²gh]r³gU ros-melodic-ocean-battery-driverr´gassshˆh}rµgh}r¶gh}r·gh]r¸gj´gasssh}r¹gh}rºgh}r»gh]r¼gj´gasssuUfake_localizationr½g}r¾g(h}r¿gh}rÀgh]rÁgUros/melodic/navigationrÂgassh }rÃgh }rÄgh}rÅgh]rÆgUros-melodic-fake-localizationrÇgassshˆh}rÈgh}rÉgh}rÊgh]rËgjÇgasssh}rÌgh}rÍgh}rÎgh]rÏgjÇgasssuUqt_guirÐg}rÑg(h}rÒgh}rÓgh]rÔgUros/melodic/qt_gui_corerÕgassh }rÖgh }r×gh}rØgh]rÙgUros-melodic-qt-guirÚgassshˆh}rÛgh}rÜgh}rÝgh]rÞgjÚgasssh}rßgh}ràgh}rágh]râgjÚgasssuUhostapd_access_pointrãg}räg(h}rågh}rægh]rçgUros/melodic/linux_networkingrègassh }régh }rêgh}rëgh]rìgU ros-melodic-hostapd-access-pointrígassshˆh}rîgh}rïgh}rðgh]rñgjígasssh}rògh}rógh}rôgh]rõgjígasssuUexotica_examplesrög}r÷g(h}røgh}rùgh]rúgUros/melodic/exoticarûgassh }rügh }rýgh}rþgh]rÿgUros-melodic-exotica-examplesrhassshˆh}rhh}rhh}rhh]rhjhasssh}rhh}rhh}rhh]rhjhasssuUexotica_pythonr h}r h(h}r hh}r hh]r hUros/melodic/exoticarhassh }rhh }rhh}rhh]rhUros-melodic-exotica-pythonrhassshˆh}rhh}rhh}rhh]rhjhasssh}rhh}rhh}rhh]rhjhasssuU moveit_simple_controller_managerrh}rh(h}rhh}rhh]r hUros/melodic/moveitr!hassh }r"hh }r#hh}r$hh]r%hU,ros-melodic-moveit-simple-controller-managerr&hassshˆh}r'hh}r(hh}r)hh]r*hj&hasssh}r+hh}r,hh}r-hh]r.hj&hasssuUcheckerboard_detectorr/h}r0h(h}r1hh}r2hh]r3hUros/melodic/jsk_recognitionr4hassh }r5hh }r6hh}r7hh]r8hU!ros-melodic-checkerboard-detectorr9hassshˆh}r:hh}r;hh}rhh}r?hh}r@hh]rAhj9hasssuUyocs_math_toolkitrBh}rCh(h}rDhh}rEhh]rFhUros/melodic/yujin_ocsrGhassh }rHhh }rIhh}rJhh]rKhUros-melodic-yocs-math-toolkitrLhassshˆh}rMhh}rNhh}rOhh]rPhjLhasssh}rQhh}rRhh}rShh]rThjLhasssuUwamv_descriptionrUh}rVh(h}rWhh}rXhh]rYhUros/melodic/vrxrZhassh }r[hh }r\hh}r]hh]r^hUros-melodic-wamv-descriptionr_hassshˆh}r`hh}rahh}rbhh]rchj_hasssh}rdhh}rehh}rfhh]rghj_hasssuUopen_manipulator_teleoprhh}rih(h}rjhh}rkhh]rlhUros/melodic/open_manipulatorrmhassh }rnhh }rohh}rphh]rqhU#ros-melodic-open-manipulator-teleoprrhassshˆh}rshh}rthh}ruhh]rvhjrhasssh}rwhh}rxhh}ryhh]rzhjrhasssuU dbw_fca_canr{h}r|h(h}r}hh}r~hh]rhUros/melodic/dbw_fca_rosr€hassh }rhh }r‚hh}rƒhh]r„hUros-melodic-dbw-fca-canr…hassshˆh}r†hh}r‡hh}rˆhh]r‰hj…hasssh}rŠhh}r‹hh}rŒhh]rhj…hasssuUgrpcrŽh}rh(h}rhh}r‘hh]r’hUros/melodic/grpcr“hassh }r”hh }r•hh}r–hh]r—hUros-melodic-grpcr˜hassshˆh}r™hh}ršhh}r›hh]rœhj˜hasssh}rhh}ržhh}rŸhh]r hj˜hasssuUlex_noder¡h}r¢h(h}r£hh}r¤hh]r¥hUros/melodic/lex_noder¦hassh }r§hh }r¨hh}r©hh]rªhUros-melodic-lex-noder«hassshˆh}r¬hh}r­hh}r®hh]r¯hj«hasssh}r°hh}r±hh}r²hh]r³hj«hasssuUecl_mplr´h}rµh(h}r¶hh}r·hh]r¸hUros/melodic/ecl_corer¹hassh }rºhh }r»hh}r¼hh]r½hUros-melodic-ecl-mplr¾hassshˆh}r¿hh}rÀhh}rÁhh]rÂhj¾hasssh}rÃhh}rÄhh}rÅhh]rÆhj¾hasssuUecl_manipulatorsrÇh}rÈh(h}rÉhh}rÊhh]rËhUros/melodic/ecl_manipulationrÌhassh }rÍhh }rÎhh}rÏhh]rÐhUros-melodic-ecl-manipulatorsrÑhassshˆh}rÒhh}rÓhh}rÔhh]rÕhjÑhasssh}rÖhh}r×hh}rØhh]rÙhjÑhasssuUrtabmaprÚh}rÛh(h}rÜhh}rÝhh]rÞhUros/melodic/rtabmaprßhassh }ràhh }ráhh}râhh]rãhUros-melodic-rtabmaprähassshˆh}råhh}ræhh}rçhh]rèhjähasssh}réhh}rêhh}rëhh]rìhjähasssuUdiagnostic_msgsríh}rîh(h}rïhh}rðhh]rñhUros/melodic/common_msgsròhassh }róhh }rôhh}rõhh]röhUros-melodic-diagnostic-msgsr÷hassshˆh}røhh}rùhh}rúhh]rûhj÷hasssh}rühh}rýhh}rþhh]rÿhj÷hasssuUrqt_robot_dashboardri}ri(h}rih}rih]riUros/melodic/rqt_robot_dashboardriassh }rih }rih}rih]r iUros-melodic-rqt-robot-dashboardr iassshˆh}r ih}r ih}r ih]rij iasssh}rih}rih}rih]rij iasssuU pose_followerri}ri(h}rih}rih]riU#ros/melodic/navigation_experimentalriassh }rih }rih}rih]riUros-melodic-pose-followerriassshˆh}rih}rih}r ih]r!ijiasssh}r"ih}r#ih}r$ih]r%ijiasssuUcob_base_velocity_smootherr&i}r'i(h}r(ih}r)ih]r*iUros/melodic/cob_controlr+iassh }r,ih }r-ih}r.ih]r/iU&ros-melodic-cob-base-velocity-smootherr0iassshˆh}r1ih}r2ih}r3ih]r4ij0iasssh}r5ih}r6ih}r7ih]r8ij0iasssuU julius_rosr9i}r:i(h}r;ih}riassh }r?ih }r@ih}rAih]rBiUros-melodic-julius-rosrCiassshˆh}rDih}rEih}rFih]rGijCiasssh}rHih}rIih}rJih]rKijCiasssuUddwrt_access_pointrLi}rMi(h}rNih}rOih]rPiUros/melodic/linux_networkingrQiassh }rRih }rSih}rTih]rUiUros-melodic-ddwrt-access-pointrViassshˆh}rWih}rXih}rYih]rZijViasssh}r[ih}r\ih}r]ih]r^ijViasssuUsafety_limiterr_i}r`i(h}raih}rbih]rciUros/melodic/neonavigationrdiassh }reih }rfih}rgih]rhiUros-melodic-safety-limiterriiassshˆh}rjih}rkih}rlih]rmijiiasssh}rnih}roih}rpih]rqijiiasssuU"industrial_robot_status_controllerrri}rsi(h}rtih}ruih]rviU.ros/melodic/industrial_robot_status_controllerrwiassh }rxih }ryih}rzih]r{iU.ros-melodic-industrial-robot-status-controllerr|iassshˆh}r}ih}r~ih}rih]r€ij|iasssh}rih}r‚ih}rƒih]r„ij|iasssuU self_testr…i}r†i(h}r‡ih}rˆih]r‰iUros/melodic/diagnosticsrŠiassh }r‹ih }rŒih}rih]rŽiUros-melodic-self-testriassshˆh}rih}r‘ih}r’ih]r“ijiasssh}r”ih}r•ih}r–ih]r—ijiasssuUpr2_navigation_self_filterr˜i}r™i(h}rših}r›ih]rœiUros/melodic/pr2_navigationriassh }ržih }rŸih}r ih]r¡iU&ros-melodic-pr2-navigation-self-filterr¢iassshˆh}r£ih}r¤ih}r¥ih]r¦ij¢iasssh}r§ih}r¨ih}r©ih]rªij¢iasssuUxpp_visr«i}r¬i(h}r­ih}r®ih]r¯iUros/melodic/xppr°iassh }r±ih }r²ih}r³ih]r´iUros-melodic-xpp-visrµiassshˆh}r¶ih}r·ih}r¸ih]r¹ijµiasssh}rºih}r»ih}r¼ih]r½ijµiasssuUmoveit_fake_controller_managerr¾i}r¿i(h}rÀih}rÁih]rÂiUros/melodic/moveitrÃiassh }rÄih }rÅih}rÆih]rÇiU*ros-melodic-moveit-fake-controller-managerrÈiassshˆh}rÉih}rÊih}rËih]rÌijÈiasssh}rÍih}rÎih}rÏih]rÐijÈiasssuU slam_toolboxrÑi}rÒi(h}rÓih}rÔih]rÕiUros/melodic/slam_toolboxrÖiassh }r×ih }rØih}rÙih]rÚiUros-melodic-slam-toolboxrÛiassshˆh}rÜih}rÝih}rÞih]rßijÛiasssh}ràih}ráih}râih]rãijÛiasssuUrosserial_serverräi}råi(h}ræih}rçih]rèiUros/melodic/rosserialréiassh }rêih }rëih}rìih]ríiUros-melodic-rosserial-serverrîiassshˆh}rïih}rðih}rñih]ròijîiasssh}róih}rôih}rõih]röijîiasssuUtf2_msgsr÷i}røi(h}rùih}rúih]rûiUros/melodic/geometry2rüiassh }rýih }rþih}rÿih]rjUros-melodic-tf2-msgsrjassshˆh}rjh}rjh}rjh]rjjjasssh}rjh}rjh}rjh]r jjjasssuU mrpt_slamr j}r j(h}r jh}r jh]rjUros/melodic/mrpt_slamrjassh }rjh }rjh}rjh]rjUros-melodic-mrpt-slamrjassshˆh}rjh}rjh}rjh]rjjjasssh}rjh}rjh}rjh]rjjjasssuUteraranger_arrayrj}rj(h}rjh}r jh]r!jUros/melodic/teraranger_arrayr"jassh }r#jh }r$jh}r%jh]r&jUros-melodic-teraranger-arrayr'jassshˆh}r(jh}r)jh}r*jh]r+jj'jasssh}r,jh}r-jh}r.jh]r/jj'jasssuUjoint_trajectory_action_toolsr0j}r1j(h}r2jh}r3jh]r4jUros/melodic/pr2_common_actionsr5jassh }r6jh }r7jh}r8jh]r9jU)ros-melodic-joint-trajectory-action-toolsr:jassshˆh}r;jh}rjj:jasssh}r?jh}r@jh}rAjh]rBjj:jasssuU pilz_msgsrCj}rDj(h}rEjh}rFjh]rGjU"ros/melodic/pilz_industrial_motionrHjassh }rIjh }rJjh}rKjh]rLjUros-melodic-pilz-msgsrMjassshˆh}rNjh}rOjh}rPjh]rQjjMjasssh}rRjh}rSjh}rTjh]rUjjMjasssuUcob_gazebo_objectsrVj}rWj(h}rXjh}rYjh]rZjUros/melodic/cob_simulationr[jassh }r\jh }r]jh}r^jh]r_jUros-melodic-cob-gazebo-objectsr`jassshˆh}rajh}rbjh}rcjh]rdjj`jasssh}rejh}rfjh}rgjh]rhjj`jasssuU cis_camerarij}rjj(h}rkjh}rljh]rmjUros/melodic/cis_camerarnjassh }rojh }rpjh}rqjh]rrjUros-melodic-cis-camerarsjassshˆh}rtjh}rujh}rvjh]rwjjsjasssh}rxjh}ryjh}rzjh]r{jjsjasssuUeclr|j}r}j(h}r~jh}rjh]r€jUros/melodic/ecl_manipulationrjassh }r‚jh }rƒjh}r„jh]r…jUros-melodic-eclr†jassshˆh}r‡jh}rˆjh}r‰jh]rŠjj†jasssh}r‹jh}rŒjh}rjh]rŽjj†jasssuUtoposens_driverrj}rj(h}r‘jh}r’jh]r“jUros/melodic/toposensr”jassh }r•jh }r–jh}r—jh]r˜jUros-melodic-toposens-driverr™jassshˆh}ršjh}r›jh}rœjh]rjj™jasssh}ržjh}rŸjh}r jh]r¡jj™jasssuU turtle_tfr¢j}r£j(h}r¤jh}r¥jh]r¦jUros/melodic/geometry_tutorialsr§jassh }r¨jh }r©jh}rªjh]r«jUros-melodic-turtle-tfr¬jassshˆh}r­jh}r®jh}r¯jh]r°jj¬jasssh}r±jh}r²jh}r³jh]r´jj¬jasssuU audio_playrµj}r¶j(h}r·jh}r¸jh]r¹jUros/melodic/audio_commonrºjassh }r»jh }r¼jh}r½jh]r¾jUros-melodic-audio-playr¿jassshˆh}rÀjh}rÁjh}rÂjh]rÃjj¿jasssh}rÄjh}rÅjh}rÆjh]rÇjj¿jasssuUmoveit_resourcesrÈj}rÉj(h}rÊjh}rËjh]rÌjUros/melodic/moveit_resourcesrÍjassh }rÎjh }rÏjh}rÐjh]rÑjUros-melodic-moveit-resourcesrÒjassshˆh}rÓjh}rÔjh}rÕjh]rÖjjÒjasssh}r×jh}rØjh}rÙjh]rÚjjÒjasssuUrosconsole_bridgerÛj}rÜj(h}rÝjh}rÞjh]rßjUros/melodic/rosconsole_bridgeràjassh }rájh }râjh}rãjh]räjUros-melodic-rosconsole-bridgeråjassshˆh}ræjh}rçjh}rèjh]réjjåjasssh}rêjh}rëjh}rìjh]ríjjåjasssuUrail_manipulation_msgsrîj}rïj(h}rðjh}rñjh]ròjU"ros/melodic/rail_manipulation_msgsrójassh }rôjh }rõjh}röjh]r÷jU"ros-melodic-rail-manipulation-msgsrøjassshˆh}rùjh}rújh}rûjh]rüjjøjasssh}rýjh}rþjh}rÿjh]rkjøjasssuUyocs_ar_pair_trackingrk}rk(h}rkh}rkh]rkUros/melodic/yujin_ocsrkassh }rkh }rkh}r kh]r kU!ros-melodic-yocs-ar-pair-trackingr kassshˆh}r kh}r kh}rkh]rkj kasssh}rkh}rkh}rkh]rkj kasssuU stereo_msgsrk}rk(h}rkh}rkh]rkUros/melodic/common_msgsrkassh }rkh }rkh}rkh]rkUros-melodic-stereo-msgsrkassshˆh}rkh}r kh}r!kh]r"kjkasssh}r#kh}r$kh}r%kh]r&kjkasssuUcob_bms_driverr'k}r(k(h}r)kh}r*kh]r+kUros/melodic/cob_driverr,kassh }r-kh }r.kh}r/kh]r0kUros-melodic-cob-bms-driverr1kassshˆh}r2kh}r3kh}r4kh]r5kj1kasssh}r6kh}r7kh}r8kh]r9kj1kasssuUmarti_can_msgsr:k}r;k(h}rkUros/melodic/marti_messagesr?kassh }r@kh }rAkh}rBkh]rCkUros-melodic-marti-can-msgsrDkassshˆh}rEkh}rFkh}rGkh]rHkjDkasssh}rIkh}rJkh}rKkh]rLkjDkasssuUtuw_checkerboardrMk}rNk(h}rOkh}rPkh]rQkU ros/melodic/tuw_marker_detectionrRkassh }rSkh }rTkh}rUkh]rVkUros-melodic-tuw-checkerboardrWkassshˆh}rXkh}rYkh}rZkh]r[kjWkasssh}r\kh}r]kh}r^kh]r_kjWkasssuUswri_image_utilr`k}rak(h}rbkh}rckh]rdkUros/melodic/marti_commonrekassh }rfkh }rgkh}rhkh]rikUros-melodic-swri-image-utilrjkassshˆh}rkkh}rlkh}rmkh]rnkjjkasssh}rokh}rpkh}rqkh]rrkjjkasssuUmir_descriptionrsk}rtk(h}rukh}rvkh]rwkUros/melodic/mir_robotrxkassh }rykh }rzkh}r{kh]r|kUros-melodic-mir-descriptionr}kassshˆh}r~kh}rkh}r€kh]rkj}kasssh}r‚kh}rƒkh}r„kh]r…kj}kasssuU phidgets_apir†k}r‡k(h}rˆkh}r‰kh]rŠkUros/melodic/phidgets_driversr‹kassh }rŒkh }rkh}rŽkh]rkUros-melodic-phidgets-apirkassshˆh}r‘kh}r’kh}r“kh]r”kjkasssh}r•kh}r–kh}r—kh]r˜kjkasssuUmicrostrain_mipsr™k}ršk(h}r›kh}rœkh]rkUros/melodic/microstrain_mipsržkassh }rŸkh }r kh}r¡kh]r¢kUros-melodic-microstrain-mipsr£kassshˆh}r¤kh}r¥kh}r¦kh]r§kj£kasssh}r¨kh}r©kh}rªkh]r«kj£kasssuUtf_remapper_cppr¬k}r­k(h}r®kh}r¯kh]r°kUros/melodic/tf_remapper_cppr±kassh }r²kh }r³kh}r´kh]rµkUros-melodic-tf-remapper-cppr¶kassshˆh}r·kh}r¸kh}r¹kh]rºkj¶kasssh}r»kh}r¼kh}r½kh]r¾kj¶kasssuUopen_manipulator_controllerr¿k}rÀk(h}rÁkh}rÂkh]rÃkUros/melodic/open_manipulatorrÄkassh }rÅkh }rÆkh}rÇkh]rÈkU'ros-melodic-open-manipulator-controllerrÉkassshˆh}rÊkh}rËkh}rÌkh]rÍkjÉkasssh}rÎkh}rÏkh}rÐkh]rÑkjÉkasssuUecl_timerÒk}rÓk(h}rÔkh}rÕkh]rÖkUros/melodic/ecl_corer×kassh }rØkh }rÙkh}rÚkh]rÛkUros-melodic-ecl-timerÜkassshˆh}rÝkh}rÞkh}rßkh]ràkjÜkasssh}rákh}râkh}rãkh]räkjÜkasssuU sound_playråk}ræk(h}rçkh}rèkh]rékUros/melodic/audio_commonrêkassh }rëkh }rìkh}ríkh]rîkUros-melodic-sound-playrïkassshˆh}rðkh}rñkh}ròkh]rókjïkasssh}rôkh}rõkh}rökh]r÷kjïkasssuUpose_base_controllerrøk}rùk(h}rúkh}rûkh]rükU#ros/melodic/navigation_experimentalrýkassh }rþkh }rÿkh}rlh]rlU ros-melodic-pose-base-controllerrlassshˆh}rlh}rlh}rlh]rljlasssh}rlh}rlh}r lh]r ljlasssuU ipr_externr l}r l(h}r lh}rlh]rlUros/melodic/ipr_externrlassh }rlh }rlh}rlh]rlUros-melodic-ipr-externrlassshˆh}rlh}rlh}rlh]rljlasssh}rlh}rlh}rlh]rljlasssuUcompressed_image_transportrl}rl(h}r lh}r!lh]r"lU#ros/melodic/image_transport_pluginsr#lassh }r$lh }r%lh}r&lh]r'lU&ros-melodic-compressed-image-transportr(lassshˆh}r)lh}r*lh}r+lh]r,lj(lasssh}r-lh}r.lh}r/lh]r0lj(lasssuU gazebo_msgsr1l}r2l(h}r3lh}r4lh]r5lUros/melodic/gazebo_ros_pkgsr6lassh }r7lh }r8lh}r9lh]r:lUros-melodic-gazebo-msgsr;lassshˆh}rlh]r?lj;lasssh}r@lh}rAlh}rBlh]rClj;lasssuU octomap_msgsrDl}rEl(h}rFlh}rGlh]rHlUros/melodic/octomap_msgsrIlassh }rJlh }rKlh}rLlh]rMlUros-melodic-octomap-msgsrNlassshˆh}rOlh}rPlh}rQlh]rRljNlasssh}rSlh}rTlh}rUlh]rVljNlasssuUecl_mobile_robotrWl}rXl(h}rYlh}rZlh]r[lUros/melodic/ecl_navigationr\lassh }r]lh }r^lh}r_lh]r`lUros-melodic-ecl-mobile-robotralassshˆh}rblh}rclh}rdlh]reljalasssh}rflh}rglh}rhlh]riljalasssuUopenrtm_aist_pythonrjl}rkl(h}rllh}rmlh]rnlUros/melodic/openrtm_aist_pythonrolassh }rplh }rqlh}rrlh]rslUros-melodic-openrtm-aist-pythonrtlassshˆh}rulh}rvlh}rwlh]rxljtlasssh}rylh}rzlh}r{lh]r|ljtlasssuUcl_utilsr}l}r~l(h}rlh}r€lh]rlUros/melodic/roslisp_commonr‚lassh }rƒlh }r„lh}r…lh]r†lUros-melodic-cl-utilsr‡lassshˆh}rˆlh}r‰lh}rŠlh]r‹lj‡lasssh}rŒlh}rlh}rŽlh]rlj‡lasssuUtf2_web_republisherrl}r‘l(h}r’lh}r“lh]r”lUros/melodic/tf2_web_republisherr•lassh }r–lh }r—lh}r˜lh]r™lUros-melodic-tf2-web-republisherršlassshˆh}r›lh}rœlh}rlh]ržljšlasssh}rŸlh}r lh}r¡lh]r¢ljšlasssuUturtlebot3_panoramar£l}r¤l(h}r¥lh}r¦lh]r§lU#ros/melodic/turtlebot3_applicationsr¨lassh }r©lh }rªlh}r«lh]r¬lUros-melodic-turtlebot3-panoramar­lassshˆh}r®lh}r¯lh}r°lh]r±lj­lasssh}r²lh}r³lh}r´lh]rµlj­lasssuU pilz_industrial_motion_testutilsr¶l}r·l(h}r¸lh}r¹lh]rºlU"ros/melodic/pilz_industrial_motionr»lassh }r¼lh }r½lh}r¾lh]r¿lU,ros-melodic-pilz-industrial-motion-testutilsrÀlassshˆh}rÁlh}rÂlh}rÃlh]rÄljÀlasssh}rÅlh}rÆlh}rÇlh]rÈljÀlasssuU cob_androidrÉl}rÊl(h}rËlh}rÌlh]rÍlUros/melodic/cob_androidrÎlassh }rÏlh }rÐlh}rÑlh]rÒlUros-melodic-cob-androidrÓlassshˆh}rÔlh}rÕlh}rÖlh]r×ljÓlasssh}rØlh}rÙlh}rÚlh]rÛljÓlasssuU haros_catkinrÜl}rÝl(h}rÞlh}rßlh]ràlUros/melodic/haros_catkinrálassh }râlh }rãlh}rälh]rålUros-melodic-haros-catkinrælassshˆh}rçlh}rèlh}rélh]rêljælasssh}rëlh}rìlh}rílh]rîljælasssuUpr2_navigation_perceptionrïl}rðl(h}rñlh}ròlh]rólUros/melodic/pr2_navigationrôlassh }rõlh }rölh}r÷lh]rølU%ros-melodic-pr2-navigation-perceptionrùlassshˆh}rúlh}rûlh}rülh]rýljùlasssh}rþlh}rÿlh}rmh]rmjùlasssuU costmap_queuerm}rm(h}rmh}rmh]rmUros/melodic/robot_navigationrmassh }rmh }r mh}r mh]r mUros-melodic-costmap-queuer massshˆh}r mh}rmh}rmh]rmj masssh}rmh}rmh}rmh]rmj masssuUtf2_kdlrm}rm(h}rmh}rmh]rmUros/melodic/geometry2rmassh }rmh }rmh}rmh]rmUros-melodic-tf2-kdlrmassshˆh}r mh}r!mh}r"mh]r#mjmasssh}r$mh}r%mh}r&mh]r'mjmasssuUethercat_trigger_controllersr(m}r)m(h}r*mh}r+mh]r,mUros/melodic/pr2_controllersr-massh }r.mh }r/mh}r0mh]r1mU(ros-melodic-ethercat-trigger-controllersr2massshˆh}r3mh}r4mh}r5mh]r6mj2masssh}r7mh}r8mh}r9mh]r:mj2masssuUtuw_geometry_msgsr;m}rmh]r?mUros/melodic/tuw_msgsr@massh }rAmh }rBmh}rCmh]rDmUros-melodic-tuw-geometry-msgsrEmassshˆh}rFmh}rGmh}rHmh]rImjEmasssh}rJmh}rKmh}rLmh]rMmjEmasssuU rosserialrNm}rOm(h}rPmh}rQmh]rRmUros/melodic/rosserialrSmassh }rTmh }rUmh}rVmh]rWmUros-melodic-rosserialrXmassshˆh}rYmh}rZmh}r[mh]r\mjXmasssh}r]mh}r^mh}r_mh]r`mjXmasssuUrosmakeram}rbm(h}rcmh}rdmh]remUros/melodic/rosrfmassh }rgmh }rhmh}rimh]rjmUros-melodic-rosmakerkmassshˆh}rlmh}rmmh}rnmh]romjkmasssh}rpmh}rqmh}rrmh]rsmjkmasssuUmoveit_setup_assistantrtm}rum(h}rvmh}rwmh]rxmUros/melodic/moveitrymassh }rzmh }r{mh}r|mh]r}mU"ros-melodic-moveit-setup-assistantr~massshˆh}rmh}r€mh}rmh]r‚mj~masssh}rƒmh}r„mh}r…mh]r†mj~masssuUsdhlibrary_cppr‡m}rˆm(h}r‰mh}rŠmh]r‹mUros/melodic/sdhlibrary_cpprŒmassh }rmh }rŽmh}rmh]rmUros-melodic-sdhlibrary-cppr‘massshˆh}r’mh}r“mh}r”mh]r•mj‘masssh}r–mh}r—mh}r˜mh]r™mj‘masssuU libqt_widgetsršm}r›m(h}rœmh}rmh]ržmUros/melodic/qt_metapackagesrŸmassh }r mh }r¡mh}r¢mh]r£mUros-melodic-libqt-widgetsr¤massshˆh}r¥mh}r¦mh}r§mh]r¨mj¤masssh}r©mh}rªmh}r«mh]r¬mj¤masssuU nav_core2r­m}r®m(h}r¯mh}r°mh]r±mUros/melodic/robot_navigationr²massh }r³mh }r´mh}rµmh]r¶mUros-melodic-nav-core2r·massshˆh}r¸mh}r¹mh}rºmh]r»mj·masssh}r¼mh}r½mh}r¾mh]r¿mj·masssuU cob_mimicrÀm}rÁm(h}rÂmh}rÃmh]rÄmUros/melodic/cob_driverrÅmassh }rÆmh }rÇmh}rÈmh]rÉmUros-melodic-cob-mimicrÊmassshˆh}rËmh}rÌmh}rÍmh]rÎmjÊmasssh}rÏmh}rÐmh}rÑmh]rÒmjÊmasssuUcob_undercarriage_ctrlrÓm}rÔm(h}rÕmh}rÖmh]r×mUros/melodic/cob_driverrØmassh }rÙmh }rÚmh}rÛmh]rÜmU"ros-melodic-cob-undercarriage-ctrlrÝmassshˆh}rÞmh}rßmh}ràmh]rámjÝmasssh}râmh}rãmh}rämh]råmjÝmasssuU vrx_gazeboræm}rçm(h}rèmh}rémh]rêmUros/melodic/vrxrëmassh }rìmh }rímh}rîmh]rïmUros-melodic-vrx-gazeborðmassshˆh}rñmh}ròmh}rómh]rômjðmasssh}rõmh}römh}r÷mh]rømjðmasssuUvisprùm}rúm(h}rûmh}rümh]rýmUros/melodic/visprþmassh }rÿmh }rnh}rnh]rnUros-melodic-visprnassshˆh}rnh}rnh}rnh]rnjnasssh}rnh}r nh}r nh]r njnasssuUpilz_extensionsr n}r n(h}rnh}rnh]rnU"ros/melodic/pilz_industrial_motionrnassh }rnh }rnh}rnh]rnUros-melodic-pilz-extensionsrnassshˆh}rnh}rnh}rnh]rnjnasssh}rnh}rnh}rnh]rnjnasssuUavt_vimba_camerarn}r n(h}r!nh}r"nh]r#nUros/melodic/avt_vimba_camerar$nassh }r%nh }r&nh}r'nh]r(nUros-melodic-avt-vimba-camerar)nassshˆh}r*nh}r+nh}r,nh]r-nj)nasssh}r.nh}r/nh}r0nh]r1nj)nasssuU"dynamixel_workbench_single_managerr2n}r3n(h}r4nh}r5nh]r6nUros/melodic/dynamixel-workbenchr7nassh }r8nh }r9nh}r:nh]r;nU.ros-melodic-dynamixel-workbench-single-managerrnh}r?nh]r@njoh}r?oh]r@oUros/melodic/turtlebot3_autoracerAoassh }rBoh }rCoh}rDoh]rEoU'ros-melodic-turtlebot3-autorace-controlrFoassshˆh}rGoh}rHoh}rIoh]rJojFoasssh}rKoh}rLoh}rMoh]rNojFoasssuUcarrot_plannerrOo}rPo(h}rQoh}rRoh]rSoUros/melodic/navigationrToassh }rUoh }rVoh}rWoh]rXoUros-melodic-carrot-plannerrYoassshˆh}rZoh}r[oh}r\oh]r]ojYoasssh}r^oh}r_oh}r`oh]raojYoasssuU osg_utilsrbo}rco(h}rdoh}reoh]rfoUros/melodic/visualization_osgrgoassh }rhoh }rioh}rjoh]rkoUros-melodic-osg-utilsrloassshˆh}rmoh}rnoh}rooh]rpojloasssh}rqoh}rroh}rsoh]rtojloasssuUqb_hand_hardware_interfaceruo}rvo(h}rwoh}rxoh]ryoUros/melodic/qb_handrzoassh }r{oh }r|oh}r}oh]r~oU&ros-melodic-qb-hand-hardware-interfaceroassshˆh}r€oh}roh}r‚oh]rƒojoasssh}r„oh}r…oh}r†oh]r‡ojoasssuU rosatomicrˆo}r‰o(h}rŠoh}r‹oh]rŒoUros/melodic/ros_realtimeroassh }rŽoh }roh}roh]r‘oUros-melodic-rosatomicr’oassshˆh}r“oh}r”oh}r•oh]r–oj’oasssh}r—oh}r˜oh}r™oh]ršoj’oasssuUnodelet_tutorial_mathr›o}rœo(h}roh}ržoh]rŸoUros/melodic/common_tutorialsr oassh }r¡oh }r¢oh}r£oh]r¤oU!ros-melodic-nodelet-tutorial-mathr¥oassshˆh}r¦oh}r§oh}r¨oh]r©oj¥oasssh}rªoh}r«oh}r¬oh]r­oj¥oasssuUjoystick_driversr®o}r¯o(h}r°oh}r±oh]r²oUros/melodic/joystick_driversr³oassh }r´oh }rµoh}r¶oh]r·oUros-melodic-joystick-driversr¸oassshˆh}r¹oh}rºoh}r»oh]r¼oj¸oasssh}r½oh}r¾oh}r¿oh]rÀoj¸oasssuU map_merge_3drÁo}rÂo(h}rÃoh}rÄoh]rÅoUros/melodic/map_mergerÆoassh }rÇoh }rÈoh}rÉoh]rÊoUros-melodic-map-merge-3drËoassshˆh}rÌoh}rÍoh}rÎoh]rÏojËoasssh}rÐoh}rÑoh}rÒoh]rÓojËoasssuUteleop_tools_msgsrÔo}rÕo(h}rÖoh}r×oh]rØoUros/melodic/teleop_toolsrÙoassh }rÚoh }rÛoh}rÜoh]rÝoUros-melodic-teleop-tools-msgsrÞoassshˆh}rßoh}ràoh}ráoh]râojÞoasssh}rãoh}räoh}råoh]ræojÞoasssuUrobot_activity_tutorialsrço}rèo(h}réoh}rêoh]rëoUros/melodic/robot_activityrìoassh }ríoh }rîoh}rïoh]rðoU$ros-melodic-robot-activity-tutorialsrñoassshˆh}ròoh}róoh}rôoh]rõojñoasssh}röoh}r÷oh}røoh]rùojñoasssuU dataspeed_ulcrúo}rûo(h}rüoh}rýoh]rþoUros/melodic/dataspeed_ulc_rosrÿoassh }rph }rph}rph]rpUros-melodic-dataspeed-ulcrpassshˆh}rph}rph}rph]rpjpasssh}r ph}r ph}r ph]r pjpasssuUhector_xacro_toolsr p}rp(h}rph}rph]rpUros/melodic/hector_modelsrpassh }rph }rph}rph]rpUros-melodic-hector-xacro-toolsrpassshˆh}rph}rph}rph]rpjpasssh}rph}rph}rph]rpjpasssuUroslibr p}r!p(h}r"ph}r#ph]r$pUros/melodic/rosr%passh }r&ph }r'ph}r(ph]r)pUros-melodic-roslibr*passshˆh}r+ph}r,ph}r-ph]r.pj*passsh}r/ph}r0ph}r1ph]r2pj*passsuUgeneusr3p}r4p(h}r5ph}r6ph]r7pUros/melodic/geneusr8passh }r9ph }r:ph}r;ph]rph}r?ph}r@ph]rApj=passsh}rBph}rCph}rDph]rEpj=passsuUroswtfrFp}rGp(h}rHph}rIph]rJpUros/melodic/ros_commrKpassh }rLph }rMph}rNph]rOpUros-melodic-roswtfrPpassshˆh}rQph}rRph}rSph]rTpjPpasssh}rUph}rVph}rWph]rXpjPpasssuUrosbridge_msgsrYp}rZp(h}r[ph}r\ph]r]pUros/melodic/rosbridge_suiter^passh }r_ph }r`ph}raph]rbpUros-melodic-rosbridge-msgsrcpassshˆh}rdph}reph}rfph]rgpjcpasssh}rhph}riph}rjph]rkpjcpasssuUsocial_navigation_layersrlp}rmp(h}rnph}roph]rppUros/melodic/navigation_layersrqpassh }rrph }rsph}rtph]rupU$ros-melodic-social-navigation-layersrvpassshˆh}rwph}rxph}ryph]rzpjvpasssh}r{ph}r|ph}r}ph]r~pjvpasssuUresized_image_transportrp}r€p(h}rph}r‚ph]rƒpUros/melodic/jsk_recognitionr„passh }r…ph }r†ph}r‡ph]rˆpU#ros-melodic-resized-image-transportr‰passshˆh}rŠph}r‹ph}rŒph]rpj‰passsh}rŽph}rph}rph]r‘pj‰passsuUcob_control_mode_adapterr’p}r“p(h}r”ph}r•ph]r–pUros/melodic/cob_controlr—passh }r˜ph }r™ph}ršph]r›pU$ros-melodic-cob-control-mode-adapterrœpassshˆh}rph}ržph}rŸph]r pjœpasssh}r¡ph}r¢ph}r£ph]r¤pjœpasssuU qb_devicer¥p}r¦p(h}r§ph}r¨ph]r©pUros/melodic/qb_devicerªpassh }r«ph }r¬ph}r­ph]r®pUros-melodic-qb-devicer¯passshˆh}r°ph}r±ph}r²ph]r³pj¯passsh}r´ph}rµph}r¶ph]r·pj¯passsuU kdl_parser_pyr¸p}r¹p(h}rºph}r»ph]r¼pUros/melodic/kdl_parserr½passh }r¾ph }r¿ph}rÀph]rÁpUros-melodic-kdl-parser-pyrÂpassshˆh}rÃph}rÄph}rÅph]rÆpjÂpasssh}rÇph}rÈph}rÉph]rÊpjÂpasssuU rosgraph_msgsrËp}rÌp(h}rÍph}rÎph]rÏpUros/melodic/ros_comm_msgsrÐpassh }rÑph }rÒph}rÓph]rÔpUros-melodic-rosgraph-msgsrÕpassshˆh}rÖph}r×ph}rØph]rÙpjÕpasssh}rÚph}rÛph}rÜph]rÝpjÕpasssuU map_serverrÞp}rßp(h}ràph}ráph]râpUros/melodic/navigationrãpassh }räph }råph}ræph]rçpUros-melodic-map-serverrèpassshˆh}réph}rêph}rëph]rìpjèpasssh}ríph}rîph}rïph]rðpjèpasssuU rqt_graphrñp}ròp(h}róph}rôph]rõpUros/melodic/rqt_graphröpassh }r÷ph }røph}rùph]rúpUros-melodic-rqt-graphrûpassshˆh}rüph}rýph}rþph]rÿpjûpasssh}rqh}rqh}rqh]rqjûpasssuUar_track_alvarrq}rq(h}rqh}rqh]rqUros/melodic/ar_track_alvarr qassh }r qh }r qh}r qh]r qUros-melodic-ar-track-alvarrqassshˆh}rqh}rqh}rqh]rqjqasssh}rqh}rqh}rqh]rqjqasssuUopen_manipulator_gazeborq}rq(h}rqh}rqh]rqU(ros/melodic/open_manipulator_simulationsrqassh }rqh }rqh}rqh]r qU#ros-melodic-open-manipulator-gazebor!qassshˆh}r"qh}r#qh}r$qh]r%qj!qasssh}r&qh}r'qh}r(qh]r)qj!qasssuUjsk_perceptionr*q}r+q(h}r,qh}r-qh]r.qUros/melodic/jsk_recognitionr/qassh }r0qh }r1qh}r2qh]r3qUros-melodic-jsk-perceptionr4qassshˆh}r5qh}r6qh}r7qh]r8qj4qasssh}r9qh}r:qh}r;qh]rq(h}r?qh}r@qh]rAqUros/melodic/dbw_mkz_rosrBqassh }rCqh }rDqh}rEqh]rFqU!ros-melodic-dbw-mkz-joystick-demorGqassshˆh}rHqh}rIqh}rJqh]rKqjGqasssh}rLqh}rMqh}rNqh]rOqjGqasssuU wge100_camerarPq}rQq(h}rRqh}rSqh]rTqUros/melodic/wge100_driverrUqassh }rVqh }rWqh}rXqh]rYqUros-melodic-wge100-camerarZqassshˆh}r[qh}r\qh}r]qh]r^qjZqasssh}r_qh}r`qh}raqh]rbqjZqasssuU libphidget21rcq}rdq(h}reqh}rfqh]rgqUros/melodic/phidgets_driversrhqassh }riqh }rjqh}rkqh]rlqUros-melodic-libphidget21rmqassshˆh}rnqh}roqh}rpqh]rqqjmqasssh}rrqh}rsqh}rtqh]ruqjmqasssuUparameter_assertionsrvq}rwq(h}rxqh}ryqh]rzqUros/melodic/rj-ros-commonr{qassh }r|qh }r}qh}r~qh]rqU ros-melodic-parameter-assertionsr€qassshˆh}rqh}r‚qh}rƒqh]r„qj€qasssh}r…qh}r†qh}r‡qh]rˆqj€qasssuUchomp_motion_plannerr‰q}rŠq(h}r‹qh}rŒqh]rqUros/melodic/moveitrŽqassh }rqh }rqh}r‘qh]r’qU ros-melodic-chomp-motion-plannerr“qassshˆh}r”qh}r•qh}r–qh]r—qj“qasssh}r˜qh}r™qh}ršqh]r›qj“qasssuUglobal_plannerrœq}rq(h}ržqh}rŸqh]r qUros/melodic/navigationr¡qassh }r¢qh }r£qh}r¤qh]r¥qUros-melodic-global-plannerr¦qassshˆh}r§qh}r¨qh}r©qh]rªqj¦qasssh}r«qh}r¬qh}r­qh]r®qj¦qasssuUcob_default_robot_configr¯q}r°q(h}r±qh}r²qh]r³qUros/melodic/cob_robotsr´qassh }rµqh }r¶qh}r·qh]r¸qU$ros-melodic-cob-default-robot-configr¹qassshˆh}rºqh}r»qh}r¼qh]r½qj¹qasssh}r¾qh}r¿qh}rÀqh]rÁqj¹qasssuUigvc_self_drive_gazebo_pluginsrÂq}rÃq(h}rÄqh}rÅqh]rÆqUros/melodic/igvc_self_drive_simrÇqassh }rÈqh }rÉqh}rÊqh]rËqU*ros-melodic-igvc-self-drive-gazebo-pluginsrÌqassshˆh}rÍqh}rÎqh}rÏqh]rÐqjÌqasssh}rÑqh}rÒqh}rÓqh]rÔqjÌqasssuU rqt_gui_cpprÕq}rÖq(h}r×qh}rØqh]rÙqUros/melodic/rqtrÚqassh }rÛqh }rÜqh}rÝqh]rÞqUros-melodic-rqt-gui-cpprßqassshˆh}ràqh}ráqh}râqh]rãqjßqasssh}räqh}råqh}ræqh]rçqjßqasssuUglobal_planner_testsrèq}réq(h}rêqh}rëqh]rìqUros/melodic/robot_navigationríqassh }rîqh }rïqh}rðqh]rñqU ros-melodic-global-planner-testsròqassshˆh}róqh}rôqh}rõqh]röqjòqasssh}r÷qh}røqh}rùqh]rúqjòqasssuU optpp_catkinrûq}rüq(h}rýqh}rþqh]rÿqUros/melodic/optpp_catkinrrassh }rrh }rrh}rrh]rrUros-melodic-optpp-catkinrrassshˆh}rrh}rrh}rrh]r rjrasssh}r rh}r rh}r rh]r rjrasssuUamclrr}rr(h}rrh}rrh]rrUros/melodic/navigationrrassh }rrh }rrh}rrh]rrUros-melodic-amclrrassshˆh}rrh}rrh}rrh]rrjrasssh}rrh}rrh}rrh]r rjrasssuU image_commonr!r}r"r(h}r#rh}r$rh]r%rUros/melodic/image_commonr&rassh }r'rh }r(rh}r)rh]r*rUros-melodic-image-commonr+rassshˆh}r,rh}r-rh}r.rh]r/rj+rasssh}r0rh}r1rh}r2rh]r3rj+rasssuUcob_elmo_homingr4r}r5r(h}r6rh}r7rh]r8rUros/melodic/cob_driverr9rassh }r:rh }r;rh}rrassshˆh}r?rh}r@rh}rArh]rBrj>rasssh}rCrh}rDrh}rErh]rFrj>rasssuUjoyrGr}rHr(h}rIrh}rJrh]rKrUros/melodic/joystick_driversrLrassh }rMrh }rNrh}rOrh]rPrUros-melodic-joyrQrassshˆh}rRrh}rSrh}rTrh]rUrjQrasssh}rVrh}rWrh}rXrh]rYrjQrasssuUexotica_aico_solverrZr}r[r(h}r\rh}r]rh]r^rUros/melodic/exoticar_rassh }r`rh }rarh}rbrh]rcrUros-melodic-exotica-aico-solverrdrassshˆh}rerh}rfrh}rgrh]rhrjdrasssh}rirh}rjrh}rkrh]rlrjdrasssuUgrid_map_costmap_2drmr}rnr(h}rorh}rprh]rqrUros/melodic/grid_maprrrassh }rsrh }rtrh}rurh]rvrUros-melodic-grid-map-costmap-2drwrassshˆh}rxrh}ryrh}rzrh]r{rjwrasssh}r|rh}r}rh}r~rh]rrjwrasssuU ariles_rosr€r}rr(h}r‚rh}rƒrh]r„rUros/melodic/ariles_rosr…rassh }r†rh }r‡rh}rˆrh]r‰rUros-melodic-ariles-rosrŠrassshˆh}r‹rh}rŒrh}rrh]rŽrjŠrasssh}rrh}rrh}r‘rh]r’rjŠrasssuUmultimaster_msgsr“r}r”r(h}r•rh}r–rh]r—rU!ros/melodic/cpr_multimaster_toolsr˜rassh }r™rh }ršrh}r›rh]rœrUros-melodic-multimaster-msgsrrassshˆh}ržrh}rŸrh}r rh]r¡rjrasssh}r¢rh}r£rh}r¤rh]r¥rjrasssuU rqt_rosmonr¦r}r§r(h}r¨rh}r©rh]rªrUros/melodic/rosmonr«rassh }r¬rh }r­rh}r®rh]r¯rUros-melodic-rqt-rosmonr°rassshˆh}r±rh}r²rh}r³rh]r´rj°rasssh}rµrh}r¶rh}r·rh]r¸rj°rasssuUrange_sensor_layerr¹r}rºr(h}r»rh}r¼rh]r½rUros/melodic/navigation_layersr¾rassh }r¿rh }rÀrh}rÁrh]rÂrUros-melodic-range-sensor-layerrÃrassshˆh}rÄrh}rÅrh}rÆrh]rÇrjÃrasssh}rÈrh}rÉrh}rÊrh]rËrjÃrasssuU tf2_bulletrÌr}rÍr(h}rÎrh}rÏrh]rÐrUros/melodic/geometry2rÑrassh }rÒrh }rÓrh}rÔrh]rÕrUros-melodic-tf2-bulletrÖrassshˆh}r×rh}rØrh}rÙrh]rÚrjÖrasssh}rÛrh}rÜrh}rÝrh]rÞrjÖrasssuU rosmon_corerßr}ràr(h}rárh}rârh]rãrUros/melodic/rosmonrärassh }rårh }rærh}rçrh]rèrUros-melodic-rosmon-corerérassshˆh}rêrh}rërh}rìrh]rírjérasssh}rîrh}rïrh}rðrh]rñrjérasssuUforward_command_controllerròr}rór(h}rôrh}rõrh]rörUros/melodic/ros_controllersr÷rassh }rørh }rùrh}rúrh]rûrU&ros-melodic-forward-command-controllerrürassshˆh}rýrh}rþrh}rÿrh]rsjürasssh}rsh}rsh}rsh]rsjürasssuUlinksys_access_pointrs}rs(h}rsh}rsh]r sUros/melodic/linux_networkingr sassh }r sh }r sh}r sh]rsU ros-melodic-linksys-access-pointrsassshˆh}rsh}rsh}rsh]rsjsasssh}rsh}rsh}rsh]rsjsasssuUrqt_bag_pluginsrs}rs(h}rsh}rsh]rsUros/melodic/rqt_bagrsassh }rsh }rsh}r sh]r!sUros-melodic-rqt-bag-pluginsr"sassshˆh}r#sh}r$sh}r%sh]r&sj"sasssh}r'sh}r(sh}r)sh]r*sj"sasssuU turtlesimr+s}r,s(h}r-sh}r.sh]r/sUros/melodic/ros_tutorialsr0sassh }r1sh }r2sh}r3sh]r4sUros-melodic-turtlesimr5sassshˆh}r6sh}r7sh}r8sh]r9sj5sasssh}r:sh}r;sh}rs}r?s(h}r@sh}rAsh]rBsUros/melodic/distance_maprCsassh }rDsh }rEsh}rFsh]rGsUros-melodic-distance-map-opencvrHsassshˆh}rIsh}rJsh}rKsh]rLsjHsasssh}rMsh}rNsh}rOsh]rPsjHsasssuUrail_segmentationrQs}rRs(h}rSsh}rTsh]rUsUros/melodic/rail_segmentationrVsassh }rWsh }rXsh}rYsh]rZsUros-melodic-rail-segmentationr[sassshˆh}r\sh}r]sh}r^sh]r_sj[sasssh}r`sh}rash}rbsh]rcsj[sasssuUdiagnostic_analysisrds}res(h}rfsh}rgsh]rhsUros/melodic/diagnosticsrisassh }rjsh }rksh}rlsh]rmsUros-melodic-diagnostic-analysisrnsassshˆh}rosh}rpsh}rqsh]rrsjnsasssh}rssh}rtsh}rush]rvsjnsasssuU ros_tutorialsrws}rxs(h}rysh}rzsh]r{sUros/melodic/ros_tutorialsr|sassh }r}sh }r~sh}rsh]r€sUros-melodic-ros-tutorialsrsassshˆh}r‚sh}rƒsh}r„sh]r…sjsasssh}r†sh}r‡sh}rˆsh]r‰sjsasssuU libfrankarŠs}r‹s(h}rŒsh}rsh]rŽsUros/melodic/libfrankarsassh }rsh }r‘sh}r’sh]r“sUros-melodic-libfrankar”sassshˆh}r•sh}r–sh}r—sh]r˜sj”sasssh}r™sh}ršsh}r›sh]rœsj”sasssuUmapvizrs}ržs(h}rŸsh}r sh]r¡sUros/melodic/mapvizr¢sassh }r£sh }r¤sh}r¥sh]r¦sUros-melodic-mapvizr§sassshˆh}r¨sh}r©sh}rªsh]r«sj§sasssh}r¬sh}r­sh}r®sh]r¯sj§sasssuUpr2_navigation_globalr°s}r±s(h}r²sh}r³sh]r´sUros/melodic/pr2_navigationrµsassh }r¶sh }r·sh}r¸sh]r¹sU!ros-melodic-pr2-navigation-globalrºsassshˆh}r»sh}r¼sh}r½sh]r¾sjºsasssh}r¿sh}rÀsh}rÁsh]rÂsjºsasssuU slam_gmappingrÃs}rÄs(h}rÅsh}rÆsh]rÇsUros/melodic/slam_gmappingrÈsassh }rÉsh }rÊsh}rËsh]rÌsUros-melodic-slam-gmappingrÍsassshˆh}rÎsh}rÏsh}rÐsh]rÑsjÍsasssh}rÒsh}rÓsh}rÔsh]rÕsjÍsasssuUdbw_fca_descriptionrÖs}r×s(h}rØsh}rÙsh]rÚsUros/melodic/dbw_fca_rosrÛsassh }rÜsh }rÝsh}rÞsh]rßsUros-melodic-dbw-fca-descriptionràsassshˆh}rásh}râsh}rãsh]räsjàsasssh}råsh}ræsh}rçsh]rèsjàsasssuUurdf_sim_tutorialrés}rês(h}rësh}rìsh]rísUros/melodic/urdf_sim_tutorialrîsassh }rïsh }rðsh}rñsh]ròsUros-melodic-urdf-sim-tutorialrósassshˆh}rôsh}rõsh}rösh]r÷sjósasssh}røsh}rùsh}rúsh]rûsjósasssuUjsk_interactive_markerrüs}rýs(h}rþsh}rÿsh]rtUros/melodic/jsk_visualizationrtassh }rth }rth}rth]rtU"ros-melodic-jsk-interactive-markerrtassshˆh}rth}rth}r th]r tjtasssh}r th}r th}r th]rtjtasssuUrobot_controllers_msgsrt}rt(h}rth}rth]rtUros/melodic/robot_controllersrtassh }rth }rth}rth]rtU"ros-melodic-robot-controllers-msgsrtassshˆh}rth}rth}rth]rtjtasssh}rth}rth}r th]r!tjtasssuUprosilica_camerar"t}r#t(h}r$th}r%th]r&tUros/melodic/prosilica_driverr'tassh }r(th }r)th}r*th]r+tUros-melodic-prosilica-camerar,tassshˆh}r-th}r.th}r/th]r0tj,tasssh}r1th}r2th}r3th]r4tj,tasssuUhector_sensors_gazebor5t}r6t(h}r7th}r8th]r9tUros/melodic/hector_gazebor:tassh }r;th }rtU!ros-melodic-hector-sensors-gazebor?tassshˆh}r@th}rAth}rBth]rCtj?tasssh}rDth}rEth}rFth]rGtj?tasssuUrxros_tfrHt}rIt(h}rJth}rKth]rLtUros/melodic/rxrosrMtassh }rNth }rOth}rPth]rQtUros-melodic-rxros-tfrRtassshˆh}rSth}rTth}rUth]rVtjRtasssh}rWth}rXth}rYth]rZtjRtasssuUtrac_ik_kinematics_pluginr[t}r\t(h}r]th}r^th]r_tUros/melodic/trac_ikr`tassh }rath }rbth}rcth]rdtU%ros-melodic-trac-ik-kinematics-pluginretassshˆh}rfth}rgth}rhth]ritjetasssh}rjth}rkth}rlth]rmtjetasssuUcob_interactive_teleoprnt}rot(h}rpth}rqth]rrtUros/melodic/cob_command_toolsrstassh }rtth }ruth}rvth]rwtU"ros-melodic-cob-interactive-teleoprxtassshˆh}ryth}rzth}r{th]r|tjxtasssh}r}th}r~th}rth]r€tjxtasssuU roseus_smachrt}r‚t(h}rƒth}r„th]r…tUros/melodic/jsk_roseusr†tassh }r‡th }rˆth}r‰th]rŠtUros-melodic-roseus-smachr‹tassshˆh}rŒth}rth}rŽth]rtj‹tasssh}rth}r‘th}r’th]r“tj‹tasssuUfkie_message_filtersr”t}r•t(h}r–th}r—th]r˜tU ros/melodic/fkie_message_filtersr™tassh }ršth }r›th}rœth]rtU ros-melodic-fkie-message-filtersržtassshˆh}rŸth}r th}r¡th]r¢tjžtasssh}r£th}r¤th}r¥th]r¦tjžtasssuU libqt_openglr§t}r¨t(h}r©th}rªth]r«tUros/melodic/qt_metapackagesr¬tassh }r­th }r®th}r¯th]r°tUros-melodic-libqt-openglr±tassshˆh}r²th}r³th}r´th]rµtj±tasssh}r¶th}r·th}r¸th]r¹tj±tasssuUcob_omni_drive_controllerrºt}r»t(h}r¼th}r½th]r¾tUros/melodic/cob_controlr¿tassh }rÀth }rÁth}rÂth]rÃtU%ros-melodic-cob-omni-drive-controllerrÄtassshˆh}rÅth}rÆth}rÇth]rÈtjÄtasssh}rÉth}rÊth}rËth]rÌtjÄtasssuUrosapirÍt}rÎt(h}rÏth}rÐth]rÑtUros/melodic/rosbridge_suiterÒtassh }rÓth }rÔth}rÕth]rÖtUros-melodic-rosapir×tassshˆh}rØth}rÙth}rÚth]rÛtj×tasssh}rÜth}rÝth}rÞth]rßtj×tasssuU rtabmap_rosràt}rát(h}râth}rãth]rätUros/melodic/rtabmap_rosråtassh }ræth }rçth}rèth]rétUros-melodic-rtabmap-rosrêtassshˆh}rëth}rìth}ríth]rîtjêtasssh}rïth}rðth}rñth]ròtjêtasssuUanglesrót}rôt(h}rõth}röth]r÷tUros/melodic/anglesrøtassh }rùth }rúth}rûth]rütUros-melodic-anglesrýtassshˆh}rþth}rÿth}ruh]rujýtasssh}ruh}ruh}ruh]rujýtasssuU rosdiagnosticru}ru(h}ruh}r uh]r uUros/melodic/diagnosticsr uassh }r uh }r uh}ruh]ruUros-melodic-rosdiagnosticruassshˆh}ruh}ruh}ruh]rujuasssh}ruh}ruh}ruh]rujuasssuU mouse_teleopru}ru(h}ruh}ruh]ruUros/melodic/teleop_toolsruassh }ruh }r uh}r!uh]r"uUros-melodic-mouse-teleopr#uassshˆh}r$uh}r%uh}r&uh]r'uj#uasssh}r(uh}r)uh}r*uh]r+uj#uasssuUjoint_state_publisherr,u}r-u(h}r.uh}r/uh]r0uU!ros/melodic/joint_state_publisherr1uassh }r2uh }r3uh}r4uh]r5uU!ros-melodic-joint-state-publisherr6uassshˆh}r7uh}r8uh}r9uh]r:uj6uasssh}r;uh}ruj6uasssuUbrics_actuatorr?u}r@u(h}rAuh}rBuh]rCuUros/melodic/brics_actuatorrDuassh }rEuh }rFuh}rGuh]rHuUros-melodic-brics-actuatorrIuassshˆh}rJuh}rKuh}rLuh]rMujIuasssh}rNuh}rOuh}rPuh]rQujIuasssuU rdl_dynamicsrRu}rSu(h}rTuh}rUuh]rVuUros/melodic/rdlrWuassh }rXuh }rYuh}rZuh]r[uUros-melodic-rdl-dynamicsr\uassshˆh}r]uh}r^uh}r_uh]r`uj\uasssh}rauh}rbuh}rcuh]rduj\uasssuUswri_route_utilreu}rfu(h}rguh}rhuh]riuUros/melodic/marti_commonrjuassh }rkuh }rluh}rmuh]rnuUros-melodic-swri-route-utilrouassshˆh}rpuh}rquh}rruh]rsujouasssh}rtuh}ruuh}rvuh]rwujouasssuU plotjugglerrxu}ryu(h}rzuh}r{uh]r|uUros/melodic/plotjugglerr}uassh }r~uh }ruh}r€uh]ruUros-melodic-plotjugglerr‚uassshˆh}rƒuh}r„uh}r…uh]r†uj‚uasssh}r‡uh}rˆuh}r‰uh]rŠuj‚uasssuUmoveit_ros_benchmarksr‹u}rŒu(h}ruh}rŽuh]ruUros/melodic/moveitruassh }r‘uh }r’uh}r“uh]r”uU!ros-melodic-moveit-ros-benchmarksr•uassshˆh}r–uh}r—uh}r˜uh]r™uj•uasssh}ršuh}r›uh}rœuh]ruj•uasssuU uuv_simulatorržu}rŸu(h}r uh}r¡uh]r¢uUros/melodic/uuv_simulatorr£uassh }r¤uh }r¥uh}r¦uh]r§uUros-melodic-uuv-simulatorr¨uassshˆh}r©uh}rªuh}r«uh]r¬uj¨uasssh}r­uh}r®uh}r¯uh]r°uj¨uasssuUlusbr±u}r²u(h}r³uh}r´uh]rµuUros/melodic/lusbr¶uassh }r·uh }r¸uh}r¹uh]rºuUros-melodic-lusbr»uassshˆh}r¼uh}r½uh}r¾uh]r¿uj»uasssh}rÀuh}rÁuh}rÂuh]rÃuj»uasssuUecl_formattersrÄu}rÅu(h}rÆuh}rÇuh]rÈuUros/melodic/ecl_corerÉuassh }rÊuh }rËuh}rÌuh]rÍuUros-melodic-ecl-formattersrÎuassshˆh}rÏuh}rÐuh}rÑuh]rÒujÎuasssh}rÓuh}rÔuh}rÕuh]rÖujÎuasssuU robot_upstartr×u}rØu(h}rÙuh}rÚuh]rÛuUros/melodic/robot_upstartrÜuassh }rÝuh }rÞuh}rßuh]ràuUros-melodic-robot-upstartráuassshˆh}râuh}rãuh}räuh]råujáuasssh}ræuh}rçuh}rèuh]réujáuasssuUpx4_msgsrêu}rëu(h}rìuh}ríuh]rîuUros/melodic/px4_msgsrïuassh }rðuh }rñuh}ròuh]róuUros-melodic-px4-msgsrôuassshˆh}rõuh}röuh}r÷uh]røujôuasssh}rùuh}rúuh}rûuh]rüujôuasssuU distance_maprýu}rþu(h}rÿuh}rvh]rvUros/melodic/distance_maprvassh }rvh }rvh}rvh]rvUros-melodic-distance-maprvassshˆh}rvh}r vh}r vh]r vjvasssh}r vh}r vh}rvh]rvjvasssuU pilz_utilsrv}rv(h}rvh}rvh]rvUros/melodic/pilz_robotsrvassh }rvh }rvh}rvh]rvUros-melodic-pilz-utilsrvassshˆh}rvh}rvh}rvh]rvjvasssh}rvh}r vh}r!vh]r"vjvasssuUnav_msgsr#v}r$v(h}r%vh}r&vh]r'vUros/melodic/common_msgsr(vassh }r)vh }r*vh}r+vh]r,vUros-melodic-nav-msgsr-vassshˆh}r.vh}r/vh}r0vh]r1vj-vasssh}r2vh}r3vh}r4vh]r5vj-vasssuUfetch_simulationr6v}r7v(h}r8vh}r9vh]r:vUros/melodic/fetch_gazebor;vassh }rvh]r?vUros-melodic-fetch-simulationr@vassshˆh}rAvh}rBvh}rCvh]rDvj@vasssh}rEvh}rFvh}rGvh]rHvj@vasssuUecl_command_linerIv}rJv(h}rKvh}rLvh]rMvUros/melodic/ecl_corerNvassh }rOvh }rPvh}rQvh]rRvUros-melodic-ecl-command-linerSvassshˆh}rTvh}rUvh}rVvh]rWvjSvasssh}rXvh}rYvh}rZvh]r[vjSvasssuU ros_canopenr\v}r]v(h}r^vh}r_vh]r`vUros/melodic/ros_canopenravassh }rbvh }rcvh}rdvh]revUros-melodic-ros-canopenrfvassshˆh}rgvh}rhvh}rivh]rjvjfvasssh}rkvh}rlvh}rmvh]rnvjfvasssuUyocs_ar_pair_approachrov}rpv(h}rqvh}rrvh]rsvUros/melodic/yujin_ocsrtvassh }ruvh }rvvh}rwvh]rxvU!ros-melodic-yocs-ar-pair-approachryvassshˆh}rzvh}r{vh}r|vh]r}vjyvasssh}r~vh}rvh}r€vh]rvjyvasssuU ros_controlr‚v}rƒv(h}r„vh}r…vh]r†vUros/melodic/ros_controlr‡vassh }rˆvh }r‰vh}rŠvh]r‹vUros-melodic-ros-controlrŒvassshˆh}rvh}rŽvh}rvh]rvjŒvasssh}r‘vh}r’vh}r“vh]r”vjŒvasssuUgrid_map_rviz_pluginr•v}r–v(h}r—vh}r˜vh]r™vUros/melodic/grid_mapršvassh }r›vh }rœvh}rvh]ržvU ros-melodic-grid-map-rviz-pluginrŸvassshˆh}r vh}r¡vh}r¢vh]r£vjŸvasssh}r¤vh}r¥vh}r¦vh]r§vjŸvasssuUtowr_rosr¨v}r©v(h}rªvh}r«vh]r¬vUros/melodic/towrr­vassh }r®vh }r¯vh}r°vh]r±vUros-melodic-towr-rosr²vassshˆh}r³vh}r´vh}rµvh]r¶vj²vasssh}r·vh}r¸vh}r¹vh]rºvj²vasssuUcommon_tutorialsr»v}r¼v(h}r½vh}r¾vh]r¿vUros/melodic/common_tutorialsrÀvassh }rÁvh }rÂvh}rÃvh]rÄvUros-melodic-common-tutorialsrÅvassshˆh}rÆvh}rÇvh}rÈvh]rÉvjÅvasssh}rÊvh}rËvh}rÌvh]rÍvjÅvasssuUspatio_temporal_voxel_layerrÎv}rÏv(h}rÐvh}rÑvh]rÒvU'ros/melodic/spatio_temporal_voxel_layerrÓvassh }rÔvh }rÕvh}rÖvh]r×vU'ros-melodic-spatio-temporal-voxel-layerrØvassshˆh}rÙvh}rÚvh}rÛvh]rÜvjØvasssh}rÝvh}rÞvh}rßvh]ràvjØvasssuUdistance_map_rvizráv}râv(h}rãvh}rävh]råvUros/melodic/distance_maprævassh }rçvh }rèvh}révh]rêvUros-melodic-distance-map-rvizrëvassshˆh}rìvh}rívh}rîvh]rïvjëvasssh}rðvh}rñvh}ròvh]róvjëvasssuUrosbridge_libraryrôv}rõv(h}rövh}r÷vh]røvUros/melodic/rosbridge_suiterùvassh }rúvh }rûvh}rüvh]rývUros-melodic-rosbridge-libraryrþvassshˆh}rÿvh}rwh}rwh]rwjþvasssh}rwh}rwh}rwh]rwjþvasssuUtile_maprw}rw(h}r wh}r wh]r wUros/melodic/mapvizr wassh }r wh }rwh}rwh]rwUros-melodic-tile-maprwassshˆh}rwh}rwh}rwh]rwjwasssh}rwh}rwh}rwh]rwjwasssuUfetch_ikfast_pluginrw}rw(h}rwh}rwh]rwUros/melodic/fetch_rosrwassh }r wh }r!wh}r"wh]r#wUros-melodic-fetch-ikfast-pluginr$wassshˆh}r%wh}r&wh}r'wh]r(wj$wasssh}r)wh}r*wh}r+wh]r,wj$wasssuUcob_helper_toolsr-w}r.w(h}r/wh}r0wh]r1wUros/melodic/cob_command_toolsr2wassh }r3wh }r4wh}r5wh]r6wUros-melodic-cob-helper-toolsr7wassshˆh}r8wh}r9wh}r:wh]r;wj7wasssh}rwh]r?wj7wasssuUtf_conversionsr@w}rAw(h}rBwh}rCwh]rDwUros/melodic/geometryrEwassh }rFwh }rGwh}rHwh]rIwUros-melodic-tf-conversionsrJwassshˆh}rKwh}rLwh}rMwh]rNwjJwasssh}rOwh}rPwh}rQwh]rRwjJwasssuUdynamic_reconfigurerSw}rTw(h}rUwh}rVwh]rWwUros/melodic/dynamic_reconfigurerXwassh }rYwh }rZwh}r[wh]r\wUros-melodic-dynamic-reconfigurer]wassshˆh}r^wh}r_wh}r`wh]rawj]wasssh}rbwh}rcwh}rdwh]rewj]wasssuUtwist_mux_msgsrfw}rgw(h}rhwh}riwh]rjwUros/melodic/twist_mux_msgsrkwassh }rlwh }rmwh}rnwh]rowUros-melodic-twist-mux-msgsrpwassshˆh}rqwh}rrwh}rswh]rtwjpwasssh}ruwh}rvwh}rwwh]rxwjpwasssuUcob_moveit_configryw}rzw(h}r{wh}r|wh]r}wUros/melodic/cob_robotsr~wassh }rwh }r€wh}rwh]r‚wUros-melodic-cob-moveit-configrƒwassshˆh}r„wh}r…wh}r†wh]r‡wjƒwasssh}rˆwh}r‰wh}rŠwh]r‹wjƒwasssuUimu_sensor_controllerrŒw}rw(h}rŽwh}rwh]rwUros/melodic/ros_controllersr‘wassh }r’wh }r“wh}r”wh]r•wU!ros-melodic-imu-sensor-controllerr–wassshˆh}r—wh}r˜wh}r™wh]ršwj–wasssh}r›wh}rœwh}rwh]ržwj–wasssuUeffort_controllersrŸw}r w(h}r¡wh}r¢wh]r£wUros/melodic/ros_controllersr¤wassh }r¥wh }r¦wh}r§wh]r¨wUros-melodic-effort-controllersr©wassshˆh}rªwh}r«wh}r¬wh]r­wj©wasssh}r®wh}r¯wh}r°wh]r±wj©wasssuU ecl_configr²w}r³w(h}r´wh}rµwh]r¶wUros/melodic/ecl_liter·wassh }r¸wh }r¹wh}rºwh]r»wUros-melodic-ecl-configr¼wassshˆh}r½wh}r¾wh}r¿wh]rÀwj¼wasssh}rÁwh}rÂwh}rÃwh]rÄwj¼wasssuU p2os_urdfrÅw}rÆw(h}rÇwh}rÈwh]rÉwUros/melodic/p2osrÊwassh }rËwh }rÌwh}rÍwh]rÎwUros-melodic-p2os-urdfrÏwassshˆh}rÐwh}rÑwh}rÒwh]rÓwjÏwasssh}rÔwh}rÕwh}rÖwh]r×wjÏwasssuUnetwork_detectorrØw}rÙw(h}rÚwh}rÛwh]rÜwUros/melodic/linux_networkingrÝwassh }rÞwh }rßwh}ràwh]ráwUros-melodic-network-detectorrâwassshˆh}rãwh}räwh}råwh]ræwjâwasssh}rçwh}rèwh}réwh]rêwjâwasssuUecl_statisticsrëw}rìw(h}ríwh}rîwh]rïwUros/melodic/ecl_corerðwassh }rñwh }ròwh}rówh]rôwUros-melodic-ecl-statisticsrõwassshˆh}röwh}r÷wh}røwh]rùwjõwasssh}rúwh}rûwh}rüwh]rýwjõwasssuUyocs_navigatorrþw}rÿw(h}rxh}rxh]rxUros/melodic/yujin_ocsrxassh }rxh }rxh}rxh]rxUros-melodic-yocs-navigatorrxassshˆh}r xh}r xh}r xh]r xjxasssh}r xh}rxh}rxh]rxjxasssuUmoveit_planners_chomprx}rx(h}rxh}rxh]rxUros/melodic/moveitrxassh }rxh }rxh}rxh]rxU!ros-melodic-moveit-planners-chomprxassshˆh}rxh}rxh}rxh]rxjxasssh}r xh}r!xh}r"xh]r#xjxasssuUmbf_abstract_navr$x}r%x(h}r&xh}r'xh]r(xUros/melodic/move_base_flexr)xassh }r*xh }r+xh}r,xh]r-xUros-melodic-mbf-abstract-navr.xassshˆh}r/xh}r0xh}r1xh]r2xj.xasssh}r3xh}r4xh}r5xh]r6xj.xasssuUgrid_map_octomapr7x}r8x(h}r9xh}r:xh]r;xUros/melodic/grid_maprxh}r?xh]r@xUros-melodic-grid-map-octomaprAxassshˆh}rBxh}rCxh}rDxh]rExjAxasssh}rFxh}rGxh}rHxh]rIxjAxasssuU urdf_testrJx}rKx(h}rLxh}rMxh]rNxUros/melodic/urdf_testrOxassh }rPxh }rQxh}rRxh]rSxUros-melodic-urdf-testrTxassshˆh}rUxh}rVxh}rWxh]rXxjTxasssh}rYxh}rZxh}r[xh]r\xjTxasssuU grid_map_msgsr]x}r^x(h}r_xh}r`xh]raxUros/melodic/grid_maprbxassh }rcxh }rdxh}rexh]rfxUros-melodic-grid-map-msgsrgxassshˆh}rhxh}rixh}rjxh]rkxjgxasssh}rlxh}rmxh}rnxh]roxjgxasssuUseed_smartactuator_sdkrpx}rqx(h}rrxh}rsxh]rtxU"ros/melodic/seed_smartactuator_sdkruxassh }rvxh }rwxh}rxxh]ryxU"ros-melodic-seed-smartactuator-sdkrzxassshˆh}r{xh}r|xh}r}xh]r~xjzxasssh}rxh}r€xh}rxh]r‚xjzxasssuUnav2d_operatorrƒx}r„x(h}r…xh}r†xh]r‡xUros/melodic/navigation_2drˆxassh }r‰xh }rŠxh}r‹xh]rŒxUros-melodic-nav2d-operatorrxassshˆh}rŽxh}rxh}rxh]r‘xjxasssh}r’xh}r“xh}r”xh]r•xjxasssuU swri_rospyr–x}r—x(h}r˜xh}r™xh]ršxUros/melodic/marti_commonr›xassh }rœxh }rxh}ržxh]rŸxUros-melodic-swri-rospyr xassshˆh}r¡xh}r¢xh}r£xh]r¤xj xasssh}r¥xh}r¦xh}r§xh]r¨xj xasssuU capabilitiesr©x}rªx(h}r«xh}r¬xh]r­xUros/melodic/capabilitiesr®xassh }r¯xh }r°xh}r±xh]r²xUros-melodic-capabilitiesr³xassshˆh}r´xh}rµxh}r¶xh]r·xj³xasssh}r¸xh}r¹xh}rºxh]r»xj³xasssuUrosbuildr¼x}r½x(h}r¾xh}r¿xh]rÀxUros/melodic/rosrÁxassh }rÂxh }rÃxh}rÄxh]rÅxUros-melodic-rosbuildrÆxassshˆh}rÇxh}rÈxh}rÉxh]rÊxjÆxasssh}rËxh}rÌxh}rÍxh]rÎxjÆxasssuU prbt_grippersrÏx}rÐx(h}rÑxh}rÒxh]rÓxUros/melodic/prbt_grippersrÔxassh }rÕxh }rÖxh}r×xh]rØxUros-melodic-prbt-grippersrÙxassshˆh}rÚxh}rÛxh}rÜxh]rÝxjÙxasssh}rÞxh}rßxh}ràxh]ráxjÙxasssuUroscleanrâx}rãx(h}räxh}råxh]ræxUros/melodic/rosrçxassh }rèxh }réxh}rêxh]rëxUros-melodic-roscleanrìxassshˆh}ríxh}rîxh}rïxh]rðxjìxasssh}rñxh}ròxh}róxh]rôxjìxasssuUwarthog_descriptionrõx}röx(h}r÷xh}røxh]rùxUros/melodic/warthogrúxassh }rûxh }rüxh}rýxh]rþxUros-melodic-warthog-descriptionrÿxassshˆh}ryh}ryh}ryh]ryjÿxasssh}ryh}ryh}ryh]ryjÿxasssuUroslangry}r y(h}r yh}r yh]r yUros/melodic/rosr yassh }ryh }ryh}ryh]ryUros-melodic-roslangryassshˆh}ryh}ryh}ryh]ryjyasssh}ryh}ryh}ryh]ryjyasssuU cl_transformsry}ry(h}ryh}ryh]ryUros/melodic/roslisp_commonr yassh }r!yh }r"yh}r#yh]r$yUros-melodic-cl-transformsr%yassshˆh}r&yh}r'yh}r(yh]r)yj%yasssh}r*yh}r+yh}r,yh]r-yj%yasssuU rdl_ros_toolsr.y}r/y(h}r0yh}r1yh]r2yUros/melodic/rdlr3yassh }r4yh }r5yh}r6yh]r7yUros-melodic-rdl-ros-toolsr8yassshˆh}r9yh}r:yh}r;yh]ryh}r?yh]r@yj8yasssuUuuv_auv_control_allocatorrAy}rBy(h}rCyh}rDyh]rEyUros/melodic/uuv_simulatorrFyassh }rGyh }rHyh}rIyh]rJyU%ros-melodic-uuv-auv-control-allocatorrKyassshˆh}rLyh}rMyh}rNyh]rOyjKyasssh}rPyh}rQyh}rRyh]rSyjKyasssuU mir_gazeborTy}rUy(h}rVyh}rWyh]rXyUros/melodic/mir_robotrYyassh }rZyh }r[yh}r\yh]r]yUros-melodic-mir-gazebor^yassshˆh}r_yh}r`yh}rayh]rbyj^yasssh}rcyh}rdyh}reyh]rfyj^yasssuUdbw_mkz_twist_controllerrgy}rhy(h}riyh}rjyh]rkyUros/melodic/dbw_mkz_rosrlyassh }rmyh }rnyh}royh]rpyU$ros-melodic-dbw-mkz-twist-controllerrqyassshˆh}rryh}rsyh}rtyh]ruyjqyasssh}rvyh}rwyh}rxyh]ryyjqyasssuUjoint_trajectory_actionrzy}r{y(h}r|yh}r}yh]r~yUros/melodic/pr2_controllersryassh }r€yh }ryh}r‚yh]rƒyU#ros-melodic-joint-trajectory-actionr„yassshˆh}r…yh}r†yh}r‡yh]rˆyj„yasssh}r‰yh}rŠyh}r‹yh]rŒyj„yasssuUh264_video_encoderry}rŽy(h}ryh}ryh]r‘yUros/melodic/h264_video_encoderr’yassh }r“yh }r”yh}r•yh]r–yUros-melodic-h264-video-encoderr—yassshˆh}r˜yh}r™yh}ršyh]r›yj—yasssh}rœyh}ryh}ržyh]rŸyj—yasssuUconcert_service_msgsr y}r¡y(h}r¢yh}r£yh]r¤yUros/melodic/rocon_msgsr¥yassh }r¦yh }r§yh}r¨yh]r©yU ros-melodic-concert-service-msgsrªyassshˆh}r«yh}r¬yh}r­yh]r®yjªyasssh}r¯yh}r°yh}r±yh]r²yjªyasssuUflexbe_testingr³y}r´y(h}rµyh}r¶yh]r·yUros/melodic/flexber¸yassh }r¹yh }rºyh}r»yh]r¼yUros-melodic-flexbe-testingr½yassshˆh}r¾yh}r¿yh}rÀyh]rÁyj½yasssh}rÂyh}rÃyh}rÄyh]rÅyj½yasssuUqb_move_descriptionrÆy}rÇy(h}rÈyh}rÉyh]rÊyUros/melodic/qb_moverËyassh }rÌyh }rÍyh}rÎyh]rÏyUros-melodic-qb-move-descriptionrÐyassshˆh}rÑyh}rÒyh}rÓyh]rÔyjÐyasssh}rÕyh}rÖyh}r×yh]rØyjÐyasssuUapriltagrÙy}rÚy(h}rÛyh}rÜyh]rÝyUros/melodic/apriltagrÞyassh }rßyh }ràyh}ráyh]râyUros-melodic-apriltagrãyassshˆh}räyh}råyh}ræyh]rçyjãyasssh}rèyh}réyh}rêyh]rëyjãyasssuU lauv_controlrìy}ríy(h}rîyh}rïyh]rðyUros/melodic/lauv_gazeborñyassh }ròyh }róyh}rôyh]rõyUros-melodic-lauv-controlröyassshˆh}r÷yh}røyh}rùyh]rúyjöyasssh}rûyh}rüyh}rýyh]rþyjöyasssuUfetch_auto_dock_msgsrÿy}rz(h}rzh}rzh]rzUros/melodic/fetch_msgsrzassh }rzh }rzh}rzh]rzU ros-melodic-fetch-auto-dock-msgsr zassshˆh}r zh}r zh}r zh]r zj zasssh}rzh}rzh}rzh]rzj zasssuUcob_camera_sensorsrz}rz(h}rzh}rzh]rzUros/melodic/cob_driverrzassh }rzh }rzh}rzh]rzUros-melodic-cob-camera-sensorsrzassshˆh}rzh}rzh}rzh]r zjzasssh}r!zh}r"zh}r#zh]r$zjzasssuUmrpt_rbpf_slamr%z}r&z(h}r'zh}r(zh]r)zUros/melodic/mrpt_slamr*zassh }r+zh }r,zh}r-zh]r.zUros-melodic-mrpt-rbpf-slamr/zassshˆh}r0zh}r1zh}r2zh]r3zj/zasssh}r4zh}r5zh}r6zh]r7zj/zasssuUcob_cam3d_throttler8z}r9z(h}r:zh}r;zh]rzh }r?zh}r@zh]rAzUros-melodic-cob-cam3d-throttlerBzassshˆh}rCzh}rDzh}rEzh]rFzjBzasssh}rGzh}rHzh}rIzh]rJzjBzasssuUspeech_recognition_msgsrKz}rLz(h}rMzh}rNzh]rOzUros/melodic/jsk_common_msgsrPzassh }rQzh }rRzh}rSzh]rTzU#ros-melodic-speech-recognition-msgsrUzassshˆh}rVzh}rWzh}rXzh]rYzjUzasssh}rZzh}r[zh}r\zh]r]zjUzasssuUridgeback_msgsr^z}r_z(h}r`zh}razh]rbzUros/melodic/ridgebackrczassh }rdzh }rezh}rfzh]rgzUros-melodic-ridgeback-msgsrhzassshˆh}rizh}rjzh}rkzh]rlzjhzasssh}rmzh}rnzh}rozh]rpzjhzasssuUcob_mapping_slamrqz}rrz(h}rszh}rtzh]ruzUros/melodic/cob_navigationrvzassh }rwzh }rxzh}ryzh]rzzUros-melodic-cob-mapping-slamr{zassshˆh}r|zh}r}zh}r~zh]rzj{zasssh}r€zh}rzh}r‚zh]rƒzj{zasssuUrosfmtr„z}r…z(h}r†zh}r‡zh]rˆzUros/melodic/rosfmtr‰zassh }rŠzh }r‹zh}rŒzh]rzUros-melodic-rosfmtrŽzassshˆh}rzh}rzh}r‘zh]r’zjŽzasssh}r“zh}r”zh}r•zh]r–zjŽzasssuUactionlib_msgsr—z}r˜z(h}r™zh}ršzh]r›zUros/melodic/common_msgsrœzassh }rzh }ržzh}rŸzh]r zUros-melodic-actionlib-msgsr¡zassshˆh}r¢zh}r£zh}r¤zh]r¥zj¡zasssh}r¦zh}r§zh}r¨zh]r©zj¡zasssuUcloudwatch_metrics_commonrªz}r«z(h}r¬zh}r­zh]r®zUros/melodic/cloudwatch_commonr¯zassh }r°zh }r±zh}r²zh]r³zU%ros-melodic-cloudwatch-metrics-commonr´zassshˆh}rµzh}r¶zh}r·zh]r¸zj´zasssh}r¹zh}rºzh}r»zh]r¼zj´zasssuUrobot_calibration_msgsr½z}r¾z(h}r¿zh}rÀzh]rÁzUros/melodic/robot_calibrationrÂzassh }rÃzh }rÄzh}rÅzh]rÆzU"ros-melodic-robot-calibration-msgsrÇzassshˆh}rÈzh}rÉzh}rÊzh]rËzjÇzasssh}rÌzh}rÍzh}rÎzh]rÏzjÇzasssuUrocon_std_msgsrÐz}rÑz(h}rÒzh}rÓzh]rÔzUros/melodic/rocon_msgsrÕzassh }rÖzh }r×zh}rØzh]rÙzUros-melodic-rocon-std-msgsrÚzassshˆh}rÛzh}rÜzh}rÝzh]rÞzjÚzasssh}rßzh}ràzh}rázh]râzjÚzasssuU ntpd_driverrãz}räz(h}råzh}ræzh]rçzUros/melodic/ntpd_driverrèzassh }rézh }rêzh}rëzh]rìzUros-melodic-ntpd-driverrízassshˆh}rîzh}rïzh}rðzh]rñzjízasssh}ròzh}rózh}rôzh]rõzjízasssuUindustrial_trajectory_filtersröz}r÷z(h}røzh}rùzh]rúzUros/melodic/industrial_corerûzassh }rüzh }rýzh}rþzh]rÿzU)ros-melodic-industrial-trajectory-filtersr{assshˆh}r{h}r{h}r{h]r{j{asssh}r{h}r{h}r{h]r{j{asssuUgencppr {}r {(h}r {h}r {h]r {Uros/melodic/gencppr{assh }r{h }r{h}r{h]r{Uros-melodic-gencppr{assshˆh}r{h}r{h}r{h]r{j{asssh}r{h}r{h}r{h]r{j{asssuUcob_linear_navr{}r{(h}r{h}r{h]r {Uros/melodic/cob_navigationr!{assh }r"{h }r#{h}r${h]r%{Uros-melodic-cob-linear-navr&{assshˆh}r'{h}r({h}r){h]r*{j&{asssh}r+{h}r,{h}r-{h]r.{j&{asssuUlinux_networkingr/{}r0{(h}r1{h}r2{h]r3{Uros/melodic/linux_networkingr4{assh }r5{h }r6{h}r7{h]r8{Uros-melodic-linux-networkingr9{assshˆh}r:{h}r;{h}r<{h]r={j9{asssh}r>{h}r?{h}r@{h]rA{j9{asssuU camera_umdrB{}rC{(h}rD{h}rE{h]rF{Uros/melodic/camera_umdrG{assh }rH{h }rI{h}rJ{h]rK{Uros-melodic-camera-umdrL{assshˆh}rM{h}rN{h}rO{h]rP{jL{asssh}rQ{h}rR{h}rS{h]rT{jL{asssuU jsk_toolsrU{}rV{(h}rW{h}rX{h]rY{Uros/melodic/jsk_commonrZ{assh }r[{h }r\{h}r]{h]r^{Uros-melodic-jsk-toolsr_{assshˆh}r`{h}ra{h}rb{h]rc{j_{asssh}rd{h}re{h}rf{h]rg{j_{asssuU fsrobo_r_msgsrh{}ri{(h}rj{h}rk{h]rl{Uros/melodic/fsrobo_rrm{assh }rn{h }ro{h}rp{h]rq{Uros-melodic-fsrobo-r-msgsrr{assshˆh}rs{h}rt{h}ru{h]rv{jr{asssh}rw{h}rx{h}ry{h]rz{jr{asssuU grid_map_sdfr{{}r|{(h}r}{h}r~{h]r{Uros/melodic/grid_mapr€{assh }r{h }r‚{h}rƒ{h]r„{Uros-melodic-grid-map-sdfr…{assshˆh}r†{h}r‡{h}rˆ{h]r‰{j…{asssh}rŠ{h}r‹{h}rŒ{h]r{j…{asssuUros_environmentrŽ{}r{(h}r{h}r‘{h]r’{Uros/melodic/ros_environmentr“{assh }r”{h }r•{h}r–{h]r—{Uros-melodic-ros-environmentr˜{assshˆh}r™{h}rš{h}r›{h]rœ{j˜{asssh}r{h}rž{h}rŸ{h]r {j˜{asssuUlauv_descriptionr¡{}r¢{(h}r£{h}r¤{h]r¥{Uros/melodic/lauv_gazebor¦{assh }r§{h }r¨{h}r©{h]rª{Uros-melodic-lauv-descriptionr«{assshˆh}r¬{h}r­{h}r®{h]r¯{j«{asssh}r°{h}r±{h}r²{h]r³{j«{asssuUteleop_twist_keyboardr´{}rµ{(h}r¶{h}r·{h]r¸{U!ros/melodic/teleop_twist_keyboardr¹{assh }rº{h }r»{h}r¼{h]r½{U!ros-melodic-teleop-twist-keyboardr¾{assshˆh}r¿{h}rÀ{h}rÁ{h]rÂ{j¾{asssh}rÃ{h}rÄ{h}rÅ{h]rÆ{j¾{asssuU rqt_nav_viewrÇ{}rÈ{(h}rÉ{h}rÊ{h]rË{Uros/melodic/rqt_nav_viewrÌ{assh }rÍ{h }rÎ{h}rÏ{h]rÐ{Uros-melodic-rqt-nav-viewrÑ{assshˆh}rÒ{h}rÓ{h}rÔ{h]rÕ{jÑ{asssh}rÖ{h}r×{h}rØ{h]rÙ{jÑ{asssuUroslintrÚ{}rÛ{(h}rÜ{h}rÝ{h]rÞ{Uros/melodic/roslintrß{assh }rà{h }rá{h}râ{h]rã{Uros-melodic-roslinträ{assshˆh}rå{h}ræ{h}rç{h]rè{jä{asssh}ré{h}rê{h}rë{h]rì{jä{asssuUcob_gazebo_worldsrí{}rî{(h}rï{h}rð{h]rñ{Uros/melodic/cob_simulationrò{assh }ró{h }rô{h}rõ{h]rö{Uros-melodic-cob-gazebo-worldsr÷{assshˆh}rø{h}rù{h}rú{h]rû{j÷{asssh}rü{h}rý{h}rþ{h]rÿ{j÷{asssuUstager|}r|(h}r|h}r|h]r|Uros/melodic/stager|assh }r|h }r|h}r|h]r |Uros-melodic-stager |assshˆh}r |h}r |h}r |h]r|j |asssh}r|h}r|h}r|h]r|j |asssuU roomba_stager|}r|(h}r|h}r|h]r|U ros/melodic/navigation_tutorialsr|assh }r|h }r|h}r|h]r|Uros-melodic-roomba-stager|assshˆh}r|h}r|h}r |h]r!|j|asssh}r"|h}r#|h}r$|h]r%|j|asssuUrqt_reconfigurer&|}r'|(h}r(|h}r)|h]r*|Uros/melodic/rqt_reconfigurer+|assh }r,|h }r-|h}r.|h]r/|Uros-melodic-rqt-reconfigurer0|assshˆh}r1|h}r2|h}r3|h]r4|j0|asssh}r5|h}r6|h}r7|h]r8|j0|asssuU canopen_402r9|}r:|(h}r;|h}r<|h]r=|Uros/melodic/ros_canopenr>|assh }r?|h }r@|h}rA|h]rB|Uros-melodic-canopen-402rC|assshˆh}rD|h}rE|h}rF|h]rG|jC|asssh}rH|h}rI|h}rJ|h]rK|jC|asssuUroswwwrL|}rM|(h}rN|h}rO|h]rP|Uros/melodic/roswwwrQ|assh }rR|h }rS|h}rT|h]rU|Uros-melodic-roswwwrV|assshˆh}rW|h}rX|h}rY|h]rZ|jV|asssh}r[|h}r\|h}r]|h]r^|jV|asssuUnetwork_autoconfigr_|}r`|(h}ra|h}rb|h]rc|Uros/melodic/network_autoconfigrd|assh }re|h }rf|h}rg|h]rh|Uros-melodic-network-autoconfigri|assshˆh}rj|h}rk|h}rl|h]rm|ji|asssh}rn|h}ro|h}rp|h]rq|ji|asssuU ros_reflexxesrr|}rs|(h}rt|h}ru|h]rv|Uros/melodic/ipr_externrw|assh }rx|h }ry|h}rz|h]r{|Uros-melodic-ros-reflexxesr||assshˆh}r}|h}r~|h}r|h]r€|j||asssh}r|h}r‚|h}rƒ|h]r„|j||asssuUcob_android_settingsr…|}r†|(h}r‡|h}rˆ|h]r‰|Uros/melodic/cob_androidrŠ|assh }r‹|h }rŒ|h}r|h]rŽ|U ros-melodic-cob-android-settingsr|assshˆh}r|h}r‘|h}r’|h]r“|j|asssh}r”|h}r•|h}r–|h]r—|j|asssuUcob_android_resource_serverr˜|}r™|(h}rš|h}r›|h]rœ|Uros/melodic/cob_androidr|assh }rž|h }rŸ|h}r |h]r¡|U'ros-melodic-cob-android-resource-serverr¢|assshˆh}r£|h}r¤|h}r¥|h]r¦|j¢|asssh}r§|h}r¨|h}r©|h]rª|j¢|asssuUwarehouse_ros_mongor«|}r¬|(h}r­|h}r®|h]r¯|Uros/melodic/warehouse_ros_mongor°|assh }r±|h }r²|h}r³|h]r´|Uros-melodic-warehouse-ros-mongorµ|assshˆh}r¶|h}r·|h}r¸|h]r¹|jµ|asssh}rº|h}r»|h}r¼|h]r½|jµ|asssuUcob_command_guir¾|}r¿|(h}rÀ|h}rÁ|h]rÂ|Uros/melodic/cob_command_toolsrÃ|assh }rÄ|h }rÅ|h}rÆ|h]rÇ|Uros-melodic-cob-command-guirÈ|assshˆh}rÉ|h}rÊ|h}rË|h]rÌ|jÈ|asssh}rÍ|h}rÎ|h}rÏ|h]rÐ|jÈ|asssuUmarti_sensor_msgsrÑ|}rÒ|(h}rÓ|h}rÔ|h]rÕ|Uros/melodic/marti_messagesrÖ|assh }r×|h }rØ|h}rÙ|h]rÚ|Uros-melodic-marti-sensor-msgsrÛ|assshˆh}rÜ|h}rÝ|h}rÞ|h]rß|jÛ|asssh}rà|h}rá|h}râ|h]rã|jÛ|asssuUnetwork_control_testsrä|}rå|(h}ræ|h}rç|h]rè|Uros/melodic/linux_networkingré|assh }rê|h }rë|h}rì|h]rí|U!ros-melodic-network-control-testsrî|assshˆh}rï|h}rð|h}rñ|h]rò|jî|asssh}ró|h}rô|h}rõ|h]rö|jî|asssuUcob_scan_unifierr÷|}rø|(h}rù|h}rú|h]rû|Uros/melodic/cob_driverrü|assh }rý|h }rþ|h}rÿ|h]r}Uros-melodic-cob-scan-unifierr}assshˆh}r}h}r}h}r}h]r}j}asssh}r}h}r}h}r}h]r }j}asssuUmoveit_ros_manipulationr }}r }(h}r }h}r }h]r}Uros/melodic/moveitr}assh }r}h }r}h}r}h]r}U#ros-melodic-moveit-ros-manipulationr}assshˆh}r}h}r}h}r}h]r}j}asssh}r}h}r}h}r}h]r}j}asssuU rosbag_pandasr}}r}(h}r}h}r }h]r!}Uros/melodic/rosbag_pandasr"}assh }r#}h }r$}h}r%}h]r&}Uros-melodic-rosbag-pandasr'}assshˆh}r(}h}r)}h}r*}h]r+}j'}asssh}r,}h}r-}h}r.}h]r/}j'}asssuU swri_nodeletr0}}r1}(h}r2}h}r3}h]r4}Uros/melodic/marti_commonr5}assh }r6}h }r7}h}r8}h]r9}Uros-melodic-swri-nodeletr:}assshˆh}r;}h}r<}h}r=}h]r>}j:}asssh}r?}h}r@}h}rA}h]rB}j:}asssuUqb_move_hardware_interfacerC}}rD}(h}rE}h}rF}h]rG}Uros/melodic/qb_moverH}assh }rI}h }rJ}h}rK}h]rL}U&ros-melodic-qb-move-hardware-interfacerM}assshˆh}rN}h}rO}h}rP}h]rQ}jM}asssh}rR}h}rS}h}rT}h]rU}jM}asssuUarbotix_pythonrV}}rW}(h}rX}h}rY}h]rZ}Uros/melodic/arbotixr[}assh }r\}h }r]}h}r^}h]r_}Uros-melodic-arbotix-pythonr`}assshˆh}ra}h}rb}h}rc}h]rd}j`}asssh}re}h}rf}h}rg}h]rh}j`}asssuUpr2_msgsri}}rj}(h}rk}h}rl}h]rm}Uros/melodic/pr2_commonrn}assh }ro}h }rp}h}rq}h]rr}Uros-melodic-pr2-msgsrs}assshˆh}rt}h}ru}h}rv}h]rw}js}asssh}rx}h}ry}h}rz}h]r{}js}asssuUdesistek_saga_gazebor|}}r}}(h}r~}h}r}h]r€}Uros/melodic/desistek_sagar}assh }r‚}h }rƒ}h}r„}h]r…}U ros-melodic-desistek-saga-gazebor†}assshˆh}r‡}h}rˆ}h}r‰}h]rŠ}j†}asssh}r‹}h}rŒ}h}r}h]rŽ}j†}asssuU code_coverager}}r}(h}r‘}h}r’}h]r“}Uros/melodic/code_coverager”}assh }r•}h }r–}h}r—}h]r˜}Uros-melodic-code-coverager™}assshˆh}rš}h}r›}h}rœ}h]r}j™}asssh}rž}h}rŸ}h}r }h]r¡}j™}asssuUtwist_recoveryr¢}}r£}(h}r¤}h}r¥}h]r¦}U#ros/melodic/navigation_experimentalr§}assh }r¨}h }r©}h}rª}h]r«}Uros-melodic-twist-recoveryr¬}assshˆh}r­}h}r®}h}r¯}h]r°}j¬}asssh}r±}h}r²}h}r³}h]r´}j¬}asssuUodometry_publisher_tutorialrµ}}r¶}(h}r·}h}r¸}h]r¹}U ros/melodic/navigation_tutorialsrº}assh }r»}h }r¼}h}r½}h]r¾}U'ros-melodic-odometry-publisher-tutorialr¿}assshˆh}rÀ}h}rÁ}h}rÂ}h]rÃ}j¿}asssh}rÄ}h}rÅ}h}rÆ}h]rÇ}j¿}asssuUgeneric_throttlerÈ}}rÉ}(h}rÊ}h}rË}h]rÌ}Uros/melodic/cob_command_toolsrÍ}assh }rÎ}h }rÏ}h}rÐ}h]rÑ}Uros-melodic-generic-throttlerÒ}assshˆh}rÓ}h}rÔ}h}rÕ}h]rÖ}jÒ}asssh}r×}h}rØ}h}rÙ}h]rÚ}jÒ}asssuU cob_actionsrÛ}}rÜ}(h}rÝ}h}rÞ}h]rß}Uros/melodic/cob_commonrà}assh }rá}h }râ}h}rã}h]rä}Uros-melodic-cob-actionsrå}assshˆh}ræ}h}rç}h}rè}h]ré}jå}asssh}rê}h}rë}h}rì}h]rí}jå}asssuUbaggerrî}}rï}(h}rð}h}rñ}h]rò}Uros/melodic/baggerró}assh }rô}h }rõ}h}rö}h]r÷}Uros-melodic-baggerrø}assshˆh}rù}h}rú}h}rû}h]rü}jø}asssh}rý}h}rþ}h}rÿ}h]r~jø}asssuUrospilotr~}r~(h}r~h}r~h]r~Uros/melodic/rospilotr~assh }r~h }r~h}r ~h]r ~Uros-melodic-rospilotr ~assshˆh}r ~h}r ~h}r~h]r~j ~asssh}r~h}r~h}r~h]r~j ~asssuUmultimaster_launchr~}r~(h}r~h}r~h]r~U!ros/melodic/cpr_multimaster_toolsr~assh }r~h }r~h}r~h]r~Uros-melodic-multimaster-launchr~assshˆh}r~h}r ~h}r!~h]r"~j~asssh}r#~h}r$~h}r%~h]r&~j~asssuUuuv_thruster_managerr'~}r(~(h}r)~h}r*~h]r+~Uros/melodic/uuv_simulatorr,~assh }r-~h }r.~h}r/~h]r0~U ros-melodic-uuv-thruster-managerr1~assshˆh}r2~h}r3~h}r4~h]r5~j1~asssh}r6~h}r7~h}r8~h]r9~j1~asssuUuuv_gazebo_ros_pluginsr:~}r;~(h}r<~h}r=~h]r>~Uros/melodic/uuv_simulatorr?~assh }r@~h }rA~h}rB~h]rC~U"ros-melodic-uuv-gazebo-ros-pluginsrD~assshˆh}rE~h}rF~h}rG~h]rH~jD~asssh}rI~h}rJ~h}rK~h]rL~jD~asssuU dbw_mkz_canrM~}rN~(h}rO~h}rP~h]rQ~Uros/melodic/dbw_mkz_rosrR~assh }rS~h }rT~h}rU~h]rV~Uros-melodic-dbw-mkz-canrW~assshˆh}rX~h}rY~h}rZ~h]r[~jW~asssh}r\~h}r]~h}r^~h]r_~jW~asssuUcob_hardware_configr`~}ra~(h}rb~h}rc~h]rd~Uros/melodic/cob_robotsre~assh }rf~h }rg~h}rh~h]ri~Uros-melodic-cob-hardware-configrj~assshˆh}rk~h}rl~h}rm~h]rn~jj~asssh}ro~h}rp~h}rq~h]rr~jj~asssuU radar_msgsrs~}rt~(h}ru~h}rv~h]rw~Uros/melodic/astuff_sensor_msgsrx~assh }ry~h }rz~h}r{~h]r|~Uros-melodic-radar-msgsr}~assshˆh}r~~h}r~h}r€~h]r~j}~asssh}r‚~h}rƒ~h}r„~h]r…~j}~asssuUhusky_simulatorr†~}r‡~(h}rˆ~h}r‰~h]rŠ~Uros/melodic/huskyr‹~assh }rŒ~h }r~h}rŽ~h]r~Uros-melodic-husky-simulatorr~assshˆh}r‘~h}r’~h}r“~h]r”~j~asssh}r•~h}r–~h}r—~h]r˜~j~asssuUmrpt_localizationr™~}rš~(h}r›~h}rœ~h]r~Uros/melodic/mrpt_navigationrž~assh }rŸ~h }r ~h}r¡~h]r¢~Uros-melodic-mrpt-localizationr£~assshˆh}r¤~h}r¥~h}r¦~h]r§~j£~asssh}r¨~h}r©~h}rª~h]r«~j£~asssuU clock_relayr¬~}r­~(h}r®~h}r¯~h]r°~U!ros/melodic/cpr_multimaster_toolsr±~assh }r²~h }r³~h}r´~h]rµ~Uros-melodic-clock-relayr¶~assshˆh}r·~h}r¸~h}r¹~h]rº~j¶~asssh}r»~h}r¼~h}r½~h]r¾~j¶~asssuUpidr¿~}rÀ~(h}rÁ~h}rÂ~h]rÃ~Uros/melodic/pidrÄ~assh }rÅ~h }rÆ~h}rÇ~h]rÈ~Uros-melodic-pidrÉ~assshˆh}rÊ~h}rË~h}rÌ~h]rÍ~jÉ~asssh}rÎ~h}rÏ~h}rÐ~h]rÑ~jÉ~asssuUdynamic_tf_publisherrÒ~}rÓ~(h}rÔ~h}rÕ~h]rÖ~Uros/melodic/jsk_commonr×~assh }rØ~h }rÙ~h}rÚ~h]rÛ~U ros-melodic-dynamic-tf-publisherrÜ~assshˆh}rÝ~h}rÞ~h}rß~h]rà~jÜ~asssh}rá~h}râ~h}rã~h]rä~jÜ~asssuU imagezerorå~}ræ~(h}rç~h}rè~h]ré~Uros/melodic/imagezero_transportrê~assh }rë~h }rì~h}rí~h]rî~Uros-melodic-imagezerorï~assshˆh}rð~h}rñ~h}rò~h]ró~jï~asssh}rô~h}rõ~h}rö~h]r÷~jï~asssuUypspurrø~}rù~(h}rú~h}rû~h]rü~Uros/melodic/yp-spurrý~assh }rþ~h }rÿ~h}rh]rUros-melodic-ypspurrassshˆh}rh}rh}rh]rjasssh}rh}rh}r h]r jasssuU cmake_modulesr }r (h}r h}rh]rUros/melodic/cmake_modulesrassh }rh }rh}rh]rUros-melodic-cmake-modulesrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuUnav_corer}r(h}r h}r!h]r"Uros/melodic/navigationr#assh }r$h }r%h}r&h]r'Uros-melodic-nav-corer(assshˆh}r)h}r*h}r+h]r,j(asssh}r-h}r.h}r/h]r0j(asssuUopenni2_camerar1}r2(h}r3h}r4h]r5Uros/melodic/openni2_camerar6assh }r7h }r8h}r9h]r:Uros-melodic-openni2-camerar;assshˆh}r<h}r=h}r>h]r?j;asssh}r@h}rAh}rBh]rCj;asssuUmoveit_pluginsrD}rE(h}rFh}rGh]rHUros/melodic/moveitrIassh }rJh }rKh}rLh]rMUros-melodic-moveit-pluginsrNassshˆh}rOh}rPh}rQh]rRjNasssh}rSh}rTh}rUh]rVjNasssuU kobuki_ftdirW}rX(h}rYh}rZh]r[Uros/melodic/kobuki_corer\assh }r]h }r^h}r_h]r`Uros-melodic-kobuki-ftdiraassshˆh}rbh}rch}rdh]rejaasssh}rfh}rgh}rhh]rijaasssuUmoveit_ros_visualizationrj}rk(h}rlh}rmh]rnUros/melodic/moveitroassh }rph }rqh}rrh]rsU$ros-melodic-moveit-ros-visualizationrtassshˆh}ruh}rvh}rwh]rxjtasssh}ryh}rzh}r{h]r|jtasssuU rosbag_editorr}}r~(h}rh}r€h]rUros/melodic/rosbag_editorr‚assh }rƒh }r„h}r…h]r†Uros-melodic-rosbag-editorr‡assshˆh}rˆh}r‰h}rŠh]r‹j‡asssh}rŒh}rh}rŽh]rj‡asssuUnav2d_explorationr}r‘(h}r’h}r“h]r”Uros/melodic/navigation_2dr•assh }r–h }r—h}r˜h]r™Uros-melodic-nav2d-explorationršassshˆh}r›h}rœh}rh]ržjšasssh}rŸh}r h}r¡h]r¢jšasssuU calibrationr£}r¤(h}r¥h}r¦h]r§Uros/melodic/calibrationr¨assh }r©h }rªh}r«h]r¬Uros-melodic-calibrationr­assshˆh}r®h}r¯h}r°h]r±j­asssh}r²h}r³h}r´h]rµj­asssuUecl_manipulationr¶}r·(h}r¸h}r¹h]rºUros/melodic/ecl_manipulationr»assh }r¼h }r½h}r¾h]r¿Uros-melodic-ecl-manipulationrÀassshˆh}rÁh}rÂh}rÃh]rÄjÀasssh}rÅh}rÆh}rÇh]rÈjÀasssuUlms1xxrÉ}rÊ(h}rËh}rÌh]rÍUros/melodic/lms1xxrÎassh }rÏh }rÐh}rÑh]rÒUros-melodic-lms1xxrÓassshˆh}rÔh}rÕh}rÖh]r×jÓasssh}rØh}rÙh}rÚh]rÛjÓasssuUabb_irb6640_supportrÜ}rÝ(h}rÞh}rßh]ràUros/melodic/abbráassh }râh }rãh}räh]råUros-melodic-abb-irb6640-supportræassshˆh}rçh}rèh}réh]rêjæasssh}rëh}rìh}ríh]rîjæasssuUpr2_descriptionrï}rð(h}rñh}ròh]róUros/melodic/pr2_commonrôassh }rõh }röh}r÷h]røUros-melodic-pr2-descriptionrùassshˆh}rúh}rûh}rüh]rýjùasssh}rþh}rÿh}r€h]r€jùasssuUrqtr€}r€(h}r€h}r€h]r€Uros/melodic/rqtr€assh }r€h }r €h}r €h]r €Uros-melodic-rqtr €assshˆh}r €h}r€h}r€h]r€j €asssh}r€h}r€h}r€h]r€j €asssuUassisted_teleopr€}r€(h}r€h}r€h]r€U#ros/melodic/navigation_experimentalr€assh }r€h }r€h}r€h]r€Uros-melodic-assisted-teleopr€assshˆh}r €h}r!€h}r"€h]r#€j€asssh}r$€h}r%€h}r&€h]r'€j€asssuUmessage_filtersr(€}r)€(h}r*€h}r+€h]r,€Uros/melodic/ros_commr-€assh }r.€h }r/€h}r0€h]r1€Uros-melodic-message-filtersr2€assshˆh}r3€h}r4€h}r5€h]r6€j2€asssh}r7€h}r8€h}r9€h]r:€j2€asssuU qt_gui_appr;€}r<€(h}r=€h}r>€h]r?€Uros/melodic/qt_gui_corer@€assh }rA€h }rB€h}rC€h]rD€Uros-melodic-qt-gui-apprE€assshˆh}rF€h}rG€h}rH€h]rI€jE€asssh}rJ€h}rK€h}rL€h]rM€jE€asssuUunderwater_vehicle_dynamicsrN€}rO€(h}rP€h}rQ€h]rR€U!ros/melodic/underwater_simulationrS€assh }rT€h }rU€h}rV€h]rW€U'ros-melodic-underwater-vehicle-dynamicsrX€assshˆh}rY€h}rZ€h}r[€h]r\€jX€asssh}r]€h}r^€h}r_€h]r`€jX€asssuUpr2_dashboard_aggregatorra€}rb€(h}rc€h}rd€h]re€Uros/melodic/pr2_commonrf€assh }rg€h }rh€h}ri€h]rj€U$ros-melodic-pr2-dashboard-aggregatorrk€assshˆh}rl€h}rm€h}rn€h]ro€jk€asssh}rp€h}rq€h}rr€h]rs€jk€asssuUtoposens_descriptionrt€}ru€(h}rv€h}rw€h]rx€Uros/melodic/toposensry€assh }rz€h }r{€h}r|€h]r}€U ros-melodic-toposens-descriptionr~€assshˆh}r€h}r€€h}r€h]r‚€j~€asssh}rƒ€h}r„€h}r…€h]r†€j~€asssuUroseusr‡€}rˆ€(h}r‰€h}rŠ€h]r‹€Uros/melodic/jsk_roseusrŒ€assh }r€h }rŽ€h}r€h]r€Uros-melodic-roseusr‘€assshˆh}r’€h}r“€h}r”€h]r•€j‘€asssh}r–€h}r—€h}r˜€h]r™€j‘€asssuU lgsvl_msgsrš€}r›€(h}rœ€h}r€h]rž€Uros/melodic/lgsvl_msgsrŸ€assh }r €h }r¡€h}r¢€h]r£€Uros-melodic-lgsvl-msgsr¤€assshˆh}r¥€h}r¦€h}r§€h]r¨€j¤€asssh}r©€h}rª€h}r«€h]r¬€j¤€asssuUcob_tricycle_controllerr­€}r®€(h}r¯€h}r°€h]r±€Uros/melodic/cob_controlr²€assh }r³€h }r´€h}rµ€h]r¶€U#ros-melodic-cob-tricycle-controllerr·€assshˆh}r¸€h}r¹€h}rº€h]r»€j·€asssh}r¼€h}r½€h}r¾€h]r¿€j·€asssuUqt_qmakerÀ€}rÁ€(h}r€h}rÀh]rÄ€Uros/melodic/qt_metapackagesrÅ€assh }rÆ€h }rÇ€h}rÈ€h]rÉ€Uros-melodic-qt-qmakerÊ€assshˆh}rË€h}rÌ€h}rÍ€h]r΀jÊ€asssh}rÏ€h}rЀh}rÑ€h]rÒ€jÊ€asssuUrqt_controller_managerrÓ€}rÔ€(h}rÕ€h}rÖ€h]r×€Uros/melodic/ros_controlrØ€assh }rÙ€h }rÚ€h}rÛ€h]rÜ€U"ros-melodic-rqt-controller-managerrÝ€assshˆh}rÞ€h}r߀h}rà€h]rá€jÝ€asssh}râ€h}rã€h}rä€h]rå€jÝ€asssuU ibeo_msgsræ€}rç€(h}rè€h}ré€h]rê€Uros/melodic/astuff_sensor_msgsrë€assh }rì€h }rí€h}rî€h]rï€Uros-melodic-ibeo-msgsrð€assshˆh}rñ€h}rò€h}ró€h]rô€jð€asssh}rõ€h}rö€h}r÷€h]rø€jð€asssuUrosbagrù€}rú€(h}rû€h}rü€h]rý€Uros/melodic/ros_commrþ€assh }rÿ€h }rh}rh]rUros-melodic-rosbagrassshˆh}rh}rh}rh]rjasssh}rh}r h}r h]r jasssuUeca_a9_descriptionr }r (h}rh}rh]rUros/melodic/eca_a9rassh }rh }rh}rh]rUros-melodic-eca-a9-descriptionrassshˆh}rh}rh}rh]rjasssh}rh}rh}rh]rjasssuu.catkin_lint-1.6.6/test/sources.cache/a4b3c8956ab7a3e6d293ba33b57fac42799e69e6.pickle000066400000000000000000000275021362025056600264750ustar00rootroot00000000000000€}q(Utexlive-latex-base}qUosx}qUhomebrew}qUpackages]sssUliburdfdom-headers-dev}qUosx}qUhomebrew}qUpackages]qUurdfdom_headersq asssUeigen}q Uosx}q Uhomebrew}q (Udepends]q UgfortranqaUpackages]qUeigenqaussUtinyxml2}qUosx}qUhomebrew}qUpackages]qUtinyxml2qasssUglut}qUosx}qUhomebrew}qUpackages]qUfreeglutqasssU libusb-1.0}qUosx}qUhomebrew}qUpackages]qUlibusbqasssU qtbase5-dev}q Uosx}q!Uhomebrew}q"Upackages]q#Uqt5q$asssUlz4}q%Uosx}q&Uhomebrew}q'Upackages]q(Ulz4q)asssUgraphviz}q*Uosx}q+Uhomebrew}q,Upackages]q-Ugraphvizq.asssUcppad}q/Uosx}q0Uhomebrew}q1Upackages]q2Ucppadq3asssUnetcdf}q4Uosx}q5Uhomebrew}q6Upackages]q7Unetcdfq8asssUlibconsole-bridge-dev}q9Uosx}q:Uhomebrew}q;Upackages]qUosx}q?Uhomebrew}q@Upackages]sssUcppunit}qAUosx}qBUhomebrew}qCUpackages]qDUcppunitqEasssUcython}qFUosx}qGUhomebrew}qHUpackages]qIUcythonqJasssUlibopenni-sensor-primesense-dev}qKUosx}qLUhomebrew}qMUpackages]qNUtotakke/openni/sensor-kinectqOasssUuuid}qPUosx}qQUhomebrew}qRUpackages]qSU ossp-uuidqTasssUlibpcap}qUUosx}qVUhomebrew}qWUpackages]sssU libfltk-dev}qXUosx}qYUhomebrew}qZUpackages]q[Ufltkq\asssU libfcl-dev}q]Uosx}q^Uhomebrew}q_Upackages]q`Udartsim/dart/fclqaasssUlibreadline-dev}qbUosx}qcUhomebrew}qdUpackages]qeUreadlineqfasssU subversion}qgUosx}qhUhomebrew}qiUpackages]qjU subversionqkasssUyaml}qlUosx}qmUhomebrew}qnUpackages]qoUlibyamlqpasssUopenmpi}qqUosx}qrUhomebrew}qsUpackages]qtUopen-mpiquasssU libvtk-java}qvUosx}qwUhomebrew}qxUdepends]qyUlibvtkqzasssU libtiff-dev}q{Uosx}q|Uhomebrew}q}Upackages]q~UlibtiffqasssUatlas}q€Uosx}qUhomebrew}q‚Upackages]sssUlog4cxx}qƒUosx}q„Uhomebrew}q…Upackages]q†Ulog4cxxq‡asssUlua-dev}qˆUosx}q‰Uhomebrew}qŠUpackages]q‹UluaqŒasssUlibqt5-widgets}qUosx}qŽUhomebrew}qUpackages]qUqt5q‘asssUfreetype}q’Uosx}q“Uhomebrew}q”Upackages]q•Ufreetypeq–asssUunzip}q—Uosx}q˜Uhomebrew}q™Upackages]sssUpython}qšUosx}q›Uhomebrew}qœUpackages]sssU libssl-dev}qUosx}qžUhomebrew}qŸUpackages]sssUrake}q Uosx}q¡Uhomebrew}q¢Upackages]sssUfluid}q£Uosx}q¤Uhomebrew}q¥Upackages]q¦Ufltkq§asssUgtk2}q¨Uosx}q©Uhomebrew}qªUpackages]q«Ugtk+q¬asssUopencv2}q­Uosx}q®Uhomebrew}q¯Upackages]q°Uopencvq±asssU libopencv-dev}q²Uosx}q³Uhomebrew}q´Upackages]qµUopencvq¶asssUboost}q·Uosx}q¸Uhomebrew}q¹Upackages]qº(Uboostq»U boost-pythonq¼esssUlibncurses-dev}q½Uosx}q¾Uhomebrew}q¿Upackages]sssUgfortran}qÀUosx}qÁUhomebrew}qÂUpackages]qÃUgccqÄasssUtbb}qÅUosx}qÆUhomebrew}qÇUpackages]qÈUtbbqÉasssUlibqt5-opengl-dev}qÊUosx}qËUhomebrew}qÌUpackages]qÍUqt5qÎasssUffmpeg}qÏUosx}qÐUhomebrew}qÑUpackages]qÒUffmpegqÓasssUlibjpeg}qÔUosx}qÕUhomebrew}qÖUpackages]q×UjpegqØasssU libpoco-dev}qÙUosx}qÚUhomebrew}qÛUpackages]qÜUpocoqÝasssUlibqhull}qÞUosx}qßUhomebrew}qàUpackages]qáUqhullqâasssU assimp-dev}qãUosx}qäUhomebrew}qåUpackages]qæUassimpqçasssUbison}qèUosx}qéUhomebrew}qêUpackages]sssUlibqwt}qëUosx}qìUhomebrew}qíUpackages]qîUqwtqïasssU libpng12-dev}qðUosx}qñUhomebrew}qòUpackages]qóUlibpngqôasssU pkg-config}qõUosx}qöUhomebrew}q÷Upackages]qøU pkg-configqùasssU python-opencv}qúUosx}qûUhomebrew}qüUpackages]qýUopencvqþasssU libccd-dev}qÿUosx}rUhomebrew}rUpackages]rUhomebrew/science/libccdrasssU freeimage}rUosx}rUhomebrew}rUpackages]rU freeimagerasssU libopenni-dev}r Uosx}r Uhomebrew}r Upackages]r Uopennir asssUtango-icon-theme}rUosx}rUhomebrew}rUpackages]rUtango-icon-themerasssU libftdi-dev}rUosx}rUhomebrew}rUpackages]rUlibftdi0rasssU gperftools}rUosx}rUhomebrew}rUpackages]rUgoogle-perftoolsrasssUgazebo5}rUosx}rUhomebrew}rUpackages]r Uosrf/simulation/gazebo5r!asssUlibxaw}r"Uosx}r#Uhomebrew}r$Upackages]sssUgazebo7}r%Uosx}r&Uhomebrew}r'Upackages]r(Ugazebo7r)asssU wxwidgets}r*Uosx}r+Uhomebrew}r,Udepends]r-Uwxpythonr.asssUlibgsl}r/Uosx}r0Uhomebrew}r1Upackages]r2Ugslr3asssUautomake}r4Uosx}r5Uhomebrew}r6Upackages]sssUgtest}r7Uosx}r8Uhomebrew}r9Upackages]r:Ugtestr;asssUproj}r<Uosx}r=Uhomebrew}r>Upackages]r?Uprojr@asssU spacenavd}rAUosx}rBUhomebrew}rCUpackages]rDUlibspnavrEasssUlibxext}rFUosx}rGUhomebrew}rHUpackages]sssUgazebo}rIUosx}rJUhomebrew}rKUpackages]rLUgazeborMasssUlibpgm}rNUosx}rOUhomebrew}rPUpackages]rQUlibpgmrRasssU libflann-dev}rSUosx}rTUhomebrew}rUUpackages]rVUflannrWasssUpcre-dev}rXUosx}rYUhomebrew}rZUpackages]r[Upcre++r\asssU libdc1394-dev}r]Uosx}r^Uhomebrew}r_Upackages]r`U libdc1394raasssUpython-pyassimp}rbUosx}rcUhomebrew}rdUpackages]reUpyassimprfasssUbazaar}rgUosx}rhUhomebrew}riUpackages]rjUbazaarrkasssUcrypto++}rlUosx}rmUhomebrew}rnUpackages]roUcryptopprpasssU libpcl-all}rqUosx}rrUhomebrew}rsUdepends]rtUlibpcl-all-devruasssUdoxygen}rvUosx}rwUhomebrew}rxUpackages]ryUdoxygenrzasssUhdf5}r{Uosx}r|Uhomebrew}r}Upackages]r~Uhdf5rasssU sdl-image}r€Uosx}rUhomebrew}r‚Upackages]rƒU sdl_imager„asssU python-vtk}r…Uosx}r†Uhomebrew}r‡Udepends]rˆUlibvtkr‰asssUlibogg}rŠUosx}r‹Uhomebrew}rŒUpackages]rUliboggrŽasssU libxxf86vm}rUosx}rUhomebrew}r‘Upackages]sssUlibflann}r’Uosx}r“Uhomebrew}r”Upackages]r•Uflannr–asssU libusb-dev}r—Uosx}r˜Uhomebrew}r™Upackages]ršU libusb-compatr›asssUapr}rœUosx}rUhomebrew}ržUpackages]sssUlibvtk}rŸUosx}r Uhomebrew}r¡Upackages]r¢Uvtkr£asssUjasper}r¤Uosx}r¥Uhomebrew}r¦Upackages]r§Ujasperr¨asssU protobuf-dev}r©Uosx}rªUhomebrew}r«Upackages]r¬Uprotobufr­asssU python-sip4}r®Uosx}r¯Uhomebrew}r°Upackages]r±Usipr²asssUliburdfdom-dev}r³Uosx}r´Uhomebrew}rµUpackages]r¶Uurdfdomr·asssU mongodb-dev}r¸Uosx}r¹Uhomebrew}rºUpackages]r»U mongodb-devr¼asssUpcre}r½Uosx}r¾Uhomebrew}r¿Upackages]rÀUpcre++rÁasssU libv4l-dev}rÂUosx}rÃUhomebrew}rÄUpackages]sssUgit}rÅUosx}rÆUhomebrew}rÇUpackages]rÈUgitrÉasssU nvidia-cg}rÊUosx}rËUhomebrew}rÌUpackages]sssUopengl}rÍUosx}rÎUhomebrew}rÏUpackages]sssU libreadline}rÐUosx}rÑUhomebrew}rÒUpackages]rÓUreadlinerÔasssU libvtk-qt}rÕUosx}rÖUhomebrew}r×Udepends]rØUlibvtkrÙasssUpython-qt5-bindings-gl}rÚUosx}rÛUhomebrew}rÜUpackages]rÝ(Upyqt5rÞUsiprßesssU suitesparse}ràUosx}ráUhomebrew}râUpackages]rãU suite-sparseräasssU libxrandr}råUosx}ræUhomebrew}rçUpackages]sssU libqt5-core}rèUosx}réUhomebrew}rêUpackages]rëUqt5rìasssU qt5-qmake}ríUosx}rîUhomebrew}rïUpackages]rðUqt5rñasssUtexlive-latex-extra}ròUosx}róUhomebrew}rôUpackages]sssU libspnav-dev}rõUosx}röUhomebrew}r÷Upackages]røUlibspnavrùasssUyaml-cpp}rúUosx}rûUhomebrew}rü(Udepends]rýUyamlrþaUpackages]rÿUyaml-cppraussUlibusb}rUosx}rUhomebrew}rUpackages]rU libusb-compatrasssUhddtemp}rUosx}rUhomebrew}rUpackages]sssUtinyxml}r Uosx}r Uhomebrew}r Upackages]r Utinyxmlr asssUswig-wx}rUosx}rUhomebrew}rUpackages]rUswig-wxrasssU redis-server}rUosx}rUhomebrew}rUpackages]rUredisrasssUruby}rUosx}rUhomebrew}rUpackages]sssUgccxml}rUosx}rUhomebrew}rUpackages]sssU libtheora}rUosx}rUhomebrew}r Upackages]r!Utheorar"asssUlibopenni2-dev}r#Uosx}r$Uhomebrew}r%Upackages]r&Uopenni2r'asssUpython-omniorb}r(Uosx}r)Uhomebrew}r*Upackages]r+Uomniorbr,asssU libogre-dev}r-Uosx}r.Uhomebrew}r/Upackages]r0Uogrer1asssUzlib}r2Uosx}r3Uhomebrew}r4Upackages]sssU libpng-dev}r5Uosx}r6Uhomebrew}r7Upackages]r8Ulibpngr9asssUnetpbm}r:Uosx}r;Uhomebrew}r<Upackages]r=Unetpbmr>asssU libqt5-gui}r?Uosx}r@Uhomebrew}rAUpackages]rBUqt5rCasssUflex}rDUosx}rEUhomebrew}rFUpackages]sssUpython-qt5-bindings-webkit}rGUosx}rHUhomebrew}rIUpackages]rJ(Upyqt5rKUsiprLesssUautoconf}rMUosx}rNUhomebrew}rOUpackages]sssU libdmtx-dev}rPUosx}rQUhomebrew}rRUpackages]rSUlibdmtxrTasssUtar}rUUosx}rVUhomebrew}rWUpackages]sssUnodejs}rXUosx}rYUhomebrew}rZUpackages]r[Unoder\asssUlibxml2}r]Uosx}r^Uhomebrew}r_Upackages]sssU collada-dom}r`Uosx}raUhomebrew}rbUpackages]rcU collada-domrdasssU libglew-dev}reUosx}rfUhomebrew}rgUpackages]rhUglewriasssU libtiff4-dev}rjUosx}rkUhomebrew}rlUpackages]rmUlibtiffrnasssU libwebp-dev}roUosx}rpUhomebrew}rqUpackages]rrUwebprsasssUlibxslt}rtUosx}ruUhomebrew}rvUpackages]rwUlibxsltrxasssUlibpcl-all-dev}ryUosx}rzUhomebrew}r{Upackages]r|Upclr}asssUcurl}r~Uosx}rUhomebrew}r€Upackages]sssUtexlive-fonts-extra}rUosx}r‚Uhomebrew}rƒUpackages]sssUbzip2}r„Uosx}r…Uhomebrew}r†Upackages]sssUcmake}r‡Uosx}rˆUhomebrew}r‰Upackages]rŠUcmaker‹asssUtexlive-latex-recommended}rŒUosx}rUhomebrew}rŽUpackages]sssUliburdfdom-tools}rUosx}rUhomebrew}r‘Upackages]r’Uurdfdomr“asssU python-sip}r”Uosx}r•Uhomebrew}r–Upackages]r—Usipr˜asssUsdl2}r™Uosx}ršUhomebrew}r›Upackages]rœUsdl2rasssUscons}ržUosx}rŸUhomebrew}r Upackages]r¡Usconsr¢asssUpython-qt5-bindings}r£Uosx}r¤Uhomebrew}r¥Upackages]r¦(Upyqt5r§Usipr¨esssUlibgazebo5-dev}r©Uosx}rªUhomebrew}r«Udepends]r¬Ugazebo5r­asssUsbcl}r®Uosx}r¯Uhomebrew}r°Upackages]r±Usbclr²asssU opencv2.3}r³Uosx}r´Uhomebrew}rµUpackages]r¶Uopencvr·asssUlibtbb}r¸Uosx}r¹Uhomebrew}rºUpackages]r»Utbbr¼asssUlibgazebo7-dev}r½Uosx}r¾Uhomebrew}r¿Udepends]rÀUgazebo7rÁasssU checkinstall}rÂUosx}rÃUhomebrew}rÄUpackages]sssUprotobuf}rÅUosx}rÆUhomebrew}rÇUpackages]rÈUprotobufrÉasssUtexlive-fonts-recommended}rÊUosx}rËUhomebrew}rÌUpackages]sssU libftgl-dev}rÍUosx}rÎUhomebrew}rÏUpackages]rÐUftglrÑasssUlibtool}rÒUosx}rÓUhomebrew}rÔUpackages]sssUmplayer}rÕUosx}rÖUhomebrew}r×Upackages]rØUmplayerrÙasssU libpq-dev}rÚUosx}rÛUhomebrew}rÜUpackages]rÝU postgresqlrÞasssUzziplib}rßUosx}ràUhomebrew}ráUpackages]râUlibzziprãasssU libqt5-opengl}räUosx}råUhomebrew}ræUpackages]rçUqt5rèasssUfltk}réUosx}rêUhomebrew}rëUpackages]rìUfltkríasssUspdlog}rîUosx}rïUhomebrew}rðUpackages]rñUspdlogròasssUomniorb}róUosx}rôUhomebrew}rõUpackages]röUomniorbr÷asssUbullet}røUosx}rùUhomebrew}rúUpackages]rûUbulletrüasssUassimp}rýUosx}rþUhomebrew}rÿUpackages]rUassimprasssUlibmysqlclient-dev}rUosx}rUhomebrew}rUpackages]rUmysqlrasssUlibx11}rUosx}rUhomebrew}r Upackages]r Uxquartzr asssUwxpython}r Uosx}r Uhomebrew}rUpackages]sssUlibusb-1.0-dev}rUosx}rUhomebrew}rUpackages]rUlibusbrasssUiproute2}rUosx}rUhomebrew}rUpackages]rU iproute2macrasssU python-cairo}rUosx}rUhomebrew}rUpackages]rUpy2cairorasssu.catkin_lint-1.6.6/test/sources.cache/b4931581ca7c5741f7ee4ac9767a1174838296f7.pickle000066400000000000000000005650411362025056600261320ustar00rootroot00000000000000€}q(Ugv}q(Ufedora]qUgvqaUarch]qUgvqaUdebian]qUgvqaUgentoo]q U app-text/gvq aUubuntu]q Ugvq auUtexlive-latex-base}q (Ufedora]q(U texlive-latexqUtexlive-parskipqeUgentoo]qUdev-texlive/texlive-latexqaUmacports]qUtexliveqaUubuntu]qUtexlive-latex-baseqaUarch]qU texlive-coreqaUdebian]qUtexlive-latex-baseqauUlibgsl}q(Ufedora]qU gsl-develqaUgentoo]qU sci-libs/gslqaUmacports]q Ugslq!aUubuntu}q"(Uprecise]q#U libgsl0-devq$aUsaucy]q%U libgsl0-devq&aUyakkety]q'U libgsl-devq(aUtrusty]q)U libgsl0-devq*aUcosmic]q+U libgsl-devq,aUartful]q-U libgsl-devq.aUxenial]q/U libgsl-devq0aUutopic]q1U libgsl0-devq2aUvivid]q3U libgsl0-devq4aUbionic]q5U libgsl-devq6aUraring]q7U libgsl0-devq8aUwily]q9U libgsl0-devq:auUarch]q;UgslqU libgsl-devq?aUjessie]q@U libgsl0-devqAaUbuster]qBU libgsl-devqCaUwheezy]qDU libgsl0-devqEauuUdisper}qF(Ufedora]qGUdisperqHaUdebian]qIUdisperqJaUubuntu]qKUdisperqLauUfcgi}qM(Ufedora]qN(UfcgiqOU mod_fcgidqPU spawn-fcgiqQeUarch]qR(UfcgiqSU mod_fcgidqTU spawn-fcgiqUeUdebian]qV(U libfcgi-devqWUlibapache2-mod-fastcgiqXU spawn-fcgiqYeUgentoo]qZU dev-ruby/fcgiq[aUubuntu]q\(U libfcgi-devq]Ulibapache2-mod-fastcgiq^U spawn-fcgiq_euUnetcdf}q`(Ufedora]qaUnetcdfqbaUmacports]qc(UnetcdfqdU netcdf-cxxqeeUdebian]qfU libnetcdf-devqgaUgentoo]qh(Usci-libs/netcdfqiUsci-libs/netcdf-cxxqjUsci-libs/netcdf-fortranqkeUubuntu]qlU libnetcdf-devqmauUrecode}qn(Ufedora]qoU recode-develqpaUarch]qqUrecodeqraUdebian]qsUrecodeqtaUgentoo]quUapp-text/recodeqvaUubuntu]qwUrecodeqxauU libmpich2-dev}qy(Udebian]qzU libmpich2-devq{aUgentoo]q|Usys-cluster/mpich2q}aUubuntu]q~U libmpich2-devqauUgcc-arm-none-eabi}q€(Ufedora]qUarm-none-eabi-gcc-csq‚aUarch]qƒUgcc-arm-none-eabiq„aUdebian]q…Ugcc-arm-none-eabiq†aUgentoo]q‡Usys-devel/crossdevqˆaUubuntu]q‰Ugcc-arm-none-eabiqŠauUgstreamer1.0-plugins-good}q‹(Ufedora]qŒUgstreamer1-plugins-goodqaUarch]qŽUgst-plugins-goodqaUdebian]qUgstreamer1.0-plugins-goodq‘aUgentoo]q’Umedia-libs/gst-plugins-good:1.0q“aUubuntu]q”(Ugstreamer1.0-plugins-goodq•Ulibgstreamer-plugins-good1.0-0q–euU libdevil-dev}q—(Ufedora]q˜U DevIL-develq™aUarch]qšUdevilq›aUdebian]qœU libdevil-devqaUgentoo]qžUmedia-libs/devilqŸaUubuntu]q U libdevil-devq¡auU r-base-dev}q¢(Ufedora]q£UR-develq¤aUdebian]q¥U r-base-devq¦aUgentoo]q§U dev-lang/Rq¨aUubuntu]q©U r-base-devqªauUkate}q«(Ufedora]q¬Ukateq­aUdebian]q®Ukateq¯aUgentoo]q°U kde-apps/kateq±aUubuntu]q²Ukateq³auU ninja-build}q´(Ufedora]qµU ninja-buildq¶aUarch]q·Uninjaq¸aUdebian]q¹U ninja-buildqºaUgentoo]q»Udev-util/ninjaq¼aUubuntu]q½U ninja-buildq¾auUlibqt5-serialport}q¿(Ufedora]qÀUqt5-qtserialportqÁaUgentoo]qÂUdev-qt/qtserialport:5qÃaUubuntu]qÄUlibqt5serialport5qÅaUfreebsd]qÆUqt5-serialportqÇaUarch]qÈUqt5-serialportqÉaUdebian]qÊUlibqt5serialport5qËauUx11proto-gl-dev}qÌ(Ufedora]qÍUxorg-x11-proto-develqÎaUarch]qÏUglprotoqÐaUdebian]qÑUx11proto-gl-devqÒaUubuntu]qÓUx11proto-gl-devqÔauUlibjackson-json-java}qÕ(Ufedora]qÖUjacksonq×aUdebian]qØUlibjackson-json-javaqÙaUgentoo]qÚUdev-java/jacksonqÛaUubuntu]qÜUlibjackson-json-javaqÝauU libturbojpeg}qÞ(Ufedora]qßUturbojpeg-develqàaUgentoo]qáUmedia-libs/libjpeg-turboqâaUubuntu}qã(Uprecise]qä(U libturbojpegqåUlibjpeg-turbo8-devqæeUsaucy]qç(U libturbojpegqèUlibjpeg-turbo8-devqéeUyakkety]qê(U libturbojpegqëUlibjpeg-turbo8-devqìeUtrusty]qí(U libturbojpegqîUlibjpeg-turbo8-devqïeU*]qðUlibturbojpeg0-devqñaUxenial]qò(U libturbojpegqóUlibjpeg-turbo8-devqôeUutopic]qõ(U libturbojpegqöUlibjpeg-turbo8-devq÷eUvivid]qø(U libturbojpegqùUlibjpeg-turbo8-devqúeUzesty]qû(U libturbojpegqüUlibjpeg-turbo8-devqýeUraring]qþ(U libturbojpegqÿUlibjpeg-turbo8-devreUquantal]r(U libturbojpegrUlibjpeg-turbo8-devreUwily]r(U libturbojpegrUlibjpeg-turbo8-devreuUfreebsd]rU libjpeg-turboraU openembedded]r Ulibjpeq-turbo@openembedded-corer aUarch]r U libjpeg-turbor aUdebian}r (Ujessie]rUlibturbojpeg1-devraU*]rUlibturbojpeg0-devrauuUmpg123}r(Ufedora]rU mpg123-develraUarch]rUmpg123raUdebian]rUmpg123raUgentoo]rUmedia-sound/mpg123raUubuntu]rUmpg123rauUopenmpi}r(Ufedora]rUopenmpiraUgentoo]r Usys-cluster/openmpir!aUmacports]r"Uopenmpir#aUfreebsd]Uubuntu]Uarch]Udebian]uU arduino-core}r$(Ufedora]r%U arduino-corer&aUarch]r'Uarduinor(aUdebian]r)U arduino-corer*aUgentoo]r+Udev-embedded/arduinor,aUubuntu]r-U arduino-corer.auUlibqcustomplot-dev}r/(Ufedora]r0Uqcustomplot-develr1aUdebian}r2(Ustretch]r3Ulibqcustomplot-devr4aUjessie]r5Ulibqcustomplot-devr6aUbuster]r7Ulibqcustomplot-devr8auUgentoo]r9Udev-libs/qcustomplotr:aUubuntu]r;Ulibqcustomplot-devr<auUlibconfig++-dev}r=(Udebian]r>Ulibconfig++-devr?aUgentoo]r@Udev-libs/libconfig[cxx]rAaUubuntu]rBUlibconfig++-devrCauUlibqt5-widgets}rD(Ufedora]rEU qt5-qtbaserFaUgentoo]rGUdev-qt/qtwidgets:5rHaUfreebsd]rIU qt5-widgetsrJaUopensuse]rKUlibQt5Widgets5rLaUrhel]rMU qt5-qtbaserNaU slackware]rOUqt5rPaUubuntu]rQUlibqt5widgets5rRaU openembedded]rSUqtbase@meta-qt5rTaUarch]rUUqt5-baserVaUdebian]rWUlibqt5widgets5rXaUalpine]rYUqt5-qtbase-devrZauUmuparser}r[(Ufedora]r\UmuParser-develr]aUdebian]r^Ulibmuparser-devr_aUgentoo]r`Udev-cpp/muParserraaUubuntu]rbUlibmuparser-devrcauU xfonts-100dpi}rd(Ufedora]reUxorg-x11-fonts-100dpirfaUmacportsNUdebian]rgU xfonts-100dpirhaUgentoo]ri(Umedia-fonts/font-adobe-100dpirjUmedia-fonts/font-bh-100dpirkU+media-fonts/font-bh-lucidatypewriter-100dpirlU!media-fonts/font-bitstream-100dpirmeUubuntu]rnU xfonts-100dpiroauUgstreamer1.0-tools}rp(Ufedora]rqU gstreamer1rraUdebian]rsUgstreamer1.0-toolsrtaUgentoo]ruUmedia-libs/gstreamer:1.0rvaUubuntu]rwUgstreamer1.0-toolsrxauU libxml2-utils}ry(Ufedora]rzUlibxml2r{aU openembedded]r|Ulibxml2@openembedded-corer}aUdebian]r~U libxml2-utilsraUrhel]r€Ulibxml2raUubuntu]r‚U libxml2-utilsrƒauU libjack-dev}r„(Udebian]r…U libjack-devr†aUubuntu]r‡U libjack-devrˆauUvlc}r‰(Ufedora]rŠUvlcr‹aUarch]rŒUvlcraUdebian]rŽUvlcraUgentoo]rUmedia-video/vlcr‘aUubuntu]r’Uvlcr“auUgtk2}r”(Ufedora]r•U gtk2-develr–aUgentoo]r—Ux11-libs/gtk+:2r˜aUmacports]r™Ugtk2ršaUfreebsd]r›Ugtk2rœaUopensuse]rU gtk2-develržaUrhel]rŸU gtk2-develr aU slackware}r¡Uslackpkg}r¢Upackages]r£Ugtk+2r¤assUubuntu]r¥U libgtk2.0-devr¦aUarch]r§Ugtk2r¨aUdebian]r©U libgtk2.0-devrªauUgtk3}r«(Ufedora]r¬U gtk3-develr­aUgentoo]r®Ux11-libs/gtk+:3r¯aUmacports]r°Ugtk3r±aUfreebsd]r²Ugtk3r³aUopensuse]r´U gtk3-develrµaUrhel]r¶U gtk3-develr·aU slackware}r¸Uslackpkg}r¹Upackages]rºUgtk+3r»assUubuntu]r¼U libgtk-3-devr½aU openembedded]r¾Ugtk+3@openembedded-corer¿aUarch]rÀUgtk3rÁaUdebian]rÂU libgtk-3-devrÃauUlibqwt-qt5-dev}rÄ(Ufedora]rÅU qwt-qt5-develrÆaUarch]rÇUqwtrÈaUdebian]rÉUlibqwt-qt5-devrÊaUgentoo]rËUx11-libs/qwt:6rÌaUubuntu}rÍ(U*]rÎUlibqwt-qt5-devrÏaUtrustyNuuUassimp}rÐ(Ufedora]rÑUassimprÒaUgentoo]rÓUmedia-libs/assimprÔaUmacports]rÕUassimprÖaUfreebsd]r×UassimprØaUopensuse]rÙU libassimp3rÚaUrhel]rÛU assimp-develrÜaU slackware]rÝUassimprÞaUubuntu}rß(Utrusty_python3]ràU libassimp-devráaUlucid]râU assimp-devrãaU*]räU libassimp-devråaUmaverick]ræU assimp-devrçaUoneiric]rèU assimp-devréauU openembedded]rêUassimp@openembedded-corerëaUarch]rìUassimpríaUdebian]rîU libassimp-devrïauUlibncurses-dev}rð(Ufedora]rñU ncurses-develròaUgentoo]róUsys-libs/ncursesrôaUmacports]rõUncursesröaUubuntu]r÷Ulibncurses5-devrøaUarch]rùUncursesrúaUdebian]rûUlibncurses5-devrüauUjack}rý(Ufedora]rþUjack-audio-connection-kit-develrÿaUarch]rUjackraUdebian]rUlibjack-jackd2-devraUgentoo]rU virtual/jackraUubuntu]rUlibjack-jackd2-devrauUgfortran}r(Ufedora]r U gcc-gfortranr aUarch]r U gcc-fortranr aUdebian]r UgfortranraUgentoo]rUsys-devel/gcc[fortran]raUubuntu]rUgfortranrauU lttng-modules}r(Uarch]rU lttng-modulesraUdebian]rUlttng-modules-dkmsraUgentoo]rUdev-util/lttng-modulesraUubuntu]rUlttng-modules-dkmsrauUcdk}r(Ufedora]rUcdkraUdebian]rUlibcdk5r aUgentoo]r!U dev-libs/cdkr"aUubuntu]r#Ulibcdk5r$auU libxtst-dev}r%(Ufedora]r&U libXtst-develr'aUarch]r(Ulibxtstr)aUdebian]r*U libxtst-devr+aUgentoo]r,Ux11-libs/libXtstr-aUubuntu]r.U libxtst-devr/auU curlpp-dev}r0(Ufedora]r1U curlpp-develr2aUdebian]r3U libcurlpp-devr4aUubuntu]r5U libcurlpp-devr6auUlibgeotiff-dev}r7(Ufedora]r8U libgeotiffr9aUarch]r:U libgeotiffr;aUdebian]r<Ulibgeotiff-devr=aUgentoo]r>Usci-libs/libgeotiffr?aUubuntu]r@Ulibgeotiff-devrAauUomniidl}rB(Ufedora]rCU omniORB-develrDaUarch]rEUomniorbrFaUdebian]rG(UomniidlrHU omniorb-idlrIeUubuntu]rJ(UomniidlrKU omniorb-idlrLeuU libpoco-dev}rM(Ufedora]rNU poco-develrOaUgentoo]rPU dev-libs/pocorQaUmacports]rRUpocorSaUfreebsd]rTUpocorUaUopensuse]rVU poco-develrWaUrhel]rXU poco-develrYaU slackware]rZUpocor[aUubuntu]r\U libpoco-devr]aU openembedded]r^U poco@meta-oer_aUarch]r`UpocoraaUdebian]rbU libpoco-devrcaUalpine]rdUpoco-devreauUlibwebsocketpp-dev}rf(Ufedora]rgUwebsocketpp-develrhaUarch]riU websocketpprjaUdebian]rkUlibwebsocketpp-devrlaUgentoo]rmU websocketpprnaUubuntu]roUlibwebsocketpp-devrpauUlibgstreamer0.10-dev}rq(Ufedora]rrUgstreamer-develrsaUarch]rtU gstreamer0.10ruaUdebian}rv(Ujessie]rwUlibgstreamer0.10-devrxaUwheezy]ryUlibgstreamer0.10-devrzauUgentoo]r{Umedia-libs/gstreamer:0.10r|aUubuntu]r}Ulibgstreamer0.10-devr~auUxdotool}r(Ufedora]r€UxdotoolraUarch]r‚UxdotoolrƒaUdebian]r„Uxdotoolr…aUgentoo]r†Ux11-misc/xdotoolr‡aUubuntu]rˆUxdotoolr‰auU libmpich-dev}rŠ(Ufedora]r‹U mpich-develrŒaUdebian]rU libmpich-devrŽaUgentoo]rUsys-cluster/mpichraUubuntu]r‘U libmpich-devr’auUswi-prolog-sgml}r“(Ufedora]r”Uplr•aUarch]r–U swi-prologr—aUdebian}r˜Ulenny]r™Uswi-prolog-sgmlršasUubuntu}r›(Uprecise]rœU swi-prolograUoneiric]ržU swi-prologrŸaUlucid]r Uswi-prolog-sgmlr¡aUraring]r¢U swi-prologr£aUmaverick]r¤U swi-prologr¥aUquantal]r¦U swi-prologr§aUnatty]r¨U swi-prologr©auuU libmlpack-dev}rª(Ufedora]r«U mlpack-develr¬aUdebian]r­U libmlpack-devr®aUubuntu]r¯U libmlpack-devr°auUgstreamer1.0-libav}r±(Ufedora]r²Ugstreamer1-libavr³aUarch]r´U gst-libavrµaUdebian]r¶Ugstreamer1.0-libavr·aUgentoo]r¸U#media-plugins/gst-plugins-libav:1.0r¹aUubuntu]rºUgstreamer1.0-libavr»auU robotino-api2}r¼Uubuntu]r½U robotino-api2r¾asUfsharp}r¿(Udebian]rÀUfsharprÁaUgentoo]rÂUdev-lang/fsharprÃaUubuntu]rÄUfsharprÅauU libccd-dev}rÆ(Ufedora]rÇUlibccdrÈaUgentoo]rÉUsci-libs/libccdrÊaUubuntu]rËU libccd-devrÌaU openembedded]rÍUlibccd@meta-rosrÎaUarch]rÏUlibccdrÐaUdebian]rÑU libccd-devrÒauUlibxcursor-dev}rÓ(Udebian]rÔUlibxcursor-devrÕaUubuntu]rÖUlibxcursor-devr×auU libpulse-dev}rØ(Ufedora]rÙUpulseaudio-libs-develrÚaUdebian]rÛU libpulse-devrÜaUgentoo]rÝUmedia-sound/pulseaudiorÞaUubuntu]rßU libpulse-devràauUxsltproc}rá(Ufedora]râUlibxsltrãaUarch]räUlibxsltråaUdebian]ræUxsltprocrçaUgentoo]rèUdev-libs/libxsltréaUubuntu]rêUxsltprocrëauUlanguage-pack-de}rì(Ufedora]ríU filesystemrîaUubuntu]rïUlanguage-pack-derðauUlibqt5-gstreamer-dev}rñ(Udebian]ròUlibqt5gstreamer-devróaUubuntu]rôUlibqt5gstreamer-devrõauU libffi-dev}rö(Ufedora]r÷U libffi-develrøaUdebian]rùU libffi-devrúaUgentoo]rûUvirtual/libffirüaUubuntu]rýU libffi-devrþauUlibboost-random}rÿ(Ufedora]rU boost-randomraUdebian}r(Ustretch]rUlibboost-random1.62.0raUjessie]rUlibboost-random1.55.0raUwheezy]rUlibboost-random1.49.0rauUubuntu}r (Uprecise]r Ulibboost-random1.46.1r aUeoan]r Ulibboost-random1.67.0r aUtrusty]rUlibboost-random1.54.0raUbionic]rUlibboost-random1.65.1raUdisco]rUlibboost-random1.67.0rauuUiperf}r(Ufedora]rUiperfraUdebian]rUiperfraUgentoo]rUnet-misc/iperfraUubuntu]rUiperfrauUodb}r(Ufedora]rUodbraUdebian]r Uodbr!aUubuntu}r"(U*]r#Uodbr$aUtrustyNuuU libcos4-dev}r%(Udebian]r&U libcos4-devr'aUubuntu]r(U libcos4-devr)auUsbcl}r*(Ufedora]r+Usbclr,aUgentoo]r-U dev-lisp/sbclr.aUmacports]r/Usbclr0aUfreebsd]r1Usbclr2aUopensuse]r3Usbclr4aU slackware]r5Usbclr6aUubuntu]r7Usbclr8aUarch]r9Usbclr:aUdebian]r;Usbclr<aUalpine]r=Usbclr>auUasio}r?(Ufedora]r@U asio-develrAaUgentoo]rBU dev-cpp/asiorCaUrhel]rDU asio-develrEaUubuntu]rFU libasio-devrGaU openembedded]rHU asio@meta-oerIaUarch]rJUasiorKaUdebian]rLU libasio-devrMaUalpine]rNUasio-devrOauUswi-prolog-odbc}rP(Ufedora]rQUpl-odbcrRaUarch]rSU swi-prologrTaUdebian]rUUswi-prolog-odbcrVaUgentoo]rWUdev-lang/swi-prolog[odbc]rXaUubuntu]rYUswi-prolog-odbcrZauU libqt4-opengl}r[(Ufedora]r\Uqtr]aUgentoo]r^Udev-qt/qtopengl:4r_aUubuntu]r`U libqt4-openglraaUarch]rbUqt4rcaUdebian]rdU libqt4-openglreaUrhel]rfUqtrgauUlibmongoclient-dev}rh(Ufedora]riUmongo-cxx-driverrjaUdebian]rkUlibmongoclient-devrlaUubuntu]rmUlibmongoclient-devrnauU libcereal-dev}ro(Ufedora]rpU cereal-develrqaUdebian]rrU libcereal-devrsaUgentoo]rtUdev-libs/cerealruaUubuntu]rvU libcereal-devrwauUlibboost-program-options}rx(Ufedora]ryUboost-program-optionsrzaUdebian}r{(Ustretch]r|Ulibboost-program-options1.62.0r}aUjessie]r~Ulibboost-program-options1.55.0rauUubuntu}r€(Ueoan]rUlibboost-program-options1.67.0r‚aUdisco]rƒUlibboost-program-options1.67.0r„aUtrusty]r…Ulibboost-program-options1.55.0r†aUbionic]r‡Ulibboost-program-options1.65.1rˆaUxenial]r‰Ulibboost-program-options1.58.0rŠauuUlibqt5-printsupport}r‹(Ufedora]rŒU qt5-qtbaseraUgentoo]rŽUdev-qt/qtprintsupport:5raUubuntu]rUlibqt5printsupport5r‘aUfreebsd]r’Uqt5-printsupportr“aUarch]r”Uqt5-baser•aUdebian]r–Ulibqt5printsupport5r—auUkakasi}r˜(Ufedora]r™UkakasiršaUarch]r›UkakasirœaUdebian]rUkakasiržaUgentoo]rŸUapp-i18n/kakasir aUubuntu]r¡Ukakasir¢auUlibqt5x11extras5-dev}r£(Ufedora]r¤Uqt5-qtx11extras-develr¥aUgentoo]r¦Udev-qt/qtx11extras:5r§aUubuntu]r¨Ulibqt5x11extras5-devr©aUfreebsd]rªU qt5-x11extrasr«aUarch]r¬U qt5-x11extrasr­aUdebian]r®Ulibqt5x11extras5-devr¯auUlibxext}r°(Ufedora]r±U libXext-develr²aUgentoo]r³Ux11-libs/libXextr´aUmacports]rµU xorg-libXextr¶aUopensuse]r·Uxorg-x11-libXext-develr¸aUrhel]r¹U libXext-develrºaUfreebsd]r»UlibXextr¼aUubuntu]r½U libxext-devr¾aUarch]r¿UlibxextrÀaUdebian]rÁU libxext-devrÂauUgazebo}rÃ(U slackware]rÄUgazeborÅaUfedora]rÆUgazeborÇaUgentoo]rÈUsci-electronics/gazeborÉaUubuntu}rÊ(Uprecise]rËUgazeborÌaUsaucy]rÍUgazebo2rÎaUyakkety]rÏUgazebo7rÐaUtrusty]rÑUgazebo2rÒaUeoan]rÓUgazebo9rÔaUcosmic]rÕUgazebo9rÖaUartful]r×Ugazebo9rØaUdisco]rÙUgazebo9rÚaUraring]rÛUgazeborÜaUbionic]rÝUgazebo9rÞaUzesty]rßUgazebo7ràaUxenial]ráUgazebo7râaUquantal]rãUgazeboräaUwily]råUgazebo7ræauUarch]rçUgazeborèaUdebian}ré(Ustretch]rêUgazebo9rëaUjessie]rìUgazebo7ríaUbuster]rîUgazebo9rïauuUacpi}rð(Ufedora]rñUacpiròaUdebian]róUacpirôaUgentoo]rõUsys-power/acpiröaUubuntu]r÷UacpirøauUmeld}rù(Ufedora]rúUmeldrûaUdebian]rüUmeldrýaUgentoo]rþU dev-util/meldrÿaUubuntu]rUmeldrauUlibgstreamer-plugins-base0.10-0}r(Ufedora]rUgstreamer-plugins-baseraUarch]rUgstreamer0.10-base-pluginsraUdebian}r(Ujessie]rUlibgstreamer-plugins-base0.10-0r aUwheezy]r Ulibgstreamer-plugins-base0.10-0r auUgentoo]r U media-libs/gst-plugins-base:0.10r aUubuntu]rUlibgstreamer-plugins-base0.10-0rauUgforth}r(Ufedora]rUgforthraUgentoo]rUdev-lang/gforthraUmacports]rUgforthraUubuntu]rUgforthraUarch]rUgforthraUdebian]rUgforthrauUfping}r(Ufedora]rUfpingraUarch]r Ufpingr!aUdebian]r"Ufpingr#aUgentoo]r$Unet-analyzer/fpingr%aUubuntu]r&Ufpingr'auU libflann-dev}r((Ufedora]r)U flann-develr*aUgentoo]r+Usci-libs/flannr,aUmacports]r-Uflannr.aUubuntu]r/U libflann-devr0aUarch]r1Uflannr2aUdebian]r3U libflann-devr4auU libttspico}r5(Udebian]r6(Ulibttspico-devr7Ulibttspico-datar8Ulibttspico-utilsr9U libttspico0r:eUubuntu]r;(Ulibttspico-devr<Ulibttspico-datar=Ulibttspico-utilsr>U libttspico0r?euU xfonts-75dpi}r@(Ufedora]rAUxorg-x11-fonts-100dpirBaUmacportsNUdebian]rCU xfonts-75dpirDaUgentoo]rE(Umedia-fonts/font-adobe-75dpirFUmedia-fonts/font-bh-75dpirGU*media-fonts/font-bh-lucidatypewriter-75dpirHU media-fonts/font-bitstream-75dpirIeUubuntu]rJU xfonts-75dpirKauUlibqt4-opengl-dev}rL(Ufedora]rMUqt-develrNaUgentoo]rOUdev-qt/qtopengl:4rPaUmacports]rQUqt4-macrRaUopensuse]rSU libqt4-develrTaUrhel]rUUqt-develrVaUubuntu]rWUlibqt4-opengl-devrXaUarch]rYUqt4rZaUdebian]r[Ulibqt4-opengl-devr\auUgawk}r](Ufedora]r^Ugawkr_aUarch]r`UgawkraaUdebian]rbUgawkrcaUgentoo]rdU sys-apps/gawkreaUubuntu]rfUgawkrgauU libhal-dev}rh(Uarch}riUpacman}rjUpackages]rkUhalrlassUdebian]rmU libhal-devrnaUubuntu]roU libhal-devrpauUgpsd}rq(Ufedora]rrUgpsdrsaUdebian]rtUgpsdruaUgentoo]rvUsci-geosciences/gpsdrwaUubuntu]rxUgpsdryauU swi-prolog}rz(Ufedora]r{Uplr|aUarch]r}U swi-prologr~aUdebian]rU swi-prologr€aUgentoo]rUdev-lang/swi-prologr‚aUubuntu]rƒU swi-prologr„auU golang-go}r…(Udebian]r†U golang-gor‡aUgentoo]rˆU dev-lang/gor‰aUubuntu]rŠU golang-gor‹auU libjson0-dev}rŒ(Ufedora]rU json-c-develrŽaUarch]rUjson-craUdebian]r‘U libjson0-devr’aUgentoo]r“Udev-libs/json-c:0r”aUubuntu]r•U libjson0-devr–auU libpcl-all}r—(Ufedora]r˜(Upclr™U pcl-toolsršeUgentoo]r›U sci-libs/pclrœaUmacports]rUlibpclržaUfreebsd]rŸUlibpclr aUopensuse]r¡Upclr¢aUrhel]r£(Upclr¤U pcl-toolsr¥eU slackware]r¦Upclr§aUubuntu}r¨(Uprecise]r©Ulibpcl-1.7-allrªaUsaucy]r«Ulibpcl-1.7-allr¬aUyakkety]r­(Ulibpcl-apps1.8r®Ulibpcl-common1.8r¯Ulibpcl-features1.8r°Ulibpcl-filters1.8r±U libpcl-io1.8r²Ulibpcl-kdtree1.8r³Ulibpcl-keypoints1.8r´U libpcl-ml1.8rµUlibpcl-octree1.8r¶Ulibpcl-outofcore1.8r·Ulibpcl-people1.8r¸Ulibpcl-recognition1.8r¹Ulibpcl-registration1.8rºUlibpcl-sample-consensus1.8r»Ulibpcl-search1.8r¼Ulibpcl-segmentation1.8r½Ulibpcl-stereo1.8r¾Ulibpcl-surface1.8r¿Ulibpcl-tracking1.8rÀUlibpcl-visualization1.8rÁeUtrusty]rÂUlibpcl-1.7-allrÃaUartful]rÄ(Ulibpcl-apps1.8rÅUlibpcl-common1.8rÆUlibpcl-features1.8rÇUlibpcl-filters1.8rÈU libpcl-io1.8rÉUlibpcl-kdtree1.8rÊUlibpcl-keypoints1.8rËU libpcl-ml1.8rÌUlibpcl-octree1.8rÍUlibpcl-outofcore1.8rÎUlibpcl-people1.8rÏUlibpcl-recognition1.8rÐUlibpcl-registration1.8rÑUlibpcl-sample-consensus1.8rÒUlibpcl-search1.8rÓUlibpcl-segmentation1.8rÔUlibpcl-stereo1.8rÕUlibpcl-surface1.8rÖUlibpcl-tracking1.8r×Ulibpcl-visualization1.8rØeUxenial]rÙU libpcl1.7rÚaUutopic]rÛU libpcl1.7rÜaUvivid]rÝU libpcl1.7rÞaUbionic]rß(Ulibpcl-apps1.8ràUlibpcl-common1.8ráUlibpcl-features1.8râUlibpcl-filters1.8rãU libpcl-io1.8räUlibpcl-kdtree1.8råUlibpcl-keypoints1.8ræU libpcl-ml1.8rçUlibpcl-octree1.8rèUlibpcl-outofcore1.8réUlibpcl-people1.8rêUlibpcl-recognition1.8rëUlibpcl-registration1.8rìUlibpcl-sample-consensus1.8ríUlibpcl-search1.8rîUlibpcl-segmentation1.8rïUlibpcl-stereo1.8rðUlibpcl-surface1.8rñUlibpcl-tracking1.8ròUlibpcl-visualization1.8róeUzesty]rô(Ulibpcl-apps1.8rõUlibpcl-common1.8röUlibpcl-features1.8r÷Ulibpcl-filters1.8røU libpcl-io1.8rùUlibpcl-kdtree1.8rúUlibpcl-keypoints1.8rûU libpcl-ml1.8rüUlibpcl-octree1.8rýUlibpcl-outofcore1.8rþUlibpcl-people1.8rÿUlibpcl-recognition1.8rUlibpcl-registration1.8rUlibpcl-sample-consensus1.8rUlibpcl-search1.8rUlibpcl-segmentation1.8rUlibpcl-stereo1.8rUlibpcl-surface1.8rUlibpcl-tracking1.8rUlibpcl-visualization1.8reUraring]r Ulibpcl-1.7-allr aUquantal]r Ulibpcl-1.7-allr aUwily]r U libpcl1.7rauU openembedded]rU pcl@meta-rosraUarch]rUpclraUdebian}r(Ustretch]r(Ulibpcl-apps1.8rUlibpcl-common1.8rUlibpcl-features1.8rUlibpcl-filters1.8rU libpcl-io1.8rUlibpcl-kdtree1.8rUlibpcl-keypoints1.8rU libpcl-ml1.8rUlibpcl-octree1.8rUlibpcl-outofcore1.8rUlibpcl-people1.8rUlibpcl-recognition1.8r Ulibpcl-registration1.8r!Ulibpcl-sample-consensus1.8r"Ulibpcl-search1.8r#Ulibpcl-segmentation1.8r$Ulibpcl-stereo1.8r%Ulibpcl-surface1.8r&Ulibpcl-tracking1.8r'Ulibpcl-visualization1.8r(eUjessie]r)U libpcl1.7r*aUbuster]r+(Ulibpcl-apps1.8r,Ulibpcl-common1.8r-Ulibpcl-features1.8r.Ulibpcl-filters1.8r/U libpcl-io1.8r0Ulibpcl-kdtree1.8r1Ulibpcl-keypoints1.8r2U libpcl-ml1.8r3Ulibpcl-octree1.8r4Ulibpcl-outofcore1.8r5Ulibpcl-people1.8r6Ulibpcl-recognition1.8r7Ulibpcl-registration1.8r8Ulibpcl-sample-consensus1.8r9Ulibpcl-search1.8r:Ulibpcl-segmentation1.8r;Ulibpcl-stereo1.8r<Ulibpcl-surface1.8r=Ulibpcl-tracking1.8r>Ulibpcl-visualization1.8r?euuUliblttng-ust-dev}r@(Ufedora]rAU lttng-ustrBaUarch]rCU lttng-ustrDaUdebian]rEUliblttng-ust-devrFaUgentoo]rGUdev-util/lttng-ustrHaUubuntu]rIUliblttng-ust-devrJauU libvlc-dev}rK(Ufedora]rLU libvlc-develrMaUdebian]rNU libvlc-devrOaUgentoo]rPUmedia-video/vlcrQaUubuntu]rRU libvlc-devrSauUhdf5}rT(Ufedora]rUU hdf5-develrVaUgentoo]rWU sci-libs/hdf5rXaUmacports]rYUhdf5rZaUubuntu]r[Ulibhdf5-serial-devr\aUarch]r]Uhdf5-cpp-fortranr^aUdebian]r_Ulibhdf5-serial-devr`auUglc}ra(Uarch]rbUglcrcaUgentoo]rdUmedia-libs/quesoglcreauUdfu-util}rf(Ufedora]rgUdfu-utilrhaUdebian]riUdfu-utilrjaUgentoo]rkUapp-mobilephone/dfu-utilrlaUubuntu]rmUdfu-utilrnauU xpath-perl}ro(Ufedora]rpUperl-XML-XPathrqaUgentoo]rrUdev-perl/XML-XPathrsaUmacports]rtU p5-xml-xpathruaUubuntu]rvUlibxml-xpath-perlrwaUarch]rxUperl-xml-xpathryaUdebian]rzUlibxml-xpath-perlr{auUhostname}r|(Ufedora]r}Uhostnamer~aUarch]rU inetutilsr€aUdebian]rUhostnamer‚aUgentoo]rƒUsys-apps/net-toolsr„aUubuntu]r…Uhostnamer†auUpmount}r‡(Ufedora]rˆUpmountr‰aUarch}rŠUaur]r‹UpmountrŒasUdebian]rUpmountrŽaUgentoo]rUsys-apps/pmountraUubuntu]r‘Upmountr’auU libglw1-mesa}r“(Ufedora]r”U mesa-libGlwr•aUarch]r–Uglwr—aUdebian]r˜U libglw1-mesar™aUgentoo]ršUx11-libs/libGLwr›aUubuntu]rœU libglw1-mesarauU xfont-server}rž(Ufedora]rŸUlibXfontr aUmacportsNUdebian]r¡Uxfsr¢aUgentoo]r£Ux11-libs/libXfontr¤aUubuntu}r¥(Uprecise]r¦Uxfsr§aUlucid]r¨Uxfsr©auuUgdal-bin}rª(Ufedora]r«Ugdalr¬aUdebian]r­Ugdal-binr®aUgentoo]r¯U sci-libs/gdalr°aUubuntu]r±Ugdal-binr²auU libicu-dev}r³(Ufedora]r´U libicu-develrµaUdebian]r¶U libicu-devr·aUgentoo]r¸U dev-libs/icur¹aUubuntu]rºU libicu-devr»auUapr}r¼(Ufedora]r½(U apr-develr¾Uapr-utilr¿eUgentoo]rÀ(U dev-libs/aprrÁUdev-libs/apr-utilrÂeUmacports]rÃ(UaprrÄUapr-utilrÅeUfreebsd]rÆUbuiltinrÇaUopensuse]rÈ(Ulibapr1rÉU libapr-util1rÊeUcygwin]rË(Ulibapr1rÌU libaprutil1rÍeU slackware}rÎUslackpkg}rÏUpackages]rÐ(UaprrÑUapr-utilrÒessUubuntu]rÓ(U libapr1-devrÔUlibaprutil1-devrÕeU openembedded]rÖUapr@openembedded-corer×aUalpine]rØ(UaprrÙUapr-utilrÚeUarch]rÛ(UaprrÜUapr-utilrÝeUdebian]rÞ(U libapr1-devrßUlibaprutil1-devràeUrhel]rá(U apr-develrâUapr-utilrãeuU libxml++-2.6}rä(Ufedora]rå(Ulibxml++ræUlibxml++-develrçeUarch]rèUlibxml++réaUdebian]rêUlibxml++2.6-devrëaUgentoo]rìUdev-cpp/libxmlpp:2.6ríaUubuntu]rîUlibxml++2.6-devrïauUtmux}rð(Ufedora]rñUtmuxròaUdebian]róUtmuxrôaUgentoo]rõU app-misc/tmuxröaUubuntu]r÷UtmuxrøauUacpitool}rù(Ufedora]rúUacpitoolrûaUdebian]rüUacpitoolrýaUgentoo]rþUsys-power/acpitoolrÿaUubuntu}r(Uprecise]rUacpitoolraUtrusty]rUacpitoolraUvivid]rUacpitoolraUwily]rUacpitoolraUxenial]r Uacpitoolr auuU libspatialite}r (Ufedora]r U libspatialiter aUarch]rU libspatialiteraUdebian}r(Ujessie]rUlibspatialite5raU*]rUlibsqlite3-mod-spatialiterauUgentoo]rUdev-db/spatialite:0raUubuntu}r(U*]rUlibsqlite3-mod-spatialiteraUtrusty]rUlibspatialite5rauuUlibqrencode-dev}r(Udebian]rUlibqrencode-devraUgentoo]rUmedia-gfx/qrencoder aUubuntu]r!Ulibqrencode-devr"auUxz-utils}r#(Ufedora]r$Uxzr%aUarch]r&Uxzr'aUdebian]r(Uxz-utilsr)aUgentoo]r*Uapp-arch/xz-utilsr+aUubuntu]r,Uxz-utilsr-auUlibqt5multimedia5-plugins}r.(Ufedora]r/Uqt5-qtmultimediar0aUarch]r1Uqt5-multimediar2aUdebian]r3Ulibqt5multimedia5-pluginsr4aUubuntu]r5Ulibqt5multimedia5-pluginsr6auUliblinphone-dev}r7(Ufedora]r8Ulinphone-develr9aUdebian]r:Uliblinphone-devr;aUgentoo]r<Unet-voip/linphoner=aUubuntu]r>Uliblinphone-devr?auUlibsndfile1-dev}r@(Ufedora]rAUlibsndfile-develrBaUdebian]rCUlibsndfile1-devrDaUgentoo]rEUmedia-libs/libsndfilerFaUubuntu]rGUlibsndfile1-devrHauU libudev-dev}rI(Ufedora]rJU libudev-develrKaUgentoo]rLUvirtual/libudevrMaUubuntu]rNU libudev-devrOaU openembedded]rPUudev@openembedded-corerQaUarch]rRUsystemdrSaUdebian]rTU libudev-devrUauU nvidia-cg}rV(Ufedora]rWUCgrXaUarch]rYUnvidia-cg-toolkitrZaUdebian]r[Unvidia-cg-toolkitr\aUgentoo]r]Umedia-gfx/nvidia-cg-toolkitr^aUubuntu]r_Unvidia-cg-toolkitr`auU libserial-dev}ra(Udebian]rbU libserial-devrcaUubuntu]rdU libserial-devreauU libjson-java}rf(Ufedora]rgUjson-librhaUdebian]riU libjson-javarjaUgentoo]rkU dev-java/jsonrlaUubuntu]rmU libjson-javarnauUcrypto++}ro(Ufedora]rpUcryptopp-develrqaUdebian]rrUlibcrypto++-devrsaUgentoo]rtUdev-libs/crypto++ruaUubuntu]rvUlibcrypto++-devrwauUm4}rx(Uopensuse]ryUm4rzaUfedora]r{Um4r|aUgentoo]r}U sys-devel/m4r~aUubuntu]rUm4r€aUarch]rUm4r‚aUdebian]rƒUm4r„auUlibswscale-dev}r…(Ufedora]r†U ffmpeg-develr‡aUarch]rˆUffmpegr‰aUdebian]rŠUlibswscale-devr‹aUgentoo]rŒUvirtual/ffmpegraUubuntu]rŽUlibswscale-devrauU libgfortran3}r(Ufedora]r‘U libgfortranr’aUarch]r“Ugcc-libsr”aUdebian]r•U libgfortran3r–aUgentoo]r—Usys-devel/gcc[fortran]r˜aUubuntu]r™U libgfortran3ršauUcdk-dev}r›(Ufedora]rœU cdk-develraUdebian]ržU libcdk5-devrŸaUgentoo]r U dev-libs/cdkr¡aUubuntu]r¢U libcdk5-devr£auU libxrandr}r¤(Ufedora]r¥UlibXrandr-develr¦aUgentoo]r§Ux11-libs/libXrandrr¨aUmacports]r©Uxorg-libXrandrrªaUrhel]r«UlibXrandr-develr¬aUubuntu]r­U libxrandr-devr®aU openembedded]r¯Ulibxrandr@openembedded-corer°aUarch]r±U libxrandrr²aUdebian]r³U libxrandr-devr´auUlibgoogle-glog-dev}rµ(Ufedora]r¶U glog-develr·aU openembedded]r¸U glog@meta-oer¹aUdebian]rºUlibgoogle-glog-devr»aUgentoo]r¼U dev-cpp/glogr½aUubuntu]r¾Ulibgoogle-glog-devr¿auU cwiid-dev}rÀ(Uopensuse]rÁUlibcwiid-develrÂaUfedora]rÃU cwiid-develrÄaUgentoo]rÅUapp-misc/cwiidrÆaUubuntu]rÇU libcwiid-devrÈaUarch]rÉUcwiidrÊaUdebian]rËU libcwiid-devrÌauUnkf}rÍ(Ufedora]rÎUnkfrÏaUdebian]rÐUnkfrÑaUgentoo]rÒU app-i18n/nkfrÓaUubuntu]rÔUnkfrÕauU lttng-tools}rÖ(Ufedora]r×U lttng-toolsrØaUarch]rÙU lttng-toolsrÚaUdebian]rÛU lttng-toolsrÜaUgentoo]rÝUdev-util/lttng-toolsrÞaUubuntu]rßU lttng-toolsràauUgifsicle}rá(Ufedora]râUgifsiclerãaUarch]räUgifsicleråaUdebian]ræUgifsiclerçaUgentoo]rèUmedia-gfx/gifsicleréaUubuntu]rêUgifsiclerëauU avahi-daemon}rì(Ufedora]ríUavahirîaUgentoo]rïU net-dns/avahirðaUubuntu]rñU avahi-daemonròaU openembedded]róUavahi@openembedded-corerôaUarch]rõUavahiröaUdebian]r÷U avahi-daemonrøauUfestival}rù(Ufedora]rú(UfestivalrûUfestvox-kal-diphonerüeUgentoo]rýUapp-accessibility/festivalrþaUubuntu]rÿ(UfestivalrUfestvox-kallpc16kreU openembedded]rUfestival@meta-rosraUarch]r(UfestivalrUfestival-englishreUdebian]r(UfestivalrUfestvox-kallpc16kr euU armadillo}r (Ufedora]r Uarmadillo-develr aUarch]r U armadilloraUdebian]rUlibarmadillo-devraUgentoo]rUsci-libs/armadilloraUubuntu]rUlibarmadillo-devrauUtinyxml}r(Ufedora]rU tinyxml-develraUgentoo]rUdev-libs/tinyxmlraUmacports]rUtinyxmlraUfreebsd]rUtinyxmlraUopensuse]rU tinyxml-develraUrhel]r U tinyxml-develr!aU slackware]r"Utinyxmlr#aUubuntu]r$Ulibtinyxml-devr%aU openembedded]r&Ulibtinyxml@meta-oer'aUarch]r(Utinyxmlr)aUdebian]r*Ulibtinyxml-devr+aUalpine]r,U tinyxml-devr-auUlibconsole-bridge-dev}r.(Ufedora]r/Uconsole-bridge-develr0aUgentoo]r1Udev-libs/console_bridger2aUfreebsd]r3Uros-console_bridger4aUopensuse]r5Ulibconsole_bridge0r6aUrhel]r7Uconsole-bridge-develr8aU slackware]r9Uconsole_bridger:aUubuntu]r;Ulibconsole-bridge-devr<aU openembedded]r=Uconsole-bridge@meta-rosr>aUarch]r?Uconsole-bridger@aUdebian]rAUlibconsole-bridge-devrBaUalpine]rCUconsole_bridge-devrDauUpstoedit}rE(Ufedora]rFUpstoeditrGaUdebian]rHUpstoeditrIaUgentoo]rJUmedia-gfx/pstoeditrKaUubuntu]rLUpstoeditrMauUmkdocs}rN(Ufedora]rOUmkdocsrPaUdebian}rQ(Ustretch]rRUmkdocsrSaUjessie}rTUpip}rUUpackages]rVUmkdocsrWassUbuster]rXUmkdocsrYaUwheezy}rZUpip}r[Upackages]r\Umkdocsr]assuUgentoo]r^Udev-python/mkdocsr_aUubuntu}r`(Uyakkety]raUmkdocsrbaUwily]rcUmkdocsrdaUartful]reUmkdocsrfaUxenial]rgUmkdocsrhaUutopic}riUpip}rjUpackages]rkUmkdocsrlassUbionic]rmUmkdocsrnaUzesty]roUmkdocsrpaUtrusty}rqUpip}rrUpackages]rsUmkdocsrtassuuUsdl-gfx}ru(Ufedora]rvUSDL_gfxrwaUarch]rxUsdl_gfxryaUdebian]rzUlibsdl-gfx1.2-devr{aUgentoo]r|Umedia-libs/sdl-gfxr}aUubuntu]r~Ulibsdl-gfx1.2-devrauUlibfreenect-dev}r€(Ufedora]rUlibfreenect-develr‚aU openembedded]rƒUlibfreenect@meta-rosr„aUarch]r…U libfreenectr†aUdebian]r‡Ulibfreenect-devrˆaUubuntu]r‰Ulibfreenect-devrŠauUlibxkbcommon-dev}r‹(Udebian]rŒUlibxkbcommon-devraUubuntu]rŽUlibxkbcommon-devrauUlibboost-python}r(Udebian]r‘Ulibboost-python-devr’aUalpine]r“U boost-python2r”aUfedora]r•Uboost-python2-develr–aUubuntu]r—Ulibboost-python-devr˜auUeclipse}r™(Ufedora]rš(U eclipse-pder›U eclipse-emfrœeUarch]r(UeclipseržU eclipse-rcprŸU eclipse-emfr U eclipse-pder¡eUdebian]r¢(Ueclipser£U eclipse-rcpr¤U eclipse-xsdr¥U eclipse-pder¦eUgentoo]r§(Udev-java/ant-eclipse-ecjr¨Udev-java/eclipse-ecjr©eUubuntu}rª(Uprecise]r«(Ueclipser¬Ueclipse-platformr­U eclipse-rcpr®U eclipse-emfr¯U eclipse-xsdr°U eclipse-pder±eUoneiric]r²(Ueclipser³Ueclipse-platformr´U eclipse-rcprµU eclipse-emfr¶U eclipse-xsdr·U eclipse-pder¸eUlucid]r¹(UeclipserºUeclipse-platformr»U eclipse-rcpr¼U eclipse-pder½eUkarmic]r¾(Ueclipser¿Ueclipse-platformrÀU eclipse-rcprÁU eclipse-pderÂeUnatty]rÃ(UeclipserÄUeclipse-platformrÅU eclipse-rcprÆU eclipse-emfrÇU eclipse-xsdrÈU eclipse-pderÉeUmaverick]rÊ(UeclipserËUeclipse-platformrÌU eclipse-rcprÍU eclipse-emfrÎU eclipse-xsdrÏU eclipse-pderÐeUquantal]rÑ(UeclipserÒUeclipse-platformrÓU eclipse-rcprÔU eclipse-emfrÕU eclipse-xsdrÖU eclipse-pder×eUraring]rØ(UeclipserÙUeclipse-platformrÚU eclipse-rcprÛU eclipse-emfrÜU eclipse-xsdrÝU eclipse-pderÞeuuUlibgts}rß(Ufedora]ràUgtsráaUarch]râUgtsrãaUdebian]räU libgts-devråaUgentoo]ræU sci-libs/gtsrçaUubuntu]rèU libgts-devréauUlibavdevice-dev}rê(Udebian]rëUlibavdevice-devrìaUubuntu]ríUlibavdevice-devrîauU alsa-utils}rï(Ufedora]rðU alsa-utilsrñaUarch]ròU alsa-utilsróaUdebian]rôU alsa-utilsrõaUgentoo]röUmedia-sound/alsa-utilsr÷aUubuntu]røU alsa-utilsrùauU openni-dev}rú(Ufedora]rûU openni-develrüaUarch]rýUopennirþaUdebian]rÿU libopenni-devraUgentoo]rUdev-libs/OpenNIraUubuntu]rU libopenni-devrauUtar}r(Ufedora]rU libtar-develraUgentoo]rUdev-libs/libtarr aUmacports]r Ulibtarr aUopensuse]r U libtar-develr aUrhel]rU libtar-develraUfreebsd]rUlibtarraUubuntu]rU libtar-devraUarch]rUlibtarraUdebian]rU libtar-devrauUgstreamer1.0-plugins-bad}r(Ufedora]rUgstreamer1-plugins-bad-freeraUarch]rUgst-plugins-badraUdebian]rUgstreamer1.0-plugins-badraUgentoo]rUmedia-libs/gst-plugins-bad:1.0r aUubuntu]r!Ugstreamer1.0-plugins-badr"auU libopenvdb}r#(Ufedora]r$Uopenvdbr%aUarch]r&Uopenvdbr'aUdebian}r((Ustretch]r)U libopenvdb3.2r*aUjessie]r+U libopenvdb2.3r,aUbuster]r-U libopenvdb3.2r.auUgentoo]r/Umedia-gfx/openvdbr0aUubuntu}r1(Usaucy]r2U libopenvdb1.1r3aUyakkety]r4U libopenvdb3.1r5aUvivid]r6U libopenvdb2.3r7aUartful]r8U libopenvdb3.2r9aUxenial]r:U libopenvdb3.1r;aUutopic]r<U libopenvdb2.3r=aUtrusty]r>U libopenvdb2.1r?aUbionic]r@U libopenvdb5.0rAaUzesty]rBU libopenvdb3.2rCaUwily]rDU libopenvdb3.0rEauuUlinux-kernel-headers}rF(Ufedora]rGUkernel-headersrHaUarch]rIUlinux-api-headersrJaUdebian]rKUlinux-libc-devrLaUgentoo]rMUsys-kernel/linux-headersrNaUubuntu]rOUlinux-libc-devrPauUunzip}rQ(Ufedora]rRUunziprSaUgentoo]rTUapp-arch/unziprUaUmacports]rVUunziprWaUfreebsd]rXUunziprYaUopensuse]rZUunzipr[aUrhel]r\Uunzipr]aU slackware}r^Uslackpkg}r_Upackages]r`UinfozipraassUubuntu]rbUunziprcaUarch]rdUunzipreaUdebian]rfUunziprgauUsocat}rh(Ufedora]riUsocatrjaUarch]rkUsocatrlaUdebian]rmUsocatrnaUgentoo]roUnet-misc/socatrpaUubuntu]rqUsocatrrauUlibpcl-all-dev}rs(Ufedora]rtU pcl-develruaUgentoo]rvU sci-libs/pclrwaUmacports]rxUlibpclryaUfreebsd]rzUlibpclr{aUopensuse]r|Upclr}aUrhel]r~U pcl-develraU slackware]r€UpclraUubuntu}r‚(Uprecise]rƒUlibpcl-1.7-all-devr„aUeoan]r…U libpcl-devr†aUxenial]r‡U libpcl-devrˆaUvivid]r‰U libpcl-devrŠaUbionic]r‹U libpcl-devrŒaUwily]rU libpcl-devrŽaUsaucy]rUlibpcl-1.7-all-devraUyakkety]r‘U libpcl-devr’aUtrusty]r“Ulibpcl-1.7-all-devr”aUcosmic]r•U libpcl-devr–aUartful]r—U libpcl-devr˜aUdisco]r™U libpcl-devršaUutopic]r›U libpcl-devrœaUzesty]rU libpcl-devržaUraring]rŸUlibpcl-1.7-all-devr aUquantal]r¡Ulibpcl-1.7-all-devr¢auU openembedded]r£U pcl@meta-rosr¤aUarch]r¥Upclr¦aUdebian]r§U libpcl-devr¨auU libzstd-dev}r©(Ufedora]rªU libzstd-develr«aUarch]r¬Uzstdr­aUdebian]r®U libzstd-devr¯aUgentoo]r°U app-arch/zstdr±aUubuntu}r²(U*]r³U libzstd-devr´aUxenial]rµU libzstd1-devr¶auuU daemontools}r·(Uarch]r¸U daemontoolsr¹aUdebian]rºU daemontoolsr»aUgentoo]r¼Uvirtual/daemontoolsr½aUubuntu]r¾U daemontoolsr¿auUx11proto-dri2-dev}rÀ(Ufedora]rÁUxorg-x11-proto-develrÂaUarch]rÃU dri2protorÄaUdebian]rÅUx11proto-dri2-devrÆaUubuntu]rÇUx11proto-dri2-devrÈauUtexlive-latex-recommended}rÉ(Ufedora]rÊ(Utexlive-framedrËUtexlive-threeparttablerÌU texlive-ecrÍUtexlive-mdwtoolsrÎeUgentoo]rÏU$dev-texlive/texlive-latexrecommendedrÐaUmacports]rÑUtexlive-latex-recommendedrÒaUubuntu]rÓUtexlive-latex-recommendedrÔaUarch]rÕU texlive-corerÖaUdebian]r×Utexlive-latex-recommendedrØauUcomedi}rÙ(Ufedora]rÚUcomedilib-develrÛaUdebian]rÜU libcomedi-devrÝaUubuntu]rÞU libcomedi-devrßauU libzip-dev}rà(Ufedora]ráU libzip-develrâaUdebian]rãU libzip-devräaUgentoo]råUdev-libs/libzipræaUubuntu]rçU libzip-devrèauU lib32asound2}ré(Ufedora]rê(Ualsa-lib(%{__isa_name}-32)rëUalsa-librìeUdebian]ríU lib32asound2rîaUgentoo]rïUmedia-libs/alsa-librðaUubuntu]rñU lib32asound2ròauUgcc-avr}ró(Ufedora]rôUavr-gccrõaUarch]röUavr-gccr÷aUdebian]røUgcc-avrrùaUgentoo]rúUsys-devel/crossdevrûaUubuntu]rüUgcc-avrrýauU rosemacs-el}rþUubuntu}rÿ(Uprecise]r U rosemacs-elr aUlucid]r U rosemacs-elr aUoneiric]r U rosemacs-elr ausUlibgazebo5-dev}r (Uarch]r Ugazebor aUgentoo]r U=sci-electronics/gazebo-5*r aUubuntu]r Ulibgazebo5-devr auUlibpcsclite-dev}r (Ufedora]r Upcsc-lite-develr aUarch]r Upcscliter aUdebian]r Ulibpcsclite-devr aUgentoo]r Usys-apps/pcsc-liter aUubuntu]r Ulibpcsclite-devr auUgimp}r (Ufedora]r Ugimpr aUdebian]r Ugimpr aUgentoo]r Umedia-gfx/gimpr aUubuntu]r Ugimpr auUalsa-oss}r! (Ufedora]r" Ualsa-ossr# aUarch]r$ Ualsa-ossr% aUdebian]r& Ualsa-ossr' aUgentoo]r( Umedia-libs/alsa-ossr) aUubuntu]r* Ualsa-ossr+ auUnpm}r, (Ufedora]r- Unpmr. aUdebian]r/ Unpmr0 aUgentoo]r1 Unet-libs/nodejs[npm]r2 aUubuntu]r3 Unpmr4 auUlibboost-program-options-dev}r5 (Ufedora]r6 U boost-develr7 aU openembedded]r8 Uboost@openembedded-corer9 aUdebian]r: Ulibboost-program-options-devr; aUubuntu]r< Ulibboost-program-options-devr= auUprotobuf}r> (Ufedora]r? Uprotobufr@ aUgentoo]rA Udev-libs/protobufrB aUmacports]rC U protobuf-cpprD aUfreebsd]rE UprotobufrF aUopensuse]rG U libprotobuf9rH aU slackware]rI UprotobufrJ aUubuntu}rK (Uprecise]rL U libprotobuf7rM aUsaucy]rN U libprotobuf7rO aUyakkety]rP U libprotobuf10rQ aUtrusty]rR U libprotobuf8rS aUcosmic]rT U libprotobuf10rU aUartful]rV U libprotobuf10rW aUxenial]rX Ulibprotobuf9v5rY aUutopic]rZ U libprotobuf8r[ aUvivid]r\ U libprotobuf9r] aUbionic]r^ U libprotobuf10r_ aUzesty]r` U libprotobuf10ra aUraring]rb U libprotobuf7rc aUwily]rd Ulibprotobuf9v5re auUarch]rf Uprotobufrg aUdebian}rh (Ustretch]ri U libprotobuf10rj aUjessie]rk U libprotobuf9rl aUsqueeze]rm U libprotobuf7rn aUbuster]ro U libprotobuf17rp aUwheezy]rq U libprotobuf7rr auuUtcsh}rs (Ufedora]rt Utcshru aUarch]rv Utcshrw aUdebian]rx Utcshry aUgentoo]rz Uapp-shells/tcshr{ aUubuntu]r| Utcshr} auUgperf}r~ (Ufedora]r Ugperfr€ aUdebian]r Ugperfr‚ aUrhel]rƒ Ugperfr„ aUgentoo]r… Udev-util/gperfr† aUubuntu]r‡ Ugperfrˆ auUsdformat}r‰ (Ufedora]rŠ Usdformat-develr‹ aUarch]rŒ U sdformat-hgr aUdebian]rŽ Ulibsdformat-devr aUgentoo]r Udev-libs/sdformatr‘ aUubuntu}r’ (Uprecise]r“ Usdformatr” aUsaucy]r• Ulibsdformat-devr– aUtrusty]r— Ulibsdformat-devr˜ aUcosmic]r™ Ulibsdformat6-devrš aUartful]r› Ulibsdformat6-devrœ aUxenial]r Ulibsdformat4-devrž aUbionic]rŸ Ulibsdformat6-devr  aUquantal]r¡ Usdformatr¢ aUraring]r£ Usdformatr¤ auuUlibgstreamer0.10-0}r¥ (Ufedora]r¦ U gstreamerr§ aUarch]r¨ U gstreamer0.10r© aUdebian}rª (Ujessie]r« Ulibgstreamer0.10-0r¬ aUwheezy]r­ Ulibgstreamer0.10-0r® auUgentoo]r¯ Umedia-libs/gstreamer:0.10r° aUubuntu]r± Ulibgstreamer0.10-0r² auUtexlive-fonts-recommended}r³ (Ufedora]r´ (U texlive-timesrµ Utexlive-helveticr¶ eUgentoo]r· U$dev-texlive/texlive-fontsrecommendedr¸ aUmacports]r¹ Utexlive-fonts-recommendedrº aUubuntu]r» Utexlive-fonts-recommendedr¼ aUarch]r½ U texlive-corer¾ aUdebian]r¿ Utexlive-fonts-recommendedrÀ auUlibsystemd-dev}rÁ (Udebian]r Ulibsystemd-devrà aUubuntu}rÄ (U*]rÅ Ulibsystemd-devrÆ aUtrustyNuuU libpq-dev}rÇ (Ufedora}rÈ (U24]rÉ (Uderelict-PQ-develrÊ Upostgresql-develrË eU spherical]rÌ (Uderelict-postgresql-develrÍ Upostgresql-develrÎ eU heisenbug]rÏ (Uderelict-postgresql-develrÐ Upostgresql-develrÑ eU21]rÒ (Uderelict-PQ-develrÓ Upostgresql-develrÔ eU22]rÕ (Uderelict-PQ-develrÖ Upostgresql-develr× eU23]rØ (Uderelict-PQ-develrÙ Upostgresql-develrÚ eU28]rÛ (Uderelict-PQ-develrÜ Upostgresql-develrÝ eUbeefy]rÞ (Uderelict-postgresql-develrß Upostgresql-develrà eXschrödinger’s]rá (Uderelict-postgresql-develrâ Upostgresql-develrã euUarch]rä Upostgresql-libsrå aUdebian]ræ U libpq-devrç aUgentoo]rè Udev-db/postgresqlré aUubuntu]rê U libpq-devrë auU sparsehash}rì (Ufedora]rí Usparsehash-develrî aUdebian]rï Ulibsparsehash-devrð aUgentoo]rñ Udev-cpp/sparsehashrò aUubuntu}ró (Uprecise]rô U sparsehashrõ aUsaucy]rö U sparsehashr÷ aUyakkety]rø Ulibsparsehash-devrù aUtrusty]rú U sparsehashrû aUartful]rü Ulibsparsehash-devrý aUxenial]rþ Ulibsparsehash-devrÿ aUutopic]r U sparsehashr aUvivid]r Ulibsparsehash-devr aUbionic]r Ulibsparsehash-devr aUzesty]r Ulibsparsehash-devr aUwily]r Ulibsparsehash-devr auuU libnlopt0}r (Ufedora]r UNLoptr aUdebian]r U libnlopt0r aUgentoo]r Usci-libs/nloptr aUubuntu]r U libnlopt0r auUlibgstreamer1.0-dev}r (Ufedora]r Ugstreamer1-develr aUarch]r U gstreamerr aUdebian]r Ulibgstreamer1.0-devr aUgentoo]r Umedia-libs/gstreamer:1.0r aUubuntu]r Ulibgstreamer1.0-devr auU suitesparse}r (Ufedora]r Usuitesparse-develr aUgentoo]r! Usci-libs/suitesparser" aUmacports]r# U SuiteSparser$ aU openembedded]r% (Usuitesparse-cxsparse@meta-rosr& Usuitesparse-cholmod@meta-rosr' eUubuntu]r( Ulibsuitesparse-devr) aUarch]r* U suitesparser+ aUdebian]r, Ulibsuitesparse-devr- auU qhull-bin}r. (Ufedora]r/ Uqhullr0 aUarch]r1 Uqhullr2 aUdebian]r3 U qhull-binr4 aUgentoo]r5 Umedia-libs/qhullr6 aUubuntu]r7 U qhull-binr8 auUstress}r9 (Ufedora]r: Ustressr; aUgentoo]r< Uapp-benchmarks/stressr= aUubuntu]r> Ustressr? aUfreebsd]r@ UstressrA aUarch]rB UstressrC aUdebian]rD UstressrE auU libgpgme-dev}rF (Ufedora]rG U gpgme-develrH aUgentoo]rI Uapp-crypt/gpgmerJ aUrhel]rK U gpgme-develrL aUfreebsd]rM UgpgmerN aUubuntu}rO (Uprecise]rP Ulibgpgme11-devrQ aUtrusty_python3]rR Ulibgpgme11-devrS aUlucid]rT Ulibgpgme11-devrU aUxenial]rV Ulibgpgme11-devrW aUvivid]rX Ulibgpgme11-devrY aUbionic]rZ U libgpgme-devr[ aUwily]r\ Ulibgpgme11-devr] aUsaucy]r^ Ulibgpgme11-devr_ aUyakkety]r` U libgpgme-devra aUtrusty]rb Ulibgpgme11-devrc aUoneiric]rd Ulibgpgme11-devre aUartful]rf U libgpgme-devrg aUutopic]rh Ulibgpgme11-devri aUzesty]rj U libgpgme-devrk aUraring]rl Ulibgpgme11-devrm aUmaverick]rn Ulibgpgme11-devro aUquantal]rp Ulibgpgme11-devrq auU openembedded]rr Ugpgme@openembedded-corers aUarch]rt Ugpgmeru aUdebian}rv (Ustretch]rw U libgpgme-devrx aUjessie]ry Ulibgpgme11-devrz aUbuster]r{ U libgpgme-devr| aUwheezy]r} Ulibgpgme11-devr~ auUalpine]r U gpgme-devr€ auU uvcdynctrl}r (Ufedora]r‚ U uvcdynctrlrƒ aUdebian]r„ U uvcdynctrlr… aUubuntu]r† U uvcdynctrlr‡ auUcoinor-libcbc3}rˆ (Udebian]r‰ Ucoinor-libcbc3rŠ aUubuntu]r‹ Ucoinor-libcbc3rŒ auUcoinor-libcoinutils-dev}r (Udebian]rŽ Ucoinor-libcoinutils-devr aUgentoo]r Usci-libs/coinor-utilsr‘ aUubuntu]r’ Ucoinor-libcoinutils-devr“ auUlibmysqlclient-dev}r” (Uopensuse]r• Ulibmysqlclient-develr– aUfedora}r— (U24]r˜ U mariadb-develr™ aU spherical]rš U mysql-develr› aU heisenbug]rœ U mariadb-develr aU21]rž U mariadb-develrŸ aU22]r  U mariadb-develr¡ aU23]r¢ U mariadb-develr£ aUbeefy]r¤ U mysql-develr¥ aXschrödinger’s]r¦ U mariadb-develr§ auUgentoo]r¨ Uvirtual/libmysqlclientr© aUmacports]rª Umysql5r« aUubuntu]r¬ Ulibmysqlclient-devr­ aUarch]r® Umariadbr¯ aUdebian]r° Ulibmysqlclient-devr± auUlibx11}r² (Ufedora]r³ UlibX11r´ aUgentoo]rµ Ux11-libs/libX11r¶ aUmacports]r· U xorg-libX11r¸ aUubuntu]r¹ U libx11-devrº aUarch]r» Ulibx11r¼ aUdebian]r½ U libx11-devr¾ auU nvidia-cuda}r¿ (Udebian]rÀ Unvidia-cuda-toolkitrÁ aUgentoo]r Udev-util/nvidia-cuda-toolkitrà aUubuntu]rÄ Unvidia-cuda-toolkitrÅ auU libcoin60-dev}rÆ (Ufedora]rÇ U Coin2-develrÈ aUarch]rÉ UcoinrÊ aUdebian}rË Uwheezy]rÌ U libcoin60-devrÍ asUgentoo]rÎ U=media-libs/coin-3.1.3*rÏ aUubuntu]rÐ U libcoin60-devrÑ auU checkinstall}rÒ (Uarch]rÓ U checkinstallrÔ aUdebian]rÕ U checkinstallrÖ aUubuntu]r× U checkinstallrØ auUzbar}rÙ (Ufedora]rÚ U zbar-develrÛ aUarch]rÜ UzbarrÝ aUdebian]rÞ U libzbar-devrß aUgentoo]rà Umedia-gfx/zbarrá aUubuntu]râ U libzbar-devrã auU gcc-multilib}rä (Ufedora]rå (Ugccræ U glibc-develrç Uglibc-devel(%{__isa_name}-32)rè U glibc-staticré Uglibc-static(%{__isa_name}-32)rê eUdebian]rë U gcc-multilibrì aUgentoo]rí Usys-devel/multilib-gcc-wrapperrî aUubuntu]rï U gcc-multilibrð auUlibsecp256k1-dev}rñ (Ufedora]rò Ulibsecp256k1-develró aUdebian]rô Ulibsecp256k1-devrõ aUubuntu]rö Ulibsecp256k1-devr÷ auUenet}rø (Ufedora]rù U enet-develrú aUdebian]rû U libenet-devrü aUgentoo]rý U net-libs/enetrþ aUubuntu]rÿ U libenet-devr auUcouchdb}r (Ufedora]r Ucouchdbr aUarch]r Ucouchdbr aUdebian]r Ucouchdbr aUgentoo]r Udev-db/couchdbr aUubuntu]r Ucouchdbr auUeigen}r (Ufedora]r U eigen3-develr aUgentoo]r U dev-cpp/eigenr aUmacports]r Ueigen3r aUfreebsd]r Ueigenr aUopensuse]r Ulibeigen3-develr aUrhel]r U eigen3-develr aU slackware}r Uslackpkg}r Upackages]r Ueigen3r assUubuntu]r U libeigen3-devr aU openembedded]r Ulibeigen@meta-oer aUarch]r! Ueigen3r" aUdebian}r# (Ustretch]r$ U libeigen3-devr% aUjessie]r& U libeigen3-devr' aUbuster]r( U libeigen3-devr) aUwheezy]r* U libeigen3-devr+ auUalpine]r, U eigen-devr- auUifstat}r. (Ufedora]r/ Uifstatr0 aUdebian]r1 Uifstatr2 aUgentoo]r3 Unet-analyzer/ifstatr4 aUubuntu]r5 Uifstatr6 auU qtbase5-dev}r7 (Ufedora]r8 Uqt5-qtbase-develr9 aUgentoo]r: (Udev-qt/qtcore:5r; Udev-qt/qtwidgets:5r< Udev-qt/qttest:5r= eUfreebsd]r> Uqt5-corer? aUopensuse]r@ (Ulibqt5-qtbase-common-develrA Ulibqt5-qtbase-develrB eUrhel]rC Uqt5-qtbase-develrD aU slackware]rE Uqt5rF aUubuntu]rG U qtbase5-devrH aU openembedded]rI Uqtbase@meta-qt5rJ aUarch]rK Uqt5-baserL aUdebian]rM U qtbase5-devrN aUalpine]rO Uqt5-qtbase-devrP auUlz4}rQ (Ufedora]rR U lz4-develrS aUgentoo]rT U app-arch/lz4rU aUfreebsd]rV Uliblz4rW aUopensuse]rX Ulz4rY aU slackware]rZ Ulz4r[ aUubuntu}r\ (Usaucy]r] U liblz4-devr^ aUyakkety]r_ U liblz4-devr` aUvivid]ra U liblz4-devrb aUartful]rc U liblz4-devrd aUxenial]re U liblz4-devrf aUutopic]rg U liblz4-devrh aUtrusty]ri U liblz4-devrj aUbionic]rk U liblz4-devrl aUzesty]rm U liblz4-devrn aUwily]ro U liblz4-devrp auU openembedded]rq Ulz4@openembedded-corerr aUarch]rs Ulz4rt aUdebian]ru U liblz4-devrv aUalpine]rw Ulz4-devrx auUgraphviz}ry (Ufedora]rz Ugraphvizr{ aUgentoo]r| Umedia-gfx/graphvizr} aUmacports]r~ Ugraphvizr aUfreebsd]r€ Ugraphvizr aUopensuse]r‚ Ugraphvizrƒ aUrhel]r„ Ugraphvizr… aU slackware]r† Ugraphvizr‡ aUubuntu]rˆ Ugraphvizr‰ aU openembedded]rŠ Ugraphviz@meta-rosr‹ aUarch]rŒ Ugraphvizr aUdebian]rŽ Ugraphvizr auUcppad}r (Ufedora]r‘ Ucppadr’ aUdebian]r“ Ucppadr” aUgentoo]r• Usci-libs/coinor-cppadr– aUubuntu]r— Ucppadr˜ auUavrdude}r™ (Ufedora]rš Uavrduder› aUarch]rœ Uavrduder aUdebian]rž UavrduderŸ aUgentoo]r  Udev-embedded/avrduder¡ aUubuntu]r¢ Uavrduder£ auUhtop}r¤ (Ufedora]r¥ Uhtopr¦ aUarch]r§ Uhtopr¨ aUdebian]r© Uhtoprª aUgentoo]r« Usys-process/htopr¬ aUubuntu]r­ Uhtopr® auUlibav}r¯ (Ufedora]Uarch]r° U libav-gitr± aUdebian]r² U libav-toolsr³ aUgentoo]r´ Uvirtual/ffmpegrµ aUubuntu]r¶ U libav-toolsr· auUlibkdtree++-dev}r¸ (Ufedora]r¹ Ulibkdtree++-develrº aUdebian]r» Ulibkdtree++-devr¼ aUubuntu]r½ Ulibkdtree++-devr¾ auUpolyclipping-dev}r¿ (Udebian}rÀ (Ustretch]rÁ Ulibpolyclipping-devr aUjessie]rà Ulibpolyclipping-devrÄ aUbuster]rÅ Ulibpolyclipping-devrÆ auUubuntu]rÇ Ulibpolyclipping-devrÈ auUqtmultimedia5-dev}rÉ (Ufedora]rÊ Uqt5-qtmultimedia-develrË aUgentoo]rÌ Udev-qt/qtmultimedia:5rÍ aUubuntu]rÎ Uqtmultimedia5-devrÏ aUfreebsd]rÐ Uqt5-multimediarÑ aUarch]rÒ Uqt5-multimediarÓ aUdebian]rÔ Uqtmultimedia5-devrÕ auUuuid}rÖ (Ufedora]r× U libuuid-develrØ aUgentoo]rÙ Udev-libs/ossp-uuidrÚ aUmacports]rÛ U ossp-uuidrÜ aUfreebsd]rÝ Ue2fsprogs-libuuidrÞ aUopensuse]rß U libuuid-develrà aUrhel]rá U libuuid-develrâ aU slackware}rã Uslackpkg}rä Upackages]rå U util-linuxræ assUubuntu]rç Uuuid-devrè aU openembedded]ré Uutil-linux@openembedded-corerê aUarch]rë U util-linuxrì aUdebian]rí Uuuid-devrî auU phantomjs}rï (Udebian}rð (Ustretch]rñ U phantomjsrò aUbuster]ró U phantomjsrô auUgentoo]rõ Uwww-client/phantomjsrö aUubuntu]r÷ U phantomjsrø auUlibqwt6}rù (Ufedora]rú U qwt-develrû aUarch]rü Uqwtrý aUdebian]rþ U libqwt-devrÿ aUgentoo]r Ux11-libs/qwt:6r aUubuntu]r U libqwt-devr auUlibqtwebkit-dev}r (Ufedora]r Uqtwebkit-develr aUarch]r U qt5-webkitr aUdebian]r Ulibqtwebkit-devr aUgentoo]r Udev-qt/qtwebkitr aUubuntu]r Ulibqtwebkit-devr auU gnuplot-x11}r (Udebian]r U gnuplot-x11r aUubuntu]r U gnuplot-x11r auUnite-dev}r (Ufedora]r Uopenni-nite-develr aUarch]r Uprimesense-niter aUdebian]r Unite-devr aUubuntu]r Unite-devr auUyaml}r (Ufedora]r Ulibyamlr aUgentoo]r Udev-libs/libyamlr! aUmacports]r" Ulibyamlr# aUrhel]r$ U libyaml-develr% aUubuntu]r& U libyaml-devr' aU openembedded]r( Ulibyaml@openembedded-corer) aUarch]r* Ulibyamlr+ aUdebian]r, U libyaml-devr- aUalpine]r. Uyaml-devr/ auU libvtk-java}r0 (Ufedora]r1 Uvtk-javar2 aUgentoo]r3 Usci-libs/vtk[java]r4 aUfreebsd]r5 Uvtk6r6 aUopensuse]r7 Uvtk-javar8 aU slackware]r9 UVTKr: aUubuntu}r; (Uprecise]r< U libvtk-javar= aUsaucy]r> U libvtk-javar? aUtrusty]r@ U libvtk-javarA aUlucid]rB U libvtk-javarC aU*]rD U libvtk6-javarE aUxenial]rF U libvtk-javarG aUutopic]rH U libvtk-javarI aUvivid]rJ U libvtk-javarK aUraring]rL U libvtk-javarM aUquantal]rN U libvtk-javarO aUwily]rP U libvtk-javarQ auUarch]rR UvtkrS aUdebian}rT (Ustretch]rU U libvtk6-javarV aUjessie]rW U libvtk-javarX aUbuster]rY U libvtk6-javarZ aUwheezy]r[ U libvtk-javar\ auuU libgstreamer-plugins-base1.0-dev}r] (Ufedora]r^ Ugstreamer1-plugins-base-develr_ aUarch]r` Ugst-plugins-basera aUdebian]rb U libgstreamer-plugins-base1.0-devrc aUgentoo]rd Umedia-libs/gst-plugins-base:1.0re aUubuntu]rf U libgstreamer-plugins-base1.0-devrg auUlibopenexr-dev}rh (Ufedora]ri U OpenEXR-develrj aUarch]rk Uopenexrrl aUdebian]rm Ulibopenexr-devrn aUgentoo]ro Umedia-libs/openexrrp aUubuntu]rq Ulibopenexr-devrr auUflex}rs (Ufedora]rt Uflexru aUgentoo]rv Usys-devel/flexrw aUmacports]rx Uflexry aUubuntu]rz Uflexr{ aUarch]r| Uflexr} aUdebian]r~ Uflexr auUyamllint}r€ (Ufedora]r Uyamllintr‚ aUarch]rƒ Uyamllintr„ aUdebian}r… (Ustretch]r† Uyamllintr‡ aUbuster]rˆ Uyamllintr‰ auUgentoo]rŠ Udev-util/yamllintr‹ aUubuntu}rŒ (Uzesty]r UyamllintrŽ aUyakkety]r Uyamllintr aUartful]r‘ Uyamllintr’ aUbionic]r“ Uyamllintr” aUxenial]r• Uyamllintr– auuU libespeak-dev}r— (Ufedora]r˜ U espeak-develr™ aUdebian]rš U libespeak-devr› aUgentoo]rœ Uapp-accessibility/espeakr aUubuntu]rž U libespeak-devrŸ auU libphonon}r  (Ufedora]r¡ Uphononr¢ aUdebian]r£ U libphonon4r¤ aUgentoo]r¥ Umedia-libs/phononr¦ aUubuntu]r§ U libphonon4r¨ auU libssl-dev}r© (Ufedora]rª U openssl-develr« aUgentoo]r¬ Udev-libs/opensslr­ aUrhel]r® U openssl-develr¯ aUfreebsd]r° Uopensslr± aUubuntu]r² U libssl-devr³ aU openembedded]r´ Uopenssl@openembedded-corerµ aUarch]r¶ Uopensslr· aUdebian]r¸ U libssl-devr¹ aUalpine]rº U libressl-devr» auUgstreamer1.0-x}r¼ (Ufedora]r½ Ugstreamer1-plugins-baser¾ aUarch]r¿ U gstreamerrÀ aUdebian]rÁ Ugstreamer1.0-xr aUgentoo]rà U(media-libs/gst-plugins-base:1.0[X,pango]rÄ aUubuntu]rÅ Ugstreamer1.0-xrÆ auU libxmlrpc-c++}rÇ (Ufedora]rÈ Uxmlrpc-c-develrÉ aUarch]rÊ Uxmlrpc-crË aUdebian]rÌ Ulibxmlrpc-c++8-devrÍ aUgentoo]rÎ Udev-libs/xmlrpc-crÏ aUubuntu]rÐ Ulibxmlrpc-c++8-devrÑ auUlibpocofoundation9}rÒ (Ufedora]rÓ Upoco-foundationrÔ aUdebian]rÕ Ulibpocofoundation9rÖ aUubuntu]r× Ulibpocofoundation9rØ auU libpqxx-dev}rÙ (Ufedora]rÚ U libpqxx-develrÛ aUdebian]rÜ U libpqxx-devrÝ aUgentoo]rÞ Udev-libs/libpqxxrß aUubuntu}rà (Uprecise]rá U libpqxx3-devrâ aUlucid]rã U libpqxx3-devrä aUxenial]rå U libpqxx-devræ aUvivid]rç U libpqxx-devrè aUbionic]ré U libpqxx-devrê aUwily]rë U libpqxx-devrì aUsaucy]rí U libpqxx3-devrî aUyakkety]rï U libpqxx-devrð aUtrusty]rñ U libpqxx-devrò aUoneiric]ró U libpqxx3-devrô aUartful]rõ U libpqxx-devrö aUnatty]r÷ U libpqxx3-devrø aUutopic]rù U libpqxx-devrú aUzesty]rû U libpqxx-devrü aUraring]rý U libpqxx3-devrþ aUmaverick]rÿ U libpqxx3-devr aUquantal]r U libpqxx3-devr auuU lua5.2-dev}r (Ufedora]r Uluar aU openembedded]r U lua@meta-oer aUdebian]r U liblua5.2-devr aUgentoo]r Udev-lang/lua:5.2r aUubuntu]r U liblua5.2-devr auU osm2pgsql}r (Ufedora]r U osm2pgsqlr aUdebian]r U osm2pgsqlr aUgentoo]r Usci-geosciences/osm2pgsqlr aUubuntu]r U osm2pgsqlr auUlibjpeg}r (Ufedora]r Ulibjpeg-turbo-develr aUgentoo]r U virtual/jpegr aUmacports]r Ujpegr aUfreebsd]r U libjpeg-turbor aUopensuse]r Ulibjpeg62-develr! aU slackware]r" U libjpeg-turbor# aUubuntu}r$ (Uprecise]r% U libjpeg-devr& aUtrusty_python3]r' U libjpeg-devr( aUlucid]r) U libjpeg62-devr* aUxenial]r+ U libjpeg-devr, aUvivid]r- U libjpeg-devr. aUbionic]r/ U libjpeg-devr0 aUwily]r1 U libjpeg-devr2 aUsaucy]r3 U libjpeg-devr4 aUyakkety]r5 U libjpeg-devr6 aUtrusty]r7 U libjpeg-devr8 aUoneiric]r9 U libjpeg62-devr: aUartful]r; U libjpeg-devr< aUnatty]r= U libjpeg62-devr> aUutopic]r? U libjpeg-devr@ aUzesty]rA U libjpeg-devrB aUraring]rC U libjpeg-devrD aUmaverick]rE U libjpeg62-devrF aUquantal]rG U libjpeg-devrH auU openembedded]rI Ujpeg@openembedded-corerJ aUarch]rK U libjpeg-turborL aUdebian}rM (Ustretch]rN U libjpeg-devrO aUjessie]rP Ulibjpeg62-turbo-devrQ aUbuster]rR U libjpeg-devrS aUwheezy]rT U libjpeg8-devrU auuUmeshlab}rV (Ufedora]rW UmeshlabrX aUarch]rY UmeshlabrZ aUdebian]r[ Umeshlabr\ aUgentoo]r] Umedia-gfx/meshlabr^ aUubuntu]r_ Umeshlabr` auUgradle}ra (Ufedora]rb Ugradlerc aUarch]rd Ugradlere aUdebian}rf (Ustretch]rg Ugradlerh aUjessie]ri Ugradlerj aUbuster]rk Ugradlerl auUgentoo]rm Udev-java/gradle-binrn aUubuntu]ro Ugradlerp auU libpopt-dev}rq (Ufedora]rr U popt-develrs aUarch]rt Upoptru aUdebian]rv U libpopt-devrw aUgentoo]rx U dev-libs/poptry aUubuntu]rz U libpopt-devr{ auUudhcpc}r| (Uarch]r} Uudhcpr~ aUdebian]r Uudhcpcr€ aUubuntu]r Uudhcpcr‚ auU libhidapi-dev}rƒ (Ufedora]r„ U hidapi-develr… aUdebian]r† U libhidapi-devr‡ aUgentoo]rˆ Udev-libs/hidapir‰ aUubuntu]rŠ U libhidapi-devr‹ auUliblapacke-dev}rŒ (Udebian]r Uliblapacke-devrŽ aUubuntu]r Uliblapacke-devr auUmesa-common-dev}r‘ (Ufedora]r’ (Umesa-libGL-develr“ U libdrm-develr” U libX11-develr• eUarch]r– Umesar— aUdebian]r˜ Umesa-common-devr™ aUgentoo]rš Umedia-libs/mesar› aUubuntu]rœ Umesa-common-devr auU g++-static}rž (Ufedora]rŸ (Ugcc-c++r  U glibc-develr¡ U glibc-staticr¢ Ulibstdc++-develr£ Ulibstdc++-staticr¤ eUgentoo]r¥ U sys-devel/gccr¦ aUubuntu]r§ Ug++r¨ aU openembedded]Uarch]r© Ugccrª aUdebian]r« Ug++r¬ auU libopenni-dev}r­ (Ufedora]r® U openni-develr¯ aUarch]r° Uopennir± aUdebian]r² U libopenni-devr³ aUgentoo]r´ Udev-libs/OpenNIrµ aUubuntu]r¶ U libopenni-devr· auU wx-common}r¸ (Ufedora]r¹ U wxGTK-develrº aUgentoo]r» Ux11-libs/wxGTKr¼ aUubuntu]r½ U wx-commonr¾ aU openembedded]r¿ Uwxwidgets@meta-rosrÀ aUarch]rÁ Uwxgtkr aUdebian]rà U wx-commonrÄ auU ssh-askpass}rÅ (Ufedora]rÆ Ux11-ssh-askpassrÇ aUdebian]rÈ U ssh-askpassrÉ aUgentoo]rÊ Unet-misc/x11-ssh-askpassrË aUubuntu]rÌ U ssh-askpassrÍ auU libqt5-sql}rÎ (Ufedora]rÏ U qt5-qtbaserÐ aUgentoo]rÑ Udev-qt/qtsql:5rÒ aUubuntu]rÓ U libqt5sql5rÔ aUfreebsd]rÕ Uqt5-sqlrÖ aUarch]r× Uqt5-baserØ aUdebian}rÙ (Ustretch]rÚ U libqt5sql5rÛ aUjessie]rÜ U libqt5sql5rÝ aUbuster]rÞ U libqt5sql5rß auuUbluez}rà (Ufedora]rá U bluez-libsrâ aUgentoo]rã Unet-wireless/bluezrä aUubuntu]rå Ubluezræ aUarch]rç Ubluezrè aUdebian]ré Ubluezrê aUrhel]rë U bluez-libsrì auUlibqt4-sql-psql}rí (Ufedora]rî U qt-postgresqlrï aUgentoo]rð Udev-qt/qtsql:4rñ aUmacports]rò Uqt4-macró aUubuntu]rô Ulibqt4-sql-psqlrõ aUarch]rö Uqt4r÷ aUdebian]rø Ulibqt4-sql-psqlrù auUlibjsoncpp-dev}rú (Ufedora]rû U jsoncpp-develrü aUarch]rý Ujsoncpprþ aUdebian]rÿ Ulibjsoncpp-devraUgentoo]rUdev-libs/jsoncppraUubuntu]rUlibjsoncpp-devrauUcoinor-libclp-dev}r(Udebian]rUcoinor-libclp-devraUgentoo]rUsci-libs/coinor-clpr aUubuntu]r Ucoinor-libclp-devr auUlibboost-thread-dev}r (Ufedora]r U boost-threadraUdebian]rUlibboost-thread-devraUubuntu]rUlibboost-thread-devrauUmsgpack}r(Ufedora]rU msgpack-develraUarch]rU msgpack-craUdebian]rUlibmsgpack-devraUgentoo]rUdev-libs/msgpackraUubuntu]rUlibmsgpack-devrauU wxwidgets}r(Ufedora]rU wxGTK-develr aUgentoo]r!Ux11-libs/wxGTKr"aUmacports]r#UwxWidgets-pythonr$aUopensuse]r%U wxGTK-develr&aUrhel]r'U wxGTK-develr(aUfreebsd]r)Uwxgtk2r*aUubuntu}r+(Uprecise]r,Ulibwxgtk2.8-devr-aUlucid]r.Ulibwxgtk2.8-devr/aUxenial]r0Ulibwxgtk3.0-devr1aUvivid]r2Ulibwxgtk2.8-devr3aUbionic]r4Ulibwxgtk3.0-devr5aUwily]r6Ulibwxgtk2.8-devr7aUsaucy]r8Ulibwxgtk2.8-devr9aUyakkety]r:Ulibwxgtk3.0-devr;aUtrusty]r<Ulibwxgtk2.8-devr=aUoneiric]r>Ulibwxgtk2.8-devr?aUartful]r@Ulibwxgtk3.0-devrAaUnatty]rBUlibwxgtk2.8-devrCaUutopic]rDUlibwxgtk2.8-devrEaUzesty]rFUlibwxgtk3.0-devrGaUraring]rHUlibwxgtk2.8-devrIaUmaverick]rJUlibwxgtk2.8-devrKaUquantal]rLUlibwxgtk2.8-devrMauU openembedded]rNUwxwidgets@meta-rosrOaUarch]rPUwxgtkrQaUdebian}rR(Ustretch]rSUlibwxgtk3.0-devrTaUjessie]rUUlibwxgtk3.0-devrVaUbuster]rWUlibwxgtk3.0-devrXaUwheezy]rYUlibwxgtk2.8-devrZauuUgeos}r[(Ufedora]r\U geos-develr]aUarch]r^Ugeosr_aUdebian]r`U libgeos-devraaUgentoo]rbU sci-libs/geosrcaUubuntu]rdU libgeos-devreauUlibboost-system-dev}rf(Ufedora]rgU boost-systemrhaUdebian]riUlibboost-system-devrjaUubuntu]rkUlibboost-system-devrlauUyaml-cpp}rm(Ufedora]rnUyaml-cpp-develroaUgentoo]rpUdev-cpp/yaml-cpprqaUmacports]rrUyaml-cpprsaUfreebsd]rtUyaml-cppruaUopensuse]rvUyaml-cpp-develrwaUrhel]rxUyaml-cpp-develryaU slackware]rzUyaml-cppr{aUubuntu}r|(Uprecise]r}Uyaml-cppr~aUeoan]rUlibyaml-cpp-devr€aUlucid]rUyaml-cpp0.2.6-devr‚aUxenial]rƒUlibyaml-cpp-devr„aUvivid]r…Ulibyaml-cpp-devr†aUbionic]r‡Ulibyaml-cpp-devrˆaUwily]r‰Ulibyaml-cpp-devrŠaUsaucy]r‹Ulibyaml-cpp-devrŒaUyakkety]rUlibyaml-cpp-devrŽaUtrusty]rUlibyaml-cpp-devraUoneiric]r‘Uyaml-cpp0.2.6-devr’aUcosmic]r“Ulibyaml-cpp-devr”aUartful]r•Ulibyaml-cpp-devr–aUdisco]r—Ulibyaml-cpp-devr˜aUutopic]r™Ulibyaml-cpp-devršaUquantal]r›Ulibyaml-cpp-devrœaUtrusty_python3]rUlibyaml-cpp-devržaUzesty]rŸUlibyaml-cpp-devr aUraring]r¡Ulibyaml-cpp-devr¢aUmaverick]r£Uyaml-cpp0.2.6-devr¤aUnatty]r¥Uyaml-cpp0.2.6-devr¦auU openembedded]r§Uyaml-cpp@meta-rosr¨aUarch]r©Uyaml-cpprªaUdebian}r«(Ustretch]r¬Ulibyaml-cpp-devr­aUjessie]r®Ulibyaml-cpp-devr¯aUsqueeze}r°Usource}r±(Umd5sumU f7fb81fd4a2fbd5022daa7686e816359UuriUVhttps://kforge.ros.org/rosrelease/viewvc/sourcedeps/yaml-cpp/yaml-cpp-0.2.5.rdmanifestusUbuster]r²Ulibyaml-cpp-devr³aUwheezy]r´Ulibyaml-cpp-devrµauUalpine]r¶U yaml-cpp-devr·auUsshpass}r¸(Ufedora]r¹UsshpassrºaUdebian]r»Usshpassr¼aUgentoo]r½Unet-misc/sshpassr¾aUubuntu]r¿UsshpassrÀauUbison}rÁ(Ufedora]rÂUbisonrÃaUgentoo]rÄUsys-devel/bisonrÅaUmacports]rÆUbisonrÇaUubuntu]rÈUbisonrÉaUarch]rÊUbisonrËaUdebian]rÌUbisonrÍauUoptipng}rÎ(Ufedora]rÏUoptipngrÐaUdebian]rÑUoptipngrÒaUgentoo]rÓUmedia-gfx/optipngrÔaUubuntu]rÕUoptipngrÖauUpostgresql-client}r×(Ufedora]rØUpostgresql-clientrÙaUdebian]rÚUpostgresql-clientrÛaUgentoo]rÜUdev-db/postgresqlrÝaUubuntu]rÞUpostgresql-clientrßauUlibqt5-network}rà(Ufedora]ráU qt5-qtbaserâaUgentoo]rãUdev-qt/qtnetwork:5räaUubuntu]råUlibqt5network5ræaUfreebsd]rçU qt5-networkrèaUarch]réUqt5-baserêaUdebian]rëUlibqt5network5rìauU libb64-dev}rí(Ufedora]rîU libb64-develrïaUarch]rðUlibb64rñaUdebian]ròU libb64-devróaUgentoo]rôUlibb64rõaUubuntu]röU libb64-devr÷auUdvipng}rø(Ufedora]rùUtexlive-dvipng-binrúaUarch]rûU texlive-binrüaUdebian]rýUdvipngrþaUgentoo]rÿUapp-text/dvipngraUubuntu]rUdvipngrauUntp}r(Ufedora]rUntpraUarch]rUntpraUdebian]rUntpr aUgentoo]r U net-misc/ntpr aUubuntu]r Untpr auU can-utils}r(Ufedora]rU can-utilsraUdebian]rU can-utilsraUubuntu]rU can-utilsrauU libtesseract}r(Ufedora]rUtesseract-develraUdebian]rUlibtesseract-devraUgentoo]rUapp-text/tesseractraUubuntu]rUlibtesseract-devrauUpcre-dev}r(Ufedora]rU pcre-develr aUgentoo]r!Udev-libs/libpcrer"aUubuntu]r#U libpcre++-devr$aUarch]r%Upcrer&aUdebian]r'U libpcre++-devr(aUrhel]r)U pcre-develr*auU libxft-dev}r+(Udebian]r,U libxft-devr-aUgentoo]r.Ux11-libs/libXftr/aUubuntu]r0U libxft-devr1auU libdc1394-dev}r2(Uosx}r3Umacports}r4Upackages]r5U libdc1394r6assUfedora]r7Ulibdc1394-develr8aUgentoo]r9Umedia-libs/libdc1394r:aUubuntu]r;Ulibdc1394-22-devr<aUarch}r=Upacman}r>Upackages]r?U libdc1394r@assUdebian]rAUlibdc1394-22-devrBauUlibsqlite3-dev}rC(Ufedora]rDU libsq3-develrEaUgentoo]rFUdev-db/sqlite:3rGaUubuntu]rHUlibsqlite3-devrIaU openembedded]rJUsqlite3@openembedded-corerKaUarch]rLUsqliterMaUdebian]rNUlibsqlite3-devrOaUrhel]rPU libsq3-develrQauU openjdk-6-jdk}rR(Uarch]rSUopenjdk6rTaUdebian}rUUwheezy]rVU openjdk-6-jdkrWasUfreebsd]rXUopenjdk6rYaUubuntu]rZU openjdk-6-jdkr[auUlibopenblas-dev}r\(Ufedora]r]Uopenblas-develr^aUdebian]r_Ulibopenblas-devr`aUubuntu]raUlibopenblas-devrbauUlibreadline-java}rc(Ufedora]rdUlibreadline-javareaUarch]rfU java-readlinergaUdebian]rhUlibreadline-javariaUgentoo]rjUdev-java/libreadline-javarkaUubuntu]rlUlibreadline-javarmauU i2c-tools}rn(Uopensuse]roU i2c-toolsrpaUfedora]rqU i2c-toolsrraUdebian]rsU i2c-toolsrtaUgentoo]ruUsys-apps/i2c-toolsrvaUubuntu]rwU i2c-toolsrxauUpotrace}ry(Ufedora]rzUpotracer{aUdebian]r|Upotracer}aUrhel]r~UpotraceraUubuntu]r€UpotracerauUsdl2}r‚(Ufedora]rƒU SDL2-develr„aUdebian]r…U libsdl2-devr†aUgentoo]r‡Umedia-libs/libsdl2rˆaUubuntu]r‰U libsdl2-devrŠauU libceres-dev}r‹(Ufedora]rŒUceres-solver-develraU openembedded]rŽUceres-solver@meta-oeraUdebian}r(Ustretch]r‘U libceres-devr’aUbuster]r“U libceres-devr”auUgentoo]r•U$sci-libs/ceres-solver[sparse,lapack]r–aUubuntu]r—U libceres-devr˜auUopenssl}r™(Ufedora]ršUopensslr›aUgentoo]rœUdev-libs/opensslraUubuntu]ržUopensslrŸaU openembedded]r Uopenssl@openembedded-corer¡aUarch]r¢Uopensslr£aUdebian]r¤Uopensslr¥aUrhel]r¦Uopensslr§auU mesa-utils}r¨(Ufedora]r©U glx-utilsrªaUdebian]r«U mesa-utilsr¬aUgentoo]r­Ux11-apps/mesa-progsr®aUubuntu]r¯U mesa-utilsr°auU libreadline}r±(Ufedora]r²Ureadliner³aUgentoo]r´Usys-libs/readlinerµaUmacports]r¶Ureadliner·aUubuntu]r¸Ulibreadline-devr¹aUarch]rºUreadliner»aUdebian]r¼Ulibreadline-devr½auU sdl-image}r¾(Ufedora]r¿USDL_image-develrÀaUgentoo]rÁUmedia-libs/sdl-imagerÂaUmacports]rÃU libsdl_imagerÄaUopensuse]rÅU SDL_imagerÆaUfreebsd]rÇU sdl_imagerÈaUubuntu]rÉUlibsdl-image1.2-devrÊaU openembedded]rËUlibsdl-image@meta-oerÌaUarch]rÍU sdl_imagerÎaUdebian]rÏUlibsdl-image1.2-devrÐauUswi-prolog-clib}rÑ(Ufedora]rÒUpl-develrÓaUarch]rÔU swi-prologrÕaUdebian}rÖ(Uwoody]r×Uswi-prolog-clibrØaUlenny]rÙUswi-prolog-clibrÚauUubuntu}rÛ(Uprecise]rÜU swi-prologrÝaUoneiric]rÞU swi-prologrßaUlucid]ràUswi-prolog-clibráaUraring]râU swi-prologrãaUmaverick]räU swi-prologråaUquantal]ræU swi-prologrçaUnatty]rèU swi-prologréauuUlibflann}rê(Ufedora]rëUflannrìaUgentoo]ríUsci-libs/flannrîaUmacports]rïUflannrðaUubuntu}rñ(Uprecise]ròU libflann1róaUsaucy]rôU libflann1.8rõaUtrusty]röU libflann1.8r÷aU*]røU libflann1.9rùaUxenial]rúU libflann1.8rûaUutopic]rüU libflann1.8rýaUvivid]rþU libflann1.8rÿaUraring]rU libflann1.7raUquantal]rU libflann1.7raUwily]rU libflann1.8rauUarch]rUflannraUdebian}r(Ujessie]r U libflann1.8r aU*]r U libflann1.9r aUwheezy]r U libflann1.7rauuUzeromq3}r(Ufedora]rUzeromqraUarch]rUzeromqraUdebian]rUlibzmq5raUgentoo]rUzeromqraUubuntu]rUlibzmq5rauU libjson-glib}r(Ufedora]rU json-glibraUarch]rU json-glibraUdebian]rUlibjson-glib-devr aUgentoo]r!Udev-libs/json-glibr"aUubuntu]r#Ulibjson-glib-devr$auUmayavi}r%(Ufedora]r&UMayavir'aUdebian]r(Umayavi2r)aUgentoo]r*Usci-visualization/mayavir+aUubuntu]r,Umayavi2r-auU lm-sensors}r.(Ufedora]r/U lm_sensorsr0aUarch]r1U lm_sensorsr2aUdebian]r3U lm-sensorsr4aUgentoo]r5Usys-apps/lm_sensorsr6aUubuntu]r7U lm-sensorsr8auUmosquitto-clients}r9(Ufedora]r:U mosquittor;aUdebian]r<Umosquitto-clientsr=aUubuntu]r>Umosquitto-clientsr?auUphp}r@(Ufedora]rAUphprBaUarch]rCUphprDaUdebian}rE(Ustretch]rFUphp7.0rGaUjessie]rHUphp5rIaUbuster]rJUphp7.1rKauUgentoo]rLU dev-lang/phprMaUubuntu}rN(Uprecise]rOUphp5rPaUsaucy]rQUphp5rRaUyakkety]rSUphp7.0rTaUvivid]rUUphp5rVaUxenial]rWUphp7.0rXaUutopic]rYUphp5rZaUtrusty]r[Uphp5r\aUzesty]r]Uphp7.0r^aUraring]r_Uphp5r`aUwily]raUphp5rbauuUpandoc}rc(Udebian]rdUpandocreaUgentoo]rfUapp-text/pandocrgaUubuntu]rhUpandocriauUgstreamer0.10-plugins-good}rj(Ufedora]rkUgstreamer-plugins-goodrlaUarch]rmUgstreamer0.10-good-pluginsrnaUdebian}ro(Ujessie]rpUgstreamer0.10-plugins-goodrqaUwheezy]rrUgstreamer0.10-plugins-goodrsauUgentoo]rtU media-libs/gst-plugins-good:0.10ruaUubuntu]rvUgstreamer0.10-plugins-goodrwauUntpdate}rx(Ufedora]ryUntpdaterzaUarch]r{Untpr|aUdebian]r}Untpdater~aUgentoo]rU net-misc/ntpr€aUubuntu]rUntpdater‚auUarista}rƒ(Uarch]r„Uarista-transcoderr…aUdebian}r†(Ujessie]r‡UaristarˆaUwheezy]r‰UaristarŠauUubuntu]r‹UaristarŒauU qt4-qmake}r(Ufedora]rŽUqt-develraUgentoo]rUdev-qt/qtcore:4r‘aUmacports]r’Uqt4-macr“aUopensuse]r”U libqt4-develr•aUrhel]r–Uqt-develr—aUfreebsd]r˜U qt4-qmaker™aUubuntu]ršU qt4-qmaker›aUarch]rœUqt4raUdebian]ržU qt4-qmakerŸauUgeographiclib-tools}r (Ufedora]r¡U GeographicLibr¢aUdebian]r£Ugeographiclib-toolsr¤aUubuntu]r¥Ugeographiclib-toolsr¦auUfxload}r§(Ufedora]r¨Ufxloadr©aUdebian]rªUfxloadr«aUubuntu]r¬Ufxloadr­auU hdf5-tools}r®(Udebian]r¯U hdf5-toolsr°aUubuntu]r±U hdf5-toolsr²auU libqt5-core}r³(Ufedora]r´U qt5-qtbaserµaUgentoo]r¶Udev-qt/qtcore:5r·aUfreebsd]r¸Uqt5-corer¹aUopensuse]rºU libQt5Core5r»aUrhel]r¼U qt5-qtbaser½aU slackware]r¾Uqt5r¿aUubuntu]rÀU libqt5core5arÁaU openembedded]rÂUqtbase@meta-qt5rÃaUarch]rÄUqt5-baserÅaUdebian]rÆU libqt5core5arÇauUmkdocs-bootswatch}rÈ(Ufedora]rÉUmkdocs-bootswatchrÊaUdebian}rË(Ustretch]rÌUmkdocs-bootswatchrÍaUjessie}rÎUpip}rÏUpackages]rÐUmkdocs-bootswatchrÑassUbuster]rÒUmkdocs-bootswatchrÓaUwheezy}rÔUpip}rÕUpackages]rÖUmkdocs-bootswatchr×assuUgentoo]rØUdev-python/mkdocs-bootswatchrÙaUubuntu}rÚ(Uyakkety}rÛUpip}rÜUpackages]rÝUmkdocs-bootswatchrÞassUwily}rßUpip}ràUpackages]ráUmkdocs-bootswatchrâassUartful]rãUmkdocs-bootswatchräaUxenial}råUpip}ræUpackages]rçUmkdocs-bootswatchrèassUutopic}réUpip}rêUpackages]rëUmkdocs-bootswatchrìassUbionic]ríUmkdocs-bootswatchrîaUzesty]rïUmkdocs-bootswatchrðaUtrusty}rñUpip}ròUpackages]róUmkdocs-bootswatchrôassuuUlibgtkmm}rõ(Ufedora]röUgtkmm24r÷aUarch]røUgtkmmrùaUdebian]rúUlibgtkmm-2.4-devrûaUgentoo]rüU dev-cpp/gtkmmrýaUubuntu]rþUlibgtkmm-2.4-devrÿauU sdl-mixer}r(Ufedora]rUSDL_mixer-develraUgentoo]rUmedia-libs/sdl-mixerraUmacports]rU libsdl_mixerraUubuntu]rUlibsdl-mixer1.2-devraUarch]r U sdl_mixerr aUdebian]r Ulibsdl-mixer1.2-devr auUtexlive-latex-extra}r (Ufedora]r(Utexlive-titlesecrUtexlive-wrapfigrUtexlive-multirowrUtexlive-fancyboxreUarch]rUtexlive-latexextraraUdebian]rUtexlive-latex-extraraUgentoo]rUdev-texlive/texlive-latexextraraUubuntu]rUtexlive-latex-extrarauUlighttpd}r(Ufedora]rUlighttpdraUdebian]rUlighttpdraUubuntu]r Ulighttpdr!auU libspnav-dev}r"(Ufedora]r#Ulibspnav-develr$aUarch]r%Ulibspnavr&aUdebian]r'U libspnav-devr(aUgentoo]r)Udev-libs/libspnavr*aUubuntu]r+U libspnav-devr,auUcccc}r-(Udebian]r.Uccccr/aUgentoo]r0U dev-util/ccccr1aUubuntu]r2Uccccr3auUpsutils}r4(Ufedora]r5Upsutilsr6aUdebian]r7Upsutilsr8aUgentoo]r9Upsutilsr:aUubuntu]r;Upsutilsr<auUlibusb}r=(Ufedora]r>Ulibusbr?aUgentoo]r@Uvirtual/libusbrAaUmacports]rBUlibusbrCaUubuntu]rDU libusb-0.1-4rEaUarch]rFU libusb-compatrGaUdebian]rHU libusb-0.1-4rIauUhddtemp}rJ(Ufedora]rKUhddtemprLaUgentoo]rMUapp-admin/hddtemprNaUmacports]rOUpython27rPaUfreebsd]rQUpython27rRaUopensuse]rSUhddtemprTaU slackware]rUUhddtemprVaUubuntu]rWUhddtemprXaU openembedded]rYUhddtemp@meta-oerZaUarch]r[Uhddtempr\aUdebian]r]Uhddtempr^auUdpkg}r_(Ufedora]r`UdpkgraaUarch]rbUdpkgrcaUdebian]rdUdpkgreaUgentoo]rfU app-arch/dpkgrgaUubuntu]rhUdpkgriauU iputils-ping}rj(Ufedora]rkUiputilsrlaUdebian]rmU iputils-pingrnaUubuntu]roU iputils-pingrpauU libunittest++}rq(Ufedora]rrUunittestrsaUgentoo]rtUdev-libs/unittest++ruaUmacports]rvU unittest-cpprwaUubuntu]rxUlibunittest++-devryaUarch]rzU unittestppr{aUdebian]r|Ulibunittest++-devr}aUrhel]r~UunittestrauUffmpeg}r€(Ufedora]rU ffmpeg-develr‚aUgentoo]rƒUvirtual/ffmpegr„aUmacports]r…Uffmpegr†aUfreebsd]r‡UffmpegrˆaUopensuse]r‰UffmpegrŠaU slackware]r‹UffmpegrŒaUubuntu}r(Uutopic]rŽ(Ulibavcodec-devrUlibavformat-devrU libavutil-devr‘Ulibswscale-devr’eU*]r“(Uffmpegr”Ulibavcodec-devr•Ulibavformat-devr–U libavutil-devr—Ulibswscale-devr˜eUtrusty]r™(Ulibavcodec-devršUlibavformat-devr›U libavutil-devrœUlibswscale-devreUvivid]rž(Ulibavcodec-devrŸUlibavformat-devr U libavutil-devr¡Ulibswscale-devr¢euU openembedded]r£Uffmpeg@openembedded-corer¤aUarch]r¥Uffmpegr¦aUdebian}r§(Ujessie]r¨(U libav-toolsr©Ulibavcodec-devrªUlibavformat-devr«U libavutil-devr¬Ulibswscale-devr­eU*]r®(Uffmpegr¯Ulibavcodec-devr°Ulibavformat-devr±U libavutil-devr²Ulibswscale-devr³euuU mono-devel}r´(Ufedora]rµU mono-develr¶aUdebian]r·U mono-develr¸aUgentoo]r¹U dev-lang/monorºaUubuntu]r»U mono-develr¼auUocl-icd-opencl-dev}r½(Udebian]r¾Uocl-icd-opencl-devr¿aUgentoo]rÀUvirtual/openclrÁaUubuntu]rÂUocl-icd-opencl-devrÃauU libzmqpp3}rÄ(Ugentoo]rÅUnet-libs/cppzmqrÆaUubuntu]rÇU libzmqpp3rÈauUtree}rÉ(Ufedora]rÊUtreerËaUdebian]rÌUtreerÍaUgentoo]rÎU app-text/treerÏaUubuntu]rÐUtreerÑauU libpng-dev}rÒ(Ufedora]rÓU libpng-develrÔaUgentoo]rÕUmedia-libs/libpngrÖaUmacports]r×UlibpngrØaUfreebsd]rÙUpngrÚaUopensuse]rÛUlibpng12-develrÜaU slackware]rÝUlibpngrÞaUubuntu}rß(Uprecise]ràU libpng12-devráaUsaucy]râU libpng12-devrãaUyakkety]räU libpng-devråaUtrusty]ræU libpng12-devrçaUartful]rèU libpng-devréaUxenial]rêU libpng12-devrëaUutopic]rìU libpng12-devríaUvivid]rîU libpng12-devrïaUbionic]rðU libpng-devrñaUzesty]ròU libpng-devróaUraring]rôU libpng12-devrõaUquantal]röU libpng12-devr÷aUwily]røU libpng12-devrùauUarch]rúUlibpngrûaUdebian}rü(Ustretch]rýU libpng-devrþaUjessie]rÿU libpng12-devraUbuster]rU libpng-devraUwheezy]rU libpng12-devrauuUlibopenscenegraph}r(Ufedora]r(UOpenSceneGraphrUOpenSceneGraph-develrU OpenThreadsr UOpenThreads-develr eUarch]r Uopenscenegraphr aUdebian]r (UopenscenegraphrUlibopenscenegraph-devreUgentoo]rUdev-games/openscenegraphraUubuntu]r(UopenscenegraphrUlibopenscenegraph-devreuU pybind11-dev}r(Ufedora]rUpybind11-develraUarch]rUpybind11raUdebian]rU pybind11-devraUubuntu]rU pybind11-devrauU libmodbus5}r(Ufedora]rU libmodbusr aUdebian]r!U libmodbus5r"aUgentoo]r#Udev-libs/libmodbusr$aUubuntu]r%U libmodbus5r&auU bluez-hcidump}r'(Ufedora]r(U bluez-hcidumpr)aUdebian]r*U bluez-hcidumpr+aUgentoo]r,Unet-wireless/bluez-hcidumpr-aUubuntu}r.(Uprecise]r/U bluez-hcidumpr0aUwily]r1U bluez-hcidumpr2aUtrusty]r3U bluez-hcidumpr4aUxenial]r5U bluez-hcidumpr6auuU ftdi-eeprom}r7(Ufedora]r8(U libftdi-develr9Ulibftdi-c++-develr:eUarch]r;Ulibftdir<aUdebian]r=U ftdi-eepromr>aUgentoo]r?Udev-embedded/ftdi_eepromr@aUubuntu]rAU ftdi-eepromrBauU libois-dev}rC(Ufedora]rDU ois-develrEaUarch]rFUoisrGaUdebian]rHU libois-devrIaUgentoo]rJU dev-games/oisrKaUubuntu]rLU libois-devrMauUunoconv}rN(Ufedora]rOUunoconvrPaUarch]rQUunoconvrRaUdebian]rSUunoconvrTaUgentoo]rUUapp-office/unoconvrVaUubuntu]rWUunoconvrXauUcoinor-libipopt-dev}rY(Ufedora]rZUcoin-or-CoinUtils-develr[aUarch]r\U coinor-allr]aUdebian]r^Ucoinor-libipopt-devr_aUgentoo]r`Usci-libs/ipoptraaUubuntu]rbUcoinor-libipopt-devrcauU libglfw3-dev}rd(Ufedora]reU glfw-develrfaUgentoo]rgUmedia-libs/glfwrhaUubuntu}ri(U*]rjU libglfw3-devrkaUtrustyNuU openembedded]rlUglfw@meta-intel-realsensermaUdebian]rnU libglfw3-devroaUrhel]rpU glfw-develrqauU libvtk-qt}rr(Ufedora]rsUvtk-qtrtaUgentoo]ruUsci-libs/vtk[qt5,rendering]rvaUfreebsd]rwUvtk6rxaUopensuse]ryUvtk-qtrzaU slackware]r{UVTKr|aUubuntu}r}(Uprecise]r~Ulibvtk5-qt4-devraUsaucy]r€Ulibvtk5-qt4-devraUtrusty]r‚Ulibvtk5-qt4-devrƒaUoneiric]r„Ulibvtk5-qt4-devr…aUlucid]r†Ulibvtk5-qt4-devr‡aU*]rˆUlibvtk6-qt-devr‰aUnatty]rŠUlibvtk5-qt4-devr‹aUutopic]rŒUlibvtk5-qt4-devraUvivid]rŽUlibvtk5-qt4-devraUraring]rUlibvtk5-qt4-devr‘aUmaverick]r’Ulibvtk5-qt4-devr“aUquantal]r”Ulibvtk5-qt4-devr•aUwily]r–Ulibvtk5-qt4-devr—auUarch]r˜Uvtkr™aUdebian}rš(Ustretch]r›Ulibvtk6-qt-devrœaUjessie]rUlibvtk5-qt4-devržaUbuster]rŸUlibvtk6-qt-devr aUwheezy]r¡Ulibvtk5-qt4-devr¢auuU collada-dom}r£(Ufedora]r¤Ucollada-dom-develr¥aUgentoo]r¦Udev-libs/collada-domr§aUmacports]r¨U collada-domr©aUfreebsd]rªU collada-domr«aU slackware]r¬U collada-domr­aUubuntu}r®(Uprecise]r¯Ucollada-dom-devr°aUlucid]r±Ucollada-dom-devr²aUxenial]r³Ulibcollada-dom2.4-dp-devr´aUvivid]rµUcollada-dom-devr¶aUbionic]r·Ulibcollada-dom2.4-dp-devr¸aUwily]r¹Ucollada-dom-devrºaUsaucy]r»Ucollada-dom-devr¼aUyakkety]r½Ulibcollada-dom2.4-dp-devr¾aUtrusty]r¿Ucollada-dom-devrÀaUoneiric]rÁUcollada-dom-devrÂaUartful]rÃUlibcollada-dom2.4-dp-devrÄaUnatty]rÅUcollada-dom-devrÆaUutopic]rÇUcollada-dom-devrÈaUzesty]rÉUlibcollada-dom2.4-dp-devrÊaUraring]rËUcollada-dom-devrÌaUmaverick]rÍUcollada-dom-devrÎaUquantal]rÏUcollada-dom-devrÐauU openembedded]rÑUcollada-dom@meta-rosrÒaUarch]rÓU collada-domrÔaUdebian}rÕ(Ustretch]rÖUlibcollada-dom2.4-dp-devr×aUjessie]rØUlibcollada-dom2.4-dp-devrÙaUbuster]rÚUlibcollada-dom2.4-dp-devrÛauuUlibcegui-mk2-dev}rÜ(Ufedora]rÝUceguirÞaUarch]rßUceguiràaUdebian]ráUlibcegui-mk2-devrâaUgentoo]rãUdev-games/ceguiräaUubuntu]råUlibcegui-mk2-devræauU libfreetype6}rç(Ufedora]rèUfreetype-develréaUgentoo]rêUmedia-libs/freetyperëaUubuntu]rìU libfreetype6ríaU openembedded]rîUfreetype@openembedded-corerïaUalpine]rðUfreetyperñaUdebian]ròU libfreetype6róaUrhel]rôUfreetyperõauUant}rö(Ufedora]r÷UantrøaUarch]rùU apache-antrúaUdebian]rûUantrüaUgentoo]rýU dev-java/antrþaUubuntu]rÿUantrauU unison-gui}r(Ufedora]rU unison240-gtkraUarch]rUunisonraUdebian]rU unison-gtkraUgentoo]rUnet-misc/unison[gtk]r aUubuntu]r U unison-gtkr auU log4cplus}r (Ufedora]r Ulog4cplus-develraUarch]rU log4cplusraUdebian]rUliblog4cplus-devraUubuntu]rUliblog4cplus-devrauUlibxslt}r(Ufedora]rU libxslt-develraUgentoo]rUdev-libs/libxsltraUmacports]rUlibxsltraUubuntu]rU libxslt1-devraUarch]rUlibxsltraUdebian]r U libxslt1-devr!auUtexlive-fonts-extra}r"(Ufedora]r#(U texlive-bbmr$Utexlive-bbm-macrosr%eUgentoo]r&Udev-texlive/texlive-fontsextrar'aUmacports]r(Utexlive-fonts-extrar)aUubuntu]r*Utexlive-fonts-extrar+aUarch]r,Utexlive-fontsextrar-aUdebian]r.Utexlive-fonts-extrar/auU libx264-dev}r0(Ufedora]r1U x264-develr2aUdebian]r3U libx264-devr4aUgentoo]r5Umedia-libs/x264r6aUubuntu]r7U libx264-devr8auUpowertop}r9(Ufedora]r:Upowertopr;aUarch]r<Upowertopr=aUdebian]r>Upowertopr?aUubuntu]r@UpowertoprAauUcoinor-libcbc-dev}rB(Udebian]rCUcoinor-libcbc-devrDaUgentoo]rEUsci-libs/coinor-cbcrFaUubuntu]rGUcoinor-libcbc-devrHauUfltk}rI(Ufedora]rJ(U fltk-develrKU fltk-fluidrLeUgentoo]rMU=x11-libs/fltk-1*rNaUmacports]rOUfltkrPaUfreebsd]rQUfltkrRaUopensuse]rSU fltk-develrTaU slackware]rUUfltkrVaUubuntu}rW(Uprecise]rX(UfluidrYUlibfltk1.1-devrZeUsaucy]r[(Ufluidr\Ulibfltk1.1-devr]eUtrusty]r^(Ufluidr_Ulibfltk1.1-devr`eUoneiric]ra(UfluidrbUlibfltk1.1-devrceUlucid]rd(UfluidreUlibfltk1.1-devrfeUartful]rg(UfluidrhUlibfltk1.3-devrieUxenial]rj(UfluidrkUlibfltk1.3-devrleUutopic]rm(UfluidrnUlibfltk1.3-devroeUvivid]rp(UfluidrqUlibfltk1.3-devrreUbionic]rs(UfluidrtUlibfltk1.3-devrueUnatty]rv(UfluidrwUlibfltk1.1-devrxeUraring]ry(UfluidrzUlibfltk1.1-devr{eUmaverick]r|(Ufluidr}Ulibfltk1.1-devr~eUquantal]r(Ufluidr€Ulibfltk1.1-devreUwily]r‚(UfluidrƒUlibfltk1.3-devr„euUarch]r…Ufltkr†aUdebian]r‡Ulibfltk1.1-devrˆauUsfml-dev}r‰(Ufedora]rŠU SFML-develr‹aUarch]rŒUsfmlraUdebian]rŽU libsfml-devraUgentoo]rUmedia-libs/libsfmlr‘aUubuntu]r’U libsfml-devr“auUliburdfdom-tools}r”(U slackware]r•Uurdfdomr–aUgentoo]r—Udev-libs/urdfdomr˜aUfreebsd]r™U ros-urdfdomršaUubuntu]r›Uliburdfdom-toolsrœaUarch]rUurdfdomržaUdebian]rŸUliburdfdom-toolsr aUfedora]r¡Uurdfdomr¢auU liblzma-dev}r£(Ufedora]r¤U lzma-develr¥aUdebian]r¦U liblzma-devr§aUubuntu]r¨U liblzma-devr©auU libqt4-dev}rª(Ufedora]r«Uqt-develr¬aUgentoo]r­Udev-qt/qtcore:4r®aUmacports]r¯Uqt4-macr°aUopensuse]r±U libqt4-develr²aUrhel]r³Uqt-develr´aUfreebsd]rµU qt4-corelibr¶aUubuntu]r·U libqt4-devr¸aUarch]r¹Uqt4rºaUdebian]r»U libqt4-devr¼auUopenssh-server}r½(Ufedora]r¾Uopenssh-serverr¿aUdebian]rÀUopenssh-serverrÁaUgentoo]rÂUnet-misc/opensshrÃaUubuntu]rÄUopenssh-serverrÅauU gcc-static}rÆ(Ufedora]rÇ(UgccrÈU glibc-develrÉU glibc-staticrÊeUubuntu]rËUgccrÌauU libalglib-dev}rÍ(Ufedora]rÎU alglib-develrÏaUdebian]rÐU libalglib-devrÑaUgentoo]rÒUsci-libs/alglibrÓaUubuntu]rÔU libalglib-devrÕauUsdl-ttf}rÖ(Ufedora]r×USDL_ttfrØaUarch]rÙUsdl_ttfrÚaUdebian]rÛUlibsdl-ttf2.0-devrÜaUgentoo]rÝUmedia-libs/sdl-ttfrÞaUubuntu]rßUlibsdl-ttf2.0-devràauUlibgazebo7-dev}rá(Uopensuse]râU gazebo-develrãaU slackware]räUgazeboråaUgentoo]ræU=sci-electronics/gazebo-7*rçaUubuntu]rèUlibgazebo7-devréaUarch]rêUgazeborëaUdebian}rì(Ustretch]ríUlibgazebo7-devrîaUjessie]rïUlibgazebo7-devrðaUbuster]rñUlibgazebo7-devròauuUlibusb-1.0-dev}ró(Ufedora}rô(Ubeefy]rõU libusb1-develröaU*]r÷U libusbx-develrøauUgentoo]rùUvirtual/libusb:1rúaUmacports]rûUlibusbrüaUopensuse]rýUlibusb-1_0-develrþaUrhel]rÿU libusbx-develraUubuntu]rUlibusb-1.0-0-devraU openembedded]rUlibusb1@openembedded-coreraUarch]rUlibusbxraUdebian]rUlibusb-1.0-0-devrauU light-locker}r (Ufedora]r U light-lockerr aUdebian]r U light-lockerr aUubuntu]rU light-lockerrauUkonsole}r(Ufedora]rUkonsoleraUdebian]rUkonsoleraUgentoo]rUkde-apps/konsoleraUubuntu]rUkonsolerauUgraphicsmagick}r(Ufedora]rUGraphicsMagick-c++-develraUgentoo]rUvirtual/imagemagick-toolsraUmacports]rUGraphicsMagickraUubuntu]r Ulibgraphicsmagick++1-devr!aUarch]r"Ugraphicsmagickr#aUdebian]r$Ulibgraphicsmagick++1-devr%auUmplayer}r&(Ufedora]r'Umplayerr(aUarch]r)Umplayerr*aUdebian]r+Umplayerr,aUgentoo]r-Umedia-video/mplayerr.aUubuntu]r/Umplayerr0auUlibboost-random-dev}r1(Ufedora]r2U boost-develr3aUdebian]r4Ulibboost-random-devr5aUubuntu]r6Ulibboost-random-devr7auUack-grep}r8(Ufedora]r9Uackr:aUarch]r;Uackr<aUdebian]r=Uack-grepr>aUgentoo]r?U sys-apps/ackr@aUubuntu]rAUack-greprBauU liblinear-dev}rC(Ufedora]rDUliblinear-develrEaUdebian]rFU liblinear-devrGaUgentoo]rHUdev-libs/liblinearrIaUubuntu]rJU liblinear-devrKauU libhdf5-dev}rL(Ufedora]rMU hdf5-develrNaUdebian]rOU libhdf5-devrPaUgentoo]rQU sci-libs/hdf5rRaUubuntu]rSU libhdf5-devrTauUmrpt}rU(Ufedora]rVU mrpt-develrWaUdebian]rXU libmrpt-devrYaUgentoo]rZUsci-electronics/mrptr[aUubuntu]r\U libmrpt-devr]auUfakeroot}r^(Udebian]r_Ufakerootr`aUgentoo]raUsys-apps/fakerootrbaUubuntu]rcUfakerootrdauU libmodbus-dev}re(Ufedora]rfUlibmodbus-develrgaUdebian]rhU libmodbus-devriaUubuntu]rjU libmodbus-devrkauU libexpat1-dev}rl(Ufedora]rmU expat-develrnaUgentoo]roUdev-libs/expatrpaUubuntu]rqU libexpat1-devrraU openembedded]rsUexpat@openembedded-corertaUarch]ruUexpatrvaUdebian]rwU libexpat1-devrxauU gstreamer1.0}ry(Ufedora]rzU gstreamer1r{aUarch]r|U gstreamerr}aUdebian]r~(Ugstreamer1.0-toolsrUlibgstreamer1.0-0r€Ugir1.2-gstreamer-1.0reUgentoo]r‚Umedia-libs/gstreamer:1.0rƒaUubuntu]r„(Ugstreamer1.0-toolsr…Ulibgstreamer1.0-0r†Ugir1.2-gstreamer-1.0r‡euU libdbus-dev}rˆ(Ufedora]r‰U dbus-develrŠaUarch]r‹U dbus-corerŒaUdebian]rU libdbus-1-devrŽaUgentoo]rU sys-apps/dbusraUubuntu]r‘U libdbus-1-devr’auU libgconf2}r“(Ufedora]r”UGConf2r•aUarch]r–Ugconfr—aUdebian]r˜U libgconf-2-4r™aUgentoo]ršUgnome-base/gconf:2r›aUubuntu]rœU libgconf-2-4rauUlibxenomai-dev}rž(Udebian}rŸ(Ujessie]r Ulibxenomai-devr¡aUwheezy]r¢Ulibxenomai-devr£auUubuntu]r¤Ulibxenomai-devr¥auUlibopenni-nite-dev}r¦(Ufedora]r§Uopenni-nite-develr¨aUarch]r©Uprimesense-niterªaUdebian]r«Ulibopenni-nite-devr¬aUubuntu}r­(Uprecise]r®Ulibopenni-nite-devr¯aUoneiric]r°Ulibopenni-nite-devr±aUlucid]r²Ulibopenni-nite-devr³aUmaverick]r´Ulibopenni-nite-devrµaUquantal]r¶Ulibopenni-nite-devr·aUnatty]r¸Ulibopenni-nite-devr¹auuU libusb-1.0}rº(Uopensuse]r»U libusb-1_0-0r¼aUfedora}r½(Ubeefy]r¾Ulibusb1r¿aU*]rÀUlibusbxrÁauUgentoo]rÂUvirtual/libusb:1rÃaUubuntu]rÄU libusb-1.0-0rÅaUarch]rÆUlibusbxrÇaUdebian]rÈU libusb-1.0-0rÉauU libssh-dev}rÊ(Ufedora]rËU libssh-develrÌaUdebian]rÍU libssh-devrÎaUgentoo]rÏUnet-libs/libsshrÐaUubuntu]rÑU libssh-devrÒauUlibopenvdb-dev}rÓ(Ufedora]rÔU openvdb-develrÕaUarch]rÖUopenvdbr×aUdebian]rØ(Ulibopenvdb-devrÙUlibilmbase-devrÚeUgentoo]rÛUmedia-gfx/openvdbrÜaUubuntu]rÝ(Ulibopenvdb-devrÞUlibilmbase-devrßeuU libcunit-dev}rà(Ufedora]ráU CUnit-develrâaUgentoo]rãUdev-util/cuniträaUubuntu]råU libcunit1-devræaUarch]rçUcunitrèaUdebian]réU libcunit1-devrêaUrhel]rëU CUnit-develrìauUlibsvm3}rí(Ufedora]rîUlibsvmrïaUdebian]rðUlibsvm3rñaUgentoo]ròU=sci-libs/libsvm-3*róaUubuntu]rôUlibsvm3rõauUdebtree}rö(Udebian]r÷UdebtreerøaUubuntu]rùUdebtreerúauU liblapack-dev}rû(Ufedora]rüU lapack-develrýaUgentoo]rþUvirtual/lapackrÿaUubuntu]rU liblapack-devraU openembedded]rUlapack@meta-rosraUarch]rUlapackraUdebian]rU liblapack-devrauUblender}r(Ufedora]r Ublenderr aUarch]r Ublenderr aUdebian]r UblenderraUgentoo]rUmedia-gfx/blenderraUubuntu]rUblenderrauU pugixml-dev}r(Ufedora]rUpugixmlraUdebian]rUlibpugixml-devraUubuntu]rUlibpugixml-devrauUttf-mscorefonts-installer}r(Uarch]rU ttf-ms-fontsraUdebian]rUttf-mscorefonts-installerraUgentoo]rUmedia-fonts/corefontsr aUmacportsNuU libclang-dev}r!(Ufedora]r"U clang-develr#aUarch]r$Uclangr%aUdebian]r&U libclang-devr'aUubuntu]r(U libclang-devr)auU libraw1394}r*(Ufedora]r+U libraw1394r,aUarch}r-Upacman}r.Upackages]r/U libraw1394r0assUdebian]r1U libraw1394-11r2aUgentoo]r3Usys-libs/libraw1394r4aUubuntu]r5U libraw1394-11r6auUgstreamer1.0-plugins-base}r7(Ufedora]r8Ugstreamer1-plugins-baser9aUarch]r:Ugst-plugins-baser;aUdebian]r<(Ugstreamer1.0-plugins-baser=Ulibgstreamer-plugins-base1.0-0r>Ugir1.2-gst-plugins-base-1.0r?eUgentoo]r@Umedia-libs/gst-plugins-base:1.0rAaUubuntu]rB(Ugstreamer1.0-plugins-baserCUlibgstreamer-plugins-base1.0-0rDUgir1.2-gst-plugins-base-1.0rEeuU libfcl-dev}rF(Ufedora]rGU fcl-develrHaUgentoo]rIU sci-libs/fclrJaUubuntu}rK(Uyakkety]rLU libfcl-devrMaUwily]rNUlibfcl-0.5-devrOaUbionic]rPU libfcl-devrQaUzesty]rRU libfcl-devrSaUartful]rTU libfcl-devrUaUxenial]rVUlibfcl-0.5-devrWauU openembedded]rXU fcl@meta-rosrYaUarch]rZUfclr[aUdebian}r\(Ustretch]r]U libfcl-devr^aUjessie]r_Ulibfcl-0.5-devr`aUbuster]raU libfcl-devrbauuUlibreadline-dev}rc(Ufedora]rdUreadline-develreaUgentoo]rfUsys-libs/readlinergaUmacports]rhUreadlineriaUubuntu]rjUlibreadline-devrkaUarch]rlUreadlinermaUdebian]rnUlibreadline-devroauU libcap2-bin}rp(Ufedora]rqUlibcaprraUarch]rsUlibcaprtaUdebian]ruU libcap2-binrvaUgentoo]rwU=sys-libs/libcap-2*rxaUubuntu]ryU libcap2-binrzauU clang-format}r{(Ufedora]r|Uclangr}aUdebian}r~(Ustretch]rU clang-formatr€aUbuster]rU clang-formatr‚auUrhel]rƒUclangr„aUgentoo]r…Usys-devel/clangr†aUubuntu]r‡U clang-formatrˆauU libtiff-dev}r‰(Ufedora]rŠUlibtiffr‹aUgentoo]rŒUmedia-libs/tiffraUmacports]rŽUtiffraUfreebsd]rUtiffr‘aUopensuse]r’U libtiff-develr“aU slackware}r”Uslackpkg}r•Upackages]r–Ulibtiffr—assUubuntu}r˜(Uprecise]r™U libtiff4-devršaUtrusty_python3]r›U libtiff5-devrœaUlucid]rU libtiff4-devržaUxenial]rŸU libtiff5-devr aUvivid]r¡U libtiff5-devr¢aUbionic]r£U libtiff5-devr¤aUwily]r¥U libtiff5-devr¦aUsaucy]r§U libtiff5-devr¨aUyakkety]r©U libtiff5-devrªaUtrusty]r«U libtiff5-devr¬aUoneiric]r­U libtiff4-devr®aUartful]r¯U libtiff5-devr°aUnatty]r±U libtiff4-devr²aUutopic]r³U libtiff5-devr´aUzesty]rµU libtiff5-devr¶aUraring]r·U libtiff5-devr¸aUmaverick]r¹U libtiff4-devrºaUquantal]r»U libtiff5-devr¼auUarch]r½Ulibtiffr¾aUdebian}r¿(Ustretch]rÀU libtiff5-devrÁaUjessie]rÂU libtiff5-devrÃaUbuster]rÄU libtiff5-devrÅaUwheezy]rÆUlibtiff5-alt-devrÇauuUtinyxml2}rÈ(Ufedora]rÉUtinyxml2-develrÊaUgentoo]rËUdev-libs/tinyxml2rÌaUopensuse]rÍUtinyxml2-develrÎaUrhel]rÏUtinyxml2-develrÐaUfreebsd]rÑUtinyxml2rÒaUubuntu]rÓUlibtinyxml2-devrÔaU openembedded]rÕUlibtinyxml2@meta-oerÖaUarch]r×Utinyxml2rØaUdebian]rÙUlibtinyxml2-devrÚaUalpine]rÛU tinyxml2-devrÜauU libx11-dev}rÝ(Ufedora]rÞU libX11-develrßaUgentoo]ràUx11-libs/libX11ráaUubuntu]râU libx11-devrãaU openembedded]räUlibx11@openembedded-coreråaUarch]ræUlibx11rçaUdebian]rèU libx11-devréaUrhel]rêU libX11-develrëauUlua-dev}rì(Ufedora}rí(U24]rîUcompat-lua-develrïaU spherical]rðU lua-develrñaU heisenbug]ròUcompat-lua-develróaU21]rôUcompat-lua-develrõaU22]röUcompat-lua-develr÷aU23]røUcompat-lua-develrùaUbeefy]rúU lua-develrûaXschrödinger’s]rüU lua-develrýauUgentoo]rþU dev-lang/luarÿaUmacports]rUlua51raUubuntu]rUliblua5.1-0-devraUarch]rUluaraUdebian]rUliblua5.1-0-devrauUfreetype}r(Ualpine]r Ufreetyper aUfedora]r Ufreetyper aUgentoo]r Umedia-libs/freetyperaUmacports]rUfreetyperauU vorbis-tools}r(Ufedora]rU vorbis-toolsraUarch]rU vorbis-toolsraUdebian]rU vorbis-toolsraUgentoo]rUmedia-sound/vorbis-toolsraUubuntu]rU vorbis-toolsrauU ps-engine}r(Ufedora]rUopenni-primesenseraUarch]rUprimesense-sensorr aUdebian]r!U ps-enginer"aUubuntu]r#U ps-enginer$auU libesd0-dev}r%(Ufedora]r&U esound-develr'aUdebian]r(U libesd0-devr)aUubuntu]r*U libesd0-devr+auUfluid}r,(Ufedora]r-U fltk-fluidr.aUgentoo]r/U=x11-libs/fltk-1*r0aUmacports]r1Ufltkr2aUopensuse]r3U fltk-develr4aUfreebsd]r5Ufltkr6aUubuntu]r7Ufluidr8aUarch]r9Ufltkr:aUdebian]r;Ulibfltk1.1-devr<auU libopencv-dev}r=(Ufedora]r>U opencv-develr?aUgentoo]r@Umedia-libs/opencvrAaUmacports]rBUopencvrCaUrhel]rDU opencv-develrEaUfreebsd]rFU opencv-corerGaUubuntu]rHU libopencv-devrIaU openembedded]rJUopencv@meta-oerKaUarch]rLUopencvrMaUdebian]rNU libopencv-devrOaUalpine]rPU opencv-devrQauUliburdfdom-dev}rR(Ufedora]rSU urdfdom-develrTaUgentoo]rUUdev-libs/urdfdomrVaUfreebsd]rWU ros-urdfdomrXaUopensuse]rYU urdfdom-develrZaU slackware]r[Uurdfdomr\aUubuntu]r]Uliburdfdom-devr^aU openembedded]r_Uurdfdom@meta-rosr`aUarch]raUurdfdomrbaUdebian]rcUliburdfdom-devrdauU libsvm-dev}re(Ufedora]rfU libsvm-develrgaUdebian]rhU libsvm-devriaUgentoo]rjUsci-libs/libsvmrkaUubuntu]rlU libsvm-devrmauU libnotify}rn(Ufedora]roUlibnotify-develrpaUdebian]rqU libnotify-devrraUgentoo]rsUx11-libs/libnotifyrtaUubuntu]ruU libnotify-devrvauUpocketsphinx-bin}rw(Ufedora]rxU pocketsphinxryaUdebian}rz(Ustretch]r{U pocketsphinxr|aUjessie]r}U pocketsphinxr~aUbuster]rU pocketsphinxr€auUgentoo]rUapp-accessibility/pocketsphinxr‚aUubuntu}rƒ(Uprecise]r„Ulibsphinxbase1r…aUsaucy]r†Ulibsphinxbase1r‡aUyakkety]rˆU pocketsphinxr‰aUtrusty]rŠUlibsphinxbase1r‹aUxenial]rŒU pocketsphinxraUutopic]rŽUlibsphinxbase1raUvivid]rUlibsphinxbase1r‘aUzesty]r’U pocketsphinxr“aUraring]r”Ulibsphinxbase1r•aUquantal]r–Ulibsphinxbase1r—aUwily]r˜Ulibsphinxbase1r™auuUtbb}rš(Uopensuse]r›U tbb-develrœaUfedora]rU tbb-develržaUgentoo]rŸU dev-cpp/tbbr aUmacports]r¡Utbbr¢aUubuntu]r£U libtbb-devr¤aUarch]r¥U intel-tbbr¦aUdebian]r§U libtbb-devr¨auU libdw-dev}r©(Ufedora]rªUelfutils-develr«aUgentoo]r¬Udev-libs/elfutilsr­aUubuntu]r®U libdw-devr¯aU openembedded]r°Uelfutils@openembedded-corer±aUarch]r²Ulibelfr³aUdebian]r´U libdw-devrµauU libmicrohttpd}r¶(Ufedora]r·Ulibmicrohttpd-develr¸aUdebian]r¹Ulibmicrohttpd-devrºaUgentoo]r»Unet-libs/libmicrohttpdr¼aUubuntu]r½Ulibmicrohttpd-devr¾auUsixad}r¿Uubuntu]rÀUsixadrÁasUcoinor-libcgl-dev}rÂ(Udebian]rÃUcoinor-libcgl-devrÄaUgentoo]rÅUsci-libs/coinor-cglrÆaUubuntu]rÇUcoinor-libcgl-devrÈauU libglib-dev}rÉ(Ufedora]rÊU glib2-develrËaUarch]rÌUglib2rÍaUdebian]rÎUlibglib2.0-devrÏaUgentoo]rÐU dev-libs/glibrÑaUubuntu]rÒUlibglib2.0-devrÓauU assimp-dev}rÔ(Ufedora]rÕU assimp-develrÖaUgentoo]r×Umedia-libs/assimprØaUfreebsd]rÙUassimprÚaUopensuse]rÛU libassimp3rÜaUrhel]rÝU assimp-develrÞaU slackware]rßUassimpràaUubuntu}rá(Utrusty_python3]râU libassimp-devrãaUlucid]räU assimp-devråaU*]ræU libassimp-devrçaUmaverick]rèU assimp-devréaUoneiric]rêU assimp-devrëauU openembedded]rìUassimp@openembedded-coreríaUarch]rîUassimprïaUdebian]rðU libassimp-devrñauUcwiid}rò(Uopensuse]róU libcwiid1rôaUfedora]rõUcwiidröaUgentoo]r÷Uapp-misc/cwiidrøaUubuntu]rùU libcwiid1rúaUarch]rûUcwiidrüaUdebian]rýU libcwiid1rþauU libssh2-dev}rÿ(Ufedora]rU libssh2-develraUarch]rUlibssh2raUdebian]rU libssh2-1-devraUgentoo]rUnet-libs/libssh2raUubuntu]rU libssh2-1-devr auU net-tools}r (Ufedora]r U net-toolsr aUarch]r U net-toolsraUdebian]rU net-toolsraUgentoo]rUsys-apps/net-toolsraUubuntu]rU net-toolsrauUlibqt4}r(Ufedora]rUqtraUgentoo]rUdev-qt/qtcore:4raUmacports]rUqt4-macraUopensuse]rUlibqt4raUrhel]rUqtraUfreebsd]r U qt4-corelibr!aUubuntu]r"(U libqt4-dbusr#Ulibqt4-networkr$U libqt4-scriptr%U libqt4-testr&U libqt4-xmlr'U libqtcore4r(eUarch]r)Uqt4r*aUdebian]r+U libqt4-corer,auU libpt-dev}r-(Ufedora]r.U ptlib-develr/aUdebian]r0U libpt-devr1aUgentoo]r2Unet-libs/ptlibr3aUubuntu]r4U libpt-devr5auU libpng12-dev}r6(Ufedora]r7Ulibpng12-develr8aUgentoo]r9Umedia-libs/libpng:1.2r:aUmacports]r;Ulibpngr<aUfreebsd]r=Upngr>aUopensuse]r?Ulibpng12-develr@aU slackware]rAUlibpngrBaUubuntu]rCU libpng12-devrDaUarch]rEUlibpngrFaUdebian]rGU libpng12-devrHauUunison}rI(Ufedora]rJU unison240rKaUarch]rLUunisonrMaUdebian]rNUunisonrOaUgentoo]rPUnet-misc/unisonrQaUubuntu]rRUunisonrSauUcoinor-libosi-dev}rT(Ufedora]rUUcoin-or-Osi-develrVaUdebian]rWUcoinor-libosi-devrXaUgentoo]rYUsci-libs/coinor-osirZaUubuntu]r[Ucoinor-libosi-devr\auU freeimage}r](Ufedora]r^Ufreeimage-develr_aUgentoo]r`Umedia-libs/freeimageraaUmacports]rbU freeimagercaUubuntu]rdUlibfreeimage-devreaUarch]rfU freeimagergaUdebian]rhUlibfreeimage-devriaUrhel]rjUfreeimage-develrkauUtango-icon-theme}rl(Ufedora]rmUtango-icon-themernaUgentoo]roUx11-themes/tango-icon-themerpaUmacports]rqUtango-icon-themerraUfreebsd]rsU icons-tangortaUmandrake]ruUtango-icon-themervaUopensuse]rwUtango-icon-themerxaU slackware]ryUtango-icon-themerzaUubuntu]r{Utango-icon-themer|aUarch]r}Utango-icon-themer~aUdebian]rUtango-icon-themer€aUalpine]rUtango-icon-themer‚auUgazebo9}rƒ(Ufedora}r„U30]r…Ugazebor†asU openembedded]Udebian}r‡(Ustretch]rˆUgazebo9r‰aUbuster]rŠUgazebo9r‹auUgentoo]rŒUsci-electronics/gazeboraUubuntu}rŽ(Ueoan]rUgazebo9raUcosmic]r‘Ugazebo9r’aUartful]r“Ugazebo9r”aUbionic]r•Ugazebo9r–aUdisco]r—Ugazebo9r˜auuU gtk-doc-tools}r™(Ufedora]ršUgtk-docr›aUarch]rœUgtk-docraUdebian]ržU gtk-doc-toolsrŸaUgentoo]r Udev-util/gtk-docr¡aUubuntu]r¢U gtk-doc-toolsr£auU libftdi-dev}r¤(Ufedora]r¥U libftdi-develr¦aUarch]r§Ulibftdir¨aUdebian]r©U libftdi-devrªaUgentoo]r«Udev-embedded/libftdir¬aUubuntu]r­U libftdi-devr®auU setserial}r¯(Ufedora]r°U setserialr±aUdebian]r²U setserialr³aUgentoo]r´Usys-apps/setserialrµaUubuntu]r¶U setserialr·auUx11proto-print-dev}r¸(Ufedora]r¹Uxorg-x11-proto-develrºaUarch]r»U printprotor¼aUdebian]r½Ux11proto-print-devr¾aUubuntu]r¿Ux11proto-print-devrÀauUmatio}rÁ(Ufedora]rÂU matio-develrÃaUdebian]rÄU libmatio-devrÅaUubuntu]rÆU libmatio-devrÇauUgazebo5}rÈ(Uarch]rÉUgazeborÊaUgentoo]rËU=sci-electronics/gazebo-5*rÌaUubuntu]rÍUgazebo5rÎauUlibxaw}rÏ(Ufedora]rÐU libXaw-develrÑaUgentoo]rÒUx11-libs/libXawrÓaUmacports]rÔU xorg-libXawrÕaUopensuse]rÖUxorg-x11-develr×aUrhel]rØU libXaw-develrÙaUfreebsd]rÚUlibXawrÛaUubuntu]rÜU libxaw7-devrÝaU openembedded]rÞUlibxaw@meta-oerßaUarch]ràUlibxawráaUdebian]râU libxaw7-devrãauUgazebo7}rä(Ugentoo]råU=sci-electronics/gazebo-7*ræaUarch]rçUgazeborèaUdebian}ré(Ustretch]rêUgazebo7rëaUjessie]rìUgazebo7ríaUbuster]rîUgazebo7rïauU slackware]rðUgazeborñaUubuntu]ròUgazebo7róauUdkms}rô(Ufedora]rõUdkmsröaUgentoo]r÷Usys-kernel/dkmsrøaUopensuse]rùUdkmsrúaUrhel]rûUdkmsrüaUubuntu]rýUdkmsrþaU openembedded]Uarch]rÿUdkmsraUdebian]rUdkmsrauU v4l-utils}r(Ufedora]rU v4l-utilsraUarch]rU v4l-utilsraUdebian]rU v4l-utilsr aUgentoo]r Umedia-tv/v4l-utilsr aUubuntu]r U v4l-utilsr auUgcovr}r(Ufedora]rUgcovrraUarch]rUgcovrraUdebian]rUgcovrraUgentoo]rUdev-util/gcovrraUubuntu]rUgcovrrauUxerces}r(Ufedora]rUxerces-craUarch]rUxerces-craUdebian]rUlibxerces-c-devraUgentoo]r Udev-libs/xerces-cr!aUubuntu]r"Ulibxerces-c-devr#auUyasm}r$(Ufedora]r%Uyasmr&aUarch]r'Uyasmr(aUdebian]r)Uyasmr*aUgentoo]r+U dev-lang/yasmr,aUubuntu]r-Uyasmr.auUgtest}r/(Ufedora]r0U gtest-develr1aUgentoo]r2U dev-cpp/gtestr3aUmacports]r4U ros-gtestr5aUfreebsd]r6U googletestr7aUopensuse]r8Ugoogletest-develr9aUrhel]r:U gtest-develr;aU slackware]r<Ugtestr=aUubuntu]r>U libgtest-devr?aU openembedded]r@U gtest@meta-oerAaUarch]rBUgtestrCaUdebian]rDU libgtest-devrEaUalpine]rF(U gtest-devrGUgtestrHeuUchromium-browser}rI(Ufedora]rJUchromiumrKaUdebian]rLUchromiumrMaUgentoo]rNUwww-client/chromiumrOaUubuntu]rPUchromium-browserrQauUcppcheck}rR(Ufedora]rSUcppcheckrTaUgentoo]rUUdev-util/cppcheckrVaUrhel]rWUcppcheckrXaUubuntu]rYUcppcheckrZaU openembedded]r[Ucppcheck@meta-rosr\aUarch]r]Ucppcheckr^aUdebian]r_Ucppcheckr`aUalpine]raUcppcheckrbauU spacenavd}rc(Ufedora]rdU spacenavdreaUarch]rfU spacenavdrgaUdebian]rhU spacenavdriaUgentoo]rjUapp-misc/spacenavdrkaUubuntu]rlU spacenavdrmauU google-mock}rn(Ufedora]roU gmock-develrpaUgentoo]rqU dev-cpp/gtestrraUopensuse]rsU gmock-develrtaUrhel]ruU gmock-develrvaUfreebsd]rwU googlemockrxaUubuntu]ryU google-mockrzaU openembedded]r{U gtest@meta-oer|aUarch]r}Ugmockr~aUdebian]rU google-mockr€aUalpine]rUgmockr‚auUscreen}rƒ(Ufedora]r„Uscreenr…aUarch]r†Uscreenr‡aUdebian]rˆUscreenr‰aUgentoo]rŠUapp-misc/screenr‹aUubuntu]rŒUscreenrauUswi-prolog-xpce}rŽ(Ufedora]rUpl-xpceraUarch]r‘U swi-prologr’aUdebian}r“Uwoody]r”Uswi-prolog-xpcer•asUubuntu}r–(Uprecise]r—U swi-prologr˜aUoneiric]r™U swi-prologršaUlucid]r›Uswi-prolog-xpcerœaUraring]rU swi-prologržaUmaverick]rŸU swi-prologr aUquantal]r¡U swi-prologr¢aUnatty]r£U swi-prologr¤auuU tap-plugins}r¥(Ufedora]r¦Uladspa-tap-pluginsr§aUdebian]r¨U tap-pluginsr©aUgentoo]rªUmedia-plugins/tap-pluginsr«aUubuntu}r¬(Uprecise]r­U tap-pluginsr®aUtrusty]r¯U tap-pluginsr°aUvivid]r±U tap-pluginsr²aUwily]r³U tap-pluginsr´aUxenial]rµU tap-pluginsr¶auuU imagemagick}r·(Ufedora]r¸U ImageMagickr¹aUarch]rºU imagemagickr»aUdebian]r¼U imagemagickr½aUgentoo]r¾Uvirtual/imagemagick-toolsr¿aUubuntu]rÀU imagemagickrÁauUpostgresql-9.x-postgis}rÂ(Ufedora]rÃUpostgisrÄaUdebian}rÅ(Ustretch]rÆ(Upostgresql-9.6-postgis-2.3rÇUpostgresql-contribrÈUpostgresql-server-dev-allrÉeUjessie]rÊ(Upostgresql-9.4-postgis-2.1rËUpostgresql-contribrÌUpostgresql-server-dev-allrÍeUbuster]rÎ(Upostgresql-9.6-postgis-2.3rÏUpostgresql-contribrÐUpostgresql-server-dev-allrÑeUwheezy]rÒ(Upostgresql-9.4-postgis-2.1rÓUpostgresql-contribrÔUpostgresql-server-dev-allrÕeuUgentoo]rÖ(Udev-db/postgisr×U=dev-db/postgresql-9*rØeUubuntu}rÙ(Uprecise]rÚ(Upostgresql-9.1-postgisrÛUpostgresql-contrib-9.1rÜUpostgresql-server-dev-9.1rÝeUsaucy]rÞ(Upostgresql-9.1-postgisrßUpostgresql-contrib-9.1ràUpostgresql-server-dev-9.1ráeUvivid]râ(Upostgresql-9.4-postgis-2.1rãUpostgresql-contrib-9.4räUpostgresql-server-dev-9.4råeUxenial]ræ(Upostgresql-9.5-postgis-2.2rçUpostgresql-contrib-9.5rèUpostgresql-server-dev-9.5réeUutopic]rê(Upostgresql-9.4-postgis-2.1rëUpostgresql-contrib-9.4rìUpostgresql-server-dev-9.4ríeUtrusty]rî(Upostgresql-9.3-postgis-2.1rïUpostgresql-contrib-9.3rðUpostgresql-server-dev-9.3rñeUraring]rò(Upostgresql-9.1-postgisróUpostgresql-contrib-9.1rôUpostgresql-server-dev-9.1rõeUwily]rö(Upostgresql-9.4-postgis-2.1r÷Upostgresql-contrib-9.4røUpostgresql-server-dev-9.4rùeuuU smbclient}rú(Ufedora]rûU samba-clientrüaUarch]rýU smbclientrþaUdebian]rÿU smbclientraUgentoo]rU net-fs/sambaraUubuntu]rU smbclientrauUjq}r(Ufedora]rUjqraUdebian]rUjqr aUgentoo]r U app-misc/jqr aUubuntu]r Ujqr auUgstreamer1.0-plugins-ugly}r(Ufedora]rUgstreamer1-plugins-uglyraUarch]rUgst-plugins-uglyraUdebian]rUgstreamer1.0-plugins-uglyraUgentoo]rUmedia-libs/gst-plugins-ugly:1.0raUubuntu]rUgstreamer1.0-plugins-uglyrauU portaudio}r(Ufedora]rUportaudio-develraUarch]rU portaudioraUdebian]rUlibportaudio-devraUgentoo]r Umedia-libs/portaudior!aUubuntu]r"Ulibportaudio-devr#auUlibopencv-contrib-dev}r$(Ufedora]r%Uopencv-contribr&aUarch]r'Uopencv-contribr(aUdebian]r)Ulibopencv-contrib-devr*aUgentoo]r+Umedia-libs/opencvr,aUubuntu]r-Ulibopencv-contrib-devr.auUf2c}r/(Ufedora]r0(Uf2cr1Uf2c-libsr2eUarch]r3Uf2cr4aUdebian]r5(Uf2cr6Ulibf2c2r7U libf2c2-devr8eUgentoo]r9U dev-lang/f2cr:aUubuntu]r;(Uf2cr<Ulibf2c2r=U libf2c2-devr>euUdoxygen}r?(Ufedora]r@UdoxygenrAaUgentoo]rBUapp-doc/doxygenrCaUmacports]rDUdoxygenrEaUrhel]rFUdoxygenrGaUfreebsd]rHUdoxygenrIaUubuntu]rJUdoxygenrKaUarch]rLUdoxygenrMaUdebian]rNUdoxygenrOauUtexmaker}rP(Ufedora]rQUtexmakerrRaUdebian]rSUtexmakerrTaUgentoo]rUUapp-office/texmakerrVaUubuntu]rWUtexmakerrXauU libmotif-dev}rY(Ufedora]rZU lesstif-develr[aUarch]r\Ulesstifr]aUdebian]r^U libmotif-devr_aUgentoo]r`Ux11-libs/motifraaUubuntu]rbU libmotif-devrcauUvalgrind}rd(Ufedora]reUvalgrindrfaUdebian]rgUvalgrindrhaUgentoo]riUdev-util/valgrindrjaUubuntu]rkUvalgrindrlauUsysstat}rm(Ufedora]rnUsysstatroaUarch]rpUsysstatrqaUdebian]rrUsysstatrsaUgentoo]rtUapp-admin/sysstatruaUubuntu]rvUsysstatrwauUmkdocs-bootstrap}rx(Ufedora]ryUmkdocs-bootstraprzaUdebian}r{(Ustretch]r|Umkdocs-bootstrapr}aUjessie}r~Upip}rUpackages]r€Umkdocs-bootstraprassUbuster]r‚Umkdocs-bootstraprƒaUwheezy}r„Upip}r…Upackages]r†Umkdocs-bootstrapr‡assuUgentoo]rˆUdev-python/mkdocs-bootstrapr‰aUubuntu}rŠ(Uyakkety]r‹Umkdocs-bootstraprŒaUwily}rUpip}rŽUpackages]rUmkdocs-bootswatchrassUartful]r‘Umkdocs-bootstrapr’aUxenial}r“Upip}r”Upackages]r•Umkdocs-bootstrapr–assUutopic}r—Upip}r˜Upackages]r™Umkdocs-bootswatchršassUbionic]r›Umkdocs-bootstraprœaUzesty]rUmkdocs-bootstrapržaUtrusty}rŸUpip}r Upackages]r¡Umkdocs-bootstrapr¢assuuU libgeos++-dev}r£(Ufedora]r¤U geos-develr¥aUarch]r¦Ugeosr§aUdebian]r¨U libgeos++-devr©aUgentoo]rªU sci-libs/geosr«aUubuntu]r¬U libgeos++-devr­auU unclutter}r®(Ufedora]r¯U unclutterr°aUdebian]r±U unclutterr²aUubuntu]r³U unclutterr´auUbinutils}rµ(Ufedora]r¶Ubinutils-develr·aUarch]r¸Ubinutilsr¹aUdebian]rºU binutils-devr»aUgentoo]r¼Usys-devel/binutilsr½aUubuntu]r¾U binutils-devr¿auUgitg}rÀ(Ufedora]rÁUgitgrÂaUdebian]rÃUgitgrÄaUgentoo]rÅU dev-vcs/gitgrÆaUubuntu]rÇUgitgrÈauU libusb-dev}rÉ(Ufedora]rÊU libusb-develrËaUgentoo]rÌUvirtual/libusbrÍaUmacports]rÎUlibusbrÏaUubuntu]rÐU libusb-devrÑaUarch]rÒU libusb-compatrÓaUdebian]rÔU libusb-devrÕauUjulius-voxforge}rÖ(Uarch]r×Uvoxforge-am-juliusrØaUfedora]rÙUjulius-voxforgerÚaUubuntu]rÛUjulius-voxforgerÜauUttf-sazanami-mincho}rÝ(Ufedora]rÞUsazanami-mincho-fontsrßaUarch]ràU ttf-sazanamiráaUdebian]râUttf-sazanami-minchorãaUgentoo]räUmedia-fonts/sazanamiråaUubuntu]ræUttf-sazanami-minchorçauUnbtscan}rè(Ufedora]réUnbtscanrêaUarch]rëUnbtscanrìaUdebian]ríUnbtscanrîaUgentoo]rïUnet-analyzer/nbtscanrðaUubuntu]rñUnbtscanròauUlibboost-chrono-dev}ró(Ufedora]rôU boost-chronorõaUdebian]röUlibboost-chrono-devr÷aUubuntu]røUlibboost-chrono-devrùauUspdlog}rú(Ufedora]rûU spdlog-develrüaUdebian]rýU libspdlog-devrþaUrhel}rÿU7]rU spdlog-develrasUgentoo]rUdev-libs/spdlograUubuntu]rU libspdlog-devrauUsound-theme-freedesktop}r(Ufedora]rUsound-theme-freedesktopraUdebian]r Usound-theme-freedesktopr aUgentoo]r U"x11-themes/sound-theme-freedesktopr aUubuntu]r Usound-theme-freedesktoprauU mongodb-dev}r(Ufedora]r(Ulibmongo-client-develrU mongodb-develreUgentoo]rUdev-db/mongodbraUmacports]rUmongodbraUubuntu}r(Uprecise]r(Ulibmongo-client-devrU mongodb-devreUsaucy]r(Ulibmongo-client-devrU mongodb-devreUtrusty]r(Ulibmongo-client-devrU mongodb-devr eUoneiric]r!(Ulibmongo-client-devr"U mongodb-devr#eUlucid]r$(Ulibmongo-client-devr%U mongodb-devr&eU*]r'Ulibmongo-client-devr(aUnatty]r)(Ulibmongo-client-devr*U mongodb-devr+eUmaverick]r,(Ulibmongo-client-devr-U mongodb-devr.eUquantal]r/(Ulibmongo-client-devr0U mongodb-devr1eUraring]r2(Ulibmongo-client-devr3U mongodb-devr4euUarch]r5Umongodbr6aUdebian]r7(Ulibmongo-client-devr8U mongodb-devr9euUlibjaxp1.3-java}r:(Udebian]r;Ulibjaxp1.3-javar<aUubuntu}r=(Uprecise]r>Ulibjaxp1.3-javar?aUtrusty]r@Ulibjaxp1.3-javarAaUvivid]rBUlibjaxp1.3-javarCaUwily]rDUlibjaxp1.3-javarEaUxenial]rFUlibjaxp1.3-javarGauuUlibssh2}rH(Ufedora]rIUlibssh2rJaUarch]rKUlibssh2rLaUdebian]rMU libssh2-1rNaUgentoo]rOUnet-libs/libssh2rPaUubuntu]rQU libssh2-1rRauUlibqglviewer-qt4}rS(Ufedora]rTU libQGLViewerrUaUgentoo]rVUx11-libs/libQGLViewer:0/qt4-2rWaUmacports]rXU libQGLViewerrYaUubuntu}rZ(Uprecise]r[Ulibqglviewer-qt4-2r\aUlucid]r]Ulibqglviewer-qt4-2r^aUxenial]r_Ulibqglviewer2-qt4r`aUvivid]raU libqglviewer2rbaUbionic]rcUlibqglviewer2-qt4rdaUwily]reUlibqglviewer2-qt4rfaUsaucy]rgU libqglviewer2rhaUyakkety]riUlibqglviewer2-qt4rjaUtrusty]rkU libqglviewer2rlaUoneiric]rmUlibqglviewer-qt4-2rnaUartful]roUlibqglviewer2-qt4rpaUnatty]rqUlibqglviewer-qt4-2rraUutopic]rsU libqglviewer2rtaUzesty]ruUlibqglviewer2-qt4rvaUraring]rwUlibqglviewer-qt4-2rxaUmaverick]ryUlibqglviewer-qt4-2rzaUquantal]r{Ulibqglviewer-qt4-2r|auUarch]r}Ulibqglviewer-qt4r~aUdebian}r(Ustretch]r€Ulibqglviewer2-qt4raUjessie]r‚U libqglviewer2rƒaUbuster]r„Ulibqglviewer2-qt4r…aUwheezy]r†Ulibqglviewer-qt4-2r‡auuUjava}rˆ(Ufedora}r‰(U24]rŠUjava-1.8.0-openjdkr‹aU spherical]rŒUjava-1.7.0-openjdkraU heisenbug]rŽ(Ujava-1.8.0-openjdkrUjava-1.7.0-openjdkreU21]r‘Ujava-1.8.0-openjdkr’aU22]r“Ujava-1.8.0-openjdkr”aU23]r•Ujava-1.8.0-openjdkr–aUbeefy]r—Ujava-1.7.0-openjdkr˜aXschrödinger’s]r™(Ujava-1.8.0-openjdkršUjava-1.7.0-openjdkr›euUgentoo]rœU virtual/jdkraUubuntu]ržU default-jdkrŸaUfreebsd]r Uopenjdk6r¡aUarch]r¢U jdk7-openjdkr£aUdebian}r¤(Ujessie]r¥U openjdk-7-jdkr¦aUwheezy]r§U openjdk-7-jdkr¨auuU texlive-full}r©(Udebian]rªU texlive-fullr«aUgentoo]r¬Uapp-text/texliver­aUubuntu]r®U texlive-fullr¯auUlibgmp}r°(Ufedora]r±U gmp-develr²aUdebian]r³U libgmp-devr´aUgentoo]rµU dev-libs/gmpr¶aUubuntu]r·U libgmp-devr¸auUswi-prolog-http}r¹(Ufedora]rºUplr»aUarch]r¼U swi-prologr½aUdebian}r¾Ulenny]r¿Uswi-prolog-httprÀasUubuntu}rÁ(Uprecise]rÂU swi-prologrÃaUoneiric]rÄU swi-prologrÅaUlucid]rÆUswi-prolog-httprÇaUraring]rÈU swi-prologrÉaUmaverick]rÊU swi-prologrËaUquantal]rÌU swi-prologrÍaUnatty]rÎU swi-prologrÏauuUlibmysqlcppconn-dev}rÐ(Uopensuse]rÑUlibmysqlcppconn-develrÒaUfedora]rÓUlibmysqlcppconn-develrÔaUgentoo]rÕUdev-db/mysql-connector-c++rÖaUubuntu]r×Ulibmysqlcppconn-devrØaUarch}rÙUaur]rÚUmysql-connector-c++rÛasUdebian]rÜUlibmysqlcppconn-devrÝauUbeep}rÞ(Ufedora]rßUbeepràaUarch]ráUbeeprâaUdebian]rãUbeepräaUgentoo]råU app-misc/beepræaUubuntu]rçUbeeprèauUlibjansson-dev}ré(Udebian]rêUlibjansson-devrëaUgentoo]rìUdev-libs/janssonríaUubuntu]rîUlibjansson-devrïauU libpng++-dev}rð(Udebian]rñU libpng++-devròaUgentoo]róU dev-cpp/pngpprôaUubuntu]rõU libpng++-devröauUlibmp3lame-dev}r÷(Ufedora]røU lame-develrùaUarch]rúUlamerûaUdebian]rüUlibmp3lame-devrýaUgentoo]rþUmedia-sound/lamerÿaUubuntu]rUlibmp3lame-devrauUenblend}r(Ufedora]rUenblendraUdebian]rUenblendraUgentoo]rUmedia-gfx/enblendraUubuntu]r Uenblendr auU libjsoncpp}r (Ufedora]r Ujsoncppr aUdebian]rU libjsoncpp1raUgentoo]rUdev-libs/jsoncppraUubuntu}r(Uprecise]rU libjsoncpp0raUsaucy]rU libjsoncpp0raUyakkety]rU libjsoncpp1raUtrusty]rU libjsoncpp0raUartful]rU libjsoncpp1raUxenial]rU libjsoncpp1raUutopic]rU libjsoncpp0r aUvivid]r!U libjsoncpp0r"aUbionic]r#U libjsoncpp1r$aUzesty]r%U libjsoncpp1r&aUwily]r'U libjsoncpp0v5r(auuUcgal}r)(Ufedora]r*U CGAL-develr+aUarch]r,Ucgalr-aUdebian]r.U libcgal-devr/aUgentoo]r0Usci-mathematics/cgalr1aUubuntu]r2U libcgal-devr3auU libi2c-dev}r4(Uarch]r5Ulinux-api-headersr6aUdebian]r7U libi2c-devr8aUgentoo]r9Usys-apps/i2c-toolsr:aUubuntu]r;U libi2c-devr<auUxvfb}r=(Ufedora]r>Uxorg-x11-server-Xvfbr?aUarch]r@Uxorg-server-xvfbrAaUdebian]rBUxvfbrCaUgentoo]rDUx11-misc/xvfb-runrEaUubuntu]rFUxvfbrGauUqrencode}rH(Ufedora]rIUqrencoderJaUarch]rKUqrencoderLaUdebian]rMUqrencoderNaUgentoo]rOUmedia-gfx/qrencoderPaUubuntu]rQUqrencoderRauU mapnik-utils}rS(Ufedora]rTU mapnik-utilsrUaUdebian]rVU mapnik-utilsrWaUubuntu]rXU mapnik-utilsrYauUlibestools-dev}rZ(Ufedora]r[Ufestival-speechtools-develr\aUdebian}r](Ustretch]r^Ulibestools-devr_aUjessie]r`Ulibestools2.1-devraaUbuster]rbUlibestools-devrcaUwheezy]rdUlibestools2.1-devreauUgentoo]rfUapp-accessibility/festivalrgaUubuntu}rh(Usaucy]riUlibestools2.1-devrjaUutopic]rkUlibestools2.1-devrlaU*]rmUlibestools-devrnaUtrusty]roUlibestools2.1-devrpaUvivid]rqUlibestools2.1-devrrauuUatlas}rs(Ufedora]rtU atlas-develruaUgentoo]rvUsci-libs/atlasrwaUmacports]rxUatlasryaUubuntu]rzUlibatlas-base-devr{aUarch]r|U atlas-lapackr}aUdebian]r~Ulibatlas-base-devrauUlibfontconfig1-dev}r€(Ufedora]rUfontconfig-develr‚aUdebian]rƒUlibfontconfig1-devr„aUgentoo]r…Umedia-libs/fontconfigr†aUubuntu]r‡Ulibfontconfig1-devrˆauU libunwind}r‰(Ufedora]rŠU libunwindr‹aUdebian}rŒ(Ustretch]rU libunwind8rŽaUjessie]rU libunwind8raUbuster]r‘U libunwind8r’aUwheezy]r“U libunwind7r”auUgentoo]r•Usys-libs/libunwindr–aUubuntu}r—(Uprecise]r˜U libunwind7r™aUsaucy]ršU libunwind8r›aUtrusty]rœU libunwind8raUeoan]ržU libunwind8rŸaUcosmic]r U libunwind8r¡aUdisco]r¢U libunwind8r£aUbionic]r¤U libunwind8r¥aUquantal]r¦U libunwind8r§aUraring]r¨U libunwind8r©auuU libev-dev}rª(Ufedora]r«U libev-develr¬aUarch]r­Ulibevr®aUdebian]r¯U libev-devr°aUgentoo]r±Udev-libs/libevr²aUubuntu]r³U libev-devr´auUlibopenni2-dev}rµ(Ufedora]r¶U openni-develr·aUarch]r¸Uopenni2r¹aUdebian]rºUlibopenni2-devr»aUgentoo]r¼Udev-libs/OpenNI2r½aUubuntu]r¾Ulibopenni2-devr¿auUnvidia-cuda-dev}rÀ(Udebian]rÁUnvidia-cuda-devrÂaUgentoo]rÃ(Udev-util/nvidia-cuda-sdkrÄUdev-util/nvidia-cuda-gdkrÅeUubuntu]rÆUnvidia-cuda-devrÇauUhostapd}rÈ(Ufedora]rÉUhostapdrÊaUarch]rËUhostapdrÌaUdebian]rÍUhostapdrÎaUgentoo]rÏUnet-wireless/hostapdrÐaUubuntu]rÑUhostapdrÒauUzlib}rÓ(Ufedora]rÔU zlib-develrÕaUgentoo]rÖU sys-libs/zlibr×aUmacports]rØUzlibrÙaUfreebsd]rÚUbuiltinrÛaUopensuse]rÜU zlib-develrÝaUcygwin]rÞUzlibrßaU slackware}ràUslackpkg}ráUpackages]râUzlibrãassUubuntu]räU zlib1g-devråaU openembedded]ræUzlib@openembedded-corerçaUalpine]rèUzlib-devréaUarch]rêUzlibrëaUdebian]rìU zlib1g-devríaUrhel]rîU zlib-develrïauUcvs}rð(Ufedora]rñUcvsròaUarch]róUcvsrôaUdebian]rõUcvsröaUgentoo]r÷U dev-vcs/cvsrøaUubuntu]rùUcvsrúauUnetpbm}rû(Uopensuse]rüUnetpbmrýaUfedora]rþU netpbm-develrÿaUgentoo]rUmedia-libs/netpbmraUmacports]rUnetpbmraUubuntu]rUlibnetpbm10-devraUarch]rUnetpbmraUdebian]rUlibnetpbm10-devr auU docker.io}r (Ufedora]r Udockerr aUdebian}r (UstretchNUjessieNU*]rU docker.ioraUwheezyNuUubuntu]rU docker.iorauU libnl-3-dev}r(Ufedora]rU libnl3-develraUarch]rUlibnlraUdebian]r(U libnl-3-devrUlibnl-genl-3-devreUgentoo]rUdev-libs/libnl:3raUubuntu]r(U libnl-3-devrUlibnl-genl-3-devreuUgstreamer1.0-alsa}r(Udebian]r Ugstreamer1.0-alsar!aUubuntu]r"Ugstreamer1.0-alsar#auUprocps}r$(Ufedora]r%U procps-ngr&aUarch]r'U procps-ngr(aUdebian]r)Uprocpsr*aUgentoo]r+Usys-process/procpsr,aUubuntu]r-Uprocpsr.auU libdmtx-dev}r/(Ufedora]r0U libdmtx-develr1aUarch]r2Ulibdmtxr3aUdebian]r4U libdmtx-devr5aUgentoo]r6Umedia-libs/libdmtxr7aUubuntu]r8U libdmtx-devr9auUnodejs}r:(Ufedora]r;Unodejsr<aUdebian]r=Unodejsr>aUgentoo]r?Unet-libs/nodejsr@aUubuntu]rAUnodejsrBauUlibxml2}rC(Ufedora]rDU libxml2-develrEaUgentoo]rFUdev-libs/libxml2rGaUmacports]rHUlibxml2rIaUopensuse]rJU libxml2-develrKaUrhel]rLU libxml2-develrMaUfreebsd]rNUlibxml2rOaUubuntu]rPU libxml2-devrQaUarch]rRUlibxml2rSaUdebian]rTU libxml2-devrUauU libtiff4-dev}rV(Ufedora]rWU libtiff-develrXaUgentoo]rYUmedia-libs/tiff:0rZaUmacports]r[Utiffr\aUubuntu]r]U libtiff4-devr^aUarch]r_Ulibtiffr`aUdebian]raU libtiff4-devrbauUgringo}rc(Ufedora]rdUgringoreaUdebian]rfUgringorgaUubuntu]rhUgringoriauU libglui-dev}rj(Ufedora]rkU glui-develrlaUarch]rmUgluirnaUdebian]roU libglui-devrpaUubuntu]rqU libglui-devrrauU terminator}rs(Ufedora]rtU terminatorruaUdebian]rvU terminatorrwaUgentoo]rxUx11-terms/terminatorryaUubuntu]rzU terminatorr{auU libwebp-dev}r|(Ufedora]r}U libwebp-develr~aUgentoo]rUmedia-libs/libwebpr€aUubuntu]rU libwebp-devr‚aUfreebsd]rƒUwebpr„aU openembedded]r…Ulibwebp@openembedded-corer†aUdebian]r‡U libwebp-devrˆauUzenity}r‰(Ufedora]rŠUzenityr‹aUarch]rŒUzenityraUdebian]rŽUzenityraUgentoo]rUgnome-extra/zenityr‘aUubuntu]r’Uzenityr“auUlibgeographiclib-dev}r”(Ufedora]r•U geographiclibr–aUdebian}r—Uwheezy]r˜Ulibgeographiclib-devr™asUgentoo]ršUsci-geosciences/geographiclibr›aUubuntu]rœUlibgeographiclib-devrauUleveldb}rž(Ufedora]rŸUlibleveldb-develr aUdebian]r¡Ulibleveldb-devr¢aUgentoo]r£Udev-libs/leveldbr¤aUubuntu]r¥Ulibleveldb-devr¦auU mosquitto}r§(Ufedora]r¨U mosquittor©aUarch]rªU mosquittor«aUdebian]r¬U mosquittor­aUubuntu]r®U mosquittor¯auUdocker-compose}r°(Ufedora]r±Udocker-composer²aUdebian]r³Udocker-composer´aUubuntu]rµUdocker-composer¶auU xulrunner-dev}r·(Ufedora]r¸(U libv8-develr¹Uxulrunner-develrºeUarch]r»U xulrunnerr¼aUdebian]r½U libv8-devr¾aUubuntu]r¿U libv8-devrÀauUliburdfdom-headers-dev}rÁ(Ufedora]rÂUurdfdom-headers-develrÃaUgentoo]rÄUdev-libs/urdfdom_headersrÅaUfreebsd]rÆUros-urdfdom_headersrÇaUopensuse]rÈUurdfdom-headers-develrÉaU slackware]rÊUurdfdom_headersrËaUubuntu]rÌUliburdfdom-headers-devrÍaU openembedded]rÎUurdfdom-headers@meta-rosrÏaUarch]rÐUurdfdom-headersrÑaUdebian]rÒUliburdfdom-headers-devrÓauU libcairo2-dev}rÔ(Ufedora]rÕU cairo-develrÖaUgentoo]r×Ux11-libs/cairorØaUubuntu]rÙU libcairo2-devrÚaU openembedded]rÛUcairo@openembedded-corerÜaUarch]rÝUcairorÞaUdebian]rßU libcairo2-devràauU coreutils}rá(Ufedora]râU coreutilsrãaUarch]räU coreutilsråaUdebian]ræU coreutilsrçaUgentoo]rèUsys-apps/coreutilsréaUubuntu]rêU coreutilsrëauU libstdc++5}rì(Uopensuse]ríU libstdc++33rîaUfedora]rïU libstdc++5rðaUgentoo]rñUvirtual/libstdc++ròaUubuntu]róU libstdc++5rôaUfreebsd]rõUbuiltinröaUarch]r÷U libstdc++5røaUdebian]rùU libstdc++5rúauUttf-kochi-mincho}rû(Uarch]rüUttf-togoshi-minchorýaUdebian]rþUttf-kochi-minchorÿaUgentoo]rUmedia-fonts/kochi-substituteraUubuntu]rUttf-kochi-minchorauU libstdc++6}r(Ufedora]rU libstdc++6raUarch]rUgcc-libsraUdebian]r U libstdc++6r aUubuntu]r U libstdc++6r auUsqlite3}r (Ufedora]rUsqliteraUarch]rUsqliteraUdebian]rUsqlite3raUgentoo]rU=dev-db/sqlite-3*raUubuntu]rUsqlite3rauU libsvn-dev}r(Ufedora]rUsubversion-develraUdebian]rU libsvn-devraUubuntu]rU libsvn-devrauUlibboost-iostreams-dev}r(Ufedora]r Uboost-iostreamsr!aUdebian]r"Ulibboost-iostreams-devr#aUubuntu]r$Ulibboost-iostreams-devr%auUlibboost-filesystem-dev}r&(Ufedora]r'Uboost-fileystemr(aUdebian]r)Ulibboost-filesystem-devr*aUgentoo]r+Udev-libs/boost[python]r,aUubuntu]r-Ulibboost-filesystem-devr.auUlibqglviewer-qt4-dev}r/(Ufedora]r0UlibQGLViewer-develr1aUarch]r2Ulibqglviewer-qt4r3aUdebian}r4(Ustretch]r5Ulibqglviewer-dev-qt4r6aUjessie]r7Ulibqglviewer-devr8aUbuster]r9Ulibqglviewer-dev-qt4r:aUwheezy]r;Ulibqglviewer-qt4-devr<auUgentoo]r=Ux11-libs/libQGLViewer:0/qt4-2r>aUubuntu}r?(Uprecise]r@Ulibqglviewer-qt4-devrAaUlucid]rBUlibqglviewer-qt4-devrCaUxenial]rDUlibqglviewer-dev-qt4rEaUvivid]rFUlibqglviewer-devrGaUbionic]rHUlibqglviewer-dev-qt4rIaUwily]rJUlibqglviewer-dev-qt4rKaUsaucy]rLUlibqglviewer-devrMaUyakkety]rNUlibqglviewer-dev-qt4rOaUtrusty]rPUlibqglviewer-devrQaUoneiric]rRUlibqglviewer-qt4-devrSaUartful]rTUlibqglviewer-dev-qt4rUaUnatty]rVUlibqglviewer-qt4-devrWaUutopic]rXUlibqglviewer-devrYaUzesty]rZUlibqglviewer-dev-qt4r[aUraring]r\Ulibqglviewer-qt4-devr]aUmaverick]r^Ulibqglviewer-qt4-devr_aUquantal]r`Ulibqglviewer-qt4-devraauuU hugin-tools}rb(Ufedora]rcU hugin-baserdaUdebian]reU hugin-toolsrfaUgentoo]rgUmedia-gfx/huginrhaUubuntu]riU hugin-toolsrjauUvrep}rkUubuntu}rlUtrusty}rmUsource}rnUuriURhttps://raw.githubusercontent.com/peci1/vrep_ros_bridge/rdmanifest/vrep.rdmanifestssssUlibrabbitmq-dev}ro(Ufedora]rpUlibrabbitmq-develrqaUdebian]rrUlibrabbitmq-devrsaUubuntu]rtUlibrabbitmq-devruauU libftgl-dev}rv(Ufedora]rwU ftgl-develrxaUarch]ryUftglrzaUdebian]r{U libftgl-devr|aUgentoo]r}Umedia-libs/ftglr~aUubuntu]rU libftgl-devr€auU readline-dev}r(Ufedora]r‚Ureadline-develrƒaUarch]r„Ureadliner…aUdebian]r†Ulibreadline-devr‡aUgentoo]rˆUsys-libs/readliner‰aUubuntu]rŠUlibreadline-devr‹auUlibsensors4-dev}rŒ(Ufedora]rUlm_sensors-develrŽaUarch]rU lm_sensorsraUdebian]r‘Ulibsensors4-devr’aUgentoo]r“Usys-apps/lm_sensors:0r”aUubuntu]r•Ulibsensors4-devr–auUcmake}r—(Ufedora]r˜Ucmaker™aUgentoo]ršUdev-util/cmaker›aUmacports]rœUcmakeraUfreebsd]ržUcmakerŸaUopensuse]r Ucmaker¡aUrhel]r¢Ucmake3r£aU slackware}r¤Uslackpkg}r¥Upackages]r¦Ucmaker§assUubuntu]r¨Ucmaker©aU openembedded]rªUcmake@openembedded-corer«aUarch]r¬Ucmaker­aUdebian]r®Ucmaker¯aUalpine]r°Ucmaker±auU libblas-dev}r²(Ufedora]r³U blas-develr´aUgentoo]rµU virtual/blasr¶aUubuntu]r·U libblas-devr¸aU openembedded]r¹Uopenblas@meta-rosrºaUarch]r»Ucblasr¼aUdebian]r½U libblas-devr¾auUzziplib}r¿(Ufedora]rÀU zziplib-develrÁaUgentoo]rÂUdev-libs/zziplibrÃaUmacports]rÄUlibzziprÅaUopensuse]rÆU zziplib-develrÇaUrhel]rÈU zziplib-develrÉaUfreebsd]rÊUzziplibrËaUubuntu]rÌ(U libzzip-0-13rÍU libzzip-devrÎeUarch]rÏUzziplibrÐaUdebian]rÑ(U libzzip-0-13rÒU libzzip-devrÓeuUipmitool}rÔ(Ufedora]rÕUipmitoolrÖaUarch]r×UipmitoolrØaUdebian]rÙUipmitoolrÚaUgentoo]rÛUsys-apps/ipmitoolrÜaUubuntu]rÝUipmitoolrÞauUgamin}rß(Ufedora]ràUgaminráaUdebian]râUgaminrãaUubuntu]räUgaminråauUlibxinerama-dev}ræ(Ufedora]rçUlibXinerama-develrèaUarch]réU libxineramarêaUdebian]rëUlibxinerama-devrìaUgentoo]ríUx11-libs/libXineramarîaUubuntu]rïUlibxinerama-devrðauUlibleptonica-dev}rñ(Ufedora]ròUleptonica-develróaUarch]rôU leptonicarõaUdebian]röUlibleptonica-devr÷aUgentoo]røUmedia-libs/leptonicarùaUubuntu]rúUlibleptonica-devrûauU libxxf86vm}rü(Ufedora]rýUlibXxf86vm-develrþaUgentoo]rÿUx11-libs/libXxf86vmraUmacports]rUxorg-libXxf86vmraUopensuse]rUxorg-x11-develraUrhel]rUlibXxf86vm-develraUfreebsd]rU libXxf86vmraUubuntu]r Ulibxxf86vm-devr aUarch]r U libxxf86vmr aUdebian]r Ulibxxf86vm-devrauU libopal-dev}r(Ufedora]rU opal-develraUdebian]rU libopal-devraUgentoo]rU net-libs/opalraUubuntu]rU libopal-devrauUiproute2}r(Uopensuse]rUiproute2raUfedora]rUiprouteraUgentoo]rUsys-apps/iproute2raUubuntu]rUiproute2r aUarch]r!Uiproute2r"aUdebian]r#Uiproute2r$auUlibnl-3}r%(Ufedora]r&Ulibnl3r'aUarch]r(Ulibnlr)aUdebian]r*(U libnl-3-200r+Ulibnl-genl-3-200r,eUgentoo]r-Udev-libs/libnl:3r.aUubuntu]r/(U libnl-3-200r0Ulibnl-genl-3-200r1euUjoystick}r2(Ufedora]r3Ulinuxconsoletoolsr4aUgentoo]r5Ugames-util/joystickr6aUopensuse]r7U input-utilsr8aUrhel]r9Ujoystickr:aUubuntu]r;Ujoystickr<aU openembedded]r=Ujoystick@meta-rosr>aUarch]r?U linuxconsoler@aUdebian]rAUjoystickrBauU libnss3-dev}rC(Ufedora]rDU nss-develrEaUdebian]rFU libnss3-devrGaUgentoo]rHU=dev-libs/nss-3*rIaUubuntu]rJU libnss3-devrKauUlcov}rL(Ufedora]rMUlcovrNaUdebian]rOUlcovrPaUgentoo]rQU dev-util/lcovrRaUubuntu]rSUlcovrTauU sdl2-mixer}rU(Ufedora]rVUSDL2_mixer-develrWaUdebian]rXUlibsdl2-mixer-devrYaUubuntu]rZUlibsdl2-mixer-devr[auUspeex}r\(Ufedora]r](Uspeexr^U speex-toolsr_Uspeexdspr`eUdebian]raUspeexrbaUgentoo]rcUmedia-libs/speexrdaUubuntu}re(Uprecise]rfUspeexrgaUtrusty]rhUspeexriaUvivid]rjUspeexrkaUwily]rlUspeexrmaUxenial]rnUspeexroauuUautossh}rp(Ufedora]rqUautosshrraUgentoo]rsUnet-misc/autosshrtaUmacports]ruUautosshrvaUopensuse]rwUautosshrxaUrhel]ryUautosshrzaUfreebsd]r{Uautosshr|aUubuntu]r}Uautosshr~aUarch]rUautosshr€aUdebian]rUautosshr‚auU libnl-dev}rƒ(Ufedora]r„U libnl-develr…aUarch]r†Ulibnl1r‡aUdebian]rˆU libnl-devr‰aUgentoo]rŠUdev-libs/libnlr‹aUubuntu]rŒU libnl-devrauUantlr}rŽ(Ufedora]r(Uantlr3-CrU antlr-C++r‘eUarch]r’Uantlrr“aUdebian]r”(Uantlrr•U libantlr-devr–eUgentoo]r—Udev-java/antlrr˜aUubuntu]r™(UantlrršU libantlr-devr›euUglut}rœ(Ufedora]rUfreeglut-develržaUgentoo]rŸUmedia-libs/freeglutr aUmacports]r¡Ufreeglutr¢aUrhel]r£Ufreeglut-develr¤aUubuntu]r¥U freeglut3-devr¦aU openembedded]r§Ufreeglut@meta-oer¨aUarch]r©UfreeglutrªaUdebian]r«U freeglut3-devr¬auUslime}r­(Ufedora]r®U emacs-slimer¯aUdebian]r°Uslimer±aUgentoo]r²Uapp-emacs/slimer³aUubuntu]r´UslimerµauUlibqwt5-qt4-dev}r¶(Ufedora]r·U qwt-develr¸aUarch]r¹Uqwt5rºaUdebian]r»Ulibqwt5-qt4-devr¼aUgentoo]r½Ux11-libs/qwt:5[qt4]r¾aUubuntu]r¿Ulibqwt5-qt4-devrÀauUlibfreetype6-dev}rÁ(Ufedora]rÂUfreetype-develrÃaUgentoo]rÄUmedia-libs/freetyperÅaUubuntu]rÆUlibfreetype6-devrÇaU openembedded]rÈUfreetype@openembedded-corerÉaUalpine]rÊU freetype-devrËaUdebian]rÌUlibfreetype6-devrÍaUrhel]rÎUfreetype-develrÏauUlibavahi-client-dev}rÐ(Ufedora]rÑU avahi-develrÒaUarch]rÓUavahirÔaUdebian]rÕUlibavahi-client-devrÖaUgentoo]r×U net-dns/avahirØaUubuntu]rÙUlibavahi-client-devrÚauUportaudio19-dev}rÛ(Ufedora]rÜUlibportaudio-develrÝaUdebian]rÞUportaudio19-devrßaUgentoo]ràU=media-libs/portaudio-19*ráaUubuntu]râUportaudio19-devrãauU mercurial}rä(Ufedora]råU mercurialræaUgentoo]rçUdev-vcs/mercurialrèaUmacports]réU mercurialrêaUopensuse]rëU mercurialrìaUfreebsd]ríU mercurialrîaUubuntu]rïU mercurialrðaUarch]rñU mercurialròaUdebian]róU mercurialrôauUlibosmesa6-dev}rõ(Ufedora]röUmesa-libOSMesa-develr÷aUarch]røUmesarùaUdebian]rúUlibosmesa6-devrûaUgentoo]rüUmedia-libs/mesa[osmesa]rýaUubuntu]rþUlibosmesa6-devrÿauUcppunit}r(Ufedora]rU cppunit-develraUgentoo]rUdev-util/cppunitraUmacports]rUcppunitraUfreebsd]rUcppunitraUopensuse]r Ulibcppunit-develr aUrhel]r U cppunit-develr aU slackware]r UcppunitraUubuntu]rUlibcppunit-devraU openembedded]rUcppunit@meta-oeraUarch]rUcppunitraUdebian]rUlibcppunit-devraUalpine]rUcppunitrauU poppler-utils}r(Ufedora]rU poppler-utilsraUdebian]rU poppler-utilsraUgentoo]rUapp-text/popplerraUubuntu]r U poppler-utilsr!auUlibopenni-sensor-primesense-dev}r"(Ufedora]r#Uopenni-primesenser$aUarch]r%U sensorkinectr&aUdebian]r'Ulibopenni-sensor-primesense-devr(aUubuntu]r)Ulibopenni-sensor-primesense-devr*auUlibvlccore-dev}r+(Ufedora]r,U vlc-develr-aUdebian]r.Ulibvlccore-devr/aUubuntu]r0Ulibvlccore-devr1auUlibpcap}r2(Ufedora]r3U libpcap-develr4aUgentoo]r5Unet-libs/libpcapr6aUmacports]r7Ulibpcapr8aU openembedded]r9Ulibpcap@openembedded-corer:aUubuntu]r;Ulibpcap0.8-devr<aUarch}r=Upacman}r>Upackages]r?Ulibpcapr@assUdebian]rAUlibpcap0.8-devrBauUscons}rC(Ufedora]rDUsconsrEaUgentoo]rFUdev-util/sconsrGaUmacports]rHUsconsrIaUopensuse]rJUsconsrKaUfreebsd]rLUsconsrMaUubuntu]rNUsconsrOaUarch]rPUsconsrQaUdebian]rRUsconsrSauU libgphoto-dev}rT(Ufedora]rUUlibgphoto2-develrVaUarch]rWU libgphoto2rXaUdebian]rYUlibgphoto2-devrZaUgentoo]r[Umedia-gfx/gphoto2r\aUubuntu}r](Uprecise]r^Ulibgphoto2-2-devr_aUsaucy]r`Ulibgphoto2-6-devraaU*]rbUlibgphoto2-devrcaUraring]rdUlibgphoto2-2-devreauuU libqd-dev}rf(Ufedora]rgUqd-develrhaUmacports]riUqdrjaUdebian]rkU libqd-devrlaUgentoo]rmU sci-libs/qdrnaUubuntu]roU libqd-devrpauUapache2}rq(Ufedora]rrUhttpdrsaUdebian]rtUapache2ruaUgentoo]rvUwww-servers/apacherwaUubuntu]rxUapache2ryauU subversion}rz(Ufedora]r{U subversionr|aUgentoo]r}Udev-vcs/subversionr~aUmacports]rU subversionr€aUopensuse]rU subversionr‚aUfreebsd]rƒU subversionr„aUubuntu]r…U subversionr†aUarch]r‡U subversionrˆaUdebian]r‰U subversionrŠauUnmap}r‹(Ufedora]rŒUnmapraU archlinux]rŽUnmapraUdebian]rUnmapr‘aUgentoo]r’Unet-analyzer/nmapr“aUubuntu]r”Unmapr•auUrti-connext-dds-5.3.1}r–Uubuntu}r—(Ubionic]r˜Urti-connext-dds-5.3.1r™aUxenial]ršUrti-connext-dds-5.3.1r›ausUsnappy}rœ(Ufedora]rUsnappyržaUarch]rŸUsnappyr aUdebian]r¡U libsnappy-devr¢aUgentoo]r£Uapp-arch/snappyr¤aUubuntu]r¥U libsnappy-devr¦auUeigen2}r§(Uopensuse]r¨Ulibeigen2-develr©aUfedora]rªU eigen2-develr«aUgentoo]r¬Udev-cpp/eigen:2r­aUubuntu]r®U libeigen2-devr¯aUfreebsd]r°Ueigen2r±aUarch]r²Ueigen2r³aUdebian}r´(Ujessie]rµU libeigen2-devr¶aUwheezy]r·U libeigen2-devr¸auuUapparmor}r¹(UfedoraNUdebian]rºUapparmorr»aUubuntu]r¼Uapparmorr½auU libcap-dev}r¾(Ufedora]r¿U libcap-develrÀaUarch]rÁUlibcaprÂaUdebian]rÃU libcap-devrÄaUgentoo]rÅUsys-libs/libcaprÆaUubuntu]rÇU libcap-devrÈauUlog4cxx}rÉ(Ufedora]rÊU log4cxx-develrËaUgentoo]rÌUdev-libs/log4cxxrÍaUmacports]rÎU ros-log4cxxrÏaUfreebsd]rÐUlog4cxxrÑaUopensuse]rÒUliblog4cxx-develrÓaUcygwin]rÔUliblog4cxx-develrÕaU slackware]rÖUapache-log4cxxr×aUubuntu}rØ(Uprecise]rÙUliblog4cxx10-devrÚaUeoan]rÛUliblog4cxx-devrÜaUlucid]rÝUliblog4cxx10-devrÞaUxenial]rßUliblog4cxx10-devràaUvivid]ráUliblog4cxx10-devrâaUbionic]rãUliblog4cxx-devräaUwily]råUliblog4cxx10-devræaUsaucy]rçUliblog4cxx10-devrèaUyakkety]réUliblog4cxx10-devrêaUtrusty]rëUliblog4cxx10-devrìaUoneiric]ríUliblog4cxx10-devrîaUcosmic]rïUliblog4cxx-devrðaUartful]rñUliblog4cxx-devròaUdisco]róUliblog4cxx-devrôaUutopic]rõUliblog4cxx10-devröaUquantal]r÷Uliblog4cxx10-devrøaUzesty]rùUliblog4cxx10-devrúaUraring]rûUliblog4cxx10-devrüaUmaverick]rýUliblog4cxx10-devrþaUnatty]rÿUliblog4cxx10-devr auU openembedded]r Ulog4cxx@meta-rosr aUalpine]r U log4cxx-devr aUarch]r Ulog4cxxr aUdebian}r (Ustretch]r Uliblog4cxx-devr aUjessie]r Uliblog4cxx10-devr aUsqueeze]r Uliblog4cxx10-devr aUbuster]r Uliblog4cxx-devr aUwheezy]r Uliblog4cxx10-devr auUrhel]r U log4cxx-develr auUlibasound2-dev}r (Ufedora]r Ualsa-libr aUarch]r Ualsa-libr aUdebian]r Ulibasound2-devr aUgentoo]r Umedia-libs/alsa-libr aUubuntu]r Ulibasound2-devr auU libglm-dev}r (Ufedora]r Uglmr! aUarch]r" Uglmr# aUdebian]r$ U libglm-devr% aUgentoo]r& Umedia-libs/glmr' aUubuntu]r( U libglm-devr) auUjython}r* (Ufedora]r+ Ujythonr, aUarch]r- Ujythonr. aUdebian]r/ Ujythonr0 aUgentoo]r1 Udev-java/jythonr2 aUubuntu]r3 Ujythonr4 auU libtclap-dev}r5 (Ufedora]r6 Utclapr7 aUgentoo]r8 U dev-cpp/tclapr9 aUmacports]r: Utclapr; aUubuntu]r< U libtclap-devr= aUarch]r> Utclapr? aUdebian]r@ U libtclap-devrA auU libsimage-dev}rB (Uarch]rC UsimagerD aUdebian]rE U libsimage-devrF aUgentoo]rG Umedia-libs/simagerH aUubuntu]rI U libsimage-devrJ auUswig}rK (Ufedora]rL UswigrM aUdebian]rN UswigrO aUgentoo]rP U dev-lang/swigrQ aUubuntu]rR UswigrS auUxterm}rT (Ufedora]rU UxtermrV aUarch]rW UxtermrX aUdebian]rY UxtermrZ aUgentoo]r[ Ux11-terms/xtermr\ aUubuntu]r] Uxtermr^ auU babeltrace}r_ (Ufedora]r` U babeltracera aUdebian]rb U babeltracerc aUgentoo]rd Udev-util/babeltracere aUubuntu]rf U babeltracerg auUgstreamer0.10-plugins-ugly}rh (Ufedora]ri Ugstreamer-plugins-uglyrj aUarch]rk Ugstreamer0.10-ugly-pluginsrl aUdebian}rm (Ujessie]rn Ugstreamer0.10-plugins-uglyro aUwheezy]rp Ugstreamer0.10-plugins-uglyrq auUgentoo]rr U media-libs/gst-plugins-ugly:0.10rs aUubuntu}rt (Uprecise]ru Ugstreamer0.10-plugins-uglyrv aUsaucy]rw Ugstreamer0.10-plugins-uglyrx aUtrusty]ry Ugstreamer0.10-plugins-uglyrz aUoneiric]r{ Ugstreamer0.10-plugins-uglyr| aUlucid]r} U%gstreamer0.10-plugins-ugly-multiverser~ aUnatty]r Ugstreamer0.10-plugins-uglyr€ aUutopic]r Ugstreamer0.10-plugins-uglyr‚ aUvivid]rƒ Ugstreamer0.10-plugins-uglyr„ aUraring]r… Ugstreamer0.10-plugins-uglyr† aUmaverick]r‡ U%gstreamer0.10-plugins-ugly-multiverserˆ aUquantal]r‰ Ugstreamer0.10-plugins-uglyrŠ aUwily]r‹ Ugstreamer0.10-plugins-uglyrŒ auuUlibirrlicht-dev}r (Ufedora]rŽ Uirrlicht-develr aUarch]r Uirrlichtr‘ aUdebian]r’ Ulibirrlicht-devr“ aUgentoo]r” Udev-games/irrlichtr• aUubuntu]r– Ulibirrlicht-devr— auUca-certificates}r˜ (Ufedora]r™ Uca-certificatesrš aUgentoo]r› Uapp-misc/ca-certificatesrœ aUubuntu]r Uca-certificatesrž aUfreebsd]rŸ U ca_root_nssr  aUarch]r¡ Uca-certificatesr¢ aUdebian]r£ Uca-certificatesr¤ auUboost}r¥ (Ufedora]r¦ (U boost-develr§ Uboost-python2-develr¨ Uboost-python3-develr© eUgentoo]rª Udev-libs/boost[python]r« aUmacports]r¬ Uboostr­ aUfreebsd]r® Upy27-boost-libsr¯ aUopensuse]r° U boost-develr± aUcygwin]r² (Ulibboost-develr³ U libboost1.40r´ eU slackware}rµ Uslackpkg}r¶ Upackages]r· Uboostr¸ assUubuntu}r¹ (Uoneiric]rº Ulibboost1.46-all-devr» aUtrusty_python3]r¼ Ulibboost-all-devr½ aUlucid]r¾ Ulibboost1.40-all-devr¿ aU*]rÀ Ulibboost-all-devrÁ aUmaverick]r Ulibboost1.42-all-devrà aUnatty]rÄ Ulibboost1.42-all-devrÅ auU openembedded]rÆ Uboost@openembedded-corerÇ aUalpine]rÈ U boost-devrÉ aUarch]rÊ UboostrË aUdebian}rÌ (Ustretch]rÍ Ulibboost-all-devrÎ aUjessie]rÏ Ulibboost-all-devrÐ aUsqueeze]rÑ Ulibboost1.42-all-devrÒ aUbuster]rÓ Ulibboost-all-devrÔ aUwheezy]rÕ Ulibboost-all-devrÖ auUrhel]r× U boost-develrØ auU tesseract-ocr}rÙ (Ufedora]rÚ Utesseract-develrÛ aUdebian]rÜ U tesseract-ocrrÝ aUgentoo]rÞ Uapp-text/tesseractrß aUubuntu]rà U tesseract-ocrrá auU libvpx-dev}râ (Ufedora]rã U libvpx-develrä aUdebian]rå U libvpx-devræ aUgentoo]rç Umedia-libs/libvpxrè aUubuntu]ré U libvpx-devrê auU uncrustify}rë (Ufedora]rì U uncrustifyrí aUgentoo]rî U uncrustifyrï aUubuntu]rð U uncrustifyrñ aUalpine]rò U uncrustifyró aUdebian]rô U uncrustifyrõ aUrhel]rö U uncrustifyr÷ auUvim}rø (Ufedora]rù U vim-enhancedrú aUdebian]rû Uvimrü aUgentoo]rý Uapp-editors/vimrþ aUubuntu]rÿ Uvimr!auU libxmu-dev}r!(Ufedora]r!U libXmu-develr!aUarch]r!Ulibxmur!aUdebian]r!U libxmu-devr!aUgentoo]r!Ux11-libs/libXmur !aUubuntu]r !U libxmu-devr !auUopende}r !(Ufedora]r !Uoder!aUarch]r!Uoder!aUdebian]r!U libode-devr!aUgentoo]r!U dev-games/oder!aUubuntu]r!U libode-devr!auUqtmobility-dev}r!(Ufedora]r!Uqt-mobility-develr!aUarch]r!U qtmobilityr!aUdebian]r!Uqtmobility-devr!aUgentoo]r!Udev-qt/qt-mobilityr!aUubuntu]r !Uqtmobility-devr!!auU!libgstreamer-plugins-base0.10-dev}r"!(Ufedora]r#!Ugstreamer-plugins-base-develr$!aUarch]r%!Ugstreamer0.10-base-pluginsr&!aUdebian}r'!(Ujessie]r(!U!libgstreamer-plugins-base0.10-devr)!aUwheezy]r*!U!libgstreamer-plugins-base0.10-devr+!auUgentoo]r,!U media-libs/gst-plugins-base:0.10r-!aUubuntu]r.!U!libgstreamer-plugins-base0.10-devr/!auU libphonon-dev}r0!(Ufedora]r1!U phonon-develr2!aUdebian]r3!U libphonon-devr4!aUgentoo]r5!Umedia-libs/phononr6!aUubuntu]r7!U libphonon-devr8!auUlibqhull}r9!(Ufedora]r:!U qhull-develr;!aUgentoo]r!Uqhullr?!aUfreebsd]r@!UqhullrA!aUopensuse]rB!U qhull-develrC!aU slackware]rD!UqhullrE!aUubuntu]rF!U libqhull-devrG!aU openembedded]rH!Uqhull@meta-rosrI!aUarch]rJ!UqhullrK!aUdebian]rL!U libqhull-devrM!auU libconfig-dev}rN!(Ufedora]rO!Ulibconfig-develrP!aUdebian]rQ!U libconfig-devrR!aUgentoo]rS!Udev-libs/libconfig[cxx]rT!aUubuntu]rU!U libconfig-devrV!auUunrar}rW!(Ufedora]rX!UunrarrY!aUarch]rZ!Uunrarr[!aUdebian]r\!Uunrarr]!aUgentoo]r^!Uapp-arch/unrarr_!aUubuntu]r`!Uunrarra!auUdnsmasq}rb!(Ufedora]rc!Udnsmasqrd!aUdebian]re!Udnsmasqrf!aUgentoo]rg!Unet-dns/dnsmasqrh!aUubuntu]ri!Udnsmasqrj!auU festival-dev}rk!(Ufedora]rl!(Ufestival-develrm!Ufestvox-kal-diphonern!eUdebian]ro!U festival-devrp!aUgentoo]rq!Uapp-accessibility/festivalrr!aUubuntu]rs!U festival-devrt!auU libgif-dev}ru!(Ufedora]rv!U libgif-develrw!aUdebian]rx!U libgif-devry!aUgentoo]rz!Umedia-libs/giflibr{!aUubuntu]r|!U libgif-devr}!auUsdl2-ttf}r~!(Ufedora]r!USDL2_ttf-develr€!aUdebian]r!Ulibsdl2-ttf-devr‚!aUgentoo]rƒ!Umedia-libs/sdl2-ttfr„!aUubuntu]r…!Ulibsdl2-ttf-devr†!auU rapidjson-dev}r‡!(Ufedora]rˆ!U rapidjsonr‰!aUdebian]rŠ!U rapidjson-devr‹!aUgentoo]rŒ!Udev-libs/rapidjsonr!aUubuntu]rŽ!U rapidjson-devr!auU autopoint}r!(Ufedora]r‘!U gettext-develr’!aUarch]r“!Ugettextr”!aUdebian]r•!U autopointr–!aUubuntu]r—!U autopointr˜!auUswi-prolog-java}r™!(Ufedora]rš!Upl-jplr›!aUdebian]rœ!Uswi-prolog-javar!aUgentoo]rž!Udev-lang/swi-prolog[java]rŸ!aUubuntu]r !Uswi-prolog-javar¡!auU pkg-config}r¢!(Ufedora]r£!U pkgconfigr¤!aUgentoo]r¥!Uvirtual/pkgconfigr¦!aUmacports]r§!U pkgconfigr¨!aUfreebsd]r©!Upkgconfrª!aUopensuse]r«!U pkg-configr¬!aUcygwin]r­!U pkg-configr®!aU slackware}r¯!Uslackpkg}r°!Upackages]r±!U pkg-configr²!assUubuntu]r³!U pkg-configr´!aU openembedded]rµ!Upkgconfig@openembedded-corer¶!aUalpine]r·!Upkgconfr¸!aUarch]r¹!U pkg-configrº!aUdebian]r»!U pkg-configr¼!aUrhel]r½!U pkgconfigr¾!auU ffmpeg2theora}r¿!(Ufedora]rÀ!U ffmpeg2theorarÁ!aUarch]rÂ!U ffmpeg2theorarÃ!aUdebian]rÄ!U ffmpeg2theorarÅ!aUgentoo]rÆ!Umedia-video/ffmpeg2theorarÇ!aUubuntu]rÈ!U ffmpeg2theorarÉ!auU opensplice}rÊ!Ugentoo]rË!Usci-libs/opensplicerÌ!asUlibapache2-mod-python}rÍ!(Ufedora]rÎ!U mod_pythonrÏ!aUarch]rÐ!U mod_pythonrÑ!aUdebian]rÒ!Ulibapache2-mod-pythonrÓ!aUgentoo]rÔ!Uwww-apache/mod_pythonrÕ!aUubuntu]rÖ!Ulibapache2-mod-pythonr×!auUudev}rØ!(Ufedora]rÙ!U systemd-udevrÚ!aUgentoo]rÛ!U sys-fs/udevrÜ!aUubuntu]rÝ!UudevrÞ!aU openembedded]rß!Uudev@openembedded-corerà!aUarch]rá!Usystemdrâ!aUdebian]rã!Uudevrä!aUrhel]rå!Usystemdræ!auU geographiclib}rç!(Ufedora]rè!UGeographicLib-develré!aU openembedded]rê!Ugeographiclib@meta-rosrë!aUdebian}rì!(Ustretch]rí!Ulibgeographic-devrî!aUjessie]rï!Ulibgeographic-devrð!aUbuster]rñ!Ulibgeographic-devrò!aUwheezy]ró!Ulibgeographiclib-devrô!auUubuntu}rõ!(Uprecise]rö!Ulibgeographiclib-devr÷!aUsaucy]rø!Ulibgeographiclib-devrù!aUyakkety]rú!Ulibgeographic-devrû!aUtrusty]rü!Ulibgeographiclib-devrý!aUartful]rþ!Ulibgeographic-devrÿ!aUxenial]r"Ulibgeographic-devr"aUutopic]r"Ulibgeographiclib-devr"aUvivid]r"Ulibgeographic-devr"aUbionic]r"Ulibgeographic-devr"aUzesty]r"Ulibgeographic-devr "aUraring]r "Ulibgeographiclib-devr "aUquantal]r "Ulibgeographiclib-devr "aUwily]r"Ulibgeographic-devr"auuUlibneon27-gnutls-dev}r"(Udebian]r"Ulibneon27-gnutls-devr"aUgentoo]r"U net-libs/neonr"aUubuntu]r"Ulibneon27-gnutls-devr"auU libzmq3-dev}r"(Ufedora]r"U zeromq-develr"aUgentoo]r"Unet-libs/cppzmqr"aUubuntu]r"U libzmq3-devr"aU openembedded]r"Uzeromq@meta-oer"aUarch]r "Uzeromqr!"aUdebian]r""U libzmq3-devr#"auU libmagick}r$"(Ufedora]r%"UImageMagick-c++-develr&"aUarch]r'"U imagemagickr("aUdebian]r)"Ulibmagick++-devr*"aUgentoo]r+"Uvirtual/imagemagick-toolsr,"aUubuntu]r-"Ulibmagick++-devr."auU gperftools}r/"(Ufedora]r0"(U gperftoolsr1"Ugperftools-develr2"eUdebian]r3"(Ugoogle-perftoolsr4"Ulibgoogle-perftools-devr5"eUgentoo]r6"Udev-util/gperfr7"aUubuntu]r8"(Ugoogle-perftoolsr9"Ulibgoogle-perftools-devr:"euUrtmidi}r;"(Ufedora]r<"U rtmidi-develr="aUdebian]r>"U librtmidi-devr?"aUubuntu]r@"U librtmidi-devrA"auUrsync}rB"(Uopensuse]rC"UrsyncrD"aUfedora]rE"UrsyncrF"aUgentoo]rG"Unet-misc/rsyncrH"aUubuntu]rI"UrsyncrJ"aUarch]rK"UrsyncrL"aUdebian]rM"UrsyncrN"auU protobuf-dev}rO"(Ufedora]rP"(Uprotobuf-develrQ"Uprotobuf-compilerrR"eUgentoo]rS"Udev-libs/protobufrT"aUmacports]rU"U protobuf-cpprV"aUfreebsd]rW"UprotobufrX"aUopensuse]rY"Uprotobuf-develrZ"aU slackware]r["Uprotobufr\"aUubuntu]r]"(Ulibprotobuf-devr^"Uprotobuf-compilerr_"U libprotoc-devr`"eU openembedded]ra"Uprotobuf@meta-oerb"aUarch]rc"Uprotobufrd"aUdebian]re"(Ulibprotobuf-devrf"Uprotobuf-compilerrg"U libprotoc-devrh"euUopenssh-client}ri"(Ufedora]rj"Uopenssh-clientsrk"aUdebian]rl"Uopenssh-clientrm"aUgentoo]rn"Unet-misc/opensshro"aUubuntu]rp"Uopenssh-clientrq"auUcpuburn}rr"(Ufedora]rs"Ucpuburnrt"aUarch]ru"Ucpuburnrv"aUdebian]rw"Ucpuburnrx"aUubuntu]ry"Ucpuburnrz"auUlanguage-pack-en}r{"(Ufedora]r|"U filesystemr}"aUubuntu]r~"Ulanguage-pack-enr"auU wkhtmltopdf}r€"(Ufedora]r"U wkhtmltopdfr‚"aUarch]rƒ"U wkhtmltopdfr„"aUdebian]r…"U wkhtmltopdfr†"aUgentoo]r‡"Umedia-gfx/wkhtmltopdfrˆ"aUubuntu]r‰"U wkhtmltopdfrŠ"auUautomake}r‹"(Ufedora]rŒ"Uautomaker"aUgentoo]rŽ"Usys-devel/automaker"aUmacports]r"Uautomaker‘"aUopensuse]r’"Uautomaker“"aUrhel]r”"Uautomaker•"aUfreebsd]r–"(U automake14r—"U automake111r˜"eUubuntu]r™"Uautomakerš"aUarch]r›"Uautomakerœ"aUdebian]r"Uautomakerž"auUproj}rŸ"(Ufedora]r "U proj-develr¡"aUgentoo]r¢"U sci-libs/projr£"aUfreebsd]r¤"Uprojr¥"aUopensuse]r¦"Uprojr§"aU slackware]r¨"Uprojr©"aUubuntu]rª"U libproj-devr«"aUarch]r¬"Uprojr­"aUdebian]r®"U libproj-devr¯"auUosmium}r°"(Ufedora]r±"Ulibosmium-develr²"aUdebian]r³"U libosmium-devr´"aUubuntu]rµ"U libosmium-devr¶"auUlibqt5-opengl-dev}r·"(U slackware]r¸"Uqt5r¹"aUgentoo]rº"Udev-qt/qtopengl:5r»"aUfreebsd]r¼"U qt5-openglr½"aUubuntu]r¾"Ulibqt5opengl5-devr¿"aUarch]rÀ"Uqt5-baserÁ"aUdebian]rÂ"Ulibqt5opengl5-devrÃ"aUfedora]rÄ"U qt5-qtbaserÅ"auU mono-complete}rÆ"(Udebian]rÇ"U mono-completerÈ"aUgentoo]rÉ"U dev-lang/monorÊ"aUubuntu]rË"U mono-completerÌ"auUlibfftw3}rÍ"(Ufedora]rÎ"(UfftwrÏ"U fftw-develrÐ"eUarch]rÑ"UfftwrÒ"aUdebian]rÓ"(U libfftw3-3rÔ"U libfftw3-devrÕ"eUgentoo]rÖ"Usci-libs/fftw:3.0r×"aUubuntu]rØ"(U libfftw3-3rÙ"U libfftw3-devrÚ"euUlibaria}rÛ"(Udebian}rÜ"(U*]rÝ"U libaria-devrÞ"aUwheezy}rß"Usource}rà"(Umd5sumU 589c387995beb951edd9c77f33cb2286UuriUEhttps://raw.github.com/amor-ros-pkg/rosaria/master/libaria.rdmanifestusuUubuntu}rá"(Uprecise}râ"Usource}rã"(Umd5sumU 589c387995beb951edd9c77f33cb2286UuriUEhttps://raw.github.com/amor-ros-pkg/rosaria/master/libaria.rdmanifestusU*]rä"U libaria-devrå"auuUlibraw1394-dev}ræ"(Ufedora]rç"Ulibraw1394-develrè"aUarch}ré"Upacman}rê"Upackages]rë"U libraw1394rì"assUdebian]rí"Ulibraw1394-devrî"aUgentoo]rï"Usys-libs/libraw1394rð"aUubuntu]rñ"Ulibraw1394-devrò"auU debhelper}ró"(Ufedora]rô"U debhelperrõ"aUdebian]rö"U debhelperr÷"aUubuntu]rø"U debhelperrù"auUworkrave}rú"(Ufedora]rû"Uworkraverü"aUdebian]rý"Uworkraverþ"aUgentoo]rÿ"Uapp-misc/workraver#aUubuntu]r#(Uworkraver#U workrave-datar#euUlibimage-exiftool-perl}r#(Uarch]r#Uperl-image-exiftoolr#aUdebian]r#Ulibimage-exiftool-perlr#aUgentoo]r #Umedia-libs/exiftoolr #aUubuntu]r #Ulibimage-exiftool-perlr #auUmaven}r #(Ufedora]r#Umavenr#aUarch]r#Umavenr#aUdebian]r#Umavenr#aUgentoo]r#Udev-java/maven-binr#aUubuntu]r#Umavenr#auU libuv-dev}r#(Ufedora]r#U libuv-develr#aUdebian}r#(Ustretch]r#U libuv1-devr#aUjessie]r#U libuv0.10-devr#aUbuster]r #U libuv1-devr!#auUgentoo]r"#Udev-libs/libuvr##aUubuntu}r$#(Uprecise]r%#U libuv-devr&#aUsaucy]r'#U libuv-devr(#aUyakkety]r)#U libuv0.10-devr*#aUtrusty]r+#U libuv-devr,#aUxenial]r-#U libuv0.10-devr.#aUutopic]r/#U libuv-devr0#aUvivid]r1#U libuv0.10-devr2#aUbionic]r3#U libuv0.10-devr4#aUzesty]r5#U libuv0.10-devr6#aUwily]r7#U libuv0.10-devr8#auuUswi-prolog-semweb}r9#(Uarch]r:#U swi-prologr;#aUfedora]r<#Uplr=#aUubuntu}r>#(Uprecise]r?#U swi-prologr@#aUoneiric]rA#U swi-prologrB#aUlucid]rC#Uswi-prolog-semwebrD#aUraring]rE#U swi-prologrF#aUmaverick]rG#U swi-prologrH#aUquantal]rI#U swi-prologrJ#aUnatty]rK#U swi-prologrL#auuUwget}rM#(Ufedora]rN#UwgetrO#aUgentoo]rP#U net-misc/wgetrQ#aUmacports]rR#UwgetrS#aUopensuse]rT#UwgetrU#aUfreebsd]rV#UwgetrW#aUubuntu]rX#UwgetrY#aUarch]rZ#Uwgetr[#aUdebian]r\#Uwgetr]#auUbazaar}r^#(Ufedora]r_#Ubazaarr`#aUgentoo]ra#U dev-vcs/bzrrb#aUmacports]rc#Ubazaarrd#aUopensuse]re#Ubzrrf#aUfreebsd]rg#Ubazaarrh#aUubuntu]ri#Ubzrrj#aUarch]rk#Ubzrrl#aUdebian]rm#Ubzrrn#auU libgdal-dev}ro#(Uopensuse]rp#Ugdalrq#aUdebian]rr#U libgdal-devrs#aUubuntu]rt#U libgdal-devru#auU libsrtp0-dev}rv#(Ufedora]rw#U libsrtp-develrx#aUdebian]ry#U libsrtp0-devrz#aUgentoo]r{#Unet-libs/libsrtp:0r|#aUubuntu]r}#U libsrtp0-devr~#auU postgresql}r#(Ufedora]r€#(Upostgresql-serverr#Upostgresql-contribr‚#eUdebian]rƒ#(U postgresqlr„#Upostgresql-contribr…#eUubuntu]r†#(U postgresqlr‡#Upostgresql-contribrˆ#euUzip}r‰#(Ufedora]rŠ#Uzipr‹#aUdebian]rŒ#Uzipr#aUgentoo]rŽ#U app-arch/zipr#aUubuntu]r#Uzipr‘#auUace}r’#(Uarch]r“#Uacer”#aUdebian]r•#U libace-devr–#aUgentoo]r—#U dev-libs/acer˜#aUubuntu]r™#U libace-devrš#auU kgraphviewer}r›#(Ufedora]rœ#U kgraphviewerr#aUarch]rž#U kgraphviewerrŸ#aUdebian]r #U kgraphviewerr¡#aUgentoo]r¢#Umedia-gfx/kgraphviewerr£#aUubuntu]r¤#U kgraphviewerr¥#auU libcoin80-dev}r¦#(Ufedora]r§#U Coin2-develr¨#aUdebian}r©#(Ustretch]rª#U libcoin80-devr«#aUjessie]r¬#U libcoin80-devr­#aUbuster]r®#U libcoin80-devr¯#auUubuntu]r°#U libcoin80-devr±#auUlibogg}r²#(Ufedora]r³#U libogg-develr´#aUgentoo]rµ#Umedia-libs/liboggr¶#aUmacports]r·#Uliboggr¸#aUfreebsd]r¹#Uliboggrº#aUopensuse]r»#U libogg-develr¼#aUrhel]r½#U libogg-develr¾#aU slackware]r¿#UliboggrÀ#aUubuntu]rÁ#U libogg-devrÂ#aU openembedded]rÃ#Ulibogg@openembedded-corerÄ#aUarch]rÅ#UliboggrÆ#aUdebian]rÇ#U libogg-devrÈ#auUfswebcam}rÉ#Uubuntu]rÊ#UfswebcamrË#asU qt4-dev-tools}rÌ#(Uopensuse]rÍ#Ulibqt4-devel-docrÎ#aUfedora]rÏ#Uqt-develrÐ#aUgentoo]rÑ#(Udev-qt/assistant:4rÒ#Udev-qt/linguist:4rÓ#Udev-qt/pixeltool:4rÔ#eUubuntu]rÕ#U qt4-dev-toolsrÖ#aUarch]r×#Uqt4rØ#aUdebian]rÙ#U qt4-dev-toolsrÚ#auU libnlopt-dev}rÛ#(Ufedora]rÜ#U NLopt-develrÝ#aUdebian]rÞ#U libnlopt-devrß#aUgentoo]rà#Usci-libs/nloptrá#aUubuntu]râ#U libnlopt-devrã#auU libxt-dev}rä#(Ufedora]rå#U libXt-develræ#aUarch]rç#Ulibxtrè#aUdebian]ré#U libxt-devrê#aUgentoo]rë#Ux11-libs/libXtrì#aUubuntu]rí#U libxt-devrî#auUlibgomp1}rï#(Udebian]rð#Ulibgomp1rñ#aUgentoo]rò#U sys-libs/gccró#aUubuntu]rô#Ulibgomp1rõ#auUlibpqxx}rö#(Ufedora]r÷#Ulibpqxxrø#aUdebian}rù#(Ustretch]rú#U libpqxx-4.0v5rû#aUjessie]rü#U libpqxx-4.0rý#aUbuster]rþ#U libpqxx-4.0v5rÿ#aUwheezy]r$U libpqxx-3.1r$auUgentoo]r$Udev-libs/libpqxxr$aUubuntu}r$(Uprecise]r$U libpqxx-3.1r$aUlucid]r$U libpqxx-3.0r$aUxenial]r $U libpqxx-4.0r $aUvivid]r $U libpqxx-4.0r $aUbionic]r $U libpqxx-4.0v5r$aUwily]r$U libpqxx-4.0r$aUsaucy]r$U libpqxx-3.1r$aUyakkety]r$U libpqxx-4.0v5r$aUtrusty]r$U libpqxx-4.0r$aUoneiric]r$U libpqxx-3.0r$aUartful]r$U libpqxx-4.0v5r$aUnatty]r$U libpqxx-3.0r$aUutopic]r$U libpqxx-4.0r$aUzesty]r$U libpqxx-4.0v5r $aUraring]r!$U libpqxx-3.1r"$aUmaverick]r#$U libpqxx-3.0r$$aUquantal]r%$U libpqxx-3.1r&$auuU graphviz-dev}r'$(Ufedora]r($Ugraphviz-develr)$aUdebian]r*$Ulibgraphviz-devr+$aUubuntu]r,$Ulibgraphviz-devr-$auUlibvtk}r.$(Ufedora]r/$U vtk-develr0$aUgentoo]r1$Usci-libs/vtk[boost,python,qt5]r2$aUmacports]r3$U vtk-develr4$aUopensuse]r5$U vtk-develr6$aUfreebsd]r7$Uvtk6r8$aUubuntu}r9$(Uprecise]r:$U libvtk5-devr;$aUsaucy]r<$U libvtk5-devr=$aUtrusty]r>$U libvtk5-devr?$aUoneiric]r@$(U libvtk5-devrA$Udefault-jre-headlessrB$U openjdk-6-jdkrC$eUlucid]rD$U libvtk5-devrE$aU*]rF$U libvtk6-devrG$aUnatty]rH$U libvtk5-devrI$aUutopic]rJ$U libvtk5-devrK$aUvivid]rL$U libvtk5-devrM$aUraring]rN$U libvtk5-devrO$aUmaverick]rP$U libvtk5-devrQ$aUquantal]rR$U libvtk5-devrS$aUwily]rT$U libvtk5-devrU$auUarch]rV$UvtkrW$aUdebian}rX$(Ustretch]rY$U libvtk6-devrZ$aUjessie]r[$U libvtk5-devr\$aUbuster]r]$U libvtk6-devr^$aUwheezy]r_$U libvtk5-devr`$auuUjasper}ra$(Ufedora]rb$U jasper-develrc$aUgentoo]rd$Umedia-libs/jasperre$aUmacports]rf$Ujasperrg$aUfreebsd]rh$Ujasperri$aUopensuse]rj$Ulibjasper-develrk$aU slackware}rl$Uslackpkg}rm$Upackages]rn$Ujasperro$assUubuntu}rp$(Uprecise]rq$U libjasper-devrr$aUsaucy]rs$U libjasper-devrt$aUyakkety]ru$U libjasper-devrv$aUtrusty]rw$U libjasper-devrx$aUoneiric]ry$U libjasper-devrz$aUlucid]r{$U libjasper-devr|$aUxenial]r}$U libjasper-devr~$aUutopic]r$U libjasper-devr€$aUvivid]r$U libjasper-devr‚$aUnatty]rƒ$U libjasper-devr„$aUraring]r…$U libjasper-devr†$aUmaverick]r‡$U libjasper-devrˆ$aUquantal]r‰$U libjasper-devrŠ$aUwily]r‹$U libjasper-devrŒ$auUarch]r$UjasperrŽ$aUdebian}r$(Ujessie]r$U libjasper-devr‘$aUwheezy]r’$U libjasper-devr“$auuU nodejs-legacy}r”$(Ufedora]r•$Unodejsr–$aUdebian]r—$U nodejs-legacyr˜$aUubuntu]r™$U nodejs-legacyrš$auUsox}r›$(Ufedora]rœ$Usoxr$aUdebian]rž$UsoxrŸ$aUgentoo]r $Umedia-sound/soxr¡$aUubuntu]r¢$Usoxr£$auUpostgresql-postgis}r¤$(Ufedora]r¥$Upostgisr¦$aUdebian}r§$(Ustretch]r¨$(Upostgresql-9.6-postgis-2.3r©$Upostgresql-contribrª$Upostgresql-server-dev-allr«$eUjessie]r¬$(Upostgresql-9.4-postgis-2.1r­$Upostgresql-contribr®$Upostgresql-server-dev-allr¯$eUbuster]r°$(Upostgresql-9.6-postgis-2.3r±$Upostgresql-contribr²$Upostgresql-server-dev-allr³$euUgentoo]r´$(Udev-db/postgisrµ$U=dev-db/postgresql-9*r¶$eUubuntu}r·$(Utrusty]r¸$(Upostgresql-9.3-postgis-2.1r¹$Upostgresql-contribrº$Upostgresql-server-dev-allr»$eUartful]r¼$(Upostgresql-9.6-postgis-2.3r½$Upostgresql-contribr¾$Upostgresql-server-dev-allr¿$eUbionic]rÀ$(Upostgresql-10-postgis-2.4rÁ$Upostgresql-contribrÂ$Upostgresql-server-dev-allrÃ$eUxenial]rÄ$(Upostgresql-9.5-postgis-2.2rÅ$Upostgresql-contribrÆ$Upostgresql-server-dev-allrÇ$euuUnetwork-manager}rÈ$(Ufedora]rÉ$UNetworkManagerrÊ$aUdebian]rË$Unetwork-managerrÌ$aUgentoo]rÍ$Unet-misc/networkmanagerrÎ$aUubuntu]rÏ$Unetwork-managerrÐ$auU libdrm-dev}rÑ$(Ufedora]rÒ$U libdrm-develrÓ$aUarch]rÔ$UlibdrmrÕ$aUdebian]rÖ$U libdrm-devr×$aUgentoo]rØ$Ux11-libs/libdrmrÙ$aUubuntu]rÚ$U libdrm-devrÛ$auUlibbluetooth-dev}rÜ$(Ufedora]rÝ$Ubluez-libs-develrÞ$aUarch]rß$Ubluezrà$aUdebian]rá$Ulibbluetooth-devrâ$aUgentoo]rã$Unet-wireless/bluez-libsrä$aUubuntu]rå$Ulibbluetooth-devræ$auUpcre}rç$(Ufedora]rè$U pcre-develré$aUgentoo]rê$Udev-libs/libpcrerë$aUmacports]rì$Upcrerí$aUrhel]rî$U pcre-develrï$aUubuntu]rð$U libpcre3-devrñ$aU openembedded]rò$Ulibpcre@openembedded-coreró$aUarch]rô$Upcrerõ$aUdebian]rö$U libpcre3-devr÷$auU libv4l-dev}rø$(Ufedora]rù$U libv4l-develrú$aUgentoo]rû$Umedia-libs/libv4lrü$aUfreebsd]rý$Ulibv4lrþ$aUopensuse]rÿ$U libv4l-develr%aU slackware}r%Uslackpkg}r%Upackages]r%U v4l-utilsr%assUubuntu]r%U libv4l-devr%aUarch]r%U v4l-utilsr%aUdebian]r %U libv4l-devr %auUgit}r %(Ufedora]r %Ugitr %aUgentoo]r%U dev-vcs/gitr%aUmacports]r%Ugit-corer%aUopensuse]r%Ugit-corer%aUrhel]r%Ugitr%aUfreebsd]r%Ugitr%aUubuntu]r%Ugitr%aU openembedded]r%Ugit@openembedded-corer%aUarch]r%Ugitr%aUdebian]r%Ugitr%auUlibargtable2-dev}r %(Ufedora]r!%Uargtable2-develr"%aUarch]r#%Uargtabler$%aUdebian]r%%Ulibargtable2-devr&%aUgentoo]r'%U=dev-libs/argtable-2*r(%aUubuntu]r)%Ulibargtable2-devr*%auUopengl}r+%(Ufedora]r,%(Umesa-libGL-develr-%Umesa-libGLU-develr.%eUgentoo]r/%Uvirtual/openglr0%aUmacports]r1%Umesar2%aUfreebsd]r3%U mesa-libsr4%aUopensuse]r5%U Mesa-develr6%aUrhel]r7%(Umesa-libGL-develr8%Umesa-libGLU-develr9%eU slackware}r:%Uslackpkg}r;%Upackages]r<%Umesar=%assUubuntu]r>%(Ulibgl1-mesa-devr?%Ulibglu1-mesa-devr@%eU openembedded]rA%Umesa@openembedded-corerB%aUarch]rC%UmesarD%aUdebian]rE%(Ulibgl1-mesa-devrF%Ulibglu1-mesa-devrG%euUttf-kochi-gothic}rH%(Uarch]rI%Uttf-togoshi-gothicrJ%aUdebian]rK%Uttf-kochi-gothicrL%aUgentoo]rM%Umedia-fonts/kochi-substituterN%aUubuntu]rO%Uttf-kochi-gothicrP%auU libmarble-dev}rQ%(Ufedora]rR%U marble-develrS%aUarch]rT%U kdeedu-marblerU%aUdebian]rV%U libmarble-devrW%aUgentoo]rX%Ukde-base/marblerY%aUubuntu]rZ%U libmarble-devr[%auUgstreamer0.10-pocketsphinx}r\%(Ufedora]r]%Upocketsphinx-pluginr^%aUdebian}r_%Ujessie]r`%Ugstreamer0.10-pocketsphinxra%asUgentoo]rb%Uapp-accessibility/pocketsphinxrc%aUubuntu]rd%Ugstreamer0.10-pocketsphinxre%auUemacs}rf%(Ufedora]rg%Uemacsrh%aUgentoo]ri%U virtual/emacsrj%aUubuntu]rk%Uemacsrl%aUfreebsd]rm%Uemacsrn%aUarch]ro%Uemacsrp%aUdebian]rq%Uemacsrr%auUspeech-dispatcher}rs%(Ufedora]rt%Uspeech-dispatcherru%aUdebian]rv%Uspeech-dispatcherrw%aUgentoo]rx%U#app-accessibility/speech-dispatcherry%aUubuntu]rz%Uspeech-dispatcherr{%auUavr-libc}r|%(Ufedora]r}%Uavr-libcr~%aUarch]r%Uavr-libcr€%aUdebian]r%Uavr-libcr‚%aUgentoo]rƒ%Udev-embedded/avr-libcr„%aUubuntu]r…%Uavr-libcr†%auUxulrunner-1.9.2}r‡%(Ufedora]rˆ%U xulrunnerr‰%aUarch]rŠ%U xulrunnerr‹%aUdebian]Uubuntu}rŒ%(Uprecise]Uoneiric]Ulucid]r%Uxulrunner-1.9.2rŽ%aUkarmic]r%Uxulrunner-1.9.2r%aUnatty]r‘%Uxulrunner-1.9.2r’%aUmaverick]r“%Uxulrunner-1.9.2r”%aUquantal]Uraring]uuUlibqt5-svg-dev}r•%(Ufreebsd]r–%Uqt5-svgr—%aUfedora]r˜%Uqt5-qtsvg-develr™%aUdebian]rš%Ulibqt5svg5-devr›%aUgentoo]rœ%Udev-qt/qtsvg:5r%aUubuntu]rž%Ulibqt5svg5-devrŸ%auU qttools5-dev}r %(Ufedora]r¡%Uqt5-qttools-develr¢%aUdebian]r£%U qttools5-devr¤%aUubuntu]r¥%U qttools5-devr¦%auU libdlib-dev}r§%(Udebian]r¨%U libdlib-devr©%aUgentoo}rª%Uportage}r«%Upackages]r¬%U sci-libs/dlibr­%assUubuntu}r®%(U*]r¯%U libdlib-devr°%aUtrustyNuuU libftdipp-dev}r±%(Ufedora]r²%Ulibftdi-c++-develr³%aUdebian}r´%(Ustretch]rµ%Ulibftdipp1-devr¶%aUjessie]r·%U libftdipp-devr¸%aUbuster]r¹%Ulibftdipp1-devrº%aUwheezy]r»%U libftdipp-devr¼%auUgentoo]r½%Udev-embedded/libftdi[cxx]r¾%aUubuntu}r¿%(Uprecise]rÀ%U libftdipp-devrÁ%aUsaucy]rÂ%U libftdipp-devrÃ%aUtrusty]rÄ%U libftdipp-devrÅ%aUvivid]rÆ%U libftdipp-devrÇ%aUwily]rÈ%U libftdipp-devrÉ%aUbionic]rÊ%Ulibftdipp1-devrË%aUxenial]rÌ%Ulibftdipp1-devrÍ%auuU cgal-qt5-dev}rÎ%(Ufedora]rÏ%U CGAL-develrÐ%aUarch]rÑ%UcgalrÒ%aUdebian]rÓ%Ulibcgal-qt5-devrÔ%aUgentoo]rÕ%Usci-mathematics/cgal[qt5]rÖ%aUubuntu]r×%Ulibcgal-qt5-devrØ%auUgksu}rÙ%(Udebian]rÚ%UgksurÛ%aUgentoo]rÜ%U x11-libs/gksurÝ%aUubuntu]rÞ%Ugksurß%auUr-base}rà%(Ufedora]rá%URaUdebian]râ%Ur-baserã%aUgentoo]rä%U dev-lang/Rrå%aUubuntu]ræ%Ur-baserç%auU avahi-utils}rè%(Ufedora]ré%U avahi-toolsrê%aUarch]rë%Uavahirì%aUdebian]rí%U avahi-utilsrî%aUgentoo]rï%U net-dns/avahirð%aUubuntu]rñ%U avahi-utilsrò%auU libgflags-dev}ró%(Ufedora]rô%U gflags-develrõ%aUgentoo]rö%Udev-cpp/gflagsr÷%aUubuntu]rø%U libgflags-devrù%aU openembedded]rú%Ugflags@meta-oerû%aUarch]rü%Ugflagsrý%aUdebian]rþ%U libgflags-devrÿ%auUlibgazebo9-dev}r&(Ufedora}r&U30]r&U gazebo-develr&asUdebian}r&(Ustretch]r&Ulibgazebo9-devr&aUbuster]r&Ulibgazebo9-devr&auUgentoo]r &Usci-electronics/gazebor &aUubuntu}r &(Ueoan]r &Ulibgazebo9-devr &aUcosmic]r&Ulibgazebo9-devr&aUartful]r&Ulibgazebo9-devr&aUbionic]r&Ulibgazebo9-devr&aUdisco]r&Ulibgazebo9-devr&auuUsdl}r&(Ufedora]r&U SDL-develr&aUgentoo]r&Umedia-libs/libsdlr&aUmacports]r&Ulibsdlr&aU openembedded]r&Ulibsdl@openembedded-corer&aUubuntu]r&U libsdl1.2-devr &aUarch]r!&Usdlr"&aUdebian]r#&U libsdl1.2-devr$&auU redis-server}r%&(Ufedora]r&&Uredisr'&aUarch]r(&Uredisr)&aUdebian]r*&U redis-serverr+&aUgentoo]r,&U dev-db/redisr-&aUubuntu]r.&U redis-serverr/&auUgccxml}r0&(Ufedora]r1&Ugccxmlr2&aUgentoo]r3&Udev-cpp/gccxmlr4&aUmacports]r5&U gccxml-develr6&aUubuntu]r7&Ugccxmlr8&aUarch]r9&U gccxml-gitr:&aUdebian]r;&Ugccxmlr<&auU libtheora}r=&(Ufedora]r>&Ulibtheora-develr?&aUgentoo]r@&Umedia-libs/libtheorarA&aUmacports]rB&U libtheorarC&aUfreebsd]rD&U libtheorarE&aUopensuse]rF&Ulibtheora-develrG&aUrhel]rH&Ulibtheora-develrI&aU slackware}rJ&Uslackpkg}rK&Upackages]rL&U libtheorarM&assUubuntu]rN&U libtheora-devrO&aU openembedded]rP&Ulibtheora@openembedded-corerQ&aUarch]rR&U libtheorarS&aUdebian]rT&U libtheora-devrU&auU libbison-dev}rV&(Ufedora]rW&U bison-develrX&aUdebian]rY&U libbison-devrZ&aUgentoo]r[&Usys-devel/bisonr\&aUubuntu}r]&(Uprecise]r^&U libbison-devr_&aUtrusty]r`&U libbison-devra&aUvivid]rb&U libbison-devrc&aUwily]rd&U libbison-devre&aUxenial]rf&U libbison-devrg&auuU box2d-dev}rh&(Ufedora]ri&U Box2D-develrj&aUarch]rk&Ubox2drl&aUdebian]rm&U libbox2d-devrn&aUubuntu]ro&U libbox2d-devrp&auU libsoqt4-dev}rq&(Ufedora]rr&U SoQt-develrs&aUarch]rt&Usoqtru&aUdebian]rv&U libsoqt4-devrw&aUgentoo]rx&Umedia-libs/SoQtry&aUubuntu]rz&U libsoqt4-devr{&auU libogre-dev}r|&(Ufedora]r}&U ogre-develr~&aUgentoo]r&Udev-games/ogrer€&aUmacports]r&Uogrer‚&aUfreebsd]rƒ&Uogre3dr„&aUopensuse]r…&U ogre-develr†&aUrhel]r‡&U ogre-develrˆ&aU slackware]r‰&UogrerŠ&aUubuntu}r‹&(Uprecise]rŒ&U libogre-devr&aUlucid]rŽ&U libogre-devr&aUxenial]r&Ulibogre-1.9-devr‘&aUvivid]r’&Ulibogre-1.9-devr“&aUbionic]r”&Ulibogre-1.9-devr•&aUwily]r–&Ulibogre-1.9-devr—&aUsaucy]r˜&Ulibogre-1.8-devr™&aUyakkety]rš&Ulibogre-1.9-devr›&aUtrusty]rœ&Ulibogre-1.8-devr&aUoneiric]rž&U libogre-devrŸ&aUartful]r &Ulibogre-1.9-devr¡&aUnatty]r¢&U libogre-devr£&aUutopic]r¤&Ulibogre-1.9-devr¥&aUzesty]r¦&Ulibogre-1.9-devr§&aUraring]r¨&U libogre-devr©&aUmaverick]rª&U libogre-devr«&aUquantal]r¬&U libogre-devr­&auUarch]r®&Uogre-1.9r¯&aUdebian}r°&(Ustretch]r±&Ulibogre-1.9-devr²&aUjessie]r³&Ulibogre-1.9-devr´&aUbuster]rµ&Ulibogre-1.9-devr¶&aUwheezy]r·&U libogre-devr¸&auuU g++-multilib}r¹&(Ufedora]rº&(Ugcc-c++r»&U glibc-develr¼&Uglibc-devel(%{__isa_name}-32)r½&U glibc-staticr¾&Uglibc-static(%{__isa_name}-32)r¿&Ulibstdc++-develrÀ&U!libstdc++-devel(%{__isa_name}-32)rÁ&Ulibstdc++-staticrÂ&U"libstdc++-static(%{__isa_name}-32)rÃ&eUdebian]rÄ&U g++-multilibrÅ&aUgentoo]rÆ&Usys-devel/multilib-gcc-wrapperrÇ&aUubuntu]rÈ&U g++-multilibrÉ&auU libqrencode}rÊ&(Udebian]rË&U libqrencode3rÌ&aUgentoo]rÍ&Umedia-gfx/qrencoderÎ&aUubuntu]rÏ&U libqrencode3rÐ&auU libncurses}rÑ&(Ufedora]rÒ&UncursesrÓ&aUgentoo]rÔ&Usys-libs/ncursesrÕ&aUubuntu]rÖ&U libncurses5r×&aUarch]rØ&UncursesrÙ&aUdebian]rÚ&U libncurses5rÛ&aUrhel]rÜ&UncursesrÝ&auU libqt5-gui}rÞ&(Ufedora]rß&Uqt5-qtbase-guirà&aUgentoo]rá&Udev-qt/qtgui:5râ&aUfreebsd]rã&Uqt5-guirä&aUopensuse]rå&U libQt5Gui5ræ&aUrhel]rç&Uqt5-qtbase-guirè&aU slackware]ré&Uqt5rê&aUubuntu]rë&U libqt5gui5rì&aU openembedded]rí&Uqtbase@meta-qt5rî&aUarch]rï&Uqt5-baserð&aUdebian]rñ&U libqt5gui5rò&auUapache2-mpm-prefork}ró&(Udebian}rô&(Ujessie]rõ&Uapache2-mpm-preforkrö&aUwheezy]r÷&Uapache2-mpm-preforkrø&auUgentoo]rù&U(www-servers/apache[apache2_mpms_prefork]rú&aUubuntu]rû&Uapache2-mpm-preforkrü&auU libiw-dev}rý&(Ufedora]rþ&Uwireless-tools-develrÿ&aUdebian]r'U libiw-devr'aUgentoo]r'Unet-wireless/wireless-toolsr'aUubuntu]r'U libiw-devr'auU devscripts}r'(Ufedora]r'U devscriptsr'aUdebian]r 'U devscriptsr 'aUgentoo]r 'Udev-util/checkbashismsr 'aUubuntu]r 'U devscriptsr'auUlibqt5-concurrent}r'(Uopensuse]r'UlibQt5Concurrent5r'aU slackware]r'Uqt5r'aUfedora]r'U qt5-qtbaser'aUgentoo]r'Udev-qt/qtconcurrent:5r'aUubuntu]r'Ulibqt5concurrent5r'aUarch]r'Uqt5-baser'aUdebian]r'Ulibqt5concurrent5r'auUautoconf}r'(Ufedora]r'Uautoconfr 'aUgentoo]r!'Usys-devel/autoconfr"'aUmacports]r#'Uautoconfr$'aUopensuse]r%'Uautoconfr&'aUrhel]r''Uautoconfr('aUfreebsd]r)'(U autoconf213r*'U autoconf268r+'eUubuntu]r,'Uautoconfr-'aUarch]r.'Uautoconfr/'aUdebian]r0'Uautoconfr1'auU libqtgui4}r2'(Ufedora]r3'Uqt-x11r4'aUarch]r5'Uqt4r6'aUdebian]r7'U libqtgui4r8'aUgentoo]r9'Udev-qt/qtgui:4r:'aUubuntu]r;'U libqtgui4r<'auUlibopensplice69}r='(Ugentoo]r>'U=sci-libs/opensplice-6.9.*r?'aUubuntu}r@'(Ubionic]rA'Ulibopensplice69rB'aUxenial]rC'Ulibopensplice69rD'auuU libann-dev}rE'(Ufedora]rF'U ann-develrG'aUarch]rH'UannrI'aUdebian]rJ'U libann-devrK'aUubuntu]rL'U libann-devrM'auU supervisor}rN'(Ufedora]rO'U supervisorrP'aUarch]rQ'U supervisorrR'aUdebian]rS'U supervisorrT'aUgentoo]rU'Uapp-admin/supervisorrV'aUubuntu]rW'U supervisorrX'auUlibxss1}rY'(Ufedora]rZ'U libXScrnSaverr['aUarch]r\'Ulibxssr]'aUdebian]r^'Ulibxss1r_'aUgentoo]r`'Ux11-libs/libXScrnSaverra'aUubuntu]rb'Ulibxss1rc'auU qt5-qmake}rd'(Ufedora]re'Uqt5-qtbase-develrf'aUgentoo]rg'Udev-qt/qtcore:5rh'aUfreebsd]ri'U qt5-qmakerj'aUopensuse]rk'Ulibqt5-qtbase-common-develrl'aUrhel]rm'Uqt5-qtbase-develrn'aU slackware]ro'Uqt5rp'aUubuntu]rq'U qt5-qmakerr'aU openembedded]rs'Uqtbase@meta-qt5rt'aUarch]ru'Uqt5-baserv'aUdebian]rw'U qt5-qmakerx'auU libglew-dev}ry'(Ufedora]rz'U glew-develr{'aUarch]r|'Uglewr}'aUdebian]r~'U libglew-devr'aUgentoo]r€'Umedia-libs/glewr'aUubuntu}r‚'(Uprecise]rƒ'Ulibglew1.6-devr„'aUsaucy]r…'U libglew-devr†'aUyakkety]r‡'U libglew-devrˆ'aUtrusty]r‰'U libglew-devrŠ'aUoneiric]r‹'Ulibglew1.5-devrŒ'aUartful]r'U libglew-devrŽ'aUxenial]r'U libglew-devr'aUutopic]r‘'U libglew-devr’'aUvivid]r“'U libglew-devr”'aUbionic]r•'U libglew-devr–'aUzesty]r—'U libglew-devr˜'aUraring]r™'U libglew-devrš'aUquantal]r›'U libglew-devrœ'aUwily]r'U libglew-devrž'auuUlibgps}rŸ'(Uopensuse]r 'U gpsd-develr¡'aUfedora]r¢'U gpsd-develr£'aUgentoo]r¤'Usci-geosciences/gpsdr¥'aUubuntu]r¦'U libgps-devr§'aUarch]r¨'Ugpsdr©'aUdebian]rª'U libgps-devr«'auUlibopensplice67}r¬'(Ugentoo]r­'U=sci-libs/opensplice-6.7.*r®'aUubuntu}r¯'(Ubionic]r°'Ulibopensplice67r±'aUxenial]r²'Ulibopensplice67r³'auuUlibavahi-core-dev}r´'(Ufedora]rµ'U avahi-develr¶'aUarch]r·'Uavahir¸'aUdebian]r¹'Ulibavahi-core-devrº'aUgentoo]r»'U net-dns/avahir¼'aUubuntu]r½'Ulibavahi-core-devr¾'auUqttools5-dev-tools}r¿'(Ufedora]rÀ'Uqt5-qttools-develrÁ'aUdebian]rÂ'Uqttools5-dev-toolsrÃ'aUubuntu]rÄ'Uqttools5-dev-toolsrÅ'auUcurl}rÆ'(Ufedora]rÇ'(U libcurl-develrÈ'UcurlrÉ'eUgentoo]rÊ'U net-misc/curlrË'aUmacports]rÌ'UcurlrÍ'aUfreebsd]rÎ'UcurlrÏ'aUopensuse]rÐ'(U libcurl-develrÑ'UcurlrÒ'eUrhel]rÓ'(U libcurl-develrÔ'UcurlrÕ'eU slackware}rÖ'Uslackpkg}r×'Upackages]rØ'UcurlrÙ'assUubuntu]rÚ'(Ulibcurl4-openssl-devrÛ'UcurlrÜ'eU openembedded]rÝ'Ucurl@openembedded-corerÞ'aUarch]rß'Ucurlrà'aUdebian]rá'(Ulibcurl4-openssl-devrâ'Ucurlrã'eUalpine]rä'Ucurl-devrå'auUssh-askpass-gnome}ræ'(Ufedora]rç'Uopenssh-askpassrè'aUdebian]ré'Ussh-askpass-gnomerê'aUgentoo]rë'Unet-misc/ssh-askpass-fullscreenrì'aUubuntu]rí'Ussh-askpass-gnomerî'auUwmctrl}rï'(Uopensuse]rð'Uwmctrlrñ'aUfedora]rò'Uwmctrlró'aUgentoo]rô'Ux11-misc/wmctrlrõ'aUubuntu]rö'Uwmctrlr÷'aUarch]rø'Uwmctrlrù'aUdebian]rú'Uwmctrlrû'aUrhel]rü'Uwmctrlrý'auU python-dev}rþ'(Ufedora]rÿ'U python2-develr(aUdebian]r(U python-devr(aUubuntu]r(U python-devr(auUswig-wx}r(Ugentoo]r(U dev-lang/swigr(asUbzip2}r((Ufedora]r (U bzip2-develr (aUgentoo]r (Uapp-arch/bzip2r (aUmacports]r (Ubzip2r(aUfreebsd]r(Ubzip2r(aUopensuse]r(U libbz2-develr(aUcygwin]r(Ubzip2r(aU slackware}r(Uslackpkg}r(Upackages]r(Ubzip2r(assUubuntu]r(U libbz2-devr(aU openembedded]r(Ubzip2@openembedded-corer(aUalpine]r(U bzip2-devr(aUarch]r(Ubzip2r (aUdebian]r!(U libbz2-devr"(aUrhel]r#(U bzip2-develr$(auUttf-sazanami-gothic}r%((Ufedora]r&(Usazanami-gothic-fontsr'(aUarch]r((U ttf-sazanamir)(aUdebian]r*(Uttf-sazanami-gothicr+(aUgentoo]r,(Umedia-fonts/sazanamir-(aUubuntu]r.(Uttf-sazanami-gothicr/(auUtix}r0((Ufedora]r1(Utixr2(aUarch]r3(Utixr4(aUdebian]r5(Utixr6(aUgentoo]r7(U dev-tcltk/tixr8(aUubuntu]r9(Utixr:(auUqtdeclarative5-dev}r;((Ufedora]r<(Uqt5-qtdeclarative-develr=(aUgentoo]r>(Udev-qt/qtdeclarative:5r?(aUubuntu]r@(Uqtdeclarative5-devrA(aUfreebsd]rB((Uqt5-qmlrC(U qt5-quickrD(eUarch]rE(Uqt5-declarativerF(aUdebian]rG(Uqtdeclarative5-devrH(auUgnuplot}rI((Ufedora]rJ(UgnuplotrK(aUarch]rL(UgnuplotrM(aUdebian]rN(UgnuplotrO(aUgentoo]rP(Usci-visualization/gnuplotrQ(aUubuntu]rR(UgnuplotrS(auUgstreamer0.10-gconf}rT((Udebian}rU(Ujessie]rV(Ugstreamer0.10-gconfrW(asUubuntu}rX((Uprecise]rY(Ugstreamer0.10-gconfrZ(aUutopic]r[(Ugstreamer0.10-gconfr\(aUtrusty]r](Ugstreamer0.10-gconfr^(aUvivid]r_(Ugstreamer0.10-gconfr`(aUwily]ra(Ugstreamer0.10-gconfrb(aUxenial]rc(Ugstreamer0.10-gconfrd(auuU libfltk-dev}re((Ufedora]rf(U fltk-develrg(aUgentoo]rh(U x11-libs/fltkri(aUmacports]rj(Ufltkrk(aUfreebsd]rl(Ufltkrm(aUopensuse]rn(U fltk-develro(aU slackware]rp(Ufltkrq(aUubuntu}rr((Uprecise]rs(Ulibfltk1.1-devrt(aUlucid]ru(Ulibfltk1.1-devrv(aUxenial]rw(Ulibfltk1.3-devrx(aUvivid]ry(Ulibfltk1.3-devrz(aUbionic]r{(Ulibfltk1.3-devr|(aUwily]r}(Ulibfltk1.3-devr~(aUsaucy]r(Ulibfltk1.1-devr€(aUyakkety]r(Ulibfltk1.3-devr‚(aUtrusty]rƒ(Ulibfltk1.1-devr„(aUoneiric]r…(Ulibfltk1.1-devr†(aUartful]r‡(Ulibfltk1.3-devrˆ(aUnatty]r‰(Ulibfltk1.1-devrŠ(aUutopic]r‹(Ulibfltk1.3-devrŒ(aUzesty]r(Ulibfltk1.3-devrŽ(aUraring]r(Ulibfltk1.1-devr(aUmaverick]r‘(Ulibfltk1.1-devr’(aUquantal]r“(Ulibfltk1.1-devr”(auUarch]r•(Ufltkr–(aUdebian}r—((Ustretch]r˜(Ulibfltk1.3-devr™(aUjessie]rš(Ulibfltk1.1-devr›(aUbuster]rœ(Ulibfltk1.3-devr(aUwheezy]rž(Ulibfltk1.1-devrŸ(auuUlinux-headers-generic}r ((Ufedora]r¡((Ukernel-headersr¢(U kernel-develr£(eUgentoo]r¤(Usys-kernel/linux-headersr¥(aUubuntu]r¦(Ulinux-headers-genericr§(aU openembedded]r¨(U virtual/kernel@openembedded-corer©(aUarch]rª(U linux-headersr«(aUdebian}r¬((Ustretch]r­(Ulinux-headers-4.9.0-11-allr®(aUjessie]r¯(Ulinux-headers-3.16.0-4-allr°(aUwheezy]r±(Ulinux-headers-3.2.0-4-allr²(auUrhel]r³((Ukernel-headersr´(U kernel-develrµ(euUlibqwtplot3d-qt4-dev}r¶((Ufedora]r·(Uqwtplot3d-qt4-develr¸(aUarch]r¹(U qwtplot3drº(aUdebian]r»(Ulibqwtplot3d-qt4-devr¼(aUgentoo]r½(Ux11-libs/qwtplot3dr¾(aUubuntu]r¿(Ulibqwtplot3d-qt4-devrÀ(auUdpkg-dev}rÁ((Ufedora]rÂ(Udpkg-devrÃ(aUdebian]rÄ(Udpkg-devrÅ(aUubuntu]rÆ(Udpkg-devrÇ(auUlibrdkafka-dev}rÈ((Ufedora]rÉ(Ulibrdkafka-develrÊ(aUdebian]rË(Ulibrdkafka-devrÌ(aUgentoo]rÍ(Udev-libs/librdkafkarÎ(aUubuntu]rÏ(Ulibrdkafka-devrÐ(auU libunwind-dev}rÑ((Ufedora]rÒ(Ulibunwind-develrÓ(aUdebian}rÔ((Ustretch]rÕ(Ulibunwind8-devrÖ(aUjessie]r×(Ulibunwind8-devrØ(aUbuster]rÙ(Ulibunwind8-devrÚ(aUwheezy]rÛ(Ulibunwind7-devrÜ(auUgentoo]rÝ(Usys-libs/libunwindrÞ(aUubuntu}rß((Uprecise]rà(Ulibunwind7-devrá(aUsaucy]râ(Ulibunwind8-devrã(aUtrusty]rä(Ulibunwind8-devrå(aU*]ræ(U libunwind-devrç(aUquantal]rè(Ulibunwind8-devré(aUraring]rê(Ulibunwind8-devrë(auuU libvulkan-dev}rì((Ufedora]rí(U vulkan-develrî(aUdebian]rï(U libvulkan-devrð(aUgentoo]rñ(Umedia-libs/vulkan-loaderrò(aUubuntu}ró((U*]rô(U libvulkan-devrõ(aUtrustyNuuU smartmontools}rö((Ufedora]r÷(U smartmontoolsrø(aUarch]rù(U smartmontoolsrú(aUdebian]rû(U smartmontoolsrü(aUgentoo]rý(Usys-apps/smartmontoolsrþ(aUubuntu]rÿ(U smartmontoolsr)auUespeak}r)(Ufedora]r)Uespeakr)aUdebian]r)Uespeakr)aUgentoo]r)Uapp-accessibility/espeakr)aUubuntu]r)Uespeakr )auUmongodb}r )(Ufedora]r )Umongodbr )aUdebian]r )Umongodbr)aUgentoo]r)Udev-db/mongodbr)aUubuntu]r)Umongodbr)auU mosquitto-dev}r)(Ufedora]r)Umosquitto-develr)aUdebian]r)Ulibmosquitto-devr)aUubuntu]r)Ulibmosquitto-devr)auU libzmqpp-dev}r)Uubuntu]r)U libzmqpp-devr)asUlibcpprest-dev}r)(Ufedora]r)U cpprest-develr)aUdebian}r )(Ustretch]r!)Ulibcpprest-devr")aUbuster]r#)Ulibcpprest-devr$)auUubuntu}r%)(Uzesty]r&)Ulibcpprest-devr')aUyakkety]r()Ulibcpprest-devr))aUartful]r*)Ulibcpprest-devr+)aUbionic]r,)Ulibcpprest-devr-)aUxenial]r.)Ulibcpprest-devr/)auuUintltool}r0)(Uopensuse]r1)Uintltoolr2)aUfedora]r3)Uintltoolr4)aUgentoo]r5)Udev-util/intltoolr6)aUubuntu]r7)Uintltoolr8)aUfreebsd]r9)Uintltoolr:)aUarch]r;)Uintltoolr<)aUdebian]r=)Uintltoolr>)auUlibtool}r?)(Ufedora]r@)(UlibtoolrA)Ulibtool-ltdl-develrB)eUgentoo]rC)Usys-devel/libtoolrD)aUmacports]rE)UlibtoolrF)aUfreebsd]rG)UlibtoolrH)aUopensuse]rI)(UlibtoolrJ)Ulibltdl3rK)eUrhel]rL)(UlibtoolrM)Ulibtool-ltdl-develrN)eU slackware]rO)UlibtoolrP)aUubuntu}rQ)(Uprecise]rR)(UlibtoolrS)U libltdl-devrT)eUlucid]rU)(UlibtoolrV)U libltdl-devrW)eUxenial]rX)(UlibtoolrY)U libltdl-devrZ)U libtool-binr[)eUvivid]r\)(Ulibtoolr])U libltdl-devr^)U libtool-binr_)eUbionic]r`)(Ulibtoolra)U libltdl-devrb)U libtool-binrc)eUwily]rd)(Ulibtoolre)U libltdl-devrf)U libtool-binrg)eUsaucy]rh)(Ulibtoolri)U libltdl-devrj)eUyakkety]rk)(Ulibtoolrl)U libltdl-devrm)U libtool-binrn)eUtrusty]ro)(Ulibtoolrp)U libltdl-devrq)eUoneiric]rr)(Ulibtoolrs)U libltdl-devrt)eUartful]ru)(Ulibtoolrv)U libltdl-devrw)U libtool-binrx)eUnatty]ry)(Ulibtoolrz)U libltdl-devr{)eUutopic]r|)(Ulibtoolr})U libltdl-devr~)U libtool-binr)eUzesty]r€)(Ulibtoolr)U libltdl-devr‚)U libtool-binrƒ)eUraring]r„)(Ulibtoolr…)U libltdl-devr†)eUmaverick]r‡)(Ulibtoolrˆ)U libltdl-devr‰)eUquantal]rŠ)(Ulibtoolr‹)U libltdl-devrŒ)euUarch]r)UlibtoolrŽ)aUdebian}r)(Ujessie]r)(Ulibtoolr‘)U libltdl-devr’)U libtool-binr“)eUbuster]r”)(Ulibtoolr•)U libltdl-devr–)U libtool-binr—)eUwheezy]r˜)(Ulibtoolr™)U libltdl-devrš)eUlenny]r›)(Ulibtoolrœ)U libltdl3-devr)eUstretch]rž)(UlibtoolrŸ)U libltdl-devr )U libtool-binr¡)eUsqueeze]r¢)(Ulibtoolr£)U libltdl-devr¤)euuU libxi-dev}r¥)(Ufedora]r¦)U libXi-develr§)aUarch]r¨)Ulibxir©)aUdebian]rª)U libxi-devr«)aUgentoo]r¬)Ux11-libs/libXir­)aUubuntu]r®)U libxi-devr¯)auU libqt5-opengl}r°)(Ufedora]r±)U qt5-qtbaser²)aUgentoo]r³)Udev-qt/qtopengl:5r´)aUfreebsd]rµ)U qt5-openglr¶)aUopensuse]r·)U libQt5OpenGL5r¸)aUrhel]r¹)U qt5-qtbaserº)aU slackware]r»)Uqt5r¼)aUubuntu]r½)U libqt5opengl5r¾)aU openembedded]r¿)Uqtbase@meta-qt5rÀ)aUarch]rÁ)Uqt5-baserÂ)aUdebian]rÃ)U libqt5opengl5rÄ)auUlibvlc}rÅ)(Ufedora]rÆ)Uvlc-corerÇ)aUdebian]rÈ)(Ulibvlc5rÉ)Uvlc-noxrÊ)eUgentoo]rË)Umedia-video/vlcrÌ)aUubuntu]rÍ)(Ulibvlc5rÎ)Uvlc-noxrÏ)euUomniorb}rÐ)(Ufedora]rÑ)(UomniORBrÒ)U omniORB-develrÓ)UomniORB-serversrÔ)eUgentoo]rÕ)Unet-misc/omniORBrÖ)aUmacports]r×)UomniORBrØ)aUubuntu]rÙ)(UomniorbrÚ)UomniidlrÛ)U omniorb-idlrÜ)Uomniorb-nameserverrÝ)Ulibomniorb4-devrÞ)eUarch]rß)Uomniorbrà)aUdebian]rá)(Uomniorbrâ)Uomniidlrã)U omniorb-idlrä)Uomniorb-nameserverrå)Ulibomniorb4-devræ)euUbullet}rç)(Ufedora]rè)U bullet-develré)aUgentoo]rê)Usci-physics/bulletrë)aUmacports]rì)Ubulletrí)aUopensuse]rî)U libbulletrï)aUubuntu}rð)(Utrusty_python3]rñ)U libbullet-devrò)aU*]ró)U libbullet-devrô)auU openembedded]rõ)Ubullet@meta-rosrö)aUarch]r÷)Ubulletrø)aUdebian]rù)U libbullet-devrú)auUusbutils}rû)(Ufedora]rü)Uusbutilsrý)aUmacports]rþ)Uusbutilsrÿ)aUdebian]r*Uusbutilsr*aUgentoo]r*Usys-apps/usbutilsr*aUubuntu]r*Uusbutilsr*auUchrony}r*(Uopensuse]r*Uchronyr*aUfedora]r *Uchronyr *aUgentoo]r *Unet-misc/chronyr *aUubuntu]r *Uchronyr*aUarch]r*Uchronyr*aUdebian]r*Uchronyr*auU libevdev-dev}r*(Ufedora]r*Ulibevdev-develr*aUarch]r*Ulibevdevr*aUdebian]r*U libevdev-devr*aUgentoo]r*Udev-libs/libevdevr*aUubuntu]r*U libevdev-devr*auU clang-tidy}r*(Ufedora]r*Uclang-tools-extrar *aUdebian}r!*(Ustretch]r"*U clang-tidyr#*aUbuster]r$*U clang-tidyr%*auUrhel}r&*(U*]r'*Uclang-tools-extrar(*aU7NuUubuntu}r)*(U*]r**U clang-tidyr+*aUtrustyNuuUtime}r,*(Ufedora]r-*Utimer.*aUarch]r/*Utimer0*aUdebian]r1*Utimer2*aUgentoo]r3*Usys-process/timer4*aUubuntu]r5*Utimer6*auUrecordmydesktop}r7*(Ufedora]r8*Urecordmydesktopr9*aUarch]r:*Urecordmydesktopr;*aUdebian]r<*Urecordmydesktopr=*aUgentoo]r>*Umedia-video/recordmydesktopr?*aUubuntu]r@*UrecordmydesktoprA*auUlinphone}rB*(Ufedora]rC*UlinphonerD*aUdebian]rE*UlinphonerF*aUgentoo]rG*Unet-voip/linphonerH*aUubuntu]rI*UlinphonerJ*auU libdxflib-dev}rK*(Ufedora]rL*Ulibdxflib-develrM*aUdebian]rN*U libdxflib-devrO*aUubuntu]rP*U libdxflib-devrQ*auUnasm}rR*(Ufedora]rS*UnasmrT*aUgentoo]rU*U dev-lang/nasmrV*aUmacports]rW*UnasmrX*aUopensuse]rY*UnasmrZ*aUfreebsd]r[*Unasmr\*aUubuntu]r]*Unasmr^*aUarch]r_*Unasmr`*aUdebian]ra*Unasmrb*auu.catkin_lint-1.6.6/test/sources.cache/b67f64890f6d5269c51a68744711f115a8f207ae.pickle000066400000000000000000000247361362025056600261210ustar00rootroot00000000000000€}q(U ros_tutorials}q(Uosxq}qUhomebrewq}qUpackagesq]qUros/fuerte/ros_tutorialsq assU_is_rosq ˆUubuntuq }q (Upreciseq }qUaptq}qh]qUros-fuerte-ros-tutorialsqassUlucidq}qh}qh]qhassUoneiricq}qh}qh]qhassuuUcatkin}q(h}qh}qh]qUros/fuerte/catkinqassh ˆh }q (h }q!h}q"h]q#Uros-fuerte-catkinq$assh}q%h}q&h]q'h$assh}q(h}q)h]q*h$assuuUobject_recognition_core}q+(h}q,h}q-h]q.U"ros/fuerte/object_recognition_coreq/assh ˆh }q0(h }q1h}q2h]q3U"ros-fuerte-object-recognition-coreq4assh}q5h}q6h]q7h4assh}q8h}q9h]q:h4assuuU roscpp_core}q;(h}qUros/fuerte/roscpp_coreq?assh ˆh }q@(h }qAh}qBh]qCUros-fuerte-roscpp-coreqDassh}qEh}qFh]qGhDassh}qHh}qIh]qJhDassuuUobject_recognition_msgs}qK(h}qLh}qMh]qNU"ros/fuerte/object_recognition_msgsqOassh ˆh }qP(h }qQh}qRh]qSU"ros-fuerte-object-recognition-msgsqTassh}qUh}qVh]qWhTassh}qXh}qYh]qZhTassuuUobject_recognition_renderer}q[(h}q\h}q]h]q^U&ros/fuerte/object_recognition_rendererq_assh ˆh }q`(h }qah}qbh]qcU&ros-fuerte-object-recognition-rendererqdassh}qeh}qfh]qghdassh}qhh}qih]qjhdassuuUobject_recognition_ros}qk(h}qlh}qmh]qnU!ros/fuerte/object_recognition_rosqoassh ˆh }qp(h }qqh}qrh]qsU!ros-fuerte-object-recognition-rosqtassh}quh}qvh]qwhtassh}qxh}qyh]qzhtassuuUompl}q{(h}q|h}q}h]q~Uros/fuerte/omplqassh ˆh }q€(h }qh}q‚h]qƒUros-fuerte-omplq„assh}q…h}q†h]q‡h„assh}qˆh}q‰h]qŠh„assuuUrospack}q‹(h}qŒh}qh]qŽUros/fuerte/rospackqassh ˆh }q(h }q‘h}q’h]q“Uros-fuerte-rospackq”assh}q•h}q–h]q—h”assh}q˜h}q™h]qšh”assuuUros}q›(h}qœh}qh]qžUros/fuerte/rosqŸassh ˆh }q (h }q¡h}q¢h]q£Uros-fuerte-rosq¤assh}q¥h}q¦h]q§h¤assh}q¨h}q©h]qªh¤assuuUoctovis}q«(h}q¬h}q­h]q®Uros/fuerte/octovisq¯assh ˆh }q°(h }q±h}q²h]q³Uros-fuerte-octovisq´assh}qµh}q¶h]q·h´assh}q¸h}q¹h]qºh´assuuUecto}q»(h}q¼h}q½h]q¾Uros/fuerte/ectoq¿assh ˆh }qÀ(h }qÁh}qÂh]qÃUros-fuerte-ectoqÄassh}qÅh}qÆh]qÇhÄassh}qÈh}qÉh]qÊhÄassuuUobject_recognition_capture}qË(h}qÌh}qÍh]qÎU%ros/fuerte/object_recognition_captureqÏassh ˆh }qÐ(h }qÑh}qÒh]qÓU%ros-fuerte-object-recognition-captureqÔassh}qÕh}qÖh]q×hÔassh}qØh}qÙh]qÚhÔassuuUgencpp}qÛ(h}qÜh}qÝh]qÞUros/fuerte/gencppqßassh ˆh }qà(h }qáh}qâh]qãUros-fuerte-gencppqäassh}qåh}qæh]qçhäassh}qèh}qéh]qêhäassuuUsrdfdom}që(h}qìh}qíh]qîUros/fuerte/srdfdomqïassh ˆh }qð(h }qñh}qòh]qóUros-fuerte-srdfdomqôassh}qõh}qöh]q÷hôassh}qøh}qùh]qúhôassuuU actionlib}qû(h}qüh}qýh]qþUros/fuerte/actionlibqÿassh ˆh }r(h }rh}rh]rUros-fuerte-actionlibrassh}rh}rh]rjassh}rh}r h]r jassuuUrx}r (h}r h}r h]rU ros/fuerte/rxrassh ˆh }r(h }rh}rh]rU ros-fuerte-rxrassh}rh}rh]rjassh}rh}rh]rjassuuUurdfdom_headers}r(h}rh}rh]rUros/fuerte/urdfdom_headersrassh ˆh }r (h }r!h}r"h]r#Uros-fuerte-urdfdom-headersr$assh}r%h}r&h]r'j$assh}r(h}r)h]r*j$assuuUconsole_bridge}r+(h}r,h}r-h]r.Uros/fuerte/console_bridger/assh ˆh }r0(h }r1h}r2h]r3Uros-fuerte-console-bridger4assh}r5h}r6h]r7j4assh}r8h}r9h]r:j4assuuU!object_recognition_reconstruction}r;(h}r<h}r=h]r>U,ros/fuerte/object_recognition_reconstructionr?assh ˆh }r@(h }rAh}rBh]rCU,ros-fuerte-object-recognition-reconstructionrDassh}rEh}rFh]rGjDassh}rHh}rIh]rJjDassuuU ecto_opencv}rK(h}rLh}rMh]rNUros/fuerte/ecto_opencvrOassh ˆh }rP(h }rQh}rRh]rSUros-fuerte-ecto-opencvrTassh}rUh}rVh]rWjTassh}rXh}rYh]rZjTassuuUflann}r[(h}r\h}r]h]r^Uros/fuerte/flannr_assh ˆh }r`(h }rah}rbh]rcUros-fuerte-flannrdassh}reh}rfh]rgjdassh}rhh}rih]rjjdassuuUlibccd}rk(h}rlh}rmh]rnUros/fuerte/libccdroassh ˆh }rp(h }rqh}rrh]rsUros-fuerte-libccdrtassh}ruh}rvh]rwjtassh}rxh}ryh]rzjtassuuU&object_recognition_transparent_objects}r{(h}r|h}r}h]r~U1ros/fuerte/object_recognition_transparent_objectsrassh ˆh }r€(h }rh}r‚h]rƒU1ros-fuerte-object-recognition-transparent-objectsr„assh}r…h}r†h]r‡j„assh}rˆh}r‰h]rŠj„assuuUflirtlib}r‹(h}rŒh}rh]rŽUros/fuerte/flirtlibrassh ˆh }r(h }r‘h}r’h]r“Uros-fuerte-flirtlibr”assh}r•h}r–h]r—j”assh}r˜h}r™h]ršj”assuuUecto_image_pipeline}r›(h}rœh}rh]ržUros/fuerte/ecto_image_pipelinerŸassh ˆh }r (h }r¡h}r¢h]r£Uros-fuerte-ecto-image-pipeliner¤assh}r¥h}r¦h]r§j¤assh}r¨h}r©h]rªj¤assuuUobject_recognition_tabletop}r«(h}r¬h}r­h]r®U&ros/fuerte/object_recognition_tabletopr¯assh ˆh }r°(h }r±h}r²h]r³U&ros-fuerte-object-recognition-tabletopr´assh}rµh}r¶h]r·j´assh}r¸h}r¹h]rºj´assuuU shape_tools}r»(h}r¼h}r½h]r¾Uros/fuerte/shape_toolsr¿assh ˆh }rÀ(h }rÁh}rÂh]rÃUros-fuerte-shape-toolsrÄassh}rÅh}rÆh]rÇjÄassh}rÈh}rÉh]rÊjÄassuuUgenlisp}rË(h}rÌh}rÍh]rÎUros/fuerte/genlisprÏassh ˆh }rÐ(h }rÑh}rÒh]rÓUros-fuerte-genlisprÔassh}rÕh}rÖh]r×jÔassh}rØh}rÙh]rÚjÔassuuUgenpy}rÛ(h}rÜh}rÝh]rÞUros/fuerte/genpyrßassh ˆh }rà(h }ráh}râh]rãUros-fuerte-genpyräassh}råh}ræh]rçjäassh}rèh}réh]rêjäassuuUpcl}rë(h}rìh}ríh]rîUros/fuerte/pclrïassh ˆh }rð(h }rñh}ròh]róUros-fuerte-pclrôassh}rõh}röh]r÷jôassh}røh}rùh]rújôassuuUros_comm}rû(h}rüh}rýh]rþUros/fuerte/ros_commrÿassh ˆh }r(h }rh}rh]rUros-fuerte-ros-commrassh}rh}rh]rjassh}rh}r h]r jassuuUstd_msgs}r (h}r h}r h]rUros/fuerte/std_msgsrassh ˆh }r(h }rh}rh]rUros-fuerte-std-msgsrassh}rh}rh]rjassh}rh}rh]rjassuuU octomap_msgs}r(h}rh}rh]rUros/fuerte/octomap_msgsrassh ˆh }r (h }r!h}r"h]r#Uros-fuerte-octomap-msgsr$assh}r%h}r&h]r'j$assh}r(h}r)h]r*j$assuuUopencv2}r+(h}r,h}r-h]r.Uros/fuerte/opencv2r/assh ˆh }r0(h }r1h}r2h]r3Uros-fuerte-opencv2r4assh}r5h}r6h]r7j4assh}r8h}r9h]r:j4assuuU langs-dev}r;(h}r<h}r=h]r>Uros/fuerte/langs-devr?assh ˆh }r@(h }rAh}rBh]rCUros-fuerte-langs-devrDassh}rEh}rFh]rGjDassh}rHh}rIh]rJjDassuuUlibg2o}rK(h}rLh}rMh]rNUros/fuerte/libg2orOassh ˆh }rP(h }rQh}rRh]rSUros-fuerte-libg2orTassh}rUh}rVh]rWjTassh}rXh}rYh]rZjTassuuUswig-wx}r[(h}r\h}r]h]r^Uros/fuerte/swig-wxr_assh ˆh }r`(h }rah}rbh]rcUros-fuerte-swig-wxrdassh}reh}rfh]rgjdassh}rhh}rih]rjjdassuuUlangs}rk(h}rlh}rmh]rnUros/fuerte/langsroassh ˆh }rp(h }rqh}rrh]rsUros-fuerte-langsrtassh}ruh}rvh]rwjtassh}rxh}ryh]rzjtassuuUfcl}r{(h}r|h}r}h]r~Uros/fuerte/fclrassh ˆh }r€(h }rh}r‚h]rƒUros-fuerte-fclr„assh}r…h}r†h]r‡j„assh}rˆh}r‰h]rŠj„assuuU common_msgs}r‹(h}rŒh}rh]rŽUros/fuerte/common_msgsrassh ˆh }r(h }r‘h}r’h]r“Uros-fuerte-common-msgsr”assh}r•h}r–h]r—j”assh}r˜h}r™h]ršj”assuuUecto_ros}r›(h}rœh}rh]ržUros/fuerte/ecto_rosrŸassh ˆh }r (h }r¡h}r¢h]r£Uros-fuerte-ecto-rosr¤assh}r¥h}r¦h]r§j¤assh}r¨h}r©h]rªj¤assuuUgenmsg}r«(h}r¬h}r­h]r®Uros/fuerte/genmsgr¯assh ˆh }r°(h }r±h}r²h]r³Uros-fuerte-genmsgr´assh}rµh}r¶h]r·j´assh}r¸h}r¹h]rºj´assuuUopencv_candidate}r»(h}r¼h}r½h]r¾Uros/fuerte/opencv_candidater¿assh ˆh }rÀ(h }rÁh}rÂh]rÃUros-fuerte-opencv-candidaterÄassh}rÅh}rÆh]rÇjÄassh}rÈh}rÉh]rÊjÄassuuUecto_pcl}rË(h}rÌh}rÍh]rÎUros/fuerte/ecto_pclrÏassh ˆh }rÐ(h }rÑh}rÒh]rÓUros-fuerte-ecto-pclrÔassh}rÕh}rÖh]r×jÔassh}rØh}rÙh]rÚjÔassuuUrosconsole_bridge}rÛ(h}rÜh}rÝh]rÞUros/fuerte/rosconsole_bridgerßassh ˆh }rà(h }ráh}râh]rãUros-fuerte-rosconsole-bridgeräassh}råh}ræh]rçjäassh}rèh}réh]rêjäassuuUsbpl}rë(h}rìh}ríh]rîUros/fuerte/sbplrïassh ˆh }rð(h }rñh}ròh]róUros-fuerte-sbplrôassh}rõh}röh]r÷jôassh}røh}rùh]rújôassuuU rosdoc_lite}rû(h}rüh}rýh]rþUros/fuerte/rosdoc_literÿassh ˆh }r(h }rh}rh]rUros-fuerte-rosdoc-literassh}rh}rh]rjassh}rh}r h]r jassuuUoctomap}r (h}r h}r h]rUros/fuerte/octomaprassh ˆh }r(h }rh}rh]rUros-fuerte-octomaprassh}rh}rh]rjassh}rh}rh]rjassuuUobject_recognition_tod}r(h}rh}rh]rU!ros/fuerte/object_recognition_todrassh ˆh }r (h }r!h}r"h]r#U!ros-fuerte-object-recognition-todr$assh}r%h}r&h]r'j$assh}r(h}r)h]r*j$assuuUurdfdom}r+(h}r,h}r-h]r.Uros/fuerte/urdfdomr/assh ˆh }r0(h }r1h}r2h]r3Uros-fuerte-urdfdomr4assh}r5h}r6h]r7j4assh}r8h}r9h]r:j4assuuUobject_recognition_linemod}r;(h}r<h}r=h]r>U%ros/fuerte/object_recognition_linemodr?assh ˆh }r@(h }rAh}rBh]rCU%ros-fuerte-object-recognition-linemodrDassh}rEh}rFh]rGjDassh}rHh}rIh]rJjDassuuUrandom_numbers}rK(h}rLh}rMh]rNUros/fuerte/random_numbersrOassh ˆh }rP(h }rQh}rRh]rSUros-fuerte-random-numbersrTassh}rUh}rVh]rWjTassh}rXh}rYh]rZjTassuuU ecto_openni}r[(h}r\h}r]h]r^Uros/fuerte/ecto_opennir_assh ˆh }r`(h }rah}rbh]rcUros-fuerte-ecto-opennirdassh}reh}rfh]rgjdassh}rhh}rih]rjjdassuuu.catkin_lint-1.6.6/test/sources.cache/c99ebea198e2ecdbf200ba85d2a079950836d92b.pickle000066400000000000000000002444011362025056600265410ustar00rootroot00000000000000€}q(U gmock_vendorq}q(Uosxq}qUhomebrewq}qUpackagesq]q Uros/dashing/googletestq assU_is_rosq ˆUubuntuq }q Ubionicq}qUaptq}qh]qUros-dashing-gmock-vendorqasssuUament_copyrightq}q(h}qh}qh]qUros/dashing/ament_lintqassh ˆh }qh}qh}qh]qUros-dashing-ament-copyrightqasssuUasync_web_server_cppq}q (h}q!h}q"h]q#U ros/dashing/async_web_server_cppq$assh ˆh }q%h}q&h}q'h]q(U ros-dashing-async-web-server-cppq)asssuUqt_gui_py_commonq*}q+(h}q,h}q-h]q.Uros/dashing/qt_gui_coreq/assh ˆh }q0h}q1h}q2h]q3Uros-dashing-qt-gui-py-commonq4asssuUament_cmake_lint_cmakeq5}q6(h}q7h}q8h]q9Uros/dashing/ament_lintq:assh ˆh }q;h}qU"ros-dashing-ament-cmake-lint-cmakeq?asssuUdwb_msgsq@}qA(h}qBh}qCh]qDUros/dashing/navigation2qEassh ˆh }qFh}qGh}qHh]qIUros-dashing-dwb-msgsqJasssuUuncrustify_vendorqK}qL(h}qMh}qNh]qOUros/dashing/uncrustify_vendorqPassh ˆh }qQh}qRh}qSh]qTUros-dashing-uncrustify-vendorqUasssuU nav2_amclqV}qW(h}qXh}qYh]qZUros/dashing/navigation2q[assh ˆh }q\h}q]h}q^h]q_Uros-dashing-nav2-amclq`asssuU teleop_toolsqa}qb(h}qch}qdh]qeUros/dashing/teleop_toolsqfassh ˆh }qgh}qhh}qih]qjUros-dashing-teleop-toolsqkasssuUgps_umdql}qm(h}qnh}qoh]qpUros/dashing/gps_umdqqassh ˆh }qrh}qsh}qth]quUros-dashing-gps-umdqvasssuUdelphi_mrr_msgsqw}qx(h}qyh}qzh]q{Uros/dashing/astuff_sensor_msgsq|assh ˆh }q}h}q~h}qh]q€Uros-dashing-delphi-mrr-msgsqasssuU rqt_publisherq‚}qƒ(h}q„h}q…h]q†Uros/dashing/rqt_publisherq‡assh ˆh }qˆh}q‰h}qŠh]q‹Uros-dashing-rqt-publisherqŒasssuUtracetools_traceq}qŽ(h}qh}qh]q‘Uros/dashing/ros2_tracingq’assh ˆh }q“h}q”h}q•h]q–Uros-dashing-tracetools-traceq—asssuUecl_liteq˜}q™(h}qšh}q›h]qœUros/dashing/ecl_liteqassh ˆh }qžh}qŸh}q h]q¡Uros-dashing-ecl-liteq¢asssuUros_baseq£}q¤(h}q¥h}q¦h]q§Uros/dashing/variantsq¨assh ˆh }q©h}qªh}q«h]q¬Uros-dashing-ros-baseq­asssuU sick_scan2q®}q¯(h}q°h}q±h]q²Uros/dashing/sick_scan2q³assh ˆh }q´h}qµh}q¶h]q·Uros-dashing-sick-scan2q¸asssuU ament_pclintq¹}qº(h}q»h}q¼h]q½Uros/dashing/ament_lintq¾assh ˆh }q¿h}qÀh}qÁh]qÂUros-dashing-ament-pclintqÃasssuUautoware_auto_cmakeqÄ}qÅ(h}qÆh}qÇh]qÈUros/dashing/Autoware.AutoqÉassh ˆh }qÊh}qËh}qÌh]qÍUros-dashing-autoware-auto-cmakeqÎasssuU ecl_streamsqÏ}qÐ(h}qÑh}qÒh]qÓUros/dashing/ecl_coreqÔassh ˆh }qÕh}qÖh}q×h]qØUros-dashing-ecl-streamsqÙasssuUros2msgqÚ}qÛ(h}qÜh}qÝh]qÞUros/dashing/ros2cliqßassh ˆh }qàh}qáh}qâh]qãUros-dashing-ros2msgqäasssuU rqt_topicqå}qæ(h}qçh}qèh]qéUros/dashing/rqt_topicqêassh ˆh }qëh}qìh}qíh]qîUros-dashing-rqt-topicqïasssuUdummy_map_serverqð}qñ(h}qòh}qóh]qôUros/dashing/demosqõassh ˆh }qöh}q÷h}qøh]qùUros-dashing-dummy-map-serverqúasssuUecl_ioqû}qü(h}qýh}qþh]qÿUros/dashing/ecl_literassh ˆh }rh}rh}rh]rUros-dashing-ecl-iorasssuUcyclonedds_cmake_moduler}r(h}rh}r h]r Uros/dashing/rmw_cycloneddsr assh ˆh }r h}r h}rh]rU#ros-dashing-cyclonedds-cmake-modulerasssuUrqt_service_callerr}r(h}rh}rh]rUros/dashing/rqt_service_callerrassh ˆh }rh}rh}rh]rUros-dashing-rqt-service-callerrasssuUfastcdrr}r(h}rh}rh]r Uros/dashing/fastcdrr!assh ˆh }r"h}r#h}r$h]r%Uros-dashing-fastcdrr&asssuUrosbag2_storager'}r((h}r)h}r*h]r+Uros/dashing/rosbag2r,assh ˆh }r-h}r.h}r/h]r0Uros-dashing-rosbag2-storager1asssuU!examples_rclcpp_minimal_publisherr2}r3(h}r4h}r5h]r6Uros/dashing/examplesr7assh ˆh }r8h}r9h}r:h]r;U-ros-dashing-examples-rclcpp-minimal-publisherr<asssuUturtlebot3_navigation2r=}r>(h}r?h}r@h]rAUros/dashing/turtlebot3rBassh ˆh }rCh}rDh}rEh]rFU"ros-dashing-turtlebot3-navigation2rGasssuU librealsense2rH}rI(h}rJh}rKh]rLUros/dashing/librealsenserMassh ˆh }rNh}rOh}rPh]rQUros-dashing-librealsense2rRasssuUdemo_nodes_cpp_nativerS}rT(h}rUh}rVh]rWUros/dashing/demosrXassh ˆh }rYh}rZh}r[h]r\U!ros-dashing-demo-nodes-cpp-nativer]asssuU nav2_bringupr^}r_(h}r`h}rah]rbUros/dashing/navigation2rcassh ˆh }rdh}reh}rfh]rgUros-dashing-nav2-bringuprhasssuUcloudwatch_metrics_collectorri}rj(h}rkh}rlh]rmU(ros/dashing/cloudwatch_metrics_collectorrnassh ˆh }roh}rph}rqh]rrU(ros-dashing-cloudwatch-metrics-collectorrsasssuUpcl_conversionsrt}ru(h}rvh}rwh]rxUros/dashing/pcl_conversionsryassh ˆh }rzh}r{h}r|h]r}Uros-dashing-pcl-conversionsr~asssuU ros_workspacer}r€(h}rh}r‚h]rƒUros/dashing/ros_workspacer„assh ˆh }r…h}r†h}r‡h]rˆUros-dashing-ros-workspacer‰asssuUtracetools_analysisrŠ}r‹(h}rŒh}rh]rŽUros/dashing/tracetools_analysisrassh ˆh }rh}r‘h}r’h]r“Uros-dashing-tracetools-analysisr”asssuU rqt_consoler•}r–(h}r—h}r˜h]r™Uros/dashing/rqt_consoleršassh ˆh }r›h}rœh}rh]ržUros-dashing-rqt-consolerŸasssuU ecl_sigslotsr }r¡(h}r¢h}r£h]r¤Uros/dashing/ecl_corer¥assh ˆh }r¦h}r§h}r¨h]r©Uros-dashing-ecl-sigslotsrªasssuU osrf_pycommonr«}r¬(h}r­h}r®h]r¯Uros/dashing/osrf_pycommonr°assh ˆh }r±h}r²h}r³h]r´Uros-dashing-osrf-pycommonrµasssuU velodyne_noder¶}r·(h}r¸h}r¹h]rºUros/dashing/Autoware.Autor»assh ˆh }r¼h}r½h}r¾h]r¿Uros-dashing-velodyne-noderÀasssuUnav2_behavior_treerÁ}rÂ(h}rÃh}rÄh]rÅUros/dashing/navigation2rÆassh ˆh }rÇh}rÈh}rÉh]rÊUros-dashing-nav2-behavior-treerËasssuUrqt_guirÌ}rÍ(h}rÎh}rÏh]rÐUros/dashing/rqtrÑassh ˆh }rÒh}rÓh}rÔh]rÕUros-dashing-rqt-guirÖasssuUament_lint_cmaker×}rØ(h}rÙh}rÚh]rÛUros/dashing/ament_lintrÜassh ˆh }rÝh}rÞh}rßh]ràUros-dashing-ament-lint-cmakeráasssuUswri_prefix_toolsrâ}rã(h}räh}råh]ræUros/dashing/marti_commonrçassh ˆh }rèh}réh}rêh]rëUros-dashing-swri-prefix-toolsrìasssuU nav2_commonrí}rî(h}rïh}rðh]rñUros/dashing/navigation2ròassh ˆh }róh}rôh}rõh]röUros-dashing-nav2-commonr÷asssuU rclcpp_actionrø}rù(h}rúh}rûh]rüUros/dashing/rclcpprýassh ˆh }rþh}rÿh}rh]rUros-dashing-rclcpp-actionrasssuUvisualization_msgsr}r(h}rh}rh]rUros/dashing/common_interfacesrassh ˆh }r h}r h}r h]r Uros-dashing-visualization-msgsr asssuU ament_cpplintr}r(h}rh}rh]rUros/dashing/ament_lintrassh ˆh }rh}rh}rh]rUros-dashing-ament-cpplintrasssuU ecl_threadsr}r(h}rh}rh]rUros/dashing/ecl_corerassh ˆh }rh}r h}r!h]r"Uros-dashing-ecl-threadsr#asssuUswri_opencv_utilr$}r%(h}r&h}r'h]r(Uros/dashing/marti_commonr)assh ˆh }r*h}r+h}r,h]r-Uros-dashing-swri-opencv-utilr.asssuUament_cmake_clang_formatr/}r0(h}r1h}r2h]r3Uros/dashing/ament_lintr4assh ˆh }r5h}r6h}r7h]r8U$ros-dashing-ament-cmake-clang-formatr9asssuUecl_corer:}r;(h}r<h}r=h]r>Uros/dashing/ecl_corer?assh ˆh }r@h}rAh}rBh]rCUros-dashing-ecl-corerDasssuU ecl_buildrE}rF(h}rGh}rHh]rIUros/dashing/ecl_toolsrJassh ˆh }rKh}rLh}rMh]rNUros-dashing-ecl-buildrOasssuU ros2launchrP}rQ(h}rRh}rSh]rTUros/dashing/launch_rosrUassh ˆh }rVh}rWh}rXh]rYUros-dashing-ros2launchrZasssuUobject_analytics_noder[}r\(h}r]h}r^h]r_U!ros/dashing/ros2_object_analyticsr`assh ˆh }rah}rbh}rch]rdU!ros-dashing-object-analytics-nodereasssuUtracetools_readrf}rg(h}rhh}rih]rjUros/dashing/ros2_tracingrkassh ˆh }rlh}rmh}rnh]roUros-dashing-tracetools-readrpasssuUswri_route_utilrq}rr(h}rsh}rth]ruUros/dashing/marti_commonrvassh ˆh }rwh}rxh}ryh]rzUros-dashing-swri-route-utilr{asssuUnav2_bt_navigatorr|}r}(h}r~h}rh]r€Uros/dashing/navigation2rassh ˆh }r‚h}rƒh}r„h]r…Uros-dashing-nav2-bt-navigatorr†asssuU ros2lifecycler‡}rˆ(h}r‰h}rŠh]r‹Uros/dashing/ros2clirŒassh ˆh }rh}rŽh}rh]rUros-dashing-ros2lifecycler‘asssuU test_msgsr’}r“(h}r”h}r•h]r–Uros/dashing/rcl_interfacesr—assh ˆh }r˜h}r™h}ršh]r›Uros-dashing-test-msgsrœasssuUament_cmake_export_dependenciesr}rž(h}rŸh}r h]r¡Uros/dashing/ament_cmaker¢assh ˆh }r£h}r¤h}r¥h]r¦U+ros-dashing-ament-cmake-export-dependenciesr§asssuUexamples_rclpy_minimal_servicer¨}r©(h}rªh}r«h]r¬Uros/dashing/examplesr­assh ˆh }r®h}r¯h}r°h]r±U*ros-dashing-examples-rclpy-minimal-servicer²asssuUexamples_rclcpp_minimal_timerr³}r´(h}rµh}r¶h]r·Uros/dashing/examplesr¸assh ˆh }r¹h}rºh}r»h]r¼U)ros-dashing-examples-rclcpp-minimal-timerr½asssuUautomotive_navigation_msgsr¾}r¿(h}rÀh}rÁh]rÂU$ros/dashing/automotive_autonomy_msgsrÃassh ˆh }rÄh}rÅh}rÆh]rÇU&ros-dashing-automotive-navigation-msgsrÈasssuUhungarian_assignerrÉ}rÊ(h}rËh}rÌh]rÍUros/dashing/Autoware.AutorÎassh ˆh }rÏh}rÐh}rÑh]rÒUros-dashing-hungarian-assignerrÓasssuUros2clirÔ}rÕ(h}rÖh}r×h]rØUros/dashing/ros2clirÙassh ˆh }rÚh}rÛh}rÜh]rÝUros-dashing-ros2clirÞasssuUrosidl_typesupport_cpprß}rà(h}ráh}râh]rãUros/dashing/rosidl_typesupporträassh ˆh }råh}ræh}rçh]rèU"ros-dashing-rosidl-typesupport-cppréasssuU fmi_adapterrê}rë(h}rìh}ríh]rîUros/dashing/fmi_adapter_ros2rïassh ˆh }rðh}rñh}ròh]róUros-dashing-fmi-adapterrôasssuUbehaviortree_cpprõ}rö(h}r÷h}røh]rùUros/dashing/behaviortree_cpprúassh ˆh }rûh}rüh}rýh]rþUros-dashing-behaviortree-cpprÿasssuU motion_modelr}r(h}rh}rh]rUros/dashing/Autoware.Autorassh ˆh }rh}rh}rh]r Uros-dashing-motion-modelr asssuU ecl_eigenr }r (h}r h}rh]rUros/dashing/ecl_corerassh ˆh }rh}rh}rh]rUros-dashing-ecl-eigenrasssuU vision_opencvr}r(h}rh}rh]rUros/dashing/vision_opencvrassh ˆh }rh}rh}rh]rUros-dashing-vision-opencvr asssuUlifecycle_msgsr!}r"(h}r#h}r$h]r%Uros/dashing/rcl_interfacesr&assh ˆh }r'h}r(h}r)h]r*Uros-dashing-lifecycle-msgsr+asssuUrosbag2_bag_v2_pluginsr,}r-(h}r.h}r/h]r0Uros/dashing/rosbag2_bag_v2r1assh ˆh }r2h}r3h}r4h]r5U"ros-dashing-rosbag2-bag-v2-pluginsr6asssuUament_cmake_pythonr7}r8(h}r9h}r:h]r;Uros/dashing/ament_cmaker<assh ˆh }r=h}r>h}r?h]r@Uros-dashing-ament-cmake-pythonrAasssuUament_cmake_cppcheckrB}rC(h}rDh}rEh]rFUros/dashing/ament_lintrGassh ˆh }rHh}rIh}rJh]rKU ros-dashing-ament-cmake-cppcheckrLasssuUtinydir_vendorrM}rN(h}rOh}rPh]rQUros/dashing/tinydir_vendorrRassh ˆh }rSh}rTh}rUh]rVUros-dashing-tinydir-vendorrWasssuU class_loaderrX}rY(h}rZh}r[h]r\Uros/dashing/class_loaderr]assh ˆh }r^h}r_h}r`h]raUros-dashing-class-loaderrbasssuUrqt_robot_steeringrc}rd(h}reh}rfh]rgUros/dashing/rqt_robot_steeringrhassh ˆh }rih}rjh}rkh]rlUros-dashing-rqt-robot-steeringrmasssuUswri_system_utilrn}ro(h}rph}rqh]rrUros/dashing/marti_commonrsassh ˆh }rth}ruh}rvh]rwUros-dashing-swri-system-utilrxasssuUgeographic_msgsry}rz(h}r{h}r|h]r}Uros/dashing/geographic_infor~assh ˆh }rh}r€h}rh]r‚Uros-dashing-geographic-msgsrƒasssuUros2runr„}r…(h}r†h}r‡h]rˆUros/dashing/ros2clir‰assh ˆh }rŠh}r‹h}rŒh]rUros-dashing-ros2runrŽasssuUray_ground_classifierr}r(h}r‘h}r’h]r“Uros/dashing/Autoware.Autor”assh ˆh }r•h}r–h}r—h]r˜U!ros-dashing-ray-ground-classifierr™asssuU sensor_msgsrš}r›(h}rœh}rh]ržUros/dashing/common_interfacesrŸassh ˆh }r h}r¡h}r¢h]r£Uros-dashing-sensor-msgsr¤asssuUecl_sigslots_liter¥}r¦(h}r§h}r¨h]r©Uros/dashing/ecl_literªassh ˆh }r«h}r¬h}r­h]r®Uros-dashing-ecl-sigslots-liter¯asssuU ament_xmllintr°}r±(h}r²h}r³h]r´Uros/dashing/ament_lintrµassh ˆh }r¶h}r·h}r¸h]r¹Uros-dashing-ament-xmllintrºasssuU ecl_core_appsr»}r¼(h}r½h}r¾h]r¿Uros/dashing/ecl_corerÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-dashing-ecl-core-appsrÅasssuUvoxel_grid_nodesrÆ}rÇ(h}rÈh}rÉh]rÊUros/dashing/Autoware.AutorËassh ˆh }rÌh}rÍh}rÎh]rÏUros-dashing-voxel-grid-nodesrÐasssuU gazebo_rosrÑ}rÒ(h}rÓh}rÔh]rÕUros/dashing/gazebo_ros_pkgsrÖassh ˆh }r×h}rØh}rÙh]rÚUros-dashing-gazebo-rosrÛasssuUlaunch_testing_rosrÜ}rÝ(h}rÞh}rßh]ràUros/dashing/launch_rosráassh ˆh }râh}rãh}räh]råUros-dashing-launch-testing-rosræasssuUament_cmake_export_interfacesrç}rè(h}réh}rêh]rëUros/dashing/ament_cmakerìassh ˆh }ríh}rîh}rïh]rðU)ros-dashing-ament-cmake-export-interfacesrñasssuUament_cmake_gtestrò}ró(h}rôh}rõh]röUros/dashing/ament_cmaker÷assh ˆh }røh}rùh}rúh]rûUros-dashing-ament-cmake-gtestrüasssuUopensplice_cmake_modulerý}rþ(h}rÿh}rh]rU)ros/dashing/rosidl_typesupport_opensplicerassh ˆh }rh}rh}rh]rU#ros-dashing-opensplice-cmake-modulerasssuUecl_mathr}r (h}r h}r h]r Uros/dashing/ecl_corer assh ˆh }rh}rh}rh]rUros-dashing-ecl-mathrasssuUeigen3_cmake_moduler}r(h}rh}rh]rUros/dashing/eigen3_cmake_modulerassh ˆh }rh}rh}rh]rUros-dashing-eigen3-cmake-modulerasssuUecl_linear_algebrar}r(h}r h}r!h]r"Uros/dashing/ecl_corer#assh ˆh }r$h}r%h}r&h]r'Uros-dashing-ecl-linear-algebrar(asssuU logging_demor)}r*(h}r+h}r,h]r-Uros/dashing/demosr.assh ˆh }r/h}r0h}r1h]r2Uros-dashing-logging-demor3asssuUgazebo_ros_pkgsr4}r5(h}r6h}r7h]r8Uros/dashing/gazebo_ros_pkgsr9assh ˆh }r:h}r;h}r<h]r=Uros-dashing-gazebo-ros-pkgsr>asssuUnovatel_gps_driverr?}r@(h}rAh}rBh]rCUros/dashing/novatel_gps_driverrDassh ˆh }rEh}rFh}rGh]rHUros-dashing-novatel-gps-driverrIasssuUobject_analytics_msgsrJ}rK(h}rLh}rMh]rNU!ros/dashing/ros2_object_analyticsrOassh ˆh }rPh}rQh}rRh]rSU!ros-dashing-object-analytics-msgsrTasssuU serial_driverrU}rV(h}rWh}rXh]rYUros/dashing/Autoware.AutorZassh ˆh }r[h}r\h}r]h]r^Uros-dashing-serial-driverr_asssuU joy_teleopr`}ra(h}rbh}rch]rdUros/dashing/teleop_toolsreassh ˆh }rfh}rgh}rhh]riUros-dashing-joy-teleoprjasssuUswri_serial_utilrk}rl(h}rmh}rnh]roUros/dashing/marti_commonrpassh ˆh }rqh}rrh}rsh]rtUros-dashing-swri-serial-utilruasssuUrqt_srvrv}rw(h}rxh}ryh]rzUros/dashing/rqt_srvr{assh ˆh }r|h}r}h}r~h]rUros-dashing-rqt-srvr€asssuUecl_ipcr}r‚(h}rƒh}r„h]r…Uros/dashing/ecl_corer†assh ˆh }r‡h}rˆh}r‰h]rŠUros-dashing-ecl-ipcr‹asssuU py_trees_jsrŒ}r(h}rŽh}rh]rUros/dashing/py_trees_jsr‘assh ˆh }r’h}r“h}r”h]r•Uros-dashing-py-trees-jsr–asssuU tracetoolsr—}r˜(h}r™h}ršh]r›Uros/dashing/ros2_tracingrœassh ˆh }rh}ržh}rŸh]r Uros-dashing-tracetoolsr¡asssuU$examples_rclpy_minimal_action_serverr¢}r£(h}r¤h}r¥h]r¦Uros/dashing/examplesr§assh ˆh }r¨h}r©h}rªh]r«U0ros-dashing-examples-rclpy-minimal-action-serverr¬asssuUament_cmake_clang_tidyr­}r®(h}r¯h}r°h]r±Uros/dashing/ament_lintr²assh ˆh }r³h}r´h}rµh]r¶U"ros-dashing-ament-cmake-clang-tidyr·asssuUrosidl_generator_dds_idlr¸}r¹(h}rºh}r»h]r¼Uros/dashing/rosidl_ddsr½assh ˆh }r¾h}r¿h}rÀh]rÁU$ros-dashing-rosidl-generator-dds-idlrÂasssuUfile_managementrÃ}rÄ(h}rÅh}rÆh]rÇUros/dashing/cloudwatch_commonrÈassh ˆh }rÉh}rÊh}rËh]rÌUros-dashing-file-managementrÍasssuUrosidl_typesupport_fastrtps_cpprÎ}rÏ(h}rÐh}rÑh]rÒU'ros/dashing/rosidl_typesupport_fastrtpsrÓassh ˆh }rÔh}rÕh}rÖh]r×U+ros-dashing-rosidl-typesupport-fastrtps-cpprØasssuUcloudwatch_loggerrÙ}rÚ(h}rÛh}rÜh]rÝUros/dashing/cloudwatch_loggerrÞassh ˆh }rßh}ràh}ráh]râUros-dashing-cloudwatch-loggerrãasssuUcloudwatch_logs_commonrä}rå(h}ræh}rçh]rèUros/dashing/cloudwatch_commonréassh ˆh }rêh}rëh}rìh]ríU"ros-dashing-cloudwatch-logs-commonrîasssuUturtlebot3_simulationsrï}rð(h}rñh}ròh]róU"ros/dashing/turtlebot3_simulationsrôassh ˆh }rõh}röh}r÷h]røU"ros-dashing-turtlebot3-simulationsrùasssuU ecl_consolerú}rû(h}rüh}rýh]rþUros/dashing/ecl_literÿassh ˆh }rh}rh}rh]rUros-dashing-ecl-consolerasssuU lifecycler}r(h}rh}rh]r Uros/dashing/demosr assh ˆh }r h}r h}r h]rUros-dashing-lifecyclerasssuU tf2_eigenr}r(h}rh}rh]rUros/dashing/geometry2rassh ˆh }rh}rh}rh]rUros-dashing-tf2-eigenrasssuU rqt_tf_treer}r(h}rh}rh]rUros/dashing/rqt_tf_treer assh ˆh }r!h}r"h}r#h]r$Uros-dashing-rqt-tf-treer%asssuU rosidl_parserr&}r'(h}r(h}r)h]r*Uros/dashing/rosidlr+assh ˆh }r,h}r-h}r.h]r/Uros-dashing-rosidl-parserr0asssuUfastrtpsr1}r2(h}r3h}r4h]r5Uros/dashing/fastrtpsr6assh ˆh }r7h}r8h}r9h]r:Uros-dashing-fastrtpsr;asssuUrcl_logging_log4cxxr<}r=(h}r>h}r?h]r@Uros/dashing/rcl_loggingrAassh ˆh }rBh}rCh}rDh]rEUros-dashing-rcl-logging-log4cxxrFasssuUderived_object_msgsrG}rH(h}rIh}rJh]rKUros/dashing/astuff_sensor_msgsrLassh ˆh }rMh}rNh}rOh]rPUros-dashing-derived-object-msgsrQasssuUtheora_image_transportrR}rS(h}rTh}rUh]rVU#ros/dashing/image_transport_pluginsrWassh ˆh }rXh}rYh}rZh]r[U"ros-dashing-theora-image-transportr\asssuU geometry_msgsr]}r^(h}r_h}r`h]raUros/dashing/common_interfacesrbassh ˆh }rch}rdh}reh]rfUros-dashing-geometry-msgsrgasssuU ros2multicastrh}ri(h}rjh}rkh]rlUros/dashing/ros2clirmassh ˆh }rnh}roh}rph]rqUros-dashing-ros2multicastrrasssuUmarti_visualization_msgsrs}rt(h}ruh}rvh]rwUros/dashing/marti_messagesrxassh ˆh }ryh}rzh}r{h]r|U$ros-dashing-marti-visualization-msgsr}asssuUlex_common_msgsr~}r(h}r€h}rh]r‚Uros/dashing/lex_noderƒassh ˆh }r„h}r…h}r†h]r‡Uros-dashing-lex-common-msgsrˆasssuUament_lint_commonr‰}rŠ(h}r‹h}rŒh]rUros/dashing/ament_lintrŽassh ˆh }rh}rh}r‘h]r’Uros-dashing-ament-lint-commonr“asssuU dataflow_liter”}r•(h}r–h}r—h]r˜Uros/dashing/cloudwatch_commonr™assh ˆh }ršh}r›h}rœh]rUros-dashing-dataflow-literžasssuUttsrŸ}r (h}r¡h}r¢h]r£Uros/dashing/ttsr¤assh ˆh }r¥h}r¦h}r§h]r¨Uros-dashing-ttsr©asssuUnav2_map_serverrª}r«(h}r¬h}r­h]r®Uros/dashing/navigation2r¯assh ˆh }r°h}r±h}r²h]r³Uros-dashing-nav2-map-serverr´asssuUhealth_metric_collectorrµ}r¶(h}r·h}r¸h]r¹U#ros/dashing/health_metric_collectorrºassh ˆh }r»h}r¼h}r½h]r¾U#ros-dashing-health-metric-collectorr¿asssuUurdfrÀ}rÁ(h}rÂh}rÃh]rÄUros/dashing/urdfrÅassh ˆh }rÆh}rÇh}rÈh]rÉUros-dashing-urdfrÊasssuUtts_interfacesrË}rÌ(h}rÍh}rÎh]rÏUros/dashing/ttsrÐassh ˆh }rÑh}rÒh}rÓh]rÔUros-dashing-tts-interfacesrÕasssuUresource_retrieverrÖ}r×(h}rØh}rÙh]rÚUros/dashing/resource_retrieverrÛassh ˆh }rÜh}rÝh}rÞh]rßUros-dashing-resource-retrieverràasssuUdelphi_esr_msgsrá}râ(h}rãh}räh]råUros/dashing/astuff_sensor_msgsræassh ˆh }rçh}rèh}réh]rêUros-dashing-delphi-esr-msgsrëasssuU rqt_graphrì}rí(h}rîh}rïh]rðUros/dashing/rqt_graphrñassh ˆh }ròh}róh}rôh]rõUros-dashing-rqt-graphröasssuUrviz2r÷}rø(h}rùh}rúh]rûUros/dashing/rvizrüassh ˆh }rýh}rþh}rÿh]rUros-dashing-rviz2rasssuUqt_guir}r(h}rh}rh]rUros/dashing/qt_gui_corerassh ˆh }rh}r h}r h]r Uros-dashing-qt-guir asssuUomplr }r(h}rh}rh]rUros/dashing/omplrassh ˆh }rh}rh}rh]rUros-dashing-omplrasssuUaction_tutorialsr}r(h}rh}rh]rUros/dashing/demosrassh ˆh }rh}rh}r h]r!Uros-dashing-action-tutorialsr"asssuUros2srvr#}r$(h}r%h}r&h]r'Uros/dashing/ros2clir(assh ˆh }r)h}r*h}r+h]r,Uros-dashing-ros2srvr-asssuUpoint_cloud_fusionr.}r/(h}r0h}r1h]r2Uros/dashing/Autoware.Autor3assh ˆh }r4h}r5h}r6h]r7Uros-dashing-point-cloud-fusionr8asssuUlibyaml_vendorr9}r:(h}r;h}r<h]r=Uros/dashing/libyaml_vendorr>assh ˆh }r?h}r@h}rAh]rBUros-dashing-libyaml-vendorrCasssuUrttestrD}rE(h}rFh}rGh]rHUros/dashing/realtime_supportrIassh ˆh }rJh}rKh}rLh]rMUros-dashing-rttestrNasssuUament_index_cpprO}rP(h}rQh}rRh]rSUros/dashing/ament_indexrTassh ˆh }rUh}rVh}rWh]rXUros-dashing-ament-index-cpprYasssuUrviz_ogre_vendorrZ}r[(h}r\h}r]h]r^Uros/dashing/rvizr_assh ˆh }r`h}rah}rbh]rcUros-dashing-rviz-ogre-vendorrdasssuUeigen_stl_containersre}rf(h}rgh}rhh]riU ros/dashing/eigen_stl_containersrjassh ˆh }rkh}rlh}rmh]rnU ros-dashing-eigen-stl-containersroasssuUturtlebot3_cartographerrp}rq(h}rrh}rsh]rtUros/dashing/turtlebot3ruassh ˆh }rvh}rwh}rxh]ryU#ros-dashing-turtlebot3-cartographerrzasssuUrmw_cyclonedds_cppr{}r|(h}r}h}r~h]rUros/dashing/rmw_cycloneddsr€assh ˆh }rh}r‚h}rƒh]r„Uros-dashing-rmw-cyclonedds-cppr…asssuU poco_vendorr†}r‡(h}rˆh}r‰h]rŠUros/dashing/poco_vendorr‹assh ˆh }rŒh}rh}rŽh]rUros-dashing-poco-vendorrasssuUlex_noder‘}r’(h}r“h}r”h]r•Uros/dashing/lex_noder–assh ˆh }r—h}r˜h}r™h]ršUros-dashing-lex-noder›asssuU nav_2d_utilsrœ}r(h}ržh}rŸh]r Uros/dashing/navigation2r¡assh ˆh }r¢h}r£h}r¤h]r¥Uros-dashing-nav-2d-utilsr¦asssuUpython_cmake_moduler§}r¨(h}r©h}rªh]r«Uros/dashing/rosidl_pythonr¬assh ˆh }r­h}r®h}r¯h]r°Uros-dashing-python-cmake-moduler±asssuU rqt_actionr²}r³(h}r´h}rµh]r¶Uros/dashing/rqt_actionr·assh ˆh }r¸h}r¹h}rºh]r»Uros-dashing-rqt-actionr¼asssuUxacror½}r¾(h}r¿h}rÀh]rÁUros/dashing/xacrorÂassh ˆh }rÃh}rÄh}rÅh]rÆUros-dashing-xacrorÇasssuUrosbag2rÈ}rÉ(h}rÊh}rËh]rÌUros/dashing/rosbag2rÍassh ˆh }rÎh}rÏh}rÐh]rÑUros-dashing-rosbag2rÒasssuUament_cmake_noserÓ}rÔ(h}rÕh}rÖh]r×Uros/dashing/ament_cmakerØassh ˆh }rÙh}rÚh}rÛh]rÜUros-dashing-ament-cmake-noserÝasssuUintra_process_demorÞ}rß(h}ràh}ráh]râUros/dashing/demosrãassh ˆh }räh}råh}ræh]rçUros-dashing-intra-process-demorèasssuU turtlebot3ré}rê(h}rëh}rìh]ríUros/dashing/turtlebot3rîassh ˆh }rïh}rðh}rñh]ròUros-dashing-turtlebot3róasssuU pluginlibrô}rõ(h}röh}r÷h]røUros/dashing/pluginlibrùassh ˆh }rúh}rûh}rüh]rýUros-dashing-pluginlibrþasssuUament_cmake_export_definitionsrÿ}r(h}rh}rh]rUros/dashing/ament_cmakerassh ˆh }rh}rh}rh]rU*ros-dashing-ament-cmake-export-definitionsr asssuUrqt_msgr }r (h}r h}r h]rUros/dashing/rqt_msgrassh ˆh }rh}rh}rh]rUros-dashing-rqt-msgrasssuU rosbag2_testsr}r(h}rh}rh]rUros/dashing/rosbag2rassh ˆh }rh}rh}rh]rUros-dashing-rosbag2-testsrasssuUsophusr }r!(h}r"h}r#h]r$Uros/dashing/sophusr%assh ˆh }r&h}r'h}r(h]r)Uros-dashing-sophusr*asssuUswri_math_utilr+}r,(h}r-h}r.h]r/Uros/dashing/marti_commonr0assh ˆh }r1h}r2h}r3h]r4Uros-dashing-swri-math-utilr5asssuU self_testr6}r7(h}r8h}r9h]r:Uros/dashing/diagnosticsr;assh ˆh }r<h}r=h}r>h]r?Uros-dashing-self-testr@asssuUament_clang_tidyrA}rB(h}rCh}rDh]rEUros/dashing/ament_lintrFassh ˆh }rGh}rHh}rIh]rJUros-dashing-ament-clang-tidyrKasssuU nav2_utilrL}rM(h}rNh}rOh]rPUros/dashing/navigation2rQassh ˆh }rRh}rSh}rTh]rUUros-dashing-nav2-utilrVasssuU launch_rosrW}rX(h}rYh}rZh]r[Uros/dashing/launch_rosr\assh ˆh }r]h}r^h}r_h]r`Uros-dashing-launch-rosraasssuUros2noderb}rc(h}rdh}reh]rfUros/dashing/ros2clirgassh ˆh }rhh}rih}rjh]rkUros-dashing-ros2noderlasssuU slam_toolboxrm}rn(h}roh}rph]rqUros/dashing/slam_toolboxrrassh ˆh }rsh}rth}ruh]rvUros-dashing-slam-toolboxrwasssuUcartographer_rosrx}ry(h}rzh}r{h]r|Uros/dashing/cartographer_rosr}assh ˆh }r~h}rh}r€h]rUros-dashing-cartographer-rosr‚asssuUtf2_msgsrƒ}r„(h}r…h}r†h]r‡Uros/dashing/geometry2rˆassh ˆh }r‰h}rŠh}r‹h]rŒUros-dashing-tf2-msgsrasssuU qt_gui_apprŽ}r(h}rh}r‘h]r’Uros/dashing/qt_gui_corer“assh ˆh }r”h}r•h}r–h]r—Uros-dashing-qt-gui-appr˜asssuUexamples_rclpy_minimal_clientr™}rš(h}r›h}rœh]rUros/dashing/examplesržassh ˆh }rŸh}r h}r¡h]r¢U)ros-dashing-examples-rclpy-minimal-clientr£asssuU rcl_lifecycler¤}r¥(h}r¦h}r§h]r¨Uros/dashing/rclr©assh ˆh }rªh}r«h}r¬h]r­Uros-dashing-rcl-lifecycler®asssuUros2pkgr¯}r°(h}r±h}r²h]r³Uros/dashing/ros2clir´assh ˆh }rµh}r¶h}r·h]r¸Uros-dashing-ros2pkgr¹asssuU system_modesrº}r»(h}r¼h}r½h]r¾Uros/dashing/system_modesr¿assh ˆh }rÀh}rÁh}rÂh]rÃUros-dashing-system-modesrÄasssuUrosbridge_suiterÅ}rÆ(h}rÇh}rÈh]rÉUros/dashing/rosbridge_suiterÊassh ˆh }rËh}rÌh}rÍh]rÎUros-dashing-rosbridge-suiterÏasssuUh264_encoder_corerÐ}rÑ(h}rÒh}rÓh]rÔUros/dashing/h264_encoder_corerÕassh ˆh }rÖh}r×h}rØh]rÙUros-dashing-h264-encoder-corerÚasssuU object_msgsrÛ}rÜ(h}rÝh}rÞh]rßUros/dashing/object_msgsràassh ˆh }ráh}râh}rãh]räUros-dashing-object-msgsråasssuUexamples_rclcpp_minimal_clientræ}rç(h}rèh}réh]rêUros/dashing/examplesrëassh ˆh }rìh}ríh}rîh]rïU*ros-dashing-examples-rclcpp-minimal-clientrðasssuUament_downloadrñ}rò(h}róh}rôh]rõUros/dashing/ament_downloadröassh ˆh }r÷h}røh}rùh]rúUros-dashing-ament-downloadrûasssuUquality_of_service_demo_pyrü}rý(h}rþh}rÿh]rUros/dashing/demosrassh ˆh }rh}rh}rh]rU&ros-dashing-quality-of-service-demo-pyrasssuU rosidl_cmaker}r(h}r h}r h]r Uros/dashing/rosidlr assh ˆh }r h}rh}rh]rUros-dashing-rosidl-cmakerasssuUdepthimage_to_laserscanr}r(h}rh}rh]rU#ros/dashing/depthimage_to_laserscanrassh ˆh }rh}rh}rh]rU#ros-dashing-depthimage-to-laserscanrasssuUament_cmake_pytestr}r(h}rh}r h]r!Uros/dashing/ament_cmaker"assh ˆh }r#h}r$h}r%h]r&Uros-dashing-ament-cmake-pytestr'asssuUlaunchr(}r)(h}r*h}r+h]r,Uros/dashing/launchr-assh ˆh }r.h}r/h}r0h]r1Uros-dashing-launchr2asssuUturtlebot3_bringupr3}r4(h}r5h}r6h]r7Uros/dashing/turtlebot3r8assh ˆh }r9h}r:h}r;h]r<Uros-dashing-turtlebot3-bringupr=asssuUturtlebot3_gazebor>}r?(h}r@h}rAh]rBU"ros/dashing/turtlebot3_simulationsrCassh ˆh }rDh}rEh}rFh]rGUros-dashing-turtlebot3-gazeborHasssuUautoware_auto_helper_functionsrI}rJ(h}rKh}rLh]rMUros/dashing/Autoware.AutorNassh ˆh }rOh}rPh}rQh]rRU*ros-dashing-autoware-auto-helper-functionsrSasssuU stereo_msgsrT}rU(h}rVh}rWh]rXUros/dashing/common_interfacesrYassh ˆh }rZh}r[h}r\h]r]Uros-dashing-stereo-msgsr^asssuUaws_ros2_commonr_}r`(h}rah}rbh]rcUros/dashing/aws_ros2_commonrdassh ˆh }reh}rfh}rgh]rhUros-dashing-aws-ros2-commonriasssuUament_cmake_autorj}rk(h}rlh}rmh]rnUros/dashing/ament_cmakeroassh ˆh }rph}rqh}rrh]rsUros-dashing-ament-cmake-autortasssuUtrajectory_msgsru}rv(h}rwh}rxh]ryUros/dashing/common_interfacesrzassh ˆh }r{h}r|h}r}h]r~Uros-dashing-trajectory-msgsrasssuUmarti_can_msgsr€}r(h}r‚h}rƒh]r„Uros/dashing/marti_messagesr…assh ˆh }r†h}r‡h}rˆh]r‰Uros-dashing-marti-can-msgsrŠasssuUrosidl_default_runtimer‹}rŒ(h}rh}rŽh]rUros/dashing/rosidl_defaultsrassh ˆh }r‘h}r’h}r“h]r”U"ros-dashing-rosidl-default-runtimer•asssuUswri_image_utilr–}r—(h}r˜h}r™h]ršUros/dashing/marti_commonr›assh ˆh }rœh}rh}ržh]rŸUros-dashing-swri-image-utilr asssuUament_cppcheckr¡}r¢(h}r£h}r¤h]r¥Uros/dashing/ament_lintr¦assh ˆh }r§h}r¨h}r©h]rªUros-dashing-ament-cppcheckr«asssuU ecl_errorsr¬}r­(h}r®h}r¯h]r°Uros/dashing/ecl_liter±assh ˆh }r²h}r³h}r´h]rµUros-dashing-ecl-errorsr¶asssuU rviz_commonr·}r¸(h}r¹h}rºh]r»Uros/dashing/rvizr¼assh ˆh }r½h}r¾h}r¿h]rÀUros-dashing-rviz-commonrÁasssuUkinesis_video_msgsrÂ}rÃ(h}rÄh}rÅh]rÆU"ros/dashing/kinesis_video_streamerrÇassh ˆh }rÈh}rÉh}rÊh]rËUros-dashing-kinesis-video-msgsrÌasssuUament_cmake_pclintrÍ}rÎ(h}rÏh}rÐh]rÑUros/dashing/ament_lintrÒassh ˆh }rÓh}rÔh}rÕh]rÖUros-dashing-ament-cmake-pclintr×asssuUtf2rØ}rÙ(h}rÚh}rÛh]rÜUros/dashing/geometry2rÝassh ˆh }rÞh}rßh}ràh]ráUros-dashing-tf2râasssuUfmi_adapter_examplesrã}rä(h}råh}ræh]rçUros/dashing/fmi_adapter_ros2rèassh ˆh }réh}rêh}rëh]rìU ros-dashing-fmi-adapter-examplesríasssuUrcl_yaml_param_parserrî}rï(h}rðh}rñh]ròUros/dashing/rclróassh ˆh }rôh}rõh}röh]r÷U!ros-dashing-rcl-yaml-param-parserrøasssuUecl_timerù}rú(h}rûh}rüh]rýUros/dashing/ecl_corerþassh ˆh }rÿh}r h}r h]r Uros-dashing-ecl-timer asssuU people_msgsr }r (h}r h}r h]r Uros/dashing/peopler assh ˆh }r h}r h}r h]r Uros-dashing-people-msgsr asssuUrosbag2_storage_default_pluginsr }r (h}r h}r h]r Uros/dashing/rosbag2r assh ˆh }r h}r h}r h]r U+ros-dashing-rosbag2-storage-default-pluginsr asssuUdwb_controllerr }r (h}r h}r h]r Uros/dashing/navigation2r assh ˆh }r h}r! h}r" h]r# Uros-dashing-dwb-controllerr$ asssuUpy_trees_ros_interfacesr% }r& (h}r' h}r( h]r) U#ros/dashing/py_trees_ros_interfacesr* assh ˆh }r+ h}r, h}r- h]r. U#ros-dashing-py-trees-ros-interfacesr/ asssuU cross_compiler0 }r1 (h}r2 h}r3 h]r4 Uros/dashing/cross_compiler5 assh ˆh }r6 h}r7 h}r8 h]r9 Uros-dashing-cross-compiler: asssuUcompressed_image_transportr; }r< (h}r= h}r> h]r? U#ros/dashing/image_transport_pluginsr@ assh ˆh }rA h}rB h}rC h]rD U&ros-dashing-compressed-image-transportrE asssuU gazebo_msgsrF }rG (h}rH h}rI h]rJ Uros/dashing/gazebo_ros_pkgsrK assh ˆh }rL h}rM h}rN h]rO Uros-dashing-gazebo-msgsrP asssuUimage_transportrQ }rR (h}rS h}rT h]rU Uros/dashing/image_commonrV assh ˆh }rW h}rX h}rY h]rZ Uros-dashing-image-transportr[ asssuUecl_mobile_robotr\ }r] (h}r^ h}r_ h]r` Uros/dashing/ecl_corera assh ˆh }rb h}rc h}rd h]re Uros-dashing-ecl-mobile-robotrf asssuU qt_dotgraphrg }rh (h}ri h}rj h]rk Uros/dashing/qt_gui_corerl assh ˆh }rm h}rn h}ro h]rp Uros-dashing-qt-dotgraphrq asssuUturtlebot3_teleoprr }rs (h}rt h}ru h]rv Uros/dashing/turtlebot3rw assh ˆh }rx h}ry h}rz h]r{ Uros-dashing-turtlebot3-teleopr| asssuU lex_commonr} }r~ (h}r h}r€ h]r Uros/dashing/lex_commonr‚ assh ˆh }rƒ h}r„ h}r… h]r† Uros-dashing-lex-commonr‡ asssuU ecl_utilitiesrˆ }r‰ (h}rŠ h}r‹ h]rŒ Uros/dashing/ecl_corer assh ˆh }rŽ h}r h}r h]r‘ Uros-dashing-ecl-utilitiesr’ asssuUament_cmake_include_directoriesr“ }r” (h}r• h}r– h]r— Uros/dashing/ament_cmaker˜ assh ˆh }r™ h}rš h}r› h]rœ U+ros-dashing-ament-cmake-include-directoriesr asssuU!rosidl_typesupport_opensplice_cpprž }rŸ (h}r  h}r¡ h]r¢ U)ros/dashing/rosidl_typesupport_opensplicer£ assh ˆh }r¤ h}r¥ h}r¦ h]r§ U-ros-dashing-rosidl-typesupport-opensplice-cppr¨ asssuUament_cmake_target_dependenciesr© }rª (h}r« h}r¬ h]r­ Uros/dashing/ament_cmaker® assh ˆh }r¯ h}r° h}r± h]r² U+ros-dashing-ament-cmake-target-dependenciesr³ asssuU ecl_conceptsr´ }rµ (h}r¶ h}r· h]r¸ Uros/dashing/ecl_corer¹ assh ˆh }rº h}r» h}r¼ h]r½ Uros-dashing-ecl-conceptsr¾ asssuUexamples_rclcpp_minimal_servicer¿ }rÀ (h}rÁ h}r h]rà Uros/dashing/examplesrÄ assh ˆh }rÅ h}rÆ h}rÇ h]rÈ U+ros-dashing-examples-rclcpp-minimal-servicerÉ asssuU ros2componentrÊ }rË (h}rÌ h}rÍ h]rÎ Uros/dashing/ros2clirÏ assh ˆh }rÐ h}rÑ h}rÒ h]rÓ Uros-dashing-ros2componentrÔ asssuUtlsf_cpprÕ }rÖ (h}r× h}rØ h]rÙ Uros/dashing/realtime_supportrÚ assh ˆh }rÛ h}rÜ h}rÝ h]rÞ Uros-dashing-tlsf-cpprß asssuUgps_msgsrà }rá (h}râ h}rã h]rä Uros/dashing/gps_umdrå assh ˆh }ræ h}rç h}rè h]ré Uros-dashing-gps-msgsrê asssuUpy_trees_ros_tutorialsrë }rì (h}rí h}rî h]rï U"ros/dashing/py_trees_ros_tutorialsrð assh ˆh }rñ h}rò h}ró h]rô U"ros-dashing-py-trees-ros-tutorialsrõ asssuU costmap_queuerö }r÷ (h}rø h}rù h]rú Uros/dashing/navigation2rû assh ˆh }rü h}rý h}rþ h]rÿ Uros-dashing-costmap-queuer asssuUtf2_kdlr }r (h}r h}r h]r Uros/dashing/geometry2r assh ˆh }r h}r h}r h]r Uros-dashing-tf2-kdlr asssuU ros2actionr }r (h}r h}r h]r Uros/dashing/ros2clir assh ˆh }r h}r h}r h]r Uros-dashing-ros2actionr asssuU dwb_criticsr }r (h}r h}r h]r Uros/dashing/navigation2r assh ˆh }r h}r h}r h]r Uros-dashing-dwb-criticsr! asssuUnav2_lifecycle_managerr" }r# (h}r$ h}r% h]r& Uros/dashing/navigation2r' assh ˆh }r( h}r) h}r* h]r+ U"ros-dashing-nav2-lifecycle-managerr, asssuU topic_monitorr- }r. (h}r/ h}r0 h]r1 Uros/dashing/demosr2 assh ˆh }r3 h}r4 h}r5 h]r6 Uros-dashing-topic-monitorr7 asssuU kdl_parserr8 }r9 (h}r: h}r; h]r< Uros/dashing/kdl_parserr= assh ˆh }r> h}r? h}r@ h]rA Uros-dashing-kdl-parserrB asssuUrosidl_generator_pyrC }rD (h}rE h}rF h]rG Uros/dashing/rosidl_pythonrH assh ˆh }rI h}rJ h}rK h]rL Uros-dashing-rosidl-generator-pyrM asssuUeuclidean_cluster_nodesrN }rO (h}rP h}rQ h]rR Uros/dashing/Autoware.AutorS assh ˆh }rT h}rU h}rV h]rW U#ros-dashing-euclidean-cluster-nodesrX asssuUrmw_connext_shared_cpprY }rZ (h}r[ h}r\ h]r] Uros/dashing/rmw_connextr^ assh ˆh }r_ h}r` h}ra h]rb U"ros-dashing-rmw-connext-shared-cpprc asssuUecl_type_traitsrd }re (h}rf h}rg h]rh Uros/dashing/ecl_coreri assh ˆh }rj h}rk h}rl h]rm Uros-dashing-ecl-type-traitsrn asssuUament_index_pythonro }rp (h}rq h}rr h]rs Uros/dashing/ament_indexrt assh ˆh }ru h}rv h}rw h]rx Uros-dashing-ament-index-pythonry asssuUament_cmake_gmockrz }r{ (h}r| h}r} h]r~ Uros/dashing/ament_cmaker assh ˆh }r€ h}r h}r‚ h]rƒ Uros-dashing-ament-cmake-gmockr„ asssuU!examples_rclpy_minimal_subscriberr… }r† (h}r‡ h}rˆ h]r‰ Uros/dashing/examplesrŠ assh ˆh }r‹ h}rŒ h}r h]rŽ U-ros-dashing-examples-rclpy-minimal-subscriberr asssuUray_ground_classifier_nodesr }r‘ (h}r’ h}r“ h]r” Uros/dashing/Autoware.Autor• assh ˆh }r– h}r— h}r˜ h]r™ U'ros-dashing-ray-ground-classifier-nodesrš asssuUcartographer_ros_msgsr› }rœ (h}r h}rž h]rŸ Uros/dashing/cartographer_rosr  assh ˆh }r¡ h}r¢ h}r£ h]r¤ U!ros-dashing-cartographer-ros-msgsr¥ asssuUament_cmake_cpplintr¦ }r§ (h}r¨ h}r© h]rª Uros/dashing/ament_lintr« assh ˆh }r¬ h}r­ h}r® h]r¯ Uros-dashing-ament-cmake-cpplintr° asssuUrmw_opensplice_cppr± }r² (h}r³ h}r´ h]rµ Uros/dashing/rmw_opensplicer¶ assh ˆh }r· h}r¸ h}r¹ h]rº Uros-dashing-rmw-opensplice-cppr» asssuU rqt_py_commonr¼ }r½ (h}r¾ h}r¿ h]rÀ Uros/dashing/rqtrÁ assh ˆh }r h}rà h}rÄ h]rÅ Uros-dashing-rqt-py-commonrÆ asssuU compressed_depth_image_transportrÇ }rÈ (h}rÉ h}rÊ h]rË U#ros/dashing/image_transport_pluginsrÌ assh ˆh }rÍ h}rÎ h}rÏ h]rÐ U,ros-dashing-compressed-depth-image-transportrÑ asssuUobject_analytics_rvizrÒ }rÓ (h}rÔ h}rÕ h]rÖ U!ros/dashing/ros2_object_analyticsr× assh ˆh }rØ h}rÙ h}rÚ h]rÛ U!ros-dashing-object-analytics-rvizrÜ asssuUquality_of_service_demo_cpprÝ }rÞ (h}rß h}rà h]rá Uros/dashing/demosrâ assh ˆh }rã h}rä h}rå h]ræ U'ros-dashing-quality-of-service-demo-cpprç asssuUros_monitoring_msgsrè }ré (h}rê h}rë h]rì Uros/dashing/ros_monitoring_msgsrí assh ˆh }rî h}rï h}rð h]rñ Uros-dashing-ros-monitoring-msgsrò asssuU ros2serviceró }rô (h}rõ h}rö h]r÷ Uros/dashing/ros2clirø assh ˆh }rù h}rú h}rû h]rü Uros-dashing-ros2servicerý asssuUros2trace_analysisrþ }rÿ (h}r h}r h]r Uros/dashing/tracetools_analysisr assh ˆh }r h}r h}r h]r Uros-dashing-ros2trace-analysisr asssuUkinesis_managerr }r (h}r h}r h]r Uros/dashing/kinesis_managerr assh ˆh }r h}r h}r h]r Uros-dashing-kinesis-managerr asssuUdummy_robot_bringupr }r (h}r h}r h]r Uros/dashing/demosr assh ˆh }r h}r h}r h]r Uros-dashing-dummy-robot-bringupr asssuUrmw_fastrtps_shared_cppr }r (h}r! h}r" h]r# Uros/dashing/rmw_fastrtpsr$ assh ˆh }r% h}r& h}r' h]r( U#ros-dashing-rmw-fastrtps-shared-cppr) asssuUrviz_default_pluginsr* }r+ (h}r, h}r- h]r. Uros/dashing/rvizr/ assh ˆh }r0 h}r1 h}r2 h]r3 U ros-dashing-rviz-default-pluginsr4 asssuU orocos_kdlr5 }r6 (h}r7 h}r8 h]r9 U&ros/dashing/orocos_kinematics_dynamicsr: assh ˆh }r; h}r< h}r= h]r> Uros-dashing-orocos-kdlr? asssuUrcl_interfacesr@ }rA (h}rB h}rC h]rD Uros/dashing/rcl_interfacesrE assh ˆh }rF h}rG h}rH h]rI Uros-dashing-rcl-interfacesrJ asssuU ament_packagerK }rL (h}rM h}rN h]rO Uros/dashing/ament_packagerP assh ˆh }rQ h}rR h}rS h]rT Uros-dashing-ament-packagerU asssuUnovatel_gps_msgsrV }rW (h}rX h}rY h]rZ Uros/dashing/novatel_gps_driverr[ assh ˆh }r\ h}r] h}r^ h]r_ Uros-dashing-novatel-gps-msgsr` asssuUunique_identifier_msgsra }rb (h}rc h}rd h]re U"ros/dashing/unique_identifier_msgsrf assh ˆh }rg h}rh h}ri h]rj U"ros-dashing-unique-identifier-msgsrk asssuUexamples_rclpy_executorsrl }rm (h}rn h}ro h]rp Uros/dashing/examplesrq assh ˆh }rr h}rs h}rt h]ru U$ros-dashing-examples-rclpy-executorsrv asssuUswri_transform_utilrw }rx (h}ry h}rz h]r{ Uros/dashing/marti_commonr| assh ˆh }r} h}r~ h}r h]r€ Uros-dashing-swri-transform-utilr asssuUecl_exceptionsr‚ }rƒ (h}r„ h}r… h]r† Uros/dashing/ecl_corer‡ assh ˆh }rˆ h}r‰ h}rŠ h]r‹ Uros-dashing-ecl-exceptionsrŒ asssuUteleop_tools_msgsr }rŽ (h}r h}r h]r‘ Uros/dashing/teleop_toolsr’ assh ˆh }r“ h}r” h}r• h]r– Uros-dashing-teleop-tools-msgsr— asssuUcommon_interfacesr˜ }r™ (h}rš h}r› h]rœ Uros/dashing/common_interfacesr assh ˆh }rž h}rŸ h}r  h]r¡ Uros-dashing-common-interfacesr¢ asssuUnav2_dynamic_paramsr£ }r¤ (h}r¥ h}r¦ h]r§ Uros/dashing/navigation2r¨ assh ˆh }r© h}rª h}r« h]r¬ Uros-dashing-nav2-dynamic-paramsr­ asssuUament_cmake_pep8r® }r¯ (h}r° h}r± h]r² Uros/dashing/ament_lintr³ assh ˆh }r´ h}rµ h}r¶ h]r· Uros-dashing-ament-cmake-pep8r¸ asssuUrosidl_typesupport_opensplice_cr¹ }rº (h}r» h}r¼ h]r½ U)ros/dashing/rosidl_typesupport_opensplicer¾ assh ˆh }r¿ h}rÀ h}rÁ h]r U+ros-dashing-rosidl-typesupport-opensplice-crà asssuUrosbridge_msgsrÄ }rÅ (h}rÆ h}rÇ h]rÈ Uros/dashing/rosbridge_suiterÉ assh ˆh }rÊ h}rË h}rÌ h]rÍ Uros-dashing-rosbridge-msgsrÎ asssuU shape_msgsrÏ }rÐ (h}rÑ h}rÒ h]rÓ Uros/dashing/common_interfacesrÔ assh ˆh }rÕ h}rÖ h}r× h]rØ Uros-dashing-shape-msgsrÙ asssuUecl_containersrÚ }rÛ (h}rÜ h}rÝ h]rÞ Uros/dashing/ecl_corerß assh ˆh }rà h}rá h}râ h]rã Uros-dashing-ecl-containersrä asssuUnav2_system_testsrå }ræ (h}rç h}rè h]ré Uros/dashing/navigation2rê assh ˆh }rë h}rì h}rí h]rî Uros-dashing-nav2-system-testsrï asssuU ecl_licenserð }rñ (h}rò h}ró h]rô Uros/dashing/ecl_toolsrõ assh ˆh }rö h}r÷ h}rø h]rù Uros-dashing-ecl-licenserú asssuUteleop_twist_keyboardrû }rü (h}rý h}rþ h]rÿ U!ros/dashing/teleop_twist_keyboardr assh ˆh }r h}r h}r h]r U!ros-dashing-teleop-twist-keyboardr asssuUament_cmake_xmllintr }r (h}r h}r h]r Uros/dashing/ament_lintr assh ˆh }r h}r h}r h]r Uros-dashing-ament-cmake-xmllintr asssuU navigation2r }r (h}r h}r h]r Uros/dashing/navigation2r assh ˆh }r h}r h}r h]r Uros-dashing-navigation2r asssuU&ament_cmake_export_include_directoriesr }r (h}r h}r h]r Uros/dashing/ament_cmaker! assh ˆh }r" h}r# h}r$ h]r% U2ros-dashing-ament-cmake-export-include-directoriesr& asssuU rosgraph_msgsr' }r( (h}r) h}r* h]r+ Uros/dashing/rcl_interfacesr, assh ˆh }r- h}r. h}r/ h]r0 Uros-dashing-rosgraph-msgsr1 asssuUecl_mplr2 }r3 (h}r4 h}r5 h]r6 Uros/dashing/ecl_corer7 assh ˆh }r8 h}r9 h}r: h]r; Uros-dashing-ecl-mplr< asssuUecl_manipulatorsr= }r> (h}r? h}r@ h]rA Uros/dashing/ecl_corerB assh ˆh }rC h}rD h}rE h]rF Uros-dashing-ecl-manipulatorsrG asssuU ros1_bridgerH }rI (h}rJ h}rK h]rL Uros/dashing/ros1_bridgerM assh ˆh }rN h}rO h}rP h]rQ Uros-dashing-ros1-bridgerR asssuUswri_console_utilrS }rT (h}rU h}rV h]rW Uros/dashing/marti_commonrX assh ˆh }rY h}rZ h}r[ h]r\ Uros-dashing-swri-console-utilr] asssuUtf2_geometry_msgsr^ }r_ (h}r` h}ra h]rb Uros/dashing/geometry2rc assh ˆh }rd h}re h}rf h]rg Uros-dashing-tf2-geometry-msgsrh asssuUautoware_auto_examplesri }rj (h}rk h}rl h]rm Uros/dashing/Autoware.Autorn assh ˆh }ro h}rp h}rq h]rr U"ros-dashing-autoware-auto-examplesrs asssuUrmwrt }ru (h}rv h}rw h]rx Uros/dashing/rmwry assh ˆh }rz h}r{ h}r| h]r} Uros-dashing-rmwr~ asssuUnav2_navfn_plannerr }r€ (h}r h}r‚ h]rƒ Uros/dashing/navigation2r„ assh ˆh }r… h}r† h}r‡ h]rˆ Uros-dashing-nav2-navfn-plannerr‰ asssuU swri_roscpprŠ }r‹ (h}rŒ h}r h]rŽ Uros/dashing/marti_commonr assh ˆh }r h}r‘ h}r’ h]r“ Uros-dashing-swri-roscppr” asssuU apriltag_rosr• }r– (h}r— h}r˜ h]r™ Uros/dashing/apriltag_rosrš assh ˆh }r› h}rœ h}r h]rž Uros-dashing-apriltag-rosrŸ asssuUecl_filesystemr  }r¡ (h}r¢ h}r£ h]r¤ Uros/dashing/ecl_corer¥ assh ˆh }r¦ h}r§ h}r¨ h]r© Uros-dashing-ecl-filesystemrª asssuUrealsense_ros2_camerar« }r¬ (h}r­ h}r® h]r¯ U ros/dashing/ros2_intel_realsenser° assh ˆh }r± h}r² h}r³ h]r´ U!ros-dashing-realsense-ros2-camerarµ asssuUautoware_auto_msgsr¶ }r· (h}r¸ h}r¹ h]rº Uros/dashing/Autoware.Autor» assh ˆh }r¼ h}r½ h}r¾ h]r¿ Uros-dashing-autoware-auto-msgsrÀ asssuUpython_qt_bindingrÁ }r (h}rà h}rÄ h]rÅ Uros/dashing/python_qt_bindingrÆ assh ˆh }rÇ h}rÈ h}rÉ h]rÊ Uros-dashing-python-qt-bindingrË asssuUmarti_perception_msgsrÌ }rÍ (h}rÎ h}rÏ h]rÐ Uros/dashing/marti_messagesrÑ assh ˆh }rÒ h}rÓ h}rÔ h]rÕ U!ros-dashing-marti-perception-msgsrÖ asssuU rqt_gui_cppr× }rØ (h}rÙ h}rÚ h]rÛ Uros/dashing/rqtrÜ assh ˆh }rÝ h}rÞ h}rß h]rà Uros-dashing-rqt-gui-cpprá asssuUrclpyrâ }rã (h}rä h}rå h]ræ Uros/dashing/rclpyrç assh ˆh }rè h}ré h}rê h]rë Uros-dashing-rclpyrì asssuUament_cmake_pyflakesrí }rî (h}rï h}rð h]rñ Uros/dashing/ament_lintrò assh ˆh }ró h}rô h}rõ h]rö U ros-dashing-ament-cmake-pyflakesr÷ asssuUturtlebot3_noderø }rù (h}rú h}rû h]rü Uros/dashing/turtlebot3rý assh ˆh }rþ h}rÿ h}r h]r Uros-dashing-turtlebot3-noder asssuUrviz_assimp_vendorr }r (h}r h}r h]r Uros/dashing/rvizr assh ˆh }r h}r h}r h]r Uros-dashing-rviz-assimp-vendorr asssuU%examples_rclcpp_minimal_action_serverr }r (h}r h}r h]r Uros/dashing/examplesr assh ˆh }r h}r h}r h]r U1ros-dashing-examples-rclcpp-minimal-action-serverr asssuU gazebo_devr }r (h}r h}r h]r Uros/dashing/gazebo_ros_pkgsr assh ˆh }r h}r h}r! h]r" Uros-dashing-gazebo-devr# asssuUrosidl_runtime_pyr$ }r% (h}r& h}r' h]r( Uros/dashing/rosidl_pythonr) assh ˆh }r* h}r+ h}r, h]r- Uros-dashing-rosidl-runtime-pyr. asssuU cartographerr/ }r0 (h}r1 h}r2 h]r3 Uros/dashing/cartographerr4 assh ˆh }r5 h}r6 h}r7 h]r8 Uros-dashing-cartographerr9 asssuUshared_queues_vendorr: }r; (h}r< h}r= h]r> Uros/dashing/rosbag2r? assh ˆh }r@ h}rA h}rB h]rC U ros-dashing-shared-queues-vendorrD asssuUjoyrE }rF (h}rG h}rH h]rI Uros/dashing/joystick_driversrJ assh ˆh }rK h}rL h}rM h]rN Uros-dashing-joyrO asssuU ecl_geometryrP }rQ (h}rR h}rS h]rT Uros/dashing/ecl_corerU assh ˆh }rV h}rW h}rX h]rY Uros-dashing-ecl-geometryrZ asssuUswri_dbw_interfacer[ }r\ (h}r] h}r^ h]r_ Uros/dashing/marti_commonr` assh ˆh }ra h}rb h}rc h]rd Uros-dashing-swri-dbw-interfacere asssuUnav2_world_modelrf }rg (h}rh h}ri h]rj Uros/dashing/navigation2rk assh ˆh }rl h}rm h}rn h]ro Uros-dashing-nav2-world-modelrp asssuU$rosidl_typesupport_introspection_cpprq }rr (h}rs h}rt h]ru Uros/dashing/rosidlrv assh ˆh }rw h}rx h}ry h]rz U0ros-dashing-rosidl-typesupport-introspection-cppr{ asssuU apriltag_msgsr| }r} (h}r~ h}r h]r€ Uros/dashing/apriltag_msgsr assh ˆh }r‚ h}rƒ h}r„ h]r… Uros-dashing-apriltag-msgsr† asssuUecl_convertersr‡ }rˆ (h}r‰ h}rŠ h]r‹ Uros/dashing/ecl_corerŒ assh ˆh }r h}rŽ h}r h]r Uros-dashing-ecl-convertersr‘ asssuUlaunch_testingr’ }r“ (h}r” h}r• h]r– Uros/dashing/launchr— assh ˆh }r˜ h}r™ h}rš h]r› Uros-dashing-launch-testingrœ asssuU ros2tracer }rž (h}rŸ h}r  h]r¡ Uros/dashing/ros2_tracingr¢ assh ˆh }r£ h}r¤ h}r¥ h]r¦ Uros-dashing-ros2tracer§ asssuU turtlesimr¨ }r© (h}rª h}r« h]r¬ Uros/dashing/turtlesimr­ assh ˆh }r® h}r¯ h}r° h]r± Uros-dashing-turtlesimr² asssuU py_trees_rosr³ }r´ (h}rµ h}r¶ h]r· Uros/dashing/py_trees_rosr¸ assh ˆh }r¹ h}rº h}r» h]r¼ Uros-dashing-py-trees-rosr½ asssuUrosidl_typesupport_connext_cppr¾ }r¿ (h}rÀ h}rÁ h]r U&ros/dashing/rosidl_typesupport_connextrà assh ˆh }rÄ h}rÅ h}rÆ h]rÇ U*ros-dashing-rosidl-typesupport-connext-cpprÈ asssuUament_pyflakesrÉ }rÊ (h}rË h}rÌ h]rÍ Uros/dashing/ament_lintrÎ assh ˆh }rÏ h}rÐ h}rÑ h]rÒ Uros-dashing-ament-pyflakesrÓ asssuUtlsfrÔ }rÕ (h}rÖ h}r× h]rØ Uros/dashing/tlsfrÙ assh ˆh }rÚ h}rÛ h}rÜ h]rÝ Uros-dashing-tlsfrÞ asssuUmarti_status_msgsrß }rà (h}rá h}râ h]rã Uros/dashing/marti_messagesrä assh ˆh }rå h}ræ h}rç h]rè Uros-dashing-marti-status-msgsré asssuUament_cmake_export_link_flagsrê }rë (h}rì h}rí h]rî Uros/dashing/ament_cmakerï assh ˆh }rð h}rñ h}rò h]ró U)ros-dashing-ament-cmake-export-link-flagsrô asssuU ament_cmakerõ }rö (h}r÷ h}rø h]rù Uros/dashing/ament_cmakerú assh ˆh }rû h}rü h}rý h]rþ Uros-dashing-ament-cmakerÿ asssuUament_clang_formatr}r(h}rh}rh]rUros/dashing/ament_lintrassh ˆh }rh}rh}rh]r Uros-dashing-ament-clang-formatr asssuUdesktopr }r (h}r h}rh]rUros/dashing/variantsrassh ˆh }rh}rh}rh]rUros-dashing-desktoprasssuUcomposition_interfacesr}r(h}rh}rh]rUros/dashing/rcl_interfacesrassh ˆh }rh}rh}rh]rU"ros-dashing-composition-interfacesr asssuU udp_driverr!}r"(h}r#h}r$h]r%Uros/dashing/transport_driversr&assh ˆh }r'h}r(h}r)h]r*Uros-dashing-udp-driverr+asssuU"rosidl_typesupport_introspection_cr,}r-(h}r.h}r/h]r0Uros/dashing/rosidlr1assh ˆh }r2h}r3h}r4h]r5U.ros-dashing-rosidl-typesupport-introspection-cr6asssuUrqt_reconfigurer7}r8(h}r9h}r:h]r;Uros/dashing/rqt_reconfigurer<assh ˆh }r=h}r>h}r?h]r@Uros-dashing-rqt-reconfigurerAasssuUfastrtps_cmake_modulerB}rC(h}rDh}rEh]rFU'ros/dashing/rosidl_typesupport_fastrtpsrGassh ˆh }rHh}rIh}rJh]rKU!ros-dashing-fastrtps-cmake-modulerLasssuUsros2rM}rN(h}rOh}rPh]rQUros/dashing/sros2rRassh ˆh }rSh}rTh}rUh]rVUros-dashing-sros2rWasssuUnav2_voxel_gridrX}rY(h}rZh}r[h]r\Uros/dashing/navigation2r]assh ˆh }r^h}r_h}r`h]raUros-dashing-nav2-voxel-gridrbasssuUrviz_renderingrc}rd(h}reh}rfh]rgUros/dashing/rvizrhassh ˆh }rih}rjh}rkh]rlUros-dashing-rviz-renderingrmasssuUtinyxml_vendorrn}ro(h}rph}rqh]rrUros/dashing/tinyxml_vendorrsassh ˆh }rth}ruh}rvh]rwUros-dashing-tinyxml-vendorrxasssuUrosidl_default_generatorsry}rz(h}r{h}r|h]r}Uros/dashing/rosidl_defaultsr~assh ˆh }rh}r€h}rh]r‚U%ros-dashing-rosidl-default-generatorsrƒasssuUturtlebot3_msgsr„}r…(h}r†h}r‡h]rˆUros/dashing/turtlebot3_msgsr‰assh ˆh }rŠh}r‹h}rŒh]rUros-dashing-turtlebot3-msgsrŽasssuU nav_2d_msgsr}r(h}r‘h}r’h]r“Uros/dashing/navigation2r”assh ˆh }r•h}r–h}r—h]r˜Uros-dashing-nav-2d-msgsr™asssuUcan_msgsrš}r›(h}rœh}rh]ržUros/dashing/ros_canopenrŸassh ˆh }r h}r¡h}r¢h]r£Uros-dashing-can-msgsr¤asssuUstd_msgsr¥}r¦(h}r§h}r¨h]r©Uros/dashing/common_interfacesrªassh ˆh }r«h}r¬h}r­h]r®Uros-dashing-std-msgsr¯asssuU"examples_rclcpp_minimal_subscriberr°}r±(h}r²h}r³h]r´Uros/dashing/examplesrµassh ˆh }r¶h}r·h}r¸h]r¹U.ros-dashing-examples-rclcpp-minimal-subscriberrºasssuUrosapir»}r¼(h}r½h}r¾h]r¿Uros/dashing/rosbridge_suiterÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-dashing-rosapirÅasssuUlocalization_commonrÆ}rÇ(h}rÈh}rÉh]rÊUros/dashing/Autoware.AutorËassh ˆh }rÌh}rÍh}rÎh]rÏUros-dashing-localization-commonrÐasssuUanglesrÑ}rÒ(h}rÓh}rÔh]rÕUros/dashing/anglesrÖassh ˆh }r×h}rØh}rÙh]rÚUros-dashing-anglesrÛasssuU!rosbag2_converter_default_pluginsrÜ}rÝ(h}rÞh}rßh]ràUros/dashing/rosbag2ráassh ˆh }râh}rãh}räh]råU-ros-dashing-rosbag2-converter-default-pluginsræasssuU v4l2_camerarç}rè(h}réh}rêh]rëUros/dashing/v4l2_camerarìassh ˆh }ríh}rîh}rïh]rðUros-dashing-v4l2-camerarñasssuU mouse_teleoprò}ró(h}rôh}rõh]röUros/dashing/teleop_toolsr÷assh ˆh }røh}rùh}rúh]rûUros-dashing-mouse-teleoprüasssuU ament_pep8rý}rþ(h}rÿh}rh]rUros/dashing/ament_lintrassh ˆh }rh}rh}rh]rUros-dashing-ament-pep8rasssuUautoware_auto_geometryr}r (h}r h}r h]r Uros/dashing/Autoware.Autor assh ˆh }rh}rh}rh]rU"ros-dashing-autoware-auto-geometryrasssuU rcl_actionr}r(h}rh}rh]rUros/dashing/rclrassh ˆh }rh}rh}rh]rUros-dashing-rcl-actionrasssuU pacmod_msgsr}r(h}r h}r!h]r"Uros/dashing/astuff_sensor_msgsr#assh ˆh }r$h}r%h}r&h]r'Uros-dashing-pacmod-msgsr(asssuUrcutilsr)}r*(h}r+h}r,h]r-Uros/dashing/rcutilsr.assh ˆh }r/h}r0h}r1h]r2Uros-dashing-rcutilsr3asssuU image_toolsr4}r5(h}r6h}r7h]r8Uros/dashing/demosr9assh ˆh }r:h}r;h}r<h]r=Uros-dashing-image-toolsr>asssuU optimizationr?}r@(h}rAh}rBh]rCUros/dashing/Autoware.AutorDassh ˆh }rEh}rFh}rGh]rHUros-dashing-optimizationrIasssuUurdfdomrJ}rK(h}rLh}rMh]rNUros/dashing/urdfdomrOassh ˆh }rPh}rQh}rRh]rSUros-dashing-urdfdomrTasssuUlocalization_nodesrU}rV(h}rWh}rXh]rYUros/dashing/Autoware.AutorZassh ˆh }r[h}r\h}r]h]r^Uros-dashing-localization-nodesr_asssuUament_uncrustifyr`}ra(h}rbh}rch]rdUros/dashing/ament_lintreassh ˆh }rfh}rgh}rhh]riUros-dashing-ament-uncrustifyrjasssuUament_cmake_pep257rk}rl(h}rmh}rnh]roUros/dashing/ament_lintrpassh ˆh }rqh}rrh}rsh]rtUros-dashing-ament-cmake-pep257ruasssuU ament_flake8rv}rw(h}rxh}ryh]rzUros/dashing/ament_lintr{assh ˆh }r|h}r}h}r~h]rUros-dashing-ament-flake8r€asssuUdwb_corer}r‚(h}rƒh}r„h]r…Uros/dashing/navigation2r†assh ˆh }r‡h}rˆh}r‰h]rŠUros-dashing-dwb-corer‹asssuUrclcpp_lifecyclerŒ}r(h}rŽh}rh]rUros/dashing/rclcppr‘assh ˆh }r’h}r“h}r”h]r•Uros-dashing-rclcpp-lifecycler–asssuUecl_formattersr—}r˜(h}r™h}ršh]r›Uros/dashing/ecl_corerœassh ˆh }rh}ržh}rŸh]r Uros-dashing-ecl-formattersr¡asssuU rcpputilsr¢}r£(h}r¤h}r¥h]r¦Uros/dashing/rcpputilsr§assh ˆh }r¨h}r©h}rªh]r«Uros-dashing-rcpputilsr¬asssuUament_cmake_export_librariesr­}r®(h}r¯h}r°h]r±Uros/dashing/ament_cmaker²assh ˆh }r³h}r´h}rµh]r¶U(ros-dashing-ament-cmake-export-librariesr·asssuUpx4_msgsr¸}r¹(h}rºh}r»h]r¼Uros/dashing/px4_msgsr½assh ˆh }r¾h}r¿h}rÀh]rÁUros-dashing-px4-msgsrÂasssuUnav2_dwb_controllerrÃ}rÄ(h}rÅh}rÆh]rÇUros/dashing/navigation2rÈassh ˆh }rÉh}rÊh}rËh]rÌUros-dashing-nav2-dwb-controllerrÍasssuU qt_gui_corerÎ}rÏ(h}rÐh}rÑh]rÒUros/dashing/qt_gui_corerÓassh ˆh }rÔh}rÕh}rÖh]r×Uros-dashing-qt-gui-corerØasssuU demo_nodes_pyrÙ}rÚ(h}rÛh}rÜh]rÝUros/dashing/demosrÞassh ˆh }rßh}ràh}ráh]râUros-dashing-demo-nodes-pyrãasssuU lidar_utilsrä}rå(h}ræh}rçh]rèUros/dashing/Autoware.Autoréassh ˆh }rêh}rëh}rìh]ríUros-dashing-lidar-utilsrîasssuUnav_msgsrï}rð(h}rñh}ròh]róUros/dashing/common_interfacesrôassh ˆh }rõh}röh}r÷h]røUros-dashing-nav-msgsrùasssuUndtrú}rû(h}rüh}rýh]rþUros/dashing/Autoware.Autorÿassh ˆh }rh}rh}rh]rUros-dashing-ndtrasssuUecl_command_liner}r(h}rh}rh]r Uros/dashing/ecl_corer assh ˆh }r h}r h}r h]rUros-dashing-ecl-command-linerasssuU gtest_vendorr}r(h}rh}rh]rUros/dashing/googletestrassh ˆh }rh}rh}rh]rUros-dashing-gtest-vendorrasssuUlaunch_testing_ament_cmaker}r(h}rh}rh]rUros/dashing/launchr assh ˆh }r!h}r"h}r#h]r$U&ros-dashing-launch-testing-ament-cmaker%asssuUtf2_rosr&}r'(h}r(h}r)h]r*Uros/dashing/geometry2r+assh ˆh }r,h}r-h}r.h]r/Uros-dashing-tf2-rosr0asssuUrosidl_typesupport_cr1}r2(h}r3h}r4h]r5Uros/dashing/rosidl_typesupportr6assh ˆh }r7h}r8h}r9h]r:U ros-dashing-rosidl-typesupport-cr;asssuUswri_geometry_utilr<}r=(h}r>h}r?h]r@Uros/dashing/marti_commonrAassh ˆh }rBh}rCh}rDh]rEUros-dashing-swri-geometry-utilrFasssuUdiagnostic_msgsrG}rH(h}rIh}rJh]rKUros/dashing/common_interfacesrLassh ˆh }rMh}rNh}rOh]rPUros-dashing-diagnostic-msgsrQasssuUimage_geometryrR}rS(h}rTh}rUh]rVUros/dashing/vision_opencvrWassh ˆh }rXh}rYh}rZh]r[Uros-dashing-image-geometryr\asssuUrcl_logging_noopr]}r^(h}r_h}r`h]raUros/dashing/rcl_loggingrbassh ˆh }rch}rdh}reh]rfUros-dashing-rcl-logging-nooprgasssuU dummy_sensorsrh}ri(h}rjh}rkh]rlUros/dashing/demosrmassh ˆh }rnh}roh}rph]rqUros-dashing-dummy-sensorsrrasssuUtest_osrf_testing_tools_cpprs}rt(h}ruh}rvh]rwU"ros/dashing/osrf_testing_tools_cpprxassh ˆh }ryh}rzh}r{h]r|U'ros-dashing-test-osrf-testing-tools-cppr}asssuUrosbridge_libraryr~}r(h}r€h}rh]r‚Uros/dashing/rosbridge_suiterƒassh ˆh }r„h}r…h}r†h]r‡Uros-dashing-rosbridge-libraryrˆasssuUconsole_bridge_vendorr‰}rŠ(h}r‹h}rŒh]rU!ros/dashing/console_bridge_vendorrŽassh ˆh }rh}rh}r‘h]r’U!ros-dashing-console-bridge-vendorr“asssuUtest_interface_filesr”}r•(h}r–h}r—h]r˜U ros/dashing/test_interface_filesr™assh ˆh }ršh}r›h}rœh]rU ros-dashing-test-interface-filesržasssuU compositionrŸ}r (h}r¡h}r¢h]r£Uros/dashing/demosr¤assh ˆh }r¥h}r¦h}r§h]r¨Uros-dashing-compositionr©asssuUmarti_nav_msgsrª}r«(h}r¬h}r­h]r®Uros/dashing/marti_messagesr¯assh ˆh }r°h}r±h}r²h]r³Uros-dashing-marti-nav-msgsr´asssuUrclcpprµ}r¶(h}r·h}r¸h]r¹Uros/dashing/rclcpprºassh ˆh }r»h}r¼h}r½h]r¾Uros-dashing-rclcppr¿asssuUtf2_sensor_msgsrÀ}rÁ(h}rÂh}rÃh]rÄUros/dashing/geometry2rÅassh ˆh }rÆh}rÇh}rÈh]rÉUros-dashing-tf2-sensor-msgsrÊasssuUrmw_fastrtps_dynamic_cpprË}rÌ(h}rÍh}rÎh]rÏUros/dashing/rmw_fastrtpsrÐassh ˆh }rÑh}rÒh}rÓh]rÔU$ros-dashing-rmw-fastrtps-dynamic-cpprÕasssuUrosidl_generator_cpprÖ}r×(h}rØh}rÙh]rÚUros/dashing/rosidlrÛassh ˆh }rÜh}rÝh}rÞh]rßU ros-dashing-rosidl-generator-cppràasssuU ecl_configrá}râ(h}rãh}räh]råUros/dashing/ecl_literæassh ˆh }rçh}rèh}réh]rêUros-dashing-ecl-configrëasssuUecl_statisticsrì}rí(h}rîh}rïh]rðUros/dashing/ecl_corerñassh ˆh }ròh}róh}rôh]rõUros-dashing-ecl-statisticsröasssuU nav2_msgsr÷}rø(h}rùh}rúh]rûUros/dashing/navigation2rüassh ˆh }rýh}rþh}rÿh]rUros-dashing-nav2-msgsrasssuUautoware_auto_algorithmr}r(h}rh}rh]rUros/dashing/Autoware.Autorassh ˆh }rh}r h}r h]r U#ros-dashing-autoware-auto-algorithmr asssuU sros2_cmaker }r(h}rh}rh]rUros/dashing/sros2rassh ˆh }rh}rh}rh]rUros-dashing-sros2-cmakerasssuUweb_video_serverr}r(h}rh}rh]rUros/dashing/web_video_serverrassh ˆh }rh}rh}r h]r!Uros-dashing-web-video-serverr"asssuU gps_toolsr#}r$(h}r%h}r&h]r'Uros/dashing/gps_umdr(assh ˆh }r)h}r*h}r+h]r,Uros-dashing-gps-toolsr-asssuUrqt_py_consoler.}r/(h}r0h}r1h]r2Uros/dashing/rqt_py_consoler3assh ˆh }r4h}r5h}r6h]r7Uros-dashing-rqt-py-consoler8asssuUackermann_msgsr9}r:(h}r;h}r<h]r=Uros/dashing/ackermann_msgsr>assh ˆh }r?h}r@h}rAh]rBUros-dashing-ackermann-msgsrCasssuUautoware_auto_create_pkgrD}rE(h}rFh}rGh]rHUros/dashing/Autoware.AutorIassh ˆh }rJh}rKh}rLh]rMU$ros-dashing-autoware-auto-create-pkgrNasssuUpy_trees_ros_viewerrO}rP(h}rQh}rRh]rSUros/dashing/py_trees_ros_viewerrTassh ˆh }rUh}rVh}rWh]rXUros-dashing-py-trees-ros-viewerrYasssuU ecl_devicesrZ}r[(h}r\h}r]h]r^Uros/dashing/ecl_corer_assh ˆh }r`h}rah}rbh]rcUros-dashing-ecl-devicesrdasssuUosrf_testing_tools_cppre}rf(h}rgh}rhh]riU"ros/dashing/osrf_testing_tools_cpprjassh ˆh }rkh}rlh}rmh]rnU"ros-dashing-osrf-testing-tools-cpproasssuUlibcurl_vendorrp}rq(h}rrh}rsh]rtUros/dashing/resource_retrieverruassh ˆh }rvh}rwh}rxh]ryUros-dashing-libcurl-vendorrzasssuUrosbag2_transportr{}r|(h}r}h}r~h]rUros/dashing/rosbag2r€assh ˆh }rh}r‚h}rƒh]r„Uros-dashing-rosbag2-transportr…asssuUrosauthr†}r‡(h}rˆh}r‰h]rŠUros/dashing/rosauthr‹assh ˆh }rŒh}rh}rŽh]rUros-dashing-rosauthrasssuUros1_rosbag_storage_vendorr‘}r’(h}r“h}r”h]r•Uros/dashing/rosbag2_bag_v2r–assh ˆh }r—h}r˜h}r™h]ršU&ros-dashing-ros1-rosbag-storage-vendorr›asssuUros_corerœ}r(h}ržh}rŸh]r Uros/dashing/variantsr¡assh ˆh }r¢h}r£h}r¤h]r¥Uros-dashing-ros-corer¦asssuU dwb_pluginsr§}r¨(h}r©h}rªh]r«Uros/dashing/navigation2r¬assh ˆh }r­h}r®h}r¯h]r°Uros-dashing-dwb-pluginsr±asssuUbehaviortree_cpp_v3r²}r³(h}r´h}rµh]r¶Uros/dashing/behaviortree_cpp_v3r·assh ˆh }r¸h}r¹h}rºh]r»Uros-dashing-behaviortree-cpp-v3r¼asssuUrobot_state_publisherr½}r¾(h}r¿h}rÀh]rÁU!ros/dashing/robot_state_publisherrÂassh ˆh }rÃh}rÄh}rÅh]rÆU!ros-dashing-robot-state-publisherrÇasssuUh264_video_encoderrÈ}rÉ(h}rÊh}rËh]rÌUros/dashing/h264_video_encoderrÍassh ˆh }rÎh}rÏh}rÐh]rÑUros-dashing-h264-video-encoderrÒasssuUament_cmake_librariesrÓ}rÔ(h}rÕh}rÖh]r×Uros/dashing/ament_cmakerØassh ˆh }rÙh}rÚh}rÛh]rÜU!ros-dashing-ament-cmake-librariesrÝasssuUbuiltin_interfacesrÞ}rß(h}ràh}ráh]râUros/dashing/rcl_interfacesrãassh ˆh }räh}råh}ræh]rçUros-dashing-builtin-interfacesrèasssuUament_lint_autoré}rê(h}rëh}rìh]ríUros/dashing/ament_lintrîassh ˆh }rïh}rðh}rñh]ròUros-dashing-ament-lint-autoróasssuUrqt_toprô}rõ(h}röh}r÷h]røUros/dashing/rqt_toprùassh ˆh }rúh}rûh}rüh]rýUros-dashing-rqt-toprþasssuUrosbridge_serverrÿ}r(h}rh}rh]rUros/dashing/rosbridge_suiterassh ˆh }rh}rh}rh]rUros-dashing-rosbridge-serverr asssuUapriltagr }r (h}r h}r h]rUros/dashing/apriltagrassh ˆh }rh}rh}rh]rUros-dashing-apriltagrasssuUkinesis_video_streamerr}r(h}rh}rh]rU"ros/dashing/kinesis_video_streamerrassh ˆh }rh}rh}rh]rU"ros-dashing-kinesis-video-streamerrasssuUdiagnostic_updaterr }r!(h}r"h}r#h]r$Uros/dashing/diagnosticsr%assh ˆh }r&h}r'h}r(h]r)Uros-dashing-diagnostic-updaterr*asssuUtinyxml2_vendorr+}r,(h}r-h}r.h]r/Uros/dashing/tinyxml2_vendorr0assh ˆh }r1h}r2h}r3h]r4Uros-dashing-tinyxml2-vendorr5asssuUeuclidean_clusterr6}r7(h}r8h}r9h]r:Uros/dashing/Autoware.Autor;assh ˆh }r<h}r=h}r>h]r?Uros-dashing-euclidean-clusterr@asssuU cycloneddsrA}rB(h}rCh}rDh]rEUros/dashing/cycloneddsrFassh ˆh }rGh}rHh}rIh]rJUros-dashing-cycloneddsrKasssuUament_cmake_flake8rL}rM(h}rNh}rOh]rPUros/dashing/ament_lintrQassh ˆh }rRh}rSh}rTh]rUUros-dashing-ament-cmake-flake8rVasssuU kalman_filterrW}rX(h}rYh}rZh]r[Uros/dashing/Autoware.Autor\assh ˆh }r]h}r^h}r_h]r`Uros-dashing-kalman-filterraasssuUmarti_common_msgsrb}rc(h}rdh}reh]rfUros/dashing/marti_messagesrgassh ˆh }rhh}rih}rjh]rkUros-dashing-marti-common-msgsrlasssuU aws_commonrm}rn(h}roh}rph]rqUros/dashing/aws_commonrrassh ˆh }rsh}rth}ruh]rvUros-dashing-aws-commonrwasssuUactionlib_msgsrx}ry(h}rzh}r{h]r|Uros/dashing/common_interfacesr}assh ˆh }r~h}rh}r€h]rUros-dashing-actionlib-msgsr‚asssuUgeographic_inforƒ}r„(h}r…h}r†h]r‡Uros/dashing/geographic_inforˆassh ˆh }r‰h}rŠh}r‹h]rŒUros-dashing-geographic-inforasssuUecl_converters_literŽ}r(h}rh}r‘h]r’Uros/dashing/ecl_liter“assh ˆh }r”h}r•h}r–h]r—Uros-dashing-ecl-converters-liter˜asssuUrviz_rendering_testsr™}rš(h}r›h}rœh]rUros/dashing/rvizržassh ˆh }rŸh}r h}r¡h]r¢U ros-dashing-rviz-rendering-testsr£asssuU dynamixel_sdkr¤}r¥(h}r¦h}r§h]r¨Uros/dashing/dynamixel_sdkr©assh ˆh }rªh}r«h}r¬h]r­Uros-dashing-dynamixel-sdkr®asssuU ros2topicr¯}r°(h}r±h}r²h]r³Uros/dashing/ros2clir´assh ˆh }rµh}r¶h}r·h]r¸Uros-dashing-ros2topicr¹asssuU ros2paramrº}r»(h}r¼h}r½h]r¾Uros/dashing/ros2clir¿assh ˆh }rÀh}rÁh}rÂh]rÃUros-dashing-ros2paramrÄasssuUlaser_geometryrÅ}rÆ(h}rÇh}rÈh]rÉUros/dashing/laser_geometryrÊassh ˆh }rËh}rÌh}rÍh]rÎUros-dashing-laser-geometryrÏasssuUtracetools_launchrÐ}rÑ(h}rÒh}rÓh]rÔUros/dashing/ros2_tracingrÕassh ˆh }rÖh}r×h}rØh]rÙUros-dashing-tracetools-launchrÚasssuU pendulum_msgsrÛ}rÜ(h}rÝh}rÞh]rßUros/dashing/demosràassh ˆh }ráh}râh}rãh]räUros-dashing-pendulum-msgsråasssuU key_teleopræ}rç(h}rèh}réh]rêUros/dashing/teleop_toolsrëassh ˆh }rìh}ríh}rîh]rïUros-dashing-key-teleoprðasssuUturtlebot3_descriptionrñ}rò(h}róh}rôh]rõUros/dashing/turtlebot3röassh ˆh }r÷h}røh}rùh]rúU"ros-dashing-turtlebot3-descriptionrûasssuUml_classifiersrü}rý(h}rþh}rÿh]rUros/dashing/ml_classifiersrassh ˆh }rh}rh}rh]rUros-dashing-ml-classifiersrasssuUcamera_calibration_parsersr}r(h}r h}r h]r Uros/dashing/image_commonr assh ˆh }r h}rh}rh]rU&ros-dashing-camera-calibration-parsersrasssuUros_environmentr}r(h}rh}rh]rUros/dashing/ros_environmentrassh ˆh }rh}rh}rh]rUros-dashing-ros-environmentrasssuU nmea_msgsr}r(h}rh}r h]r!Uros/dashing/nmea_msgsr"assh ˆh }r#h}r$h}r%h]r&Uros-dashing-nmea-msgsr'asssuUdemo_nodes_cppr(}r)(h}r*h}r+h]r,Uros/dashing/demosr-assh ˆh }r.h}r/h}r0h]r1Uros-dashing-demo-nodes-cppr2asssuU action_msgsr3}r4(h}r5h}r6h]r7Uros/dashing/rcl_interfacesr8assh ˆh }r9h}r:h}r;h]r<Uros-dashing-action-msgsr=asssuU ecl_time_liter>}r?(h}r@h}rAh]rBUros/dashing/ecl_literCassh ˆh }rDh}rEh}rFh]rGUros-dashing-ecl-time-literHasssuUmove_base_msgsrI}rJ(h}rKh}rLh]rMUros/dashing/navigation_msgsrNassh ˆh }rOh}rPh}rQh]rRUros-dashing-move-base-msgsrSasssuUrmw_connext_cpprT}rU(h}rVh}rWh]rXUros/dashing/rmw_connextrYassh ˆh }rZh}r[h}r\h]r]Uros-dashing-rmw-connext-cppr^asssuU ros_testingr_}r`(h}rah}rbh]rcUros/dashing/ros_testingrdassh ˆh }reh}rfh}rgh]rhUros-dashing-ros-testingriasssuUdelphi_srr_msgsrj}rk(h}rlh}rmh]rnUros/dashing/astuff_sensor_msgsroassh ˆh }rph}rqh}rrh]rsUros-dashing-delphi-srr-msgsrtasssuUrosidl_typesupport_interfaceru}rv(h}rwh}rxh]ryUros/dashing/rosidlrzassh ˆh }r{h}r|h}r}h]r~U(ros-dashing-rosidl-typesupport-interfacerasssuUcamera_info_managerr€}r(h}r‚h}rƒh]r„Uros/dashing/image_commonr…assh ˆh }r†h}r‡h}rˆh]r‰Uros-dashing-camera-info-managerrŠasssuUros2bagr‹}rŒ(h}rh}rŽh]rUros/dashing/rosbag2rassh ˆh }r‘h}r’h}r“h]r”Uros-dashing-ros2bagr•asssuU examples_rclpy_minimal_publisherr–}r—(h}r˜h}r™h]ršUros/dashing/examplesr›assh ˆh }rœh}rh}ržh]rŸU,ros-dashing-examples-rclpy-minimal-publisherr asssuUament_cmake_rosr¡}r¢(h}r£h}r¤h]r¥Uros/dashing/ament_cmake_rosr¦assh ˆh }r§h}r¨h}r©h]rªUros-dashing-ament-cmake-rosr«asssuUsystem_modes_examplesr¬}r­(h}r®h}r¯h]r°Uros/dashing/system_modesr±assh ˆh }r²h}r³h}r´h]rµU!ros-dashing-system-modes-examplesr¶asssuUrviz_visual_testing_frameworkr·}r¸(h}r¹h}rºh]r»Uros/dashing/rvizr¼assh ˆh }r½h}r¾h}r¿h]rÀU)ros-dashing-rviz-visual-testing-frameworkrÁasssuUsqlite3_vendorrÂ}rÃ(h}rÄh}rÅh]rÆUros/dashing/rosbag2rÇassh ˆh }rÈh}rÉh}rÊh]rËUros-dashing-sqlite3-vendorrÌasssuUrmw_implementationrÍ}rÎ(h}rÏh}rÐh]rÑUros/dashing/rmw_implementationrÒassh ˆh }rÓh}rÔh}rÕh]rÖUros-dashing-rmw-implementationr×asssuUnav2_recoveriesrØ}rÙ(h}rÚh}rÛh]rÜUros/dashing/navigation2rÝassh ˆh }rÞh}rßh}ràh]ráUros-dashing-nav2-recoveriesrâasssuUpcl_msgsrã}rä(h}råh}ræh]rçUros/dashing/pcl_msgsrèassh ˆh }réh}rêh}rëh]rìUros-dashing-pcl-msgsríasssuU ament_lintrî}rï(h}rðh}rñh]ròUros/dashing/ament_lintróassh ˆh }rôh}rõh}röh]r÷Uros-dashing-ament-lintrøasssuUfoonathan_memory_vendorrù}rú(h}rûh}rüh]rýU#ros/dashing/foonathan_memory_vendorrþassh ˆh }rÿh}rh}rh]rU#ros-dashing-foonathan-memory-vendorrasssuUmarti_sensor_msgsr}r(h}rh}rh]rUros/dashing/marti_messagesr assh ˆh }r h}r h}r h]r Uros-dashing-marti-sensor-msgsrasssuUrosbag2_test_commonr}r(h}rh}rh]rUros/dashing/rosbag2rassh ˆh }rh}rh}rh]rUros-dashing-rosbag2-test-commonrasssuU ecl_toolsr}r(h}rh}rh]rUros/dashing/ecl_toolsrassh ˆh }r h}r!h}r"h]r#Uros-dashing-ecl-toolsr$asssuUconnext_cmake_moduler%}r&(h}r'h}r(h]r)U&ros/dashing/rosidl_typesupport_connextr*assh ˆh }r+h}r,h}r-h]r.U ros-dashing-connext-cmake-moduler/asssuUexample_interfacesr0}r1(h}r2h}r3h]r4Uros/dashing/example_interfacesr5assh ˆh }r6h}r7h}r8h]r9Uros-dashing-example-interfacesr:asssuUrealsense_camera_msgsr;}r<(h}r=h}r>h]r?U ros/dashing/ros2_intel_realsenser@assh ˆh }rAh}rBh}rCh]rDU!ros-dashing-realsense-camera-msgsrEasssuUament_cmake_copyrightrF}rG(h}rHh}rIh]rJUros/dashing/ament_lintrKassh ˆh }rLh}rMh}rNh]rOU!ros-dashing-ament-cmake-copyrightrPasssuUament_cmake_testrQ}rR(h}rSh}rTh]rUUros/dashing/ament_cmakerVassh ˆh }rWh}rXh}rYh]rZUros-dashing-ament-cmake-testr[asssuU gpsd_clientr\}r](h}r^h}r_h]r`Uros/dashing/gps_umdraassh ˆh }rbh}rch}rdh]reUros-dashing-gpsd-clientrfasssuUrosidl_generator_crg}rh(h}rih}rjh]rkUros/dashing/rosidlrlassh ˆh }rmh}rnh}roh]rpUros-dashing-rosidl-generator-crqasssuUurdfdom_headersrr}rs(h}rth}ruh]rvUros/dashing/urdfdom_headersrwassh ˆh }rxh}ryh}rzh]r{Uros-dashing-urdfdom-headersr|asssuU$examples_rclpy_minimal_action_clientr}}r~(h}rh}r€h]rUros/dashing/examplesr‚assh ˆh }rƒh}r„h}r…h]r†U0ros-dashing-examples-rclpy-minimal-action-clientr‡asssuUrclrˆ}r‰(h}rŠh}r‹h]rŒUros/dashing/rclrassh ˆh }rŽh}rh}rh]r‘Uros-dashing-rclr’asssuUrqt_plotr“}r”(h}r•h}r–h]r—Uros/dashing/rqt_plotr˜assh ˆh }r™h}ršh}r›h]rœUros-dashing-rqt-plotrasssuUteleop_twist_joyrž}rŸ(h}r h}r¡h]r¢Uros/dashing/teleop_twist_joyr£assh ˆh }r¤h}r¥h}r¦h]r§Uros-dashing-teleop-twist-joyr¨asssuU control_msgsr©}rª(h}r«h}r¬h]r­Uros/dashing/control_msgsr®assh ˆh }r¯h}r°h}r±h]r²Uros-dashing-control-msgsr³asssuUmobileye_560_660_msgsr´}rµ(h}r¶h}r·h]r¸Uros/dashing/astuff_sensor_msgsr¹assh ˆh }rºh}r»h}r¼h]r½U!ros-dashing-mobileye-560-660-msgsr¾asssuUpendulum_controlr¿}rÀ(h}rÁh}rÂh]rÃUros/dashing/demosrÄassh ˆh }rÅh}rÆh}rÇh]rÈUros-dashing-pendulum-controlrÉasssuU#examples_rclcpp_minimal_compositionrÊ}rË(h}rÌh}rÍh]rÎUros/dashing/examplesrÏassh ˆh }rÐh}rÑh}rÒh]rÓU/ros-dashing-examples-rclcpp-minimal-compositionrÔasssuUcloudwatch_metrics_commonrÕ}rÖ(h}r×h}rØh]rÙUros/dashing/cloudwatch_commonrÚassh ˆh }rÛh}rÜh}rÝh]rÞU%ros-dashing-cloudwatch-metrics-commonrßasssuUrmw_fastrtps_cpprà}rá(h}râh}rãh]räUros/dashing/rmw_fastrtpsråassh ˆh }ræh}rçh}rèh]réUros-dashing-rmw-fastrtps-cpprêasssuUrosidl_typesupport_fastrtps_crë}rì(h}ríh}rîh]rïU'ros/dashing/rosidl_typesupport_fastrtpsrðassh ˆh }rñh}ròh}róh]rôU)ros-dashing-rosidl-typesupport-fastrtps-crõasssuU rqt_shellrö}r÷(h}røh}rùh]rúUros/dashing/rqt_shellrûassh ˆh }rüh}rýh}rþh]rÿUros-dashing-rqt-shellrasssuUrqt_image_viewr}r(h}rh}rh]rUros/dashing/rqt_image_viewrassh ˆh }rh}rh}r h]r Uros-dashing-rqt-image-viewr asssuU cv_bridger }r (h}rh}rh]rUros/dashing/vision_opencvrassh ˆh }rh}rh}rh]rUros-dashing-cv-bridgerasssuUrmw_implementation_cmaker}r(h}rh}rh]rUros/dashing/rmwrassh ˆh }rh}rh}rh]r U$ros-dashing-rmw-implementation-cmaker!asssuUkartech_linear_actuator_msgsr"}r#(h}r$h}r%h]r&Uros/dashing/astuff_sensor_msgsr'assh ˆh }r(h}r)h}r*h]r+U(ros-dashing-kartech-linear-actuator-msgsr,asssuUimage_transport_pluginsr-}r.(h}r/h}r0h]r1U#ros/dashing/image_transport_pluginsr2assh ˆh }r3h}r4h}r5h]r6U#ros-dashing-image-transport-pluginsr7asssuUstd_srvsr8}r9(h}r:h}r;h]r<Uros/dashing/common_interfacesr=assh ˆh }r>h}r?h}r@h]rAUros-dashing-std-srvsrBasssuUros2testrC}rD(h}rEh}rFh]rGUros/dashing/ros_testingrHassh ˆh }rIh}rJh}rKh]rLUros-dashing-ros2testrMasssuUrosidl_typesupport_connext_crN}rO(h}rPh}rQh]rRU&ros/dashing/rosidl_typesupport_connextrSassh ˆh }rTh}rUh}rVh]rWU(ros-dashing-rosidl-typesupport-connext-crXasssuU radar_msgsrY}rZ(h}r[h}r\h]r]Uros/dashing/astuff_sensor_msgsr^assh ˆh }r_h}r`h}rah]rbUros-dashing-radar-msgsrcasssuU ament_pep257rd}re(h}rfh}rgh]rhUros/dashing/ament_lintriassh ˆh }rjh}rkh}rlh]rmUros-dashing-ament-pep257rnasssuUnav2_costmap_2dro}rp(h}rqh}rrh]rsUros/dashing/navigation2rtassh ˆh }ruh}rvh}rwh]rxUros-dashing-nav2-costmap-2dryasssuU%examples_rclcpp_minimal_action_clientrz}r{(h}r|h}r}h]r~Uros/dashing/examplesrassh ˆh }r€h}rh}r‚h]rƒU1ros-dashing-examples-rclcpp-minimal-action-clientr„asssuUhls_lfcd_lds_driverr…}r†(h}r‡h}rˆh]r‰Uros/dashing/hls_lfcd_lds_driverrŠassh ˆh }r‹h}rŒh}rh]rŽUros-dashing-hls-lfcd-lds-driverrasssuUament_cmake_corer}r‘(h}r’h}r“h]r”Uros/dashing/ament_cmaker•assh ˆh }r–h}r—h}r˜h]r™Uros-dashing-ament-cmake-coreršasssuUtracetools_testr›}rœ(h}rh}ržh]rŸUros/dashing/ros2_tracingr assh ˆh }r¡h}r¢h}r£h]r¤Uros-dashing-tracetools-testr¥asssuUvelodyne_driverr¦}r§(h}r¨h}r©h]rªUros/dashing/Autoware.Autor«assh ˆh }r¬h}r­h}r®h]r¯Uros-dashing-velodyne-driverr°asssuU qt_gui_cppr±}r²(h}r³h}r´h]rµUros/dashing/qt_gui_corer¶assh ˆh }r·h}r¸h}r¹h]rºUros-dashing-qt-gui-cppr»asssuUgeodesyr¼}r½(h}r¾h}r¿h]rÀUros/dashing/geographic_inforÁassh ˆh }rÂh}rÃh}rÄh]rÅUros-dashing-geodesyrÆasssuUlaunch_ros_sandboxrÇ}rÈ(h}rÉh}rÊh]rËUros/dashing/launch_ros_sandboxrÌassh ˆh }rÍh}rÎh}rÏh]rÐUros-dashing-launch-ros-sandboxrÑasssuUrqtrÒ}rÓ(h}rÔh}rÕh]rÖUros/dashing/rqtr×assh ˆh }rØh}rÙh}rÚh]rÛUros-dashing-rqtrÜasssuUfmilibrary_vendorrÝ}rÞ(h}rßh}ràh]ráUros/dashing/fmilibrary_vendorrâassh ˆh }rãh}räh}råh]ræUros-dashing-fmilibrary-vendorrçasssuUmessage_filtersrè}ré(h}rêh}rëh]rìUros/dashing/message_filtersríassh ˆh }rîh}rïh}rðh]rñUros-dashing-message-filtersròasssuUrclcpp_componentsró}rô(h}rõh}röh]r÷Uros/dashing/rclcpprøassh ˆh }rùh}rúh}rûh]rüUros-dashing-rclcpp-componentsrýasssuUament_cmake_uncrustifyrþ}rÿ(h}rh}rh]rUros/dashing/ament_lintrassh ˆh }rh}rh}rh]rU"ros-dashing-ament-cmake-uncrustifyrasssuUpy_treesr }r (h}r h}r h]r Uros/dashing/py_treesrassh ˆh }rh}rh}rh]rUros-dashing-py-treesrasssuUautomotive_platform_msgsr}r(h}rh}rh]rU$ros/dashing/automotive_autonomy_msgsrassh ˆh }rh}rh}rh]rU$ros-dashing-automotive-platform-msgsrasssuUrealtime_toolsr}r (h}r!h}r"h]r#Uros/dashing/realtime_toolsr$assh ˆh }r%h}r&h}r'h]r(Uros-dashing-realtime-toolsr)asssuUgazebo_pluginsr*}r+(h}r,h}r-h]r.Uros/dashing/gazebo_ros_pkgsr/assh ˆh }r0h}r1h}r2h]r3Uros-dashing-gazebo-pluginsr4asssuU rqt_gui_pyr5}r6(h}r7h}r8h]r9Uros/dashing/rqtr:assh ˆh }r;h}r<h}r=h]r>Uros-dashing-rqt-gui-pyr?asssuU voxel_gridr@}rA(h}rBh}rCh]rDUros/dashing/Autoware.AutorEassh ˆh }rFh}rGh}rHh]rIUros-dashing-voxel-gridrJasssuUmap_msgsrK}rL(h}rMh}rNh]rOUros/dashing/navigation_msgsrPassh ˆh }rQh}rRh}rSh]rTUros-dashing-map-msgsrUasssuUyaml_cpp_vendorrV}rW(h}rXh}rYh]rZUros/dashing/yaml_cpp_vendorr[assh ˆh }r\h}r]h}r^h]r_Uros-dashing-yaml-cpp-vendorr`asssuUnav2_rviz_pluginsra}rb(h}rch}rdh]reUros/dashing/navigation2rfassh ˆh }rgh}rhh}rih]rjUros-dashing-nav2-rviz-pluginsrkasssuUrosidl_adapterrl}rm(h}rnh}roh]rpUros/dashing/rosidlrqassh ˆh }rrh}rsh}rth]ruUros-dashing-rosidl-adapterrvasssuUneobotix_usboard_msgsrw}rx(h}ryh}rzh]r{Uros/dashing/astuff_sensor_msgsr|assh ˆh }r}h}r~h}rh]r€U!ros-dashing-neobotix-usboard-msgsrasssuU ibeo_msgsr‚}rƒ(h}r„h}r…h]r†Uros/dashing/astuff_sensor_msgsr‡assh ˆh }rˆh}r‰h}rŠh]r‹Uros-dashing-ibeo-msgsrŒasssuu.catkin_lint-1.6.6/test/sources.cache/f535bb317ab409fe66ca87e8e04f167a57d05a5e.pickle000066400000000000000000001675361362025056600264750ustar00rootroot00000000000000€}q(U gmock_vendorq}q(Uosxq}qUhomebrewq}qUpackagesq]q Uros/eloquent/googletestq assU_is_rosq ˆUubuntuq }q Ubionicq}qUaptq}qh]qUros-eloquent-gmock-vendorqasssuUament_copyrightq}q(h}qh}qh]qUros/eloquent/ament_lintqassh ˆh }qh}qh}qh]qUros-eloquent-ament-copyrightqasssuUament_cmake_lint_cmakeq}q (h}q!h}q"h]q#Uros/eloquent/ament_lintq$assh ˆh }q%h}q&h}q'h]q(U#ros-eloquent-ament-cmake-lint-cmakeq)asssuUuncrustify_vendorq*}q+(h}q,h}q-h]q.Uros/eloquent/uncrustify_vendorq/assh ˆh }q0h}q1h}q2h]q3Uros-eloquent-uncrustify-vendorq4asssuU ros2doctorq5}q6(h}q7h}q8h]q9Uros/eloquent/ros2cliq:assh ˆh }q;h}qUros-eloquent-ros2doctorq?asssuU rqt_publisherq@}qA(h}qBh}qCh]qDUros/eloquent/rqt_publisherqEassh ˆh }qFh}qGh}qHh]qIUros-eloquent-rqt-publisherqJasssuUtracetools_traceqK}qL(h}qMh}qNh]qOUros/eloquent/ros2_tracingqPassh ˆh }qQh}qRh}qSh]qTUros-eloquent-tracetools-traceqUasssuUecl_liteqV}qW(h}qXh}qYh]qZUros/eloquent/ecl_liteq[assh ˆh }q\h}q]h}q^h]q_Uros-eloquent-ecl-liteq`asssuUros_baseqa}qb(h}qch}qdh]qeUros/eloquent/variantsqfassh ˆh }qgh}qhh}qih]qjUros-eloquent-ros-baseqkasssuU ament_pclintql}qm(h}qnh}qoh]qpUros/eloquent/ament_lintqqassh ˆh }qrh}qsh}qth]quUros-eloquent-ament-pclintqvasssuU ecl_streamsqw}qx(h}qyh}qzh]q{Uros/eloquent/ecl_coreq|assh ˆh }q}h}q~h}qh]q€Uros-eloquent-ecl-streamsqasssuUros2msgq‚}qƒ(h}q„h}q…h]q†Uros/eloquent/ros2cliq‡assh ˆh }qˆh}q‰h}qŠh]q‹Uros-eloquent-ros2msgqŒasssuU rqt_topicq}qŽ(h}qh}qh]q‘Uros/eloquent/rqt_topicq’assh ˆh }q“h}q”h}q•h]q–Uros-eloquent-rqt-topicq—asssuUdummy_map_serverq˜}q™(h}qšh}q›h]qœUros/eloquent/demosqassh ˆh }qžh}qŸh}q h]q¡Uros-eloquent-dummy-map-serverq¢asssuUecl_ioq£}q¤(h}q¥h}q¦h]q§Uros/eloquent/ecl_liteq¨assh ˆh }q©h}qªh}q«h]q¬Uros-eloquent-ecl-ioq­asssuUcyclonedds_cmake_moduleq®}q¯(h}q°h}q±h]q²Uros/eloquent/rmw_cycloneddsq³assh ˆh }q´h}qµh}q¶h]q·U$ros-eloquent-cyclonedds-cmake-moduleq¸asssuUrqt_service_callerq¹}qº(h}q»h}q¼h]q½Uros/eloquent/rqt_service_callerq¾assh ˆh }q¿h}qÀh}qÁh]qÂUros-eloquent-rqt-service-callerqÃasssuUfastcdrqÄ}qÅ(h}qÆh}qÇh]qÈUros/eloquent/fastcdrqÉassh ˆh }qÊh}qËh}qÌh]qÍUros-eloquent-fastcdrqÎasssuUrosbag2_storageqÏ}qÐ(h}qÑh}qÒh]qÓUros/eloquent/rosbag2qÔassh ˆh }qÕh}qÖh}q×h]qØUros-eloquent-rosbag2-storageqÙasssuU!examples_rclcpp_minimal_publisherqÚ}qÛ(h}qÜh}qÝh]qÞUros/eloquent/examplesqßassh ˆh }qàh}qáh}qâh]qãU.ros-eloquent-examples-rclcpp-minimal-publisherqäasssuUdemo_nodes_cpp_nativeqå}qæ(h}qçh}qèh]qéUros/eloquent/demosqêassh ˆh }qëh}qìh}qíh]qîU"ros-eloquent-demo-nodes-cpp-nativeqïasssuU rcl_actionqð}qñ(h}qòh}qóh]qôUros/eloquent/rclqõassh ˆh }qöh}q÷h}qøh]qùUros-eloquent-rcl-actionqúasssuUpcl_conversionsqû}qü(h}qýh}qþh]qÿUros/eloquent/pcl_conversionsrassh ˆh }rh}rh}rh]rUros-eloquent-pcl-conversionsrasssuU spdlog_vendorr}r(h}rh}r h]r Uros/eloquent/spdlog_vendorr assh ˆh }r h}r h}rh]rUros-eloquent-spdlog-vendorrasssuU ros_workspacer}r(h}rh}rh]rUros/eloquent/ros_workspacerassh ˆh }rh}rh}rh]rUros-eloquent-ros-workspacerasssuUtracetools_analysisr}r(h}rh}rh]r U ros/eloquent/tracetools_analysisr!assh ˆh }r"h}r#h}r$h]r%U ros-eloquent-tracetools-analysisr&asssuU rqt_consoler'}r((h}r)h}r*h]r+Uros/eloquent/rqt_consoler,assh ˆh }r-h}r.h}r/h]r0Uros-eloquent-rqt-consoler1asssuU ecl_sigslotsr2}r3(h}r4h}r5h]r6Uros/eloquent/ecl_corer7assh ˆh }r8h}r9h}r:h]r;Uros-eloquent-ecl-sigslotsr<asssuU geometry2r=}r>(h}r?h}r@h]rAUros/eloquent/geometry2rBassh ˆh }rCh}rDh}rEh]rFUros-eloquent-geometry2rGasssuU osrf_pycommonrH}rI(h}rJh}rKh]rLUros/eloquent/osrf_pycommonrMassh ˆh }rNh}rOh}rPh]rQUros-eloquent-osrf-pycommonrRasssuUrqt_guirS}rT(h}rUh}rVh]rWUros/eloquent/rqtrXassh ˆh }rYh}rZh}r[h]r\Uros-eloquent-rqt-guir]asssuUqt_gui_py_commonr^}r_(h}r`h}rah]rbUros/eloquent/qt_gui_corercassh ˆh }rdh}reh}rfh]rgUros-eloquent-qt-gui-py-commonrhasssuU rclcpp_actionri}rj(h}rkh}rlh]rmUros/eloquent/rclcpprnassh ˆh }roh}rph}rqh]rrUros-eloquent-rclcpp-actionrsasssuUvisualization_msgsrt}ru(h}rvh}rwh]rxUros/eloquent/common_interfacesryassh ˆh }rzh}r{h}r|h]r}Uros-eloquent-visualization-msgsr~asssuU ament_cpplintr}r€(h}rh}r‚h]rƒUros/eloquent/ament_lintr„assh ˆh }r…h}r†h}r‡h]rˆUros-eloquent-ament-cpplintr‰asssuU ecl_threadsrŠ}r‹(h}rŒh}rh]rŽUros/eloquent/ecl_corerassh ˆh }rh}r‘h}r’h]r“Uros-eloquent-ecl-threadsr”asssuU topic_monitorr•}r–(h}r—h}r˜h]r™Uros/eloquent/demosršassh ˆh }r›h}rœh}rh]ržUros-eloquent-topic-monitorrŸasssuUecl_corer }r¡(h}r¢h}r£h]r¤Uros/eloquent/ecl_corer¥assh ˆh }r¦h}r§h}r¨h]r©Uros-eloquent-ecl-corerªasssuU ecl_buildr«}r¬(h}r­h}r®h]r¯Uros/eloquent/ecl_toolsr°assh ˆh }r±h}r²h}r³h]r´Uros-eloquent-ecl-buildrµasssuU ros2launchr¶}r·(h}r¸h}r¹h]rºUros/eloquent/launch_rosr»assh ˆh }r¼h}r½h}r¾h]r¿Uros-eloquent-ros2launchrÀasssuUtracetools_readrÁ}rÂ(h}rÃh}rÄh]rÅUros/eloquent/ros2_tracingrÆassh ˆh }rÇh}rÈh}rÉh]rÊUros-eloquent-tracetools-readrËasssuU ros2lifecyclerÌ}rÍ(h}rÎh}rÏh]rÐUros/eloquent/ros2clirÑassh ˆh }rÒh}rÓh}rÔh]rÕUros-eloquent-ros2lifecyclerÖasssuU test_msgsr×}rØ(h}rÙh}rÚh]rÛUros/eloquent/rcl_interfacesrÜassh ˆh }rÝh}rÞh}rßh]ràUros-eloquent-test-msgsráasssuUexamples_tf2_pyrâ}rã(h}räh}råh]ræUros/eloquent/geometry2rçassh ˆh }rèh}réh}rêh]rëUros-eloquent-examples-tf2-pyrìasssuUament_cmake_export_dependenciesrí}rî(h}rïh}rðh]rñUros/eloquent/ament_cmakeròassh ˆh }róh}rôh}rõh]röU,ros-eloquent-ament-cmake-export-dependenciesr÷asssuUexamples_rclpy_minimal_servicerø}rù(h}rúh}rûh]rüUros/eloquent/examplesrýassh ˆh }rþh}rÿh}rh]rU+ros-eloquent-examples-rclpy-minimal-servicerasssuUexamples_rclcpp_minimal_timerr}r(h}rh}rh]rUros/eloquent/examplesrassh ˆh }r h}r h}r h]r U*ros-eloquent-examples-rclcpp-minimal-timerr asssuUros2clir}r(h}rh}rh]rUros/eloquent/ros2clirassh ˆh }rh}rh}rh]rUros-eloquent-ros2clirasssuUrosidl_typesupport_cppr}r(h}rh}rh]rUros/eloquent/rosidl_typesupportrassh ˆh }rh}r h}r!h]r"U#ros-eloquent-rosidl-typesupport-cppr#asssuU fmi_adapterr$}r%(h}r&h}r'h]r(Uros/eloquent/fmi_adapter_ros2r)assh ˆh }r*h}r+h}r,h]r-Uros-eloquent-fmi-adapterr.asssuU ament_mypyr/}r0(h}r1h}r2h]r3Uros/eloquent/ament_lintr4assh ˆh }r5h}r6h}r7h]r8Uros-eloquent-ament-mypyr9asssuU ecl_eigenr:}r;(h}r<h}r=h]r>Uros/eloquent/ecl_corer?assh ˆh }r@h}rAh}rBh]rCUros-eloquent-ecl-eigenrDasssuU vision_opencvrE}rF(h}rGh}rHh]rIUros/eloquent/vision_opencvrJassh ˆh }rKh}rLh}rMh]rNUros-eloquent-vision-opencvrOasssuUlifecycle_msgsrP}rQ(h}rRh}rSh]rTUros/eloquent/rcl_interfacesrUassh ˆh }rVh}rWh}rXh]rYUros-eloquent-lifecycle-msgsrZasssuUrosbag2_bag_v2_pluginsr[}r\(h}r]h}r^h]r_Uros/eloquent/rosbag2_bag_v2r`assh ˆh }rah}rbh}rch]rdU#ros-eloquent-rosbag2-bag-v2-pluginsreasssuUament_cmake_pythonrf}rg(h}rhh}rih]rjUros/eloquent/ament_cmakerkassh ˆh }rlh}rmh}rnh]roUros-eloquent-ament-cmake-pythonrpasssuUament_cmake_cppcheckrq}rr(h}rsh}rth]ruUros/eloquent/ament_lintrvassh ˆh }rwh}rxh}ryh]rzU!ros-eloquent-ament-cmake-cppcheckr{asssuUtinydir_vendorr|}r}(h}r~h}rh]r€Uros/eloquent/tinydir_vendorrassh ˆh }r‚h}rƒh}r„h]r…Uros-eloquent-tinydir-vendorr†asssuUament_cmake_export_librariesr‡}rˆ(h}r‰h}rŠh]r‹Uros/eloquent/ament_cmakerŒassh ˆh }rh}rŽh}rh]rU)ros-eloquent-ament-cmake-export-librariesr‘asssuUrqt_robot_steeringr’}r“(h}r”h}r•h]r–Uros/eloquent/rqt_robot_steeringr—assh ˆh }r˜h}r™h}ršh]r›Uros-eloquent-rqt-robot-steeringrœasssuUtf2_geometry_msgsr}rž(h}rŸh}r h]r¡Uros/eloquent/geometry2r¢assh ˆh }r£h}r¤h}r¥h]r¦Uros-eloquent-tf2-geometry-msgsr§asssuUros2runr¨}r©(h}rªh}r«h]r¬Uros/eloquent/ros2clir­assh ˆh }r®h}r¯h}r°h]r±Uros-eloquent-ros2runr²asssuUfmilibrary_vendorr³}r´(h}rµh}r¶h]r·Uros/eloquent/fmilibrary_vendorr¸assh ˆh }r¹h}rºh}r»h]r¼Uros-eloquent-fmilibrary-vendorr½asssuU sensor_msgsr¾}r¿(h}rÀh}rÁh]rÂUros/eloquent/common_interfacesrÃassh ˆh }rÄh}rÅh}rÆh]rÇUros-eloquent-sensor-msgsrÈasssuUecl_sigslots_literÉ}rÊ(h}rËh}rÌh]rÍUros/eloquent/ecl_literÎassh ˆh }rÏh}rÐh}rÑh]rÒUros-eloquent-ecl-sigslots-literÓasssuUdomain_coordinatorrÔ}rÕ(h}rÖh}r×h]rØUros/eloquent/ament_cmake_rosrÙassh ˆh }rÚh}rÛh}rÜh]rÝUros-eloquent-domain-coordinatorrÞasssuUament_cmake_versionrß}rà(h}ráh}râh]rãUros/eloquent/ament_cmakeräassh ˆh }råh}ræh}rçh]rèU ros-eloquent-ament-cmake-versionréasssuU ament_xmllintrê}rë(h}rìh}ríh]rîUros/eloquent/ament_lintrïassh ˆh }rðh}rñh}ròh]róUros-eloquent-ament-xmllintrôasssuU ecl_core_appsrõ}rö(h}r÷h}røh]rùUros/eloquent/ecl_corerúassh ˆh }rûh}rüh}rýh]rþUros-eloquent-ecl-core-appsrÿasssuU gazebo_rosr}r(h}rh}rh]rUros/eloquent/gazebo_ros_pkgsrassh ˆh }rh}rh}rh]r Uros-eloquent-gazebo-rosr asssuUlaunch_testing_rosr }r (h}r h}rh]rUros/eloquent/launch_rosrassh ˆh }rh}rh}rh]rUros-eloquent-launch-testing-rosrasssuUament_cmake_export_interfacesr}r(h}rh}rh]rUros/eloquent/ament_cmakerassh ˆh }rh}rh}rh]rU*ros-eloquent-ament-cmake-export-interfacesr asssuUament_cmake_gtestr!}r"(h}r#h}r$h]r%Uros/eloquent/ament_cmaker&assh ˆh }r'h}r(h}r)h]r*Uros-eloquent-ament-cmake-gtestr+asssuUopensplice_cmake_moduler,}r-(h}r.h}r/h]r0U*ros/eloquent/rosidl_typesupport_opensplicer1assh ˆh }r2h}r3h}r4h]r5U$ros-eloquent-opensplice-cmake-moduler6asssuUecl_mathr7}r8(h}r9h}r:h]r;Uros/eloquent/ecl_corer<assh ˆh }r=h}r>h}r?h]r@Uros-eloquent-ecl-mathrAasssuUecl_linear_algebrarB}rC(h}rDh}rEh]rFUros/eloquent/ecl_corerGassh ˆh }rHh}rIh}rJh]rKUros-eloquent-ecl-linear-algebrarLasssuU logging_demorM}rN(h}rOh}rPh]rQUros/eloquent/demosrRassh ˆh }rSh}rTh}rUh]rVUros-eloquent-logging-demorWasssuUgazebo_ros_pkgsrX}rY(h}rZh}r[h]r\Uros/eloquent/gazebo_ros_pkgsr]assh ˆh }r^h}r_h}r`h]raUros-eloquent-gazebo-ros-pkgsrbasssuU py_trees_jsrc}rd(h}reh}rfh]rgUros/eloquent/py_trees_jsrhassh ˆh }rih}rjh}rkh]rlUros-eloquent-py-trees-jsrmasssuUrqt_srvrn}ro(h}rph}rqh]rrUros/eloquent/rqt_srvrsassh ˆh }rth}ruh}rvh]rwUros-eloquent-rqt-srvrxasssuUecl_ipcry}rz(h}r{h}r|h]r}Uros/eloquent/ecl_corer~assh ˆh }rh}r€h}rh]r‚Uros-eloquent-ecl-ipcrƒasssuU tracetoolsr„}r…(h}r†h}r‡h]rˆUros/eloquent/ros2_tracingr‰assh ˆh }rŠh}r‹h}rŒh]rUros-eloquent-tracetoolsrŽasssuU$examples_rclpy_minimal_action_serverr}r(h}r‘h}r’h]r“Uros/eloquent/examplesr”assh ˆh }r•h}r–h}r—h]r˜U1ros-eloquent-examples-rclpy-minimal-action-serverr™asssuUament_cmake_clang_tidyrš}r›(h}rœh}rh]ržUros/eloquent/ament_lintrŸassh ˆh }r h}r¡h}r¢h]r£U#ros-eloquent-ament-cmake-clang-tidyr¤asssuUrosidl_generator_dds_idlr¥}r¦(h}r§h}r¨h]r©Uros/eloquent/rosidl_ddsrªassh ˆh }r«h}r¬h}r­h]r®U%ros-eloquent-rosidl-generator-dds-idlr¯asssuUrosidl_typesupport_fastrtps_cppr°}r±(h}r²h}r³h]r´U(ros/eloquent/rosidl_typesupport_fastrtpsrµassh ˆh }r¶h}r·h}r¸h]r¹U,ros-eloquent-rosidl-typesupport-fastrtps-cpprºasssuU ecl_consoler»}r¼(h}r½h}r¾h]r¿Uros/eloquent/ecl_literÀassh ˆh }rÁh}rÂh}rÃh]rÄUros-eloquent-ecl-consolerÅasssuU lifecyclerÆ}rÇ(h}rÈh}rÉh]rÊUros/eloquent/demosrËassh ˆh }rÌh}rÍh}rÎh]rÏUros-eloquent-lifecyclerÐasssuU tf2_eigenrÑ}rÒ(h}rÓh}rÔh]rÕUros/eloquent/geometry2rÖassh ˆh }r×h}rØh}rÙh]rÚUros-eloquent-tf2-eigenrÛasssuU rqt_tf_treerÜ}rÝ(h}rÞh}rßh]ràUros/eloquent/rqt_tf_treeráassh ˆh }râh}rãh}räh]råUros-eloquent-rqt-tf-treeræasssuU rosidl_parserrç}rè(h}réh}rêh]rëUros/eloquent/rosidlrìassh ˆh }ríh}rîh}rïh]rðUros-eloquent-rosidl-parserrñasssuUfastrtpsrò}ró(h}rôh}rõh]röUros/eloquent/fastrtpsr÷assh ˆh }røh}rùh}rúh]rûUros-eloquent-fastrtpsrüasssuUrcl_logging_log4cxxrý}rþ(h}rÿh}rh]rUros/eloquent/rcl_loggingrassh ˆh }rh}rh}rh]rU ros-eloquent-rcl-logging-log4cxxrasssuUtheora_image_transportr}r (h}r h}r h]r U$ros/eloquent/image_transport_pluginsr assh ˆh }rh}rh}rh]rU#ros-eloquent-theora-image-transportrasssuU geometry_msgsr}r(h}rh}rh]rUros/eloquent/common_interfacesrassh ˆh }rh}rh}rh]rUros-eloquent-geometry-msgsrasssuU ros2multicastr}r(h}r h}r!h]r"Uros/eloquent/ros2clir#assh ˆh }r$h}r%h}r&h]r'Uros-eloquent-ros2multicastr(asssuUament_lint_commonr)}r*(h}r+h}r,h]r-Uros/eloquent/ament_lintr.assh ˆh }r/h}r0h}r1h]r2Uros-eloquent-ament-lint-commonr3asssuUurdfr4}r5(h}r6h}r7h]r8Uros/eloquent/urdfr9assh ˆh }r:h}r;h}r<h]r=Uros-eloquent-urdfr>asssuUresource_retrieverr?}r@(h}rAh}rBh]rCUros/eloquent/resource_retrieverrDassh ˆh }rEh}rFh}rGh]rHUros-eloquent-resource-retrieverrIasssuU rqt_graphrJ}rK(h}rLh}rMh]rNUros/eloquent/rqt_graphrOassh ˆh }rPh}rQh}rRh]rSUros-eloquent-rqt-graphrTasssuUrviz2rU}rV(h}rWh}rXh]rYUros/eloquent/rvizrZassh ˆh }r[h}r\h}r]h]r^Uros-eloquent-rviz2r_asssuUqt_guir`}ra(h}rbh}rch]rdUros/eloquent/qt_gui_corereassh ˆh }rfh}rgh}rhh]riUros-eloquent-qt-guirjasssuUros2srvrk}rl(h}rmh}rnh]roUros/eloquent/ros2clirpassh ˆh }rqh}rrh}rsh]rtUros-eloquent-ros2srvruasssuU!rosidl_typesupport_opensplice_cpprv}rw(h}rxh}ryh]rzU*ros/eloquent/rosidl_typesupport_opensplicer{assh ˆh }r|h}r}h}r~h]rU.ros-eloquent-rosidl-typesupport-opensplice-cppr€asssuUrttestr}r‚(h}rƒh}r„h]r…Uros/eloquent/realtime_supportr†assh ˆh }r‡h}rˆh}r‰h]rŠUros-eloquent-rttestr‹asssuUament_index_cpprŒ}r(h}rŽh}rh]rUros/eloquent/ament_indexr‘assh ˆh }r’h}r“h}r”h]r•Uros-eloquent-ament-index-cppr–asssuUrviz_ogre_vendorr—}r˜(h}r™h}ršh]r›Uros/eloquent/rvizrœassh ˆh }rh}ržh}rŸh]r Uros-eloquent-rviz-ogre-vendorr¡asssuUaction_tutorials_interfacesr¢}r£(h}r¤h}r¥h]r¦Uros/eloquent/demosr§assh ˆh }r¨h}r©h}rªh]r«U(ros-eloquent-action-tutorials-interfacesr¬asssuUeigen_stl_containersr­}r®(h}r¯h}r°h]r±U!ros/eloquent/eigen_stl_containersr²assh ˆh }r³h}r´h}rµh]r¶U!ros-eloquent-eigen-stl-containersr·asssuU&examples_rclcpp_multithreaded_executorr¸}r¹(h}rºh}r»h]r¼Uros/eloquent/examplesr½assh ˆh }r¾h}r¿h}rÀh]rÁU3ros-eloquent-examples-rclcpp-multithreaded-executorrÂasssuUrmw_cyclonedds_cpprÃ}rÄ(h}rÅh}rÆh]rÇUros/eloquent/rmw_cycloneddsrÈassh ˆh }rÉh}rÊh}rËh]rÌUros-eloquent-rmw-cyclonedds-cpprÍasssuU poco_vendorrÎ}rÏ(h}rÐh}rÑh]rÒUros/eloquent/poco_vendorrÓassh ˆh }rÔh}rÕh}rÖh]r×Uros-eloquent-poco-vendorrØasssuUpython_cmake_modulerÙ}rÚ(h}rÛh}rÜh]rÝU ros/eloquent/python_cmake_modulerÞassh ˆh }rßh}ràh}ráh]râU ros-eloquent-python-cmake-modulerãasssuU rqt_actionrä}rå(h}ræh}rçh]rèUros/eloquent/rqt_actionréassh ˆh }rêh}rëh}rìh]ríUros-eloquent-rqt-actionrîasssuUxacrorï}rð(h}rñh}ròh]róUros/eloquent/xacrorôassh ˆh }rõh}röh}r÷h]røUros-eloquent-xacrorùasssuUrosbag2rú}rû(h}rüh}rýh]rþUros/eloquent/rosbag2rÿassh ˆh }rh}rh}rh]rUros-eloquent-rosbag2rasssuUament_cmake_noser}r(h}rh}rh]r Uros/eloquent/ament_cmaker assh ˆh }r h}r h}r h]rUros-eloquent-ament-cmake-noserasssuUintra_process_demor}r(h}rh}rh]rUros/eloquent/demosrassh ˆh }rh}rh}rh]rUros-eloquent-intra-process-demorasssuU pluginlibr}r(h}rh}rh]rUros/eloquent/pluginlibr assh ˆh }r!h}r"h}r#h]r$Uros-eloquent-pluginlibr%asssuUament_cmake_export_definitionsr&}r'(h}r(h}r)h]r*Uros/eloquent/ament_cmaker+assh ˆh }r,h}r-h}r.h]r/U+ros-eloquent-ament-cmake-export-definitionsr0asssuU ros1_bridger1}r2(h}r3h}r4h]r5Uros/eloquent/ros1_bridger6assh ˆh }r7h}r8h}r9h]r:Uros-eloquent-ros1-bridger;asssuU rosbag2_testsr<}r=(h}r>h}r?h]r@Uros/eloquent/rosbag2rAassh ˆh }rBh}rCh}rDh]rEUros-eloquent-rosbag2-testsrFasssuUsophusrG}rH(h}rIh}rJh]rKUros/eloquent/sophusrLassh ˆh }rMh}rNh}rOh]rPUros-eloquent-sophusrQasssuUament_clang_tidyrR}rS(h}rTh}rUh]rVUros/eloquent/ament_lintrWassh ˆh }rXh}rYh}rZh]r[Uros-eloquent-ament-clang-tidyr\asssuU launch_rosr]}r^(h}r_h}r`h]raUros/eloquent/launch_rosrbassh ˆh }rch}rdh}reh]rfUros-eloquent-launch-rosrgasssuUros2noderh}ri(h}rjh}rkh]rlUros/eloquent/ros2clirmassh ˆh }rnh}roh}rph]rqUros-eloquent-ros2noderrasssuUcartographer_rosrs}rt(h}ruh}rvh]rwUros/eloquent/cartographer_rosrxassh ˆh }ryh}rzh}r{h]r|Uros-eloquent-cartographer-rosr}asssuUtf2_msgsr~}r(h}r€h}rh]r‚Uros/eloquent/geometry2rƒassh ˆh }r„h}r…h}r†h]r‡Uros-eloquent-tf2-msgsrˆasssuU qt_gui_appr‰}rŠ(h}r‹h}rŒh]rUros/eloquent/qt_gui_corerŽassh ˆh }rh}rh}r‘h]r’Uros-eloquent-qt-gui-appr“asssuUexamples_rclpy_minimal_clientr”}r•(h}r–h}r—h]r˜Uros/eloquent/examplesr™assh ˆh }ršh}r›h}rœh]rU*ros-eloquent-examples-rclpy-minimal-clientržasssuU rcl_lifecyclerŸ}r (h}r¡h}r¢h]r£Uros/eloquent/rclr¤assh ˆh }r¥h}r¦h}r§h]r¨Uros-eloquent-rcl-lifecycler©asssuUros2pkgrª}r«(h}r¬h}r­h]r®Uros/eloquent/ros2clir¯assh ˆh }r°h}r±h}r²h]r³Uros-eloquent-ros2pkgr´asssuU system_modesrµ}r¶(h}r·h}r¸h]r¹Uros/eloquent/system_modesrºassh ˆh }r»h}r¼h}r½h]r¾Uros-eloquent-system-modesr¿asssuUexamples_rclcpp_minimal_clientrÀ}rÁ(h}rÂh}rÃh]rÄUros/eloquent/examplesrÅassh ˆh }rÆh}rÇh}rÈh]rÉU+ros-eloquent-examples-rclcpp-minimal-clientrÊasssuUquality_of_service_demo_pyrË}rÌ(h}rÍh}rÎh]rÏUros/eloquent/demosrÐassh ˆh }rÑh}rÒh}rÓh]rÔU'ros-eloquent-quality-of-service-demo-pyrÕasssuU rosidl_cmakerÖ}r×(h}rØh}rÙh]rÚUros/eloquent/rosidlrÛassh ˆh }rÜh}rÝh}rÞh]rßUros-eloquent-rosidl-cmakeràasssuUdepthimage_to_laserscanrá}râ(h}rãh}räh]råU$ros/eloquent/depthimage_to_laserscanræassh ˆh }rçh}rèh}réh]rêU$ros-eloquent-depthimage-to-laserscanrëasssuUament_cmake_pytestrì}rí(h}rîh}rïh]rðUros/eloquent/ament_cmakerñassh ˆh }ròh}róh}rôh]rõUros-eloquent-ament-cmake-pyteströasssuUlaunchr÷}rø(h}rùh}rúh]rûUros/eloquent/launchrüassh ˆh }rýh}rþh}rÿh]rUros-eloquent-launchrasssuU stereo_msgsr}r(h}rh}rh]rUros/eloquent/common_interfacesrassh ˆh }rh}r h}r h]r Uros-eloquent-stereo-msgsr asssuUlibyaml_vendorr }r(h}rh}rh]rUros/eloquent/libyaml_vendorrassh ˆh }rh}rh}rh]rUros-eloquent-libyaml-vendorrasssuUament_cmake_autor}r(h}rh}rh]rUros/eloquent/ament_cmakerassh ˆh }rh}rh}r h]r!Uros-eloquent-ament-cmake-autor"asssuUtrajectory_msgsr#}r$(h}r%h}r&h]r'Uros/eloquent/common_interfacesr(assh ˆh }r)h}r*h}r+h]r,Uros-eloquent-trajectory-msgsr-asssuUrosidl_default_runtimer.}r/(h}r0h}r1h]r2Uros/eloquent/rosidl_defaultsr3assh ˆh }r4h}r5h}r6h]r7U#ros-eloquent-rosidl-default-runtimer8asssuUament_cppcheckr9}r:(h}r;h}r<h]r=Uros/eloquent/ament_lintr>assh ˆh }r?h}r@h}rAh]rBUros-eloquent-ament-cppcheckrCasssuU ecl_errorsrD}rE(h}rFh}rGh]rHUros/eloquent/ecl_literIassh ˆh }rJh}rKh}rLh]rMUros-eloquent-ecl-errorsrNasssuU launch_yamlrO}rP(h}rQh}rRh]rSUros/eloquent/launchrTassh ˆh }rUh}rVh}rWh]rXUros-eloquent-launch-yamlrYasssuU rviz_commonrZ}r[(h}r\h}r]h]r^Uros/eloquent/rvizr_assh ˆh }r`h}rah}rbh]rcUros-eloquent-rviz-commonrdasssuUament_cmake_pclintre}rf(h}rgh}rhh]riUros/eloquent/ament_lintrjassh ˆh }rkh}rlh}rmh]rnUros-eloquent-ament-cmake-pclintroasssuUtf2rp}rq(h}rrh}rsh]rtUros/eloquent/geometry2ruassh ˆh }rvh}rwh}rxh]ryUros-eloquent-tf2rzasssuUrcl_yaml_param_parserr{}r|(h}r}h}r~h]rUros/eloquent/rclr€assh ˆh }rh}r‚h}rƒh]r„U"ros-eloquent-rcl-yaml-param-parserr…asssuUecl_timer†}r‡(h}rˆh}r‰h]rŠUros/eloquent/ecl_corer‹assh ˆh }rŒh}rh}rŽh]rUros-eloquent-ecl-timerasssuUrosbag2_storage_default_pluginsr‘}r’(h}r“h}r”h]r•Uros/eloquent/rosbag2r–assh ˆh }r—h}r˜h}r™h]ršU,ros-eloquent-rosbag2-storage-default-pluginsr›asssuUpy_trees_ros_interfacesrœ}r(h}ržh}rŸh]r U$ros/eloquent/py_trees_ros_interfacesr¡assh ˆh }r¢h}r£h}r¤h]r¥U$ros-eloquent-py-trees-ros-interfacesr¦asssuUeigen3_cmake_moduler§}r¨(h}r©h}rªh]r«U ros/eloquent/eigen3_cmake_moduler¬assh ˆh }r­h}r®h}r¯h]r°U ros-eloquent-eigen3-cmake-moduler±asssuUcompressed_image_transportr²}r³(h}r´h}rµh]r¶U$ros/eloquent/image_transport_pluginsr·assh ˆh }r¸h}r¹h}rºh]r»U'ros-eloquent-compressed-image-transportr¼asssuU gazebo_msgsr½}r¾(h}r¿h}rÀh]rÁUros/eloquent/gazebo_ros_pkgsrÂassh ˆh }rÃh}rÄh}rÅh]rÆUros-eloquent-gazebo-msgsrÇasssuUimage_transportrÈ}rÉ(h}rÊh}rËh]rÌUros/eloquent/image_commonrÍassh ˆh }rÎh}rÏh}rÐh]rÑUros-eloquent-image-transportrÒasssuUecl_mobile_robotrÓ}rÔ(h}rÕh}rÖh]r×Uros/eloquent/ecl_corerØassh ˆh }rÙh}rÚh}rÛh]rÜUros-eloquent-ecl-mobile-robotrÝasssuU qt_dotgraphrÞ}rß(h}ràh}ráh]râUros/eloquent/qt_gui_corerãassh ˆh }räh}råh}ræh]rçUros-eloquent-qt-dotgraphrèasssuUrqt_image_viewré}rê(h}rëh}rìh]ríUros/eloquent/rqt_image_viewrîassh ˆh }rïh}rðh}rñh]ròUros-eloquent-rqt-image-viewróasssuU ecl_utilitiesrô}rõ(h}röh}r÷h]røUros/eloquent/ecl_corerùassh ˆh }rúh}rûh}rüh]rýUros-eloquent-ecl-utilitiesrþasssuUament_cmake_include_directoriesrÿ}r(h}rh}rh]rUros/eloquent/ament_cmakerassh ˆh }rh}rh}rh]rU,ros-eloquent-ament-cmake-include-directoriesr asssuUament_cmake_target_dependenciesr }r (h}r h}r h]rUros/eloquent/ament_cmakerassh ˆh }rh}rh}rh]rU,ros-eloquent-ament-cmake-target-dependenciesrasssuU ecl_conceptsr}r(h}rh}rh]rUros/eloquent/ecl_corerassh ˆh }rh}rh}rh]rUros-eloquent-ecl-conceptsrasssuUexamples_rclcpp_minimal_servicer }r!(h}r"h}r#h]r$Uros/eloquent/examplesr%assh ˆh }r&h}r'h}r(h]r)U,ros-eloquent-examples-rclcpp-minimal-servicer*asssuU ros2componentr+}r,(h}r-h}r.h]r/Uros/eloquent/ros2clir0assh ˆh }r1h}r2h}r3h]r4Uros-eloquent-ros2componentr5asssuUtlsf_cppr6}r7(h}r8h}r9h]r:Uros/eloquent/realtime_supportr;assh ˆh }r<h}r=h}r>h]r?Uros-eloquent-tlsf-cppr@asssuUpy_trees_ros_tutorialsrA}rB(h}rCh}rDh]rEU#ros/eloquent/py_trees_ros_tutorialsrFassh ˆh }rGh}rHh}rIh]rJU#ros-eloquent-py-trees-ros-tutorialsrKasssuUtf2_kdlrL}rM(h}rNh}rOh]rPUros/eloquent/geometry2rQassh ˆh }rRh}rSh}rTh]rUUros-eloquent-tf2-kdlrVasssuU ros2actionrW}rX(h}rYh}rZh]r[Uros/eloquent/ros2clir\assh ˆh }r]h}r^h}r_h]r`Uros-eloquent-ros2actionraasssuU kdl_parserrb}rc(h}rdh}reh]rfUros/eloquent/kdl_parserrgassh ˆh }rhh}rih}rjh]rkUros-eloquent-kdl-parserrlasssuUrosidl_generator_pyrm}rn(h}roh}rph]rqUros/eloquent/rosidl_pythonrrassh ˆh }rsh}rth}ruh]rvU ros-eloquent-rosidl-generator-pyrwasssuUrmw_connext_shared_cpprx}ry(h}rzh}r{h]r|Uros/eloquent/rmw_connextr}assh ˆh }r~h}rh}r€h]rU#ros-eloquent-rmw-connext-shared-cppr‚asssuUecl_type_traitsrƒ}r„(h}r…h}r†h]r‡Uros/eloquent/ecl_corerˆassh ˆh }r‰h}rŠh}r‹h]rŒUros-eloquent-ecl-type-traitsrasssuUament_index_pythonrŽ}r(h}rh}r‘h]r’Uros/eloquent/ament_indexr“assh ˆh }r”h}r•h}r–h]r—Uros-eloquent-ament-index-pythonr˜asssuUament_cmake_gmockr™}rš(h}r›h}rœh]rUros/eloquent/ament_cmakeržassh ˆh }rŸh}r h}r¡h]r¢Uros-eloquent-ament-cmake-gmockr£asssuU!examples_rclpy_minimal_subscriberr¤}r¥(h}r¦h}r§h]r¨Uros/eloquent/examplesr©assh ˆh }rªh}r«h}r¬h]r­U.ros-eloquent-examples-rclpy-minimal-subscriberr®asssuUcartographer_ros_msgsr¯}r°(h}r±h}r²h]r³Uros/eloquent/cartographer_rosr´assh ˆh }rµh}r¶h}r·h]r¸U"ros-eloquent-cartographer-ros-msgsr¹asssuUament_cmake_cpplintrº}r»(h}r¼h}r½h]r¾Uros/eloquent/ament_lintr¿assh ˆh }rÀh}rÁh}rÂh]rÃU ros-eloquent-ament-cmake-cpplintrÄasssuUrmw_opensplice_cpprÅ}rÆ(h}rÇh}rÈh]rÉUros/eloquent/rmw_opensplicerÊassh ˆh }rËh}rÌh}rÍh]rÎUros-eloquent-rmw-opensplice-cpprÏasssuU rqt_py_commonrÐ}rÑ(h}rÒh}rÓh]rÔUros/eloquent/rqtrÕassh ˆh }rÖh}r×h}rØh]rÙUros-eloquent-rqt-py-commonrÚasssuU compressed_depth_image_transportrÛ}rÜ(h}rÝh}rÞh]rßU$ros/eloquent/image_transport_pluginsràassh ˆh }ráh}râh}rãh]räU-ros-eloquent-compressed-depth-image-transportråasssuUquality_of_service_demo_cppræ}rç(h}rèh}réh]rêUros/eloquent/demosrëassh ˆh }rìh}ríh}rîh]rïU(ros-eloquent-quality-of-service-demo-cpprðasssuU ros2servicerñ}rò(h}róh}rôh]rõUros/eloquent/ros2cliröassh ˆh }r÷h}røh}rùh]rúUros-eloquent-ros2servicerûasssuUros2trace_analysisrü}rý(h}rþh}rÿh]rU ros/eloquent/tracetools_analysisrassh ˆh }rh}rh}rh]rUros-eloquent-ros2trace-analysisrasssuUdummy_robot_bringupr}r(h}r h}r h]r Uros/eloquent/demosr assh ˆh }r h}rh}rh]rU ros-eloquent-dummy-robot-bringuprasssuUrmw_fastrtps_shared_cppr}r(h}rh}rh]rUros/eloquent/rmw_fastrtpsrassh ˆh }rh}rh}rh]rU$ros-eloquent-rmw-fastrtps-shared-cpprasssuUrviz_default_pluginsr}r(h}rh}r h]r!Uros/eloquent/rvizr"assh ˆh }r#h}r$h}r%h]r&U!ros-eloquent-rviz-default-pluginsr'asssuU orocos_kdlr(}r)(h}r*h}r+h]r,U'ros/eloquent/orocos_kinematics_dynamicsr-assh ˆh }r.h}r/h}r0h]r1Uros-eloquent-orocos-kdlr2asssuUrcl_interfacesr3}r4(h}r5h}r6h]r7Uros/eloquent/rcl_interfacesr8assh ˆh }r9h}r:h}r;h]r<Uros-eloquent-rcl-interfacesr=asssuU ament_packager>}r?(h}r@h}rAh]rBUros/eloquent/ament_packagerCassh ˆh }rDh}rEh}rFh]rGUros-eloquent-ament-packagerHasssuUunique_identifier_msgsrI}rJ(h}rKh}rLh]rMU#ros/eloquent/unique_identifier_msgsrNassh ˆh }rOh}rPh}rQh]rRU#ros-eloquent-unique-identifier-msgsrSasssuUaction_tutorials_cpprT}rU(h}rVh}rWh]rXUros/eloquent/demosrYassh ˆh }rZh}r[h}r\h]r]U!ros-eloquent-action-tutorials-cppr^asssuUexamples_rclpy_executorsr_}r`(h}rah}rbh]rcUros/eloquent/examplesrdassh ˆh }reh}rfh}rgh]rhU%ros-eloquent-examples-rclpy-executorsriasssuUecl_exceptionsrj}rk(h}rlh}rmh]rnUros/eloquent/ecl_coreroassh ˆh }rph}rqh}rrh]rsUros-eloquent-ecl-exceptionsrtasssuUcommon_interfacesru}rv(h}rwh}rxh]ryUros/eloquent/common_interfacesrzassh ˆh }r{h}r|h}r}h]r~Uros-eloquent-common-interfacesrasssuUament_cmake_pep8r€}r(h}r‚h}rƒh]r„Uros/eloquent/ament_lintr…assh ˆh }r†h}r‡h}rˆh]r‰Uros-eloquent-ament-cmake-pep8rŠasssuUrosidl_typesupport_opensplice_cr‹}rŒ(h}rh}rŽh]rU*ros/eloquent/rosidl_typesupport_opensplicerassh ˆh }r‘h}r’h}r“h]r”U,ros-eloquent-rosidl-typesupport-opensplice-cr•asssuU shape_msgsr–}r—(h}r˜h}r™h]ršUros/eloquent/common_interfacesr›assh ˆh }rœh}rh}ržh]rŸUros-eloquent-shape-msgsr asssuUecl_containersr¡}r¢(h}r£h}r¤h]r¥Uros/eloquent/ecl_corer¦assh ˆh }r§h}r¨h}r©h]rªUros-eloquent-ecl-containersr«asssuU ecl_licenser¬}r­(h}r®h}r¯h]r°Uros/eloquent/ecl_toolsr±assh ˆh }r²h}r³h}r´h]rµUros-eloquent-ecl-licenser¶asssuUteleop_twist_keyboardr·}r¸(h}r¹h}rºh]r»U"ros/eloquent/teleop_twist_keyboardr¼assh ˆh }r½h}r¾h}r¿h]rÀU"ros-eloquent-teleop-twist-keyboardrÁasssuUament_cmake_xmllintrÂ}rÃ(h}rÄh}rÅh]rÆUros/eloquent/ament_lintrÇassh ˆh }rÈh}rÉh}rÊh]rËU ros-eloquent-ament-cmake-xmllintrÌasssuU&ament_cmake_export_include_directoriesrÍ}rÎ(h}rÏh}rÐh]rÑUros/eloquent/ament_cmakerÒassh ˆh }rÓh}rÔh}rÕh]rÖU3ros-eloquent-ament-cmake-export-include-directoriesr×asssuU rosgraph_msgsrØ}rÙ(h}rÚh}rÛh]rÜUros/eloquent/rcl_interfacesrÝassh ˆh }rÞh}rßh}ràh]ráUros-eloquent-rosgraph-msgsrâasssuUecl_mplrã}rä(h}råh}ræh]rçUros/eloquent/ecl_corerèassh ˆh }réh}rêh}rëh]rìUros-eloquent-ecl-mplríasssuUecl_manipulatorsrî}rï(h}rðh}rñh]ròUros/eloquent/ecl_coreróassh ˆh }rôh}rõh}röh]r÷Uros-eloquent-ecl-manipulatorsrøasssuUrqt_msgrù}rú(h}rûh}rüh]rýUros/eloquent/rqt_msgrþassh ˆh }rÿh}r h}r h]r Uros-eloquent-rqt-msgr asssuUrcl_logging_spdlogr }r (h}r h}r h]r Uros/eloquent/rcl_loggingr assh ˆh }r h}r h}r h]r Uros-eloquent-rcl-logging-spdlogr asssuUrmwr }r (h}r h}r h]r Uros/eloquent/rmwr assh ˆh }r h}r h}r h]r Uros-eloquent-rmwr asssuUfmi_adapter_examplesr }r (h}r h}r h]r Uros/eloquent/fmi_adapter_ros2r assh ˆh }r h}r! h}r" h]r# U!ros-eloquent-fmi-adapter-examplesr$ asssuUecl_filesystemr% }r& (h}r' h}r( h]r) Uros/eloquent/ecl_corer* assh ˆh }r+ h}r, h}r- h]r. Uros-eloquent-ecl-filesystemr/ asssuUpython_qt_bindingr0 }r1 (h}r2 h}r3 h]r4 Uros/eloquent/python_qt_bindingr5 assh ˆh }r6 h}r7 h}r8 h]r9 Uros-eloquent-python-qt-bindingr: asssuU rqt_gui_cppr; }r< (h}r= h}r> h]r? Uros/eloquent/rqtr@ assh ˆh }rA h}rB h}rC h]rD Uros-eloquent-rqt-gui-cpprE asssuUshared_queues_vendorrF }rG (h}rH h}rI h]rJ Uros/eloquent/rosbag2rK assh ˆh }rL h}rM h}rN h]rO U!ros-eloquent-shared-queues-vendorrP asssuUament_cmake_pyflakesrQ }rR (h}rS h}rT h]rU Uros/eloquent/ament_lintrV assh ˆh }rW h}rX h}rY h]rZ U!ros-eloquent-ament-cmake-pyflakesr[ asssuUrviz_assimp_vendorr\ }r] (h}r^ h}r_ h]r` Uros/eloquent/rvizra assh ˆh }rb h}rc h}rd h]re Uros-eloquent-rviz-assimp-vendorrf asssuU%examples_rclcpp_minimal_action_serverrg }rh (h}ri h}rj h]rk Uros/eloquent/examplesrl assh ˆh }rm h}rn h}ro h]rp U2ros-eloquent-examples-rclcpp-minimal-action-serverrq asssuU gazebo_devrr }rs (h}rt h}ru h]rv Uros/eloquent/gazebo_ros_pkgsrw assh ˆh }rx h}ry h}rz h]r{ Uros-eloquent-gazebo-devr| asssuUrosidl_runtime_pyr} }r~ (h}r h}r€ h]r Uros/eloquent/rosidl_runtime_pyr‚ assh ˆh }rƒ h}r„ h}r… h]r† Uros-eloquent-rosidl-runtime-pyr‡ asssuU image_commonrˆ }r‰ (h}rŠ h}r‹ h]rŒ Uros/eloquent/image_commonr assh ˆh }rŽ h}r h}r h]r‘ Uros-eloquent-image-commonr’ asssuU cartographerr“ }r” (h}r• h}r– h]r— Uros/eloquent/cartographerr˜ assh ˆh }r™ h}rš h}r› h]rœ Uros-eloquent-cartographerr asssuUrclpyrž }rŸ (h}r  h}r¡ h]r¢ Uros/eloquent/rclpyr£ assh ˆh }r¤ h}r¥ h}r¦ h]r§ Uros-eloquent-rclpyr¨ asssuUjoyr© }rª (h}r« h}r¬ h]r­ Uros/eloquent/joystick_driversr® assh ˆh }r¯ h}r° h}r± h]r² Uros-eloquent-joyr³ asssuU ecl_geometryr´ }rµ (h}r¶ h}r· h]r¸ Uros/eloquent/ecl_corer¹ assh ˆh }rº h}r» h}r¼ h]r½ Uros-eloquent-ecl-geometryr¾ asssuUament_cmake_clang_formatr¿ }rÀ (h}rÁ h}r h]rà Uros/eloquent/ament_lintrÄ assh ˆh }rÅ h}rÆ h}rÇ h]rÈ U%ros-eloquent-ament-cmake-clang-formatrÉ asssuUsros2rÊ }rË (h}rÌ h}rÍ h]rÎ Uros/eloquent/sros2rÏ assh ˆh }rÐ h}rÑ h}rÒ h]rÓ Uros-eloquent-sros2rÔ asssuU$rosidl_typesupport_introspection_cpprÕ }rÖ (h}r× h}rØ h]rÙ Uros/eloquent/rosidlrÚ assh ˆh }rÛ h}rÜ h}rÝ h]rÞ U1ros-eloquent-rosidl-typesupport-introspection-cpprß asssuU image_toolsrà }rá (h}râ h}rã h]rä Uros/eloquent/demosrå assh ˆh }ræ h}rç h}rè h]ré Uros-eloquent-image-toolsrê asssuUecl_convertersrë }rì (h}rí h}rî h]rï Uros/eloquent/ecl_corerð assh ˆh }rñ h}rò h}ró h]rô Uros-eloquent-ecl-convertersrõ asssuUlaunch_testingrö }r÷ (h}rø h}rù h]rú Uros/eloquent/launchrû assh ˆh }rü h}rý h}rþ h]rÿ Uros-eloquent-launch-testingr asssuU ros2tracer }r (h}r h}r h]r Uros/eloquent/ros2_tracingr assh ˆh }r h}r h}r h]r Uros-eloquent-ros2tracer asssuU turtlesimr }r (h}r h}r h]r Uros/eloquent/turtlesimr assh ˆh }r h}r h}r h]r Uros-eloquent-turtlesimr asssuU py_trees_rosr }r (h}r h}r h]r Uros/eloquent/py_trees_rosr assh ˆh }r h}r h}r h]r Uros-eloquent-py-trees-rosr! asssuUrosidl_typesupport_connext_cppr" }r# (h}r$ h}r% h]r& U'ros/eloquent/rosidl_typesupport_connextr' assh ˆh }r( h}r) h}r* h]r+ U+ros-eloquent-rosidl-typesupport-connext-cppr, asssuUament_pyflakesr- }r. (h}r/ h}r0 h]r1 Uros/eloquent/ament_lintr2 assh ˆh }r3 h}r4 h}r5 h]r6 Uros-eloquent-ament-pyflakesr7 asssuUtlsfr8 }r9 (h}r: h}r; h]r< Uros/eloquent/tlsfr= assh ˆh }r> h}r? h}r@ h]rA Uros-eloquent-tlsfrB asssuUament_cmake_export_link_flagsrC }rD (h}rE h}rF h]rG Uros/eloquent/ament_cmakerH assh ˆh }rI h}rJ h}rK h]rL U*ros-eloquent-ament-cmake-export-link-flagsrM asssuU ament_cmakerN }rO (h}rP h}rQ h]rR Uros/eloquent/ament_cmakerS assh ˆh }rT h}rU h}rV h]rW Uros-eloquent-ament-cmakerX asssuUament_clang_formatrY }rZ (h}r[ h}r\ h]r] Uros/eloquent/ament_lintr^ assh ˆh }r_ h}r` h}ra h]rb Uros-eloquent-ament-clang-formatrc asssuUdesktoprd }re (h}rf h}rg h]rh Uros/eloquent/variantsri assh ˆh }rj h}rk h}rl h]rm Uros-eloquent-desktoprn asssuUcomposition_interfacesro }rp (h}rq h}rr h]rs Uros/eloquent/rcl_interfacesrt assh ˆh }ru h}rv h}rw h]rx U#ros-eloquent-composition-interfacesry asssuU"rosidl_typesupport_introspection_crz }r{ (h}r| h}r} h]r~ Uros/eloquent/rosidlr assh ˆh }r€ h}r h}r‚ h]rƒ U/ros-eloquent-rosidl-typesupport-introspection-cr„ asssuUrqt_reconfigurer… }r† (h}r‡ h}rˆ h]r‰ Uros/eloquent/rqt_reconfigurerŠ assh ˆh }r‹ h}rŒ h}r h]rŽ Uros-eloquent-rqt-reconfigurer asssuUfastrtps_cmake_moduler }r‘ (h}r’ h}r“ h]r” U(ros/eloquent/rosidl_typesupport_fastrtpsr• assh ˆh }r– h}r— h}r˜ h]r™ U"ros-eloquent-fastrtps-cmake-modulerš asssuUrviz_renderingr› }rœ (h}r h}rž h]rŸ Uros/eloquent/rvizr  assh ˆh }r¡ h}r¢ h}r£ h]r¤ Uros-eloquent-rviz-renderingr¥ asssuUtinyxml_vendorr¦ }r§ (h}r¨ h}r© h]rª Uros/eloquent/tinyxml_vendorr« assh ˆh }r¬ h}r­ h}r® h]r¯ Uros-eloquent-tinyxml-vendorr° asssuUrosidl_default_generatorsr± }r² (h}r³ h}r´ h]rµ Uros/eloquent/rosidl_defaultsr¶ assh ˆh }r· h}r¸ h}r¹ h]rº U&ros-eloquent-rosidl-default-generatorsr» asssuUcan_msgsr¼ }r½ (h}r¾ h}r¿ h]rÀ Uros/eloquent/ros_canopenrÁ assh ˆh }r h}rà h}rÄ h]rÅ Uros-eloquent-can-msgsrÆ asssuUstd_msgsrÇ }rÈ (h}rÉ h}rÊ h]rË Uros/eloquent/common_interfacesrÌ assh ˆh }rÍ h}rÎ h}rÏ h]rÐ Uros-eloquent-std-msgsrÑ asssuU"examples_rclcpp_minimal_subscriberrÒ }rÓ (h}rÔ h}rÕ h]rÖ Uros/eloquent/examplesr× assh ˆh }rØ h}rÙ h}rÚ h]rÛ U/ros-eloquent-examples-rclcpp-minimal-subscriberrÜ asssuUanglesrÝ }rÞ (h}rß h}rà h]rá Uros/eloquent/anglesrâ assh ˆh }rã h}rä h}rå h]ræ Uros-eloquent-anglesrç asssuU!rosbag2_converter_default_pluginsrè }ré (h}rê h}rë h]rì Uros/eloquent/rosbag2rí assh ˆh }rî h}rï h}rð h]rñ U.ros-eloquent-rosbag2-converter-default-pluginsrò asssuU ament_pep8ró }rô (h}rõ h}rö h]r÷ Uros/eloquent/ament_lintrø assh ˆh }rù h}rú h}rû h]rü Uros-eloquent-ament-pep8rý asssuU ros2interfacerþ }rÿ (h}r h}r h]r Uros/eloquent/ros2clir assh ˆh }r h}r h}r h]r Uros-eloquent-ros2interfacer asssuUrcutilsr }r (h}r h}r h]r Uros/eloquent/rcutilsr assh ˆh }r h}r h}r h]r Uros-eloquent-rcutilsr asssuUurdfdomr }r (h}r h}r h]r Uros/eloquent/urdfdomr assh ˆh }r h}r h}r h]r Uros-eloquent-urdfdomr asssuUament_uncrustifyr }r (h}r! h}r" h]r# Uros/eloquent/ament_lintr$ assh ˆh }r% h}r& h}r' h]r( Uros-eloquent-ament-uncrustifyr) asssuUament_cmake_pep257r* }r+ (h}r, h}r- h]r. Uros/eloquent/ament_lintr/ assh ˆh }r0 h}r1 h}r2 h]r3 Uros-eloquent-ament-cmake-pep257r4 asssuU ament_flake8r5 }r6 (h}r7 h}r8 h]r9 Uros/eloquent/ament_lintr: assh ˆh }r; h}r< h}r= h]r> Uros-eloquent-ament-flake8r? asssuUrclcpp_lifecycler@ }rA (h}rB h}rC h]rD Uros/eloquent/rclcpprE assh ˆh }rF h}rG h}rH h]rI Uros-eloquent-rclcpp-lifecyclerJ asssuUecl_formattersrK }rL (h}rM h}rN h]rO Uros/eloquent/ecl_corerP assh ˆh }rQ h}rR h}rS h]rT Uros-eloquent-ecl-formattersrU asssuU rcpputilsrV }rW (h}rX h}rY h]rZ Uros/eloquent/rcpputilsr[ assh ˆh }r\ h}r] h}r^ h]r_ Uros-eloquent-rcpputilsr` asssuU class_loaderra }rb (h}rc h}rd h]re Uros/eloquent/class_loaderrf assh ˆh }rg h}rh h}ri h]rj Uros-eloquent-class-loaderrk asssuUpx4_msgsrl }rm (h}rn h}ro h]rp Uros/eloquent/px4_msgsrq assh ˆh }rr h}rs h}rt h]ru Uros-eloquent-px4-msgsrv asssuU qt_gui_corerw }rx (h}ry h}rz h]r{ Uros/eloquent/qt_gui_corer| assh ˆh }r} h}r~ h}r h]r€ Uros-eloquent-qt-gui-corer asssuU demo_nodes_pyr‚ }rƒ (h}r„ h}r… h]r† Uros/eloquent/demosr‡ assh ˆh }rˆ h}r‰ h}rŠ h]r‹ Uros-eloquent-demo-nodes-pyrŒ asssuUnav_msgsr }rŽ (h}r h}r h]r‘ Uros/eloquent/common_interfacesr’ assh ˆh }r“ h}r” h}r• h]r– Uros-eloquent-nav-msgsr— asssuUecl_command_liner˜ }r™ (h}rš h}r› h]rœ Uros/eloquent/ecl_corer assh ˆh }rž h}rŸ h}r  h]r¡ Uros-eloquent-ecl-command-liner¢ asssuU gtest_vendorr£ }r¤ (h}r¥ h}r¦ h]r§ Uros/eloquent/googletestr¨ assh ˆh }r© h}rª h}r« h]r¬ Uros-eloquent-gtest-vendorr­ asssuUlaunch_testing_ament_cmaker® }r¯ (h}r° h}r± h]r² Uros/eloquent/launchr³ assh ˆh }r´ h}rµ h}r¶ h]r· U'ros-eloquent-launch-testing-ament-cmaker¸ asssuUtf2_rosr¹ }rº (h}r» h}r¼ h]r½ Uros/eloquent/geometry2r¾ assh ˆh }r¿ h}rÀ h}rÁ h]r Uros-eloquent-tf2-rosrà asssuUrosidl_typesupport_crÄ }rÅ (h}rÆ h}rÇ h]rÈ Uros/eloquent/rosidl_typesupportrÉ assh ˆh }rÊ h}rË h}rÌ h]rÍ U!ros-eloquent-rosidl-typesupport-crÎ asssuU launch_xmlrÏ }rÐ (h}rÑ h}rÒ h]rÓ Uros/eloquent/launchrÔ assh ˆh }rÕ h}rÖ h}r× h]rØ Uros-eloquent-launch-xmlrÙ asssuUdiagnostic_msgsrÚ }rÛ (h}rÜ h}rÝ h]rÞ Uros/eloquent/common_interfacesrß assh ˆh }rà h}rá h}râ h]rã Uros-eloquent-diagnostic-msgsrä asssuUimage_geometryrå }ræ (h}rç h}rè h]ré Uros/eloquent/vision_opencvrê assh ˆh }rë h}rì h}rí h]rî Uros-eloquent-image-geometryrï asssuUrcl_logging_nooprð }rñ (h}rò h}ró h]rô Uros/eloquent/rcl_loggingrõ assh ˆh }rö h}r÷ h}rø h]rù Uros-eloquent-rcl-logging-nooprú asssuU dummy_sensorsrû }rü (h}rý h}rþ h]rÿ Uros/eloquent/demosr assh ˆh }r h}r h}r h]r Uros-eloquent-dummy-sensorsr asssuUtest_osrf_testing_tools_cppr }r (h}r h}r h]r U#ros/eloquent/osrf_testing_tools_cppr assh ˆh }r h}r h}r h]r U(ros-eloquent-test-osrf-testing-tools-cppr asssuUconsole_bridge_vendorr }r (h}r h}r h]r U"ros/eloquent/console_bridge_vendorr assh ˆh }r h}r h}r h]r U"ros-eloquent-console-bridge-vendorr asssuUtest_interface_filesr }r (h}r h}r h]r U!ros/eloquent/test_interface_filesr! assh ˆh }r" h}r# h}r$ h]r% U!ros-eloquent-test-interface-filesr& asssuU compositionr' }r( (h}r) h}r* h]r+ Uros/eloquent/demosr, assh ˆh }r- h}r. h}r/ h]r0 Uros-eloquent-compositionr1 asssuUrclcppr2 }r3 (h}r4 h}r5 h]r6 Uros/eloquent/rclcppr7 assh ˆh }r8 h}r9 h}r: h]r; Uros-eloquent-rclcppr< asssuUtf2_sensor_msgsr= }r> (h}r? h}r@ h]rA Uros/eloquent/geometry2rB assh ˆh }rC h}rD h}rE h]rF Uros-eloquent-tf2-sensor-msgsrG asssuUrmw_fastrtps_dynamic_cpprH }rI (h}rJ h}rK h]rL Uros/eloquent/rmw_fastrtpsrM assh ˆh }rN h}rO h}rP h]rQ U%ros-eloquent-rmw-fastrtps-dynamic-cpprR asssuUaction_tutorials_pyrS }rT (h}rU h}rV h]rW Uros/eloquent/demosrX assh ˆh }rY h}rZ h}r[ h]r\ U ros-eloquent-action-tutorials-pyr] asssuUrosidl_generator_cppr^ }r_ (h}r` h}ra h]rb Uros/eloquent/rosidlrc assh ˆh }rd h}re h}rf h]rg U!ros-eloquent-rosidl-generator-cpprh asssuU ecl_configri }rj (h}rk h}rl h]rm Uros/eloquent/ecl_litern assh ˆh }ro h}rp h}rq h]rr Uros-eloquent-ecl-configrs asssuUecl_statisticsrt }ru (h}rv h}rw h]rx Uros/eloquent/ecl_corery assh ˆh }rz h}r{ h}r| h]r} Uros-eloquent-ecl-statisticsr~ asssuU sros2_cmaker }r€ (h}r h}r‚ h]rƒ Uros/eloquent/sros2r„ assh ˆh }r… h}r† h}r‡ h]rˆ Uros-eloquent-sros2-cmaker‰ asssuUrqt_py_consolerŠ }r‹ (h}rŒ h}r h]rŽ Uros/eloquent/rqt_py_consoler assh ˆh }r h}r‘ h}r’ h]r“ Uros-eloquent-rqt-py-consoler” asssuUament_cmake_mypyr• }r– (h}r— h}r˜ h]r™ Uros/eloquent/ament_lintrš assh ˆh }r› h}rœ h}r h]rž Uros-eloquent-ament-cmake-mypyrŸ asssuUpy_trees_ros_viewerr  }r¡ (h}r¢ h}r£ h]r¤ U ros/eloquent/py_trees_ros_viewerr¥ assh ˆh }r¦ h}r§ h}r¨ h]r© U ros-eloquent-py-trees-ros-viewerrª asssuU ecl_devicesr« }r¬ (h}r­ h}r® h]r¯ Uros/eloquent/ecl_corer° assh ˆh }r± h}r² h}r³ h]r´ Uros-eloquent-ecl-devicesrµ asssuUosrf_testing_tools_cppr¶ }r· (h}r¸ h}r¹ h]rº U#ros/eloquent/osrf_testing_tools_cppr» assh ˆh }r¼ h}r½ h}r¾ h]r¿ U#ros-eloquent-osrf-testing-tools-cpprÀ asssuUlibcurl_vendorrÁ }r (h}rà h}rÄ h]rÅ Uros/eloquent/resource_retrieverrÆ assh ˆh }rÇ h}rÈ h}rÉ h]rÊ Uros-eloquent-libcurl-vendorrË asssuUrosbag2_transportrÌ }rÍ (h}rÎ h}rÏ h]rÐ Uros/eloquent/rosbag2rÑ assh ˆh }rÒ h}rÓ h}rÔ h]rÕ Uros-eloquent-rosbag2-transportrÖ asssuUros1_rosbag_storage_vendorr× }rØ (h}rÙ h}rÚ h]rÛ Uros/eloquent/rosbag2_bag_v2rÜ assh ˆh }rÝ h}rÞ h}rß h]rà U'ros-eloquent-ros1-rosbag-storage-vendorrá asssuUros_corerâ }rã (h}rä h}rå h]ræ Uros/eloquent/variantsrç assh ˆh }rè h}ré h}rê h]rë Uros-eloquent-ros-corerì asssuUinteractive_markersrí }rî (h}rï h}rð h]rñ U ros/eloquent/interactive_markersrò assh ˆh }ró h}rô h}rõ h]rö U ros-eloquent-interactive-markersr÷ asssuUbehaviortree_cpp_v3rø }rù (h}rú h}rû h]rü U ros/eloquent/behaviortree_cpp_v3rý assh ˆh }rþ h}rÿ h}r h]r U ros-eloquent-behaviortree-cpp-v3r asssuUrobot_state_publisherr }r (h}r h}r h]r U"ros/eloquent/robot_state_publisherr assh ˆh }r h}r h}r h]r U"ros-eloquent-robot-state-publisherr asssuUament_cmake_librariesr }r (h}r h}r h]r Uros/eloquent/ament_cmaker assh ˆh }r h}r h}r h]r U"ros-eloquent-ament-cmake-librariesr asssuUbuiltin_interfacesr }r (h}r h}r h]r Uros/eloquent/rcl_interfacesr assh ˆh }r h}r h}r! h]r" Uros-eloquent-builtin-interfacesr# asssuUrqt_topr$ }r% (h}r& h}r' h]r( Uros/eloquent/rqt_topr) assh ˆh }r* h}r+ h}r, h]r- Uros-eloquent-rqt-topr. asssuUament_lint_autor/ }r0 (h}r1 h}r2 h]r3 Uros/eloquent/ament_lintr4 assh ˆh }r5 h}r6 h}r7 h]r8 Uros-eloquent-ament-lint-autor9 asssuUtinyxml2_vendorr: }r; (h}r< h}r= h]r> Uros/eloquent/tinyxml2_vendorr? assh ˆh }r@ h}rA h}rB h]rC Uros-eloquent-tinyxml2-vendorrD asssuU cycloneddsrE }rF (h}rG h}rH h]rI Uros/eloquent/cycloneddsrJ assh ˆh }rK h}rL h}rM h]rN Uros-eloquent-cycloneddsrO asssuUament_cmake_flake8rP }rQ (h}rR h}rS h]rT Uros/eloquent/ament_lintrU assh ˆh }rV h}rW h}rX h]rY Uros-eloquent-ament-cmake-flake8rZ asssuUros2lifecycle_test_fixturesr[ }r\ (h}r] h}r^ h]r_ Uros/eloquent/ros2clir` assh ˆh }ra h}rb h}rc h]rd U(ros-eloquent-ros2lifecycle-test-fixturesre asssuUactionlib_msgsrf }rg (h}rh h}ri h]rj Uros/eloquent/common_interfacesrk assh ˆh }rl h}rm h}rn h]ro Uros-eloquent-actionlib-msgsrp asssuUecl_converters_literq }rr (h}rs h}rt h]ru Uros/eloquent/ecl_literv assh ˆh }rw h}rx h}ry h]rz U ros-eloquent-ecl-converters-liter{ asssuUrviz_rendering_testsr| }r} (h}r~ h}r h]r€ Uros/eloquent/rvizr assh ˆh }r‚ h}rƒ h}r„ h]r… U!ros-eloquent-rviz-rendering-testsr† asssuU ros2topicr‡ }rˆ (h}r‰ h}rŠ h]r‹ Uros/eloquent/ros2clirŒ assh ˆh }r h}rŽ h}r h]r Uros-eloquent-ros2topicr‘ asssuU ros2paramr’ }r“ (h}r” h}r• h]r– Uros/eloquent/ros2clir— assh ˆh }r˜ h}r™ h}rš h]r› Uros-eloquent-ros2paramrœ asssuUlaser_geometryr }rž (h}rŸ h}r  h]r¡ Uros/eloquent/laser_geometryr¢ assh ˆh }r£ h}r¤ h}r¥ h]r¦ Uros-eloquent-laser-geometryr§ asssuUtracetools_launchr¨ }r© (h}rª h}r« h]r¬ Uros/eloquent/ros2_tracingr­ assh ˆh }r® h}r¯ h}r° h]r± Uros-eloquent-tracetools-launchr² asssuU pendulum_msgsr³ }r´ (h}rµ h}r¶ h]r· Uros/eloquent/demosr¸ assh ˆh }r¹ h}rº h}r» h]r¼ Uros-eloquent-pendulum-msgsr½ asssuUcamera_calibration_parsersr¾ }r¿ (h}rÀ h}rÁ h]r Uros/eloquent/image_commonrà assh ˆh }rÄ h}rÅ h}rÆ h]rÇ U'ros-eloquent-camera-calibration-parsersrÈ asssuUros_environmentrÉ }rÊ (h}rË h}rÌ h]rÍ Uros/eloquent/ros_environmentrÎ assh ˆh }rÏ h}rÐ h}rÑ h]rÒ Uros-eloquent-ros-environmentrÓ asssuUament_lint_cmakerÔ }rÕ (h}rÖ h}r× h]rØ Uros/eloquent/ament_lintrÙ assh ˆh }rÚ h}rÛ h}rÜ h]rÝ Uros-eloquent-ament-lint-cmakerÞ asssuUdemo_nodes_cpprß }rà (h}rá h}râ h]rã Uros/eloquent/demosrä assh ˆh }rå h}ræ h}rç h]rè Uros-eloquent-demo-nodes-cppré asssuU action_msgsrê }rë (h}rì h}rí h]rî Uros/eloquent/rcl_interfacesrï assh ˆh }rð h}rñ h}rò h]ró Uros-eloquent-action-msgsrô asssuU ecl_time_literõ }rö (h}r÷ h}rø h]rù Uros/eloquent/ecl_literú assh ˆh }rû h}rü h}rý h]rþ Uros-eloquent-ecl-time-literÿ asssuUmove_base_msgsr}r(h}rh}rh]rUros/eloquent/navigation_msgsrassh ˆh }rh}rh}rh]r Uros-eloquent-move-base-msgsr asssuUrmw_connext_cppr }r (h}r h}rh]rUros/eloquent/rmw_connextrassh ˆh }rh}rh}rh]rUros-eloquent-rmw-connext-cpprasssuU ros_testingr}r(h}rh}rh]rUros/eloquent/ros_testingrassh ˆh }rh}rh}rh]rUros-eloquent-ros-testingr asssuUrosidl_typesupport_interfacer!}r"(h}r#h}r$h]r%Uros/eloquent/rosidlr&assh ˆh }r'h}r(h}r)h]r*U)ros-eloquent-rosidl-typesupport-interfacer+asssuUcamera_info_managerr,}r-(h}r.h}r/h]r0Uros/eloquent/image_commonr1assh ˆh }r2h}r3h}r4h]r5U ros-eloquent-camera-info-managerr6asssuUros2bagr7}r8(h}r9h}r:h]r;Uros/eloquent/rosbag2r<assh ˆh }r=h}r>h}r?h]r@Uros-eloquent-ros2bagrAasssuU examples_rclpy_minimal_publisherrB}rC(h}rDh}rEh]rFUros/eloquent/examplesrGassh ˆh }rHh}rIh}rJh]rKU-ros-eloquent-examples-rclpy-minimal-publisherrLasssuUament_cmake_rosrM}rN(h}rOh}rPh]rQUros/eloquent/ament_cmake_rosrRassh ˆh }rSh}rTh}rUh]rVUros-eloquent-ament-cmake-rosrWasssuUsystem_modes_examplesrX}rY(h}rZh}r[h]r\Uros/eloquent/system_modesr]assh ˆh }r^h}r_h}r`h]raU"ros-eloquent-system-modes-examplesrbasssuUrviz_visual_testing_frameworkrc}rd(h}reh}rfh]rgUros/eloquent/rvizrhassh ˆh }rih}rjh}rkh]rlU*ros-eloquent-rviz-visual-testing-frameworkrmasssuUsqlite3_vendorrn}ro(h}rph}rqh]rrUros/eloquent/rosbag2rsassh ˆh }rth}ruh}rvh]rwUros-eloquent-sqlite3-vendorrxasssuUrmw_implementationry}rz(h}r{h}r|h]r}Uros/eloquent/rmw_implementationr~assh ˆh }rh}r€h}rh]r‚Uros-eloquent-rmw-implementationrƒasssuUpcl_msgsr„}r…(h}r†h}r‡h]rˆUros/eloquent/pcl_msgsr‰assh ˆh }rŠh}r‹h}rŒh]rUros-eloquent-pcl-msgsrŽasssuU ament_lintr}r(h}r‘h}r’h]r“Uros/eloquent/ament_lintr”assh ˆh }r•h}r–h}r—h]r˜Uros-eloquent-ament-lintr™asssuUfoonathan_memory_vendorrš}r›(h}rœh}rh]ržU$ros/eloquent/foonathan_memory_vendorrŸassh ˆh }r h}r¡h}r¢h]r£U$ros-eloquent-foonathan-memory-vendorr¤asssuUrosbag2_test_commonr¥}r¦(h}r§h}r¨h]r©Uros/eloquent/rosbag2rªassh ˆh }r«h}r¬h}r­h]r®U ros-eloquent-rosbag2-test-commonr¯asssuU ecl_toolsr°}r±(h}r²h}r³h]r´Uros/eloquent/ecl_toolsrµassh ˆh }r¶h}r·h}r¸h]r¹Uros-eloquent-ecl-toolsrºasssuUconnext_cmake_moduler»}r¼(h}r½h}r¾h]r¿U'ros/eloquent/rosidl_typesupport_connextrÀassh ˆh }rÁh}rÂh}rÃh]rÄU!ros-eloquent-connext-cmake-modulerÅasssuUexample_interfacesrÆ}rÇ(h}rÈh}rÉh]rÊUros/eloquent/example_interfacesrËassh ˆh }rÌh}rÍh}rÎh]rÏUros-eloquent-example-interfacesrÐasssuUament_cmake_copyrightrÑ}rÒ(h}rÓh}rÔh]rÕUros/eloquent/ament_lintrÖassh ˆh }r×h}rØh}rÙh]rÚU"ros-eloquent-ament-cmake-copyrightrÛasssuUament_cmake_testrÜ}rÝ(h}rÞh}rßh]ràUros/eloquent/ament_cmakeráassh ˆh }râh}rãh}räh]råUros-eloquent-ament-cmake-testræasssuUrosidl_generator_crç}rè(h}réh}rêh]rëUros/eloquent/rosidlrìassh ˆh }ríh}rîh}rïh]rðUros-eloquent-rosidl-generator-crñasssuUurdfdom_headersrò}ró(h}rôh}rõh]röUros/eloquent/urdfdom_headersr÷assh ˆh }røh}rùh}rúh]rûUros-eloquent-urdfdom-headersrüasssuU$examples_rclpy_minimal_action_clientrý}rþ(h}rÿh}rh]rUros/eloquent/examplesrassh ˆh }rh}rh}rh]rU1ros-eloquent-examples-rclpy-minimal-action-clientrasssuUrclr}r (h}r h}r h]r Uros/eloquent/rclr assh ˆh }rh}rh}rh]rUros-eloquent-rclrasssuUrqt_plotr}r(h}rh}rh]rUros/eloquent/rqt_plotrassh ˆh }rh}rh}rh]rUros-eloquent-rqt-plotrasssuUteleop_twist_joyr}r(h}r h}r!h]r"Uros/eloquent/teleop_twist_joyr#assh ˆh }r$h}r%h}r&h]r'Uros-eloquent-teleop-twist-joyr(asssuUpendulum_controlr)}r*(h}r+h}r,h]r-Uros/eloquent/demosr.assh ˆh }r/h}r0h}r1h]r2Uros-eloquent-pendulum-controlr3asssuU#examples_rclcpp_minimal_compositionr4}r5(h}r6h}r7h]r8Uros/eloquent/examplesr9assh ˆh }r:h}r;h}r<h]r=U0ros-eloquent-examples-rclcpp-minimal-compositionr>asssuUrmw_fastrtps_cppr?}r@(h}rAh}rBh]rCUros/eloquent/rmw_fastrtpsrDassh ˆh }rEh}rFh}rGh]rHUros-eloquent-rmw-fastrtps-cpprIasssuUrosidl_typesupport_fastrtps_crJ}rK(h}rLh}rMh]rNU(ros/eloquent/rosidl_typesupport_fastrtpsrOassh ˆh }rPh}rQh}rRh]rSU*ros-eloquent-rosidl-typesupport-fastrtps-crTasssuU rqt_shellrU}rV(h}rWh}rXh]rYUros/eloquent/rqt_shellrZassh ˆh }r[h}r\h}r]h]r^Uros-eloquent-rqt-shellr_asssuU cv_bridger`}ra(h}rbh}rch]rdUros/eloquent/vision_opencvreassh ˆh }rfh}rgh}rhh]riUros-eloquent-cv-bridgerjasssuUrmw_implementation_cmakerk}rl(h}rmh}rnh]roUros/eloquent/rmwrpassh ˆh }rqh}rrh}rsh]rtU%ros-eloquent-rmw-implementation-cmakeruasssuUimage_transport_pluginsrv}rw(h}rxh}ryh]rzU$ros/eloquent/image_transport_pluginsr{assh ˆh }r|h}r}h}r~h]rU$ros-eloquent-image-transport-pluginsr€asssuUstd_srvsr}r‚(h}rƒh}r„h]r…Uros/eloquent/common_interfacesr†assh ˆh }r‡h}rˆh}r‰h]rŠUros-eloquent-std-srvsr‹asssuUros2testrŒ}r(h}rŽh}rh]rUros/eloquent/ros_testingr‘assh ˆh }r’h}r“h}r”h]r•Uros-eloquent-ros2testr–asssuUrosidl_typesupport_connext_cr—}r˜(h}r™h}ršh]r›U'ros/eloquent/rosidl_typesupport_connextrœassh ˆh }rh}ržh}rŸh]r U)ros-eloquent-rosidl-typesupport-connext-cr¡asssuU ament_pep257r¢}r£(h}r¤h}r¥h]r¦Uros/eloquent/ament_lintr§assh ˆh }r¨h}r©h}rªh]r«Uros-eloquent-ament-pep257r¬asssuU%examples_rclcpp_minimal_action_clientr­}r®(h}r¯h}r°h]r±Uros/eloquent/examplesr²assh ˆh }r³h}r´h}rµh]r¶U2ros-eloquent-examples-rclcpp-minimal-action-clientr·asssuUtf2_pyr¸}r¹(h}rºh}r»h]r¼Uros/eloquent/geometry2r½assh ˆh }r¾h}r¿h}rÀh]rÁUros-eloquent-tf2-pyrÂasssuUament_cmake_corerÃ}rÄ(h}rÅh}rÆh]rÇUros/eloquent/ament_cmakerÈassh ˆh }rÉh}rÊh}rËh]rÌUros-eloquent-ament-cmake-corerÍasssuUtracetools_testrÎ}rÏ(h}rÐh}rÑh]rÒUros/eloquent/ros2_tracingrÓassh ˆh }rÔh}rÕh}rÖh]r×Uros-eloquent-tracetools-testrØasssuU qt_gui_cpprÙ}rÚ(h}rÛh}rÜh]rÝUros/eloquent/qt_gui_corerÞassh ˆh }rßh}ràh}ráh]râUros-eloquent-qt-gui-cpprãasssuUrqträ}rå(h}ræh}rçh]rèUros/eloquent/rqtréassh ˆh }rêh}rëh}rìh]ríUros-eloquent-rqtrîasssuUmessage_filtersrï}rð(h}rñh}ròh]róUros/eloquent/message_filtersrôassh ˆh }rõh}röh}r÷h]røUros-eloquent-message-filtersrùasssuUrclcpp_componentsrú}rû(h}rüh}rýh]rþUros/eloquent/rclcpprÿassh ˆh }rh}rh}rh]rUros-eloquent-rclcpp-componentsrasssuUament_cmake_uncrustifyr}r(h}rh}rh]r Uros/eloquent/ament_lintr assh ˆh }r h}r h}r h]rU#ros-eloquent-ament-cmake-uncrustifyrasssuUpy_treesr}r(h}rh}rh]rUros/eloquent/py_treesrassh ˆh }rh}rh}rh]rUros-eloquent-py-treesrasssuUgazebo_pluginsr}r(h}rh}rh]rUros/eloquent/gazebo_ros_pkgsr assh ˆh }r!h}r"h}r#h]r$Uros-eloquent-gazebo-pluginsr%asssuU rqt_gui_pyr&}r'(h}r(h}r)h]r*Uros/eloquent/rqtr+assh ˆh }r,h}r-h}r.h]r/Uros-eloquent-rqt-gui-pyr0asssuUmap_msgsr1}r2(h}r3h}r4h]r5Uros/eloquent/navigation_msgsr6assh ˆh }r7h}r8h}r9h]r:Uros-eloquent-map-msgsr;asssuUyaml_cpp_vendorr<}r=(h}r>h}r?h]r@Uros/eloquent/yaml_cpp_vendorrAassh ˆh }rBh}rCh}rDh]rEUros-eloquent-yaml-cpp-vendorrFasssuUrosidl_adapterrG}rH(h}rIh}rJh]rKUros/eloquent/rosidlrLassh ˆh }rMh}rNh}rOh]rPUros-eloquent-rosidl-adapterrQasssuu.catkin_lint-1.6.6/test/sources.cache/index000066400000000000000000000020241362025056600205640ustar00rootroot00000000000000#autogenerated by rosdep, do not edit. use 'rosdep update' instead yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml yaml https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml fuerte yaml https://raw.githubusercontent.com/ros/rosdistro/master/crystal/distribution.yaml crystal yaml https://raw.githubusercontent.com/ros/rosdistro/master/dashing/distribution.yaml dashing yaml https://raw.githubusercontent.com/ros/rosdistro/master/eloquent/distribution.yaml eloquent yaml https://raw.githubusercontent.com/ros/rosdistro/master/kinetic/distribution.yaml kinetic yaml https://raw.githubusercontent.com/ros/rosdistro/master/melodic/distribution.yaml melodic yaml https://raw.githubusercontent.com/ros/rosdistro/master/noetic/distribution.yaml noetic catkin_lint-1.6.6/test/test_all_checks.py000066400000000000000000000364261362025056600205230ustar00rootroot00000000000000import unittest import shutil import argparse import os from .helper import create_env, create_manifest, mock_lint, patch from tempfile import mkdtemp try: from StringIO import StringIO except ImportError: from io import StringIO from catkin_lint.main import prepare_arguments, run_linter import catkin_lint.environment import catkin_lint.ros class AllChecksTest(unittest.TestCase): @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/src/source.cpp")) def test_project(self): """Test minimal catkin project for compliance""" env = create_env(catkin_pkgs=["catkin", "foo", "foo_msgs"]) pkg = create_manifest("mock", description="Cool Worf", build_depends=["foo", "foo_msgs"], run_depends=["foo_msgs"]) result = mock_lint(env, pkg, """\ project(mock) find_package(catkin REQUIRED COMPONENTS foo foo_msgs) catkin_package(CATKIN_DEPENDS foo_msgs) include_directories(${catkin_INCLUDE_DIRS}) add_executable(${PROJECT_NAME}_node src/source.cpp) target_link_libraries(${PROJECT_NAME}_node ${catkin_LIBRARIES}) install(TARGETS ${PROJECT_NAME}_node RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """) self.assertEqual([], result) @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/src/source.cpp")) def test_project_with_skip(self): """Test minimal catkin project with skip directive""" env = create_env(catkin_pkgs=["catkin", "foo", "foo_msgs"]) pkg = create_manifest("mock", description="Cool Worf", build_depends=["foo", "foo_msgs"], run_depends=["foo_msgs"]) result = mock_lint(env, pkg, """\ project(mock) find_package(catkin REQUIRED COMPONENTS foo foo_msgs) catkin_package(CATKIN_DEPENDS foo_msgs) include_directories(${catkin_INCLUDE_DIRS}) add_executable(${PROJECT_NAME}_node src/source.cpp) target_link_libraries(${PROJECT_NAME}_node ${catkin_LIBRARIES}) install(TARGETS ${PROJECT_NAME}_node RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) if(CONDITION_THAT_IS_USUALLY_FALSE) #catkin_lint: skip find_package(catkin) endif() """) self.assertEqual([], result) class DummyDist(object): def get_release_package_xml(self, name): if name == "roscpp": raise KeyError("Mock error") if name == "rospy": return ''' rospy 0.0.0 Mock package Mister Mock none ''' return None def get_dummy_index_url(): return "http://127.0.0.1:9" def get_dummy_index(url): return None def get_dummy_cached_distribution(index, dist_name, cache=None, allow_lazy_load=False): return DummyDist() def raise_io_error(*args): raise IOError("mock exception") class CatkinInvokationTest(unittest.TestCase): def fake_package(self, name, depends, wsdir): pkgdir = os.path.join(wsdir, "src", name) os.makedirs(pkgdir) with open(os.path.join(pkgdir, "package.xml"), "w") as f: f.write( '%s0.0.0' 'Mock package' 'Mister Mock' 'none' % name ) if name != "catkin": f.write('catkin') f.write(''.join(['%s' % dep for dep in depends])) f.write('\n') with open(os.path.join(pkgdir, "CMakeLists.txt"), "w") as f: f.write( 'project(%s)\n' % name + 'find_package(catkin REQUIRED ' + (('COMPONENTS ' + ' '.join(dep for dep in depends)) if depends else '') + ')\n' 'catkin_package()' ) os.makedirs(os.path.join(pkgdir, ".git")) with open(os.path.join(pkgdir, ".git", "script"), "w") as f: f.write("Random executable file") os.chmod(os.path.join(pkgdir, ".git", "script"), 0o755) @patch("rosdistro.get_index_url", get_dummy_index_url) @patch("rosdistro.get_index", get_dummy_index) @patch("rosdistro.get_cached_distribution", get_dummy_cached_distribution) def run_catkin_lint(self, *argv): print("RUN:" + " ".join(argv)) catkin_lint.environment._cache = None # force cache reloads catkin_lint.ros._rosdistro_cache = {} parser = prepare_arguments(argparse.ArgumentParser()) args = parser.parse_args(argv) stdout = StringIO() with patch("sys.stdout", stdout): with patch("sys.stderr", stdout): returncode = run_linter(args) print(stdout.getvalue()) return returncode, stdout.getvalue() @patch("rosdistro.get_index_url", get_dummy_index_url) @patch("rosdistro.get_index", get_dummy_index) @patch("rosdistro.get_cached_distribution", raise_io_error) def run_catkin_lint_without_rosdistro(self, *argv): print("RUN:" + " ".join(argv)) catkin_lint.environment._cache = None # force cache reloads catkin_lint.ros._rosdistro_cache = {} parser = prepare_arguments(argparse.ArgumentParser()) args = parser.parse_args(argv) stdout = StringIO() with patch("sys.stdout", stdout): with patch("sys.stderr", stdout): returncode = run_linter(args) print(stdout.getvalue()) return returncode, stdout.getvalue() def setUp(self): self.oldcwd = os.getcwd() self.old_environ = os.environ self.upstream_ws = mkdtemp() self.upstream_ws_srcdir = os.path.join(self.upstream_ws, "src") self.fake_package("gamma", ["missing"], wsdir=self.upstream_ws) self.fake_package("invalid_dep", ["boost"], wsdir=self.upstream_ws) self.fake_package("delta", ["std_msgs"], wsdir=self.upstream_ws) self.fake_package("std_msgs", [], wsdir=self.upstream_ws) self.homedir = mkdtemp() self.wsdir = mkdtemp() self.ws_srcdir = os.path.join(self.wsdir, "src") os.makedirs(os.path.join(self.wsdir, "src", "no_packages_here")) self.fake_package("alpha", ["beta", "rospy", "roscpp"], wsdir=self.wsdir) self.fake_package("beta", [], wsdir=self.wsdir) self.fake_package("gamma", ["delta"], wsdir=self.wsdir) self.fake_package("broken", ["missing"], wsdir=self.wsdir) with open(os.path.join(self.wsdir, "src", "broken", "CATKIN_IGNORE"), "w"): pass self.fake_package(".dotdir_with_broken_package", ["missing"], wsdir=self.wsdir) catkin_lint.environment._cache_dir = os.path.join(self.homedir, ".ros", "catkin_lint") os.makedirs(catkin_lint.environment._cache_dir) os.environ = { "PATH": "/usr/bin:/bin", "ROS_DISTRO": "melodic", "HOME": self.homedir, "ROS_PACKAGE_PATH": self.upstream_ws_srcdir, } shutil.copytree(os.path.join(os.path.dirname(__file__), "sources.cache"), os.path.join(self.homedir, ".ros", "rosdep", "sources.cache")) os.chdir(self.homedir) def tearDown(self): os.chdir(self.oldcwd) shutil.rmtree(self.homedir, ignore_errors=True) shutil.rmtree(self.wsdir, ignore_errors=True) shutil.rmtree(self.upstream_ws, ignore_errors=True) os.environ = self.old_environ def runTest(self): """Test catkin_lint invocation on a ROS workspace""" exitcode, stdout = self.run_catkin_lint() self.assertEqual(exitcode, os.EX_NOINPUT) self.assertIn("no path given and no package.xml in current directory", stdout) os.chdir(os.path.join(self.ws_srcdir, "beta")) exitcode, stdout = self.run_catkin_lint() self.assertEqual(exitcode, 0) self.assertIn("checked 1 packages and found 0 problems", stdout) with patch("catkin_lint.linter.CMakeLinter._read_file", raise_io_error): exitcode, stdout = self.run_catkin_lint() self.assertEqual(exitcode, 1) self.assertIn("OS error: mock exception", stdout) exitcode, stdout = self.run_catkin_lint(self.ws_srcdir, "--explain") self.assertEqual(exitcode, 0) self.assertIn("checked 3 packages and found 0 problems", stdout) exitcode, stdout = self.run_catkin_lint(self.ws_srcdir, "--json") self.assertEqual(exitcode, 0) self.assertIn("checked 3 packages and found 0 problems", stdout) exitcode, stdout = self.run_catkin_lint(self.ws_srcdir, "--disable-cache", "--xml") self.assertEqual(exitcode, 0) self.assertIn("", stdout) self.assertIn("checked 3 packages and found 0 problems", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "gamma", "-c", "catkin_lint.checks.misc.project") self.assertEqual(exitcode, 0) self.assertIn("checked 1 packages and found 0 problems", stdout) exitcode, stdout = self.run_catkin_lint(self.ws_srcdir, "-c", "does.not.exist") self.assertEqual(exitcode, 1) self.assertIn("cannot import 'does.not.exist'", stdout) self.assertRaises(ImportError, self.run_catkin_lint, self.wsdir, "-c", "does.not.exist", "--debug") exitcode, stdout = self.run_catkin_lint("--pkg", "alpha") self.assertEqual(exitcode, 1) self.assertIn("no such package: alpha", stdout) exitcode, stdout = self.run_catkin_lint("--package-path", self.ws_srcdir, "--pkg", "alpha", "--pkg", "beta") self.assertEqual(exitcode, 0) self.assertIn("checked 2 packages and found 0 problems", stdout) exitcode, stdout = self.run_catkin_lint(os.path.join(self.ws_srcdir, "beta", "."), "-W2") self.assertEqual(exitcode, 0) self.assertIn("checked 1 packages and found 0 problems", stdout) os.environ["ROS_PACKAGE_PATH"] = os.pathsep.join([self.ws_srcdir, self.upstream_ws_srcdir]) exitcode, stdout = self.run_catkin_lint("--pkg", "alpha", "--pkg", "beta") self.assertEqual(exitcode, 0) self.assertIn("checked 2 packages and found 0 problems", stdout) os.environ["ROS_PACKAGE_PATH"] = self.upstream_ws_srcdir bad_path = os.path.join(self.ws_srcdir, "does_not_exist") exitcode, stdout = self.run_catkin_lint(bad_path) self.assertEqual(exitcode, 1) self.assertIn("not a directory", stdout) self.assertIn("no packages to check", stdout) empty_path = os.path.join(self.ws_srcdir, "no_packages_here") exitcode, stdout = self.run_catkin_lint(empty_path) self.assertEqual(exitcode, 0) self.assertIn("no packages to check", stdout) exitcode, stdout = self.run_catkin_lint(self.ws_srcdir, "--skip-path", "alpha") self.assertEqual(exitcode, 0) self.assertIn("checked 2 packages and found 0 problems", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "delta", "-W0") self.assertEqual(exitcode, 0) self.assertIn("additional warning", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "delta", "-W2", "--ignore", "suggest_catkin_depend") self.assertEqual(exitcode, 0) self.assertIn("messages have been ignored", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "delta", "-W2", "--ignore", "suggest_catkin_depend", "--show-ignored") self.assertEqual(exitcode, 0) self.assertIn("package 'std_msgs' should be listed in catkin_package()", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "delta", "-W2", "--notice", "suggest_catkin_depend") self.assertEqual(exitcode, 0) self.assertIn("notice: package 'std_msgs' should be listed in catkin_package()", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "delta", "-W2", "--warning", "suggest_catkin_depend") self.assertEqual(exitcode, 0) self.assertIn("warning: package 'std_msgs' should be listed in catkin_package()", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "delta", "-W2", "--error", "suggest_catkin_depend") self.assertEqual(exitcode, 1) self.assertIn("error: package 'std_msgs' should be listed in catkin_package()", stdout) exitcode, stdout = self.run_catkin_lint("--pkg", "delta", "--strict") self.assertEqual(exitcode, 1) try: # The following tests will not produce meaningful results # if rosdep2 or rosdistro is unavailable import rosdep2 # noqa import rosdistro # noqa exitcode, stdout = self.run_catkin_lint("--package-path", os.pathsep.join([self.ws_srcdir, self.upstream_ws_srcdir]), "--pkg", "gamma") self.assertEqual(exitcode, 0) exitcode, stdout = self.run_catkin_lint("--package-path", os.pathsep.join([self.upstream_ws_srcdir, self.ws_srcdir]), "--pkg", "gamma") self.assertEqual(exitcode, 1) exitcode, stdout = self.run_catkin_lint(os.path.join(self.ws_srcdir, "alpha"), "--ignore", "unknown_package") self.assertEqual(exitcode, 0) self.assertIn("messages have been ignored", stdout) del os.environ["ROS_DISTRO"] exitcode, stdout = self.run_catkin_lint("--pkg", "invalid_dep") self.assertEqual(exitcode, 0) exitcode, stdout = self.run_catkin_lint("--pkg", "invalid_dep", "--rosdistro", "melodic") self.assertEqual(exitcode, 1) del os.environ["ROS_DISTRO"] exitcode, stdout = self.run_catkin_lint(os.path.join(self.ws_srcdir, "alpha")) self.assertEqual(exitcode, 0) self.assertNotIn("error: unknown package", stdout) exitcode, stdout = self.run_catkin_lint(os.path.join(self.ws_srcdir, "alpha"), "--rosdistro", "melodic") self.assertEqual(exitcode, 1) self.assertIn("error: unknown package", stdout) exitcode, stdout = self.run_catkin_lint_without_rosdistro(self.ws_srcdir, "--rosdistro", "melodic") self.assertEqual(exitcode, 0) self.assertIn("cannot initialize rosdistro", stdout) except ImportError: pass exitcode, stdout = self.run_catkin_lint("--list-check-ids") self.assertEqual(exitcode, 0) self.assertIn("\nproject_name\n", stdout) exitcode, stdout = self.run_catkin_lint("--dump-cache") self.assertEqual(exitcode, 0) self.assertIn("alpha", stdout) self.assertIn("beta", stdout) self.assertIn(self.wsdir, stdout) exitcode, stdout = self.run_catkin_lint("--clear-cache") self.assertEqual(exitcode, 0) exitcode, stdout = self.run_catkin_lint("--dump-cache") self.assertEqual(exitcode, 0) self.assertIn("Cached local paths: 0\n", stdout) del os.environ["ROS_DISTRO"] exitcode, stdout = self.run_catkin_lint(self.ws_srcdir, "--rosdistro", "melodic") self.assertEqual(exitcode, 0) self.assertIn("checked 3 packages and found 0 problems", stdout) catkin_lint-1.6.6/test/test_checks_build.py000066400000000000000000001750141362025056600210470ustar00rootroot00000000000000import unittest import catkin_lint.checks.build as cc from .helper import create_env, create_manifest, create_manifest2, mock_lint, patch, mock_open, posix_and_nt import sys import os import stat class ChecksBuildTest(unittest.TestCase): @posix_and_nt @patch("os.path.isdir", lambda x: x in [os.path.normpath(d) for d in ["/package-path/mock/include", "/some/hardcoded/path"]]) def test_includes(self): """Test include_directories()""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "include_directories(include)", checks=cc.includes) self.assertEqual([], result) result = mock_lint(env, pkg, "include_directories(/some/hardcoded/path)", checks=cc.includes) self.assertEqual(["EXTERNAL_DIRECTORY"], result) result = mock_lint(env, pkg, "find_package(catkin REQUIRED) include_directories(${catkin_INCLUDE_DIRS})", checks=cc.includes) self.assertEqual([], result) result = mock_lint(env, pkg, "include_directories(missing_include)", checks=cc.includes) self.assertEqual(["MISSING_DIRECTORY"], result) result = mock_lint(env, pkg, "include_directories(/some/hardcoded/but/missing/path)", checks=cc.includes) self.assertEqual(["EXTERNAL_DIRECTORY", "MISSING_DIRECTORY"], result) result = mock_lint(env, pkg, "include_directories(${CATKIN_DEVEL_PREFIX}/include)", checks=cc.includes) self.assertEqual(["EXTERNAL_DIRECTORY"], result) result = mock_lint(env, pkg, "include_directories(${CATKIN_INSTALL_PREFIX}/include)", checks=cc.includes) self.assertEqual(["EXTERNAL_DIRECTORY"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x in [os.path.normpath(f) for f in ["/package-path/mock/src/a.cpp", "/package-path/mock/src/b.cpp", "/some/external/file.cpp"]]) def test_source_files(self): """Test add_executable() and add_library()""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "add_executable(mock IMPORTED) add_library(mock_lib IMPORTED)", checks=cc.source_files) self.assertEqual([], result) result = mock_lint(env, pkg, "add_executable(mock src/a.cpp src/b.cpp) add_library(mock_lib src/a.cpp src/b.cpp)", checks=cc.source_files) self.assertEqual([], result) result = mock_lint(env, pkg, "add_executable(mock ${CMAKE_CURRENT_SOURCE_DIR}/src/a.cpp) add_library(mock_lib ${CMAKE_CURRENT_SOURCE_DIR}/src/a.cpp)", checks=cc.source_files) self.assertEqual([], result) result = mock_lint(env, pkg, "add_executable(mock /some/external/file.cpp)", checks=cc.source_files) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, "add_library(mock /some/external/file.cpp)", checks=cc.source_files) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, "add_executable(mock src/missing.cpp)", checks=cc.source_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, "add_executable(mock ${CMAKE_CURRENT_SOURCE_DIR}/src/missing.cpp)", checks=cc.source_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, "add_executable(mock ${CMAKE_CURRENT_BINARY_DIR}/missing.cpp)", checks=cc.source_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, "add_library(mock src/missing.cpp)", checks=cc.source_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, "add_executable(mock src/b.cpp src/a.cpp)", checks=cc.source_files) self.assertEqual(["UNSORTED_LIST"], result) result = mock_lint(env, pkg, "add_library(mock src/b.cpp src/a.cpp)", checks=cc.source_files) self.assertEqual(["UNSORTED_LIST"], result) @posix_and_nt @patch("os.path.isdir", lambda x: x == os.path.normpath("/package-path/mock/in_package")) def test_link_directories(self): """Test link_directories()""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "link_directories(in_package)", checks=cc.link_directories) self.assertEqual(["LINK_DIRECTORY"], result) result = mock_lint(env, pkg, "link_directories(/not/in/package)", checks=cc.link_directories) self.assertEqual(["EXTERNAL_LINK_DIRECTORY"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/FindLocal.cmake")) def test_depends(self): """Test dependency checks""" env = create_env() pkg = create_manifest("mock", build_depends=["other_catkin"]) result = mock_lint(env, pkg, """ find_package(catkin REQUIRED COMPONENTS other_catkin) """, checks=cc.depends) self.assertEqual(["ORDER_VIOLATION"], result) result = mock_lint(env, pkg, """ project(mock) catkin_package() find_package(catkin REQUIRED COMPONENTS other_catkin) """, checks=cc.depends) self.assertEqual(["ORDER_VIOLATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin COMPONENTS other_catkin) """, checks=cc.depends) self.assertEqual(["MISSING_REQUIRED"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED other_catkin) """, checks=cc.depends) self.assertEqual(["MISSING_COMPONENTS"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) find_package(other_catkin) """, checks=cc.depends) self.assertEqual(["DUPLICATE_FIND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) find_package(unknown_package REQUIRED) """, checks=cc.depends) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(other_catkin REQUIRED) find_package(catkin REQUIRED COMPONENTS other_catkin) """, checks=cc.depends) self.assertEqual(["DUPLICATE_FIND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_system) find_package(other_catkin REQUIRED) """, checks=cc.depends) self.assertEqual(["NO_CATKIN_COMPONENT", "MISSING_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS unknown_package) find_package(other_catkin REQUIRED) """, checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) """, checks=cc.depends) self.assertEqual(["UNCONFIGURED_BUILD_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(PkgConfig REQUIRED) pkg_check_modules(other_catkin REQUIRED other_catkin>=0.0.0) """, checks=cc.depends) self.assertEqual(["MISCONFIGURED_CATKIN_PACKAGE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin) """, checks=cc.depends) self.assertEqual(["MISSING_REQUIRED"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin) if(other_catkin_FOUND) endif() """, checks=cc.depends) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) if(CATKIN_ENABLE_TESTING) find_package(other_catkin REQUIRED) endif() """, checks=cc.depends) self.assertEqual(["UNCONFIGURED_BUILD_DEPEND"], result) pkg = create_manifest("mock", test_depends=["other_catkin"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) if(CATKIN_ENABLE_TESTING) find_package(other_catkin REQUIRED) endif() """, checks=cc.depends) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) """, checks=cc.depends) self.assertEqual(["UNGUARDED_TEST_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) if(CATKIN_ENABLE_TESTING) else() find_package(other_catkin REQUIRED) endif() """, checks=cc.depends) self.assertEqual(["UNGUARDED_TEST_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) if(CATKIN_ENABLE_TESTING) else() if(CATKIN_ENABLE_TESTING) find_package(other_catkin REQUIRED) endif() endif() """, checks=cc.depends) self.assertEqual([], result) pkg = create_manifest("mock", build_depends=["other_catkin"], test_depends=["other_catkin"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) if(CATKIN_ENABLE_TESTING) find_package(other_catkin REQUIRED) endif() """, checks=cc.depends) self.assertEqual(["UNCONFIGURED_BUILD_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) """, checks=cc.depends) self.assertEqual([], result) pkg = create_manifest("mock", build_depends=["first_pkg", "second_pkg"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS first_pkg second_pkg) """, checks=cc.depends) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS second_pkg first_pkg) """, checks=cc.depends) self.assertEqual(["UNSORTED_LIST"], result) def test_find_packages(self): """Test find_package() logic""" env = create_env() pkg = create_manifest("mock", build_depends=["other_catkin"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() """ ) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) find_package(catkin REQUIRED) catkin_package() """ ) self.assertEqual(["SHADOWED_FIND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(other_catkin REQUIRED some_component) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() """ ) self.assertEqual(["SHADOWED_FIND"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/src/source.cpp")) def test_targets(self): """Test checks catkin packages with declared targets""" env = create_env() pkg = create_manifest("mock", build_depends=["other_catkin"], run_depends=["other_catkin"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() include_directories(${catkin_INCLUDE_DIRS}) add_executable(${PROJECT_NAME}/prog src/source.cpp) set_target_properties(${PROJECT_NAME}/prog PROPERTIES OUTPUT_NAME "prog") target_link_libraries(${PROJECT_NAME}/prog ${catkin_LIBRARIES}) """, checks=cc.targets) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() include_directories(${catkin_INCLUDE_DIRS}) target_link_libraries(${PROJECT_NAME}/prog ${catkin_LIBRARIES}) add_executable(${PROJECT_NAME}/prog src/source.cpp) set_target_properties(${PROJECT_NAME}/prog PROPERTIES OUTPUT_NAME "prog") """, checks=cc.targets) self.assertEqual(["ORDER_VIOLATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() add_executable(${PROJECT_NAME}_prog src/source.cpp) target_link_libraries(${PROJECT_NAME}_prog ${catkin_LIBRARIES}) """, checks=cc.targets) self.assertEqual(["UNUSED_CATKIN_INCLUDE_DIRS"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() include_directories(${catkin_INCLUDE_DIRS} ${other_catkin_INCLUDE_DIRS}) add_executable(${PROJECT_NAME}_prog src/source.cpp) target_link_libraries(${PROJECT_NAME}_prog ${catkin_LIBRARIES}) """, checks=cc.targets) self.assertEqual(["DUPLICATE_INCLUDE_PATH"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() include_directories(${catkin_INCLUDE_DIRS}) add_executable(${PROJECT_NAME}_prog src/source.cpp) target_link_libraries(${PROJECT_NAME}_prog ${catkin_LIBRARIES}) """, checks=cc.targets) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) add_executable(${PROJECT_NAME}_prog src/source.cpp) find_package(catkin REQUIRED COMPONENTS other_catkin) catkin_package() include_directories(${catkin_INCLUDE_DIRS}) target_link_libraries(${PROJECT_NAME}_prog ${catkin_LIBRARIES}) """, checks=cc.targets) self.assertEqual(["CATKIN_ORDER_VIOLATION", "ORDER_VIOLATION"], result) pkg = create_manifest("mock", meta=True) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_metapackage() add_executable(${PROJECT_NAME}_prog src/source.cpp) """, checks=cc.targets) self.assertEqual(["INVALID_META_COMMAND"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x in [os.path.normpath(f) for f in ["/some/external/file.in", "/package-path/mock/file.in", "/package-path/mock/generated.cpp.xacro"]]) def test_generated_files(self): """Test checks for generated files""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "configure_file(/some/external/file.in file)", checks=cc.generated_files) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, "configure_file(missing.in missing)", checks=cc.generated_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, "if(EXISTS \"missing.in\") configure_file(missing.in missing) endif()", checks=cc.generated_files) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() configure_file(file.in ${PROJECT_SOURCE_DIR}/generated/file.cpp) add_executable(${PROJECT_NAME} generated/file.cpp) """, checks=cc.source_files) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() configure_file(file.in /some/generated/file.cpp) add_executable(${PROJECT_NAME} /some/generated/file.cpp) """, checks=cc.source_files) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_custom_command(OUTPUT generated.cpp COMMAND some command line here) add_executable(${PROJECT_NAME} generated.cpp) """, checks=cc.source_files) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() xacro_add_xacro_file(generated.cpp.xacro) add_executable(${PROJECT_NAME} generated.cpp) """, checks=cc.source_files) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() xacro_add_files(generated.cpp.xacro) add_executable(${PROJECT_NAME} generated.cpp) """, checks=cc.source_files) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() xacro_add_xacro_file(missing.in generated.cpp) add_executable(${PROJECT_NAME} generated.cpp) """, checks=cc.source_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() xacro_add_files(missing.in) """, checks=cc.source_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_custom_command(OUTPUT generated.cpp COMMAND some command line here) add_executable(${PROJECT_NAME} other_generated.cpp) """, checks=cc.source_files) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ project(mock) include(GenerateExportHeader) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}) install(FILES ${PROJECT_BINARY_DIR}/${PROJECT_NAME}_export.h DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}) """, checks=cc.installs) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ project(mock) include(GenerateExportHeader) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}) generate_export_header(${PROJECT_NAME}) install(FILES ${PROJECT_BINARY_DIR}/${PROJECT_NAME}_export.h DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) include(GenerateExportHeader) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}) generate_export_header(${PROJECT_NAME} BASE_NAME other_name) install(FILES ${PROJECT_BINARY_DIR}/other_name_export.h DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) include(GenerateExportHeader) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}) generate_export_header(${PROJECT_NAME} BASE_NAME other_name EXPORT_FILE_NAME subdir/my_exports.h) install(FILES ${PROJECT_BINARY_DIR}/subdir/my_exports.h DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) @posix_and_nt @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/src/source.cpp")) def test_name_check(self): """Test checks for invalid names""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_executable(${PROJECT_NAME}/prog src/source.cpp) target_link_libraries(${PROJECT_NAME}/prog ${catkin_LIBRARIES}) """, checks=cc.name_check) self.assertEqual(["INVALID_TARGET_OUTPUT"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_library(lib${PROJECT_NAME} src/source.cpp) """, checks=cc.name_check) self.assertEqual(["REDUNDANT_LIB_PREFIX"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x in [os.path.normpath(f) for f in ["/package-path/mock/bin/script", "/package-path/mock/bin/script.in", "/package-path/mock/share/file", "/package-path/mock/src/source.cpp", "/some/external/script", "/some/external/file"]]) @patch("os.path.isdir", lambda x: x in [os.path.normpath(d) for d in ["/package-path/mock/include", "/some/external/dir"]]) def test_installs(self): """Test installation checks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) include_directories(include) catkin_package(INCLUDE_DIRS include) add_executable(${PROJECT_NAME} src/source.cpp) add_executable(test_${PROJECT_NAME} src/source.cpp) add_executable(${PROJECT_NAME}_example src/source.cpp) install(PROGRAMS bin/script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) install(FILES share/file DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) install(DIRECTORY include/ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(EXPORT stuff DESTINATION "${missing_variable}") """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(FILES share/file DESTINATION /wrong/destination) """, checks=cc.installs) self.assertEqual(["WRONG_INSTALL_DESTINATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(PROGRAMS bin/script DESTINATION /some/where/else) """, checks=cc.installs) self.assertEqual(["WRONG_BIN_INSTALL_DESTINATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(FILES /some/external/file DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) """, checks=cc.installs) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_file(MOCK_FILE myfile) catkin_package() install(FILES ${MOCK_FILE} DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(FILES missing_file DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) """, checks=cc.installs) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(PROGRAMS /some/external/script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(PROGRAMS bin/missing_script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() configure_file(bin/script.in bin/generated_script @ONLY) install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/bin/generated_script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(DIRECTORY /some/external/dir DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) """, checks=cc.installs) self.assertEqual(["EXTERNAL_DIRECTORY"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(DIRECTORY missing DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) """, checks=cc.installs) self.assertEqual(["MISSING_DIRECTORY"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(PROGRAMS bin/script DESTINATION "${missing_variable}") """, checks=cc.installs) self.assertEqual(["WRONG_BIN_INSTALL_DESTINATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(PROGRAMS bin/script DESTINATION wrong/destination) """, checks=cc.installs) self.assertEqual(["WRONG_BIN_INSTALL_DESTINATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(LIBRARIES ${PROJECT_NAME}) add_library(${PROJECT_NAME} src/source.cpp) add_executable(${PROJECT_NAME}_prog src/source.cpp) """, checks=cc.installs) self.assertEqual(["UNINSTALLED_EXPORT_LIB", "UNINSTALLED_TARGET"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(INCLUDE_DIRS include) add_executable(test_${PROJECT_NAME} src/source.cpp) """, checks=cc.installs) self.assertEqual(["UNUSED_INCLUDE_PATH", "UNINSTALLED_INCLUDE_PATH"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}_lib src/source.cpp) add_executable(${PROJECT_NAME} src/source.cpp) target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_lib) install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["UNINSTALLED_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}_interface INTERFACE) add_executable(${PROJECT_NAME} src/source.cpp) target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_interface) install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}_static STATIC src/source.cpp) add_executable(${PROJECT_NAME} src/source.cpp) target_link_libraries(${PROJECT_NAME} ${PROJECT_NAME}_static) install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["UNDEFINED_TARGET"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_library(${PROJECT_NAME}_target1 src/source.cpp) add_executable(${PROJECT_NAME}_target2 src/source.cpp) install(TARGETS ${PROJECT_NAME}_target2 ${PROJECT_NAME}_target1 RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["UNSORTED_LIST"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_install_python(PROGRAMS) """, checks=cc.installs) self.assertEqual(["ARGUMENT_ERROR"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_install_python(PROGRAMS bin/missing DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["MISSING_FILE"], result) open_func = "builtins.open" if sys.version_info[0] >= 3 else "__builtin__.open" # Work around a limitation of older Python mock_open() implementations with patch(open_func, new_callable=mock_open, read_data="test\nthis\n"): with open("anything", "r") as f: if f.readline() != "test\n": return with patch(open_func, new_callable=mock_open, read_data="no python shebang\ncontent\n"): result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_install_python(PROGRAMS bin/script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["MISSING_SHEBANG"], result) with patch(open_func, new_callable=mock_open, read_data="#!/wrong/shebang\ncontent\n"): result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_install_python(PROGRAMS bin/script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["MISSING_SHEBANG"], result) with patch(open_func, new_callable=mock_open, read_data="#!/usr/bin/python\ncontent\n"): result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_install_python(PROGRAMS bin/script DESTINATION wrong/destination) """, checks=cc.installs) self.assertEqual(["WRONG_BIN_INSTALL_DESTINATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_install_python(PROGRAMS /some/external/script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_install_python(PROGRAMS bin/script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.installs) self.assertEqual([], result) def test_tests(self): """Test unit test checks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_download_test_data() """, checks=cc.tests) self.assertEqual(["UNGUARDED_TEST_CMD"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) if(CATKIN_ENABLE_TESTING) add_rostest() endif() """, checks=cc.tests) self.assertEqual(["MISSING_DEPEND"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/src/source.cpp")) @patch("os.path.isdir", lambda x: x in [os.path.normpath("/package-path/mock/include"), os.path.normpath("/package-path/mock/include/mock")]) def test_exports(self): """Test checks for exported libraries""" env = create_env() pkg = create_manifest("mock", build_depends=["other_catkin", "other_system"], run_depends=["other_catkin", "other_system"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_package(other_system REQUIRED) catkin_package( INCLUDE_DIRS include CATKIN_DEPENDS other_catkin DEPENDS other_system LIBRARIES ${PROJECT_NAME} ) include_directories(include) add_library(${PROJECT_NAME} src/source.cpp) """, checks=cc.exports) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_package(other_system REQUIRED) catkin_package( INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} CATKIN_DEPENDS other_catkin DEPENDS other_system ) """, checks=cc.exports) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_catkin) find_package(other_system REQUIRED) find_path(Stuff_INCLUDE_DIRS stuff.h) find_library(Stuff_LIBRARIES stuff) catkin_package( CATKIN_DEPENDS other_catkin DEPENDS Stuff other_system ) """, checks=cc.exports) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_package(other_system REQUIRED) catkin_package( INCLUDE_DIRS missing_include CATKIN_DEPENDS other_catkin DEPENDS other_system ) """, checks=cc.exports) self.assertEqual(["MISSING_INCLUDE_PATH"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_package(other_system REQUIRED) catkin_package( DEPENDS other_catkin other_system ) """, checks=cc.exports) self.assertEqual(["CATKIN_AS_SYSTEM_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_package(other_system REQUIRED) catkin_package( CATKIN_DEPENDS other_catkin other_system ) """, checks=cc.exports) self.assertEqual(["SYSTEM_AS_CATKIN_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_package(unknown_package REQUIRED) catkin_package( CATKIN_DEPENDS other_catkin unknown_package ) """, checks=cc.exports) self.assertEqual(["UNKNOWN_PACKAGE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) catkin_package( CATKIN_DEPENDS other_catkin DEPENDS other_system ) """, checks=cc.exports) self.assertEqual(["UNCONFIGURED_SYSTEM_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) catkin_package( CATKIN_DEPENDS other_catkin INCLUDE_DIRS /not/in/package ) """, checks=cc.exports) self.assertEqual(["EXTERNAL_INCLUDE_PATH"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_path(EXTERNAL_INCLUDE some_file.h) catkin_package( INCLUDE_DIRS ${EXTERNAL_INCLUDE} CATKIN_DEPENDS other_catkin ) """, checks=cc.exports) self.assertEqual(["EXTERNAL_INCLUDE_PATH"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(CATKIN_DEPENDS other_catkin) """, checks=cc.exports) self.assertEqual(["MISSING_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) pkg_check_modules(FOO foo) catkin_package(DEPENDS FOO) """, checks=cc.exports) self.assertEqual(["EXPORTED_PKG_CONFIG"], result) pkg = create_manifest("mock", build_depends=["other_msgs"], run_depends=["other_msgs"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS other_msgs) catkin_package() """, checks=cc.exports) self.assertEqual(["SUGGEST_CATKIN_DEPEND"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(INCLUDE_DIRS include) include_directories(include) add_library(${PROJECT_NAME} src/source.cpp) """, checks=cc.exports) self.assertEqual(["MISSING_EXPORT_LIB"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(INCLUDE_DIRS include LIBRARIES ${PROJECT_NAME}) include_directories(include) add_library(${PROJECT_NAME} src/source.cpp) set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME "renamed") """, checks=cc.exports) self.assertEqual(["EXPORT_LIB_RENAMED"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(INCLUDE_DIRS include LIBRARIES ${PROJECT_NAME}) include_directories(include) add_executable(${PROJECT_NAME} src/source.cpp) """, checks=cc.exports) self.assertEqual(["EXPORT_LIB_NOT_LIB"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(INCLUDE_DIRS include) add_executable(test_${PROJECT_NAME} src/source.cpp) """, checks=cc.exports) self.assertEqual(["UNUSED_INCLUDE_PATH"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package(INCLUDE_DIRS include) include_directories(include/${PROJECT_NAME}) add_executable(test_${PROJECT_NAME} src/source.cpp) """, checks=cc.exports) self.assertEqual(["UNUSED_INCLUDE_PATH", "AMBIGUOUS_INCLUDE_PATH"], result) pkg = create_manifest("mock", build_depends=["first_pkg", "second_pkg"], run_depends=["first_pkg", "second_pkg"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS first_pkg second_pkg) catkin_package(CATKIN_DEPENDS first_pkg second_pkg) """, checks=cc.exports) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS first_pkg second_pkg) catkin_package(CATKIN_DEPENDS second_pkg first_pkg) """, checks=cc.exports) self.assertEqual(["UNSORTED_LIST"], result) def test_qt5(self): """Test Qt5 modules included through COMPONENTS directives""" env = create_env() pkg = create_manifest("mock", build_depends=[], run_depends=[]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(Qt5 REQUIRED COMPONENTS Widgets) catkin_package(DEPENDS Qt5Widgets) """, checks=cc.exports) self.assertEqual([], result) @posix_and_nt @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/config.xml")) def test_plugins(self): """Test checks for exported plugins""" from catkin_pkg.package import Export env = create_env() pkg = create_manifest("mock", run_depends=["other_catkin"]) plugin = Export("other_catkin") plugin.attributes = {"plugin": "${prefix}/config.xml"} pkg.exports += [plugin] result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual([], result) result = mock_lint(env, pkg, "", checks=cc.plugins) self.assertEqual(["UNINSTALLED_PLUGIN"], result) result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION})", checks=cc.plugins) self.assertEqual(["UNINSTALLED_PLUGIN"], result) pkg = create_manifest("mock", run_depends=["other_catkin"]) plugin = Export("other_catkin") plugin.attributes = {"plugin": "config.xml"} pkg.exports += [plugin] result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual(["PLUGIN_EXPORT_PREFIX"], result) pkg = create_manifest("mock") plugin = Export("other_catkin") plugin.attributes = {"plugin": "${prefix}/config.xml"} pkg.exports += [plugin] result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual(["PLUGIN_DEPEND"], result) pkg = create_manifest("mock") plugin = Export("mock") plugin.attributes = {"plugin": "${prefix}/config.xml"} pkg.exports += [plugin] result = mock_lint(env, pkg, "install(FILES config.xml DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})", checks=cc.plugins) self.assertEqual([], result) pkg = create_manifest("mock", run_depends=["other_catkin"]) plugin = Export("other_catkin") plugin.attributes = {"plugin": "${prefix}/missing_config.xml"} pkg.exports += [plugin] result = mock_lint(env, pkg, "", checks=cc.plugins) self.assertEqual(["MISSING_PLUGIN"], result) @posix_and_nt @patch("os.path.isfile", lambda x: "exist" in x) @patch("os.stat", lambda x: os.stat_result((stat.S_IXUSR if "script" in x else 0, 0, 0, 0, 0, 0, 0, 0, 0, 0))) def test_dynamic_reconfigure(self): """Test checks for dynamic reconfigure scripts""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) generate_dynamic_reconfigure_options(cfg/existing_script.cfg) """, checks=cc.dynamic_reconfigure) self.assertEqual(["UNCONFIGURED_BUILD_DEPEND"], result) pkg = create_manifest("mock", build_depends=["dynamic_reconfigure"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS dynamic_reconfigure) generate_dynamic_reconfigure_options(cfg/existing_script.cfg) """, checks=cc.dynamic_reconfigure) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS dynamic_reconfigure) generate_dynamic_reconfigure_options(/external/but/existing_script.cfg) """, checks=cc.dynamic_reconfigure) self.assertEqual(["EXTERNAL_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS dynamic_reconfigure) generate_dynamic_reconfigure_options(cfg/missing_script.cfg) """, checks=cc.dynamic_reconfigure) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS dynamic_reconfigure) generate_dynamic_reconfigure_options(cfg/existing_non_executable.cfg) """, checks=cc.dynamic_reconfigure) self.assertEqual(["SCRIPT_NOT_EXECUTABLE"], result) @posix_and_nt @patch("os.walk", lambda x, topdown: iter([(os.path.normpath("/package-path/mock/bin"), [], ["script"])])) @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/bin/script")) @patch("os.path.isdir", lambda x: x == os.path.normpath("/package-path/mock/bin")) @patch("os.stat", lambda x: os.stat_result((stat.S_IXUSR, 0, 0, 0, 0, 0, 0, 0, 0, 0))) def test_scripts(self): """Test checks for executable scripts""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) install(PROGRAMS bin/script DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) """, checks=cc.scripts) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) install(DIRECTORY bin/ DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} USE_SOURCE_PERMISSIONS) """, checks=cc.scripts) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) """, checks=cc.scripts) self.assertEqual(["UNINSTALLED_SCRIPT"], result) pkg = create_manifest("mock", build_depends=["dynamic_reconfigure"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS dynamic_reconfigure) generate_dynamic_reconfigure_options(bin/script) """, checks=cc.scripts) self.assertEqual([], result) def test_message_generation(self): """Test ROS message generation checks""" env = create_env() pkg = create_manifest("mock", build_depends=["message_generation", "other_catkin"], run_depends=["message_runtime", "other_catkin"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) add_message_files(FILES message.msg zzz_message.msg NOINSTALL) generate_messages(DEPENDENCIES other_catkin) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) """, checks=cc.message_generation) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) generate_messages(DEPENDENCIES other_catkin) add_message_files(FILES message.msg) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) """, checks=cc.message_generation) self.assertEqual(["ORDER_VIOLATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) add_message_files(FILES message.msg) generate_messages(DEPENDENCIES other_catkin) """, checks=cc.message_generation) self.assertEqual(["ORDER_VIOLATION", "ORDER_VIOLATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) add_message_files(FILES message.msg) generate_messages(DEPENDENCIES other_catkin) find_package(catkin REQUIRED) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) """, checks=cc.message_generation) self.assertEqual(["CATKIN_ORDER_VIOLATION", "CATKIN_ORDER_VIOLATION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) add_message_files(FILES message.msg) generate_messages(DEPENDENCIES other_catkin) catkin_package(CATKIN_DEPENDS message_runtime) """, checks=cc.message_generation) self.assertEqual(["MISSING_CATKIN_DEPEND"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) add_message_files(FILES message.msg) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) """, checks=cc.message_generation) self.assertEqual(["MISSING_GENERATE_MSG"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) generate_messages(DEPENDENCIES other_catkin) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) """, checks=cc.message_generation) self.assertEqual(["UNUSED_GENERATE_MSG"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(message_generation REQUIRED) find_package(other_catkin REQUIRED) add_message_files(FILES message.msg) generate_messages(DEPENDENCIES other_catkin) catkin_package(CATKIN_DEPENDS other_catkin) """, checks=cc.message_generation) self.assertEqual(["MISSING_CATKIN_DEPEND"], result) pkg = create_manifest("mock") pkg = create_manifest("mock", meta=True) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) add_message_files(FILES message.msg) generate_messages() catkin_metapackage() """, checks=cc.message_generation) self.assertEqual(["INVALID_META_COMMAND", "INVALID_META_COMMAND"], result) pkg = create_manifest("mock", build_depends=["other_catkin"], run_depends=["message_runtime", "other_catkin"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) add_message_files(FILES message.msg) generate_messages(DEPENDENCIES other_catkin) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) """, checks=cc.message_generation) self.assertEqual(["UNCONFIGURED_BUILD_DEPEND"], result) pkg = create_manifest("mock", build_depends=["message_generation"], run_depends=["message_runtime"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS message_generation) add_message_files(FILES message.msg) generate_messages(DEPENDENCIES other_catkin) catkin_package(CATKIN_DEPENDS message_runtime other_catkin) """, checks=cc.message_generation) self.assertEqual(["MISSING_DEPEND", "UNCONFIGURED_MSG_DEPEND", "MISSING_DEPEND", "MISSING_DEPEND"], result) pkg = create_manifest("mock", build_depends=["message_generation", "first_pkg", "second_pkg"], run_depends=["message_runtime", "first_pkg", "second_pkg"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS first_pkg message_generation second_pkg) add_message_files(FILES message1.msg message2.msg) generate_messages(DEPENDENCIES first_pkg second_pkg) catkin_package(CATKIN_DEPENDS first_pkg message_runtime second_pkg) """, checks=cc.message_generation) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS first_pkg message_generation second_pkg) add_message_files(FILES message1.msg message2.msg) generate_messages(DEPENDENCIES second_pkg first_pkg) catkin_package(CATKIN_DEPENDS first_pkg message_runtime second_pkg) """, checks=cc.message_generation) self.assertEqual(["UNSORTED_LIST"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS first_pkg message_generation second_pkg) add_message_files(FILES message2.msg message1.msg) generate_messages(DEPENDENCIES first_pkg second_pkg) catkin_package(CATKIN_DEPENDS first_pkg message_runtime second_pkg) """, checks=cc.message_generation) self.assertEqual(["UNSORTED_LIST"], result) def test_format2_message_exports(self): """Test checks for package format version 2 features""" env = create_env() pkg = create_manifest2("mock", build_depends=["message_generation"], exec_depends=["message_runtime"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS message_generation) catkin_package(CATKIN_DEPENDS message_runtime) """, checks=cc.exports) self.assertEqual([], result) pkg = create_manifest2("mock", build_depends=["message_generation"], build_export_depends=["message_runtime"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS message_generation) catkin_package(CATKIN_DEPENDS message_runtime) """, checks=cc.exports) self.assertEqual([], result) pkg = create_manifest2("mock", build_depends=["message_generation"]) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED COMPONENTS message_generation) catkin_package(CATKIN_DEPENDS message_runtime) """, checks=cc.exports) self.assertEqual(["MISSING_DEPEND"], result) catkin_lint-1.6.6/test/test_checks_cuda.py000066400000000000000000000027601362025056600206610ustar00rootroot00000000000000import unittest import catkin_lint.checks.cuda as cc from .helper import create_env, create_manifest, mock_lint, patch, posix_and_nt import os class ChecksCudaTest(unittest.TestCase): @posix_and_nt @patch("os.path.isfile", lambda x: x in [os.path.normpath("/package-path/mock/src/a.cpp"), os.path.normpath("/package-path/mock/src/b.cpp")]) def test_targets(self): """Test CUDA checks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "cuda_add_executable(target src/a.cpp src/b.cpp) cuda_add_library(target_lib src/a.cpp src/b.cpp)", checks=cc.targets) self.assertEqual([], result) result = mock_lint(env, pkg, "cuda_add_executable(target ${CMAKE_CURRENT_SOURCE_DIR}/src/a.cpp) cuda_add_library(target_lib ${CMAKE_CURRENT_SOURCE_DIR}/src/a.cpp)", checks=cc.targets) self.assertEqual([], result) result = mock_lint(env, pkg, "cuda_add_executable(target} src/missing.cpp)", checks=cc.targets) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, "cuda_add_library(target src/missing.cpp)", checks=cc.targets) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, "cuda_add_executable(target src/b.cpp src/a.cpp)", checks=cc.targets) self.assertEqual(["UNSORTED_LIST"], result) result = mock_lint(env, pkg, "cuda_add_library(target} src/b.cpp src/a.cpp)", checks=cc.targets) self.assertEqual(["UNSORTED_LIST"], result) catkin_lint-1.6.6/test/test_checks_manifest.py000066400000000000000000000205121362025056600215460ustar00rootroot00000000000000import unittest import os import sys import catkin_lint.checks.manifest as cc from .helper import create_env, create_manifest, create_manifest2, mock_lint, mock_open, patch, posix_and_nt class ChecksManifestTest(unittest.TestCase): def test_depends(self): """Test dependency checks for package.xml""" env = create_env() pkg = create_manifest("mock", build_depends=["other_catkin"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual([], result) pkg = create_manifest("mock", buildtool_depends=["invalid"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) pkg = create_manifest("mock", build_depends=["invalid"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) pkg = create_manifest("mock", run_depends=["invalid"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) pkg = create_manifest("mock", test_depends=["invalid"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) pkg = create_manifest2("mock", build_export_depends=["invalid"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) pkg = create_manifest2("mock", buildtool_export_depends=["invalid"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) pkg = create_manifest2("mock", exec_depends=["invalid"]) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["UNKNOWN_PACKAGE"], result) pkg = create_manifest("mock", run_depends=["other_catkin"], meta=True) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual([], result) pkg = create_manifest("mock", build_depends=["other_catkin"], meta=True) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["INVALID_META_DEPEND"], result) pkg = create_manifest("mock", test_depends=["other_catkin"], meta=True) result = mock_lint(env, pkg, "", checks=cc.depends) self.assertEqual(["INVALID_META_DEPEND"], result) def test_catkin_build(self): """Test catkin build system checks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.catkin_build) self.assertEqual([], result) pkg = create_manifest("mock", buildtool_depends=[]) result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.catkin_build) self.assertEqual(["MISSING_DEPEND"], result) pkg = create_manifest("mock", buildtool_depends=[], build_depends=["catkin"]) result = mock_lint(env, pkg, "", checks=cc.catkin_build) self.assertEqual(["WRONG_DEPEND"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, "", checks=cc.catkin_build) self.assertEqual(["UNUSED_DEPEND"], result) pkg = create_manifest("mock", meta=True) result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.catkin_build) self.assertEqual(["WRONG_CATKIN_PACKAGE"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_metapackage()", checks=cc.catkin_build) self.assertEqual(["WRONG_CATKIN_METAPACKAGE"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) catkin_package()", checks=cc.catkin_build) self.assertEqual(["CATKIN_ORDER_VIOLATION", "MISSING_FIND"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) generate_messages()", checks=cc.catkin_build) self.assertEqual(["MISSING_FIND", "MISSING_CMD"], result) pkg = create_manifest("mock", meta=True) result = mock_lint(env, pkg, "project(mock) catkin_metapackage()", checks=cc.catkin_build) self.assertEqual(["CATKIN_ORDER_VIOLATION", "MISSING_FIND"], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED)", checks=cc.catkin_build) self.assertEqual(["MISSING_CMD"], result) pkg = create_manifest("mock", meta=True) result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED)", checks=cc.catkin_build) self.assertEqual(["MISSING_CMD"], result) pkg = create_manifest("catkin") result = mock_lint(env, pkg, "project(catkin) catkin_package()") self.assertEqual([], result) @posix_and_nt @patch("os.walk", lambda x, topdown: iter([(os.path.normpath("/package-path/mock"), [], ["mock.launch"])])) def test_launch_depends(self): """Test check for package dependencies which are used in launch files""" env = create_env() open_func = "builtins.open" if sys.version_info[0] >= 3 else "__builtin__.open" pkg = create_manifest("mock") with patch(open_func, mock_open(read_data='')): result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.launch_depends) self.assertEqual([], result) with patch(open_func, mock_open(read_data='')): result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.launch_depends) self.assertEqual(["PARSE_ERROR"], result) with patch(open_func, mock_open(read_data='')): result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.launch_depends) self.assertEqual([], result) with patch(open_func, mock_open(read_data='')): result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.launch_depends) self.assertEqual([], result) with patch(open_func, mock_open(read_data='')): result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.launch_depends) self.assertEqual(["LAUNCH_DEPEND"], result) with patch(open_func, mock_open(read_data='')): result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package()", checks=cc.launch_depends) self.assertEqual(["LAUNCH_DEPEND"], result) def test_export_targets(self): """Test check for valid exported targets""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package(EXPORTED_TARGETS valid) add_custom_target(valid)", checks=cc.export_targets) self.assertEqual([], result) pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_package(EXPORTED_TARGETS invalid)", checks=cc.export_targets) self.assertEqual(["UNDEFINED_TARGET"], result) def test_package_description(self): """Test check for descriptive package descriptions""" env = create_env() pkg = create_manifest("mock", description="Cool Worf") result = mock_lint(env, pkg, "", checks=cc.package_description) self.assertEqual([], result) pkg = create_manifest("mock", description="The mock package provides a Cool Worf") result = mock_lint(env, pkg, "", checks=cc.package_description) self.assertEqual(["DESCRIPTION_BOILERPLATE"], result) pkg = create_manifest("mock", description="This mock package is a package for ROS nodes") result = mock_lint(env, pkg, "", checks=cc.package_description) self.assertEqual(["DESCRIPTION_MEANINGLESS"], result) pkg = create_manifest("mock", description="Mock Cool Worf") result = mock_lint(env, pkg, "", checks=cc.package_description) self.assertEqual([], result) catkin_lint-1.6.6/test/test_checks_misc.py000066400000000000000000000205601362025056600206760ustar00rootroot00000000000000import unittest import os import catkin_lint.checks.misc as cc from .helper import create_env, create_manifest, mock_lint, patch, posix_and_nt class ChecksMiscTest(unittest.TestCase): def test_project(self): """Test project()""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock)", checks=cc.project) self.assertEqual([], result) result = mock_lint(env, pkg, "project(wrong)", checks=cc.project) self.assertEqual(["PROJECT_NAME"], result) result = mock_lint(env, pkg, "project(mock) set(my_mock_var ON)", checks=cc.project) self.assertEqual(["LITERAL_PROJECT_NAME"], result) result = mock_lint(env, pkg, "project(mock) add_executable(mock mock.cpp)", checks=cc.project) self.assertEqual(["LITERAL_PROJECT_NAME"], result) result = mock_lint(env, pkg, "project(mock) add_executable(${PROJECT_NAME} mock.cpp)", checks=cc.project) self.assertEqual([], result) def test_special_vars(self): """Test checks for proper handling of special variables""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock)", checks=cc.special_vars) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) set(ENV{PATH} wrong)", checks=cc.special_vars) self.assertEqual(["IMMUTABLE_VAR"], result) result = mock_lint(env, pkg, "project(mock) set(PROJECT_NAME wrong)", checks=cc.special_vars) self.assertEqual(["IMMUTABLE_VAR"], result) result = mock_lint(env, pkg, "project(mock) set(CMAKE_BUILD_TYPE wrong)", checks=cc.special_vars) self.assertEqual(["CMAKE_BUILD_TYPE"], result) result = mock_lint(env, pkg, "project(mock) if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE default) endif()", checks=cc.special_vars) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) set(CMAKE_CXX_FLAGS wrong)", checks=cc.special_vars) self.assertEqual(["CRITICAL_VAR_OVERWRITE"], result) result = mock_lint(env, pkg, "project(mock) unset(CMAKE_CXX_FLAGS)", checks=cc.special_vars) self.assertEqual(["CRITICAL_VAR_OVERWRITE"], result) result = mock_lint(env, pkg, "project(mock) set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} extra)", checks=cc.special_vars) self.assertEqual(["CRITICAL_VAR_APPEND"], result) result = mock_lint(env, pkg, "project(mock) list(GET CMAKE_PREFIX_PATH 0)", checks=cc.special_vars) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) list(LENGTH CMAKE_PREFIX_PATH len)", checks=cc.special_vars) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) list(APPEND CMAKE_PREFIX_PATH extra)", checks=cc.special_vars) self.assertEqual(["CRITICAL_VAR_APPEND"], result) result = mock_lint(env, pkg, "project(mock) list(REVERSE CMAKE_PREFIX_PATH)", checks=cc.special_vars) self.assertEqual(["CRITICAL_VAR_OVERWRITE"], result) result = mock_lint(env, pkg, "project(mock) list(INSERT PROJECT_NAME 0 wrong)", checks=cc.special_vars) self.assertEqual(["IMMUTABLE_VAR"], result) def test_global_vars(self): """Test global variable checks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) option(${PROJECT_NAME}_option test OFF) set(${PROJECT_NAME}_global CACHE STRING)", checks=cc.global_vars) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) set(global CACHE STRING)", checks=cc.global_vars) self.assertEqual(["GLOBAL_VAR_COLLISION"], result) result = mock_lint(env, pkg, "project(mock) set(global \"value\")", checks=cc.global_vars) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) option(optional test OFF)", checks=cc.global_vars) self.assertEqual(["GLOBAL_VAR_COLLISION"], result) def test_singleton_command(self): """Test check for singleton commands""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock)", checks=cc.singleton_commands) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) project(mock2)", checks=cc.singleton_commands) self.assertEqual(["DUPLICATE_CMD"], result) def test_deprecated(self): """Test check for deprecated features""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "add_gtest()", checks=cc.deprecated) self.assertEqual(["DEPRECATED_CMD"], result) result = mock_lint(env, pkg, "add_nosetests()", checks=cc.deprecated) self.assertEqual(["DEPRECATED_CMD"], result) result = mock_lint(env, pkg, "download_test_data()", checks=cc.deprecated) self.assertEqual(["DEPRECATED_CMD"], result) result = mock_lint(env, pkg, "parse_arguments()", checks=cc.deprecated) self.assertEqual(["DEPRECATED_CMD"], result) def test_cmake_modules(self): """Test check for cmake_modules usage""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) find_package(NUMPY)", checks=cc.cmake_modules) self.assertEqual(["MISSING_CMAKE_MODULES"], result) result = mock_lint(env, pkg, "project(mock) find_package(Eigen)", checks=cc.cmake_modules) self.assertEqual(["DEPRECATED_CMAKE_MODULE"], result) def test_minimum_version(self): """Test check for CMake minimum compatible version""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "cmake_minimum_required(VERSION 2.8.12) project(mock)", checks=cc.minimum_version) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) cmake_minimum_required(VERSION 2.8.12)", checks=cc.minimum_version) self.assertEqual(["ORDER_VIOLATION"], result) def test_endblock(self): """Test proper style for CMake code blocks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "foreach(a) endforeach()", checks=cc.endblock) self.assertEqual([], result) result = mock_lint(env, pkg, "if(a) else() endif()", checks=cc.endblock) self.assertEqual([], result) result = mock_lint(env, pkg, "macro(a) endmacro()", checks=cc.endblock) self.assertEqual([], result) result = mock_lint(env, pkg, "function(a) endfunction()", checks=cc.endblock) self.assertEqual([], result) result = mock_lint(env, pkg, "foreach(a) endforeach(a)", checks=cc.endblock) self.assertEqual(["ENDBLOCK_ARGS"], result) result = mock_lint(env, pkg, "if(a) else(a) endif()", checks=cc.endblock) self.assertEqual(["ENDBLOCK_ARGS"], result) result = mock_lint(env, pkg, "if(a) else() endif(a)", checks=cc.endblock) self.assertEqual(["ENDBLOCK_ARGS"], result) result = mock_lint(env, pkg, "macro(a) endmacro(a)", checks=cc.endblock) self.assertEqual(["ENDBLOCK_ARGS"], result) result = mock_lint(env, pkg, "function(a) endfunction(a)", checks=cc.endblock) self.assertEqual(["ENDBLOCK_ARGS"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/mock/FindLocal.cmake")) def test_cmake_includes(self): """Test CMake includes""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, {"/package-path/mock/CMakeLists.txt": """ include(FindLocal.cmake) include(FindOptional.cmake OPTIONAL) include(FindPackageHandleStandardArgs) """, "/package-path/mock/FindLocal.cmake": "", }, checks=cc.cmake_includes) self.assertEqual([], result) result = mock_lint(env, pkg, """ include(missing.cmake) """, checks=cc.cmake_includes) self.assertEqual(["MISSING_FILE"], result) result = mock_lint(env, pkg, """ include(FindStuff) """, checks=cc.cmake_includes) self.assertEqual(["FIND_BY_INCLUDE"], result) catkin_lint-1.6.6/test/test_checks_python.py000066400000000000000000000034611362025056600212650ustar00rootroot00000000000000import unittest import os import catkin_lint.checks.python as cc from .helper import create_env, create_manifest, mock_lint, patch, posix_and_nt class ChecksPythonTest(unittest.TestCase): @patch("os.path.isfile", lambda x: False) def test_setup_without_setup_py(self): """Test catkin_python_setup() call without setup.py""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "", checks=cc.setup) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_python_setup()", checks=cc.setup) self.assertEqual(["MISSING_FILE"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x in [os.path.normpath("/package-path/mock/setup.py"), os.path.normpath("/package-path/catkin/setup.py")]) def test_setup_with_setup_py(self): """Test proper placement and handling of catkin_python_setup()""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) catkin_python_setup()", checks=cc.setup) self.assertEqual([], result) result = mock_lint(env, pkg, "project(mock) catkin_python_setup()", checks=cc.setup) self.assertEqual(["CATKIN_ORDER_VIOLATION"], result) result = mock_lint(env, pkg, "project(mock) find_package(catkin REQUIRED) generate_messages() catkin_python_setup()", checks=cc.setup) self.assertEqual(["ORDER_VIOLATION"], result) result = mock_lint(env, pkg, "project(mock)", checks=cc.setup) self.assertEqual(["MISSING_PYTHON_SETUP"], result) pkg = create_manifest("catkin") result = mock_lint(env, pkg, "project(catkin) catkin_python_setup()", checks=cc.setup) self.assertEqual([], result) catkin_lint-1.6.6/test/test_cmake_parser.py000066400000000000000000000512141362025056600210570ustar00rootroot00000000000000import unittest import catkin_lint.cmake as cmake class CMakeParserTest(unittest.TestCase): def parse_all(self, s, var=None, env_var=None, location=None): result = [] ctxt = cmake.ParserContext() for cmd, args, arg_tokens, (fname, line, column) in ctxt.parse(s, var=var, env_var=env_var): if cmd == "#catkin_lint" and args and args[0] == "skip": ctxt.skip_block() continue if location is None: result.append((cmd, args)) elif location == 1: result.append((cmd, args, line)) elif location == 2: result.append((cmd, args, line, column)) return result def test_empty(self): """Test CMake parser with empty file""" self.assertEqual( self.parse_all(""), [] ) def test_generator_expressions(self): """Test CMake parser generator expressions""" self.assertEqual( self.parse_all("command($<0:ignore_me>)"), [("command", [])] ) def test_command(self): """Test CMake parser command parsing""" self.assertEqual( self.parse_all("command()"), [("command", [])] ) self.assertEqual( self.parse_all("MiXeDCaSe()"), [("MiXeDCaSe", [])] ) self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "unbalanced(") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "invalid%=characters$()") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "()") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "missing_braces") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "cmd();") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "cmd cmd()") def test_string(self): """Test CMake parser string parsing""" self.assertEqual( self.parse_all('cmd("simple string")'), [("cmd", ["simple string"])] ) self.assertEqual( self.parse_all('cmd("string with \\"quote\\"")'), [("cmd", ['string with "quote"'])] ) self.assertEqual( self.parse_all('cmd("string that spans\nmultiple lines")'), [("cmd", ['string that spans\nmultiple lines'])] ) self.assertEqual( self.parse_all('cmd("\\\\"\\")'), [("cmd", ['\\', '"'])] ) def test_macro(self): """Test CMake parser macro expansion""" self.assertEqual( self.parse_all("macro(test) cmd() endmacro() test()"), [("macro", ["test"]), ("endmacro", []), ("cmd", [])] ) self.assertEqual( self.parse_all("macro(test) cmd() test() endmacro() test()"), [("macro", ["test"]), ("endmacro", []), ("cmd", [])] ) self.assertEqual( self.parse_all("macro(test) cmd(${global}) test() endmacro() test()", {"global": "value"}), [("macro", ["test"]), ("endmacro", []), ("cmd", ["value"])] ) self.assertEqual( self.parse_all("macro(test arg) cmd(${arg}) endmacro() test(fun)"), [("macro", ["test", "arg"]), ("endmacro", []), ("cmd", ["fun"])] ) self.assertEqual( self.parse_all("macro(test arg) cmd(${arg}) endmacro() test(local) cmd(${arg})", {"arg": "global"}), [("macro", ["test", "arg"]), ("endmacro", []), ("cmd", ["local"]), ("cmd", ["global"])] ) self.assertEqual( self.parse_all('macro(test arg) cmd(${arg}) endmacro() test("one;two;three")'), [("macro", ["test", "arg"]), ("endmacro", []), ("cmd", ["one", "two", "three"])] ) self.assertEqual( self.parse_all('macro(test arg) cmd(${arg}) cmd(${ARGN}) endmacro() test(one;two;three)'), [("macro", ["test", "arg"]), ("endmacro", []), ("cmd", ["one"]), ("cmd", ["two", "three"])] ) self.assertEqual( self.parse_all('macro(test arg1 arg2) cmd("${arg2}") cmd(${ARGN}) endmacro() test(one)'), [("macro", ["test", "arg1", "arg2"]), ("endmacro", []), ("cmd", [""]), ("cmd", [])] ) self.assertEqual( self.parse_all('macro(test arg) cmd("${arg}") endmacro() test("one;two;three")'), [("macro", ["test", "arg"]), ("endmacro", []), ("cmd", ["one;two;three"])] ) self.assertEqual( self.parse_all('macro(test arg) cmd(${arg} ${ARGN}) endmacro() test(arg extra stuff)'), [("macro", ["test", "arg"]), ("endmacro", []), ("cmd", ["arg", "extra", "stuff"])] ) self.assertEqual( self.parse_all('macro(TEST arg) cmd(${arg}) endmacro() test(value)'), [("macro", ["TEST", "arg"]), ("endmacro", []), ("cmd", ["value"])] ) self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "macro() endmacro()") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "macro(fun)") def test_function(self): """Test CMake parser function definitions""" self.assertEqual( self.parse_all("function(test) cmd() endfunction() test()"), [("function", ["test"]), ("endfunction", []), ("test", [])] ) self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "function() endfunction()") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "function(fun)") def test_foreach(self): """Test CMake parser foreach() loop handling""" self.assertEqual( self.parse_all('foreach(arg RANGE 2) cmd(${arg}) endforeach()'), [("foreach", ["arg", "RANGE", "2"]), ("cmd", ["0"]), ("cmd", ["1"]), ("cmd", ["2"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg RANGE 1 3) cmd(${arg}) endforeach()'), [("foreach", ["arg", "RANGE", "1", "3"]), ("cmd", ["1"]), ("cmd", ["2"]), ("cmd", ["3"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg RANGE 1 5 2) cmd(${arg}) endforeach()'), [("foreach", ["arg", "RANGE", "1", "5", "2"]), ("cmd", ["1"]), ("cmd", ["3"]), ("cmd", ["5"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg 1 2 3 4 5) endforeach()'), [("foreach", ["arg", "1", "2", "3", "4", "5"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg one) cmd(${global}) endforeach()', {"global": "value"}), [("foreach", ["arg", "one"]), ("cmd", ["value"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg IN LISTS dummy) cmd(${arg}) endforeach()', {"dummy": "one;two;three"}), [("foreach", ["arg", "IN", "LISTS", "dummy"]), ("cmd", ["one"]), ("cmd", ["two"]), ("cmd", ["three"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg IN ITEMS ${dummy}) cmd(${arg}) endforeach()', {"dummy": "one;two;three"}), [("foreach", ["arg", "IN", "ITEMS", "one", "two", "three"]), ("cmd", ["one"]), ("cmd", ["two"]), ("cmd", ["three"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg ${dummy}) cmd(${arg}) endforeach()', {"dummy": "one;two;three"}), [("foreach", ["arg", "one", "two", "three"]), ("cmd", ["one"]), ("cmd", ["two"]), ("cmd", ["three"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(arg) cmd(${arg}) endforeach()'), [("foreach", ["arg"]), ("endforeach", [])] ) self.assertEqual( self.parse_all('foreach(a 1 2) foreach(b 3 4) cmd(${a} ${b}) endforeach() endforeach()'), [("foreach", ["a", "1", "2"]), ("foreach", ["b", "3", "4"]), ("cmd", ["1", "3"]), ("cmd", ["1", "4"]), ("endforeach", []), ("foreach", ["b", "3", "4"]), ("cmd", ["2", "3"]), ("cmd", ["2", "4"]), ("endforeach", []), ("endforeach", [])] ) self.assertEqual( self.parse_all('FOREACH(a 1 2) FOREACH(b 3 4) cmd(${a} ${b}) ENDFOREACH() ENDFOREACH()'), [("FOREACH", ["a", "1", "2"]), ("FOREACH", ["b", "3", "4"]), ("cmd", ["1", "3"]), ("cmd", ["1", "4"]), ("ENDFOREACH", []), ("FOREACH", ["b", "3", "4"]), ("cmd", ["2", "3"]), ("cmd", ["2", "4"]), ("ENDFOREACH", []), ("ENDFOREACH", [])] ) self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "foreach(arg)") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "foreach(arg RANGE bla) endforeach()") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "foreach(arg RANGE 1 5 2 0) endforeach()") self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, "foreach() endforeach()") def test_arguments(self): """Test CMake parser argument parsing""" self.assertEqual( self.parse_all("cmd(one two three)"), [("cmd", ["one", "two", "three"])] ) self.assertEqual( self.parse_all("cmd(one two;three)"), [("cmd", ["one", "two", "three"])] ) self.assertEqual( self.parse_all("cmd(one;two;three)"), [("cmd", ["one", "two", "three"])] ) self.assertEqual( self.parse_all("cmd(one;two three)"), [("cmd", ["one", "two", "three"])] ) self.assertEqual( self.parse_all('cmd("one;two" three)'), [("cmd", ["one;two", "three"])] ) self.assertEqual( self.parse_all('cmd("one;two";three)'), [("cmd", ["one;two", "three"])] ) self.assertEqual( self.parse_all('cmd(one;"two;three")'), [("cmd", ["one", "two;three"])] ) self.assertEqual( self.parse_all('if(NOT (A OR B)) endif()'), [("if", ["NOT", "(", "A", "OR", "B", ")"]), ("endif", [])] ) self.assertEqual( self.parse_all('cmd("(")'), [("cmd", ["("])] ) self.assertEqual( self.parse_all('cmd(")")'), [("cmd", [")"])] ) self.assertEqual( self.parse_all('cmd("\\"")'), [("cmd", ['"'])] ) self.assertEqual( self.parse_all('cmd(\\")'), [("cmd", ['"'])] ) self.assertEqual( self.parse_all('cmd(a\\ b)'), [("cmd", ['a b'])] ) self.assertEqual( self.parse_all("cmd(ENV{PATH})"), [("cmd", ["ENV{PATH}"])] ) self.assertRaises(cmake.CMakeSyntaxError, self.parse_all, 'cmd("unclosed string)') def test_substitution(self): """Test CMake parser variable substitution semantics""" self.assertEqual( self.parse_all("cmd(${args})", var={"args": "one;two;three"}), [("cmd", ["one", "two", "three"])] ) self.assertEqual( self.parse_all("cmd(${missing})"), [("cmd", [])] ) self.assertEqual( self.parse_all('cmd("${missing}")'), [("cmd", [""])] ) self.assertEqual( self.parse_all("${fun}()", var={"fun": "cmd"}), [("cmd", [])] ) self.assertEqual( self.parse_all("cmd(${args})", var={"args": "one two three"}), [("cmd", ["one two three"])] ) self.assertEqual( self.parse_all('cmd("${args}")', var={"args": "one;two;three"}), [("cmd", ["one;two;three"])] ) self.assertEqual( self.parse_all('cmd("\\${args}")', var={"args": "fail"}), [("cmd", ["${args}"])] ) self.assertEqual( self.parse_all('cmd(\\${args})', var={"args": "fail"}), [("cmd", ["${args}"])] ) self.assertEqual( self.parse_all('cmd(${args})', var={"args": "\\\\"}), [("cmd", ["\\\\"])] ) self.assertEqual( self.parse_all('cmd(${args})', var={"args": "${looks_like_a_variable}"}), [("cmd", ["${looks_like_a_variable}"])] ) self.assertEqual( self.parse_all('cmd(${args})', var={"args": ")"}), [("cmd", [")"])] ) self.assertEqual( self.parse_all('cmd(fun ${args})', var={"args": "stuff"}), [("cmd", ["fun", "stuff"])] ) self.assertEqual( self.parse_all("cmd($ENV{PATH})"), [("cmd", ["$ENV{PATH}"])] ) self.assertEqual( self.parse_all("cmd($env{test})", env_var={"test": "foo"}), [("cmd", ["$env{test}"])] ) self.assertEqual( self.parse_all("cmd($ENV{test})", env_var={"test": "foo"}), [("cmd", ["foo"])] ) self.assertEqual( self.parse_all("cmd($ENV{Test})", env_var={"test": "foo"}), [("cmd", ["$ENV{Test}"])] ) def test_pragma(self): """Test CMake parser catkin_lint pragmas""" self.assertEqual( self.parse_all("# catkin_lint: extra space\n#catkin_lint:\n#catkin_lint: \n#catkin_lint: one two three \n#catkin_lint :\n"), [("#catkin_lint", []), ("#catkin_lint", []), ("#catkin_lint", ["one", "two", "three"])] ) def test_skip_block(self): """Test CMaker parser skip block""" self.assertEqual( self.parse_all("""\ #catkin_lint: skip cmd() """), [("cmd", [])] ) self.assertEqual( self.parse_all("""\ if() endif() #catkin_lint: skip cmd() """), [("if", []), ("endif", []), ("cmd", [])] ) self.assertEqual( self.parse_all("""\ #catkin_lint: skip if(test) endif() """), [("if", ["test"]), ("endif", [])] ) self.assertEqual( self.parse_all("""\ if(condition) #catkin_lint: skip cmd() endif() """), [("if", ["condition"]), ("endif", [])] ) self.assertEqual( self.parse_all("""\ if(condition) #catkin_lint: skip cmd1() else() cmd2() endif() """), [("if", ["condition"]), ("else", []), ("cmd2", []), ("endif", [])] ) self.assertEqual( self.parse_all("""\ if(condition) cmd1() else() #catkin_lint: skip cmd2() endif() """), [("if", ["condition"]), ("cmd1", []), ("else", []), ("endif", [])] ) self.assertEqual( self.parse_all("""\ foreach(arg 1 2) cmd(${arg}) #catkin_lint: skip do_not_parse_this() endforeach() """), [("foreach", ["arg", "1", "2"]), ("cmd", ["1"]), ("cmd", ["2"]), ("endforeach", [])] ) self.assertEqual( self.parse_all("""\ macro(test) cmd() #catkin_lint: skip do_not_parse_this() endmacro() test() """), [("macro", ["test"]), ("endmacro", []), ("cmd", [])] ) self.assertEqual( self.parse_all("""\ if(first) #catkin_lint: skip if(second) endif(second) do_not_parse_this() endif() """), [("if", ["first"]), ("endif", [])] ) self.assertEqual( self.parse_all("""\ if(first) #catkin_lint: skip foreach(second 1 2) endforeach() do_not_parse_this() endif() """), [("if", ["first"]), ("endif", [])] ) self.assertEqual( self.parse_all("""\ macro(test) do_not_parse_this() endmacro() if(first) #catkin_lint: skip test() do_not_parse_this() endif() """), [("macro", ["test"]), ("endmacro", []), ("if", ["first"]), ("endif", [])] ) def test_comments(self): """Test CMake parser comment handling""" self.assertEqual( self.parse_all("""\ # initial comment cmd(one # first argument comment two # second argument comment three# third argument comment without space )## closing comment # commented-out command # cmd() """), [("cmd", ["one", "two", "three"])] ) def test_line_numbering(self): """Test CMake parser line numbering""" self.assertEqual( self.parse_all("""\ cmd1() cmd2( ) # Comment cmd3() """, location=1), [("cmd1", [], 1), ("cmd2", [], 2), ("cmd3", [], 5)] ) self.assertEqual( self.parse_all("cmd1()\rcmd2()\rcmd3()\r", location=1), [("cmd1", [], 1), ("cmd2", [], 2), ("cmd3", [], 3)] ) self.assertEqual( self.parse_all("cmd1()\ncmd2()\ncmd3()\n", location=1), [("cmd1", [], 1), ("cmd2", [], 2), ("cmd3", [], 3)] ) self.assertEqual( self.parse_all("cmd1()\r\ncmd2()\r\ncmd3()\r\n", location=1), [("cmd1", [], 1), ("cmd2", [], 2), ("cmd3", [], 3)] ) def test_line_columns(self): """Test CMake parser column numbering""" self.assertEqual( self.parse_all("cmd1()\n cmd2()\n cmd3()\n", location=2), [("cmd1", [], 1, 1), ("cmd2", [], 2, 2), ("cmd3", [], 3, 3)] ) def test_argparse(self): """Test CMake parser argparse utility function""" self.assertRaises(RuntimeError, cmake.argparse, [], {"TEST": "xxx"}) opts, args = cmake.argparse([], {}) self.assertEqual({}, opts) self.assertEqual([], args) opts, args = cmake.argparse([], {"TEST": "-"}) self.assertEqual({"TEST": False}, opts) self.assertEqual([], args) opts, args = cmake.argparse([], {"TEST": "?"}) self.assertEqual({"TEST": None}, opts) self.assertEqual([], args) self.assertRaises(cmake.CMakeSyntaxError, cmake.argparse, [], {"TEST": "!"}) opts, args = cmake.argparse([], {"TEST": "*"}) self.assertEqual({"TEST": []}, opts) self.assertEqual([], args) self.assertRaises(cmake.CMakeSyntaxError, cmake.argparse, [], {"TEST": "+"}) opts, args = cmake.argparse([], {"TEST": "p"}) self.assertEqual({"TEST": {}}, opts) self.assertEqual([], args) opts, args = cmake.argparse(["argument", "BOOL"], {"BOOL": "-"}) self.assertEqual({"BOOL": True}, opts) self.assertEqual(["argument"], args) opts, args = cmake.argparse(["argument", "KEY", "value"], {"KEY": "?"}) self.assertEqual({"KEY": "value"}, opts) self.assertEqual(["argument"], args) opts, args = cmake.argparse(["argument", "KEY", "value"], {"KEY": "!"}) self.assertEqual({"KEY": "value"}, opts) self.assertEqual(["argument"], args) opts, args = cmake.argparse(["argument", "LIST", "value1", "value2"], {"LIST": "*"}) self.assertEqual({"LIST": ["value1", "value2"]}, opts) self.assertEqual(["argument"], args) opts, args = cmake.argparse(["argument", "LIST", "value1", "value2"], {"LIST": "+"}) self.assertEqual({"LIST": ["value1", "value2"]}, opts) self.assertEqual(["argument"], args) opts, args = cmake.argparse(["argument", "PROPERTIES", "key1", "value1", "key2", "value2"], {"PROPERTIES": "p"}) self.assertEqual({"PROPERTIES": {"key1": "value1", "key2": "value2"}}, opts) self.assertEqual(["argument"], args) opts, args = cmake.argparse(["PROPERTIES", "key1", "value1", "key2"], {"PROPERTIES": "p"}) self.assertEqual({"PROPERTIES": {"key1": "value1", "key2": ""}}, opts) opts, args = cmake.argparse(["DOUBLE", "DOUBLE", "ARGUMENT", "ARGUMENT"], {"DOUBLE ARGUMENT": "?"}) self.assertEqual({"DOUBLE ARGUMENT": "ARGUMENT"}, opts) self.assertEqual(["DOUBLE"], args) opts, args = cmake.argparse(["BOOL", "argument"], {"BOOL": "-"}) self.assertEqual({"BOOL": True}, opts) self.assertEqual(["argument"], args) catkin_lint-1.6.6/test/test_indentation.py000066400000000000000000000156671362025056600207530ustar00rootroot00000000000000import unittest from .helper import create_env, create_manifest, mock_lint class IndentationTest(unittest.TestCase): def test_regular(self): """Test indentation check for regular command sequences""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ cmd1() cmd2() cmd3() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ cmd1() cmd2() cmd3() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) result = mock_lint(env, pkg, """ cmd1() cmd2() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) def test_macro(self): """Test indentation check for sequences with macro calls""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ macro(test) cmd2() endmacro() cmd1() test() cmd3() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ macro(test) if() cmd() endif() endmacro() cmd1() test() cmd3() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) result = mock_lint(env, pkg, """ macro(test2) cmd() endmacro() macro(test) if() cmd() test2() cmd() endif() endmacro() cmd1() test() cmd3() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ macro(test4) cmd() if() cmd() endif() endmacro() macro(test3) test4() endmacro() macro(test2) test3() if() if() if() cmd() test3() endif() endif() endif() endmacro() macro(test) test2() if() cmd() test2() else() foreach(a b c d e) test2() endforeach() endif() endmacro() cmd1() test() cmd3() """, checks=None, indentation=True) def test_if(self): """Test indentation check for if()/else()/endif() blocks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ cmd() if() cmd() cmd() else() cmd() cmd() endif() cmd() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ if() else() endif() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ if() if() endif() else() if() endif() endif() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ if() cmd() cmd() endif() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) result = mock_lint(env, pkg, """ if() cmd() cmd() endif() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) result = mock_lint(env, pkg, """ if() cmd() else() cmd() endif() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) result = mock_lint(env, pkg, """ if() cmd() else() cmd() endif() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) result = mock_lint(env, pkg, """ if() cmd() else() cmd() endif() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) def test_foreach(self): """Test indentation check for foreach()/endforeach() blocks""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ cmd() foreach(a 1) cmd() cmd() endforeach() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ foreach(a 1) cmd() cmd() endforeach() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) result = mock_lint(env, pkg, """ foreach(a 1) endforeach() """, checks=None, indentation=True) self.assertEqual([], result) result = mock_lint(env, pkg, """ foreach(a 1) cmd() endforeach() """, checks=None, indentation=True) self.assertEqual(["INDENTATION"], result) catkin_lint-1.6.6/test/test_linter.py000066400000000000000000000463401362025056600177240ustar00rootroot00000000000000import unittest import sys # noqa import os from catkin_lint.linter import CMakeLinter, LintInfo, PathConstants from .helper import create_env, create_manifest, mock_lint, patch, posix_and_nt import catkin_lint.checks.build as cc import catkin_lint.environment from catkin_lint.cmake import CMakeSyntaxError from catkin_pkg.package import Export class LinterTest(unittest.TestCase): def test_circular_depend(self): """Test circular dependencies in custom linter modules""" def a(linter): linter.require(b) def b(linter): linter.require(a) linter = CMakeLinter(create_env()) self.assertRaises(RuntimeError, linter.require, a) def test_lower_case(self): """Test check for lower-case command names""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ PROJECT(mock) find_package(catkin REQUIRED) catkin_package() """, checks=cc.all) self.assertEqual(["CMD_CASE"], result) def test_include(self): """Test edge cases for CMake include""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() include() find_file(FOO_INCLUDE foo.cmake) include(${FOO_INCLUDE}) """, checks=cc.all) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() include(../foo.cmake) """, checks=cc.all) self.assertEqual(["EXTERNAL_FILE"], result) def test_pragma(self): """Test #catkin_lint: pragma handling""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ #catkin_lint: ignore cmd_case PROJECT(mock) find_package(catkin REQUIRED) CATKIN_PACKAGE() """, checks=cc.all) self.assertEqual([], result) result = mock_lint(env, pkg, """ #catkin_lint: ignore cmd_case #catkin_lint: report cmd_case PROJECT(mock) find_package(catkin REQUIRED) CATKIN_PACKAGE() """, checks=cc.all) self.assertEqual(["CMD_CASE", "CMD_CASE"], result) result = mock_lint(env, pkg, """ #catkin_lint: ignore_once cmd_case PROJECT(mock) find_package(catkin REQUIRED) CATKIN_PACKAGE() """, checks=cc.all) self.assertEqual(["CMD_CASE"], result) result = mock_lint(env, pkg, """ #catkin_lint: ignore_once cmd_case project(mock) find_package(catkin REQUIRED) CATKIN_PACKAGE() """, checks=cc.all) self.assertEqual(["CMD_CASE"], result) def test_argparse_error(self): """Test invalid CMake command arguments""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_executable(${PROJECT_NAME} IMPORTED) set_target_properties(${PROJECT_NAME} PROPERTIES VERSION "${empty_var}") """, checks=cc.all) self.assertEqual([], result) def test_if(self): """Test if()/else()/endif() block handling""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if ("${var}" STREQUAL "foo") endif() if (EXISTS "filename") endif() """, checks=cc.all) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if (${var} STREQUAL "foo") endif() """, checks=cc.all) self.assertEqual(["UNQUOTED_STRING_OP"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if ("foo" STREQUAL ${var}) endif() """, checks=cc.all) self.assertEqual(["UNQUOTED_STRING_OP"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if (var STREQUAL foo) endif() """, checks=cc.all) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if (EXISTS filename) endif() """, checks=cc.all) self.assertEqual(["UNQUOTED_STRING_OP"], result) self.assertRaises(CMakeSyntaxError, mock_lint, env, pkg, "else()") self.assertRaises(CMakeSyntaxError, mock_lint, env, pkg, "endif()") self.assertRaises(CMakeSyntaxError, mock_lint, env, pkg, "if(STREQUAL) endif()") self.assertRaises(CMakeSyntaxError, mock_lint, env, pkg, "if(A STREQUAL) endif()") self.assertRaises(CMakeSyntaxError, mock_lint, env, pkg, "if(STREQUAL A) endif()") self.assertRaises(CMakeSyntaxError, mock_lint, env, pkg, "if(EXISTS) endif()") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if (varname) endif() """, checks=cc.all) self.assertEqual([], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if (${varname}) endif() """, checks=cc.all) self.assertEqual(["AMBIGUOUS_CONDITION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if ("${varname}") endif() """, checks=cc.all) self.assertEqual(["AMBIGUOUS_CONDITION"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() if ("${varname}${othervarname}") endif() """, checks=cc.all) self.assertEqual([], result) @posix_and_nt def test_package_path(self): """Test package path resolver""" env = create_env() info = LintInfo(env) info.var = { "CMAKE_CURRENT_SOURCE_DIR": PathConstants.PACKAGE_SOURCE, } self.assertEqual(info.source_relative_path("filename"), "filename") self.assertEqual(info.source_relative_path("subdir/filename"), "subdir/filename") self.assertEqual(info.source_relative_path("subdir/../filename"), "filename") self.assertEqual(info.source_relative_path("/filename"), "/filename") self.assertEqual(info.source_relative_path("../../../../filename"), "/filename") self.assertEqual(info.source_relative_path("../../../../subdir/filename"), "/subdir/filename") info.var = { "CMAKE_CURRENT_SOURCE_DIR": "%s/subdir" % PathConstants.PACKAGE_SOURCE, } self.assertEqual(info.source_relative_path("filename"), "subdir/filename") self.assertEqual(info.source_relative_path("../filename"), "filename") pkg = create_manifest("mock") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() """, checks=cc.all, package_path="/package-path/other") self.assertEqual(["PACKAGE_PATH_NAME"], result) def test_list(self): """Test CMake list handling""" env = create_env() linter = CMakeLinter(env) info = LintInfo(env) linter._handle_list(info, ["APPEND", "test", "one"]) self.assertEqual(info.var["test"], "one") linter._handle_list(info, ["APPEND", "test", "three"]) self.assertEqual(info.var["test"], "one;three") linter._handle_list(info, ["INSERT", "test", "1", "two"]) self.assertEqual(info.var["test"], "one;two;three") linter._handle_list(info, ["GET", "test", "1", "result"]) self.assertEqual(info.var["result"], "two") linter._handle_list(info, ["GET", "test", "42", "result"]) self.assertEqual(info.var["result"], "") linter._handle_list(info, ["FIND", "test", "none", "result"]) self.assertEqual(info.var["result"], "-1") linter._handle_list(info, ["FIND", "test", "two", "result"]) self.assertEqual(info.var["result"], "1") linter._handle_list(info, ["PREPEND", "test", "zero"]) self.assertEqual(info.var["test"], "zero;one;two;three") linter._handle_list(info, ["POP_FRONT", "test"]) self.assertEqual(info.var["test"], "one;two;three") linter._handle_list(info, ["POP_BACK", "test"]) self.assertEqual(info.var["test"], "one;two") info.var["test"] = "one;two;three;four;five" linter._handle_list(info, ["POP_FRONT", "test", "v1", "v2"]) self.assertEqual(info.var["test"], "three;four;five") self.assertEqual(info.var["v1"], "one") self.assertEqual(info.var["v2"], "two") linter._handle_list(info, ["POP_BACK", "test", "v1", "v2"]) self.assertEqual(info.var["test"], "three") self.assertEqual(info.var["v1"], "five") self.assertEqual(info.var["v2"], "four") info.var["test"] = "one;two;three;one;four;five" linter._handle_list(info, ["REMOVE_DUPLICATES", "test"]) self.assertEqual(info.var["test"], "one;two;three;four;five") linter._handle_list(info, ["JOIN", "test", "+", "result"]) self.assertEqual(info.var["result"], "one+two+three+four+five") linter._handle_list(info, ["SUBLIST", "test", "2", "2", "result"]) self.assertEqual(info.var["result"], "three;four") linter._handle_list(info, ["SUBLIST", "test", "-2", "3", "result"]) self.assertEqual(info.var["result"], "four;five") linter._handle_list(info, ["SUBLIST", "test", "0", "-1", "result"]) self.assertEqual(info.var["result"], "one;two;three;four;five") linter._handle_list(info, ["REMOVE_AT", "test", "15", "0", "4", "2"]) self.assertEqual(info.var["test"], "two;four") linter._handle_list(info, ["APPEND", "test", "two"]) linter._handle_list(info, ["REMOVE_ITEM", "test", "two"]) self.assertEqual(info.var["test"], "four") info.var["test"] = "1;3;2;6;5;4" linter._handle_list(info, ["SORT", "test"]) self.assertEqual(info.var["test"], "1;2;3;4;5;6") linter._handle_list(info, ["REVERSE", "test"]) self.assertEqual(info.var["test"], "6;5;4;3;2;1") info.var["test"] = "one;two;three" linter._handle_list(info, ["UNKNOWN", "test"]) self.assertEqual(info.var["test"], "one;two;three") linter._handle_list(info, []) self.assertEqual(info.var["test"], "one;two;three") def test_env_var(self): """Test environment variable handling""" env = create_env() pkg = create_manifest("catkin") result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() set(bla $ENV{PATH}) """, checks=cc.all) self.assertEqual(["ENV_VAR"], result) @posix_and_nt @patch("os.path.isfile", lambda x: x == os.path.normpath("/package-path/catkin/broken.cmake")) def test_blacklist(self): """Test CMake inclusion blacklist""" env = create_env() pkg = create_manifest("catkin") result = mock_lint(env, pkg, { "/package-path/catkin/CMakeLists.txt": "project(catkin) include(broken.cmake RESULT_VARIABLE gone) catkin_package()", "/package-path/catkin/broken.cmake": "xxxxxx syntax error xxxxx" }, checks=cc.all ) self.assertEqual([], result) @posix_and_nt @patch("os.path.isdir", lambda x: x == "/" or x == "\\") @patch("os.path.realpath", lambda x: x) def test_environment(self): """Test catkin environment""" env = catkin_lint.environment.CatkinEnvironment(use_rosdep=False) mock_packages = {} mock_packages[os.path.normpath("/mock_catkin")] = create_manifest("mock_catkin") mock_packages[os.path.normpath("/mock_other")] = create_manifest("mock_other") mock_packages[os.path.normpath("/mock_other")].exports += [Export("random_tag"), Export("build_type", "cmake")] with patch("catkin_lint.environment.find_packages", lambda x, use_cache: mock_packages): result = env.add_path(os.path.normpath("/")) self.assertEqual(1, len(result)) self.assertTrue(env.is_catkin_pkg("mock_catkin")) self.assertFalse(env.is_catkin_pkg("mock_other")) result = env.add_path(os.path.normpath("/")) self.assertEqual(1, len(result)) self.assertTrue(env.is_catkin_pkg("mock_catkin")) self.assertFalse(env.is_catkin_pkg("mock_other")) result = env.add_path(os.path.normpath("/missing")) self.assertEqual([], result) self.assertFalse(env.is_catkin_pkg("invalid")) def raiseError(): raise RuntimeError() with open(os.devnull, "w") as devnull: with patch("catkin_lint.environment.get_rosdep", raiseError): with patch("sys.stderr", devnull): env = catkin_lint.environment.CatkinEnvironment() self.assertFalse(env.ok) self.assertFalse(catkin_lint.environment.is_catkin_package(None)) @posix_and_nt @patch("os.path.isdir", lambda x: x in [os.path.normpath(p) for p in ["/package-path/mock/src", "/package-path/mock/src/2ndlevel", "/package-path/mock/include"]]) @patch("os.path.isfile", lambda x: x in [os.path.normpath(p) for p in ["/other-path/CMakeLists.txt", "/package-path/mock/src/CMakeLists.txt", "/package-path/mock/src/2ndlevel/CMakeLists.txt", "/package-path/mock/src/source.cpp", "/package-path/mock/src/2ndlevel/source2.cpp"]]) def test_subdir(self): """Test add_subdirectory()""" env = create_env() pkg = create_manifest("mock") result = mock_lint(env, pkg, { "/package-path/mock/CMakeLists.txt": "project(mock) add_subdirectory(src)", "/package-path/mock/src/CMakeLists.txt": """ include_directories(../include) find_package(catkin REQUIRED) catkin_package() add_executable(${PROJECT_NAME}_test source.cpp) install(DIRECTORY ../include DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}) """ }, checks=cc.all ) self.assertEqual([], result) result = mock_lint(env, pkg, { "/package-path/mock/CMakeLists.txt": "project(mock) add_subdirectory(src)", "/package-path/mock/src/CMakeLists.txt": "add_subdirectory(2ndlevel)", "/package-path/mock/src/2ndlevel/CMakeLists.txt": """\ find_package(catkin REQUIRED) catkin_package() add_executable(${PROJECT_NAME}_test source2.cpp) """ }, checks=cc.all ) self.assertEqual([], result) result = mock_lint(env, pkg, { "/package-path/mock/CMakeLists.txt": "project(mock) add_subdirectory(src)", "/package-path/mock/src/CMakeLists.txt": """ include_directories(../include) find_package(catkin REQUIRED) catkin_package() add_executable(${PROJECT_NAME}_test source.cpp) add_subdirectory(../src) """ }, checks=cc.all ) self.assertEqual(["DUPLICATE_SUBDIR"], result) result = mock_lint(env, pkg, { "/package-path/mock/CMakeLists.txt": "project(mock) add_subdirectory(/other-path)", "/other-path/CMakeLists.txt": """ find_package(catkin REQUIRED) catkin_package() """ }, checks=cc.all ) self.assertEqual(["EXTERNAL_SUBDIR"], result) result = mock_lint(env, pkg, """ project(mock) find_package(catkin REQUIRED) catkin_package() add_subdirectory(missing_subdir) """, checks=cc.all ) self.assertEqual(["MISSING_SUBDIR"], result) result = mock_lint(env, pkg, { "/package-path/mock/CMakeLists.txt": """ project(mock) find_package(catkin REQUIRED) catkin_package() add_subdirectory(src) """, "/package-path/mock/src/CMakeLists.txt": """ project(submock) """ }, checks=cc.all ) self.assertEqual(["SUBPROJECT"], result) var = mock_lint(env, pkg, { "/package-path/mock/CMakeLists.txt": """ project(mock) set(foo "toplevel") add_subdirectory(src) """, "/package-path/mock/src/CMakeLists.txt": """ set(foo "subdir") find_file(bar bar.txt) """ }, checks=None, return_var=True ) self.assertEqual("toplevel", var["foo"]) self.assertFalse("bar" in var) var = mock_lint(env, pkg, { "/package-path/mock/CMakeLists.txt": """ project(mock) set(foo "toplevel") add_subdirectory(src) """, "/package-path/mock/src/CMakeLists.txt": """ set(foo "subdir" PARENT_SCOPE) """ }, checks=None, return_var=True ) self.assertEqual("subdir", var["foo"]) catkin_lint-1.6.6/test/test_output.py000066400000000000000000000122611362025056600177620ustar00rootroot00000000000000import unittest from catkin_lint.linter import Message, ERROR, WARNING, NOTICE import catkin_lint.output as o from catkin_lint import __version__ as catkin_lint_version try: import StringIO as io except ImportError: import io class OutputTest(unittest.TestCase): _demo_msgs = [ Message(package="mock", file_name="mock.cmake", line=1, level=ERROR, msg_id="MOCK_MSG", text="short text", description="long text"), Message(package="mock", file_name="mock.cmake", line=2, level=WARNING, msg_id="MOCK_MSG", text="short text", description="long text"), Message(package="mock", file_name="mock.cmake", line=3, level=NOTICE, msg_id="MOCK_MSG", text="short text", description="long text"), Message(package="mock", file_name="", line=0, level=ERROR, msg_id="MOCK_MSG", text="short text", description="long text"), Message(package="mock", file_name="mock.cmake", line=0, level=ERROR, msg_id="MOCK_MSG", text="short text", description="long text"), ] def _do_output(self, formatter, msgs): output = io.StringIO() formatter.prolog(fd=output) for msg in msgs: formatter.message(msg, fd=output) formatter.epilog(fd=output) return output.getvalue() def test_text(self): """Test output format for catkin_lint text output""" result = self._do_output(o.TextOutput(o.Color.Never), self._demo_msgs) self.assertEqual(result, "mock: mock.cmake(1): error: short text\n" "mock: mock.cmake(2): warning: short text\n" "mock: mock.cmake(3): notice: short text\n" "mock: error: short text\n" "mock: mock.cmake: error: short text\n" ) def test_explained_text(self): """Test output format for catkin_lint text output with explanations""" result = self._do_output(o.ExplainedTextOutput(o.Color.Never), self._demo_msgs) self.assertEqual(result, "mock: mock.cmake(1): error: short text\n" " * long text\n" " * You can ignore this problem with --ignore mock_msg\n" "mock: mock.cmake(2): warning: short text\n" "mock: mock.cmake(3): notice: short text\n" "mock: error: short text\n" "mock: mock.cmake: error: short text\n" ) def test_json(self): """Test output format for catkin_lint JSON output""" result = self._do_output(o.JsonOutput(), self._demo_msgs) self.assertEqual(result, '{"errors": [' '{"id": "MOCK_MSG", "location": {"file": "mock.cmake", "line": 1, "package": "mock"}, "text": "short text"}, ' '{"id": "MOCK_MSG", "location": {"package": "mock"}, "text": "short text"}, ' '{"id": "MOCK_MSG", "location": {"file": "mock.cmake", "package": "mock"}, "text": "short text"}' '], "notices": [' '{"id": "MOCK_MSG", "location": {"file": "mock.cmake", "line": 3, "package": "mock"}, "text": "short text"}' '], "version": "%(version)s", "warnings": [' '{"id": "MOCK_MSG", "location": {"file": "mock.cmake", "line": 2, "package": "mock"}, "text": "short text"}' ']}\n' % {"version": catkin_lint_version} ) def test_xml(self): """Test output format for catkin_lint XML output""" result = self._do_output(o.XmlOutput(), self._demo_msgs) self.assertEqual(result, '' '' 'mockmock.cmake1' 'MOCK_MSGshort text' '' '' 'mockmock.cmake2' 'MOCK_MSGshort text' '' '' 'mockmock.cmake3' 'MOCK_MSGshort text' '' '' 'mock' 'MOCK_MSGshort text' '' '' 'mockmock.cmake' 'MOCK_MSGshort text' '' '\n' % {"version": catkin_lint_version} ) catkin_lint-1.6.6/test/test_util.py000066400000000000000000000037401362025056600174010ustar00rootroot00000000000000import unittest from .helper import patch import catkin_lint.util as util import tempfile import shutil import os def force_fail(*args, **kwargs): raise OSError("Mock fail") class UtilTest(unittest.TestCase): def test_word_split(self): """Test word_split() utility function""" result = util.word_split("CamelCase") self.assertEqual(["camel", "case"], result) result = util.word_split("HTTPConnector") self.assertEqual(["http", "connector"], result) result = util.word_split("c_style_identifier") self.assertEqual(["c", "style", "identifier"], result) result = util.word_split("OpenSSL") self.assertEqual(["open", "ssl"], result) result = util.word_split("OGRE") self.assertEqual(["ogre"], result) result = util.word_split("getPS2Port") self.assertEqual(["get", "ps2", "port"], result) result = util.word_split("2BeOrNot2b") self.assertEqual(["2", "be", "or", "not2b"], result) result = util.word_split("C-3PO") self.assertEqual(["c", "3", "po"], result) result = util.word_split("c-3po") self.assertEqual(["c", "3po"], result) def test_is_sorted(self): """Test is_sorted() utility function""" self.assertTrue(util.is_sorted(["a", "b", "c", "d"])) self.assertFalse(util.is_sorted(["b", "a", "c", "d"])) self.assertFalse(util.is_sorted(["a", "c", "b", "d"])) self.assertFalse(util.is_sorted(["a", "b", "d", "c"])) def test_write_atomic(self): """Test write_atomic() utility function""" tmpdir = tempfile.mkdtemp() try: with patch("os.unlink", force_fail): with patch("os.rename", force_fail): self.assertRaises(OSError, util.write_atomic, os.path.join(tmpdir, "test"), b"test") self.assertFalse(os.path.exists(os.path.join(tmpdir, "test"))) finally: shutil.rmtree(tmpdir, ignore_errors=True) catkin_lint-1.6.6/versioneer.py000066400000000000000000002052041362025056600165660ustar00rootroot00000000000000 # Version: 0.18 """The Versioneer - like a rocketeer, but for versions. The Versioneer ============== * like a rocketeer, but for versions! * https://github.com/warner/python-versioneer * Brian Warner * License: Public Domain * Compatible With: python2.6, 2.7, 3.2, 3.3, 3.4, 3.5, 3.6, and pypy * [![Latest Version] (https://pypip.in/version/versioneer/badge.svg?style=flat) ](https://pypi.python.org/pypi/versioneer/) * [![Build Status] (https://travis-ci.org/warner/python-versioneer.png?branch=master) ](https://travis-ci.org/warner/python-versioneer) This is a tool for managing a recorded version number in distutils-based python projects. The goal is to remove the tedious and error-prone "update the embedded version string" step from your release process. Making a new release should be as easy as recording a new tag in your version-control system, and maybe making new tarballs. ## Quick Install * `pip install versioneer` to somewhere to your $PATH * add a `[versioneer]` section to your setup.cfg (see below) * run `versioneer install` in your source tree, commit the results ## Version Identifiers Source trees come from a variety of places: * a version-control system checkout (mostly used by developers) * a nightly tarball, produced by build automation * a snapshot tarball, produced by a web-based VCS browser, like github's "tarball from tag" feature * a release tarball, produced by "setup.py sdist", distributed through PyPI Within each source tree, the version identifier (either a string or a number, this tool is format-agnostic) can come from a variety of places: * ask the VCS tool itself, e.g. "git describe" (for checkouts), which knows about recent "tags" and an absolute revision-id * the name of the directory into which the tarball was unpacked * an expanded VCS keyword ($Id$, etc) * a `_version.py` created by some earlier build step For released software, the version identifier is closely related to a VCS tag. Some projects use tag names that include more than just the version string (e.g. "myproject-1.2" instead of just "1.2"), in which case the tool needs to strip the tag prefix to extract the version identifier. For unreleased software (between tags), the version identifier should provide enough information to help developers recreate the same tree, while also giving them an idea of roughly how old the tree is (after version 1.2, before version 1.3). Many VCS systems can report a description that captures this, for example `git describe --tags --dirty --always` reports things like "0.7-1-g574ab98-dirty" to indicate that the checkout is one revision past the 0.7 tag, has a unique revision id of "574ab98", and is "dirty" (it has uncommitted changes. The version identifier is used for multiple purposes: * to allow the module to self-identify its version: `myproject.__version__` * to choose a name and prefix for a 'setup.py sdist' tarball ## Theory of Operation Versioneer works by adding a special `_version.py` file into your source tree, where your `__init__.py` can import it. This `_version.py` knows how to dynamically ask the VCS tool for version information at import time. `_version.py` also contains `$Revision$` markers, and the installation process marks `_version.py` to have this marker rewritten with a tag name during the `git archive` command. As a result, generated tarballs will contain enough information to get the proper version. To allow `setup.py` to compute a version too, a `versioneer.py` is added to the top level of your source tree, next to `setup.py` and the `setup.cfg` that configures it. This overrides several distutils/setuptools commands to compute the version when invoked, and changes `setup.py build` and `setup.py sdist` to replace `_version.py` with a small static file that contains just the generated version data. ## Installation See [INSTALL.md](./INSTALL.md) for detailed installation instructions. ## Version-String Flavors Code which uses Versioneer can learn about its version string at runtime by importing `_version` from your main `__init__.py` file and running the `get_versions()` function. From the "outside" (e.g. in `setup.py`), you can import the top-level `versioneer.py` and run `get_versions()`. Both functions return a dictionary with different flavors of version information: * `['version']`: A condensed version string, rendered using the selected style. This is the most commonly used value for the project's version string. The default "pep440" style yields strings like `0.11`, `0.11+2.g1076c97`, or `0.11+2.g1076c97.dirty`. See the "Styles" section below for alternative styles. * `['full-revisionid']`: detailed revision identifier. For Git, this is the full SHA1 commit id, e.g. "1076c978a8d3cfc70f408fe5974aa6c092c949ac". * `['date']`: Date and time of the latest `HEAD` commit. For Git, it is the commit date in ISO 8601 format. This will be None if the date is not available. * `['dirty']`: a boolean, True if the tree has uncommitted changes. Note that this is only accurate if run in a VCS checkout, otherwise it is likely to be False or None * `['error']`: if the version string could not be computed, this will be set to a string describing the problem, otherwise it will be None. It may be useful to throw an exception in setup.py if this is set, to avoid e.g. creating tarballs with a version string of "unknown". Some variants are more useful than others. Including `full-revisionid` in a bug report should allow developers to reconstruct the exact code being tested (or indicate the presence of local changes that should be shared with the developers). `version` is suitable for display in an "about" box or a CLI `--version` output: it can be easily compared against release notes and lists of bugs fixed in various releases. The installer adds the following text to your `__init__.py` to place a basic version in `YOURPROJECT.__version__`: from ._version import get_versions __version__ = get_versions()['version'] del get_versions ## Styles The setup.cfg `style=` configuration controls how the VCS information is rendered into a version string. The default style, "pep440", produces a PEP440-compliant string, equal to the un-prefixed tag name for actual releases, and containing an additional "local version" section with more detail for in-between builds. For Git, this is TAG[+DISTANCE.gHEX[.dirty]] , using information from `git describe --tags --dirty --always`. For example "0.11+2.g1076c97.dirty" indicates that the tree is like the "1076c97" commit but has uncommitted changes (".dirty"), and that this commit is two revisions ("+2") beyond the "0.11" tag. For released software (exactly equal to a known tag), the identifier will only contain the stripped tag, e.g. "0.11". Other styles are available. See [details.md](details.md) in the Versioneer source tree for descriptions. ## Debugging Versioneer tries to avoid fatal errors: if something goes wrong, it will tend to return a version of "0+unknown". To investigate the problem, run `setup.py version`, which will run the version-lookup code in a verbose mode, and will display the full contents of `get_versions()` (including the `error` string, which may help identify what went wrong). ## Known Limitations Some situations are known to cause problems for Versioneer. This details the most significant ones. More can be found on Github [issues page](https://github.com/warner/python-versioneer/issues). ### Subprojects Versioneer has limited support for source trees in which `setup.py` is not in the root directory (e.g. `setup.py` and `.git/` are *not* siblings). The are two common reasons why `setup.py` might not be in the root: * Source trees which contain multiple subprojects, such as [Buildbot](https://github.com/buildbot/buildbot), which contains both "master" and "slave" subprojects, each with their own `setup.py`, `setup.cfg`, and `tox.ini`. Projects like these produce multiple PyPI distributions (and upload multiple independently-installable tarballs). * Source trees whose main purpose is to contain a C library, but which also provide bindings to Python (and perhaps other langauges) in subdirectories. Versioneer will look for `.git` in parent directories, and most operations should get the right version string. However `pip` and `setuptools` have bugs and implementation details which frequently cause `pip install .` from a subproject directory to fail to find a correct version string (so it usually defaults to `0+unknown`). `pip install --editable .` should work correctly. `setup.py install` might work too. Pip-8.1.1 is known to have this problem, but hopefully it will get fixed in some later version. [Bug #38](https://github.com/warner/python-versioneer/issues/38) is tracking this issue. The discussion in [PR #61](https://github.com/warner/python-versioneer/pull/61) describes the issue from the Versioneer side in more detail. [pip PR#3176](https://github.com/pypa/pip/pull/3176) and [pip PR#3615](https://github.com/pypa/pip/pull/3615) contain work to improve pip to let Versioneer work correctly. Versioneer-0.16 and earlier only looked for a `.git` directory next to the `setup.cfg`, so subprojects were completely unsupported with those releases. ### Editable installs with setuptools <= 18.5 `setup.py develop` and `pip install --editable .` allow you to install a project into a virtualenv once, then continue editing the source code (and test) without re-installing after every change. "Entry-point scripts" (`setup(entry_points={"console_scripts": ..})`) are a convenient way to specify executable scripts that should be installed along with the python package. These both work as expected when using modern setuptools. When using setuptools-18.5 or earlier, however, certain operations will cause `pkg_resources.DistributionNotFound` errors when running the entrypoint script, which must be resolved by re-installing the package. This happens when the install happens with one version, then the egg_info data is regenerated while a different version is checked out. Many setup.py commands cause egg_info to be rebuilt (including `sdist`, `wheel`, and installing into a different virtualenv), so this can be surprising. [Bug #83](https://github.com/warner/python-versioneer/issues/83) describes this one, but upgrading to a newer version of setuptools should probably resolve it. ### Unicode version strings While Versioneer works (and is continually tested) with both Python 2 and Python 3, it is not entirely consistent with bytes-vs-unicode distinctions. Newer releases probably generate unicode version strings on py2. It's not clear that this is wrong, but it may be surprising for applications when then write these strings to a network connection or include them in bytes-oriented APIs like cryptographic checksums. [Bug #71](https://github.com/warner/python-versioneer/issues/71) investigates this question. ## Updating Versioneer To upgrade your project to a new release of Versioneer, do the following: * install the new Versioneer (`pip install -U versioneer` or equivalent) * edit `setup.cfg`, if necessary, to include any new configuration settings indicated by the release notes. See [UPGRADING](./UPGRADING.md) for details. * re-run `versioneer install` in your source tree, to replace `SRC/_version.py` * commit any changed files ## Future Directions This tool is designed to make it easily extended to other version-control systems: all VCS-specific components are in separate directories like src/git/ . The top-level `versioneer.py` script is assembled from these components by running make-versioneer.py . In the future, make-versioneer.py will take a VCS name as an argument, and will construct a version of `versioneer.py` that is specific to the given VCS. It might also take the configuration arguments that are currently provided manually during installation by editing setup.py . Alternatively, it might go the other direction and include code from all supported VCS systems, reducing the number of intermediate scripts. ## License To make Versioneer easier to embed, all its code is dedicated to the public domain. The `_version.py` that it creates is also in the public domain. Specifically, both are released under the Creative Commons "Public Domain Dedication" license (CC0-1.0), as described in https://creativecommons.org/publicdomain/zero/1.0/ . """ from __future__ import print_function try: import configparser except ImportError: import ConfigParser as configparser import errno import os import re import subprocess import sys class VersioneerConfig: """Container for Versioneer configuration parameters.""" def get_root(): """Get the project root directory. We require that all commands are run from the project root, i.e. the directory that contains setup.py, setup.cfg, and versioneer.py . """ root = os.path.realpath(os.path.abspath(os.getcwd())) setup_py = os.path.join(root, "setup.py") versioneer_py = os.path.join(root, "versioneer.py") if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): # allow 'python path/to/setup.py COMMAND' root = os.path.dirname(os.path.realpath(os.path.abspath(sys.argv[0]))) setup_py = os.path.join(root, "setup.py") versioneer_py = os.path.join(root, "versioneer.py") if not (os.path.exists(setup_py) or os.path.exists(versioneer_py)): err = ("Versioneer was unable to run the project root directory. " "Versioneer requires setup.py to be executed from " "its immediate directory (like 'python setup.py COMMAND'), " "or in a way that lets it use sys.argv[0] to find the root " "(like 'python path/to/setup.py COMMAND').") raise VersioneerBadRootError(err) try: # Certain runtime workflows (setup.py install/develop in a setuptools # tree) execute all dependencies in a single python process, so # "versioneer" may be imported multiple times, and python's shared # module-import table will cache the first one. So we can't use # os.path.dirname(__file__), as that will find whichever # versioneer.py was first imported, even in later projects. me = os.path.realpath(os.path.abspath(__file__)) me_dir = os.path.normcase(os.path.splitext(me)[0]) vsr_dir = os.path.normcase(os.path.splitext(versioneer_py)[0]) if me_dir != vsr_dir: print("Warning: build in %s is using versioneer.py from %s" % (os.path.dirname(me), versioneer_py)) except NameError: pass return root def get_config_from_root(root): """Read the project setup.cfg file to determine Versioneer config.""" # This might raise EnvironmentError (if setup.cfg is missing), or # configparser.NoSectionError (if it lacks a [versioneer] section), or # configparser.NoOptionError (if it lacks "VCS="). See the docstring at # the top of versioneer.py for instructions on writing your setup.cfg . setup_cfg = os.path.join(root, "setup.cfg") parser = configparser.SafeConfigParser() with open(setup_cfg, "r") as f: parser.readfp(f) VCS = parser.get("versioneer", "VCS") # mandatory def get(parser, name): if parser.has_option("versioneer", name): return parser.get("versioneer", name) return None cfg = VersioneerConfig() cfg.VCS = VCS cfg.style = get(parser, "style") or "" cfg.versionfile_source = get(parser, "versionfile_source") cfg.versionfile_build = get(parser, "versionfile_build") cfg.tag_prefix = get(parser, "tag_prefix") if cfg.tag_prefix in ("''", '""'): cfg.tag_prefix = "" cfg.parentdir_prefix = get(parser, "parentdir_prefix") cfg.verbose = get(parser, "verbose") return cfg class NotThisMethod(Exception): """Exception raised if a method is not valid for the current scenario.""" # these dictionaries contain VCS-specific tools LONG_VERSION_PY = {} HANDLERS = {} def register_vcs_handler(vcs, method): # decorator """Decorator to mark a method as the handler for a particular VCS.""" def decorate(f): """Store f in HANDLERS[vcs][method].""" if vcs not in HANDLERS: HANDLERS[vcs] = {} HANDLERS[vcs][method] = f return f return decorate def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, env=None): """Call the given command(s).""" assert isinstance(commands, list) p = None for c in commands: try: dispcmd = str([c] + args) # remember shell=False, so use git.cmd on windows, not just git p = subprocess.Popen([c] + args, cwd=cwd, env=env, stdout=subprocess.PIPE, stderr=(subprocess.PIPE if hide_stderr else None)) break except EnvironmentError: e = sys.exc_info()[1] if e.errno == errno.ENOENT: continue if verbose: print("unable to run %s" % dispcmd) print(e) return None, None else: if verbose: print("unable to find command, tried %s" % (commands,)) return None, None stdout = p.communicate()[0].strip() if sys.version_info[0] >= 3: stdout = stdout.decode() if p.returncode != 0: if verbose: print("unable to run %s (error)" % dispcmd) print("stdout was %s" % stdout) return None, p.returncode return stdout, p.returncode LONG_VERSION_PY['git'] = ''' # This file helps to compute a version number in source trees obtained from # git-archive tarball (such as those provided by githubs download-from-tag # feature). Distribution tarballs (built by setup.py sdist) and build # directories (produced by setup.py build) will contain a much shorter file # that just contains the computed version number. # This file is released into the public domain. Generated by # versioneer-0.18 (https://github.com/warner/python-versioneer) """Git implementation of _version.py.""" import errno import os import re import subprocess import sys def get_keywords(): """Get the keywords needed to look up the version information.""" # these strings will be replaced by git during git-archive. # setup.py/versioneer.py will grep for the variable names, so they must # each be defined on a line of their own. _version.py will just call # get_keywords(). git_refnames = "%(DOLLAR)sFormat:%%d%(DOLLAR)s" git_full = "%(DOLLAR)sFormat:%%H%(DOLLAR)s" git_date = "%(DOLLAR)sFormat:%%ci%(DOLLAR)s" keywords = {"refnames": git_refnames, "full": git_full, "date": git_date} return keywords class VersioneerConfig: """Container for Versioneer configuration parameters.""" def get_config(): """Create, populate and return the VersioneerConfig() object.""" # these strings are filled in when 'setup.py versioneer' creates # _version.py cfg = VersioneerConfig() cfg.VCS = "git" cfg.style = "%(STYLE)s" cfg.tag_prefix = "%(TAG_PREFIX)s" cfg.parentdir_prefix = "%(PARENTDIR_PREFIX)s" cfg.versionfile_source = "%(VERSIONFILE_SOURCE)s" cfg.verbose = False return cfg class NotThisMethod(Exception): """Exception raised if a method is not valid for the current scenario.""" LONG_VERSION_PY = {} HANDLERS = {} def register_vcs_handler(vcs, method): # decorator """Decorator to mark a method as the handler for a particular VCS.""" def decorate(f): """Store f in HANDLERS[vcs][method].""" if vcs not in HANDLERS: HANDLERS[vcs] = {} HANDLERS[vcs][method] = f return f return decorate def run_command(commands, args, cwd=None, verbose=False, hide_stderr=False, env=None): """Call the given command(s).""" assert isinstance(commands, list) p = None for c in commands: try: dispcmd = str([c] + args) # remember shell=False, so use git.cmd on windows, not just git p = subprocess.Popen([c] + args, cwd=cwd, env=env, stdout=subprocess.PIPE, stderr=(subprocess.PIPE if hide_stderr else None)) break except EnvironmentError: e = sys.exc_info()[1] if e.errno == errno.ENOENT: continue if verbose: print("unable to run %%s" %% dispcmd) print(e) return None, None else: if verbose: print("unable to find command, tried %%s" %% (commands,)) return None, None stdout = p.communicate()[0].strip() if sys.version_info[0] >= 3: stdout = stdout.decode() if p.returncode != 0: if verbose: print("unable to run %%s (error)" %% dispcmd) print("stdout was %%s" %% stdout) return None, p.returncode return stdout, p.returncode def versions_from_parentdir(parentdir_prefix, root, verbose): """Try to determine the version from the parent directory name. Source tarballs conventionally unpack into a directory that includes both the project name and a version string. We will also support searching up two directory levels for an appropriately named parent directory """ rootdirs = [] for i in range(3): dirname = os.path.basename(root) if dirname.startswith(parentdir_prefix): return {"version": dirname[len(parentdir_prefix):], "full-revisionid": None, "dirty": False, "error": None, "date": None} else: rootdirs.append(root) root = os.path.dirname(root) # up a level if verbose: print("Tried directories %%s but none started with prefix %%s" %% (str(rootdirs), parentdir_prefix)) raise NotThisMethod("rootdir doesn't start with parentdir_prefix") @register_vcs_handler("git", "get_keywords") def git_get_keywords(versionfile_abs): """Extract version information from the given file.""" # the code embedded in _version.py can just fetch the value of these # keywords. When used from setup.py, we don't want to import _version.py, # so we do it with a regexp instead. This function is not used from # _version.py. keywords = {} try: f = open(versionfile_abs, "r") for line in f.readlines(): if line.strip().startswith("git_refnames ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["refnames"] = mo.group(1) if line.strip().startswith("git_full ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["full"] = mo.group(1) if line.strip().startswith("git_date ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["date"] = mo.group(1) f.close() except EnvironmentError: pass return keywords @register_vcs_handler("git", "keywords") def git_versions_from_keywords(keywords, tag_prefix, verbose): """Get version information from git keywords.""" if not keywords: raise NotThisMethod("no keywords at all, weird") date = keywords.get("date") if date is not None: # git-2.2.0 added "%%cI", which expands to an ISO-8601 -compliant # datestamp. However we prefer "%%ci" (which expands to an "ISO-8601 # -like" string, which we must then edit to make compliant), because # it's been around since git-1.5.3, and it's too difficult to # discover which version we're using, or to work around using an # older one. date = date.strip().replace(" ", "T", 1).replace(" ", "", 1) refnames = keywords["refnames"].strip() if refnames.startswith("$Format"): if verbose: print("keywords are unexpanded, not using") raise NotThisMethod("unexpanded keywords, not a git-archive tarball") refs = set([r.strip() for r in refnames.strip("()").split(",")]) # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of # just "foo-1.0". If we see a "tag: " prefix, prefer those. TAG = "tag: " tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) if not tags: # Either we're using git < 1.8.3, or there really are no tags. We use # a heuristic: assume all version tags have a digit. The old git %%d # expansion behaves like git log --decorate=short and strips out the # refs/heads/ and refs/tags/ prefixes that would let us distinguish # between branches and tags. By ignoring refnames without digits, we # filter out many common branch names like "release" and # "stabilization", as well as "HEAD" and "master". tags = set([r for r in refs if re.search(r'\d', r)]) if verbose: print("discarding '%%s', no digits" %% ",".join(refs - tags)) if verbose: print("likely tags: %%s" %% ",".join(sorted(tags))) for ref in sorted(tags): # sorting will prefer e.g. "2.0" over "2.0rc1" if ref.startswith(tag_prefix): r = ref[len(tag_prefix):] if verbose: print("picking %%s" %% r) return {"version": r, "full-revisionid": keywords["full"].strip(), "dirty": False, "error": None, "date": date} # no suitable tags, so version is "0+unknown", but full hex is still there if verbose: print("no suitable tags, using unknown + full revision id") return {"version": "0+unknown", "full-revisionid": keywords["full"].strip(), "dirty": False, "error": "no suitable tags", "date": None} @register_vcs_handler("git", "pieces_from_vcs") def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): """Get version from 'git describe' in the root of the source tree. This only gets called if the git-archive 'subst' keywords were *not* expanded, and _version.py hasn't already been rewritten with a short version string, meaning we're inside a checked out source tree. """ GITS = ["git"] if sys.platform == "win32": GITS = ["git.cmd", "git.exe"] out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, hide_stderr=True) if rc != 0: if verbose: print("Directory %%s not under git control" %% root) raise NotThisMethod("'git rev-parse --git-dir' returned error") # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] # if there isn't one, this yields HEX[-dirty] (no NUM) describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", "--always", "--long", "--match", "%%s*" %% tag_prefix], cwd=root) # --long was added in git-1.5.5 if describe_out is None: raise NotThisMethod("'git describe' failed") describe_out = describe_out.strip() full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) if full_out is None: raise NotThisMethod("'git rev-parse' failed") full_out = full_out.strip() pieces = {} pieces["long"] = full_out pieces["short"] = full_out[:7] # maybe improved later pieces["error"] = None # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] # TAG might have hyphens. git_describe = describe_out # look for -dirty suffix dirty = git_describe.endswith("-dirty") pieces["dirty"] = dirty if dirty: git_describe = git_describe[:git_describe.rindex("-dirty")] # now we have TAG-NUM-gHEX or HEX if "-" in git_describe: # TAG-NUM-gHEX mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) if not mo: # unparseable. Maybe git-describe is misbehaving? pieces["error"] = ("unable to parse git-describe output: '%%s'" %% describe_out) return pieces # tag full_tag = mo.group(1) if not full_tag.startswith(tag_prefix): if verbose: fmt = "tag '%%s' doesn't start with prefix '%%s'" print(fmt %% (full_tag, tag_prefix)) pieces["error"] = ("tag '%%s' doesn't start with prefix '%%s'" %% (full_tag, tag_prefix)) return pieces pieces["closest-tag"] = full_tag[len(tag_prefix):] # distance: number of commits since tag pieces["distance"] = int(mo.group(2)) # commit: short hex revision ID pieces["short"] = mo.group(3) else: # HEX: no tags pieces["closest-tag"] = None count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], cwd=root) pieces["distance"] = int(count_out) # total number of commits # commit date: see ISO-8601 comment in git_versions_from_keywords() date = run_command(GITS, ["show", "-s", "--format=%%ci", "HEAD"], cwd=root)[0].strip() pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) return pieces def plus_or_dot(pieces): """Return a + if we don't already have one, else return a .""" if "+" in pieces.get("closest-tag", ""): return "." return "+" def render_pep440(pieces): """Build up version string, with post-release "local version identifier". Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you get a tagged build and then dirty it, you'll get TAG+0.gHEX.dirty Exceptions: 1: no tags. git_describe was just HEX. 0+untagged.DISTANCE.gHEX[.dirty] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += plus_or_dot(pieces) rendered += "%%d.g%%s" %% (pieces["distance"], pieces["short"]) if pieces["dirty"]: rendered += ".dirty" else: # exception #1 rendered = "0+untagged.%%d.g%%s" %% (pieces["distance"], pieces["short"]) if pieces["dirty"]: rendered += ".dirty" return rendered def render_pep440_pre(pieces): """TAG[.post.devDISTANCE] -- No -dirty. Exceptions: 1: no tags. 0.post.devDISTANCE """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"]: rendered += ".post.dev%%d" %% pieces["distance"] else: # exception #1 rendered = "0.post.dev%%d" %% pieces["distance"] return rendered def render_pep440_post(pieces): """TAG[.postDISTANCE[.dev0]+gHEX] . The ".dev0" means dirty. Note that .dev0 sorts backwards (a dirty tree will appear "older" than the corresponding clean one), but you shouldn't be releasing software with -dirty anyways. Exceptions: 1: no tags. 0.postDISTANCE[.dev0] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += ".post%%d" %% pieces["distance"] if pieces["dirty"]: rendered += ".dev0" rendered += plus_or_dot(pieces) rendered += "g%%s" %% pieces["short"] else: # exception #1 rendered = "0.post%%d" %% pieces["distance"] if pieces["dirty"]: rendered += ".dev0" rendered += "+g%%s" %% pieces["short"] return rendered def render_pep440_old(pieces): """TAG[.postDISTANCE[.dev0]] . The ".dev0" means dirty. Eexceptions: 1: no tags. 0.postDISTANCE[.dev0] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += ".post%%d" %% pieces["distance"] if pieces["dirty"]: rendered += ".dev0" else: # exception #1 rendered = "0.post%%d" %% pieces["distance"] if pieces["dirty"]: rendered += ".dev0" return rendered def render_git_describe(pieces): """TAG[-DISTANCE-gHEX][-dirty]. Like 'git describe --tags --dirty --always'. Exceptions: 1: no tags. HEX[-dirty] (note: no 'g' prefix) """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"]: rendered += "-%%d-g%%s" %% (pieces["distance"], pieces["short"]) else: # exception #1 rendered = pieces["short"] if pieces["dirty"]: rendered += "-dirty" return rendered def render_git_describe_long(pieces): """TAG-DISTANCE-gHEX[-dirty]. Like 'git describe --tags --dirty --always -long'. The distance/hash is unconditional. Exceptions: 1: no tags. HEX[-dirty] (note: no 'g' prefix) """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] rendered += "-%%d-g%%s" %% (pieces["distance"], pieces["short"]) else: # exception #1 rendered = pieces["short"] if pieces["dirty"]: rendered += "-dirty" return rendered def render(pieces, style): """Render the given version pieces into the requested style.""" if pieces["error"]: return {"version": "unknown", "full-revisionid": pieces.get("long"), "dirty": None, "error": pieces["error"], "date": None} if not style or style == "default": style = "pep440" # the default if style == "pep440": rendered = render_pep440(pieces) elif style == "pep440-pre": rendered = render_pep440_pre(pieces) elif style == "pep440-post": rendered = render_pep440_post(pieces) elif style == "pep440-old": rendered = render_pep440_old(pieces) elif style == "git-describe": rendered = render_git_describe(pieces) elif style == "git-describe-long": rendered = render_git_describe_long(pieces) else: raise ValueError("unknown style '%%s'" %% style) return {"version": rendered, "full-revisionid": pieces["long"], "dirty": pieces["dirty"], "error": None, "date": pieces.get("date")} def get_versions(): """Get version information or return default if unable to do so.""" # I am in _version.py, which lives at ROOT/VERSIONFILE_SOURCE. If we have # __file__, we can work backwards from there to the root. Some # py2exe/bbfreeze/non-CPython implementations don't do __file__, in which # case we can only use expanded keywords. cfg = get_config() verbose = cfg.verbose try: return git_versions_from_keywords(get_keywords(), cfg.tag_prefix, verbose) except NotThisMethod: pass try: root = os.path.realpath(__file__) # versionfile_source is the relative path from the top of the source # tree (where the .git directory might live) to this file. Invert # this to find the root from __file__. for i in cfg.versionfile_source.split('/'): root = os.path.dirname(root) except NameError: return {"version": "0+unknown", "full-revisionid": None, "dirty": None, "error": "unable to find root of source tree", "date": None} try: pieces = git_pieces_from_vcs(cfg.tag_prefix, root, verbose) return render(pieces, cfg.style) except NotThisMethod: pass try: if cfg.parentdir_prefix: return versions_from_parentdir(cfg.parentdir_prefix, root, verbose) except NotThisMethod: pass return {"version": "0+unknown", "full-revisionid": None, "dirty": None, "error": "unable to compute version", "date": None} ''' @register_vcs_handler("git", "get_keywords") def git_get_keywords(versionfile_abs): """Extract version information from the given file.""" # the code embedded in _version.py can just fetch the value of these # keywords. When used from setup.py, we don't want to import _version.py, # so we do it with a regexp instead. This function is not used from # _version.py. keywords = {} try: f = open(versionfile_abs, "r") for line in f.readlines(): if line.strip().startswith("git_refnames ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["refnames"] = mo.group(1) if line.strip().startswith("git_full ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["full"] = mo.group(1) if line.strip().startswith("git_date ="): mo = re.search(r'=\s*"(.*)"', line) if mo: keywords["date"] = mo.group(1) f.close() except EnvironmentError: pass return keywords @register_vcs_handler("git", "keywords") def git_versions_from_keywords(keywords, tag_prefix, verbose): """Get version information from git keywords.""" if not keywords: raise NotThisMethod("no keywords at all, weird") date = keywords.get("date") if date is not None: # git-2.2.0 added "%cI", which expands to an ISO-8601 -compliant # datestamp. However we prefer "%ci" (which expands to an "ISO-8601 # -like" string, which we must then edit to make compliant), because # it's been around since git-1.5.3, and it's too difficult to # discover which version we're using, or to work around using an # older one. date = date.strip().replace(" ", "T", 1).replace(" ", "", 1) refnames = keywords["refnames"].strip() if refnames.startswith("$Format"): if verbose: print("keywords are unexpanded, not using") raise NotThisMethod("unexpanded keywords, not a git-archive tarball") refs = set([r.strip() for r in refnames.strip("()").split(",")]) # starting in git-1.8.3, tags are listed as "tag: foo-1.0" instead of # just "foo-1.0". If we see a "tag: " prefix, prefer those. TAG = "tag: " tags = set([r[len(TAG):] for r in refs if r.startswith(TAG)]) if not tags: # Either we're using git < 1.8.3, or there really are no tags. We use # a heuristic: assume all version tags have a digit. The old git %d # expansion behaves like git log --decorate=short and strips out the # refs/heads/ and refs/tags/ prefixes that would let us distinguish # between branches and tags. By ignoring refnames without digits, we # filter out many common branch names like "release" and # "stabilization", as well as "HEAD" and "master". tags = set([r for r in refs if re.search(r'\d', r)]) if verbose: print("discarding '%s', no digits" % ",".join(refs - tags)) if verbose: print("likely tags: %s" % ",".join(sorted(tags))) for ref in sorted(tags): # sorting will prefer e.g. "2.0" over "2.0rc1" if ref.startswith(tag_prefix): r = ref[len(tag_prefix):] if verbose: print("picking %s" % r) return {"version": r, "full-revisionid": keywords["full"].strip(), "dirty": False, "error": None, "date": date} # no suitable tags, so version is "0+unknown", but full hex is still there if verbose: print("no suitable tags, using unknown + full revision id") return {"version": "0+unknown", "full-revisionid": keywords["full"].strip(), "dirty": False, "error": "no suitable tags", "date": None} @register_vcs_handler("git", "pieces_from_vcs") def git_pieces_from_vcs(tag_prefix, root, verbose, run_command=run_command): """Get version from 'git describe' in the root of the source tree. This only gets called if the git-archive 'subst' keywords were *not* expanded, and _version.py hasn't already been rewritten with a short version string, meaning we're inside a checked out source tree. """ GITS = ["git"] if sys.platform == "win32": GITS = ["git.cmd", "git.exe"] out, rc = run_command(GITS, ["rev-parse", "--git-dir"], cwd=root, hide_stderr=True) if rc != 0: if verbose: print("Directory %s not under git control" % root) raise NotThisMethod("'git rev-parse --git-dir' returned error") # if there is a tag matching tag_prefix, this yields TAG-NUM-gHEX[-dirty] # if there isn't one, this yields HEX[-dirty] (no NUM) describe_out, rc = run_command(GITS, ["describe", "--tags", "--dirty", "--always", "--long", "--match", "%s*" % tag_prefix], cwd=root) # --long was added in git-1.5.5 if describe_out is None: raise NotThisMethod("'git describe' failed") describe_out = describe_out.strip() full_out, rc = run_command(GITS, ["rev-parse", "HEAD"], cwd=root) if full_out is None: raise NotThisMethod("'git rev-parse' failed") full_out = full_out.strip() pieces = {} pieces["long"] = full_out pieces["short"] = full_out[:7] # maybe improved later pieces["error"] = None # parse describe_out. It will be like TAG-NUM-gHEX[-dirty] or HEX[-dirty] # TAG might have hyphens. git_describe = describe_out # look for -dirty suffix dirty = git_describe.endswith("-dirty") pieces["dirty"] = dirty if dirty: git_describe = git_describe[:git_describe.rindex("-dirty")] # now we have TAG-NUM-gHEX or HEX if "-" in git_describe: # TAG-NUM-gHEX mo = re.search(r'^(.+)-(\d+)-g([0-9a-f]+)$', git_describe) if not mo: # unparseable. Maybe git-describe is misbehaving? pieces["error"] = ("unable to parse git-describe output: '%s'" % describe_out) return pieces # tag full_tag = mo.group(1) if not full_tag.startswith(tag_prefix): if verbose: fmt = "tag '%s' doesn't start with prefix '%s'" print(fmt % (full_tag, tag_prefix)) pieces["error"] = ("tag '%s' doesn't start with prefix '%s'" % (full_tag, tag_prefix)) return pieces pieces["closest-tag"] = full_tag[len(tag_prefix):] # distance: number of commits since tag pieces["distance"] = int(mo.group(2)) # commit: short hex revision ID pieces["short"] = mo.group(3) else: # HEX: no tags pieces["closest-tag"] = None count_out, rc = run_command(GITS, ["rev-list", "HEAD", "--count"], cwd=root) pieces["distance"] = int(count_out) # total number of commits # commit date: see ISO-8601 comment in git_versions_from_keywords() date = run_command(GITS, ["show", "-s", "--format=%ci", "HEAD"], cwd=root)[0].strip() pieces["date"] = date.strip().replace(" ", "T", 1).replace(" ", "", 1) return pieces def do_vcs_install(manifest_in, versionfile_source, ipy): """Git-specific installation logic for Versioneer. For Git, this means creating/changing .gitattributes to mark _version.py for export-subst keyword substitution. """ GITS = ["git"] if sys.platform == "win32": GITS = ["git.cmd", "git.exe"] files = [manifest_in, versionfile_source] if ipy: files.append(ipy) try: me = __file__ if me.endswith(".pyc") or me.endswith(".pyo"): me = os.path.splitext(me)[0] + ".py" versioneer_file = os.path.relpath(me) except NameError: versioneer_file = "versioneer.py" files.append(versioneer_file) present = False try: f = open(".gitattributes", "r") for line in f.readlines(): if line.strip().startswith(versionfile_source): if "export-subst" in line.strip().split()[1:]: present = True f.close() except EnvironmentError: pass if not present: f = open(".gitattributes", "a+") f.write("%s export-subst\n" % versionfile_source) f.close() files.append(".gitattributes") run_command(GITS, ["add", "--"] + files) def versions_from_parentdir(parentdir_prefix, root, verbose): """Try to determine the version from the parent directory name. Source tarballs conventionally unpack into a directory that includes both the project name and a version string. We will also support searching up two directory levels for an appropriately named parent directory """ rootdirs = [] for i in range(3): dirname = os.path.basename(root) if dirname.startswith(parentdir_prefix): return {"version": dirname[len(parentdir_prefix):], "full-revisionid": None, "dirty": False, "error": None, "date": None} else: rootdirs.append(root) root = os.path.dirname(root) # up a level if verbose: print("Tried directories %s but none started with prefix %s" % (str(rootdirs), parentdir_prefix)) raise NotThisMethod("rootdir doesn't start with parentdir_prefix") SHORT_VERSION_PY = """ # This file was generated by a modified 'versioneer.py' from # revision-control system data, or from the parent directory name of an # unpacked source archive. Distribution tarballs contain a pre-generated copy # of this file. def get_versions(): return %r """ def versions_from_file(filename): """Try to determine the version from _version.py if present.""" try: with open(filename) as f: contents = f.read() except EnvironmentError: raise NotThisMethod("unable to read _version.py") mo = re.search(r"def get_versions():\s+return (.*)", contents) if not mo: raise NotThisMethod("no get_versions() in _version.py") return eval(mo.group(1), dict()) def write_to_version_file(filename, versions): """Write the given version number to the given _version.py file.""" os.unlink(filename) with open(filename, "w") as f: f.write(SHORT_VERSION_PY % versions) print("set %s to '%s'" % (filename, versions["version"])) def plus_or_dot(pieces): """Return a + if we don't already have one, else return a .""" if "+" in pieces.get("closest-tag", ""): return "." return "+" def render_pep440(pieces): """Build up version string, with post-release "local version identifier". Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you get a tagged build and then dirty it, you'll get TAG+0.gHEX.dirty Exceptions: 1: no tags. git_describe was just HEX. 0+untagged.DISTANCE.gHEX[.dirty] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += plus_or_dot(pieces) rendered += "%d.g%s" % (pieces["distance"], pieces["short"]) if pieces["dirty"]: rendered += ".dirty" else: # exception #1 rendered = "0+untagged.%d.g%s" % (pieces["distance"], pieces["short"]) if pieces["dirty"]: rendered += ".dirty" return rendered def render_pep440_pre(pieces): """TAG[.post.devDISTANCE] -- No -dirty. Exceptions: 1: no tags. 0.post.devDISTANCE """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"]: rendered += ".post.dev%d" % pieces["distance"] else: # exception #1 rendered = "0.post.dev%d" % pieces["distance"] return rendered def render_pep440_post(pieces): """TAG[.postDISTANCE[.dev0]+gHEX] . The ".dev0" means dirty. Note that .dev0 sorts backwards (a dirty tree will appear "older" than the corresponding clean one), but you shouldn't be releasing software with -dirty anyways. Exceptions: 1: no tags. 0.postDISTANCE[.dev0] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += ".post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" rendered += plus_or_dot(pieces) rendered += "g%s" % pieces["short"] else: # exception #1 rendered = "0.post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" rendered += "+g%s" % pieces["short"] return rendered def render_pep440_old(pieces): """TAG[.postDISTANCE[.dev0]] . The ".dev0" means dirty. Eexceptions: 1: no tags. 0.postDISTANCE[.dev0] """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"] or pieces["dirty"]: rendered += ".post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" else: # exception #1 rendered = "0.post%d" % pieces["distance"] if pieces["dirty"]: rendered += ".dev0" return rendered def render_git_describe(pieces): """TAG[-DISTANCE-gHEX][-dirty]. Like 'git describe --tags --dirty --always'. Exceptions: 1: no tags. HEX[-dirty] (note: no 'g' prefix) """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] if pieces["distance"]: rendered += "-%d-g%s" % (pieces["distance"], pieces["short"]) else: # exception #1 rendered = pieces["short"] if pieces["dirty"]: rendered += "-dirty" return rendered def render_git_describe_long(pieces): """TAG-DISTANCE-gHEX[-dirty]. Like 'git describe --tags --dirty --always -long'. The distance/hash is unconditional. Exceptions: 1: no tags. HEX[-dirty] (note: no 'g' prefix) """ if pieces["closest-tag"]: rendered = pieces["closest-tag"] rendered += "-%d-g%s" % (pieces["distance"], pieces["short"]) else: # exception #1 rendered = pieces["short"] if pieces["dirty"]: rendered += "-dirty" return rendered def render(pieces, style): """Render the given version pieces into the requested style.""" if pieces["error"]: return {"version": "unknown", "full-revisionid": pieces.get("long"), "dirty": None, "error": pieces["error"], "date": None} if not style or style == "default": style = "pep440" # the default if style == "pep440": rendered = render_pep440(pieces) elif style == "pep440-pre": rendered = render_pep440_pre(pieces) elif style == "pep440-post": rendered = render_pep440_post(pieces) elif style == "pep440-old": rendered = render_pep440_old(pieces) elif style == "git-describe": rendered = render_git_describe(pieces) elif style == "git-describe-long": rendered = render_git_describe_long(pieces) else: raise ValueError("unknown style '%s'" % style) return {"version": rendered, "full-revisionid": pieces["long"], "dirty": pieces["dirty"], "error": None, "date": pieces.get("date")} class VersioneerBadRootError(Exception): """The project root directory is unknown or missing key files.""" def get_versions(verbose=False): """Get the project version from whatever source is available. Returns dict with two keys: 'version' and 'full'. """ if "versioneer" in sys.modules: # see the discussion in cmdclass.py:get_cmdclass() del sys.modules["versioneer"] root = get_root() cfg = get_config_from_root(root) assert cfg.VCS is not None, "please set [versioneer]VCS= in setup.cfg" handlers = HANDLERS.get(cfg.VCS) assert handlers, "unrecognized VCS '%s'" % cfg.VCS verbose = verbose or cfg.verbose assert cfg.versionfile_source is not None, \ "please set versioneer.versionfile_source" assert cfg.tag_prefix is not None, "please set versioneer.tag_prefix" versionfile_abs = os.path.join(root, cfg.versionfile_source) # extract version from first of: _version.py, VCS command (e.g. 'git # describe'), parentdir. This is meant to work for developers using a # source checkout, for users of a tarball created by 'setup.py sdist', # and for users of a tarball/zipball created by 'git archive' or github's # download-from-tag feature or the equivalent in other VCSes. get_keywords_f = handlers.get("get_keywords") from_keywords_f = handlers.get("keywords") if get_keywords_f and from_keywords_f: try: keywords = get_keywords_f(versionfile_abs) ver = from_keywords_f(keywords, cfg.tag_prefix, verbose) if verbose: print("got version from expanded keyword %s" % ver) return ver except NotThisMethod: pass try: ver = versions_from_file(versionfile_abs) if verbose: print("got version from file %s %s" % (versionfile_abs, ver)) return ver except NotThisMethod: pass from_vcs_f = handlers.get("pieces_from_vcs") if from_vcs_f: try: pieces = from_vcs_f(cfg.tag_prefix, root, verbose) ver = render(pieces, cfg.style) if verbose: print("got version from VCS %s" % ver) return ver except NotThisMethod: pass try: if cfg.parentdir_prefix: ver = versions_from_parentdir(cfg.parentdir_prefix, root, verbose) if verbose: print("got version from parentdir %s" % ver) return ver except NotThisMethod: pass if verbose: print("unable to compute version") return {"version": "0+unknown", "full-revisionid": None, "dirty": None, "error": "unable to compute version", "date": None} def get_version(): """Get the short version string for this project.""" return get_versions()["version"] def get_cmdclass(): """Get the custom setuptools/distutils subclasses used by Versioneer.""" if "versioneer" in sys.modules: del sys.modules["versioneer"] # this fixes the "python setup.py develop" case (also 'install' and # 'easy_install .'), in which subdependencies of the main project are # built (using setup.py bdist_egg) in the same python process. Assume # a main project A and a dependency B, which use different versions # of Versioneer. A's setup.py imports A's Versioneer, leaving it in # sys.modules by the time B's setup.py is executed, causing B to run # with the wrong versioneer. Setuptools wraps the sub-dep builds in a # sandbox that restores sys.modules to it's pre-build state, so the # parent is protected against the child's "import versioneer". By # removing ourselves from sys.modules here, before the child build # happens, we protect the child from the parent's versioneer too. # Also see https://github.com/warner/python-versioneer/issues/52 cmds = {} # we add "version" to both distutils and setuptools from distutils.core import Command class cmd_version(Command): description = "report generated version string" user_options = [] boolean_options = [] def initialize_options(self): pass def finalize_options(self): pass def run(self): vers = get_versions(verbose=True) print("Version: %s" % vers["version"]) print(" full-revisionid: %s" % vers.get("full-revisionid")) print(" dirty: %s" % vers.get("dirty")) print(" date: %s" % vers.get("date")) if vers["error"]: print(" error: %s" % vers["error"]) cmds["version"] = cmd_version # we override "build_py" in both distutils and setuptools # # most invocation pathways end up running build_py: # distutils/build -> build_py # distutils/install -> distutils/build ->.. # setuptools/bdist_wheel -> distutils/install ->.. # setuptools/bdist_egg -> distutils/install_lib -> build_py # setuptools/install -> bdist_egg ->.. # setuptools/develop -> ? # pip install: # copies source tree to a tempdir before running egg_info/etc # if .git isn't copied too, 'git describe' will fail # then does setup.py bdist_wheel, or sometimes setup.py install # setup.py egg_info -> ? # we override different "build_py" commands for both environments if "setuptools" in sys.modules: from setuptools.command.build_py import build_py as _build_py else: from distutils.command.build_py import build_py as _build_py class cmd_build_py(_build_py): def run(self): root = get_root() cfg = get_config_from_root(root) versions = get_versions() _build_py.run(self) # now locate _version.py in the new build/ directory and replace # it with an updated value if cfg.versionfile_build: target_versionfile = os.path.join(self.build_lib, cfg.versionfile_build) print("UPDATING %s" % target_versionfile) write_to_version_file(target_versionfile, versions) cmds["build_py"] = cmd_build_py if "cx_Freeze" in sys.modules: # cx_freeze enabled? from cx_Freeze.dist import build_exe as _build_exe # nczeczulin reports that py2exe won't like the pep440-style string # as FILEVERSION, but it can be used for PRODUCTVERSION, e.g. # setup(console=[{ # "version": versioneer.get_version().split("+", 1)[0], # FILEVERSION # "product_version": versioneer.get_version(), # ... class cmd_build_exe(_build_exe): def run(self): root = get_root() cfg = get_config_from_root(root) versions = get_versions() target_versionfile = cfg.versionfile_source print("UPDATING %s" % target_versionfile) write_to_version_file(target_versionfile, versions) _build_exe.run(self) os.unlink(target_versionfile) with open(cfg.versionfile_source, "w") as f: LONG = LONG_VERSION_PY[cfg.VCS] f.write(LONG % {"DOLLAR": "$", "STYLE": cfg.style, "TAG_PREFIX": cfg.tag_prefix, "PARENTDIR_PREFIX": cfg.parentdir_prefix, "VERSIONFILE_SOURCE": cfg.versionfile_source, }) cmds["build_exe"] = cmd_build_exe del cmds["build_py"] if 'py2exe' in sys.modules: # py2exe enabled? try: from py2exe.distutils_buildexe import py2exe as _py2exe # py3 except ImportError: from py2exe.build_exe import py2exe as _py2exe # py2 class cmd_py2exe(_py2exe): def run(self): root = get_root() cfg = get_config_from_root(root) versions = get_versions() target_versionfile = cfg.versionfile_source print("UPDATING %s" % target_versionfile) write_to_version_file(target_versionfile, versions) _py2exe.run(self) os.unlink(target_versionfile) with open(cfg.versionfile_source, "w") as f: LONG = LONG_VERSION_PY[cfg.VCS] f.write(LONG % {"DOLLAR": "$", "STYLE": cfg.style, "TAG_PREFIX": cfg.tag_prefix, "PARENTDIR_PREFIX": cfg.parentdir_prefix, "VERSIONFILE_SOURCE": cfg.versionfile_source, }) cmds["py2exe"] = cmd_py2exe # we override different "sdist" commands for both environments if "setuptools" in sys.modules: from setuptools.command.sdist import sdist as _sdist else: from distutils.command.sdist import sdist as _sdist class cmd_sdist(_sdist): def run(self): versions = get_versions() self._versioneer_generated_versions = versions # unless we update this, the command will keep using the old # version self.distribution.metadata.version = versions["version"] return _sdist.run(self) def make_release_tree(self, base_dir, files): root = get_root() cfg = get_config_from_root(root) _sdist.make_release_tree(self, base_dir, files) # now locate _version.py in the new base_dir directory # (remembering that it may be a hardlink) and replace it with an # updated value target_versionfile = os.path.join(base_dir, cfg.versionfile_source) print("UPDATING %s" % target_versionfile) write_to_version_file(target_versionfile, self._versioneer_generated_versions) cmds["sdist"] = cmd_sdist return cmds CONFIG_ERROR = """ setup.cfg is missing the necessary Versioneer configuration. You need a section like: [versioneer] VCS = git style = pep440 versionfile_source = src/myproject/_version.py versionfile_build = myproject/_version.py tag_prefix = parentdir_prefix = myproject- You will also need to edit your setup.py to use the results: import versioneer setup(version=versioneer.get_version(), cmdclass=versioneer.get_cmdclass(), ...) Please read the docstring in ./versioneer.py for configuration instructions, edit setup.cfg, and re-run the installer or 'python versioneer.py setup'. """ SAMPLE_CONFIG = """ # See the docstring in versioneer.py for instructions. Note that you must # re-run 'versioneer.py setup' after changing this section, and commit the # resulting files. [versioneer] #VCS = git #style = pep440 #versionfile_source = #versionfile_build = #tag_prefix = #parentdir_prefix = """ INIT_PY_SNIPPET = """ from ._version import get_versions __version__ = get_versions()['version'] del get_versions """ def do_setup(): """Main VCS-independent setup function for installing Versioneer.""" root = get_root() try: cfg = get_config_from_root(root) except (EnvironmentError, configparser.NoSectionError, configparser.NoOptionError) as e: if isinstance(e, (EnvironmentError, configparser.NoSectionError)): print("Adding sample versioneer config to setup.cfg", file=sys.stderr) with open(os.path.join(root, "setup.cfg"), "a") as f: f.write(SAMPLE_CONFIG) print(CONFIG_ERROR, file=sys.stderr) return 1 print(" creating %s" % cfg.versionfile_source) with open(cfg.versionfile_source, "w") as f: LONG = LONG_VERSION_PY[cfg.VCS] f.write(LONG % {"DOLLAR": "$", "STYLE": cfg.style, "TAG_PREFIX": cfg.tag_prefix, "PARENTDIR_PREFIX": cfg.parentdir_prefix, "VERSIONFILE_SOURCE": cfg.versionfile_source, }) ipy = os.path.join(os.path.dirname(cfg.versionfile_source), "__init__.py") if os.path.exists(ipy): try: with open(ipy, "r") as f: old = f.read() except EnvironmentError: old = "" if INIT_PY_SNIPPET not in old: print(" appending to %s" % ipy) with open(ipy, "a") as f: f.write(INIT_PY_SNIPPET) else: print(" %s unmodified" % ipy) else: print(" %s doesn't exist, ok" % ipy) ipy = None # Make sure both the top-level "versioneer.py" and versionfile_source # (PKG/_version.py, used by runtime code) are in MANIFEST.in, so # they'll be copied into source distributions. Pip won't be able to # install the package without this. manifest_in = os.path.join(root, "MANIFEST.in") simple_includes = set() try: with open(manifest_in, "r") as f: for line in f: if line.startswith("include "): for include in line.split()[1:]: simple_includes.add(include) except EnvironmentError: pass # That doesn't cover everything MANIFEST.in can do # (http://docs.python.org/2/distutils/sourcedist.html#commands), so # it might give some false negatives. Appending redundant 'include' # lines is safe, though. if "versioneer.py" not in simple_includes: print(" appending 'versioneer.py' to MANIFEST.in") with open(manifest_in, "a") as f: f.write("include versioneer.py\n") else: print(" 'versioneer.py' already in MANIFEST.in") if cfg.versionfile_source not in simple_includes: print(" appending versionfile_source ('%s') to MANIFEST.in" % cfg.versionfile_source) with open(manifest_in, "a") as f: f.write("include %s\n" % cfg.versionfile_source) else: print(" versionfile_source already in MANIFEST.in") # Make VCS-specific changes. For git, this means creating/changing # .gitattributes to mark _version.py for export-subst keyword # substitution. do_vcs_install(manifest_in, cfg.versionfile_source, ipy) return 0 def scan_setup_py(): """Validate the contents of setup.py against Versioneer's expectations.""" found = set() setters = False errors = 0 with open("setup.py", "r") as f: for line in f.readlines(): if "import versioneer" in line: found.add("import") if "versioneer.get_cmdclass()" in line: found.add("cmdclass") if "versioneer.get_version()" in line: found.add("get_version") if "versioneer.VCS" in line: setters = True if "versioneer.versionfile_source" in line: setters = True if len(found) != 3: print("") print("Your setup.py appears to be missing some important items") print("(but I might be wrong). Please make sure it has something") print("roughly like the following:") print("") print(" import versioneer") print(" setup( version=versioneer.get_version(),") print(" cmdclass=versioneer.get_cmdclass(), ...)") print("") errors += 1 if setters: print("You should remove lines like 'versioneer.VCS = ' and") print("'versioneer.versionfile_source = ' . This configuration") print("now lives in setup.cfg, and should be removed from setup.py") print("") errors += 1 return errors if __name__ == "__main__": cmd = sys.argv[1] if cmd == "setup": errors = do_setup() errors += scan_setup_py() if errors: sys.exit(1)