Skip to content

Commit 15721f1

Browse files
author
Yiannis Gatsoulis
committed
put rcc3 back, but left it out from docs
1 parent ea77511 commit 15721f1

17 files changed

+188
-17
lines changed

docs/rsts/handwritten/qsrs/qsrs.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ Currently, the following QSRs are supported:
4141
+----------------+---------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------------+
4242
| **rcc2** | Region Connection Calculus 2 | :doc:`descr. <rcc2>` \| :mod:`api <qsrlib_qsrs.qsr_rcc2_rectangle_bounding_boxes_2d>` | [2]_ [3]_ |
4343
+----------------+---------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------------+
44-
| **rcc3** | Region Connection Calculus 3 | :doc:`descr. <rcc3>` \| :mod:`api <qsrlib_qsrs.qsr_rcc3_rectangle_bounding_boxes_2d>` | [2]_ [3]_ |
44+
| **rcc4** | Region Connection Calculus 4 | :doc:`descr. <rcc4>` \| :mod:`api <qsrlib_qsrs.qsr_rcc4 >` | [2]_ [3]_ |
4545
+----------------+---------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------------+
4646
| **rcc5** | Region Connection Calculus 5 | :doc:`descr. <rcc5>` \| :mod:`api <qsrlib_qsrs.qsr_rcc5_rectangle_bounding_boxes_2d>` | [2]_ [3]_ |
4747
+----------------+---------------------------------------------------+---------------------------------------------------------------------------------------------------------+----------------+

docs/rsts/handwritten/qsrs/rcc3.rst

Lines changed: 0 additions & 2 deletions
This file was deleted.

docs/rsts/handwritten/qsrs/rcc4.rst

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
Region Connection Calculus 4
2+
============================
3+
4+
The Region Connection Calculus (RCC) [1]_ [2]_ is intended to serve for qualitative spatial representation and reasoning.
5+
RCC abstractly describes regions (in Euclidean space, or in a topological space) by their possible relations to
6+
each other.
7+
8+
RCC5 consists of 5 basic relations that are possible between two regions; it is a stripped down version
9+
of :doc:`RCC8 <rcc8>`. The mapping from RCC8 to RCC4 can be seen below:
10+
11+
12+
+------------+------------+
13+
| RCC8 | RCC4 +
14+
+============+============+
15+
| dc | dr |
16+
+------------+ +
17+
| ec | |
18+
+------------+------------+
19+
| po | po |
20+
+------------+------------+
21+
| tpp | pp |
22+
+------------+ +
23+
| ntpp | |
24+
+------------+------------+
25+
| eq | eq |
26+
+------------+------------+
27+
| tppi | ppi |
28+
+------------+ +
29+
| ntppi | |
30+
+------------+------------+
31+
32+
33+
Relations
34+
---------
35+
36+
All the possible RCC5 relations between a blue object X and a red object Y are:
37+
38+
+-------------------+------------------------------------------------+-------------------------------------------------+
39+
| Relation | Illustration | Interpretation +
40+
+===================+================================================+=================================================+
41+
| X **dr** Y | .. image:: ../images/rcc8_dc.png | X is discrete from Y. |
42+
+ +------------------------------------------------+ +
43+
| | .. image:: ../images/rcc8_ec.png | |
44+
+-------------------+------------------------------------------------+-------------------------------------------------+
45+
| X **po** Y | .. image:: ../images/rcc8_po.png | X is partially overlapping Y. |
46+
+-------------------+------------------------------------------------+-------------------------------------------------+
47+
| X **pp** Y | .. image:: ../images/rcc8_tpp.png | X is a proper part of Y. |
48+
+ +------------------------------------------------+ +
49+
| | .. image:: ../images/rcc8_ntpp.png | |
50+
+-------------------+------------------------------------------------+-------------------------------------------------+
51+
| X **eq** Y | .. image:: ../images/rcc8_eq.png | X is equal to Y. |
52+
+-------------------+------------------------------------------------+-------------------------------------------------+
53+
| X **ppi** Y | .. image:: ../images/rcc8_tppi.png | X is a proper part inverse of Y. |
54+
+ +------------------------------------------------+ +
55+
| | .. image:: ../images/rcc8_ntppi.png | |
56+
+-------------------+------------------------------------------------+-------------------------------------------------+
57+
58+
59+
API
60+
---
61+
62+
The API can be found :mod:`here <qsrlib_qsrs.qsr_rcc5_rectangle_bounding_boxes_2d>`.
63+
64+
65+
References
66+
----------
67+
.. [1] Randell, D. A., Cui, Z. and Cohn, A. G.: A spatial logic based on regions and connection, Proc. 3rd Int. Conf. on Knowledge Representation and Reasoning, Morgan Kaufmann, San Mateo, pp. 165–176, 1992. `(link) <http://wenxion.net/ac/randell92spatial.pdf>`_
68+
.. [2] Anthony G. Cohn, Brandon Bennett, John Gooday, Micholas Mark Gotts: Qualitative Spatial Representation and Reasoning with the Region Connection Calculus. GeoInformatica, 1, 275–316, 1997.

docs/rsts/handwritten/qsrs/rcc5.rst

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,17 @@ of :doc:`RCC8 <rcc8>`. The mapping from RCC8 to RCC5 can be seen below:
1212
+------------+------------+
1313
| RCC8 | RCC5 +
1414
+============+============+
15-
| dc | dr |
16-
+------------+ +
17-
| ec | |
15+
| dc | dc |
1816
+------------+------------+
19-
| po | po |
17+
| ec | po |
18+
+------------+ +
19+
| po | |
2020
+------------+------------+
21-
| tpp | pp |
21+
| tpp | pp |
2222
+------------+ +
2323
| ntpp | |
24-
+------------+------------+
25-
| eq | eq |
24+
+------------+ +
25+
| eq | |
2626
+------------+------------+
2727
| tppi | ppi |
2828
+------------+ +
@@ -38,17 +38,17 @@ All the possible RCC5 relations between a blue object X and a red object Y are:
3838
+-------------------+------------------------------------------------+-------------------------------------------------+
3939
| Relation | Illustration | Interpretation +
4040
+===================+================================================+=================================================+
41-
| X **dr** Y | .. image:: ../images/rcc8_dc.png | X is discrete from Y. |
42-
+ +------------------------------------------------+ +
43-
| | .. image:: ../images/rcc8_ec.png | |
41+
| X **dr** Y | .. image:: ../images/rcc8_dc.png | X is disconnected from Y. |
4442
+-------------------+------------------------------------------------+-------------------------------------------------+
45-
| X **po** Y | .. image:: ../images/rcc8_po.png | X is partially overlapping Y. |
43+
| X **po** Y | .. image:: ../images/rcc8_ec.png | X is partially overlapping Y. |
44+
+ +------------------------------------------------+ +
45+
| | .. image:: ../images/rcc8_po.png | |
4646
+-------------------+------------------------------------------------+-------------------------------------------------+
4747
| X **pp** Y | .. image:: ../images/rcc8_tpp.png | X is a proper part of Y. |
4848
+ +------------------------------------------------+ +
4949
| | .. image:: ../images/rcc8_ntpp.png | |
50-
+-------------------+------------------------------------------------+-------------------------------------------------+
51-
| X **eq** Y | .. image:: ../images/rcc8_eq.png | X is equal to Y. |
50+
+ +------------------------------------------------+ +
51+
| | .. image:: ../images/rcc8_eq.png | |
5252
+-------------------+------------------------------------------------+-------------------------------------------------+
5353
| X **ppi** Y | .. image:: ../images/rcc8_tppi.png | X is a proper part inverse of Y. |
5454
+ +------------------------------------------------+ +
@@ -59,7 +59,7 @@ All the possible RCC5 relations between a blue object X and a red object Y are:
5959
API
6060
---
6161

62-
The API can be found :mod:`here <qsrlib_qsrs.qsr_rcc5_rectangle_bounding_boxes_2d>`.
62+
The API can be found :mod:`here <qsrlib_qsrs.qsr_rcc4>`.
6363

6464

6565
References

qsr_lib/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ if (CATKIN_ENABLE_TESTING)
4949
add_rostest(tests/qtccs_tester.test)
5050
add_rostest(tests/qtcbcs_tester.test)
5151
add_rostest(tests/rcc2_tester.test)
52+
add_rostest(tests/rcc3_tester.test)
5253
add_rostest(tests/rcc4_tester.test)
5354
add_rostest(tests/rcc8_tester.test)
5455
add_rostest(tests/multiple_tester.test)

qsr_lib/src/qsrlib_qsrs/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from qsr_rcc2_rectangle_bounding_boxes_2d import QSR_RCC2_Rectangle_Bounding_Boxes_2D
2+
from qsr_rcc3_rectangle_bounding_boxes_2d import QSR_RCC3_Rectangle_Bounding_Boxes_2D
23
from qsr_rcc4 import QSR_RCC4
34
from qsr_rcc8_rectangle_bounding_boxes_2d import QSR_RCC8_Rectangle_Bounding_Boxes_2D
45
from qsr_cardinal_direction_bounding_boxes_centroid_2d import QSR_Cardinal_Direction_Bounding_Boxes_Centroid_2D
@@ -12,6 +13,7 @@
1213

1314
# register new qsrs by class name below
1415
qsrs_registry = (QSR_RCC2_Rectangle_Bounding_Boxes_2D,
16+
QSR_RCC3_Rectangle_Bounding_Boxes_2D,
1517
QSR_RCC4,
1618
QSR_RCC8_Rectangle_Bounding_Boxes_2D,
1719
QSR_Cardinal_Direction_Bounding_Boxes_Centroid_2D,
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# -*- coding: utf-8 -*-
2+
from __future__ import print_function, division
3+
from qsrlib_qsrs.qsr_rcc_abstractclass import QSR_RCC_Abstractclass
4+
5+
6+
class QSR_RCC3_Rectangle_Bounding_Boxes_2D(QSR_RCC_Abstractclass):
7+
"""RCC3 relations.
8+
9+
Values of the abstract properties
10+
* **_unique_id** = "rcc3"
11+
* **_all_possible_relations** = ("dc", "po", "o")
12+
* **_dtype** = "bounding_boxes_2d"
13+
14+
.. seealso:: For further details about RCC3, refer to its :doc:`description. <../handwritten/qsrs/rcc3>`
15+
"""
16+
17+
"""
18+
Following elsewhere.
19+
# 'dc' bb1 is disconnected from bb2
20+
# 'po' bb1 partially overlaps bb2
21+
# 'o' bb1 is occluded or part of bb2
22+
"""
23+
24+
_unique_id = "rcc3"
25+
"""str: Unique identifier name of the QSR."""
26+
27+
_all_possible_relations = ("dc", "po", "o")
28+
"""tuple: All possible relations of the QSR."""
29+
30+
def __init__(self):
31+
"""Constructor."""
32+
super(QSR_RCC3_Rectangle_Bounding_Boxes_2D, self).__init__()
33+
34+
def _convert_to_requested_rcc_type(self, qsr):
35+
"""Remap QSR values from RCC8 to RCC3.
36+
37+
:param qsr: RCC8 value.
38+
:return: RCC3 value.
39+
:rtype: str
40+
"""
41+
qsr = qsr.replace("ec", "po")
42+
return qsr if qsr in self._all_possible_relations else self._all_possible_relations[-1]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
["1.0,o1,o2,{'rcc3': 'po'}", "2.0,o1,o2,{'rcc3': 'po'}", "3.0,o1,o2,{'rcc3': 'po'}", "4.0,o1,o2,{'rcc3': 'po'}", "5.0,o1,o2,{'rcc3': 'po'}", "6.0,o1,o2,{'rcc3': 'po'}", "7.0,o1,o2,{'rcc3': 'po'}", "8.0,o1,o2,{'rcc3': 'po'}", "9.0,o1,o2,{'rcc3': 'po'}", "10.0,o1,o2,{'rcc3': 'po'}", "11.0,o1,o2,{'rcc3': 'po'}", "12.0,o1,o2,{'rcc3': 'po'}", "13.0,o1,o2,{'rcc3': 'po'}", "14.0,o1,o2,{'rcc3': 'po'}", "15.0,o1,o2,{'rcc3': 'po'}", "16.0,o1,o2,{'rcc3': 'po'}", "17.0,o1,o2,{'rcc3': 'po'}", "18.0,o1,o2,{'rcc3': 'po'}", "19.0,o1,o2,{'rcc3': 'po'}", "20.0,o1,o2,{'rcc3': 'po'}", "21.0,o1,o2,{'rcc3': 'po'}", "22.0,o1,o2,{'rcc3': 'po'}", "23.0,o1,o2,{'rcc3': 'po'}", "24.0,o1,o2,{'rcc3': 'po'}", "25.0,o1,o2,{'rcc3': 'o'}", "26.0,o1,o2,{'rcc3': 'po'}", "27.0,o1,o2,{'rcc3': 'po'}", "28.0,o1,o2,{'rcc3': 'po'}", "29.0,o1,o2,{'rcc3': 'po'}", "30.0,o1,o2,{'rcc3': 'po'}", "31.0,o1,o2,{'rcc3': 'po'}", "32.0,o1,o2,{'rcc3': 'po'}", "33.0,o1,o2,{'rcc3': 'po'}", "34.0,o1,o2,{'rcc3': 'po'}", "35.0,o1,o2,{'rcc3': 'po'}", "36.0,o1,o2,{'rcc3': 'po'}", "37.0,o1,o2,{'rcc3': 'po'}", "38.0,o1,o2,{'rcc3': 'po'}", "39.0,o1,o2,{'rcc3': 'po'}", "40.0,o1,o2,{'rcc3': 'po'}", "41.0,o1,o2,{'rcc3': 'po'}", "42.0,o1,o2,{'rcc3': 'po'}", "43.0,o1,o2,{'rcc3': 'po'}", "44.0,o1,o2,{'rcc3': 'po'}", "45.0,o1,o2,{'rcc3': 'po'}", "46.0,o1,o2,{'rcc3': 'po'}", "47.0,o1,o2,{'rcc3': 'po'}", "48.0,o1,o2,{'rcc3': 'po'}", "49.0,o1,o2,{'rcc3': 'po'}"]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
["1.0,o1,o2,{'rcc3': 'dc'}", "1.0,o2,o1,{'rcc3': 'dc'}", "2.0,o1,o2,{'rcc3': 'dc'}", "2.0,o2,o1,{'rcc3': 'dc'}", "3.0,o1,o2,{'rcc3': 'dc'}", "3.0,o2,o1,{'rcc3': 'dc'}", "4.0,o1,o2,{'rcc3': 'dc'}", "4.0,o2,o1,{'rcc3': 'dc'}", "5.0,o1,o2,{'rcc3': 'dc'}", "5.0,o2,o1,{'rcc3': 'dc'}", "6.0,o1,o2,{'rcc3': 'dc'}", "6.0,o2,o1,{'rcc3': 'dc'}", "7.0,o1,o2,{'rcc3': 'dc'}", "7.0,o2,o1,{'rcc3': 'dc'}", "8.0,o1,o2,{'rcc3': 'dc'}", "8.0,o2,o1,{'rcc3': 'dc'}", "9.0,o1,o2,{'rcc3': 'po'}", "9.0,o2,o1,{'rcc3': 'po'}", "10.0,o1,o2,{'rcc3': 'po'}", "10.0,o2,o1,{'rcc3': 'po'}", "11.0,o1,o2,{'rcc3': 'po'}", "11.0,o2,o1,{'rcc3': 'po'}", "12.0,o1,o2,{'rcc3': 'po'}", "12.0,o2,o1,{'rcc3': 'po'}", "13.0,o1,o2,{'rcc3': 'po'}", "13.0,o2,o1,{'rcc3': 'po'}", "14.0,o1,o2,{'rcc3': 'dc'}", "14.0,o2,o1,{'rcc3': 'dc'}", "15.0,o1,o2,{'rcc3': 'dc'}", "15.0,o2,o1,{'rcc3': 'dc'}", "16.0,o1,o2,{'rcc3': 'po'}", "16.0,o2,o1,{'rcc3': 'po'}", "17.0,o1,o2,{'rcc3': 'po'}", "17.0,o2,o1,{'rcc3': 'po'}", "18.0,o1,o2,{'rcc3': 'po'}", "18.0,o2,o1,{'rcc3': 'po'}", "19.0,o1,o2,{'rcc3': 'po'}", "19.0,o2,o1,{'rcc3': 'po'}", "20.0,o1,o2,{'rcc3': 'po'}", "20.0,o2,o1,{'rcc3': 'po'}", "21.0,o1,o2,{'rcc3': 'dc'}", "21.0,o2,o1,{'rcc3': 'dc'}", "22.0,o1,o2,{'rcc3': 'dc'}", "22.0,o2,o1,{'rcc3': 'dc'}", "23.0,o1,o2,{'rcc3': 'po'}", "23.0,o2,o1,{'rcc3': 'po'}", "24.0,o1,o2,{'rcc3': 'po'}", "24.0,o2,o1,{'rcc3': 'po'}", "25.0,o1,o2,{'rcc3': 'o'}", "25.0,o2,o1,{'rcc3': 'o'}", "26.0,o1,o2,{'rcc3': 'po'}", "26.0,o2,o1,{'rcc3': 'po'}", "27.0,o1,o2,{'rcc3': 'po'}", "27.0,o2,o1,{'rcc3': 'po'}", "28.0,o1,o2,{'rcc3': 'dc'}", "28.0,o2,o1,{'rcc3': 'dc'}", "29.0,o1,o2,{'rcc3': 'dc'}", "29.0,o2,o1,{'rcc3': 'dc'}", "30.0,o1,o2,{'rcc3': 'po'}", "30.0,o2,o1,{'rcc3': 'po'}", "31.0,o1,o2,{'rcc3': 'po'}", "31.0,o2,o1,{'rcc3': 'po'}", "32.0,o1,o2,{'rcc3': 'po'}", "32.0,o2,o1,{'rcc3': 'po'}", "33.0,o1,o2,{'rcc3': 'po'}", "33.0,o2,o1,{'rcc3': 'po'}", "34.0,o1,o2,{'rcc3': 'po'}", "34.0,o2,o1,{'rcc3': 'po'}", "35.0,o1,o2,{'rcc3': 'dc'}", "35.0,o2,o1,{'rcc3': 'dc'}", "36.0,o1,o2,{'rcc3': 'dc'}", "36.0,o2,o1,{'rcc3': 'dc'}", "37.0,o1,o2,{'rcc3': 'po'}", "37.0,o2,o1,{'rcc3': 'po'}", "38.0,o1,o2,{'rcc3': 'po'}", "38.0,o2,o1,{'rcc3': 'po'}", "39.0,o1,o2,{'rcc3': 'po'}", "39.0,o2,o1,{'rcc3': 'po'}", "40.0,o1,o2,{'rcc3': 'po'}", "40.0,o2,o1,{'rcc3': 'po'}", "41.0,o1,o2,{'rcc3': 'po'}", "41.0,o2,o1,{'rcc3': 'po'}", "42.0,o1,o2,{'rcc3': 'dc'}", "42.0,o2,o1,{'rcc3': 'dc'}", "43.0,o1,o2,{'rcc3': 'dc'}", "43.0,o2,o1,{'rcc3': 'dc'}", "44.0,o1,o2,{'rcc3': 'dc'}", "44.0,o2,o1,{'rcc3': 'dc'}", "45.0,o1,o2,{'rcc3': 'dc'}", "45.0,o2,o1,{'rcc3': 'dc'}", "46.0,o1,o2,{'rcc3': 'dc'}", "46.0,o2,o1,{'rcc3': 'dc'}", "47.0,o1,o2,{'rcc3': 'dc'}", "47.0,o2,o1,{'rcc3': 'dc'}", "48.0,o1,o2,{'rcc3': 'dc'}", "48.0,o2,o1,{'rcc3': 'dc'}", "49.0,o1,o2,{'rcc3': 'dc'}", "49.0,o2,o1,{'rcc3': 'dc'}"]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
["1.0,o1,o2,{'rcc3': 'po'}", "1.0,o2,o1,{'rcc3': 'po'}", "2.0,o1,o2,{'rcc3': 'po'}", "2.0,o2,o1,{'rcc3': 'po'}", "3.0,o1,o2,{'rcc3': 'po'}", "3.0,o2,o1,{'rcc3': 'po'}", "4.0,o1,o2,{'rcc3': 'po'}", "4.0,o2,o1,{'rcc3': 'po'}", "5.0,o1,o2,{'rcc3': 'po'}", "5.0,o2,o1,{'rcc3': 'po'}", "6.0,o1,o2,{'rcc3': 'po'}", "6.0,o2,o1,{'rcc3': 'po'}", "7.0,o1,o2,{'rcc3': 'po'}", "7.0,o2,o1,{'rcc3': 'po'}", "8.0,o1,o2,{'rcc3': 'po'}", "8.0,o2,o1,{'rcc3': 'po'}", "9.0,o1,o2,{'rcc3': 'po'}", "9.0,o2,o1,{'rcc3': 'po'}", "10.0,o1,o2,{'rcc3': 'po'}", "10.0,o2,o1,{'rcc3': 'po'}", "11.0,o1,o2,{'rcc3': 'po'}", "11.0,o2,o1,{'rcc3': 'po'}", "12.0,o1,o2,{'rcc3': 'po'}", "12.0,o2,o1,{'rcc3': 'po'}", "13.0,o1,o2,{'rcc3': 'po'}", "13.0,o2,o1,{'rcc3': 'po'}", "14.0,o1,o2,{'rcc3': 'po'}", "14.0,o2,o1,{'rcc3': 'po'}", "15.0,o1,o2,{'rcc3': 'po'}", "15.0,o2,o1,{'rcc3': 'po'}", "16.0,o1,o2,{'rcc3': 'po'}", "16.0,o2,o1,{'rcc3': 'po'}", "17.0,o1,o2,{'rcc3': 'po'}", "17.0,o2,o1,{'rcc3': 'po'}", "18.0,o1,o2,{'rcc3': 'po'}", "18.0,o2,o1,{'rcc3': 'po'}", "19.0,o1,o2,{'rcc3': 'po'}", "19.0,o2,o1,{'rcc3': 'po'}", "20.0,o1,o2,{'rcc3': 'po'}", "20.0,o2,o1,{'rcc3': 'po'}", "21.0,o1,o2,{'rcc3': 'po'}", "21.0,o2,o1,{'rcc3': 'po'}", "22.0,o1,o2,{'rcc3': 'po'}", "22.0,o2,o1,{'rcc3': 'po'}", "23.0,o1,o2,{'rcc3': 'po'}", "23.0,o2,o1,{'rcc3': 'po'}", "24.0,o1,o2,{'rcc3': 'po'}", "24.0,o2,o1,{'rcc3': 'po'}", "25.0,o1,o2,{'rcc3': 'o'}", "25.0,o2,o1,{'rcc3': 'o'}", "26.0,o1,o2,{'rcc3': 'po'}", "26.0,o2,o1,{'rcc3': 'po'}", "27.0,o1,o2,{'rcc3': 'po'}", "27.0,o2,o1,{'rcc3': 'po'}", "28.0,o1,o2,{'rcc3': 'po'}", "28.0,o2,o1,{'rcc3': 'po'}", "29.0,o1,o2,{'rcc3': 'po'}", "29.0,o2,o1,{'rcc3': 'po'}", "30.0,o1,o2,{'rcc3': 'po'}", "30.0,o2,o1,{'rcc3': 'po'}", "31.0,o1,o2,{'rcc3': 'po'}", "31.0,o2,o1,{'rcc3': 'po'}", "32.0,o1,o2,{'rcc3': 'po'}", "32.0,o2,o1,{'rcc3': 'po'}", "33.0,o1,o2,{'rcc3': 'po'}", "33.0,o2,o1,{'rcc3': 'po'}", "34.0,o1,o2,{'rcc3': 'po'}", "34.0,o2,o1,{'rcc3': 'po'}", "35.0,o1,o2,{'rcc3': 'po'}", "35.0,o2,o1,{'rcc3': 'po'}", "36.0,o1,o2,{'rcc3': 'po'}", "36.0,o2,o1,{'rcc3': 'po'}", "37.0,o1,o2,{'rcc3': 'po'}", "37.0,o2,o1,{'rcc3': 'po'}", "38.0,o1,o2,{'rcc3': 'po'}", "38.0,o2,o1,{'rcc3': 'po'}", "39.0,o1,o2,{'rcc3': 'po'}", "39.0,o2,o1,{'rcc3': 'po'}", "40.0,o1,o2,{'rcc3': 'po'}", "40.0,o2,o1,{'rcc3': 'po'}", "41.0,o1,o2,{'rcc3': 'po'}", "41.0,o2,o1,{'rcc3': 'po'}", "42.0,o1,o2,{'rcc3': 'po'}", "42.0,o2,o1,{'rcc3': 'po'}", "43.0,o1,o2,{'rcc3': 'po'}", "43.0,o2,o1,{'rcc3': 'po'}", "44.0,o1,o2,{'rcc3': 'po'}", "44.0,o2,o1,{'rcc3': 'po'}", "45.0,o1,o2,{'rcc3': 'po'}", "45.0,o2,o1,{'rcc3': 'po'}", "46.0,o1,o2,{'rcc3': 'po'}", "46.0,o2,o1,{'rcc3': 'po'}", "47.0,o1,o2,{'rcc3': 'po'}", "47.0,o2,o1,{'rcc3': 'po'}", "48.0,o1,o2,{'rcc3': 'po'}", "48.0,o2,o1,{'rcc3': 'po'}", "49.0,o1,o2,{'rcc3': 'po'}", "49.0,o2,o1,{'rcc3': 'po'}"]

0 commit comments

Comments
 (0)