SET default_tablespace = '';
SET default_table_access_method = heap;
-SET ROLE 'topology_exposure_user';
+SET ROLE topology_exposure_user;
CREATE TABLE IF NOT EXISTS ties_model.hash_info (
"name" TEXT PRIMARY KEY,
ietf-geo-location urn:ietf:params:xml:ns:yang:ietf-geo-location \N [] 2022-02-11 bW9kdWxlIGlldGYtZ2VvLWxvY2F0aW9uIHsKICB5YW5nLXZlcnNpb24gMS4xOwogIG5hbWVzcGFjZSAidXJuOmlldGY6cGFyYW1zOnhtbDpuczp5YW5nOmlldGYtZ2VvLWxvY2F0aW9uIjsKICBwcmVmaXggZ2VvOwogIGltcG9ydCBpZXRmLXlhbmctdHlwZXMgewogICAgcHJlZml4IHlhbmc7CiAgICByZWZlcmVuY2UgIlJGQyA2OTkxOiBDb21tb24gWUFORyBEYXRhIFR5cGVzIjsKICB9CgogIG9yZ2FuaXphdGlvbgogICAgIklFVEYgTkVUTU9EIFdvcmtpbmcgR3JvdXAgKE5FVE1PRCkiOwogIGNvbnRhY3QKICAgIldHIFdlYjogICA8aHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy93Zy9uZXRtb2QvPgogICAgV0cgTGlzdDogIDxtYWlsdG86bmV0bW9kQGlldGYub3JnPgoKICAgIEVkaXRvcjogICBDaHJpc3RpYW4gSG9wcHMKICAgICAgICAgICAgICA8bWFpbHRvOmNob3Bwc0BjaG9wcHMub3JnPiI7CgogIGRlc2NyaXB0aW9uCiAgICAiVGhpcyBtb2R1bGUgZGVmaW5lcyBhIGdyb3VwaW5nIG9mIGEgY29udGFpbmVyIG9iamVjdCBmb3IKICAgICBzcGVjaWZ5aW5nIGEgbG9jYXRpb24gb24gb3IgYXJvdW5kIGFuIGFzdHJvbm9taWNhbCBvYmplY3QgKGUuZy4sCiAgICAgJ2VhcnRoJykuCgogICAgIFRoZSBrZXkgd29yZHMgJ01VU1QnLCAnTVVTVCBOT1QnLCAnUkVRVUlSRUQnLCAnU0hBTEwnLCAnU0hBTEwKICAgICBOT1QnLCAnU0hPVUxEJywgJ1NIT1VMRCBOT1QnLCAnUkVDT01NRU5ERUQnLCAnTk9UIFJFQ09NTUVOREVEJywKICAgICAnTUFZJywgYW5kICdPUFRJT05BTCcgaW4gdGhpcyBkb2N1bWVudCBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQgYXMKICAgICBkZXNjcmliZWQgaW4gQkNQIDE0IChSRkMgMjExOSkgKFJGQyA4MTc0KSB3aGVuLCBhbmQgb25seSB3aGVuLAogICAgIHRoZXkgYXBwZWFyIGluIGFsbCBjYXBpdGFscywgYXMgc2hvd24gaGVyZS4KCiAgICAgQ29weXJpZ2h0IChjKSAyMDIyIElFVEYgVHJ1c3QgYW5kIHRoZSBwZXJzb25zIGlkZW50aWZpZWQgYXMKICAgICBhdXRob3JzIG9mIHRoZSBjb2RlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiAgICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3JtcywKICAgICB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBpcyBwZXJtaXR0ZWQgcHVyc3VhbnQgdG8sCiAgICAgYW5kIHN1YmplY3QgdG8gdGhlIGxpY2Vuc2UgdGVybXMgY29udGFpbmVkIGluLCB0aGUKICAgICBSZXZpc2VkIEJTRCBMaWNlbnNlIHNldCBmb3J0aCBpbiBTZWN0aW9uIDQuYyBvZiB0aGUKICAgICBJRVRGIFRydXN0J3MgTGVnYWwgUHJvdmlzaW9ucyBSZWxhdGluZyB0byBJRVRGIERvY3VtZW50cwogICAgIChodHRwczovL3RydXN0ZWUuaWV0Zi5vcmcvbGljZW5zZS1pbmZvKS4KCiAgICAgVGhpcyB2ZXJzaW9uIG9mIHRoaXMgWUFORyBtb2R1bGUgaXMgcGFydCBvZiBSRkMgOTE3OQogICAgIChodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9pbmZvL3JmYzkxNzkpOyBzZWUgdGhlIFJGQyBpdHNlbGYKICAgICBmb3IgZnVsbCBsZWdhbCBub3RpY2VzLiI7CgogIHJldmlzaW9uIDIwMjItMDItMTEgewogICAgZGVzY3JpcHRpb24KICAgICAgIkluaXRpYWwgUmV2aXNpb24iOwogICAgcmVmZXJlbmNlCiAgICAgICJSRkMgOTE3OTogQSBZQU5HIEdyb3VwaW5nIGZvciBHZW9ncmFwaGljIExvY2F0aW9ucyI7CiAgfQoKICBmZWF0dXJlIGFsdGVybmF0ZS1zeXN0ZW1zIHsKICAgIGRlc2NyaXB0aW9uCiAgICAgICJUaGlzIGZlYXR1cmUgbWVhbnMgdGhlIGRldmljZSBzdXBwb3J0cyBzcGVjaWZ5aW5nIGxvY2F0aW9ucwogICAgICAgdXNpbmcgYWx0ZXJuYXRlIHN5c3RlbXMgZm9yIHJlZmVyZW5jZSBmcmFtZXMuIjsKICB9CgogIGdyb3VwaW5nIGdlby1sb2NhdGlvbiB7CiAgICBkZXNjcmlwdGlvbgogICAgICAiR3JvdXBpbmcgdG8gaWRlbnRpZnkgYSBsb2NhdGlvbiBvbiBhbiBhc3Ryb25vbWljYWwgb2JqZWN0LiI7CgogICAgY29udGFpbmVyIGdlby1sb2NhdGlvbiB7CiAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIkEgbG9jYXRpb24gb24gYW4gYXN0cm9ub21pY2FsIGJvZHkgKGUuZy4sICdlYXJ0aCcpCiAgICAgICAgIHNvbWV3aGVyZSBpbiBhIHVuaXZlcnNlLiI7CgogICAgICBjb250YWluZXIgcmVmZXJlbmNlLWZyYW1lIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIlRoZSBGcmFtZSBvZiBSZWZlcmVuY2UgZm9yIHRoZSBsb2NhdGlvbiB2YWx1ZXMuIjsKCiAgICAgICAgbGVhZiBhbHRlcm5hdGUtc3lzdGVtIHsKICAgICAgICAgIGlmLWZlYXR1cmUgImFsdGVybmF0ZS1zeXN0ZW1zIjsKICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBzeXN0ZW0gaW4gd2hpY2ggdGhlIGFzdHJvbm9taWNhbCBib2R5IGFuZAogICAgICAgICAgICAgZ2VvZGV0aWMtZGF0dW0gaXMgZGVmaW5lZC4gIE5vcm1hbGx5LCB0aGlzIHZhbHVlIGlzIG5vdAogICAgICAgICAgICAgcHJlc2VudCBhbmQgdGhlIHN5c3RlbSBpcyB0aGUgbmF0dXJhbCB1bml2ZXJzZTsgaG93ZXZlciwKICAgICAgICAgICAgIHdoZW4gcHJlc2VudCwgdGhpcyB2YWx1ZSBhbGxvd3MgZm9yIHNwZWNpZnlpbmcgYWx0ZXJuYXRlCiAgICAgICAgICAgICBzeXN0ZW1zIChlLmcuLCB2aXJ0dWFsIHJlYWxpdGllcykuICBBbiBhbHRlcm5hdGUtc3lzdGVtCiAgICAgICAgICAgICBtb2RpZmllcyB0aGUgZGVmaW5pdGlvbiAoYnV0IG5vdCB0aGUgdHlwZSkgb2YgdGhlIG90aGVyCiAgICAgICAgICAgICB2YWx1ZXMgaW4gdGhlIHJlZmVyZW5jZSBmcmFtZS4iOwogICAgICAgIH0KICAgICAgICBsZWFmIGFzdHJvbm9taWNhbC1ib2R5IHsKICAgICAgICAgIHR5cGUgc3RyaW5nIHsKICAgICAgICAgICAgcGF0dGVybiAnWyAtQFxbLVxeXy1+XSonOwogICAgICAgICAgfQogICAgICAgICAgZGVmYXVsdCAiZWFydGgiOwogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIkFuIGFzdHJvbm9taWNhbCBib2R5IGFzIG5hbWVkIGJ5IHRoZSBJbnRlcm5hdGlvbmFsCiAgICAgICAgICAgICBBc3Ryb25vbWljYWwgVW5pb24gKElBVSkgb3IgYWNjb3JkaW5nIHRvIHRoZSBhbHRlcm5hdGUKICAgICAgICAgICAgIHN5c3RlbSBpZiBzcGVjaWZpZWQuICBFeGFtcGxlcyBpbmNsdWRlICdzdW4nIChvdXIgc3RhciksCiAgICAgICAgICAgICAnZWFydGgnIChvdXIgcGxhbmV0KSwgJ21vb24nIChvdXIgbW9vbiksICdlbmNlbGFkdXMnIChhCiAgICAgICAgICAgICBtb29uIG9mIFNhdHVybiksICdjZXJlcycgKGFuIGFzdGVyb2lkKSwgYW5kCiAgICAgICAgICAgICAnNjdwL2NodXJ5dW1vdi1nZXJhc2ltZW5rbyAoYSBjb21ldCkuICBUaGUgQVNDSUkgdmFsdWUKICAgICAgICAgICAgIFNIT1VMRCBoYXZlIHVwcGVyY2FzZSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlIGFuZCBub3QKICAgICAgICAgICAgIGluY2x1ZGUgY29udHJvbCBjaGFyYWN0ZXJzIChpLmUuLCB2YWx1ZXMgMzIuLjY0LCBhbmQKICAgICAgICAgICAgIDkxLi4xMjYpLiAgQW55IHByZWNlZGluZyAndGhlJyBpbiB0aGUgbmFtZSBTSE9VTEQgTk9UIGJlCiAgICAgICAgICAgICBpbmNsdWRlZC4iOwogICAgICAgICAgcmVmZXJlbmNlCiAgICAgICAgICAgICJodHRwczovL3d3dy5pYXUub3JnLyI7CiAgICAgICAgfQogICAgICAgIGNvbnRhaW5lciBnZW9kZXRpYy1zeXN0ZW0gewogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBnZW9kZXRpYyBzeXN0ZW0gb2YgdGhlIGxvY2F0aW9uIGRhdGEuIjsKICAgICAgICAgIGxlYWYgZ2VvZGV0aWMtZGF0dW0gewogICAgICAgICAgICB0eXBlIHN0cmluZyB7CiAgICAgICAgICAgICAgcGF0dGVybiAnWyAtQFxbLVxeXy1+XSonOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICAgIkEgZ2VvZGV0aWMtZGF0dW0gZGVmaW5pbmcgdGhlIG1lYW5pbmcgb2YgbGF0aXR1ZGUsCiAgICAgICAgICAgICAgIGxvbmdpdHVkZSwgYW5kIGhlaWdodC4gIFRoZSBkZWZhdWx0IHdoZW4gdGhlCiAgICAgICAgICAgICAgIGFzdHJvbm9taWNhbCBib2R5IGlzICdlYXJ0aCcgaXMgJ3dncy04NCcsIHdoaWNoIGlzCiAgICAgICAgICAgICAgIHVzZWQgYnkgdGhlIEdsb2JhbCBQb3NpdGlvbmluZyBTeXN0ZW0gKEdQUykuICBUaGUKICAgICAgICAgICAgICAgQVNDSUkgdmFsdWUgU0hPVUxEIGhhdmUgdXBwZXJjYXNlIGNvbnZlcnRlZCB0bwogICAgICAgICAgICAgICBsb3dlcmNhc2UgYW5kIG5vdCBpbmNsdWRlIGNvbnRyb2wgY2hhcmFjdGVycwogICAgICAgICAgICAgICAoaS5lLiwgdmFsdWVzIDMyLi42NCwgYW5kIDkxLi4xMjYpLiAgVGhlIElBTkEgcmVnaXN0cnkKICAgICAgICAgICAgICAgZnVydGhlciByZXN0cmljdHMgdGhlIHZhbHVlIGJ5IGNvbnZlcnRpbmcgYWxsIHNwYWNlcwogICAgICAgICAgICAgICAoJyAnKSB0byBkYXNoZXMgKCctJykuCiAgICAgICAgICAgICAgIFRoZSBzcGVjaWZpY2F0aW9uIGZvciB0aGUgZ2VvZGV0aWMtZGF0dW0gaW5kaWNhdGVzCiAgICAgICAgICAgICAgIGhvdyBhY2N1cmF0ZWx5IGl0IG1vZGVscyB0aGUgYXN0cm9ub21pY2FsIGJvZHkgaW4KICAgICAgICAgICAgICAgcXVlc3Rpb24sIGJvdGggZm9yIHRoZSAnaG9yaXpvbnRhbCcKICAgICAgICAgICAgICAgbGF0aXR1ZGUvbG9uZ2l0dWRlIGNvb3JkaW5hdGVzIGFuZCBmb3IgaGVpZ2h0CiAgICAgICAgICAgICAgIGNvb3JkaW5hdGVzLiI7CiAgICAgICAgICAgIHJlZmVyZW5jZQogICAgICAgICAgICAgICJSRkMgOTE3OTogQSBZQU5HIEdyb3VwaW5nIGZvciBHZW9ncmFwaGljIExvY2F0aW9ucywKICAgICAgICAgICAgICAgU2VjdGlvbiA2LjEiOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiBjb29yZC1hY2N1cmFjeSB7CiAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgNjsKICAgICAgICAgICAgfQogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICJUaGUgYWNjdXJhY3kgb2YgdGhlIGxhdGl0dWRlL2xvbmdpdHVkZSBwYWlyIGZvcgogICAgICAgICAgICAgICBlbGxpcHNvaWRhbCBjb29yZGluYXRlcywgb3IgdGhlIFgsIFksIGFuZCBaIGNvbXBvbmVudHMKICAgICAgICAgICAgICAgZm9yIENhcnRlc2lhbiBjb29yZGluYXRlcy4gIFdoZW4gY29vcmQtYWNjdXJhY3kgaXMKICAgICAgICAgICAgICAgc3BlY2lmaWVkLCBpdCBpbmRpY2F0ZXMgaG93IHByZWNpc2VseSB0aGUgY29vcmRpbmF0ZXMKICAgICAgICAgICAgICAgaW4gdGhlIGFzc29jaWF0ZWQgbGlzdCBvZiBsb2NhdGlvbnMgaGF2ZSBiZWVuCiAgICAgICAgICAgICAgIGRldGVybWluZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBjb29yZGluYXRlIHN5c3RlbQogICAgICAgICAgICAgICBkZWZpbmVkIGJ5IHRoZSBnZW9kZXRpYy1kYXR1bS4gIEZvciBleGFtcGxlLCB0aGVyZQogICAgICAgICAgICAgICBtaWdodCBiZSB1bmNlcnRhaW50eSBkdWUgdG8gbWVhc3VyZW1lbnQgZXJyb3IgaWYgYW4KICAgICAgICAgICAgICAgZXhwZXJpbWVudGFsIG1lYXN1cmVtZW50IHdhcyBtYWRlIHRvIGRldGVybWluZSBlYWNoCiAgICAgICAgICAgICAgIGxvY2F0aW9uLiI7CiAgICAgICAgICB9CiAgICAgICAgICBsZWFmIGhlaWdodC1hY2N1cmFjeSB7CiAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgNjsKICAgICAgICAgICAgfQogICAgICAgICAgICB1bml0cyAibWV0ZXJzIjsKICAgICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgICAiVGhlIGFjY3VyYWN5IG9mIHRoZSBoZWlnaHQgdmFsdWUgZm9yIGVsbGlwc29pZGFsCiAgICAgICAgICAgICAgIGNvb3JkaW5hdGVzOyB0aGlzIHZhbHVlIGlzIG5vdCB1c2VkIHdpdGggQ2FydGVzaWFuCiAgICAgICAgICAgICAgIGNvb3JkaW5hdGVzLiAgV2hlbiBoZWlnaHQtYWNjdXJhY3kgaXMgc3BlY2lmaWVkLCBpdAogICAgICAgICAgICAgICBpbmRpY2F0ZXMgaG93IHByZWNpc2VseSB0aGUgaGVpZ2h0cyBpbiB0aGUKICAgICAgICAgICAgICAgYXNzb2NpYXRlZCBsaXN0IG9mIGxvY2F0aW9ucyBoYXZlIGJlZW4gZGV0ZXJtaW5lZAogICAgICAgICAgICAgICB3aXRoIHJlc3BlY3QgdG8gdGhlIGNvb3JkaW5hdGUgc3lzdGVtIGRlZmluZWQgYnkgdGhlCiAgICAgICAgICAgICAgIGdlb2RldGljLWRhdHVtLiAgRm9yIGV4YW1wbGUsIHRoZXJlIG1pZ2h0IGJlCiAgICAgICAgICAgICAgIHVuY2VydGFpbnR5IGR1ZSB0byBtZWFzdXJlbWVudCBlcnJvciBpZiBhbgogICAgICAgICAgICAgICBleHBlcmltZW50YWwgbWVhc3VyZW1lbnQgd2FzIG1hZGUgdG8gZGV0ZXJtaW5lIGVhY2gKICAgICAgICAgICAgICAgbG9jYXRpb24uIjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgY2hvaWNlIGxvY2F0aW9uIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIlRoZSBsb2NhdGlvbiBkYXRhIGVpdGhlciBpbiBsYXRpdHVkZS9sb25naXR1ZGUgb3IKICAgICAgICAgICBDYXJ0ZXNpYW4gdmFsdWVzIjsKICAgICAgICBjYXNlIGVsbGlwc29pZCB7CiAgICAgICAgICBsZWFmIGxhdGl0dWRlIHsKICAgICAgICAgICAgdHlwZSBkZWNpbWFsNjQgewogICAgICAgICAgICAgIGZyYWN0aW9uLWRpZ2l0cyAxNjsKICAgICAgICAgICAgfQogICAgICAgICAgICB1bml0cyAiZGVjaW1hbCBkZWdyZWVzIjsKICAgICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgICAiVGhlIGxhdGl0dWRlIHZhbHVlIG9uIHRoZSBhc3Ryb25vbWljYWwgYm9keS4gIFRoZQogICAgICAgICAgICAgICBkZWZpbml0aW9uIGFuZCBwcmVjaXNpb24gb2YgdGhpcyBtZWFzdXJlbWVudCBpcwogICAgICAgICAgICAgICBpbmRpY2F0ZWQgYnkgdGhlIHJlZmVyZW5jZS1mcmFtZS4iOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiBsb25naXR1ZGUgewogICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDE2OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHVuaXRzICJkZWNpbWFsIGRlZ3JlZXMiOwogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICJUaGUgbG9uZ2l0dWRlIHZhbHVlIG9uIHRoZSBhc3Ryb25vbWljYWwgYm9keS4gIFRoZQogICAgICAgICAgICAgICBkZWZpbml0aW9uIGFuZCBwcmVjaXNpb24gb2YgdGhpcyBtZWFzdXJlbWVudCBpcwogICAgICAgICAgICAgICBpbmRpY2F0ZWQgYnkgdGhlIHJlZmVyZW5jZS1mcmFtZS4iOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiBoZWlnaHQgewogICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDY7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdW5pdHMgIm1ldGVycyI7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICAgIkhlaWdodCBmcm9tIGEgcmVmZXJlbmNlIDAgdmFsdWUuICBUaGUgcHJlY2lzaW9uIGFuZAogICAgICAgICAgICAgICAnMCcgdmFsdWUgaXMgZGVmaW5lZCBieSB0aGUgcmVmZXJlbmNlLWZyYW1lLiI7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhc2UgY2FydGVzaWFuIHsKICAgICAgICAgIGxlYWYgeCB7CiAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgNjsKICAgICAgICAgICAgfQogICAgICAgICAgICB1bml0cyAibWV0ZXJzIjsKICAgICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgICAiVGhlIFggdmFsdWUgYXMgZGVmaW5lZCBieSB0aGUgcmVmZXJlbmNlLWZyYW1lLiI7CiAgICAgICAgICB9CiAgICAgICAgICBsZWFmIHkgewogICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDY7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdW5pdHMgIm1ldGVycyI7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICAgIlRoZSBZIHZhbHVlIGFzIGRlZmluZWQgYnkgdGhlIHJlZmVyZW5jZS1mcmFtZS4iOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiB6IHsKICAgICAgICAgICAgdHlwZSBkZWNpbWFsNjQgewogICAgICAgICAgICAgIGZyYWN0aW9uLWRpZ2l0cyA2OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHVuaXRzICJtZXRlcnMiOwogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICJUaGUgWiB2YWx1ZSBhcyBkZWZpbmVkIGJ5IHRoZSByZWZlcmVuY2UtZnJhbWUuIjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgY29udGFpbmVyIHZlbG9jaXR5IHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIklmIHRoZSBvYmplY3QgaXMgaW4gbW90aW9uLCB0aGUgdmVsb2NpdHkgdmVjdG9yIGRlc2NyaWJlcwogICAgICAgICAgIHRoaXMgbW90aW9uIGF0IHRoZSB0aW1lIGdpdmVuIGJ5IHRoZSB0aW1lc3RhbXAuICBGb3IgYQogICAgICAgICAgIGZvcm11bGEgdG8gY29udmVydCB0aGVzZSB2YWx1ZXMgdG8gc3BlZWQgYW5kIGhlYWRpbmcsIHNlZQogICAgICAgICAgIFJGQyA5MTc5LiI7CiAgICAgICAgcmVmZXJlbmNlCiAgICAgICAgICAiUkZDIDkxNzk6IEEgWUFORyBHcm91cGluZyBmb3IgR2VvZ3JhcGhpYyBMb2NhdGlvbnMiOwoKICAgICAgICBsZWFmIHYtbm9ydGggewogICAgICAgICAgdHlwZSBkZWNpbWFsNjQgewogICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgMTI7CiAgICAgICAgICB9CiAgICAgICAgICB1bml0cyAibWV0ZXJzIHBlciBzZWNvbmQiOwogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgInYtbm9ydGggaXMgdGhlIHJhdGUgb2YgY2hhbmdlIChpLmUuLCBzcGVlZCkgdG93YXJkcwogICAgICAgICAgICAgdHJ1ZSBub3J0aCBhcyBkZWZpbmVkIGJ5IHRoZSBnZW9kZXRpYy1zeXN0ZW0uIjsKICAgICAgICB9CgogICAgICAgIGxlYWYgdi1lYXN0IHsKICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDEyOwogICAgICAgICAgfQogICAgICAgICAgdW5pdHMgIm1ldGVycyBwZXIgc2Vjb25kIjsKICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJ2LWVhc3QgaXMgdGhlIHJhdGUgb2YgY2hhbmdlIChpLmUuLCBzcGVlZCkgcGVycGVuZGljdWxhcgogICAgICAgICAgICAgdG8gdGhlIHJpZ2h0IG9mIHRydWUgbm9ydGggYXMgZGVmaW5lZCBieQogICAgICAgICAgICAgdGhlIGdlb2RldGljLXN5c3RlbS4iOwogICAgICAgIH0KCiAgICAgICAgbGVhZiB2LXVwIHsKICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDEyOwogICAgICAgICAgfQogICAgICAgICAgdW5pdHMgIm1ldGVycyBwZXIgc2Vjb25kIjsKICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJ2LXVwIGlzIHRoZSByYXRlIG9mIGNoYW5nZSAoaS5lLiwgc3BlZWQpIGF3YXkgZnJvbSB0aGUKICAgICAgICAgICAgIGNlbnRlciBvZiBtYXNzLiI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxlYWYgdGltZXN0YW1wIHsKICAgICAgICB0eXBlIHlhbmc6ZGF0ZS1hbmQtdGltZTsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIlJlZmVyZW5jZSB0aW1lIHdoZW4gbG9jYXRpb24gd2FzIHJlY29yZGVkLiI7CiAgICAgIH0KICAgICAgbGVhZiB2YWxpZC11bnRpbCB7CiAgICAgICAgdHlwZSB5YW5nOmRhdGUtYW5kLXRpbWU7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICJUaGUgdGltZXN0YW1wIGZvciB3aGljaCB0aGlzIGdlby1sb2NhdGlvbiBpcyB2YWxpZCB1bnRpbC4KICAgICAgICAgICBJZiB1bnNwZWNpZmllZCwgdGhlIGdlby1sb2NhdGlvbiBoYXMgbm8gc3BlY2lmaWMKICAgICAgICAgICBleHBpcmF0aW9uIHRpbWUuIjsKICAgICAgfQogICAgfQogIH0KfQo=
ietf-inet-types urn:ietf:params:xml:ns:yang:ietf-inet-types \N [] 2013-07-15 bW9kdWxlIGlldGYtaW5ldC10eXBlcyB7CgogIG5hbWVzcGFjZSAidXJuOmlldGY6cGFyYW1zOnhtbDpuczp5YW5nOmlldGYtaW5ldC10eXBlcyI7CiAgcHJlZml4ICJpbmV0IjsKCiAgb3JnYW5pemF0aW9uCiAgICJJRVRGIE5FVE1PRCAoTkVUQ09ORiBEYXRhIE1vZGVsaW5nIExhbmd1YWdlKSBXb3JraW5nIEdyb3VwIjsKCiAgY29udGFjdAogICAiV0cgV2ViOiAgIDxodHRwOi8vdG9vbHMuaWV0Zi5vcmcvd2cvbmV0bW9kLz4KICAgIFdHIExpc3Q6ICA8bWFpbHRvOm5ldG1vZEBpZXRmLm9yZz4KCiAgICBXRyBDaGFpcjogRGF2aWQgS2Vzc2VucwogICAgICAgICAgICAgIDxtYWlsdG86ZGF2aWQua2Vzc2Vuc0Buc24uY29tPgoKICAgIFdHIENoYWlyOiBKdWVyZ2VuIFNjaG9lbndhZWxkZXIKICAgICAgICAgICAgICA8bWFpbHRvOmouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZT4KCiAgICBFZGl0b3I6ICAgSnVlcmdlbiBTY2hvZW53YWVsZGVyCiAgICAgICAgICAgICAgPG1haWx0bzpqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGU+IjsKCiAgZGVzY3JpcHRpb24KICAgIlRoaXMgbW9kdWxlIGNvbnRhaW5zIGEgY29sbGVjdGlvbiBvZiBnZW5lcmFsbHkgdXNlZnVsIGRlcml2ZWQKICAgIFlBTkcgZGF0YSB0eXBlcyBmb3IgSW50ZXJuZXQgYWRkcmVzc2VzIGFuZCByZWxhdGVkIHRoaW5ncy4KCiAgICBDb3B5cmlnaHQgKGMpIDIwMTMgSUVURiBUcnVzdCBhbmQgdGhlIHBlcnNvbnMgaWRlbnRpZmllZCBhcwogICAgYXV0aG9ycyBvZiB0aGUgY29kZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvcgogICAgd2l0aG91dCBtb2RpZmljYXRpb24sIGlzIHBlcm1pdHRlZCBwdXJzdWFudCB0bywgYW5kIHN1YmplY3QKICAgIHRvIHRoZSBsaWNlbnNlIHRlcm1zIGNvbnRhaW5lZCBpbiwgdGhlIFNpbXBsaWZpZWQgQlNEIExpY2Vuc2UKICAgIHNldCBmb3J0aCBpbiBTZWN0aW9uIDQuYyBvZiB0aGUgSUVURiBUcnVzdCdzIExlZ2FsIFByb3Zpc2lvbnMKICAgIFJlbGF0aW5nIHRvIElFVEYgRG9jdW1lbnRzCiAgICAoaHR0cDovL3RydXN0ZWUuaWV0Zi5vcmcvbGljZW5zZS1pbmZvKS4KCiAgICBUaGlzIHZlcnNpb24gb2YgdGhpcyBZQU5HIG1vZHVsZSBpcyBwYXJ0IG9mIFJGQyA2OTkxOyBzZWUKICAgIHRoZSBSRkMgaXRzZWxmIGZvciBmdWxsIGxlZ2FsIG5vdGljZXMuIjsKCiAgcmV2aXNpb24gMjAxMy0wNy0xNSB7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGlzIHJldmlzaW9uIGFkZHMgdGhlIGZvbGxvd2luZyBuZXcgZGF0YSB0eXBlczoKICAgICAgLSBpcC1hZGRyZXNzLW5vLXpvbmUKICAgICAgLSBpcHY0LWFkZHJlc3Mtbm8tem9uZQogICAgICAtIGlwdjYtYWRkcmVzcy1uby16b25lIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjk5MTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICByZXZpc2lvbiAyMDEwLTA5LTI0IHsKICAgIGRlc2NyaXB0aW9uCiAgICAgIkluaXRpYWwgcmV2aXNpb24uIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjAyMTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgdHlwZXMgcmVsYXRlZCB0byBwcm90b2NvbCBmaWVsZHMgKioqLwoKICB0eXBlZGVmIGlwLXZlcnNpb24gewogICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgIGVudW0gdW5rbm93biB7CiAgICAgICAgdmFsdWUgIjAiOwogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICJBbiB1bmtub3duIG9yIHVuc3BlY2lmaWVkIHZlcnNpb24gb2YgdGhlIEludGVybmV0CiAgICAgICAgICBwcm90b2NvbC4iOwogICAgICB9CiAgICAgIGVudW0gaXB2NCB7CiAgICAgICAgdmFsdWUgIjEiOwogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICJUaGUgSVB2NCBwcm90b2NvbCBhcyBkZWZpbmVkIGluIFJGQyA3OTEuIjsKICAgICAgfQogICAgICBlbnVtIGlwdjYgewogICAgICAgIHZhbHVlICIyIjsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAiVGhlIElQdjYgcHJvdG9jb2wgYXMgZGVmaW5lZCBpbiBSRkMgMjQ2MC4iOwogICAgICB9CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGlzIHZhbHVlIHJlcHJlc2VudHMgdGhlIHZlcnNpb24gb2YgdGhlIElQIHByb3RvY29sLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIEluZXRWZXJzaW9uIHRleHR1YWwgY29udmVudGlvbiBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgIDc5MTogSW50ZXJuZXQgUHJvdG9jb2wKICAgICAgUkZDIDI0NjA6IEludGVybmV0IFByb3RvY29sLCBWZXJzaW9uIDYgKElQdjYpIFNwZWNpZmljYXRpb24KICAgICAgUkZDIDQwMDE6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIEludGVybmV0IE5ldHdvcmsgQWRkcmVzc2VzIjsKICB9CgogIHR5cGVkZWYgZHNjcCB7CiAgICB0eXBlIHVpbnQ4IHsKICAgICAgcmFuZ2UgIjAuLjYzIjsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBkc2NwIHR5cGUgcmVwcmVzZW50cyBhIERpZmZlcmVudGlhdGVkIFNlcnZpY2VzIENvZGUgUG9pbnQKICAgICAgdGhhdCBtYXkgYmUgdXNlZCBmb3IgbWFya2luZyBwYWNrZXRzIGluIGEgdHJhZmZpYyBzdHJlYW0uCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBEc2NwIHRleHR1YWwgY29udmVudGlvbiBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMzI4OTogTWFuYWdlbWVudCBJbmZvcm1hdGlvbiBCYXNlIGZvciB0aGUgRGlmZmVyZW50aWF0ZWQKICAgICAgICAgICAgICAgIFNlcnZpY2VzIEFyY2hpdGVjdHVyZQogICAgICBSRkMgMjQ3NDogRGVmaW5pdGlvbiBvZiB0aGUgRGlmZmVyZW50aWF0ZWQgU2VydmljZXMgRmllbGQKICAgICAgICAgICAgICAgIChEUyBGaWVsZCkgaW4gdGhlIElQdjQgYW5kIElQdjYgSGVhZGVycwogICAgICBSRkMgMjc4MDogSUFOQSBBbGxvY2F0aW9uIEd1aWRlbGluZXMgRm9yIFZhbHVlcyBJbgogICAgICAgICAgICAgICAgdGhlIEludGVybmV0IFByb3RvY29sIGFuZCBSZWxhdGVkIEhlYWRlcnMiOwogIH0KCiAgdHlwZWRlZiBpcHY2LWZsb3ctbGFiZWwgewogICAgdHlwZSB1aW50MzIgewogICAgICByYW5nZSAiMC4uMTA0ODU3NSI7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgaXB2Ni1mbG93LWxhYmVsIHR5cGUgcmVwcmVzZW50cyB0aGUgZmxvdyBpZGVudGlmaWVyIG9yIEZsb3cKICAgICAgTGFiZWwgaW4gYW4gSVB2NiBwYWNrZXQgaGVhZGVyIHRoYXQgbWF5IGJlIHVzZWQgdG8KICAgICAgZGlzY3JpbWluYXRlIHRyYWZmaWMgZmxvd3MuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgSVB2NkZsb3dMYWJlbCB0ZXh0dWFsIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDM1OTU6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIElQdjYgRmxvdyBMYWJlbAogICAgICBSRkMgMjQ2MDogSW50ZXJuZXQgUHJvdG9jb2wsIFZlcnNpb24gNiAoSVB2NikgU3BlY2lmaWNhdGlvbiI7CiAgfQoKICB0eXBlZGVmIHBvcnQtbnVtYmVyIHsKICAgIHR5cGUgdWludDE2IHsKICAgICAgcmFuZ2UgIjAuLjY1NTM1IjsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBwb3J0LW51bWJlciB0eXBlIHJlcHJlc2VudHMgYSAxNi1iaXQgcG9ydCBudW1iZXIgb2YgYW4KICAgICAgSW50ZXJuZXQgdHJhbnNwb3J0LWxheWVyIHByb3RvY29sIHN1Y2ggYXMgVURQLCBUQ1AsIERDQ1AsIG9yCiAgICAgIFNDVFAuICBQb3J0IG51bWJlcnMgYXJlIGFzc2lnbmVkIGJ5IElBTkEuICBBIGN1cnJlbnQgbGlzdCBvZgogICAgICBhbGwgYXNzaWdubWVudHMgaXMgYXZhaWxhYmxlIGZyb20gPGh0dHA6Ly93d3cuaWFuYS5vcmcvPi4KCiAgICAgIE5vdGUgdGhhdCB0aGUgcG9ydCBudW1iZXIgdmFsdWUgemVybyBpcyByZXNlcnZlZCBieSBJQU5BLiAgSW4KICAgICAgc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmFsdWUgemVybyBkb2VzIG5vdCBtYWtlIHNlbnNlLCBpdCBjYW4KICAgICAgYmUgZXhjbHVkZWQgYnkgc3VidHlwaW5nIHRoZSBwb3J0LW51bWJlciB0eXBlLgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgSW5ldFBvcnROdW1iZXIgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAgNzY4OiBVc2VyIERhdGFncmFtIFByb3RvY29sCiAgICAgIFJGQyAgNzkzOiBUcmFuc21pc3Npb24gQ29udHJvbCBQcm90b2NvbAogICAgICBSRkMgNDk2MDogU3RyZWFtIENvbnRyb2wgVHJhbnNtaXNzaW9uIFByb3RvY29sCiAgICAgIFJGQyA0MzQwOiBEYXRhZ3JhbSBDb25nZXN0aW9uIENvbnRyb2wgUHJvdG9jb2wgKERDQ1ApCiAgICAgIFJGQyA0MDAxOiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBJbnRlcm5ldCBOZXR3b3JrIEFkZHJlc3NlcyI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgdHlwZXMgcmVsYXRlZCB0byBhdXRvbm9tb3VzIHN5c3RlbXMgKioqLwoKICB0eXBlZGVmIGFzLW51bWJlciB7CiAgICB0eXBlIHVpbnQzMjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBhcy1udW1iZXIgdHlwZSByZXByZXNlbnRzIGF1dG9ub21vdXMgc3lzdGVtIG51bWJlcnMKICAgICAgd2hpY2ggaWRlbnRpZnkgYW4gQXV0b25vbW91cyBTeXN0ZW0gKEFTKS4gIEFuIEFTIGlzIGEgc2V0CiAgICAgIG9mIHJvdXRlcnMgdW5kZXIgYSBzaW5nbGUgdGVjaG5pY2FsIGFkbWluaXN0cmF0aW9uLCB1c2luZwogICAgICBhbiBpbnRlcmlvciBnYXRld2F5IHByb3RvY29sIGFuZCBjb21tb24gbWV0cmljcyB0byByb3V0ZQogICAgICBwYWNrZXRzIHdpdGhpbiB0aGUgQVMsIGFuZCB1c2luZyBhbiBleHRlcmlvciBnYXRld2F5CiAgICAgIHByb3RvY29sIHRvIHJvdXRlIHBhY2tldHMgdG8gb3RoZXIgQVNlcy4gIElBTkEgbWFpbnRhaW5zCiAgICAgIHRoZSBBUyBudW1iZXIgc3BhY2UgYW5kIGhhcyBkZWxlZ2F0ZWQgbGFyZ2UgcGFydHMgdG8gdGhlCiAgICAgIHJlZ2lvbmFsIHJlZ2lzdHJpZXMuCgogICAgICBBdXRvbm9tb3VzIHN5c3RlbSBudW1iZXJzIHdlcmUgb3JpZ2luYWxseSBsaW1pdGVkIHRvIDE2CiAgICAgIGJpdHMuICBCR1AgZXh0ZW5zaW9ucyBoYXZlIGVubGFyZ2VkIHRoZSBhdXRvbm9tb3VzIHN5c3RlbQogICAgICBudW1iZXIgc3BhY2UgdG8gMzIgYml0cy4gIFRoaXMgdHlwZSB0aGVyZWZvcmUgdXNlcyBhbiB1aW50MzIKICAgICAgYmFzZSB0eXBlIHdpdGhvdXQgYSByYW5nZSByZXN0cmljdGlvbiBpbiBvcmRlciB0byBzdXBwb3J0CiAgICAgIGEgbGFyZ2VyIGF1dG9ub21vdXMgc3lzdGVtIG51bWJlciBzcGFjZS4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBJbmV0QXV0b25vbW91c1N5c3RlbU51bWJlciB0ZXh0dWFsIGNvbnZlbnRpb24gb2YKICAgICAgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDE5MzA6IEd1aWRlbGluZXMgZm9yIGNyZWF0aW9uLCBzZWxlY3Rpb24sIGFuZCByZWdpc3RyYXRpb24KICAgICAgICAgICAgICAgIG9mIGFuIEF1dG9ub21vdXMgU3lzdGVtIChBUykKICAgICAgUkZDIDQyNzE6IEEgQm9yZGVyIEdhdGV3YXkgUHJvdG9jb2wgNCAoQkdQLTQpCiAgICAgIFJGQyA0MDAxOiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBJbnRlcm5ldCBOZXR3b3JrIEFkZHJlc3NlcwogICAgICBSRkMgNjc5MzogQkdQIFN1cHBvcnQgZm9yIEZvdXItT2N0ZXQgQXV0b25vbW91cyBTeXN0ZW0gKEFTKQogICAgICAgICAgICAgICAgTnVtYmVyIFNwYWNlIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiB0eXBlcyByZWxhdGVkIHRvIElQIGFkZHJlc3NlcyBhbmQgaG9zdG5hbWVzICoqKi8KCiAgdHlwZWRlZiBpcC1hZGRyZXNzIHsKICAgIHR5cGUgdW5pb24gewogICAgICB0eXBlIGluZXQ6aXB2NC1hZGRyZXNzOwogICAgICB0eXBlIGluZXQ6aXB2Ni1hZGRyZXNzOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGlwLWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElQIGFkZHJlc3MgYW5kIGlzIElQCiAgICAgIHZlcnNpb24gbmV1dHJhbC4gIFRoZSBmb3JtYXQgb2YgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb24KICAgICAgaW1wbGllcyB0aGUgSVAgdmVyc2lvbi4gIFRoaXMgdHlwZSBzdXBwb3J0cyBzY29wZWQgYWRkcmVzc2VzCiAgICAgIGJ5IGFsbG93aW5nIHpvbmUgaWRlbnRpZmllcnMgaW4gdGhlIGFkZHJlc3MgZm9ybWF0LiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDQwMDc6IElQdjYgU2NvcGVkIEFkZHJlc3MgQXJjaGl0ZWN0dXJlIjsKICB9CgogIHR5cGVkZWYgaXB2NC1hZGRyZXNzIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybgogICAgICAgICcoKFswLTldfFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSlcLil7M30nCiAgICAgICsgICcoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1bMC05XXwyWzAtNF1bMC05XXwyNVswLTVdKScKICAgICAgKyAnKCVbXHB7Tn1ccHtMfV0rKT8nOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAgIlRoZSBpcHY0LWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElQdjQgYWRkcmVzcyBpbgogICAgICAgZG90dGVkLXF1YWQgbm90YXRpb24uICBUaGUgSVB2NCBhZGRyZXNzIG1heSBpbmNsdWRlIGEgem9uZQogICAgICAgaW5kZXgsIHNlcGFyYXRlZCBieSBhICUgc2lnbi4KCiAgICAgICBUaGUgem9uZSBpbmRleCBpcyB1c2VkIHRvIGRpc2FtYmlndWF0ZSBpZGVudGljYWwgYWRkcmVzcwogICAgICAgdmFsdWVzLiAgRm9yIGxpbmstbG9jYWwgYWRkcmVzc2VzLCB0aGUgem9uZSBpbmRleCB3aWxsCiAgICAgICB0eXBpY2FsbHkgYmUgdGhlIGludGVyZmFjZSBpbmRleCBudW1iZXIgb3IgdGhlIG5hbWUgb2YgYW4KICAgICAgIGludGVyZmFjZS4gIElmIHRoZSB6b25lIGluZGV4IGlzIG5vdCBwcmVzZW50LCB0aGUgZGVmYXVsdAogICAgICAgem9uZSBvZiB0aGUgZGV2aWNlIHdpbGwgYmUgdXNlZC4KCiAgICAgICBUaGUgY2Fub25pY2FsIGZvcm1hdCBmb3IgdGhlIHpvbmUgaW5kZXggaXMgdGhlIG51bWVyaWNhbAogICAgICAgZm9ybWF0IjsKICB9CgogIHR5cGVkZWYgaXB2Ni1hZGRyZXNzIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnKCg6fFswLTlhLWZBLUZdezAsNH0pOikoWzAtOWEtZkEtRl17MCw0fTopezAsNX0nCiAgICAgICAgICAgICsgJygoKFswLTlhLWZBLUZdezAsNH06KT8oOnxbMC05YS1mQS1GXXswLDR9KSl8JwogICAgICAgICAgICArICcoKCgyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV0/WzAtOV0pXC4pezN9JwogICAgICAgICAgICArICcoMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldP1swLTldKSkpJwogICAgICAgICAgICArICcoJVtccHtOfVxwe0x9XSspPyc7CiAgICAgIHBhdHRlcm4gJygoW146XSs6KXs2fSgoW146XSs6W146XSspfCguKlwuLiopKSl8JwogICAgICAgICAgICArICcoKChbXjpdKzopKlteOl0rKT86OigoW146XSs6KSpbXjpdKyk/KScKICAgICAgICAgICAgKyAnKCUuKyk/JzsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBpcHY2LWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElQdjYgYWRkcmVzcyBpbiBmdWxsLAogICAgICBtaXhlZCwgc2hvcnRlbmVkLCBhbmQgc2hvcnRlbmVkLW1peGVkIG5vdGF0aW9uLiAgVGhlIElQdjYKICAgICAgYWRkcmVzcyBtYXkgaW5jbHVkZSBhIHpvbmUgaW5kZXgsIHNlcGFyYXRlZCBieSBhICUgc2lnbi4KCiAgICAgIFRoZSB6b25lIGluZGV4IGlzIHVzZWQgdG8gZGlzYW1iaWd1YXRlIGlkZW50aWNhbCBhZGRyZXNzCiAgICAgIHZhbHVlcy4gIEZvciBsaW5rLWxvY2FsIGFkZHJlc3NlcywgdGhlIHpvbmUgaW5kZXggd2lsbAogICAgICB0eXBpY2FsbHkgYmUgdGhlIGludGVyZmFjZSBpbmRleCBudW1iZXIgb3IgdGhlIG5hbWUgb2YgYW4KICAgICAgaW50ZXJmYWNlLiAgSWYgdGhlIHpvbmUgaW5kZXggaXMgbm90IHByZXNlbnQsIHRoZSBkZWZhdWx0CiAgICAgIHpvbmUgb2YgdGhlIGRldmljZSB3aWxsIGJlIHVzZWQuCgogICAgICBUaGUgY2Fub25pY2FsIGZvcm1hdCBvZiBJUHY2IGFkZHJlc3NlcyB1c2VzIHRoZSB0ZXh0dWFsCiAgICAgIHJlcHJlc2VudGF0aW9uIGRlZmluZWQgaW4gU2VjdGlvbiA0IG9mIFJGQyA1OTUyLiAgVGhlCiAgICAgIGNhbm9uaWNhbCBmb3JtYXQgZm9yIHRoZSB6b25lIGluZGV4IGlzIHRoZSBudW1lcmljYWwKICAgICAgZm9ybWF0IGFzIGRlc2NyaWJlZCBpbiBTZWN0aW9uIDExLjIgb2YgUkZDIDQwMDcuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNDI5MTogSVAgVmVyc2lvbiA2IEFkZHJlc3NpbmcgQXJjaGl0ZWN0dXJlCiAgICAgIFJGQyA0MDA3OiBJUHY2IFNjb3BlZCBBZGRyZXNzIEFyY2hpdGVjdHVyZQogICAgICBSRkMgNTk1MjogQSBSZWNvbW1lbmRhdGlvbiBmb3IgSVB2NiBBZGRyZXNzIFRleHQKICAgICAgICAgICAgICAgIFJlcHJlc2VudGF0aW9uIjsKICB9CgogIHR5cGVkZWYgaXAtYWRkcmVzcy1uby16b25lIHsKICAgIHR5cGUgdW5pb24gewogICAgICB0eXBlIGluZXQ6aXB2NC1hZGRyZXNzLW5vLXpvbmU7CiAgICAgIHR5cGUgaW5ldDppcHY2LWFkZHJlc3Mtbm8tem9uZTsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBpcC1hZGRyZXNzLW5vLXpvbmUgdHlwZSByZXByZXNlbnRzIGFuIElQIGFkZHJlc3MgYW5kIGlzCiAgICAgIElQIHZlcnNpb24gbmV1dHJhbC4gIFRoZSBmb3JtYXQgb2YgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb24KICAgICAgaW1wbGllcyB0aGUgSVAgdmVyc2lvbi4gIFRoaXMgdHlwZSBkb2VzIG5vdCBzdXBwb3J0IHNjb3BlZAogICAgICBhZGRyZXNzZXMgc2luY2UgaXQgZG9lcyBub3QgYWxsb3cgem9uZSBpZGVudGlmaWVycyBpbiB0aGUKICAgICAgYWRkcmVzcyBmb3JtYXQuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNDAwNzogSVB2NiBTY29wZWQgQWRkcmVzcyBBcmNoaXRlY3R1cmUiOwogIH0KCiAgdHlwZWRlZiBpcHY0LWFkZHJlc3Mtbm8tem9uZSB7CiAgICB0eXBlIGluZXQ6aXB2NC1hZGRyZXNzIHsKICAgICAgcGF0dGVybiAnWzAtOVwuXSonOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAgIkFuIElQdjQgYWRkcmVzcyB3aXRob3V0IGEgem9uZSBpbmRleC4gIFRoaXMgdHlwZSwgZGVyaXZlZCBmcm9tCiAgICAgICBpcHY0LWFkZHJlc3MsIG1heSBiZSB1c2VkIGluIHNpdHVhdGlvbnMgd2hlcmUgdGhlIHpvbmUgaXMKICAgICAgIGtub3duIGZyb20gdGhlIGNvbnRleHQgYW5kIGhlbmNlIG5vIHpvbmUgaW5kZXggaXMgbmVlZGVkLiI7CiAgfQoKICB0eXBlZGVmIGlwdjYtYWRkcmVzcy1uby16b25lIHsKICAgIHR5cGUgaW5ldDppcHY2LWFkZHJlc3MgewogICAgICBwYXR0ZXJuICdbMC05YS1mQS1GOlwuXSonOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAgIkFuIElQdjYgYWRkcmVzcyB3aXRob3V0IGEgem9uZSBpbmRleC4gIFRoaXMgdHlwZSwgZGVyaXZlZCBmcm9tCiAgICAgICBpcHY2LWFkZHJlc3MsIG1heSBiZSB1c2VkIGluIHNpdHVhdGlvbnMgd2hlcmUgdGhlIHpvbmUgaXMKICAgICAgIGtub3duIGZyb20gdGhlIGNvbnRleHQgYW5kIGhlbmNlIG5vIHpvbmUgaW5kZXggaXMgbmVlZGVkLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDQyOTE6IElQIFZlcnNpb24gNiBBZGRyZXNzaW5nIEFyY2hpdGVjdHVyZQogICAgICBSRkMgNDAwNzogSVB2NiBTY29wZWQgQWRkcmVzcyBBcmNoaXRlY3R1cmUKICAgICAgUkZDIDU5NTI6IEEgUmVjb21tZW5kYXRpb24gZm9yIElQdjYgQWRkcmVzcyBUZXh0CiAgICAgICAgICAgICAgICBSZXByZXNlbnRhdGlvbiI7CiAgfQoKICB0eXBlZGVmIGlwLXByZWZpeCB7CiAgICB0eXBlIHVuaW9uIHsKICAgICAgdHlwZSBpbmV0OmlwdjQtcHJlZml4OwogICAgICB0eXBlIGluZXQ6aXB2Ni1wcmVmaXg7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgaXAtcHJlZml4IHR5cGUgcmVwcmVzZW50cyBhbiBJUCBwcmVmaXggYW5kIGlzIElQCiAgICAgIHZlcnNpb24gbmV1dHJhbC4gIFRoZSBmb3JtYXQgb2YgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb25zCiAgICAgIGltcGxpZXMgdGhlIElQIHZlcnNpb24uIjsKICB9CgogIHR5cGVkZWYgaXB2NC1wcmVmaXggewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuCiAgICAgICAgICcoKFswLTldfFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSlcLil7M30nCiAgICAgICArICAnKFswLTldfFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSknCiAgICAgICArICcvKChbMC05XSl8KFsxLTJdWzAtOV0pfCgzWzAtMl0pKSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgaXB2NC1wcmVmaXggdHlwZSByZXByZXNlbnRzIGFuIElQdjQgYWRkcmVzcyBwcmVmaXguCiAgICAgIFRoZSBwcmVmaXggbGVuZ3RoIGlzIGdpdmVuIGJ5IHRoZSBudW1iZXIgZm9sbG93aW5nIHRoZQogICAgICBzbGFzaCBjaGFyYWN0ZXIgYW5kIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDMyLgoKICAgICAgQSBwcmVmaXggbGVuZ3RoIHZhbHVlIG9mIG4gY29ycmVzcG9uZHMgdG8gYW4gSVAgYWRkcmVzcwogICAgICBtYXNrIHRoYXQgaGFzIG4gY29udGlndW91cyAxLWJpdHMgZnJvbSB0aGUgbW9zdAogICAgICBzaWduaWZpY2FudCBiaXQgKE1TQikgYW5kIGFsbCBvdGhlciBiaXRzIHNldCB0byAwLgoKICAgICAgVGhlIGNhbm9uaWNhbCBmb3JtYXQgb2YgYW4gSVB2NCBwcmVmaXggaGFzIGFsbCBiaXRzIG9mCiAgICAgIHRoZSBJUHY0IGFkZHJlc3Mgc2V0IHRvIHplcm8gdGhhdCBhcmUgbm90IHBhcnQgb2YgdGhlCiAgICAgIElQdjQgcHJlZml4LiI7CiAgfQoKICB0eXBlZGVmIGlwdjYtcHJlZml4IHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnKCg6fFswLTlhLWZBLUZdezAsNH0pOikoWzAtOWEtZkEtRl17MCw0fTopezAsNX0nCiAgICAgICAgICAgICsgJygoKFswLTlhLWZBLUZdezAsNH06KT8oOnxbMC05YS1mQS1GXXswLDR9KSl8JwogICAgICAgICAgICArICcoKCgyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV0/WzAtOV0pXC4pezN9JwogICAgICAgICAgICArICcoMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldP1swLTldKSkpJwogICAgICAgICAgICArICcoLygoWzAtOV0pfChbMC05XXsyfSl8KDFbMC0xXVswLTldKXwoMTJbMC04XSkpKSc7CiAgICAgIHBhdHRlcm4gJygoW146XSs6KXs2fSgoW146XSs6W146XSspfCguKlwuLiopKSl8JwogICAgICAgICAgICArICcoKChbXjpdKzopKlteOl0rKT86OigoW146XSs6KSpbXjpdKyk/KScKICAgICAgICAgICAgKyAnKC8uKyknOwogICAgfQoKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBpcHY2LXByZWZpeCB0eXBlIHJlcHJlc2VudHMgYW4gSVB2NiBhZGRyZXNzIHByZWZpeC4KICAgICAgVGhlIHByZWZpeCBsZW5ndGggaXMgZ2l2ZW4gYnkgdGhlIG51bWJlciBmb2xsb3dpbmcgdGhlCiAgICAgIHNsYXNoIGNoYXJhY3RlciBhbmQgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMTI4LgoKICAgICAgQSBwcmVmaXggbGVuZ3RoIHZhbHVlIG9mIG4gY29ycmVzcG9uZHMgdG8gYW4gSVAgYWRkcmVzcwogICAgICBtYXNrIHRoYXQgaGFzIG4gY29udGlndW91cyAxLWJpdHMgZnJvbSB0aGUgbW9zdAogICAgICBzaWduaWZpY2FudCBiaXQgKE1TQikgYW5kIGFsbCBvdGhlciBiaXRzIHNldCB0byAwLgoKICAgICAgVGhlIElQdjYgYWRkcmVzcyBzaG91bGQgaGF2ZSBhbGwgYml0cyB0aGF0IGRvIG5vdCBiZWxvbmcKICAgICAgdG8gdGhlIHByZWZpeCBzZXQgdG8gemVyby4KCiAgICAgIFRoZSBjYW5vbmljYWwgZm9ybWF0IG9mIGFuIElQdjYgcHJlZml4IGhhcyBhbGwgYml0cyBvZgogICAgICB0aGUgSVB2NiBhZGRyZXNzIHNldCB0byB6ZXJvIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRoZQogICAgICBJUHY2IHByZWZpeC4gIEZ1cnRoZXJtb3JlLCB0aGUgSVB2NiBhZGRyZXNzIGlzIHJlcHJlc2VudGVkCiAgICAgIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA0IG9mIFJGQyA1OTUyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDU5NTI6IEEgUmVjb21tZW5kYXRpb24gZm9yIElQdjYgQWRkcmVzcyBUZXh0CiAgICAgICAgICAgICAgICBSZXByZXNlbnRhdGlvbiI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgZG9tYWluIG5hbWUgYW5kIFVSSSB0eXBlcyAqKiovCgogIHR5cGVkZWYgZG9tYWluLW5hbWUgewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuCiAgICAgICAgJygoKFthLXpBLVowLTlfXShbYS16QS1aMC05XC1fXSl7MCw2MX0pP1thLXpBLVowLTldXC4pKicKICAgICAgKyAnKFthLXpBLVowLTlfXShbYS16QS1aMC05XC1fXSl7MCw2MX0pP1thLXpBLVowLTldXC4/KScKICAgICAgKyAnfFwuJzsKICAgICAgbGVuZ3RoICIxLi4yNTMiOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGRvbWFpbi1uYW1lIHR5cGUgcmVwcmVzZW50cyBhIEROUyBkb21haW4gbmFtZS4gIFRoZQogICAgICBuYW1lIFNIT1VMRCBiZSBmdWxseSBxdWFsaWZpZWQgd2hlbmV2ZXIgcG9zc2libGUuCgogICAgICBJbnRlcm5ldCBkb21haW4gbmFtZXMgYXJlIG9ubHkgbG9vc2VseSBzcGVjaWZpZWQuICBTZWN0aW9uCiAgICAgIDMuNSBvZiBSRkMgMTAzNCByZWNvbW1lbmRzIGEgc3ludGF4IChtb2RpZmllZCBpbiBTZWN0aW9uCiAgICAgIDIuMSBvZiBSRkMgMTEyMykuICBUaGUgcGF0dGVybiBhYm92ZSBpcyBpbnRlbmRlZCB0byBhbGxvdwogICAgICBmb3IgY3VycmVudCBwcmFjdGljZSBpbiBkb21haW4gbmFtZSB1c2UsIGFuZCBzb21lIHBvc3NpYmxlCiAgICAgIGZ1dHVyZSBleHBhbnNpb24uICBJdCBpcyBkZXNpZ25lZCB0byBob2xkIHZhcmlvdXMgdHlwZXMgb2YKICAgICAgZG9tYWluIG5hbWVzLCBpbmNsdWRpbmcgbmFtZXMgdXNlZCBmb3IgQSBvciBBQUFBIHJlY29yZHMKICAgICAgKGhvc3QgbmFtZXMpIGFuZCBvdGhlciByZWNvcmRzLCBzdWNoIGFzIFNSViByZWNvcmRzLiAgTm90ZQogICAgICB0aGF0IEludGVybmV0IGhvc3QgbmFtZXMgaGF2ZSBhIHN0cmljdGVyIHN5bnRheCAoZGVzY3JpYmVkCiAgICAgIGluIFJGQyA5NTIpIHRoYW4gdGhlIEROUyByZWNvbW1lbmRhdGlvbnMgaW4gUkZDcyAxMDM0IGFuZAogICAgICAxMTIzLCBhbmQgdGhhdCBzeXN0ZW1zIHRoYXQgd2FudCB0byBzdG9yZSBob3N0IG5hbWVzIGluCiAgICAgIHNjaGVtYSBub2RlcyB1c2luZyB0aGUgZG9tYWluLW5hbWUgdHlwZSBhcmUgcmVjb21tZW5kZWQgdG8KICAgICAgYWRoZXJlIHRvIHRoaXMgc3RyaWN0ZXIgc3RhbmRhcmQgdG8gZW5zdXJlIGludGVyb3BlcmFiaWxpdHkuCgogICAgICBUaGUgZW5jb2Rpbmcgb2YgRE5TIG5hbWVzIGluIHRoZSBETlMgcHJvdG9jb2wgaXMgbGltaXRlZAogICAgICB0byAyNTUgY2hhcmFjdGVycy4gIFNpbmNlIHRoZSBlbmNvZGluZyBjb25zaXN0cyBvZiBsYWJlbHMKICAgICAgcHJlZml4ZWQgYnkgYSBsZW5ndGggYnl0ZXMgYW5kIHRoZXJlIGlzIGEgdHJhaWxpbmcgTlVMTAogICAgICBieXRlLCBvbmx5IDI1MyBjaGFyYWN0ZXJzIGNhbiBhcHBlYXIgaW4gdGhlIHRleHR1YWwgZG90dGVkCiAgICAgIG5vdGF0aW9uLgoKICAgICAgVGhlIGRlc2NyaXB0aW9uIGNsYXVzZSBvZiBzY2hlbWEgbm9kZXMgdXNpbmcgdGhlIGRvbWFpbi1uYW1lCiAgICAgIHR5cGUgTVVTVCBkZXNjcmliZSB3aGVuIGFuZCBob3cgdGhlc2UgbmFtZXMgYXJlIHJlc29sdmVkIHRvCiAgICAgIElQIGFkZHJlc3Nlcy4gIE5vdGUgdGhhdCB0aGUgcmVzb2x1dGlvbiBvZiBhIGRvbWFpbi1uYW1lIHZhbHVlCiAgICAgIG1heSByZXF1aXJlIHRvIHF1ZXJ5IG11bHRpcGxlIEROUyByZWNvcmRzIChlLmcuLCBBIGZvciBJUHY0CiAgICAgIGFuZCBBQUFBIGZvciBJUHY2KS4gIFRoZSBvcmRlciBvZiB0aGUgcmVzb2x1dGlvbiBwcm9jZXNzIGFuZAogICAgICB3aGljaCBETlMgcmVjb3JkIHRha2VzIHByZWNlZGVuY2UgY2FuIGVpdGhlciBiZSBkZWZpbmVkCiAgICAgIGV4cGxpY2l0bHkgb3IgbWF5IGRlcGVuZCBvbiB0aGUgY29uZmlndXJhdGlvbiBvZiB0aGUKICAgICAgcmVzb2x2ZXIuCgogICAgICBEb21haW4tbmFtZSB2YWx1ZXMgdXNlIHRoZSBVUy1BU0NJSSBlbmNvZGluZy4gIFRoZWlyIGNhbm9uaWNhbAogICAgICBmb3JtYXQgdXNlcyBsb3dlcmNhc2UgVVMtQVNDSUkgY2hhcmFjdGVycy4gIEludGVybmF0aW9uYWxpemVkCiAgICAgIGRvbWFpbiBuYW1lcyBNVVNUIGJlIEEtbGFiZWxzIGFzIHBlciBSRkMgNTg5MC4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAgOTUyOiBEb0QgSW50ZXJuZXQgSG9zdCBUYWJsZSBTcGVjaWZpY2F0aW9uCiAgICAgIFJGQyAxMDM0OiBEb21haW4gTmFtZXMgLSBDb25jZXB0cyBhbmQgRmFjaWxpdGllcwogICAgICBSRkMgMTEyMzogUmVxdWlyZW1lbnRzIGZvciBJbnRlcm5ldCBIb3N0cyAtLSBBcHBsaWNhdGlvbgogICAgICAgICAgICAgICAgYW5kIFN1cHBvcnQKICAgICAgUkZDIDI3ODI6IEEgRE5TIFJSIGZvciBzcGVjaWZ5aW5nIHRoZSBsb2NhdGlvbiBvZiBzZXJ2aWNlcwogICAgICAgICAgICAgICAgKEROUyBTUlYpCiAgICAgIFJGQyA1ODkwOiBJbnRlcm5hdGlvbmFsaXplZCBEb21haW4gTmFtZXMgaW4gQXBwbGljYXRpb25zCiAgICAgICAgICAgICAgICAoSUROQSk6IERlZmluaXRpb25zIGFuZCBEb2N1bWVudCBGcmFtZXdvcmsiOwogIH0KCiAgdHlwZWRlZiBob3N0IHsKICAgIHR5cGUgdW5pb24gewogICAgICB0eXBlIGluZXQ6aXAtYWRkcmVzczsKICAgICAgdHlwZSBpbmV0OmRvbWFpbi1uYW1lOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGhvc3QgdHlwZSByZXByZXNlbnRzIGVpdGhlciBhbiBJUCBhZGRyZXNzIG9yIGEgRE5TCiAgICAgIGRvbWFpbiBuYW1lLiI7CiAgfQoKICB0eXBlZGVmIHVyaSB7CiAgICB0eXBlIHN0cmluZzsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSB1cmkgdHlwZSByZXByZXNlbnRzIGEgVW5pZm9ybSBSZXNvdXJjZSBJZGVudGlmaWVyCiAgICAgIChVUkkpIGFzIGRlZmluZWQgYnkgU1REIDY2LgoKICAgICAgT2JqZWN0cyB1c2luZyB0aGUgdXJpIHR5cGUgTVVTVCBiZSBpbiBVUy1BU0NJSSBlbmNvZGluZywKICAgICAgYW5kIE1VU1QgYmUgbm9ybWFsaXplZCBhcyBkZXNjcmliZWQgYnkgUkZDIDM5ODYgU2VjdGlvbnMKICAgICAgNi4yLjEsIDYuMi4yLjEsIGFuZCA2LjIuMi4yLiAgQWxsIHVubmVjZXNzYXJ5CiAgICAgIHBlcmNlbnQtZW5jb2RpbmcgaXMgcmVtb3ZlZCwgYW5kIGFsbCBjYXNlLWluc2Vuc2l0aXZlCiAgICAgIGNoYXJhY3RlcnMgYXJlIHNldCB0byBsb3dlcmNhc2UgZXhjZXB0IGZvciBoZXhhZGVjaW1hbAogICAgICBkaWdpdHMsIHdoaWNoIGFyZSBub3JtYWxpemVkIHRvIHVwcGVyY2FzZSBhcyBkZXNjcmliZWQgaW4KICAgICAgU2VjdGlvbiA2LjIuMi4xLgoKICAgICAgVGhlIHB1cnBvc2Ugb2YgdGhpcyBub3JtYWxpemF0aW9uIGlzIHRvIGhlbHAgcHJvdmlkZQogICAgICB1bmlxdWUgVVJJcy4gIE5vdGUgdGhhdCB0aGlzIG5vcm1hbGl6YXRpb24gaXMgbm90CiAgICAgIHN1ZmZpY2llbnQgdG8gcHJvdmlkZSB1bmlxdWVuZXNzLiAgVHdvIFVSSXMgdGhhdCBhcmUKICAgICAgdGV4dHVhbGx5IGRpc3RpbmN0IGFmdGVyIHRoaXMgbm9ybWFsaXphdGlvbiBtYXkgc3RpbGwgYmUKICAgICAgZXF1aXZhbGVudC4KCiAgICAgIE9iamVjdHMgdXNpbmcgdGhlIHVyaSB0eXBlIG1heSByZXN0cmljdCB0aGUgc2NoZW1lcyB0aGF0CiAgICAgIHRoZXkgcGVybWl0LiAgRm9yIGV4YW1wbGUsICdkYXRhOicgYW5kICd1cm46JyBzY2hlbWVzCiAgICAgIG1pZ2h0IG5vdCBiZSBhcHByb3ByaWF0ZS4KCiAgICAgIEEgemVyby1sZW5ndGggVVJJIGlzIG5vdCBhIHZhbGlkIFVSSS4gIFRoaXMgY2FuIGJlIHVzZWQgdG8KICAgICAgZXhwcmVzcyAnVVJJIGFic2VudCcgd2hlcmUgcmVxdWlyZWQuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgVXJpIFNNSXYyIHRleHR1YWwgY29udmVudGlvbiBkZWZpbmVkIGluIFJGQyA1MDE3LiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDM5ODY6IFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllciAoVVJJKTogR2VuZXJpYyBTeW50YXgKICAgICAgUkZDIDMzMDU6IFJlcG9ydCBmcm9tIHRoZSBKb2ludCBXM0MvSUVURiBVUkkgUGxhbm5pbmcgSW50ZXJlc3QKICAgICAgICAgICAgICAgIEdyb3VwOiBVbmlmb3JtIFJlc291cmNlIElkZW50aWZpZXJzIChVUklzKSwgVVJMcywKICAgICAgICAgICAgICAgIGFuZCBVbmlmb3JtIFJlc291cmNlIE5hbWVzIChVUk5zKTogQ2xhcmlmaWNhdGlvbnMKICAgICAgICAgICAgICAgIGFuZCBSZWNvbW1lbmRhdGlvbnMKICAgICAgUkZDIDUwMTc6IE1JQiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBVbmlmb3JtIFJlc291cmNlCiAgICAgICAgICAgICAgICBJZGVudGlmaWVycyAoVVJJcykiOwogIH0KCn0K
ietf-yang-types urn:ietf:params:xml:ns:yang:ietf-yang-types \N [] 2013-07-15 bW9kdWxlIGlldGYteWFuZy10eXBlcyB7CgogIG5hbWVzcGFjZSAidXJuOmlldGY6cGFyYW1zOnhtbDpuczp5YW5nOmlldGYteWFuZy10eXBlcyI7CiAgcHJlZml4ICJ5YW5nIjsKCiAgb3JnYW5pemF0aW9uCiAgICJJRVRGIE5FVE1PRCAoTkVUQ09ORiBEYXRhIE1vZGVsaW5nIExhbmd1YWdlKSBXb3JraW5nIEdyb3VwIjsKCiAgY29udGFjdAogICAiV0cgV2ViOiAgIDxodHRwOi8vdG9vbHMuaWV0Zi5vcmcvd2cvbmV0bW9kLz4KICAgIFdHIExpc3Q6ICA8bWFpbHRvOm5ldG1vZEBpZXRmLm9yZz4KCiAgICBXRyBDaGFpcjogRGF2aWQgS2Vzc2VucwogICAgICAgICAgICAgIDxtYWlsdG86ZGF2aWQua2Vzc2Vuc0Buc24uY29tPgoKICAgIFdHIENoYWlyOiBKdWVyZ2VuIFNjaG9lbndhZWxkZXIKICAgICAgICAgICAgICA8bWFpbHRvOmouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZT4KCiAgICBFZGl0b3I6ICAgSnVlcmdlbiBTY2hvZW53YWVsZGVyCiAgICAgICAgICAgICAgPG1haWx0bzpqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGU+IjsKCiAgZGVzY3JpcHRpb24KICAgIlRoaXMgbW9kdWxlIGNvbnRhaW5zIGEgY29sbGVjdGlvbiBvZiBnZW5lcmFsbHkgdXNlZnVsIGRlcml2ZWQKICAgIFlBTkcgZGF0YSB0eXBlcy4KCiAgICBDb3B5cmlnaHQgKGMpIDIwMTMgSUVURiBUcnVzdCBhbmQgdGhlIHBlcnNvbnMgaWRlbnRpZmllZCBhcwogICAgYXV0aG9ycyBvZiB0aGUgY29kZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvcgogICAgd2l0aG91dCBtb2RpZmljYXRpb24sIGlzIHBlcm1pdHRlZCBwdXJzdWFudCB0bywgYW5kIHN1YmplY3QKICAgIHRvIHRoZSBsaWNlbnNlIHRlcm1zIGNvbnRhaW5lZCBpbiwgdGhlIFNpbXBsaWZpZWQgQlNEIExpY2Vuc2UKICAgIHNldCBmb3J0aCBpbiBTZWN0aW9uIDQuYyBvZiB0aGUgSUVURiBUcnVzdCdzIExlZ2FsIFByb3Zpc2lvbnMKICAgIFJlbGF0aW5nIHRvIElFVEYgRG9jdW1lbnRzCiAgICAoaHR0cDovL3RydXN0ZWUuaWV0Zi5vcmcvbGljZW5zZS1pbmZvKS4KCiAgICBUaGlzIHZlcnNpb24gb2YgdGhpcyBZQU5HIG1vZHVsZSBpcyBwYXJ0IG9mIFJGQyA2OTkxOyBzZWUKICAgIHRoZSBSRkMgaXRzZWxmIGZvciBmdWxsIGxlZ2FsIG5vdGljZXMuIjsKCiAgcmV2aXNpb24gMjAxMy0wNy0xNSB7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGlzIHJldmlzaW9uIGFkZHMgdGhlIGZvbGxvd2luZyBuZXcgZGF0YSB0eXBlczoKICAgICAgLSB5YW5nLWlkZW50aWZpZXIKICAgICAgLSBoZXgtc3RyaW5nCiAgICAgIC0gdXVpZAogICAgICAtIGRvdHRlZC1xdWFkIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjk5MTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICByZXZpc2lvbiAyMDEwLTA5LTI0IHsKICAgIGRlc2NyaXB0aW9uCiAgICAgIkluaXRpYWwgcmV2aXNpb24uIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjAyMTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgY291bnRlciBhbmQgZ2F1Z2UgdHlwZXMgKioqLwoKICB0eXBlZGVmIGNvdW50ZXIzMiB7CiAgICB0eXBlIHVpbnQzMjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBjb3VudGVyMzIgdHlwZSByZXByZXNlbnRzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIKICAgICAgdGhhdCBtb25vdG9uaWNhbGx5IGluY3JlYXNlcyB1bnRpbCBpdCByZWFjaGVzIGEKICAgICAgbWF4aW11bSB2YWx1ZSBvZiAyXjMyLTEgKDQyOTQ5NjcyOTUgZGVjaW1hbCksIHdoZW4gaXQKICAgICAgd3JhcHMgYXJvdW5kIGFuZCBzdGFydHMgaW5jcmVhc2luZyBhZ2FpbiBmcm9tIHplcm8uCgogICAgICBDb3VudGVycyBoYXZlIG5vIGRlZmluZWQgJ2luaXRpYWwnIHZhbHVlLCBhbmQgdGh1cywgYQogICAgICBzaW5nbGUgdmFsdWUgb2YgYSBjb3VudGVyIGhhcyAoaW4gZ2VuZXJhbCkgbm8gaW5mb3JtYXRpb24KICAgICAgY29udGVudC4gIERpc2NvbnRpbnVpdGllcyBpbiB0aGUgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nCiAgICAgIHZhbHVlIG5vcm1hbGx5IG9jY3VyIGF0IHJlLWluaXRpYWxpemF0aW9uIG9mIHRoZQogICAgICBtYW5hZ2VtZW50IHN5c3RlbSwgYW5kIGF0IG90aGVyIHRpbWVzIGFzIHNwZWNpZmllZCBpbiB0aGUKICAgICAgZGVzY3JpcHRpb24gb2YgYSBzY2hlbWEgbm9kZSB1c2luZyB0aGlzIHR5cGUuICBJZiBzdWNoCiAgICAgIG90aGVyIHRpbWVzIGNhbiBvY2N1ciwgZm9yIGV4YW1wbGUsIHRoZSBjcmVhdGlvbiBvZgogICAgICBhIHNjaGVtYSBub2RlIG9mIHR5cGUgY291bnRlcjMyIGF0IHRpbWVzIG90aGVyIHRoYW4KICAgICAgcmUtaW5pdGlhbGl6YXRpb24sIHRoZW4gYSBjb3JyZXNwb25kaW5nIHNjaGVtYSBub2RlCiAgICAgIHNob3VsZCBiZSBkZWZpbmVkLCB3aXRoIGFuIGFwcHJvcHJpYXRlIHR5cGUsIHRvIGluZGljYXRlCiAgICAgIHRoZSBsYXN0IGRpc2NvbnRpbnVpdHkuCgogICAgICBUaGUgY291bnRlcjMyIHR5cGUgc2hvdWxkIG5vdCBiZSB1c2VkIGZvciBjb25maWd1cmF0aW9uCiAgICAgIHNjaGVtYSBub2Rlcy4gIEEgZGVmYXVsdCBzdGF0ZW1lbnQgU0hPVUxEIE5PVCBiZSB1c2VkIGluCiAgICAgIGNvbWJpbmF0aW9uIHdpdGggdGhlIHR5cGUgY291bnRlcjMyLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIENvdW50ZXIzMiB0eXBlIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyNTc4OiBTdHJ1Y3R1cmUgb2YgTWFuYWdlbWVudCBJbmZvcm1hdGlvbiBWZXJzaW9uIDIKICAgICAgICAgICAgICAgIChTTUl2MikiOwogIH0KCiAgdHlwZWRlZiB6ZXJvLWJhc2VkLWNvdW50ZXIzMiB7CiAgICB0eXBlIHlhbmc6Y291bnRlcjMyOwogICAgZGVmYXVsdCAiMCI7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgemVyby1iYXNlZC1jb3VudGVyMzIgdHlwZSByZXByZXNlbnRzIGEgY291bnRlcjMyCiAgICAgIHRoYXQgaGFzIHRoZSBkZWZpbmVkICdpbml0aWFsJyB2YWx1ZSB6ZXJvLgoKICAgICAgQSBzY2hlbWEgbm9kZSBvZiB0aGlzIHR5cGUgd2lsbCBiZSBzZXQgdG8gemVybyAoMCkgb24gY3JlYXRpb24KICAgICAgYW5kIHdpbGwgdGhlcmVhZnRlciBpbmNyZWFzZSBtb25vdG9uaWNhbGx5IHVudGlsIGl0IHJlYWNoZXMKICAgICAgYSBtYXhpbXVtIHZhbHVlIG9mIDJeMzItMSAoNDI5NDk2NzI5NSBkZWNpbWFsKSwgd2hlbiBpdAogICAgICB3cmFwcyBhcm91bmQgYW5kIHN0YXJ0cyBpbmNyZWFzaW5nIGFnYWluIGZyb20gemVyby4KCiAgICAgIFByb3ZpZGVkIHRoYXQgYW4gYXBwbGljYXRpb24gZGlzY292ZXJzIGEgbmV3IHNjaGVtYSBub2RlCiAgICAgIG9mIHRoaXMgdHlwZSB3aXRoaW4gdGhlIG1pbmltdW0gdGltZSB0byB3cmFwLCBpdCBjYW4gdXNlIHRoZQogICAgICAnaW5pdGlhbCcgdmFsdWUgYXMgYSBkZWx0YS4gIEl0IGlzIGltcG9ydGFudCBmb3IgYSBtYW5hZ2VtZW50CiAgICAgIHN0YXRpb24gdG8gYmUgYXdhcmUgb2YgdGhpcyBtaW5pbXVtIHRpbWUgYW5kIHRoZSBhY3R1YWwgdGltZQogICAgICBiZXR3ZWVuIHBvbGxzLCBhbmQgdG8gZGlzY2FyZCBkYXRhIGlmIHRoZSBhY3R1YWwgdGltZSBpcyB0b28KICAgICAgbG9uZyBvciB0aGVyZSBpcyBubyBkZWZpbmVkIG1pbmltdW0gdGltZS4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBaZXJvQmFzZWRDb3VudGVyMzIgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgICJSRkMgNDUwMjogUmVtb3RlIE5ldHdvcmsgTW9uaXRvcmluZyBNYW5hZ2VtZW50IEluZm9ybWF0aW9uCiAgICAgICAgICAgICAgICAgQmFzZSBWZXJzaW9uIDIiOwogIH0KCiAgdHlwZWRlZiBjb3VudGVyNjQgewogICAgdHlwZSB1aW50NjQ7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgY291bnRlcjY0IHR5cGUgcmVwcmVzZW50cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyCiAgICAgIHRoYXQgbW9ub3RvbmljYWxseSBpbmNyZWFzZXMgdW50aWwgaXQgcmVhY2hlcyBhCiAgICAgIG1heGltdW0gdmFsdWUgb2YgMl42NC0xICgxODQ0Njc0NDA3MzcwOTU1MTYxNSBkZWNpbWFsKSwKICAgICAgd2hlbiBpdCB3cmFwcyBhcm91bmQgYW5kIHN0YXJ0cyBpbmNyZWFzaW5nIGFnYWluIGZyb20gemVyby4KCiAgICAgIENvdW50ZXJzIGhhdmUgbm8gZGVmaW5lZCAnaW5pdGlhbCcgdmFsdWUsIGFuZCB0aHVzLCBhCiAgICAgIHNpbmdsZSB2YWx1ZSBvZiBhIGNvdW50ZXIgaGFzIChpbiBnZW5lcmFsKSBubyBpbmZvcm1hdGlvbgogICAgICBjb250ZW50LiAgRGlzY29udGludWl0aWVzIGluIHRoZSBtb25vdG9uaWNhbGx5IGluY3JlYXNpbmcKICAgICAgdmFsdWUgbm9ybWFsbHkgb2NjdXIgYXQgcmUtaW5pdGlhbGl6YXRpb24gb2YgdGhlCiAgICAgIG1hbmFnZW1lbnQgc3lzdGVtLCBhbmQgYXQgb3RoZXIgdGltZXMgYXMgc3BlY2lmaWVkIGluIHRoZQogICAgICBkZXNjcmlwdGlvbiBvZiBhIHNjaGVtYSBub2RlIHVzaW5nIHRoaXMgdHlwZS4gIElmIHN1Y2gKICAgICAgb3RoZXIgdGltZXMgY2FuIG9jY3VyLCBmb3IgZXhhbXBsZSwgdGhlIGNyZWF0aW9uIG9mCiAgICAgIGEgc2NoZW1hIG5vZGUgb2YgdHlwZSBjb3VudGVyNjQgYXQgdGltZXMgb3RoZXIgdGhhbgogICAgICByZS1pbml0aWFsaXphdGlvbiwgdGhlbiBhIGNvcnJlc3BvbmRpbmcgc2NoZW1hIG5vZGUKICAgICAgc2hvdWxkIGJlIGRlZmluZWQsIHdpdGggYW4gYXBwcm9wcmlhdGUgdHlwZSwgdG8gaW5kaWNhdGUKICAgICAgdGhlIGxhc3QgZGlzY29udGludWl0eS4KCiAgICAgIFRoZSBjb3VudGVyNjQgdHlwZSBzaG91bGQgbm90IGJlIHVzZWQgZm9yIGNvbmZpZ3VyYXRpb24KICAgICAgc2NoZW1hIG5vZGVzLiAgQSBkZWZhdWx0IHN0YXRlbWVudCBTSE9VTEQgTk9UIGJlIHVzZWQgaW4KICAgICAgY29tYmluYXRpb24gd2l0aCB0aGUgdHlwZSBjb3VudGVyNjQuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgQ291bnRlcjY0IHR5cGUgb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDI1Nzg6IFN0cnVjdHVyZSBvZiBNYW5hZ2VtZW50IEluZm9ybWF0aW9uIFZlcnNpb24gMgogICAgICAgICAgICAgICAgKFNNSXYyKSI7CiAgfQoKICB0eXBlZGVmIHplcm8tYmFzZWQtY291bnRlcjY0IHsKICAgIHR5cGUgeWFuZzpjb3VudGVyNjQ7CiAgICBkZWZhdWx0ICIwIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSB6ZXJvLWJhc2VkLWNvdW50ZXI2NCB0eXBlIHJlcHJlc2VudHMgYSBjb3VudGVyNjQgdGhhdAogICAgICBoYXMgdGhlIGRlZmluZWQgJ2luaXRpYWwnIHZhbHVlIHplcm8uCgogICAgICBBIHNjaGVtYSBub2RlIG9mIHRoaXMgdHlwZSB3aWxsIGJlIHNldCB0byB6ZXJvICgwKSBvbiBjcmVhdGlvbgogICAgICBhbmQgd2lsbCB0aGVyZWFmdGVyIGluY3JlYXNlIG1vbm90b25pY2FsbHkgdW50aWwgaXQgcmVhY2hlcwogICAgICBhIG1heGltdW0gdmFsdWUgb2YgMl42NC0xICgxODQ0Njc0NDA3MzcwOTU1MTYxNSBkZWNpbWFsKSwKICAgICAgd2hlbiBpdCB3cmFwcyBhcm91bmQgYW5kIHN0YXJ0cyBpbmNyZWFzaW5nIGFnYWluIGZyb20gemVyby4KCiAgICAgIFByb3ZpZGVkIHRoYXQgYW4gYXBwbGljYXRpb24gZGlzY292ZXJzIGEgbmV3IHNjaGVtYSBub2RlCiAgICAgIG9mIHRoaXMgdHlwZSB3aXRoaW4gdGhlIG1pbmltdW0gdGltZSB0byB3cmFwLCBpdCBjYW4gdXNlIHRoZQogICAgICAnaW5pdGlhbCcgdmFsdWUgYXMgYSBkZWx0YS4gIEl0IGlzIGltcG9ydGFudCBmb3IgYSBtYW5hZ2VtZW50CiAgICAgIHN0YXRpb24gdG8gYmUgYXdhcmUgb2YgdGhpcyBtaW5pbXVtIHRpbWUgYW5kIHRoZSBhY3R1YWwgdGltZQogICAgICBiZXR3ZWVuIHBvbGxzLCBhbmQgdG8gZGlzY2FyZCBkYXRhIGlmIHRoZSBhY3R1YWwgdGltZSBpcyB0b28KICAgICAgbG9uZyBvciB0aGVyZSBpcyBubyBkZWZpbmVkIG1pbmltdW0gdGltZS4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBaZXJvQmFzZWRDb3VudGVyNjQgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyODU2OiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBBZGRpdGlvbmFsIEhpZ2ggQ2FwYWNpdHkKICAgICAgICAgICAgICAgIERhdGEgVHlwZXMiOwogIH0KCiAgdHlwZWRlZiBnYXVnZTMyIHsKICAgIHR5cGUgdWludDMyOwogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGdhdWdlMzIgdHlwZSByZXByZXNlbnRzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIsIHdoaWNoCiAgICAgIG1heSBpbmNyZWFzZSBvciBkZWNyZWFzZSwgYnV0IHNoYWxsIG5ldmVyIGV4Y2VlZCBhIG1heGltdW0KICAgICAgdmFsdWUsIG5vciBmYWxsIGJlbG93IGEgbWluaW11bSB2YWx1ZS4gIFRoZSBtYXhpbXVtIHZhbHVlCiAgICAgIGNhbm5vdCBiZSBncmVhdGVyIHRoYW4gMl4zMi0xICg0Mjk0OTY3Mjk1IGRlY2ltYWwpLCBhbmQKICAgICAgdGhlIG1pbmltdW0gdmFsdWUgY2Fubm90IGJlIHNtYWxsZXIgdGhhbiAwLiAgVGhlIHZhbHVlIG9mCiAgICAgIGEgZ2F1Z2UzMiBoYXMgaXRzIG1heGltdW0gdmFsdWUgd2hlbmV2ZXIgdGhlIGluZm9ybWF0aW9uCiAgICAgIGJlaW5nIG1vZGVsZWQgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIGl0cyBtYXhpbXVtCiAgICAgIHZhbHVlLCBhbmQgaGFzIGl0cyBtaW5pbXVtIHZhbHVlIHdoZW5ldmVyIHRoZSBpbmZvcm1hdGlvbgogICAgICBiZWluZyBtb2RlbGVkIGlzIHNtYWxsZXIgdGhhbiBvciBlcXVhbCB0byBpdHMgbWluaW11bSB2YWx1ZS4KICAgICAgSWYgdGhlIGluZm9ybWF0aW9uIGJlaW5nIG1vZGVsZWQgc3Vic2VxdWVudGx5IGRlY3JlYXNlcwogICAgICBiZWxvdyAoaW5jcmVhc2VzIGFib3ZlKSB0aGUgbWF4aW11bSAobWluaW11bSkgdmFsdWUsIHRoZQogICAgICBnYXVnZTMyIGFsc28gZGVjcmVhc2VzIChpbmNyZWFzZXMpLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIEdhdWdlMzIgdHlwZSBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMjU3ODogU3RydWN0dXJlIG9mIE1hbmFnZW1lbnQgSW5mb3JtYXRpb24gVmVyc2lvbiAyCiAgICAgICAgICAgICAgICAoU01JdjIpIjsKICB9CgogIHR5cGVkZWYgZ2F1Z2U2NCB7CiAgICB0eXBlIHVpbnQ2NDsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBnYXVnZTY0IHR5cGUgcmVwcmVzZW50cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyLCB3aGljaAogICAgICBtYXkgaW5jcmVhc2Ugb3IgZGVjcmVhc2UsIGJ1dCBzaGFsbCBuZXZlciBleGNlZWQgYSBtYXhpbXVtCiAgICAgIHZhbHVlLCBub3IgZmFsbCBiZWxvdyBhIG1pbmltdW0gdmFsdWUuICBUaGUgbWF4aW11bSB2YWx1ZQogICAgICBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIDJeNjQtMSAoMTg0NDY3NDQwNzM3MDk1NTE2MTUpLCBhbmQKICAgICAgdGhlIG1pbmltdW0gdmFsdWUgY2Fubm90IGJlIHNtYWxsZXIgdGhhbiAwLiAgVGhlIHZhbHVlIG9mCiAgICAgIGEgZ2F1Z2U2NCBoYXMgaXRzIG1heGltdW0gdmFsdWUgd2hlbmV2ZXIgdGhlIGluZm9ybWF0aW9uCiAgICAgIGJlaW5nIG1vZGVsZWQgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIGl0cyBtYXhpbXVtCiAgICAgIHZhbHVlLCBhbmQgaGFzIGl0cyBtaW5pbXVtIHZhbHVlIHdoZW5ldmVyIHRoZSBpbmZvcm1hdGlvbgogICAgICBiZWluZyBtb2RlbGVkIGlzIHNtYWxsZXIgdGhhbiBvciBlcXVhbCB0byBpdHMgbWluaW11bSB2YWx1ZS4KICAgICAgSWYgdGhlIGluZm9ybWF0aW9uIGJlaW5nIG1vZGVsZWQgc3Vic2VxdWVudGx5IGRlY3JlYXNlcwogICAgICBiZWxvdyAoaW5jcmVhc2VzIGFib3ZlKSB0aGUgbWF4aW11bSAobWluaW11bSkgdmFsdWUsIHRoZQogICAgICBnYXVnZTY0IGFsc28gZGVjcmVhc2VzIChpbmNyZWFzZXMpLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIENvdW50ZXJCYXNlZEdhdWdlNjQgU01JdjIgdGV4dHVhbCBjb252ZW50aW9uIGRlZmluZWQKICAgICAgaW4gUkZDIDI4NTYiOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyODU2OiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBBZGRpdGlvbmFsIEhpZ2ggQ2FwYWNpdHkKICAgICAgICAgICAgICAgIERhdGEgVHlwZXMiOwogIH0KCiAgLyoqKiBjb2xsZWN0aW9uIG9mIGlkZW50aWZpZXItcmVsYXRlZCB0eXBlcyAqKiovCgogIHR5cGVkZWYgb2JqZWN0LWlkZW50aWZpZXIgewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuICcoKFswLTFdKFwuWzEtM10/WzAtOV0pKXwoMlwuKDB8KFsxLTldXGQqKSkpKScKICAgICAgICAgICAgKyAnKFwuKDB8KFsxLTldXGQqKSkpKic7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgb2JqZWN0LWlkZW50aWZpZXIgdHlwZSByZXByZXNlbnRzIGFkbWluaXN0cmF0aXZlbHkKICAgICAgYXNzaWduZWQgbmFtZXMgaW4gYSByZWdpc3RyYXRpb24taGllcmFyY2hpY2FsLW5hbWUgdHJlZS4KCiAgICAgIFZhbHVlcyBvZiB0aGlzIHR5cGUgYXJlIGRlbm90ZWQgYXMgYSBzZXF1ZW5jZSBvZiBudW1lcmljYWwKICAgICAgbm9uLW5lZ2F0aXZlIHN1Yi1pZGVudGlmaWVyIHZhbHVlcy4gIEVhY2ggc3ViLWlkZW50aWZpZXIKICAgICAgdmFsdWUgTVVTVCBOT1QgZXhjZWVkIDJeMzItMSAoNDI5NDk2NzI5NSkuICBTdWItaWRlbnRpZmllcnMKICAgICAgYXJlIHNlcGFyYXRlZCBieSBzaW5nbGUgZG90cyBhbmQgd2l0aG91dCBhbnkgaW50ZXJtZWRpYXRlCiAgICAgIHdoaXRlc3BhY2UuCgogICAgICBUaGUgQVNOLjEgc3RhbmRhcmQgcmVzdHJpY3RzIHRoZSB2YWx1ZSBzcGFjZSBvZiB0aGUgZmlyc3QKICAgICAgc3ViLWlkZW50aWZpZXIgdG8gMCwgMSwgb3IgMi4gIEZ1cnRoZXJtb3JlLCB0aGUgdmFsdWUgc3BhY2UKICAgICAgb2YgdGhlIHNlY29uZCBzdWItaWRlbnRpZmllciBpcyByZXN0cmljdGVkIHRvIHRoZSByYW5nZQogICAgICAwIHRvIDM5IGlmIHRoZSBmaXJzdCBzdWItaWRlbnRpZmllciBpcyAwIG9yIDEuICBGaW5hbGx5LAogICAgICB0aGUgQVNOLjEgc3RhbmRhcmQgcmVxdWlyZXMgdGhhdCBhbiBvYmplY3QgaWRlbnRpZmllcgogICAgICBoYXMgYWx3YXlzIGF0IGxlYXN0IHR3byBzdWItaWRlbnRpZmllcnMuICBUaGUgcGF0dGVybgogICAgICBjYXB0dXJlcyB0aGVzZSByZXN0cmljdGlvbnMuCgogICAgICBBbHRob3VnaCB0aGUgbnVtYmVyIG9mIHN1Yi1pZGVudGlmaWVycyBpcyBub3QgbGltaXRlZCwKICAgICAgbW9kdWxlIGRlc2lnbmVycyBzaG91bGQgcmVhbGl6ZSB0aGF0IHRoZXJlIG1heSBiZQogICAgICBpbXBsZW1lbnRhdGlvbnMgdGhhdCBzdGljayB3aXRoIHRoZSBTTUl2MiBsaW1pdCBvZiAxMjgKICAgICAgc3ViLWlkZW50aWZpZXJzLgoKICAgICAgVGhpcyB0eXBlIGlzIGEgc3VwZXJzZXQgb2YgdGhlIFNNSXYyIE9CSkVDVCBJREVOVElGSUVSIHR5cGUKICAgICAgc2luY2UgaXQgaXMgbm90IHJlc3RyaWN0ZWQgdG8gMTI4IHN1Yi1pZGVudGlmaWVycy4gIEhlbmNlLAogICAgICB0aGlzIHR5cGUgU0hPVUxEIE5PVCBiZSB1c2VkIHRvIHJlcHJlc2VudCB0aGUgU01JdjIgT0JKRUNUCiAgICAgIElERU5USUZJRVIgdHlwZTsgdGhlIG9iamVjdC1pZGVudGlmaWVyLTEyOCB0eXBlIFNIT1VMRCBiZQogICAgICB1c2VkIGluc3RlYWQuIjsKICAgIHJlZmVyZW5jZQogICAgICJJU085ODM0LTE6IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kgLS0gT3BlbiBTeXN0ZW1zCiAgICAgIEludGVyY29ubmVjdGlvbiAtLSBQcm9jZWR1cmVzIGZvciB0aGUgb3BlcmF0aW9uIG9mIE9TSQogICAgICBSZWdpc3RyYXRpb24gQXV0aG9yaXRpZXM6IEdlbmVyYWwgcHJvY2VkdXJlcyBhbmQgdG9wCiAgICAgIGFyY3Mgb2YgdGhlIEFTTi4xIE9iamVjdCBJZGVudGlmaWVyIHRyZWUiOwogIH0KCiAgdHlwZWRlZiBvYmplY3QtaWRlbnRpZmllci0xMjggewogICAgdHlwZSBvYmplY3QtaWRlbnRpZmllciB7CiAgICAgIHBhdHRlcm4gJ1xkKihcLlxkKil7MSwxMjd9JzsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoaXMgdHlwZSByZXByZXNlbnRzIG9iamVjdC1pZGVudGlmaWVycyByZXN0cmljdGVkIHRvIDEyOAogICAgICBzdWItaWRlbnRpZmllcnMuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgT0JKRUNUIElERU5USUZJRVIgdHlwZSBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMjU3ODogU3RydWN0dXJlIG9mIE1hbmFnZW1lbnQgSW5mb3JtYXRpb24gVmVyc2lvbiAyCiAgICAgICAgICAgICAgICAoU01JdjIpIjsKICB9CgogIHR5cGVkZWYgeWFuZy1pZGVudGlmaWVyIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgbGVuZ3RoICIxLi5tYXgiOwogICAgICBwYXR0ZXJuICdbYS16QS1aX11bYS16QS1aMC05XC1fLl0qJzsKICAgICAgcGF0dGVybiAnLnwuLnxbXnhYXS4qfC5bXm1NXS4qfC4uW15sTF0uKic7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICAiQSBZQU5HIGlkZW50aWZpZXIgc3RyaW5nIGFzIGRlZmluZWQgYnkgdGhlICdpZGVudGlmaWVyJwogICAgICAgcnVsZSBpbiBTZWN0aW9uIDEyIG9mIFJGQyA2MDIwLiAgQW4gaWRlbnRpZmllciBtdXN0CiAgICAgICBzdGFydCB3aXRoIGFuIGFscGhhYmV0aWMgY2hhcmFjdGVyIG9yIGFuIHVuZGVyc2NvcmUKICAgICAgIGZvbGxvd2VkIGJ5IGFuIGFyYml0cmFyeSBzZXF1ZW5jZSBvZiBhbHBoYWJldGljIG9yCiAgICAgICBudW1lcmljIGNoYXJhY3RlcnMsIHVuZGVyc2NvcmVzLCBoeXBoZW5zLCBvciBkb3RzLgoKICAgICAgIEEgWUFORyBpZGVudGlmaWVyIE1VU1QgTk9UIHN0YXJ0IHdpdGggYW55IHBvc3NpYmxlCiAgICAgICBjb21iaW5hdGlvbiBvZiB0aGUgbG93ZXJjYXNlIG9yIHVwcGVyY2FzZSBjaGFyYWN0ZXIKICAgICAgIHNlcXVlbmNlICd4bWwnLiI7CiAgICByZWZlcmVuY2UKICAgICAgIlJGQyA2MDIwOiBZQU5HIC0gQSBEYXRhIE1vZGVsaW5nIExhbmd1YWdlIGZvciB0aGUgTmV0d29yawogICAgICAgICAgICAgICAgIENvbmZpZ3VyYXRpb24gUHJvdG9jb2wgKE5FVENPTkYpIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiB0eXBlcyByZWxhdGVkIHRvIGRhdGUgYW5kIHRpbWUqKiovCgogIHR5cGVkZWYgZGF0ZS1hbmQtdGltZSB7CiAgICB0eXBlIHN0cmluZyB7CiAgICAgIHBhdHRlcm4gJ1xkezR9LVxkezJ9LVxkezJ9VFxkezJ9OlxkezJ9OlxkezJ9KFwuXGQrKT8nCiAgICAgICAgICAgICsgJyhafFtcK1wtXVxkezJ9OlxkezJ9KSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgZGF0ZS1hbmQtdGltZSB0eXBlIGlzIGEgcHJvZmlsZSBvZiB0aGUgSVNPIDg2MDEKICAgICAgc3RhbmRhcmQgZm9yIHJlcHJlc2VudGF0aW9uIG9mIGRhdGVzIGFuZCB0aW1lcyB1c2luZyB0aGUKICAgICAgR3JlZ29yaWFuIGNhbGVuZGFyLiAgVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBieSB0aGUKICAgICAgZGF0ZS10aW1lIHByb2R1Y3Rpb24gaW4gU2VjdGlvbiA1LjYgb2YgUkZDIDMzMzkuCgogICAgICBUaGUgZGF0ZS1hbmQtdGltZSB0eXBlIGlzIGNvbXBhdGlibGUgd2l0aCB0aGUgZGF0ZVRpbWUgWE1MCiAgICAgIHNjaGVtYSB0eXBlIHdpdGggdGhlIGZvbGxvd2luZyBub3RhYmxlIGV4Y2VwdGlvbnM6CgogICAgICAoYSkgVGhlIGRhdGUtYW5kLXRpbWUgdHlwZSBkb2VzIG5vdCBhbGxvdyBuZWdhdGl2ZSB5ZWFycy4KCiAgICAgIChiKSBUaGUgZGF0ZS1hbmQtdGltZSB0aW1lLW9mZnNldCAtMDA6MDAgaW5kaWNhdGVzIGFuIHVua25vd24KICAgICAgICAgIHRpbWUgem9uZSAoc2VlIFJGQyAzMzM5KSB3aGlsZSAtMDA6MDAgYW5kICswMDowMCBhbmQgWgogICAgICAgICAgYWxsIHJlcHJlc2VudCB0aGUgc2FtZSB0aW1lIHpvbmUgaW4gZGF0ZVRpbWUuCgogICAgICAoYykgVGhlIGNhbm9uaWNhbCBmb3JtYXQgKHNlZSBiZWxvdykgb2YgZGF0YS1hbmQtdGltZSB2YWx1ZXMKICAgICAgICAgIGRpZmZlcnMgZnJvbSB0aGUgY2Fub25pY2FsIGZvcm1hdCB1c2VkIGJ5IHRoZSBkYXRlVGltZSBYTUwKICAgICAgICAgIHNjaGVtYSB0eXBlLCB3aGljaCByZXF1aXJlcyBhbGwgdGltZXMgdG8gYmUgaW4gVVRDIHVzaW5nCiAgICAgICAgICB0aGUgdGltZS1vZmZzZXQgJ1onLgoKICAgICAgVGhpcyB0eXBlIGlzIG5vdCBlcXVpdmFsZW50IHRvIHRoZSBEYXRlQW5kVGltZSB0ZXh0dWFsCiAgICAgIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyIHNpbmNlIFJGQyAzMzM5IHVzZXMgYSBkaWZmZXJlbnQKICAgICAgc2VwYXJhdG9yIGJldHdlZW4gZnVsbC1kYXRlIGFuZCBmdWxsLXRpbWUgYW5kIHByb3ZpZGVzCiAgICAgIGhpZ2hlciByZXNvbHV0aW9uIG9mIHRpbWUtc2VjZnJhYy4KCiAgICAgIFRoZSBjYW5vbmljYWwgZm9ybWF0IGZvciBkYXRlLWFuZC10aW1lIHZhbHVlcyB3aXRoIGEga25vd24gdGltZQogICAgICB6b25lIHVzZXMgYSBudW1lcmljIHRpbWUgem9uZSBvZmZzZXQgdGhhdCBpcyBjYWxjdWxhdGVkIHVzaW5nCiAgICAgIHRoZSBkZXZpY2UncyBjb25maWd1cmVkIGtub3duIG9mZnNldCB0byBVVEMgdGltZS4gIEEgY2hhbmdlIG9mCiAgICAgIHRoZSBkZXZpY2UncyBvZmZzZXQgdG8gVVRDIHRpbWUgd2lsbCBjYXVzZSBkYXRlLWFuZC10aW1lIHZhbHVlcwogICAgICB0byBjaGFuZ2UgYWNjb3JkaW5nbHkuICBTdWNoIGNoYW5nZXMgbWlnaHQgaGFwcGVuIHBlcmlvZGljYWxseQogICAgICBpbiBjYXNlIGEgc2VydmVyIGZvbGxvd3MgYXV0b21hdGljYWxseSBkYXlsaWdodCBzYXZpbmcgdGltZQogICAgICAoRFNUKSB0aW1lIHpvbmUgb2Zmc2V0IGNoYW5nZXMuICBUaGUgY2Fub25pY2FsIGZvcm1hdCBmb3IKICAgICAgZGF0ZS1hbmQtdGltZSB2YWx1ZXMgd2l0aCBhbiB1bmtub3duIHRpbWUgem9uZSAodXN1YWxseQogICAgICByZWZlcnJpbmcgdG8gdGhlIG5vdGlvbiBvZiBsb2NhbCB0aW1lKSB1c2VzIHRoZSB0aW1lLW9mZnNldAogICAgICAtMDA6MDAuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMzMzOTogRGF0ZSBhbmQgVGltZSBvbiB0aGUgSW50ZXJuZXQ6IFRpbWVzdGFtcHMKICAgICAgUkZDIDI1Nzk6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIFNNSXYyCiAgICAgIFhTRC1UWVBFUzogWE1MIFNjaGVtYSBQYXJ0IDI6IERhdGF0eXBlcyBTZWNvbmQgRWRpdGlvbiI7CiAgfQoKICB0eXBlZGVmIHRpbWV0aWNrcyB7CiAgICB0eXBlIHVpbnQzMjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSB0aW1ldGlja3MgdHlwZSByZXByZXNlbnRzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIgdGhhdAogICAgICByZXByZXNlbnRzIHRoZSB0aW1lLCBtb2R1bG8gMl4zMiAoNDI5NDk2NzI5NiBkZWNpbWFsKSwgaW4KICAgICAgaHVuZHJlZHRocyBvZiBhIHNlY29uZCBiZXR3ZWVuIHR3byBlcG9jaHMuICBXaGVuIGEgc2NoZW1hCiAgICAgIG5vZGUgaXMgZGVmaW5lZCB0aGF0IHVzZXMgdGhpcyB0eXBlLCB0aGUgZGVzY3JpcHRpb24gb2YKICAgICAgdGhlIHNjaGVtYSBub2RlIGlkZW50aWZpZXMgYm90aCBvZiB0aGUgcmVmZXJlbmNlIGVwb2Nocy4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBUaW1lVGlja3MgdHlwZSBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMjU3ODogU3RydWN0dXJlIG9mIE1hbmFnZW1lbnQgSW5mb3JtYXRpb24gVmVyc2lvbiAyCiAgICAgICAgICAgICAgICAoU01JdjIpIjsKICB9CgogIHR5cGVkZWYgdGltZXN0YW1wIHsKICAgIHR5cGUgeWFuZzp0aW1ldGlja3M7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgdGltZXN0YW1wIHR5cGUgcmVwcmVzZW50cyB0aGUgdmFsdWUgb2YgYW4gYXNzb2NpYXRlZAogICAgICB0aW1ldGlja3Mgc2NoZW1hIG5vZGUgYXQgd2hpY2ggYSBzcGVjaWZpYyBvY2N1cnJlbmNlCiAgICAgIGhhcHBlbmVkLiAgVGhlIHNwZWNpZmljIG9jY3VycmVuY2UgbXVzdCBiZSBkZWZpbmVkIGluIHRoZQogICAgICBkZXNjcmlwdGlvbiBvZiBhbnkgc2NoZW1hIG5vZGUgZGVmaW5lZCB1c2luZyB0aGlzIHR5cGUuICBXaGVuCiAgICAgIHRoZSBzcGVjaWZpYyBvY2N1cnJlbmNlIG9jY3VycmVkIHByaW9yIHRvIHRoZSBsYXN0IHRpbWUgdGhlCiAgICAgIGFzc29jaWF0ZWQgdGltZXRpY2tzIGF0dHJpYnV0ZSB3YXMgemVybywgdGhlbiB0aGUgdGltZXN0YW1wCiAgICAgIHZhbHVlIGlzIHplcm8uICBOb3RlIHRoYXQgdGhpcyByZXF1aXJlcyBhbGwgdGltZXN0YW1wIHZhbHVlcwogICAgICB0byBiZSByZXNldCB0byB6ZXJvIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSBhc3NvY2lhdGVkIHRpbWV0aWNrcwogICAgICBhdHRyaWJ1dGUgcmVhY2hlcyA0OTcrIGRheXMgYW5kIHdyYXBzIGFyb3VuZCB0byB6ZXJvLgoKICAgICAgVGhlIGFzc29jaWF0ZWQgdGltZXRpY2tzIHNjaGVtYSBub2RlIG11c3QgYmUgc3BlY2lmaWVkCiAgICAgIGluIHRoZSBkZXNjcmlwdGlvbiBvZiBhbnkgc2NoZW1hIG5vZGUgdXNpbmcgdGhpcyB0eXBlLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIFRpbWVTdGFtcCB0ZXh0dWFsIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDI1Nzk6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIFNNSXYyIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiBnZW5lcmljIGFkZHJlc3MgdHlwZXMgKioqLwoKICB0eXBlZGVmIHBoeXMtYWRkcmVzcyB7CiAgICB0eXBlIHN0cmluZyB7CiAgICAgIHBhdHRlcm4gJyhbMC05YS1mQS1GXXsyfSg6WzAtOWEtZkEtRl17Mn0pKik/JzsKICAgIH0KCiAgICBkZXNjcmlwdGlvbgogICAgICJSZXByZXNlbnRzIG1lZGlhLSBvciBwaHlzaWNhbC1sZXZlbCBhZGRyZXNzZXMgcmVwcmVzZW50ZWQKICAgICAgYXMgYSBzZXF1ZW5jZSBvY3RldHMsIGVhY2ggb2N0ZXQgcmVwcmVzZW50ZWQgYnkgdHdvIGhleGFkZWNpbWFsCiAgICAgIG51bWJlcnMuICBPY3RldHMgYXJlIHNlcGFyYXRlZCBieSBjb2xvbnMuICBUaGUgY2Fub25pY2FsCiAgICAgIHJlcHJlc2VudGF0aW9uIHVzZXMgbG93ZXJjYXNlIGNoYXJhY3RlcnMuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgUGh5c0FkZHJlc3MgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyNTc5OiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBTTUl2MiI7CiAgfQoKICB0eXBlZGVmIG1hYy1hZGRyZXNzIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnWzAtOWEtZkEtRl17Mn0oOlswLTlhLWZBLUZdezJ9KXs1fSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgbWFjLWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElFRUUgODAyIE1BQyBhZGRyZXNzLgogICAgICBUaGUgY2Fub25pY2FsIHJlcHJlc2VudGF0aW9uIHVzZXMgbG93ZXJjYXNlIGNoYXJhY3RlcnMuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgTWFjQWRkcmVzcyB0ZXh0dWFsIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiSUVFRSA4MDI6IElFRUUgU3RhbmRhcmQgZm9yIExvY2FsIGFuZCBNZXRyb3BvbGl0YW4gQXJlYQogICAgICAgICAgICAgICAgTmV0d29ya3M6IE92ZXJ2aWV3IGFuZCBBcmNoaXRlY3R1cmUKICAgICAgUkZDIDI1Nzk6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIFNNSXYyIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiBYTUwtc3BlY2lmaWMgdHlwZXMgKioqLwoKICB0eXBlZGVmIHhwYXRoMS4wIHsKICAgIHR5cGUgc3RyaW5nOwogICAgZGVzY3JpcHRpb24KICAgICAiVGhpcyB0eXBlIHJlcHJlc2VudHMgYW4gWFBBVEggMS4wIGV4cHJlc3Npb24uCgogICAgICBXaGVuIGEgc2NoZW1hIG5vZGUgaXMgZGVmaW5lZCB0aGF0IHVzZXMgdGhpcyB0eXBlLCB0aGUKICAgICAgZGVzY3JpcHRpb24gb2YgdGhlIHNjaGVtYSBub2RlIE1VU1Qgc3BlY2lmeSB0aGUgWFBhdGgKICAgICAgY29udGV4dCBpbiB3aGljaCB0aGUgWFBhdGggZXhwcmVzc2lvbiBpcyBldmFsdWF0ZWQuIjsKICAgIHJlZmVyZW5jZQogICAgICJYUEFUSDogWE1MIFBhdGggTGFuZ3VhZ2UgKFhQYXRoKSBWZXJzaW9uIDEuMCI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2Ygc3RyaW5nIHR5cGVzICoqKi8KCiAgdHlwZWRlZiBoZXgtc3RyaW5nIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnKFswLTlhLWZBLUZdezJ9KDpbMC05YS1mQS1GXXsyfSkqKT8nOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiQSBoZXhhZGVjaW1hbCBzdHJpbmcgd2l0aCBvY3RldHMgcmVwcmVzZW50ZWQgYXMgaGV4IGRpZ2l0cwogICAgICBzZXBhcmF0ZWQgYnkgY29sb25zLiAgVGhlIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiB1c2VzCiAgICAgIGxvd2VyY2FzZSBjaGFyYWN0ZXJzLiI7CiAgfQoKICB0eXBlZGVmIHV1aWQgewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuICdbMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS0nCiAgICAgICAgICAgICsgJ1swLTlhLWZBLUZdezR9LVswLTlhLWZBLUZdezEyfSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJBIFVuaXZlcnNhbGx5IFVuaXF1ZSBJRGVudGlmaWVyIGluIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24KICAgICAgZGVmaW5lZCBpbiBSRkMgNDEyMi4gIFRoZSBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24gdXNlcwogICAgICBsb3dlcmNhc2UgY2hhcmFjdGVycy4KCiAgICAgIFRoZSBmb2xsb3dpbmcgaXMgYW4gZXhhbXBsZSBvZiBhIFVVSUQgaW4gc3RyaW5nIHJlcHJlc2VudGF0aW9uOgogICAgICBmODFkNGZhZS03ZGVjLTExZDAtYTc2NS0wMGEwYzkxZTZiZjYKICAgICAgIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNDEyMjogQSBVbml2ZXJzYWxseSBVbmlxdWUgSURlbnRpZmllciAoVVVJRCkgVVJOCiAgICAgICAgICAgICAgICBOYW1lc3BhY2UiOwogIH0KCiAgdHlwZWRlZiBkb3R0ZWQtcXVhZCB7CiAgICB0eXBlIHN0cmluZyB7CiAgICAgIHBhdHRlcm4KICAgICAgICAnKChbMC05XXxbMS05XVswLTldfDFbMC05XVswLTldfDJbMC00XVswLTldfDI1WzAtNV0pXC4pezN9JwogICAgICArICcoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1bMC05XXwyWzAtNF1bMC05XXwyNVswLTVdKSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICAiQW4gdW5zaWduZWQgMzItYml0IG51bWJlciBleHByZXNzZWQgaW4gdGhlIGRvdHRlZC1xdWFkCiAgICAgICBub3RhdGlvbiwgaS5lLiwgZm91ciBvY3RldHMgd3JpdHRlbiBhcyBkZWNpbWFsIG51bWJlcnMKICAgICAgIGFuZCBzZXBhcmF0ZWQgd2l0aCB0aGUgJy4nIChmdWxsIHN0b3ApIGNoYXJhY3Rlci4iOwogIH0KfQo=
-o-ran-smo-teiv-cloud urn:o-ran:smo-teiv-cloud CLOUD [] 2024-07-15 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWNsb3VkIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1jbG91ZCI7CiAgICBwcmVmaXggb3ItdGVpdi1jbG91ZDsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgaWV0Zi1nZW8tbG9jYXRpb24gewogICAgICAgIHByZWZpeCBnZW87CiAgICAgICAgcmVmZXJlbmNlICJSRkMgOTE3OTogQSBZQU5HIEdyb3VwaW5nIGZvciBHZW9ncmFwaGljIExvY2F0aW9ucyI7CiAgICB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBDbG91ZCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgdG9wb2xvZ3kgZW50aXRpZXMgYW5kIHJlbGF0aW9ucyBpbiB0aGUKICAgICAgICBSQU4gQ0xPVUQgZG9tYWluLCB3aGljaCBjb21wcmlzZXMgY2xvdWQgaW5mcmFzdHJ1Y3R1cmUgYW5kCiAgICAgICAgZGVwbG95bWVudCBhc3BlY3RzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIHRvcG9sb2d5IG1vZGVsLgoKICAgICAgICBDb3B5cmlnaHQgKEMpIDIwMjQgRXJpY3Nzb24KICAgICAgICBNb2RpZmljYXRpb25zIENvcHlyaWdodCAoQykgMjAyNCBPcGVuSW5mcmEgRm91bmRhdGlvbiBFdXJvcGUKCiAgICAgICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgICAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiAgICAgICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CgogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgICAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAgICAgICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLAogICAgICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAgICAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KCiAgICAgICAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAiOwoKICAgIHJldmlzaW9uICIyMDI0LTA1LTAyIiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkluaXRpYWwgcmV2aXNpb24uIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDctMTUiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhpcyByZXZpc2lvbiBhbGlnbnMgTy1SQU4gV29yayBHcm91cCAxMCBTdGFnZSAyIFNwZWNpZmljYXRpb24gKE8tUkFOLldHMTAuVEUmSVYtQ0lNSS4wLVIwMDQudjAyLjAwKSI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIG9yLXRlaXYteWV4dDpkb21haW4gQ0xPVUQ7CgogICAgbGlzdCBDbG91ZGlmaWVkTkYgewogICAgICAgIGRlc2NyaXB0aW9uICJBIFJBTiBOZXR3b3JrIEZ1bmN0aW9uIHNvZnR3YXJlIHRoYXQgaXMgZGVwbG95ZWQgaW4gdGhlIE8tQ2xvdWQgdmlhIG9uZSBvciBtb3JlIE5GIERlcGxveW1lbnRzLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBDbG91ZGlmaWVkIE5GIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgTkZEZXBsb3ltZW50IHsKICAgICAgICBkZXNjcmlwdGlvbiAiQSBzb2Z0d2FyZSBkZXBsb3ltZW50IG9uIE8tQ2xvdWQgcmVzb3VyY2VzIHRoYXQgcmVhbGl6ZXMsIGFsbCBvciBwYXJ0IG9mLCBhIENsb3VkaWZpZWQgTkYuIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGNvbnRhaW5lciBhdHRyaWJ1dGVzIHsKICAgICAgICAgICAgbGVhZiBuYW1lIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOYW1lIG9mIE5GIERlcGxveW1lbnQiOwogICAgICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBPQ2xvdWROYW1lc3BhY2UgewogICAgICAgIGRlc2NyaXB0aW9uICJPQ2xvdWROYW1lc3BhY2UgcHJvdmlkZSBhIG1lY2hhbmlzbSBmb3IgaXNvbGF0aW5nCiAgICAgICAgZ3JvdXBzIG9mIHJlc291cmNlcyB3aXRoaW4gYSBzaW5nbGUgY2x1c3Rlci4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIG5hbWUgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5hbWUgb2YgQ2xvdWQgTmFtZXNwYWNlIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgTm9kZUNsdXN0ZXIgewogICAgICAgIGRlc2NyaXB0aW9uICJBIE5vZGVDbHVzdGVyIG1hbmFnZXMgYSBjb2xsZWN0aW9uIG9mIE5vZGVzLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBOb2RlIENsdXN0ZXIiOwogICAgICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBPQ2xvdWRTaXRlIHsKICAgICAgICBkZXNjcmlwdGlvbiAiUmVwcmVzZW50cyB0aGUgaW5mcmFzdHJ1Y3R1cmUgdGhhdAogICAgICAgIGhvc3RzIHRoZSBORiBEZXBsb3ltZW50LiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBDbG91ZCBTaXRlIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CgogICAgICAgICAgICB1c2VzIGdlbzpnZW8tbG9jYXRpb247CiAgICAgICAgfQogICAgfQoKCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIENMT1VESUZJRURORl9DT01QUklTRVNfTkZERVBMT1lNRU5UIHsgLy8gMSB0byAxLi5uCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgY29tcHJpc2VkLW5GRGVwbG95bWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJDbG91ZGlmaWVkIE5GIGNvbXByaXNlcyBvZiB0aGVzZSBORiBEZXBsb3ltZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBDbG91ZGlmaWVkTkY7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQoKICAgICAgICBsZWFmIGNvbXByaXNlZC1ieS1jbG91ZGlmaWVkTkYgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCBwYXJ0IG9mIENsb3VkaWZpZWQgTkYuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBORkRFUExPWU1FTlRfREVQTE9ZRURfT05fT0NMT1VETkFNRVNQQUNFIHsgLy8gMS4ubiB0byAxLi5uCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgZGVwbG95ZWQtb24tb2Nsb3VkTmFtZXNwYWNlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5GIERlcGxveW1lbnQgZGVwbG95ZWQgb24gTy1DbG91ZCBOYW1lc3BhY2UuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIE5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBkZXBsb3llZC1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiT0Nsb3VkIE5hbWVzcGFjZSBkZXBsb3lzIE5GIERlcGxveW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE9DbG91ZE5hbWVzcGFjZTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBPQ0xPVUROQU1FU1BBQ0VfREVQTE9ZRURfT05fTk9ERUNMVVNURVIgeyAvLyAxLi5uIHRvIDEKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYgZGVwbG95ZWQtb24tbm9kZUNsdXN0ZXIgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DbG91ZCBOYW1lc3BhY2UgZGVwbG95ZWQgb24gTm9kZSBDbHVzdGVyLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBPQ2xvdWROYW1lc3BhY2U7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3QgZGVwbG95ZWQtb2Nsb3VkTmFtZXNwYWNlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5vZGUgQ2x1c3RlciBkZXBsb3lzIE8tQ2xvdWQgTmFtZXNwYWNlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBOb2RlQ2x1c3RlcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBOT0RFQ0xVU1RFUl9MT0NBVEVEX0FUX09DTE9VRFNJVEUgeyAvLyAxLi5uIHRvIDEuLm4KCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBsb2NhdGVkLWF0LW9jbG91ZFNpdGUgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTm9kZSBDbHVzdGVyIGxvY2F0ZWQgYXQgTy1DbG91ZCBTaXRlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBOb2RlQ2x1c3RlcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBsb2NhdGlvbi1vZi1vbm9kZUNsdXN0ZXIgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DbG91ZCBTaXRlIGlzIGxvY2F0aW9uIG9mIE5vZGUgQ2x1c3Rlci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgT0Nsb3VkU2l0ZTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9Cn0=
+o-ran-smo-teiv-cloud urn:o-ran:smo-teiv-cloud CLOUD [] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWNsb3VkIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1jbG91ZCI7CiAgICBwcmVmaXggb3ItdGVpdi1jbG91ZDsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgaWV0Zi1nZW8tbG9jYXRpb24gewogICAgICAgIHByZWZpeCBnZW87CiAgICAgICAgcmVmZXJlbmNlICJSRkMgOTE3OTogQSBZQU5HIEdyb3VwaW5nIGZvciBHZW9ncmFwaGljIExvY2F0aW9ucyI7CiAgICB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBDbG91ZCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgdG9wb2xvZ3kgZW50aXRpZXMgYW5kIHJlbGF0aW9ucyBpbiB0aGUKICAgICAgICBSQU4gQ0xPVUQgZG9tYWluLCB3aGljaCBjb21wcmlzZXMgY2xvdWQgaW5mcmFzdHJ1Y3R1cmUgYW5kCiAgICAgICAgZGVwbG95bWVudCBhc3BlY3RzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIHRvcG9sb2d5IG1vZGVsLgoKICAgICAgICBDb3B5cmlnaHQgKEMpIDIwMjQgRXJpY3Nzb24KICAgICAgICBNb2RpZmljYXRpb25zIENvcHlyaWdodCAoQykgMjAyNCBPcGVuSW5mcmEgRm91bmRhdGlvbiBFdXJvcGUKCiAgICAgICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgICAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiAgICAgICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CgogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgICAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAgICAgICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLAogICAgICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAgICAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KCiAgICAgICAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAiOwoKICAgIHJldmlzaW9uICIyMDI0LTEwLTA0IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkFkZGVkIGdyb3VwaW5ncywgT3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycCBvciBPcmlnaW5fUmVsYXRpb25zaGlwX01hcHBpbmdfR3JwCiAgICAgICAgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdG9wb2xvZ3kgb2JqZWN0cy4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNS0wMiIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA3LTE1IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoaXMgcmV2aXNpb24gYWxpZ25zIE8tUkFOIFdvcmsgR3JvdXAgMTAgU3RhZ2UgMiBTcGVjaWZpY2F0aW9uIChPLVJBTi5XRzEwLlRFJklWLUNJTUkuMC1SMDA0LnYwMi4wMCkiOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICBvci10ZWl2LXlleHQ6ZG9tYWluIENMT1VEOwoKICAgIGxpc3QgQ2xvdWRpZmllZE5GIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQSBSQU4gTmV0d29yayBGdW5jdGlvbiBzb2Z0d2FyZSB0aGF0IGlzIGRlcGxveWVkIGluIHRoZSBPLUNsb3VkIHZpYSBvbmUgb3IgbW9yZSBORiBEZXBsb3ltZW50cy4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIG5hbWUgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5hbWUgb2YgQ2xvdWRpZmllZCBORiI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE5GRGVwbG95bWVudCB7CiAgICAgICAgZGVzY3JpcHRpb24gIkEgc29mdHdhcmUgZGVwbG95bWVudCBvbiBPLUNsb3VkIHJlc291cmNlcyB0aGF0IHJlYWxpemVzLCBhbGwgb3IgcGFydCBvZiwgYSBDbG91ZGlmaWVkIE5GLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBORiBEZXBsb3ltZW50IjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgT0Nsb3VkTmFtZXNwYWNlIHsKICAgICAgICBkZXNjcmlwdGlvbiAiT0Nsb3VkTmFtZXNwYWNlIHByb3ZpZGUgYSBtZWNoYW5pc20gZm9yIGlzb2xhdGluZwogICAgICAgIGdyb3VwcyBvZiByZXNvdXJjZXMgd2l0aGluIGEgc2luZ2xlIGNsdXN0ZXIuIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGNvbnRhaW5lciBhdHRyaWJ1dGVzIHsKICAgICAgICAgICAgbGVhZiBuYW1lIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOYW1lIG9mIENsb3VkIE5hbWVzcGFjZSI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE5vZGVDbHVzdGVyIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQSBOb2RlQ2x1c3RlciBtYW5hZ2VzIGEgY29sbGVjdGlvbiBvZiBOb2Rlcy4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIG5hbWUgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5hbWUgb2YgTm9kZSBDbHVzdGVyIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgT0Nsb3VkU2l0ZSB7CiAgICAgICAgZGVzY3JpcHRpb24gIlJlcHJlc2VudHMgdGhlIGluZnJhc3RydWN0dXJlIHRoYXQKICAgICAgICBob3N0cyB0aGUgTkYgRGVwbG95bWVudC4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIG5hbWUgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5hbWUgb2YgQ2xvdWQgU2l0ZSI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdXNlcyBnZW86Z2VvLWxvY2F0aW9uOwogICAgICAgIH0KICAgIH0KCgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBDTE9VRElGSUVETkZfQ09NUFJJU0VTX05GREVQTE9ZTUVOVCB7IC8vIDEgdG8gMS4ubgoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fUmVsYXRpb25zaGlwX01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IGNvbXByaXNlZC1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiQ2xvdWRpZmllZCBORiBjb21wcmlzZXMgb2YgdGhlc2UgTkYgRGVwbG95bWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgQ2xvdWRpZmllZE5GOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1pbi1lbGVtZW50cyAxOwogICAgICAgIH0KCiAgICAgICAgbGVhZiBjb21wcmlzZWQtYnktY2xvdWRpZmllZE5GIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5GIERlcGxveW1lbnQgcGFydCBvZiBDbG91ZGlmaWVkIE5GLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTkZERVBMT1lNRU5UX0RFUExPWUVEX09OX09DTE9VRE5BTUVTUEFDRSB7IC8vIDEuLm4gdG8gMS4ubgoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fUmVsYXRpb25zaGlwX01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IGRlcGxveWVkLW9uLW9jbG91ZE5hbWVzcGFjZSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJORiBEZXBsb3ltZW50IGRlcGxveWVkIG9uIE8tQ2xvdWQgTmFtZXNwYWNlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3QgZGVwbG95ZWQtbkZEZXBsb3ltZW50IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk9DbG91ZCBOYW1lc3BhY2UgZGVwbG95cyBORiBEZXBsb3ltZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBPQ2xvdWROYW1lc3BhY2U7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgT0NMT1VETkFNRVNQQUNFX0RFUExPWUVEX09OX05PREVDTFVTVEVSIHsgLy8gMS4ubiB0byAxCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmIGRlcGxveWVkLW9uLW5vZGVDbHVzdGVyIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk8tQ2xvdWQgTmFtZXNwYWNlIGRlcGxveWVkIG9uIE5vZGUgQ2x1c3Rlci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgT0Nsb3VkTmFtZXNwYWNlOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KCiAgICAgICAgbGVhZi1saXN0IGRlcGxveWVkLW9jbG91ZE5hbWVzcGFjZSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOb2RlIENsdXN0ZXIgZGVwbG95cyBPLUNsb3VkIE5hbWVzcGFjZS4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgTm9kZUNsdXN0ZXI7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTk9ERUNMVVNURVJfTE9DQVRFRF9BVF9PQ0xPVURTSVRFIHsgLy8gMS4ubiB0byAxLi5uCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgbG9jYXRlZC1hdC1vY2xvdWRTaXRlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5vZGUgQ2x1c3RlciBsb2NhdGVkIGF0IE8tQ2xvdWQgU2l0ZS4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgTm9kZUNsdXN0ZXI7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3QgbG9jYXRpb24tb2Ytb25vZGVDbHVzdGVyIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk8tQ2xvdWQgU2l0ZSBpcyBsb2NhdGlvbiBvZiBOb2RlIENsdXN0ZXIuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE9DbG91ZFNpdGU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQogICAgfQp9
o-ran-smo-teiv-common-yang-extensions urn:o-ran:smo-teiv-common-yang-extensions \N [] 2024-05-24 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMgewoKICB5YW5nLXZlcnNpb24gMS4xOwogIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMiOwogIHByZWZpeCBvci10ZWl2LXlleHQ7CgogIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgY29udGFjdCAiVGhlIEF1dGhvcnMiOwogIGRlc2NyaXB0aW9uCiAgIlRvcG9sb2d5IGFuZCBJbnZlbnRvcnkgWUFORyBleHRlbnNpb25zIG1vZGVsCgogIFRoaXMgbW9kZWwgY29udGFpbnMgZXh0ZW5zaW9ucyB0byB0aGUgWUFORyBsYW5ndWFnZSB0aGF0IHRvcG9sb2d5IGFuZAogIGludmVudG9yeSBtb2RlbHMgd2lsbCB1c2UgdG8gZGVmaW5lIGFuZCBhbm5vdGF0ZSB0eXBlcyBhbmQgcmVsYXRpb25zaGlwcy4KCiAgQ29weXJpZ2h0IChDKSAyMDI0IEVyaWNzc29uCiAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7CiAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgogIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKCiAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQogIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgogIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wIjsKCiAgICByZXZpc2lvbiAiMjAyNC0wNS0yNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIGV4dGVuc2lvbiBiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgewogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJEZWZpbmVzIGEgYmktZGlyZWN0aW9uYWwgcmVsYXRpb25zaGlwIGluIHRoZSB0b3BvbG9neS4KCiAgICAgICAgICAgIEEgYmktZGlyZWN0aW9uYWwtYXNzb2NpYXRpb24gKEJEQSkgaXMgYSByZWxhdGlvbnNoaXAgY29tcHJpc2luZyBvZgogICAgICAgICAgICBhbiBBLXNpZGUgYW5kIGEgQi1zaWRlLiBUaGUgQS1zaWRlIGlzIGNvbnNpZGVyZWQgdGhlIG9yaWdpbmF0aW5nCiAgICAgICAgICAgIHNpZGUgb2YgdGhlIHJlbGF0aW9uc2hpcDsgdGhlIEItc2lkZSBpcyBjb25zaWRlcmVkIHRoZSB0ZXJtaW5hdGluZwogICAgICAgICAgICBzaWRlIG9mIHRoZSByZWxhdGlvbnNoaXAuIFRoZSBvcmRlciBvZiBBLXNpZGUgYW5kIEItc2lkZSBpcyBvZgogICAgICAgICAgICBpbXBvcnRhbmNlIGFuZCBNVVNUIE5PVCBiZSBjaGFuZ2VkIG9uY2UgZGVmaW5lZC4KCiAgICAgICAgICAgIEJvdGggQS1zaWRlIGFuZCBCLXNpZGUgYXJlIGRlZmluZWQgb24gYSB0eXBlLCBhbmQgYXJlIGdpdmVuIGEgcm9sZS4KICAgICAgICAgICAgQSB0eXBlIG1heSBoYXZlIG11bHRpcGxlIG9yaWdpbmF0aW5nIGFuZC9vciB0ZXJtaW5hdGluZyBzaWRlcyBvZiBhCiAgICAgICAgICAgIHJlbGF0aW9uc2hpcCwgYWxsIGRpc3Rpbmd1aXNoZWQgYnkgcm9sZSBuYW1lLgoKICAgICAgICAgICAgVGhlIHN0YXRlbWVudCBNVVNUIG9ubHkgYmUgYSBzdWJzdGF0ZW1lbnQgb2YgdGhlICdtb2R1bGUnIHN0YXRlbWVudC4KICAgICAgICAgICAgTXVsdGlwbGUgJ2JpLWRpcmVjdGlvbmFsLXRvcG9sb2d5LXJlbGF0aW9uc2hpcCcgc3RhdGVtZW50cyBhcmUKICAgICAgICAgICAgYWxsb3dlZCBwZXIgcGFyZW50IHN0YXRlbWVudC4KCiAgICAgICAgICAgIFN1YnN0YXRlbWVudHMgdG8gdGhlICdiaS1kaXJlY3Rpb25hbC10b3BvbG9neS1yZWxhdGlvbnNoaXAnIGRlZmluZQogICAgICAgICAgICB0aGUgQS1zaWRlIGFuZCB0aGUgQi1zaWRlLCByZXNwZWN0aXZlbHksIGFuZCBvcHRpb25hbGx5IHByb3BlcnRpZXMKICAgICAgICAgICAgb2YgdGhlIHJlbGF0aW9uc2hpcC4gRGF0YSBub2RlcyBvZiB0eXBlcyAnbGVhZicgYW5kICdsZWFmLWxpc3QnIGFyZQogICAgICAgICAgICB1c2VkIGZvciB0aGlzIHB1cnBvc2UuIE9uZSBvZiB0aGUgZGF0YSBub2RlcyBNVVNUIGJlIGFubm90YXRlZCB3aXRoCiAgICAgICAgICAgIHRoZSAnYS1zaWRlJyBleHRlbnNpb247IGFub3RoZXIgZGF0YSBub2RlIE1VU1QgYmUgYW5ub3RhdGVkIHdpdGggdGhlCiAgICAgICAgICAgICdiLXNpZGUnIGV4dGVuc2lvbi4gT3RoZXIgZGF0YSBub2RlcyBkZWZpbmUgcHJvcGVydGllcyBvZiB0aGUKICAgICAgICAgICAgcmVsYXRpb25zaGlwLgoKICAgICAgICAgICAgVGhlIGFyZ3VtZW50IGlzIHRoZSBuYW1lIG9mIHRoZSByZWxhdGlvbnNoaXAuIFRoZSByZWxhdGlvbnNoaXAgbmFtZQogICAgICAgICAgICBpcyBzY29wZWQgdG8gdGhlIG5hbWVzcGFjZSBvZiB0aGUgZGVjbGFyaW5nIG1vZHVsZSBhbmQgTVVTVCBiZQogICAgICAgICAgICB1bmlxdWUgd2l0aGluIHRoZSBzY29wZS4iOwoKICAgICAgICBhcmd1bWVudCByZWxhdGlvbnNoaXBOYW1lOwogICAgfQoKICAgIGV4dGVuc2lvbiBhU2lkZSB7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIkRlZmluZXMgdGhlIEEtc2lkZSBvZiBhIHJlbGF0aW9uc2hpcC4KCiAgICAgICAgICAgIFRoZSBzdGF0ZW1lbnQgTVVTVCBvbmx5IGJlIGEgc3Vic3RhdGVtZW50IG9mIGEgJ2xlYWYnIG9yICdsZWFmLWxpc3QnCiAgICAgICAgICAgIHN0YXRlbWVudCwgd2hpY2ggaXRzZWxmIG11c3QgYmUgYSBzdWJzdGF0ZW1lbnQgb2YgdGhlCiAgICAgICAgICAgICd1bmktZGlyZWN0aW9uYWwtdG9wb2xvZ3ktcmVsYXRpb25zaGlwJyBzdGF0ZW1lbnQuCgogICAgICAgICAgICBUaGUgZGF0YSB0eXBlIG9mIHRoZSBwYXJlbnQgJ2xlYWYnIG9yICdsZWFmLWxpc3QnIE1VU1QgYmUKICAgICAgICAgICAgJ2luc3RhbmNlLWlkZW50aWZpZXInLiBDb25zdHJhaW50cyBNQVkgYmUgdXNlZCBhcyBwYXJ0IG9mIHRoZSBwYXJlbnQKICAgICAgICAgICAgJ2xlYWYnIG9yICdsZWFmLWxpc3QnIHRvIGVuZm9yY2UgY2FyZGluYWxpdHkuCgogICAgICAgICAgICBUaGUgaWRlbnRpZmllciBvZiB0aGUgcGFyZW50ICdsZWFmJyBvciAnbGVhZi1saXN0JyBpcyB1c2VkIGFzIG5hbWUKICAgICAgICAgICAgb2YgdGhlIHJvbGUgb2YgdGhlIEEtc2lkZSBvZiB0aGUgcmVsYXRpb25zaGlwLiBUaGUgbmFtZSBvZiB0aGUgcm9sZQogICAgICAgICAgICBpcyBzY29wZWQgdG8gdGhlIHR5cGUgb24gd2hpY2ggdGhlIEEtc2lkZSBpcyBkZWZpbmVkIGFuZCBNVVNUIGJlCiAgICAgICAgICAgIHVuaXF1ZSB3aXRoaW4gdGhlIHNjb3BlLgoKICAgICAgICAgICAgV2hpbGUgdGhlIHBhcmVudCAnbGVhZicgb3IgJ2xlYWYtbGlzdCcgZG9lcyBub3QgcmVzdWx0IGluIGEgcHJvcGVydHkKICAgICAgICAgICAgb2YgdGhlIHJlbGF0aW9uc2hpcCwgaXQgaXMgUkVDT01NRU5ERUQgdG8gYXZvaWQgdXNpbmcgdGhlIG5hbWUgb2YgYW4KICAgICAgICAgICAgZXhpc3RpbmcgdHlwZSBwcm9wZXJ0eSBhcyByb2xlIG5hbWUgdG8gYXZvaWQgcG90ZW50aWFsIGFtYmlndWl0aWVzCiAgICAgICAgICAgIGJldHdlZW4gcHJvcGVydGllcyBvZiBhIHR5cGUsIGFuZCByb2xlcyBvZiBhIHJlbGF0aW9uc2hpcCBvbiB0aGUKICAgICAgICAgICAgdHlwZS4KCiAgICAgICAgICAgIFRoZSBhcmd1bWVudCBpcyB0aGUgbmFtZSBvZiB0aGUgdHlwZSBvbiB3aGljaCB0aGUgQS1zaWRlIHJlc2lkZXMuCiAgICAgICAgICAgIElmIHRoZSB0eXBlIGlzIGRlY2xhcmVkIGluIGFub3RoZXIgbW9kdWxlLCB0aGUgdHlwZSBtdXN0IGJlCiAgICAgICAgICAgIHByZWZpeGVkLCBhbmQgYSBjb3JyZXNwb25kaW5nICdpbXBvcnQnIHN0YXRlbWVudCBiZSB1c2VkIHRvIGRlY2xhcmUKICAgICAgICAgICAgdGhlIHByZWZpeC4iOwoKICAgICAgICBhcmd1bWVudCBhU2lkZVR5cGU7CiAgICB9CgogICAgZXh0ZW5zaW9uIGJTaWRlIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiRGVmaW5lcyB0aGUgQi1zaWRlIG9mIGEgcmVsYXRpb25zaGlwLgoKICAgICAgICAgICAgVGhlIHN0YXRlbWVudCBNVVNUIG9ubHkgYmUgYSBzdWJzdGF0ZW1lbnQgb2YgYSAnbGVhZicgb3IgJ2xlYWYtbGlzdCcKICAgICAgICAgICAgc3RhdGVtZW50LCB3aGljaCBpdHNlbGYgbXVzdCBiZSBhIHN1YnN0YXRlbWVudCBvZiB0aGUKICAgICAgICAgICAgJ3VuaS1kaXJlY3Rpb25hbC10b3BvbG9neS1yZWxhdGlvbnNoaXAnIHN0YXRlbWVudC4KCiAgICAgICAgICAgIFRoZSBkYXRhIHR5cGUgb2YgdGhlIHBhcmVudCAnbGVhZicgb3IgJ2xlYWYtbGlzdCcgTVVTVCBiZQogICAgICAgICAgICAnaW5zdGFuY2UtaWRlbnRpZmllcicuIENvbnN0cmFpbnRzIE1BWSBiZSB1c2VkIGFzIHBhcnQgb2YgdGhlIHBhcmVudAogICAgICAgICAgICAnbGVhZicgb3IgJ2xlYWYtbGlzdCcgdG8gZW5mb3JjZSBjYXJkaW5hbGl0eS4KCiAgICAgICAgICAgIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBwYXJlbnQgJ2xlYWYnIG9yICdsZWFmLWxpc3QnIGlzIHVzZWQgYXMgbmFtZQogICAgICAgICAgICBvZiB0aGUgcm9sZSBvZiB0aGUgQi1zaWRlIG9mIHRoZSByZWxhdGlvbnNoaXAuIFRoZSBuYW1lIG9mIHRoZSByb2xlCiAgICAgICAgICAgIGlzIHNjb3BlZCB0byB0aGUgdHlwZSBvbiB3aGljaCB0aGUgQi1zaWRlIGlzIGRlZmluZWQgYW5kIE1VU1QgYmUKICAgICAgICAgICAgdW5pcXVlIHdpdGhpbiB0aGUgc2NvcGUuCgogICAgICAgICAgICBXaGlsZSB0aGUgcGFyZW50ICdsZWFmJyBvciAnbGVhZi1saXN0JyBkb2VzIG5vdCByZXN1bHQgaW4gYSBwcm9wZXJ0eQogICAgICAgICAgICBvZiB0aGUgcmVsYXRpb25zaGlwLCBpdCBpcyBSRUNPTU1FTkRFRCB0byBhdm9pZCB1c2luZyB0aGUgbmFtZSBvZiBhbgogICAgICAgICAgICBleGlzdGluZyB0eXBlIHByb3BlcnR5IGFzIHJvbGUgbmFtZSB0byBhdm9pZCBwb3RlbnRpYWwgYW1iaWd1aXRpZXMKICAgICAgICAgICAgYmV0d2VlbiBwcm9wZXJ0aWVzIG9mIGEgdHlwZSwgYW5kIHJvbGVzIG9mIGEgcmVsYXRpb25zaGlwIG9uIHRoZQogICAgICAgICAgICB0eXBlLgoKICAgICAgICAgICAgVGhlIGFyZ3VtZW50IGlzIHRoZSBuYW1lIG9mIHRoZSB0eXBlIG9uIHdoaWNoIHRoZSBCLXNpZGUgcmVzaWRlcy4KICAgICAgICAgICAgSWYgdGhlIHR5cGUgaXMgZGVjbGFyZWQgaW4gYW5vdGhlciBtb2R1bGUsIHRoZSB0eXBlIG11c3QgYmUKICAgICAgICAgICAgcHJlZml4ZWQsIGFuZCBhIGNvcnJlc3BvbmRpbmcgJ2ltcG9ydCcgc3RhdGVtZW50IGJlIHVzZWQgdG8gZGVjbGFyZQogICAgICAgICAgICB0aGUgcHJlZml4LiI7CgogICAgICAgIGFyZ3VtZW50IGJTaWRlVHlwZTsKICAgIH0KCiAgICBleHRlbnNpb24gZG9tYWluIHsKICAgICAgICBkZXNjcmlwdGlvbiAiS2V5d29yZCB1c2VkIHRvIGNhcnJ5IGRvbWFpbiBpbmZvcm1hdGlvbi4iOwogICAgICAgIGFyZ3VtZW50IGRvbWFpbk5hbWU7CiAgICB9CgogICAgZXh0ZW5zaW9uIGxhYmVsIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGxhYmVsIGNhbiBiZSB1c2VkIHRvIGdpdmUgbW9kdWxlcyBhbmQgc3VibW9kdWxlcyBhIHNlbWFudGljCiAgICAgICAgICAgIHZlcnNpb24sIGluIGFkZGl0aW9uIHRvIHRoZWlyIHJldmlzaW9uLgoKICAgICAgICAgICAgVGhlIGZvcm1hdCBvZiB0aGUgbGFiZWwgaXMgJ3gueS56JyAtIGV4cHJlc3NlZCBhcyBwYXR0ZXJuLCBpdCBpcwogICAgICAgICAgICBbMC05XStcXC5bMC05XStcXC5bMC05XSsKCiAgICAgICAgICAgIFRoZSBzdGF0ZW1lbnQgTVVTVCBvbmx5IGJlIGEgc3Vic3RhdGVtZW50IG9mIHRoZSByZXZpc2lvbiBzdGF0ZW1lbnQuCiAgICAgICAgICAgIFplcm8gb3Igb25lIHJldmlzaW9uIGxhYmVsIHN0YXRlbWVudHMgcGVyIHBhcmVudCBzdGF0ZW1lbnQgYXJlCiAgICAgICAgICAgIGFsbG93ZWQuCgogICAgICAgICAgICBSZXZpc2lvbiBsYWJlbHMgTVVTVCBiZSB1bmlxdWUgYW1vbmdzdCBhbGwgcmV2aXNpb25zIG9mIGEgbW9kdWxlIG9yCiAgICAgICAgICAgIHN1Ym1vZHVsZS4iOwoKICAgICAgICBhcmd1bWVudCBzZW12ZXJzaW9uOwogICAgfQp9
o-ran-smo-teiv-common-yang-types urn:o-ran:smo-teiv-common-yang-types \N [] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLXR5cGVzIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyI7CiAgICBwcmVmaXggb3ItdGVpdi10eXBlczsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7IHByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgXzNncHAtY29tbW9uLXlhbmctdHlwZXMgeyBwcmVmaXggdHlwZXMzZ3BwOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAiVG9wb2xvZ3kgYW5kIEludmVudG9yeSBjb21tb24gdHlwZXMgbW9kZWwKCiAgICBUaGlzIG1vZGVsIGNvbnRhaW5zIHJlLXVzYWJsZSBkYXRhIHR5cGVzIHRoYXQgdG9wb2xvZ3kgYW5kIGludmVudG9yeSBtb2RlbHMKICAgIHdpbGwgZnJlcXVlbnRseSB1c2UgYXMgcGFydCBvZiB0eXBlcyBhbmQgcmVsYXRpb25zaGlwcy4KCiAgICBDb3B5cmlnaHQgKEMpIDIwMjQgRXJpY3Nzb24KICAgIE1vZGlmaWNhdGlvbnMgQ29weXJpZ2h0IChDKSAyMDI0IE9wZW5JbmZyYSBGb3VuZGF0aW9uIEV1cm9wZQoKICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7CiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKCiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsCiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKICAgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wIjsKCiAgICByZXZpc2lvbiAiMjAyNC0xMC0wNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJBZGRlZCBPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwIGFuZCBPcmlnaW5fUmVsYXRpb25zaGlwX01hcHBpbmdfR3JwCiAgICAgICAgZm9yIHNvdXJjZUlkcyBhbmQgcmVsaWFiaWxpdHlJbmRpY2F0b3IgdG8gbWV0YWRhdGEuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC40LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDUtMjQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiSW5pdGlhbCByZXZpc2lvbi4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjMuMDsKICAgIH0KCiAgICBncm91cGluZyBUb3BfR3JwX1R5cGUgewogICAgICAgIGRlc2NyaXB0aW9uICJHcm91cGluZyBjb250YWluaW5nIHRoZSBrZXkgYXR0cmlidXRlIGNvbW1vbiB0byBhbGwgdHlwZXMuCiAgICAgICAgICAgIEFsbCB0eXBlcyBNVVNUIHVzZSB0aGlzIGdyb3VwaW5nLiI7CgogICAgICAgIGxlYWYgaWQgewogICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIlVuaXF1ZSBpZGVudGlmaWVyIG9mIHRvcG9sb2d5IGVudGl0aWVzLiBSZXByZXNlbnRzIHRoZQogICAgICAgICAgICAgICAgRW50aXR5IEluc3RhbmNlIElkZW50aWZpZXIuIjsKICAgICAgICB9CiAgICB9CgogICAgY29udGFpbmVyIGRlY29yYXRvcnMgewogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGlzIGNvbnRhaW5lciBzZXJ2ZXMgYXMgZXh0ZW5zaW9uIHBvaW50IGZvciBhcHBsaWNhdGlvbnMgd2lzaGluZwogICAgICAgICAgICB0byBkZWZpbmUgdGhlaXIgb3duIGRlY29yYXRvcnMuIFRoaXMgaXMgZG9uZSB2aWEgYXVnbWVudGF0aW9ucy4gVGhleQogICAgICAgICAgICBjYW4gb25seSBiZSBkZWZpbmVkIGluIG5hbWUgdmFsdWUgcGFpci4KCiAgICAgICAgICAgIFRoaXMgaXMgYSBjb25zdW1lciBkYXRhIGFuZCBjYW4gYmUgYXR0YWNoZWQgdG8gVG9wb2xvZ3kgRW50aXR5IG9yCiAgICAgICAgICAgIFRvcG9sb2d5IFJlbGF0aW9uIGluc3RhbmNlLCBvdXRzaWRlIG9mIHRoZSBkZWNsYXJlZCBUb3BvbG9neSBFbnRpdHkKICAgICAgICAgICAgb3IgVG9wb2xvZ3kgUmVsYXRpb25zaGlwJ3MgYXR0cmlidXRlcy4gVGhpcyBjYW5ub3QgYmUgaW5zdGFudGlhdGVkLAogICAgICAgICAgICBhbmQgaXQgTVVTVCBOT1QgYmUgYXVnbWVudGVkIG9yIGRldmlhdGVkIGluIGFueSB3YXksIHVubGVzcyBzdGF0ZWQKICAgICAgICAgICAgb3RoZXJ3aXNlLiI7CiAgICB9CgogICAgbGVhZi1saXN0IGNsYXNzaWZpZXJzIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiQ29uc3VtZXIgZGVmaW5lZCB0YWdzIHRvIHRvcG9sb2d5IGVudGl0aWVzIGFuZCByZWxhdGlvbnNoaXBzLgoKICAgICAgICAgICAgVGhpcyBpcyBhIGNvbnN1bWVyIGRhdGEgYW5kIGNhbiBiZSBhdHRhY2hlZCB0byBUb3BvbG9neSBFbnRpdHkgb3IKICAgICAgICAgICAgVG9wb2xvZ3kgUmVsYXRpb24gaW5zdGFuY2UsIG91dHNpZGUgb2YgdGhlIGRlY2xhcmVkIFRvcG9sb2d5IEVudGl0eQogICAgICAgICAgICBvciBUb3BvbG9neSBSZWxhdGlvbnNoaXAncyBhdHRyaWJ1dGVzLiBUaGlzIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQsCiAgICAgICAgICAgIGFuZCBpdCBNVVNUIE5PVCBiZSBhdWdtZW50ZWQgb3IgZGV2aWF0ZWQgaW4gYW55IHdheSwgdW5sZXNzIHN0YXRlZAogICAgICAgICAgICBvdGhlcndpc2UuIjsKCiAgICAgICAgdHlwZSBpZGVudGl0eXJlZiB7IGJhc2UgY2xhc3NpZmllcjsgfQogICAgfQoKICAgIGdyb3VwaW5nIE9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnAgewogICAgICAgIGRlc2NyaXB0aW9uICJHcm91cGluZyB0byBpZGVudGlmeSBzb3VyY2VJZHMgb24gYSB0b3BvbG9neSBlbnRpdHkuIjsKCiAgICAgICAgbGVhZi1saXN0IHNvdXJjZUlkcyB7CgogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgIkFuIG9yZGVyZWQgbGlzdCBvZiBpZGVudGl0aWVzIHRoYXQgcmVwcmVzZW50IHRoZSBzZXQgb2YgbmF0aXZlCiAgICAgICAgICAgICAgICBzb3VyY2UgaWRlbnRpZmllcnMgZm9yIHBhcnRpY2lwYXRpbmcgZW50aXRpZXMuCgogICAgICAgICAgICAgICAgVGhpcyBtdXN0IGJlIGF0dGFjaGVkIHRvIHRoZSBUb3BvbG9neSBFbnRpdHkgaW5zdGFuY2UsIG91dHNpZGUgb2YgdGhlCiAgICAgICAgICAgICAgICBkZWNsYXJlZCBUb3BvbG9neSBFbnRpdHkncyBhdHRyaWJ1dGVzLiBUaGlzIGlzIGV4cG9zZWQgdG8gdGhlCiAgICAgICAgICAgICAgICBjb25zdW1lcnMgYW5kIGNhbiBvbmx5IGJlIHNldCBieSB0aGUgcmVzcG9uc2libGUgYWRhcHRlci4gVGhpcwogICAgICAgICAgICAgICAgY2Fubm90IGJlIGluc3RhbnRpYXRlZCwgYW5kIGl0IE1VU1QgTk9UIGJlIGF1Z21lbnRlZCBvciBkZXZpYXRlZAogICAgICAgICAgICAgICAgaW4gYW55IHdheSwgdW5sZXNzIHN0YXRlZCBvdGhlcndpc2UuIjsKCiAgICAgICAgICAgIHR5cGUgc291cmNlSWQ7CiAgICAgICAgICAgIG9yZGVyZWQtYnkgdXNlcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQogICAgfQoKICAgIGdyb3VwaW5nIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAgewogICAgICAgIGRlc2NyaXB0aW9uICJHcm91cGluZyB0byBpZGVudGlmeSBzb3VyY2VJZHMgb24gYSB0b3BvbG9neSByZWxhdGlvbnNoaXAuIjsKCiAgICAgICAgbGVhZi1saXN0IHNvdXJjZUlkcyB7CgogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgIkFuIG9yZGVyZWQgbGlzdCBvZiBpZGVudGl0aWVzIHRoYXQgcmVwcmVzZW50IHRoZSBzZXQgb2YgbmF0aXZlCiAgICAgICAgICAgICAgICBzb3VyY2UgaWRlbnRpZmllcnMgZm9yIHBhcnRpY2lwYXRpbmcgZW50aXRpZXMgaW4gdGhlIHJlbGF0aW9uc2hpcC4KCiAgICAgICAgICAgICAgICBUaGlzIG11c3QgYmUgYXR0YWNoZWQgdG8gdGhlIFRvcG9sb2d5IFJlbGF0aW9uIGluc3RhbmNlLCBvdXRzaWRlIG9mIHRoZQogICAgICAgICAgICAgICAgZGVjbGFyZWQgVG9wb2xvZ3kgUmVsYXRpb25zaGlwJ3MgYXR0cmlidXRlcy4gVGhpcyBpcyBleHBvc2VkIHRvIHRoZQogICAgICAgICAgICAgICAgY29uc3VtZXJzIGFuZCBjYW4gb25seSBiZSBzZXQgYnkgdGhlIHJlc3BvbnNpYmxlIGFkYXB0ZXIuIFRoaXMKICAgICAgICAgICAgICAgIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQsIGFuZCBpdCBNVVNUIE5PVCBiZSBhdWdtZW50ZWQgb3IgZGV2aWF0ZWQgaW4KICAgICAgICAgICAgICAgIGFueSB3YXksIHVubGVzcyBzdGF0ZWQgb3RoZXJ3aXNlLiI7CgogICAgICAgICAgICB0eXBlIHNvdXJjZUlkOwogICAgICAgICAgICBvcmRlcmVkLWJ5IHVzZXI7CiAgICAgICAgICAgIG1pbi1lbGVtZW50cyAyOwogICAgICAgIH0KICAgIH0KCiAgICBjb250YWluZXIgbWV0YWRhdGEgewogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGlzIGNvbnRhaW5lciBzZXJ2ZXMgYXMgYW4gZXh0ZW5zaW9uIHBvaW50IHRvIGRlZmluZSBtZXRhZGF0YS4gVGhleQogICAgICAgICAgICBjYW4gb25seSBiZSBkZWZpbmVkIGluIG5hbWUgdmFsdWUgcGFpcnMuCgogICAgICAgICAgICBUaGlzIG11c3QgYmUgYXR0YWNoZWQgdG8gdGhlIFRvcG9sb2d5IEVudGl0eSBvciBUb3BvbG9neSBSZWxhdGlvbiBpbnN0YW5jZSwKICAgICAgICAgICAgb3V0c2lkZSBvZiB0aGUgZGVjbGFyZWQgVG9wb2xvZ3kgRW50aXR5IG9yIFRvcG9sb2d5IFJlbGF0aW9uc2hpcCdzCiAgICAgICAgICAgIGF0dHJpYnV0ZXMuIFRoaXMgaXMgZXhwb3NlZCB0byB0aGUgY29uc3VtZXJzIGFuZCBjYW4gb25seSBiZSBzZXQgYnkKICAgICAgICAgICAgdGhlIHJlc3BvbnNpYmxlIGFkYXB0ZXIuIFRoaXMgY2Fubm90IGJlIGluc3RhbnRpYXRlZCwgYW5kIGl0IE1VU1QgTk9UIGJlCiAgICAgICAgICAgIGF1Z21lbnRlZCBvciBkZXZpYXRlZCBpbiBhbnkgd2F5LCB1bmxlc3Mgc3RhdGVkIG90aGVyd2lzZS4iOwoKICAgICAgICBsZWFmIHJlbGlhYmlsaXR5SW5kaWNhdG9yIHsKICAgICAgICAgICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgICAgICAgICAgICBlbnVtIE9LIHsKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIGRhdGEgaXMgaW4gYWxpZ25tZW50IHdpdGggdGhlIHNvdXJjZSBvZiB0cnV0aCwKICAgICAgICAgICAgICAgICAgICBhcyBmYXIgYXMgVG9wb2xvZ3kgRXhwb3N1cmUgSGFuZGxpbmcgaXMgYXdhcmUuIjsKICAgICAgICAgICAgICAgICAgICB2YWx1ZSAwOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZW51bSBSRVNUT1JFRCB7CiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBkYXRhIHdhcyByZXN0b3JlZCBmcm9tIGJhY2t1cCBhbmQgdGhlIHJlc3BvbnNpYmxlCiAgICAgICAgICAgICAgICAgICAgYWRhcHRlcnMgYXJlIGNoZWNraW5nIHRvIGVuc3VyZSB0aGUgZGF0YSBpcyBjdXJyZW50LiI7CiAgICAgICAgICAgICAgICAgICAgdmFsdWUgMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVudW0gQURWSVNFRCB7CiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkVudGl0eSBpbXBsaWNpdGx5IGNyZWF0ZWQgYnkgVG9wb2xvZ3kgRXhwb3N1cmUgSGFuZGxpbmcgYW5kCiAgICAgICAgICAgICAgICAgICAgcG90ZW50aWFsbHkgbm90IGFsaWduZWQgd2l0aCB0aGUgc291cmNlIG9mIHRydXRoLiI7CiAgICAgICAgICAgICAgICAgICAgdmFsdWUgMjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBpZGVudGl0eSBjbGFzc2lmaWVyIHsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIGNsYXNzaWZpZXIgaXMgdXNlZCBhcyBhIGJhc2UgdG8gcHJvdmlkZSBhbGwgY2xhc3NpZmllcnMKICAgICAgICB3aXRoIGlkZW50aXR5LiAiOwogICAgfQoKICAgIHR5cGVkZWYgc291cmNlSWQgewogICAgICAgIGRlc2NyaXB0aW9uICJBbiBpZGVudGl0eSB0aGF0IHJlcHJlc2VudHMgYSBuYXRpdmUgaWRlbnRpZmllciBvZiBhIHRvcG9sb2d5IGVudGl0eS4iOwogICAgICAgIHR5cGUgc3RyaW5nOwogICAgfQp9
o-ran-smo-teiv-equipment urn:o-ran:smo-teiv-equipment EQUIPMENT [] 2024-10-21 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWVxdWlwbWVudCB7CiAgICB5YW5nLXZlcnNpb24gMS4xOwogICAgbmFtZXNwYWNlICJ1cm46by1yYW46c21vLXRlaXYtZXF1aXBtZW50IjsKICAgIHByZWZpeCBvci10ZWl2LWVxdWlwOwoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyB7cHJlZml4IG9yLXRlaXYtdHlwZXM7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7cHJlZml4IG9yLXRlaXYteWV4dDsgfQoKICAgIGltcG9ydCBpZXRmLWdlby1sb2NhdGlvbiB7CiAgICAgICAgcHJlZml4IGdlbzsKICAgICAgICByZWZlcmVuY2UgIlJGQyA5MTc5OiBBIFlBTkcgR3JvdXBpbmcgZm9yIEdlb2dyYXBoaWMgTG9jYXRpb25zIjsKICAgIH0KCiAgICBvcmdhbml6YXRpb24gIk9SQU4iOwogICAgY29udGFjdCAiVGhlIEF1dGhvcnMiOwogICAgZGVzY3JpcHRpb24KICAgICJSQU4gRXF1aXBtZW50IHRvcG9sb2d5IG1vZGVsLgoKICAgIFRoaXMgbW9kZWwgY29udGFpbnMgdGhlIHRvcG9sb2d5IGVudGl0aWVzIGFuZCByZWxhdGlvbnMgaW4gdGhlCiAgICBSQU4gRXF1aXBtZW50IGRvbWFpbiwgd2hpY2ggaXMgbW9kZWxsZWQgdG8gdW5kZXJzdGFuZCB0aGUgcGh5c2ljYWwKICAgIGxvY2F0aW9uIG9mIGVxdWlwbWVudCBzdWNoIGFzIGFudGVubmFzIGFzc29jaWF0ZWQgd2l0aCBhIGNlbGwvY2FycmllcgogICAgYW5kIHRoZWlyIHJlbGV2YW50IHByb3BlcnRpZXMgZS5nLiB0aWx0LCBtYXggcG93ZXIgZXRjLgoKICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZCI7CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMjEiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiRGVwcmVjYXRlIEFudGVubmFNb2R1bGUgYXR0cmlidXRlIGFudGVubmFCZWFtV2lkdGguCiAgICAgICAgVG8gYmUgcmVwbGFjZWQgYnkgaG9yaXpvbnRhbEJlYW1XaWR0aCBhbmQgdmVydGljYWxCZWFtV2lkdGguIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC42LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDgiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgYXppbXV0aCBhdHRyaWJ1dGUgZm9yIEFudGVubmFNb2R1bGUuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC41LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmdzLCBPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwIG9yIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAKICAgICAgICB0byB0aGUgY29ycmVzcG9uZGluZyB0b3BvbG9neSBvYmplY3RzLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA1LTI0IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkluaXRpYWwgcmV2aXNpb24uIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmRvbWFpbiBFUVVJUE1FTlQ7CgogICAgbGlzdCBBbnRlbm5hTW9kdWxlIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQW4gQW50ZW5uYSBNb2R1bGUgcmVwcmVzZW50cyB0aGUgcGh5c2ljYWwgYXNwZWN0IG9mIGFuCiAgICAgICAgYW50ZW5uYS4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIGFudGVubmFNb2RlbE51bWJlciB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVmVuZG9yLXNwZWNpZmljIGFudGVubmEgbW9kZWwgaWRlbnRpZmllci4gVGhpcwogICAgICAgICAgICAgICAgYXR0cmlidXRlIGlzIHBhcnQgb2YgQUlTRyB2MyBBREIgU3RhbmRhcmQgYW5kIGhhcyBubwogICAgICAgICAgICAgICAgb3BlcmF0aW9uYWwgaW1wYWN0LiI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBtZWNoYW5pY2FsQW50ZW5uYUJlYXJpbmcgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkFudGVubmEgYmVhcmluZyBvbiBhbnRlbm5hIHN1YnVuaXQgd2hlcmUgYW50ZW5uYQogICAgICAgICAgICAgICAgdW5pdCBpcyBpbnN0YWxsZWQuIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgbWVjaGFuaWNhbEFudGVubmFUaWx0IHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJUaGUgZml4ZWQgYW50ZW5uYSB0aWx0IG9mIHRoZSBpbnN0YWxsYXRpb24sIGRlZmluZWQKICAgICAgICAgICAgICAgIGFzIHRoZSBpbmNsaW5hdGlvbiBvZiB0aGUgYW50ZW5uYSBlbGVtZW50IHJlc3BlY3QgdG8gdGhlCiAgICAgICAgICAgICAgICB2ZXJ0aWNhbCBwbGFuZS4gSXQgaXMgYSBzaWduZWQgdmFsdWUuIFBvc2l0aXZlIGluZGljYXRlcwogICAgICAgICAgICAgICAgZG93bnRpbHQsIGFuZCBuZWdhdGl2ZSBpbmRpY2F0ZXMgdXB0aWx0LiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIHBvc2l0aW9uV2l0aGluU2VjdG9yIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJBbnRlbm5hIHVuaXQgcG9zaXRpb24gd2l0aGluIHNlY3Rvci4gVGhpcyBhdHRyaWJ1dGUKICAgICAgICAgICAgICAgIGlzIHBhcnQgb2YgQUlTRyB2MyBBREIgU3RhbmRhcmQgYW5kIGhhcyBubyBvcGVyYXRpb25hbAogICAgICAgICAgICAgICAgaW1wYWN0LiI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiB0b3RhbFRpbHQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRvdGFsIGFudGVubmEgZWxldmF0aW9uIGluY2x1ZGluZyB0aGUgaW5zdGFsbGVkCiAgICAgICAgICAgICAgICB0aWx0IGFuZCB0aGUgdGlsdCBhcHBsaWVkIGJ5IHRoZSBSZW1vdGUgRWxlY3RyaWNhbAogICAgICAgICAgICAgICAgVGlsdCAoUkVUKS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBlbGVjdHJpY2FsQW50ZW5uYVRpbHQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkVsZWN0cmljYWxseS1jb250cm9sbGVkIHRpbHQgb2YgbWFpbiBiZWFtIG1heGltdW0KICAgICAgICAgICAgICAgIHdpdGggcmVzcGVjdCB0byBkaXJlY3Rpb24gb3J0aG9nb25hbCB0byBhbnRlbm5hIGVsZW1lbnQKICAgICAgICAgICAgICAgIGF4aXMgKHNlZSAzR1BQIFRTIDI1LjQ2NikuIFZhbHVlIGlzIHNpZ25lZDsgdGlsdCBkb3duIGlzCiAgICAgICAgICAgICAgICBwb3NpdGl2ZSwgdGlsdCB1cCBpcyBuZWdhdGl2ZS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZi1saXN0IGFudGVubmFCZWFtV2lkdGggewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBhbmd1bGFyIHNwYW4gb2YgdGhlIG1haW4gbG9iZSBvZiB0aGUgYW50ZW5uYQogICAgICAgICAgICAgICAgcmFkaWF0aW9uIHBhdHRlcm4gaW4gdGhlIGhvcml6b250YWwgcGxhbmUuIE1lYXN1cmVkIGluCiAgICAgICAgICAgICAgICBkZWdyZWVzLgoKICAgICAgICAgICAgICAgIERlcHJlY2F0ZWQ6IFNpbmNlIDI0LlE0LiBSZXBsYWNlZCBieSBBbnRlbm5hTW9kdWxlOjpob3Jpem9udGFsQmVhbVdpZHRoCiAgICAgICAgICAgICAgICBhbmQgQW50ZW5uYU1vZHVsZTo6dmVydGljYWxCZWFtV2lkdGguIFBsYW5uZWQgdG8gYmUgcmVtb3ZlZC4iOwogICAgICAgICAgICAgICAgdHlwZSB1aW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgaG9yaXpvbnRhbEJlYW1XaWR0aCAgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBhbmd1bGFyIHNwYW4gb2YgdGhlIG1haW4gbG9iZSBvZiB0aGUgYW50ZW5uYQogICAgICAgICAgICAgICAgcmFkaWF0aW9uIHBhdHRlcm4gaW4gdGhlIGhvcml6b250YWwgcGxhbmUuIjsKICAgICAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgMTsKICAgICAgICAgICAgICAgICAgICByYW5nZSAiMC4uMzYwIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHVuaXRzICJkZWNpbWFsIGRlZ3JlZXMiOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIHZlcnRpY2FsQmVhbVdpZHRoICAgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBhbmd1bGFyIHNwYW4gb2YgdGhlIG1haW4gbG9iZSBvZiB0aGUgYW50ZW5uYQogICAgICAgICAgICAgICAgcmFkaWF0aW9uIHBhdHRlcm4gaW4gdGhlIHZlcnRpY2FsIHBsYW5lLiI7CiAgICAgICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDE7CiAgICAgICAgICAgICAgICAgICAgcmFuZ2UgIjAuLjM2MCI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB1bml0cyAiZGVjaW1hbCBkZWdyZWVzIjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBhemltdXRoIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJUaGUgdmFsdWUgb2YgdGhlIGF6aW11dGggb2YgdGhlIEFudGVubmEgTW9kdWxlLiI7CiAgICAgICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDE7CiAgICAgICAgICAgICAgICAgICAgcmFuZ2UgIjAuLjM2MCI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB1bml0cyAiZGVjaW1hbCBkZWdyZWVzIjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdXNlcyBnZW86Z2VvLWxvY2F0aW9uOwogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IFNpdGUgewogICAgICAgIGRlc2NyaXB0aW9uICJBIHNpdGUgaXMgYSBwaHlzaWNhbCBsb2NhdGlvbiB3aGVyZSBhbiBlcXVpcG1lbnQgY2FuIGJlCiAgICAgICAgaW5zdGFsbGVkLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBTaXRlIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CgogICAgICAgICAgICB1c2VzIGdlbzpnZW8tbG9jYXRpb247CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgQU5URU5OQU1PRFVMRV9JTlNUQUxMRURfQVRfU0lURSB7IC8vIDAuLm4gdG8gMC4uMQoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBBbnRlbm5hTW9kdWxlIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgU2l0ZSB0eXBlLgogICAgICAgICAgICBUaGUgU2l0ZSByZXByZXNlbnRzIHRoZSBwaHlzaWNhbCBsb2NhdGlvbiB3aGVyZSB0aGUgQW50ZW5uYU1vZHVsZSBpcyBpbnN0YWxsZWQuCiAgICAgICAgICAgIEFuIEFudGVubmFNb2R1bGUgaW5zdGFuY2UgY2FuIG9ubHkgYmUgaW5zdGFsbGVkIGF0IG9uZSBTaXRlLgogICAgICAgICAgICBBIFNpdGUgaW5zdGFuY2UgY2FuIGhhdmUgbWFueSBpbnN0YWxsZWQgQW50ZW5uYU1vZHVsZXMuCiAgICAgICAgICAgICI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmIGluc3RhbGxlZC1hdC1zaXRlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIkFudGVubmEgTW9kdWxlIGluc3RhbGxlZCBhdCBTaXRlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBBbnRlbm5hTW9kdWxlOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3QgaW5zdGFsbGVkLWFudGVubmFNb2R1bGUgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiU2l0ZSB3aGVyZSBBbnRlbm5hIE1vZHVsZSBpcyBpbnN0YWxsZWQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIFNpdGU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9Cn0=
o-ran-smo-teiv-oam urn:o-ran:smo-teiv-oam OAM [] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LW9hbSB7CiAgICB5YW5nLXZlcnNpb24gMS4xOwogICAgbmFtZXNwYWNlICJ1cm46by1yYW46c21vLXRlaXYtb2FtIjsKICAgIHByZWZpeCBvci10ZWl2LW9hbTsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMgeyBwcmVmaXggb3ItdGVpdi10eXBlczsgfQoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy1leHRlbnNpb25zIHsgcHJlZml4IG9yLXRlaXYteWV4dDsgfQoKICAgIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgICBjb250YWN0ICJUaGUgQXV0aG9ycyI7CiAgICBkZXNjcmlwdGlvbiAKICAgICJSQU4gTyZNIHRvcG9sb2d5IG1vZGVsLgoKICAgIFRoaXMgbW9kZWwgY29udGFpbnMgdGhlIHRvcG9sb2d5IGVudGl0aWVzIGFuZCByZWxhdGlvbnMgaW4gdGhlCiAgICBSQU4gTyZNIGRvbWFpbiwgd2hpY2ggYXJlIGludGVuZGVkIHRvIHJlcHJlc2VudCBtYW5hZ2VtZW50IHN5c3RlbXMKICAgIGFuZCBtYW5hZ2VtZW50IGludGVyZmFjZXMuCgogICAgQ29weXJpZ2h0IChDKSAyMDI0IEVyaWNzc29uCiAgICBNb2RpZmljYXRpb25zIENvcHlyaWdodCAoQykgMjAyNCBPcGVuSW5mcmEgRm91bmRhdGlvbiBFdXJvcGUKCiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpOwogICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgogICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CgogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCgogICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQogICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLAogICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KCiAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCI7CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmcsIE9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnAgdG8gdGhlIHRvcG9sb2d5IG9iamVjdC4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNS0yNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIG9yLXRlaXYteWV4dDpkb21haW4gT0FNOwoKICAgIGxpc3QgTWFuYWdlZEVsZW1lbnQgewogICAgICAgIGRlc2NyaXB0aW9uICJBIE1hbmFnZWQgRWxlbWVudCAoTUUpIGlzIGEgbm9kZSBpbnRvIGEgdGVsZWNvbW11bmljYXRpb24KICAgICAgICBuZXR3b3JrIHByb3ZpZGluZyBzdXBwb3J0IGFuZC9vciBzZXJ2aWNlIHRvIHN1YnNjcmliZXJzLiBBbiBNRQogICAgICAgIGNvbW11bmljYXRlcyB3aXRoIGEgbWFuYWdlciBhcHBsaWNhdGlvbiAoZGlyZWN0bHkgb3IgaW5kaXJlY3RseSkKICAgICAgICBvdmVyIG9uZSBvciBtb3JlIGludGVyZmFjZXMgZm9yIHRoZSBwdXJwb3NlIG9mIGJlaW5nIG1vbml0b3JlZAogICAgICAgIGFuZC9vciBjb250cm9sbGVkLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwogICAgfQp9
o-ran-smo-teiv-ran urn:o-ran:smo-teiv-ran RAN [] 2024-10-08 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJhbiB7CiAgICB5YW5nLXZlcnNpb24gMS4xOwogICAgbmFtZXNwYWNlICJ1cm46by1yYW46c21vLXRlaXYtcmFuIjsKICAgIHByZWZpeCBvci10ZWl2LXJhbjsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgXzNncHAtY29tbW9uLXlhbmctdHlwZXMgeyBwcmVmaXggdHlwZXMzZ3BwOyB9CgogICAgaW1wb3J0IGlldGYtZ2VvLWxvY2F0aW9uIHsKICAgICAgICBwcmVmaXggZ2VvOwogICAgICAgIHJlZmVyZW5jZSAiUkZDIDkxNzk6IEEgWUFORyBHcm91cGluZyBmb3IgR2VvZ3JhcGhpYyBMb2NhdGlvbnMiOwogICAgfQoKICAgIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgICBjb250YWN0ICJUaGUgQXV0aG9ycyI7CiAgICBkZXNjcmlwdGlvbgogICAgICAgICJSQU4gTG9naWNhbCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgdG9wb2xvZ3kgZW50aXRpZXMgYW5kIHJlbGF0aW9ucyBpbiB0aGUKICAgICAgICBSQU4gTG9naWNhbCBkb21haW4sIHdoaWNoIHJlcHJlc2VudHMgdGhlIGZ1bmN0aW9uYWwgY2FwYWJpbGl0eQogICAgICAgIG9mIHRoZSBkZXBsb3llZCBSQU4gdGhhdCBhcmUgcmVsZXZhbnQgdG8gckFwcHMgdXNlIGNhc2VzLgoKICAgICAgICBDb3B5cmlnaHQgKEMpIDIwMjQgRXJpY3Nzb24KICAgICAgICBNb2RpZmljYXRpb25zIENvcHlyaWdodCAoQykgMjAyNCBPcGVuSW5mcmEgRm91bmRhdGlvbiBFdXJvcGUKCiAgICAgICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgICAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiAgICAgICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CgogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgICAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAgICAgICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLAogICAgICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAgICAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KCiAgICAgICAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAiOwoKICAgIHJldmlzaW9uICIyMDI0LTEwLTA4IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkFkZGVkIHJhbmdlIGZvciBhemltdXRoIGF0dHJpYnV0ZSBvZiBTZWN0b3IuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC42LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmdzLCBPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwIG9yIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAKICAgICAgICB0byB0aGUgY29ycmVzcG9uZGluZyB0b3BvbG9neSBvYmplY3QuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC41LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDctMTUiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhpcyByZXZpc2lvbiBhbGlnbnMgTy1SQU4gV29yayBHcm91cCAxMCBTdGFnZSAyIFNwZWNpZmljYXRpb24gKE8tUkFOLldHMTAuVEUmSVYtQ0lNSS4wLVIwMDQudjAyLjAwKSI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA1LTI0IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkluaXRpYWwgcmV2aXNpb24uIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmRvbWFpbiBSQU47CgogICAgbGlzdCBPUlVGdW5jdGlvbiB7CiAgICAgICAgZGVzY3JpcHRpb24gIk8tUkFOIFJhZGlvIFVuaXQgKE8tUlUpLgoKICAgICAgICBBIGxvZ2ljYWwgbm9kZSBob3N0aW5nIExvdy1QSFkgbGF5ZXIgYW5kIFJGIHByb2Nlc3NpbmcgYmFzZWQgb24gYQogICAgICAgIGxvd2VyIGxheWVyIGZ1bmN0aW9uYWwgc3BsaXQuICBUaGlzIGlzIHNpbWlsYXIgdG8gM0dQUOKAmXMg4oCcVFJQ4oCdIG9yCiAgICAgICAg4oCcUlJI4oCdIGJ1dCBtb3JlIHNwZWNpZmljIGluIGluY2x1ZGluZyB0aGUgTG93LVBIWSBsYXllciAoRkZUL2lGRlQsCiAgICAgICAgUFJBQ0ggZXh0cmFjdGlvbikuIFRoZSBPLVJVIHRlcm1pbmF0ZXMgdGhlIE9wZW4gRnJvbnRoYXVsIGludGVyZmFjZQogICAgICAgIChhbHNvIGtub3duIGFzIExMUyBpbnRlcmZhY2UpIGFzIHdlbGwgYXMgTG93LVBIWSBmdW5jdGlvbnMgb2YgdGhlCiAgICAgICAgcmFkaW8gaW50ZXJmYWNlIHRvd2FyZHMgdGhlIFVFLiBUaGlzIGlzIGRlcGxveWVkIGFzIGEgUE5GLiBUaGUgTy1SVQogICAgICAgIHRlcm1pbmF0ZXMgdGhlIE9wZW4gRnJvbnRoYXVsIE0tUGxhbmUgaW50ZXJmYWNlIHRvd2FyZHMgdGhlIE8tRFUKICAgICAgICBhbmQgU01PLgoKICAgICAgICBOb3RlOiBJbiBUb3BvbG9neSwgeW91IGNhbiBjcmVhdGUsIHJlYWQsIHVwZGF0ZSwgYW5kIGRlbGV0ZQogICAgICAgIHRoZSBPLVJVIG9iamVjdC4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIG9ydUlkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIE8tUlUgd2l0aGluIGEgT1JVRnVuY3Rpb24iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQ2NDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE5lYXJSVFJJQ0Z1bmN0aW9uIHsKICAgICAgICBkZXNjcmlwdGlvbiAiTmVhci1SZWFsLVRpbWUgUkFOIEludGVsbGlnZW50IENvbnRyb2xsZXIgKE5lYXItUlQgUklDKS4KCiAgICAgICAgQW4gTy1SQU4gTmV0d29yayBGdW5jdGlvbiAoTkYpIHRoYXQgZW5hYmxlcyBuZWFyLXJlYWwtdGltZSBjb250cm9sCiAgICAgICAgYW5kIG9wdGltaXphdGlvbiBvZiBSQU4gZWxlbWVudHMgYW5kIHJlc291cmNlcyB2aWEgZmluZS1ncmFpbmVkCiAgICAgICAgZGF0YSBjb2xsZWN0aW9uIGFuZCBhY3Rpb25zIG92ZXIgRTIgaW50ZXJmYWNlLiBJdCBtYXkgaW5jbHVkZQogICAgICAgIEFJL01MIChBcnRpZmljaWFsIEludGVsbGlnZW5jZSAvIE1hY2hpbmUgTGVhcm5pbmcpIHdvcmtmbG93CiAgICAgICAgaW5jbHVkaW5nIG1vZGVsIHRyYWluaW5nLCBpbmZlcmVuY2UsIGFuZCB1cGRhdGVzLgoKICAgICAgICBOb3RlOiBJbiBUb3BvbG9neSwgeW91IGNhbiBjcmVhdGUsIHJlYWQsIHVwZGF0ZSwgYW5kIGRlbGV0ZQogICAgICAgIHRoZSBOZWFyLVJUIFJJQyBvYmplY3QuIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGNvbnRhaW5lciBhdHRyaWJ1dGVzIHsKICAgICAgICAgICAgbGVhZiBuZWFyUnRSaWNJZCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBOZWFyLVJUIFJJQyB3aXRoaW4gYSBOZWFyUlRSSUNGdW5jdGlvbiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDY0OwogICAgICAgICAgICB9CgogICAgICAgICAgICBjb250YWluZXIgcExNTklkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJQTE1OIGlkZW50aWZpZXIgdG8gYmUgdXNlZCBhcyBwYXJ0IG9mIGdsb2JhbCBSQU4KICAgICAgICAgICAgICAgIG5vZGUgaWRlbnRpdHkiOwogICAgICAgICAgICAgICAgdXNlcyB0eXBlczNncHA6UExNTklkOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgT0RVRnVuY3Rpb24gewogICAgICAgIGRlc2NyaXB0aW9uICJPLVJBTiBEaXN0cmlidXRlZCBVbml0IChPLURVKS4KCiAgICAgICAgVGhlIE8tRFUgaXMgYW4gTy1SQU4gTkYgaW4gdGhlIE8tUkFOIEFyY2hpdGVjdHVyZS4gQW4gTy1EVSwgY29tYmluZWQKICAgICAgICB3aXRoIG9uZSBvciBtb3JlIE8tUlUocykgY29ubmVjdGVkIHRvIGl0LCBzdXBwb3J0cyBhbmQgaXMgZnVsbHkKICAgICAgICBjb21wYXRpYmxlIHdpdGggdGhlIGZ1bmN0aW9ucyBvZiBhIGdOQi1EVSBhcyBkZWZpbmVkIGJ5IDNHUFAgVFMgMzguNDAxLgoKICAgICAgICBUaGUgZm9sbG93aW5nIGlzIHRydWUgZm9yIGEgTy1EVToKICAgICAgICBJcyBjb25uZWN0ZWQgdG8gdGhlIE8tQ1UtQ1AgdGhyb3VnaCB0aGUgRjEtQyBpbnRlcmZhY2UuIElzCiAgICAgICAgY29ubmVjdGVkIHRvIHRoZSBPLUNVLVVQIHRocm91Z2ggdGhlIEYxLVUgaW50ZXJmYWNlLiBPbmUgTy1EVSBpcwogICAgICAgIGNvbm5lY3RlZCB0byBvbmx5IG9uZSBPLUNVLUNQLiBPbmUgTy1EVSBjYW4gYmUgY29ubmVjdGVkIHRvCiAgICAgICAgbXVsdGlwbGUgTy1DVS1VUHMgdW5kZXIgdGhlIGNvbnRyb2wgb2YgdGhlIHNhbWUgTy1DVS1DUC4KCiAgICAgICAgTm90ZTogQSBnTkIgbWF5IGNvbnNpc3Qgb2YgYSBPLUNVLUNQLCBtdWx0aXBsZSBPLUNVLVVQcyBhbmQKICAgICAgICBtdWx0aXBsZSBPLURVcy4gTy1EVSBpcyBhIGNvbmNyZXRlIGNsYXNzIHRoYXQgZXh0ZW5kcyB0aGUgTkctUkFOCiAgICAgICAgbm9kZSBvYmplY3QuIEluIFRvcG9sb2d5LCB5b3UgY2FuIGNyZWF0ZSwgcmVhZCwgdXBkYXRlLCBhbmQgZGVsZXRlCiAgICAgICAgdGhlIGdOQi1EVSBvYmplY3QuIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGNvbnRhaW5lciBhdHRyaWJ1dGVzIHsKICAgICAgICAgICAgY29udGFpbmVyIGRVcExNTklkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJQTE1OIGlkZW50aWZpZXIgdXNlZCBhcyBwYXJ0IG9mIFBNIEV2ZW50cyBkYXRhIjsKICAgICAgICAgICAgICAgIHVzZXMgdHlwZXMzZ3BwOlBMTU5JZDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBnTkJEVUlkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIERVIHdpdGhpbiBhIGdOb2RlQiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDY0OwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIGdOQklkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJJZGVudGl0eSBvZiBnTm9kZUIgd2l0aGluIGEgUExNTiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDY0OwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIGdOQklkTGVuZ3RoIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJMZW5ndGggb2YgZ05CSWQgYml0IHN0cmluZyByZXByZXNlbnRhdGlvbiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgT0NVQ1BGdW5jdGlvbiB7CiAgICAgICAgZGVzY3JpcHRpb24gIk8tUkFOIENlbnRyYWxpemVkIFVuaXQgQ29udHJvbCBQbGFuZSAoTy1DVS1DUCkKCiAgICAgICAgVGhpcyBpcyBhIGxvZ2ljYWwgbm9kZSBob3N0aW5nIHRoZSBSYWRpbyBSZXNvdXJjZSBDb250cm9sIChSUkMpIGFuZAogICAgICAgIHRoZSBjb250cm9sIHBsYW5lIHBhcnQgb2YgdGhlIFBhY2tldCBEYXRhIENvbnZlcmdlbmNlIFByb3RvY29sCiAgICAgICAgKFBEQ1ApLiBUaGUgTy1DVS1DUCB0ZXJtaW5hdGVzIHRoZSBFMSBpbnRlcmZhY2UgY29ubmVjdGVkIHdpdGgKICAgICAgICB0aGUgTy1DVS1VUCBhbmQgdGhlIEYxLUMgaW50ZXJmYWNlIGNvbm5lY3RlZCB3aXRoIHRoZSBPLVJBTgogICAgICAgIERpc3RyaWJ1dGVkIFVuaXQgKE8tRFUpLgoKICAgICAgICBUaGUgZm9sbG93aW5nIGlzIHRydWUgZm9yIGEgTy1DVS1DUDoKICAgICAgICBJcyBjb25uZWN0ZWQgdG8gdGhlIE8tRFUgdGhyb3VnaCB0aGUgRjEtQyBpbnRlcmZhY2UuIElzIGNvbm5lY3RlZAogICAgICAgIHRvIHRoZSBPLUNVLVVQIHRocm91Z2ggdGhlIEUxIGludGVyZmFjZS4gT25seSBvbmUgTy1DVS1DUCBpcwogICAgICAgIGNvbm5lY3RlZCB0byBvbmUgTy1EVS4gT25seSBvbmUgTy1DVS1DUCBpcyBjb25uZWN0ZWQgdG8gb25lCiAgICAgICAgTy1DVS1VUC4gT25lIE8tRFUgY2FuIGJlIGNvbm5lY3RlZCB0byBtdWx0aXBsZSBPLUNVLVVQcyB1bmRlcgogICAgICAgIHRoZSBjb250cm9sIG9mIHRoZSBzYW1lIE8tQ1UtQ1AuIE9uZSBPLUNVLVVQIGNhbiBiZSBjb25uZWN0ZWQgdG8KICAgICAgICBtdWx0aXBsZSBEVXMgdW5kZXIgdGhlIGNvbnRyb2wgb2YgdGhlIHNhbWUgTy1DVS1DUC4KCiAgICAgICAgTm90ZTogQSBnTkIgbWF5IGNvbnNpc3Qgb2YgYSBPLUNVLUNQLCBtdWx0aXBsZSBPLUNVLVVQcyBhbmQKICAgICAgICBtdWx0aXBsZSBPLURVcy4gQW4gTy1DVS1DUCBpcyBhIGNvbmNyZXRlIGNsYXNzIHRoYXQgZXh0ZW5kcyB0aGUKICAgICAgICBORy1SQU4gbm9kZSBvYmplY3QuIEluIFRvcG9sb2d5LCB5b3UgY2FuIGNyZWF0ZSwgcmVhZCwgdXBkYXRlLCBhbmQKICAgICAgICBkZWxldGUgdGhlIE8tQ1UtQ1Agb2JqZWN0LiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgZ05CQ1VOYW1lIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOYW1lIG9mIGdOb2RlQi1DVSI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBnTkJJZCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiSWRlbnRpdHkgb2YgZ05vZGVCIHdpdGhpbiBhIFBMTU4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQ2NDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBnTkJJZExlbmd0aCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGVuZ3RoIG9mIGdOQklkIGJpdCBzdHJpbmcgcmVwcmVzZW50YXRpb24iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgY29udGFpbmVyIHBMTU5JZCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiUExNTiBpZGVudGlmaWVyIHRvIGJlIHVzZWQgYXMgcGFydCBvZiBnbG9iYWwgUkFOCiAgICAgICAgICAgICAgICBub2RlIGlkZW50aXR5IjsKICAgICAgICAgICAgICAgIHVzZXMgdHlwZXMzZ3BwOlBMTU5JZDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE9DVVVQRnVuY3Rpb24gewogICAgICAgIGRlc2NyaXB0aW9uICJPLVJBTiBDZW50cmFsaXplZCBVbml0IFVzZXIgUGxhbmUgKE8tQ1UtVVApCgogICAgICAgIEFuIE8tQ1UtVVAgaXMgYSBsb2dpY2FsIG5vZGUgaG9zdGluZyB0aGUgVXNlciBQbGFuZSBwYXJ0IG9mIHRoZQogICAgICAgIFBhY2tldCBEYXRhIENvbnZlcmdlbmNlIFByb3RvY29sIChQRENQKSBhbmQgdGhlIFNlcnZpY2UgRGF0YQogICAgICAgIEFkYXB0YXRpb24gUHJvdG9jb2wgKFNEQVApLiBUaGUgTy1DVS1VUCB0ZXJtaW5hdGVzIHRoZSBFMSBpbnRlcmZhY2UKICAgICAgICBjb25uZWN0ZWQgd2l0aCB0aGUgTy1DVS1DUCBhbmQgdGhlIEYxLVUgaW50ZXJmYWNlIGNvbm5lY3RlZCB3aXRoCiAgICAgICAgdGhlIE8tUkFOIERpc3RyaWJ1dGVkIFVuaXQgKE8tRFUpLgoKICAgICAgICBUaGUgZm9sbG93aW5nIGlzIHRydWUgZm9yIGEgTy1DVS1VUDoKICAgICAgICBJcyBjb25uZWN0ZWQgdG8gdGhlIE8tRFUgdGhyb3VnaCB0aGUgRjEtVSBpbnRlcmZhY2UuIElzIGNvbm5lY3RlZAogICAgICAgIHRvIHRoZSBPLUNVLUNQIHRocm91Z2ggdGhlIEUxIGludGVyZmFjZS4gT25lIE8tQ1UtVVAgaXMKICAgICAgICBjb25uZWN0ZWQgdG8gb25seSBvbmUgTy1DVS1DUC4gT25lIE8tRFUgY2FuIGJlIGNvbm5lY3RlZCB0bwogICAgICAgIG11bHRpcGxlIE8tQ1UtVVBzIHVuZGVyIHRoZSBjb250cm9sIG9mIHRoZSBzYW1lIE8tQ1UtQ1AuIE9uZQogICAgICAgIE8tQ1UtVVAgY2FuIGJlIGNvbm5lY3RlZCB0byBtdWx0aXBsZSBEVXMgdW5kZXIgdGhlIGNvbnRyb2wgb2YgdGhlCiAgICAgICAgc2FtZSBPLUNVLUNQLgoKICAgICAgICBOb3RlOiBBIGdOQiBtYXkgY29uc2lzdCBvZiBhbiBPLUNVLUNQLCBtdWx0aXBsZSBPLUNVLVVQcyBhbmQKICAgICAgICBtdWx0aXBsZSBPLURVcy4gQW4gTy1DVS1VUCBpcyBhIGNvbmNyZXRlIGNsYXNzIHRoYXQgZXh0ZW5kcyB0aGUKICAgICAgICBORy1SQU4gbm9kZSBvYmplY3QuIEluIFRvcG9sb2d5LCB5b3UgY2FuIGNyZWF0ZSwgcmVhZCwgdXBkYXRlLCBhbmQKICAgICAgICBkZWxldGUgdGhlIE8tQ1UtVVAgb2JqZWN0LiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgZ05CSWQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIklkZW50aXR5IG9mIGdOb2RlQiB3aXRoaW4gYSBQTE1OIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50NjQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgZ05CSWRMZW5ndGggewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkxlbmd0aCBvZiBnTkJJZCBiaXQgc3RyaW5nIHJlcHJlc2VudGF0aW9uIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxpc3QgcExNTklkTGlzdCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGlzdCBvZiBQTE1OIGlkZW50aWZpZXIgdG8gYmUgdXNlZCBhcyBwYXJ0IG9mIGdsb2JhbCBSQU4gbm9kZSBpZGVudGl0eSI7CiAgICAgICAgICAgICAgICB1c2VzIHR5cGVzM2dwcDpQTE1OSWQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBOUkNlbGxDVSB7CiAgICAgICAgZGVzY3JpcHRpb24gIlJlcHJlc2VudHMgYW4gTlIgQ2VsbCBpbiBnTm9kZUItQ1UuCgogICAgICAgIDVHIE5SIGlzIGEgbmV3IHJhZGlvIGFjY2VzcyB0ZWNobm9sb2d5IChSQVQpIGRldmVsb3BlZCBieSAzR1BQIGZvcgogICAgICAgIHRoZSA1RyAoZmlmdGggZ2VuZXJhdGlvbikgbW9iaWxlIG5ldHdvcmsuIEl0IGlzIGRlc2lnbmVkIHRvIGJlIHRoZQogICAgICAgIGdsb2JhbCBzdGFuZGFyZCBmb3IgdGhlIGFpciBpbnRlcmZhY2Ugb2YgNUcgbmV0d29ya3MuCgogICAgICAgIDVHIE5SIGhhcyBzeW5jaHJvbml6YXRpb24gc2lnbmFsIHRoYXQgaXMga25vd24gYXMgUHJpbWFyeQogICAgICAgIFN5bmNocm9uaXphdGlvbiBTaWduYWwgKFBTUykgYW5kIFNlY29uZGFyeSBTeW5jaHJvbml6YXRpb24KICAgICAgICBTaWduYWwgKFNTUykuIFRoZXNlIHNpZ25hbHMgYXJlIHNwZWNpZmljIHRvIE5SIHBoeXNpY2FsIGxheWVyIGFuZAogICAgICAgIHByb3ZpZGUgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbiByZXF1aXJlZCBieSBVRSBmb3IgZG93bmxpbmsKICAgICAgICBzeW5jaHJvbml6YXRpb246IFBTUyBwcm92aWRlcyBSYWRpbyBGcmFtZSBCb3VuZGFyeSAoUG9zaXRpb24gb2YgMXN0CiAgICAgICAgU3ltYm9sIGluIGEgUmFkaW8gZnJhbWUpIFNTUyBwcm92aWRlcyBTdWJmcmFtZSBCb3VuZGFyeSAoUG9zaXRpb24gb2YKICAgICAgICAxc3QgU3ltYm9sIGluIGEgU3ViZnJhbWUpIFBoeXNpY2FsIExheWVyIENlbGwgSUQgKFBDSSkgaW5mb3JtYXRpb24KICAgICAgICB1c2luZyBib3RoIFBTUyBhbmQgU1NTLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgY2VsbExvY2FsSWQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlVzZWQgdG9nZXRoZXIgd2l0aCBnTm9kZUIgaWRlbnRpZmllciB0byBpZGVudGlmeSBOUgogICAgICAgICAgICAgICAgY2VsbCBpbiBQTE1OLiBVc2VkIHRvZ2V0aGVyIHdpdGggZ05CSWQgdG8gZm9ybSBOQ0kuIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGNvbnRhaW5lciBwbG1uSWQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlBMTU4gSUQgZm9yIE5SIENHSS4gSWYgZW1wdHksCiAgICAgICAgICAgICAgICBHTkJDVUNQRnVuY3Rpb246OnBMTU5JZCBpcyB1c2VkIGZvciBQTE1OIElEIGluIE5SIENHSSI7CiAgICAgICAgICAgICAgICB1c2VzIHR5cGVzM2dwcDpQTE1OSWQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgbkNJIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBDZWxsIElkZW50aXR5IjsKICAgICAgICAgICAgICAgIHR5cGUgaW50NjQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgblJUQUMgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIFRyYWNraW5nIEFyZWEgQ29kZSAoVEFDKSI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgTlJDZWxsRFUgewogICAgICAgIGRlc2NyaXB0aW9uICJSZXByZXNlbnRzIGFuIE5SIENlbGwgaW4gZ05vZGVCLURVLgoKICAgICAgICA1RyBOUiBpcyBhIG5ldyByYWRpbyBhY2Nlc3MgdGVjaG5vbG9neSAoUkFUKSBkZXZlbG9wZWQgYnkgM0dQUCBmb3IKICAgICAgICB0aGUgNUcgKGZpZnRoIGdlbmVyYXRpb24pIG1vYmlsZSBuZXR3b3JrLiBJdCBpcyBkZXNpZ25lZCB0byBiZSB0aGUKICAgICAgICBnbG9iYWwgc3RhbmRhcmQgZm9yIHRoZSBhaXIgaW50ZXJmYWNlIG9mIDVHIG5ldHdvcmtzLgoKICAgICAgICA1RyBOUiBoYXMgc3luY2hyb25pemF0aW9uIHNpZ25hbCB0aGF0IGlzIGtub3duIGFzIFByaW1hcnkKICAgICAgICBTeW5jaHJvbml6YXRpb24gc2lnbmFsIChQU1MpIGFuZCBTZWNvbmRhcnkgU3luY2hyb25pemF0aW9uIHNpZ25hbAogICAgICAgIChTU1MpLiBUaGVzZSBzaWduYWxzIGFyZSBzcGVjaWZpYyB0byBOUiBwaHlzaWNhbCBsYXllciBhbmQgcHJvdmlkZQogICAgICAgIHRoZSBmb2xsb3dpbmcgaW5mb3JtYXRpb24gcmVxdWlyZWQgYnkgVUUgZm9yIGRvd25saW5rCiAgICAgICAgc3luY2hyb25pemF0aW9uOiBQU1MgcHJvdmlkZXMgUmFkaW8gRnJhbWUgQm91bmRhcnkgKFBvc2l0aW9uIG9mIDFzdAogICAgICAgIFN5bWJvbCBpbiBhIFJhZGlvIGZyYW1lKSBTU1MgcHJvdmlkZXMgU3ViZnJhbWUgQm91bmRhcnkgKFBvc2l0aW9uIG9mCiAgICAgICAgMXN0IFN5bWJvbCBpbiBhIFN1YmZyYW1lKSBQaHlzaWNhbCBMYXllciBDZWxsIElEIChQQ0kpIGluZm9ybWF0aW9uCiAgICAgICAgdXNpbmcgYm90aCBQU1MgYW5kIFNTUy4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIGNlbGxMb2NhbElkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVc2VkIHRvZ2V0aGVyIHdpdGggZ05vZGVCIGlkZW50aWZpZXIgdG8gaWRlbnRpZnkgTlIKICAgICAgICAgICAgICAgIGNlbGwgaW4gUExNTi4gVXNlZCB0b2dldGhlciB3aXRoIGdOQklkIHRvIGZvcm0gTkNJLiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIG5DSSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTlIgQ2VsbCBJZGVudGl0eS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQ2NDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBuUlBDSSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIFBoeXNpY2FsIENlbGwgSWRlbnRpdHkgKFBDSSkgb2YgdGhlIE5SIGNlbGwuIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgblJUQUMgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIFRyYWNraW5nIEFyZWEgQ29kZSAoVEFDKS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE5SU2VjdG9yQ2FycmllciB7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBOUiBTZWN0b3IgQ2FycmllciBvYmplY3QgcHJvdmlkZXMgdGhlIGF0dHJpYnV0ZXMgZm9yCiAgICAgICAgZGVmaW5pbmcgdGhlIGxvZ2ljYWwgY2hhcmFjdGVyaXN0aWNzIG9mIGEgY2FycmllciAoY2VsbCkgaW4gYQogICAgICAgIHNlY3Rvci4gQSBzZWN0b3IgaXMgYSBjb3ZlcmFnZSBhcmVhIGFzc29jaWF0ZWQgd2l0aCBhIGJhc2Ugc3RhdGlvbgogICAgICAgIGhhdmluZyBpdHMgb3duIGFudGVubmFzLCByYWRpbyBwb3J0cywgYW5kIGNvbnRyb2wgY2hhbm5lbHMuIFRoZQogICAgICAgIGNvbmNlcHQgb2Ygc2VjdG9ycyB3YXMgZGV2ZWxvcGVkIHRvIGltcHJvdmUgY28tY2hhbm5lbCBpbnRlcmZlcmVuY2UKICAgICAgICBpbiBjZWxsdWxhciBzeXN0ZW1zLCBhbmQgbW9zdCB3aXJlbGVzcyBzeXN0ZW1zIHVzZSB0aHJlZSBzZWN0b3IKICAgICAgICBjZWxscy4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIGFyZmNuREwgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIEFic29sdXRlIFJhZGlvIEZyZXF1ZW5jeSBDaGFubmVsIE51bWJlcgogICAgICAgICAgICAgICAgKE5SLUFSRkNOKSBmb3IgZG93bmxpbmsiOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBhcmZjblVMIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBBYnNvbHV0ZSBSYWRpbyBmcmVxdWVuY3kgQ2hhbm5lbCBOdW1iZXIKICAgICAgICAgICAgICAgIChOUi1BUkZDTikgZm9yIHVwbGluay4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBmcmVxdWVuY3lETCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiUkYgUmVmZXJlbmNlIEZyZXF1ZW5jeSBvZiBkb3dubGluayBjaGFubmVsIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgZnJlcXVlbmN5VUwgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlJGIFJlZmVyZW5jZSBGcmVxdWVuY3kgb2YgdXBsaW5rIGNoYW5uZWwiOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBiU0NoYW5uZWxCd0RMIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJCUyBDaGFubmVsIGJhbmR3aWR0aCBpbiBNSHogZm9yIGRvd25saW5rLiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgQW50ZW5uYUNhcGFiaWxpdHkgewogICAgICAgIGRlc2NyaXB0aW9uICJUaGlzIE1PIHNlcnZlcyBhcyBhIG1hcHBpbmcgYmV0d2VlbiB0aGUgY2VsbCBhbmQgdGhlIFJCUwogICAgICAgIGVxdWlwbWVudCB1c2VkIHRvIHByb3ZpZGUgY292ZXJhZ2UgaW4gYSBjZXJ0YWluIGdlb2dyYXBoaWNhbCBhcmVhLgogICAgICAgIFRoZSBNTyBhbHNvIGNvbnRyb2xzIHRoZSBtYXhpbXVtIG91dHB1dCBwb3dlciBvZiB0aGUgc2VjdG9yLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYtbGlzdCBlVXRyYW5GcUJhbmRzIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJMaXN0IG9mIExURSBmcmVxdWVuY3kgYmFuZHMgdGhhdCBhc3NvY2lhdGVkCiAgICAgICAgICAgICAgICBoYXJkd2FyZSBzdXBwb3J0cyI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZi1saXN0IGdlcmFuRnFCYW5kcyB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGlzdCBvZiBHRVJBTiBmcmVxdWVuY3kgYmFuZHMgdGhhdCBhc3NvY2lhdGVkCiAgICAgICAgICAgICAgICBoYXJkd2FyZSBzdXBwb3J0cyI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZi1saXN0IG5SRnFCYW5kcyB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGlzdCBvZiBOUiBmcmVxdWVuY3kgYmFuZHMgYXNzb2NpYXRlZCBoYXJkd2FyZQogICAgICAgICAgICAgICAgc3VwcG9ydHMiOwogICAgICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBTZWN0b3IgewogICAgICAgIGRlc2NyaXB0aW9uICJBIGdyb3VwIG9mIGNvLWxvY2F0ZWQgQ2VsbHMgdGhhdCBoYXZlIGEgc2hhcmVkCiAgICAgICAgY292ZXJhZ2UgYXJlYS4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIHNlY3RvcklkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVbml2ZXJzYWxseSB1bmlxdWUgSUQgZ2VuZXJhdGVkIGJ5IHRoZSBzZWN0b3IncwogICAgICAgICAgICAgICAgZGlzY292ZXJ5IG1lY2hhbmlzbS4iOwogICAgICAgICAgICAgICAgdHlwZSB1aW50NjQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHVzZXMgZ2VvOmdlby1sb2NhdGlvbjsKCiAgICAgICAgICAgIGxlYWYgYXppbXV0aCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiQXZlcmFnZSB2YWx1ZSBvZiB0aGUgYXppbXV0aHMgb2YgdGhlIGNlbGxzCiAgICAgICAgICAgICAgICBjb21wcmlzaW5nIHRoZSBzZWN0b3IsIGRldGVybWluZWQgZHVyaW5nIHNlY3RvciBkaXNjb3ZlcnkuIjsKICAgICAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0ewogICAgICAgICAgICAgICAgICAgIGZyYWN0aW9uLWRpZ2l0cyAxOwogICAgICAgICAgICAgICAgICAgIHJhbmdlICIwLi4zNjAiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdW5pdHMgImRlY2ltYWwgZGVncmVlcyI7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgT0RVRlVOQ1RJT05fUFJPVklERVNfTlJDRUxMRFUgeyAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0RVRnVuY3Rpb24gdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBOUkNlbGxEVSB0eXBlLgogICAgICAgICAgICBUaGUgT0RVRnVuY3Rpb24gcmVwcmVzZW50cyB0aGUgRFUgY29tcG9uZW50IG9mIGEgZ05CIHRoYXQgcHJvdmlkZXMgdGhlIE5SQ2VsbERVLgogICAgICAgICAgICBBIE9EVUZ1bmN0aW9uIGluc3RhbmNlIGNhbiBwcm92aWRlIG1hbnkgTlJDZWxsRFVzLgogICAgICAgICAgICBBbiBOUkNlbGxEVSBpbnN0YW5jZSBtdXN0IGJlIHByb3ZpZGVkIGJ5IGFuIE9EVUZ1bmN0aW9uLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHByb3ZpZGVkLW5yQ2VsbER1IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk8tRFUgRnVuY3Rpb24gcHJvdmlkZXMgTlIgQ2VsbC1EVS4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgT0RVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgcHJvdmlkZWQtYnktb2R1RnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTlIgQ2VsbC1EVSBwcm92aWRlZCBieSBPLURVIEZ1bmN0aW9uLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBOUkNlbGxEVTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBPRFVGVU5DVElPTl9QUk9WSURFU19OUlNFQ1RPUkNBUlJJRVIgeyAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0RVRnVuY3Rpb24gdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBOUlNlY3RvckNhcnJpZXIgdHlwZS4KICAgICAgICAgICAgVGhlIE9EVUZ1bmN0aW9uIHJlcHJlc2VudHMgdGhlIERVIGNvbXBvbmVudCBvZiBhIGdOQiB0aGF0IHByb3ZpZGVzIHRoZSBOUlNlY3RvckNhcnJpZXIuCiAgICAgICAgICAgIEEgT0RVRnVuY3Rpb24gaW5zdGFuY2UgY2FuIHByb3ZpZGUgbWFueSBOUlNlY3RvckNhcnJpZXJzLgogICAgICAgICAgICBBbiBOUlNlY3RvckNhcnJpZXIgaW5zdGFuY2UgbXVzdCBiZSBwcm92aWRlZCBieSBhbiBPRFVGdW5jdGlvbi4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBwcm92aWRlZC1uclNlY3RvckNhcnJpZXIgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1EVSBGdW5jdGlvbiBwcm92aWRlcyBOUiBTZWN0b3IgQ2Fycmllci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgT0RVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgcHJvdmlkZWQtYnktb2R1RnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTlIgU2VjdG9yIENhcnJpZXIgcHJvdmlkZWQgYnkgTy1EVSBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgTlJTZWN0b3JDYXJyaWVyOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE9DVUNQRlVOQ1RJT05fUFJPVklERVNfTlJDRUxMQ1UgeyAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0NVQ1BGdW5jdGlvbiB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SQ2VsbENVIHR5cGUuCiAgICAgICAgICAgIFRoZSBPQ1VDUEZ1bmN0aW9uIHJlcHJlc2VudHMgdGhlIENVLUNQIGNvbXBvbmVudCBvZiBhIGdOQiB0aGF0IHByb3ZpZGVzIHRoZSBOUkNlbGxDVS4KICAgICAgICAgICAgQSBPQ1VDUEZ1bmN0aW9uIGluc3RhbmNlIGNhbiBwcm92aWRlIG1hbnkgTlJDZWxsQ1UuCiAgICAgICAgICAgIEFuIE5SQ2VsbENVIGluc3RhbmNlIG11c3QgYmUgcHJvdmlkZWQgYnkgYW4gT0NVQ1BGdW5jdGlvbi4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBwcm92aWRlZC1uckNlbGxDdSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLUNVLUNQIEZ1bmN0aW9uIHByb3ZpZGVzIE5SIENlbGwtQ1UuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIE9DVUNQRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgcHJvdmlkZWQtYnktb2N1Y3BGdW5jdGlvbiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBDZWxsLUNVIHByb3ZpZGVkIGJ5IE8tQ1UtQ1AgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE5SQ2VsbENVOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5SQ0VMTERVX1VTRVNfTlJTRUNUT1JDQVJSSUVSIHsgLy8gMC4uMSB0byAwLi5uCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SQ2VsbERVIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgTlJTZWN0b3JDYXJyaWVyIHR5cGUuCiAgICAgICAgICAgIFRoZSBOUkNlbGxEVSByZXByZXNlbnRzIHRoZSBjZWxsIHRoYXQgdXNlcyB0aGUgTlJTZWN0b3JDYXJyaWVyLgogICAgICAgICAgICBBbiBOUkNlbGxEVSBpbnN0YW5jZSBjYW4gdXNlIG1hbnkgTlJTZWN0b3JDYXJyaWVycy4KICAgICAgICAgICAgQW4gTlJTZWN0b3JDYXJyaWVyIGluc3RhbmNlIGNhbiBvbmx5IGJlIHVzZWQgYnkgb25lIE5SQ2VsbERVLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHVzZWQtbnJTZWN0b3JDYXJyaWVyIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIENlbGwtRFUgdXNlcyBOUiBTZWN0b3IgQ2Fycmllci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgTlJDZWxsRFU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgdXNlZC1ieS1uckNlbGxEdSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBTZWN0b3IgQ2FycmllciB1c2VkIGJ5IE5SIENlbGwtRFUuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE5SU2VjdG9yQ2FycmllcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5SU0VDVE9SQ0FSUklFUl9VU0VTX0FOVEVOTkFDQVBBQklMSVRZIHsgLy8gMC4ubiB0byAwLi4xCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SU2VjdG9yQ2FycmllciB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIEFudGVubmFDYXBhYmlsaXR5IHR5cGUuCiAgICAgICAgICAgIFRoZSBOUlNlY3RvckNhcnJpZXIgcmVwcmVzZW50cyB0aGUgY2FycmllciB0aGF0IHVzZXMgdGhlIEFudGVubmFDYXBhYmlsaXR5LgogICAgICAgICAgICBBbiBOUlNlY3RvckNhcnJpZXIgaW5zdGFuY2UgY2FuIHVzZSBvbmx5IG9uZSBBbnRlbm5hQ2FwYWJpbGl0eS4KICAgICAgICAgICAgQW4gQW50ZW5uYUNhcGFiaWxpdHkgaW5zdGFuY2UgY2FuIGJlIHVzZWQgYnkgbWFueSBOUlNlY3RvckNhcnJpZXJzLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZiB1c2VkLWFudGVubmFDYXBhYmlsaXR5IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIFNlY3RvciBDYXJyaWVyIHVzZXMgQW50ZW5uYSBDYXBhYmlsaXR5LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBOUlNlY3RvckNhcnJpZXI7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCB1c2VkLWJ5LW5yU2VjdG9yQ2FycmllciB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJBbnRlbm5hIENhcGFiaWxpdHkgdXNlZCBieSBOUiBTZWN0b3IgQ2Fycmllci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgQW50ZW5uYUNhcGFiaWxpdHk7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBTRUNUT1JfR1JPVVBTX05SQ0VMTERVIHsgLy8gMC4uMSB0byAwLi5uCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIFNlY3RvciB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SQ2VsbERVIHR5cGUuCiAgICAgICAgICAgIFRoZSBTZWN0b3IgcmVwcmVzZW50cyB0aGUgZ2VvZ3JhcGhpY2FsIGFyZWEgdGhhdCBncm91cHMgdGhlIE5SQ2VsbERVcy4KICAgICAgICAgICAgQSBTZWN0b3IgaW5zdGFuY2UgY2FuIGdyb3VwIG1hbnkgTlJDZWxsRFVzLgogICAgICAgICAgICBBbiBOUkNlbGxEVSBpbnN0YW5jZSBjYW4gb25seSBiZSBncm91cGVkIGJ5IG9uZSBTZWN0b3IuCiAgICAgICAgICAgICI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgZ3JvdXBlZC1uckNlbGxEdSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJTZWN0b3IgZ3JvdXBzIE5SIENlbGwtRFUuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIFNlY3RvcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KCiAgICAgICAgbGVhZiBncm91cGVkLWJ5LXNlY3RvciB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBDZWxsLURVIGdyb3VwZWQgYnkgU2VjdG9yLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBOUkNlbGxEVTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KfQ==
-o-ran-smo-teiv-rel-cloud-ran urn:o-ran:smo-teiv-rel-cloud-ran REL_CLOUD_RAN ["o-ran-smo-teiv-cloud", "o-ran-smo-teiv-ran"] 2024-07-15 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1jbG91ZC1yYW4gewogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LXJlbC1jbG91ZC1yYW4iOwogICAgcHJlZml4IG9yLXRlaXYtY2xvdWR0b3JhbjsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY2xvdWQge3ByZWZpeCBvci10ZWl2LWNsb3VkOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LXJhbiB7cHJlZml4IG9yLXRlaXYtcmFuOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBDbG91ZCB0byBSQU4gTG9naWNhbCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgUkFOIENsb3VkIHRvIFJBTiBMb2dpY2FsIHRvcG9sb2d5IHJlbGF0aW9ucy4KCiAgICAgICAgQ29weXJpZ2h0IChDKSAyMDI0IEVyaWNzc29uCiAgICAgICAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogICAgICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7CiAgICAgICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgogICAgICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKCiAgICAgICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQogICAgICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICAgICAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KICAgICAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgICAgICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgogICAgICAgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wIjsKCiAgICByZXZpc2lvbiAiMjAyNC0wNS0wMiIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA3LTE1IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoaXMgcmV2aXNpb24gYWxpZ25zIE8tUkFOIFdvcmsgR3JvdXAgMTAgU3RhZ2UgMiBTcGVjaWZpY2F0aW9uIChPLVJBTi5XRzEwLlRFJklWLUNJTUkuMC1SMDA0LnYwMi4wMCkiOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICBvci10ZWl2LXlleHQ6ZG9tYWluIFJFTF9DTE9VRF9SQU47CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBORkRFUExPWU1FTlRfU0VSVkVTX09EVUZVTkNUSU9OIHsgLy8gMC4ubiB0byAwLi5tCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3Qgc2VydmljZWQtb2R1RnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1EVSBGdW5jdGlvbiBzZXJ2aWNlZCBieSB0aGlzIE5GIERlcGxveW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtY2xvdWQ6TkZEZXBsb3ltZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3Qgc2VydmluZy1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCB0aGF0IHNlcnZlcyB0aGlzIE8tRFUgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtcmFuOk9EVUZ1bmN0aW9uOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTkZERVBMT1lNRU5UX1NFUlZFU19PQ1VDUEZVTkNUSU9OIHsgLy8gMC4ubiB0byAwLi5tCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3Qgc2VydmljZWQtb2N1Y3BGdW5jdGlvbiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLUNVLUNQIEZ1bmN0aW9uIHNlcnZpY2VkIGJ5IHRoaXMgTkYgRGVwbG95bWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1jbG91ZDpORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aW5nLW5GRGVwbG95bWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJORiBEZXBsb3ltZW50IHRoYXQgc2VydmVzIHRoaXMgTy1DVS1DUCBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0NVQ1BGdW5jdGlvbjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5GREVQTE9ZTUVOVF9TRVJWRVNfT0NVVVBGVU5DVElPTiB7IC8vIDAuLm4gdG8gMC4ubQoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHNlcnZpY2VkLW9jdXVwRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DVS1VUCBGdW5jdGlvbiBzZXJ2aWNlZCBieSB0aGlzIE5GIERlcGxveW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtY2xvdWQ6TkZEZXBsb3ltZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3Qgc2VydmluZy1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCB0aGF0IHNlcnZlcyB0aGlzIE8tQ1UtVVAgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtcmFuOk9DVVVQRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBORkRFUExPWU1FTlRfU0VSVkVTX05FQVJSVFJJQ0ZVTkNUSU9OIHsgLy8gMC4ubiB0byAwLi5tCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3Qgc2VydmljZWQtbmVhclJUUklDRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmVhclJUUklDRnVuY3Rpb24gc2VydmljZWQgYnkgdGhpcyBORiBEZXBsb3ltZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBvci10ZWl2LWNsb3VkOk5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KCiAgICAgICAgbGVhZi1saXN0IHNlcnZpbmctbkZEZXBsb3ltZW50IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5GIERlcGxveW1lbnQgdGhhdCBzZXJ2ZXMgdGhpcyBOZWFyUlRSSUNGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46TmVhclJUUklDRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9Cn0=
+o-ran-smo-teiv-rel-cloud-ran urn:o-ran:smo-teiv-rel-cloud-ran REL_CLOUD_RAN ["o-ran-smo-teiv-cloud", "o-ran-smo-teiv-ran"] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1jbG91ZC1yYW4gewogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LXJlbC1jbG91ZC1yYW4iOwogICAgcHJlZml4IG9yLXRlaXYtY2xvdWR0b3JhbjsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY2xvdWQge3ByZWZpeCBvci10ZWl2LWNsb3VkOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LXJhbiB7cHJlZml4IG9yLXRlaXYtcmFuOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBDbG91ZCB0byBSQU4gTG9naWNhbCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgUkFOIENsb3VkIHRvIFJBTiBMb2dpY2FsIHRvcG9sb2d5IHJlbGF0aW9ucy4KCiAgICAgICAgQ29weXJpZ2h0IChDKSAyMDI0IEVyaWNzc29uCiAgICAgICAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogICAgICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7CiAgICAgICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgogICAgICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKCiAgICAgICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQogICAgICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICAgICAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KICAgICAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgICAgICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgogICAgICAgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wIjsKCiAgICByZXZpc2lvbiAiMjAyNC0xMC0wNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJBZGRlZCBncm91cGluZywgT3JpZ2luX1JlbGF0aW9uc2hpcF9NYXBwaW5nX0dycCB0byB0aGUgdG9wb2xvZ3kgb2JqZWN0LiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA1LTAyIiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkluaXRpYWwgcmV2aXNpb24uIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDctMTUiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhpcyByZXZpc2lvbiBhbGlnbnMgTy1SQU4gV29yayBHcm91cCAxMCBTdGFnZSAyIFNwZWNpZmljYXRpb24gKE8tUkFOLldHMTAuVEUmSVYtQ0lNSS4wLVIwMDQudjAyLjAwKSI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIG9yLXRlaXYteWV4dDpkb21haW4gUkVMX0NMT1VEX1JBTjsKCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5GREVQTE9ZTUVOVF9TRVJWRVNfT0RVRlVOQ1RJT04geyAvLyAwLi5uIHRvIDAuLm0KCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX1JlbGF0aW9uc2hpcF9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aWNlZC1vZHVGdW5jdGlvbiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLURVIEZ1bmN0aW9uIHNlcnZpY2VkIGJ5IHRoaXMgTkYgRGVwbG95bWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1jbG91ZDpORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aW5nLW5GRGVwbG95bWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJORiBEZXBsb3ltZW50IHRoYXQgc2VydmVzIHRoaXMgTy1EVSBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0RVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBORkRFUExPWU1FTlRfU0VSVkVTX09DVUNQRlVOQ1RJT04geyAvLyAwLi5uIHRvIDAuLm0KCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX1JlbGF0aW9uc2hpcF9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aWNlZC1vY3VjcEZ1bmN0aW9uIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk8tQ1UtQ1AgRnVuY3Rpb24gc2VydmljZWQgYnkgdGhpcyBORiBEZXBsb3ltZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBvci10ZWl2LWNsb3VkOk5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KCiAgICAgICAgbGVhZi1saXN0IHNlcnZpbmctbkZEZXBsb3ltZW50IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5GIERlcGxveW1lbnQgdGhhdCBzZXJ2ZXMgdGhpcyBPLUNVLUNQIEZ1bmN0aW9uLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LXJhbjpPQ1VDUEZ1bmN0aW9uOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTkZERVBMT1lNRU5UX1NFUlZFU19PQ1VVUEZVTkNUSU9OIHsgLy8gMC4ubiB0byAwLi5tCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3Qgc2VydmljZWQtb2N1dXBGdW5jdGlvbiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLUNVLVVQIEZ1bmN0aW9uIHNlcnZpY2VkIGJ5IHRoaXMgTkYgRGVwbG95bWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1jbG91ZDpORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aW5nLW5GRGVwbG95bWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJORiBEZXBsb3ltZW50IHRoYXQgc2VydmVzIHRoaXMgTy1DVS1VUCBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0NVVVBGdW5jdGlvbjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5GREVQTE9ZTUVOVF9TRVJWRVNfTkVBUlJUUklDRlVOQ1RJT04geyAvLyAwLi5uIHRvIDAuLm0KCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX1JlbGF0aW9uc2hpcF9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aWNlZC1uZWFyUlRSSUNGdW5jdGlvbiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOZWFyUlRSSUNGdW5jdGlvbiBzZXJ2aWNlZCBieSB0aGlzIE5GIERlcGxveW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtY2xvdWQ6TkZEZXBsb3ltZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3Qgc2VydmluZy1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCB0aGF0IHNlcnZlcyB0aGlzIE5lYXJSVFJJQ0Z1bmN0aW9uLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LXJhbjpOZWFyUlRSSUNGdW5jdGlvbjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KfQ==
o-ran-smo-teiv-rel-equipment-ran urn:o-ran:smo-teiv-rel-equipment-ran REL_EQUIPMENT_RAN ["o-ran-smo-teiv-equipment", "o-ran-smo-teiv-ran"] 2024-10-08 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1lcXVpcG1lbnQtcmFuIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1yZWwtZXF1aXBtZW50LXJhbiI7CiAgICBwcmVmaXggb3ItdGVpdi1yZWwtZXF1aXByYW47CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLXR5cGVzIHsgcHJlZml4IG9yLXRlaXYtdHlwZXM7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7IHByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtZXF1aXBtZW50IHsgcHJlZml4IG9yLXRlaXYtZXF1aXA7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtcmFuIHsgcHJlZml4IG9yLXRlaXYtcmFuOyB9CgoKICAgIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgICBjb250YWN0ICJUaGUgQXV0aG9ycyI7CiAgICBkZXNjcmlwdGlvbiAKICAgICJSQU4gRXF1aXBtZW50IHRvIExvZ2ljYWwgdG9wb2xvZ3kgbW9kZWwuCgogICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgUkFOIEVxdWlwbWVudCB0byBMb2dpY2FsIHRvcG9sb2d5CiAgICBlbnRpdGllcyBhbmQgcmVsYXRpb25zLgoKICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAogICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgogICAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAiOwoKICAgIHJldmlzaW9uICIyMDI0LTEwLTA4IiB7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIkFkZGVkIG5ldyByZWxhdGlvbnNoaXAgQU5URU5OQU1PRFVMRV9TRVJWRVNfTlJDRUxMRFUuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC41LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmcsIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAgdG8gdGhlIHRvcG9sb2d5IG9iamVjdC4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNS0yNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIG9yLXRlaXYteWV4dDpkb21haW4gUkVMX0VRVUlQTUVOVF9SQU47CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBBTlRFTk5BTU9EVUxFX1NFUlZFU19BTlRFTk5BQ0FQQUJJTElUWSB7IC8vIDAuLm4gdG8gMC4ubQoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBBbnRlbm5hTW9kdWxlIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgQW50ZW5uYUNhcGFiaWxpdHkgdHlwZS4KICAgICAgICAgICAgVGhlIEFudGVubmFNb2R1bGUgcmVwcmVzZW50cyB0aGUgcGh5c2ljYWwgYW50ZW5uYSB0aGF0IHNlcnZlcyB0aGUgQW50ZW5uYUNhcGFiaWxpdHkuCiAgICAgICAgICAgIEFuIEFudGVubmFNb2R1bGUgaW5zdGFuY2UgY2FuIHNlcnZlIG1hbnkgQW50ZW5uYUNhcGFiaWxpdGllcy4KICAgICAgICAgICAgQW4gQW50ZW5uYUNhcGFiaWxpdHkgaW5zdGFuY2UgY2FuIGJlIHNlcnZlZCBieSBtYW55IEFudGVubmFNb2R1bGVzLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHNlcnZpY2VkLWFudGVubmFDYXBhYmlsaXR5IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIkFudGVubmEgQ2FwYWJpbGl0eSBzZXJ2aWNlZCBieSB0aGlzIEFudGVubmEgTW9kdWxlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBvci10ZWl2LWVxdWlwOkFudGVubmFNb2R1bGU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aW5nLWFudGVubmFNb2R1bGUgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiQW50ZW5uYSBNb2R1bGUgc2VydmVzIHRoaXMgQW50ZW5uYSBDYXBhYmlsaXR5LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LXJhbjpBbnRlbm5hQ2FwYWJpbGl0eTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIEFOVEVOTkFNT0RVTEVfU0VSVkVTX05SQ0VMTERVIHsgLy8gMS4ubiB0byAwLi5tCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIEFudGVubmFNb2R1bGUgdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBOUkNlbGxEVSB0eXBlLgogICAgICAgICAgICBUaGUgQW50ZW5uYU1vZHVsZSByZXByZXNlbnRzIHRoZSBwaHlzaWNhbCBhbnRlbm5hIHRoYXQgc2VydmVzIHRoZSBOUkNlbGxEVS4KICAgICAgICAgICAgQW4gQW50ZW5uYU1vZHVsZSBpbnN0YW5jZSBjYW4gc2VydmUgbWFueSBOUkNlbGxEVXMuCiAgICAgICAgICAgIEFuIE5SQ2VsbERVIGluc3RhbmNlIGNhbiBiZSBzZXJ2ZWQgYnkgbWFueSBBbnRlbm5hTW9kdWxlcy4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX1JlbGF0aW9uc2hpcF9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aWNlZC1uckNlbGxEdSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBDZWxsLURVIHNlcnZpY2VkIGJ5IHRoaXMgQW50ZW5uYSBNb2R1bGUuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtZXF1aXA6QW50ZW5uYU1vZHVsZTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KCiAgICAgICAgbGVhZi1saXN0IHNlcnZpbmctYW50ZW5uYU1vZHVsZSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJBbnRlbm5hIE1vZHVsZSBzZXJ2ZXMgdGhpcyBOUiBDZWxsLURVLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LXJhbjpOUkNlbGxEVTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBTRUNUT1JfR1JPVVBTX0FOVEVOTkFNT0RVTEUgeyAvLyAwLi4xIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgU2VjdG9yIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgQW50ZW5uYU1vZHVsZSB0eXBlLgogICAgICAgICAgICBUaGUgU2VjdG9yIHJlcHJlc2VudHMgdGhlIGdlb2dyYXBoaWNhbCBhcmVhIHRoYXQgZ3JvdXBzIHRoZSBBbnRlbm5hTW9kdWxlcy4KICAgICAgICAgICAgQSBTZWN0b3IgaW5zdGFuY2UgY2FuIGdyb3VwIG1hbnkgQW50ZW5uYU1vZHVsZXMuCiAgICAgICAgICAgIEFuIEFudGVubmFNb2R1bGUgaW5zdGFuY2UgY2FuIG9ubHkgYmUgZ3JvdXBlZCBieSBvbmUgU2VjdG9yLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fUmVsYXRpb25zaGlwX01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IGdyb3VwZWQtYW50ZW5uYU1vZHVsZSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJTZWN0b3IgZ3JvdXBzIEFudGVubmEgTW9kdWxlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBvci10ZWl2LXJhbjpTZWN0b3I7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgZ3JvdXBlZC1ieS1zZWN0b3IgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiQW50ZW5uYSBNb2R1bGUgZ3JvdXBlZCBieSBTZWN0b3IuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtZXF1aXA6QW50ZW5uYU1vZHVsZTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KfQ==
-o-ran-smo-teiv-rel-oam-cloud urn:o-ran:smo-teiv-rel-oam-cloud REL_OAM_CLOUD ["o-ran-smo-teiv-oam", "o-ran-smo-teiv-cloud"] 2024-07-15 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1vYW0tY2xvdWQgewogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LXJlbC1vYW0tY2xvdWQiOwogICAgcHJlZml4IG9yLXRlaXYtb2FtdG9jbG91ZDsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtb2FtIHtwcmVmaXggb3ItdGVpdi1vYW07IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY2xvdWQge3ByZWZpeCBvci10ZWl2LWNsb3VkOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBPJk0gdG8gQ2xvdWQgdG9wb2xvZ3kgbW9kZWwuCgogICAgICAgIFRoaXMgbW9kZWwgY29udGFpbnMgdGhlIFJBTiBPJk0gdG8gQ2xvdWQgdG9wb2xvZ3kgcmVsYXRpb25zCgogICAgICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgICAgIE1vZGlmaWNhdGlvbnMgQ29weXJpZ2h0IChDKSAyMDI0IE9wZW5JbmZyYSBGb3VuZGF0aW9uIEV1cm9wZQoKICAgICAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpOwogICAgICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgICAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCgogICAgICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgICAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsCiAgICAgICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiAgICAgICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAogICAgICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKICAgICAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCI7CgogICAgcmV2aXNpb24gIjIwMjQtMDUtMDIiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiSW5pdGlhbCByZXZpc2lvbi4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjMuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNy0xNSIgewogICAgICAgIGRlc2NyaXB0aW9uICJUaGlzIHJldmlzaW9uIGFsaWducyBPLVJBTiBXb3JrIEdyb3VwIDEwIFN0YWdlIDIgU3BlY2lmaWNhdGlvbiAoTy1SQU4uV0cxMC5URSZJVi1DSU1JLjAtUjAwNC52MDIuMDApIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC40LjA7CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmRvbWFpbiBSRUxfT0FNX0NMT1VEOwoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfREVQTE9ZRURfQVNfQ0xPVURJRklFRE5GIHsgIC8vIDAuLjEgdG8gMQoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZiBkZXBsb3llZC1hcy1jbG91ZGlmaWVkTkYgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IGRlcGxveWVkIGFzIENsb3VkaWZpZWQgTkYuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIGRlcGxveWVkLW1hbmFnZWRFbGVtZW50IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIkNsb3VkaWZpZWQgTkYgZGVwbG95cyBNYW5hZ2VkIEVsZW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtY2xvdWQ6Q2xvdWRpZmllZE5GOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5GREVQTE9ZTUVOVF9TRVJWRVNfTUFOQUdFREVMRU1FTlQgeyAvLyAxLi5uIHRvIDEKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYgc2VydmljZWQtbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IHNlcnZpY2VkIGJ5IHRoaXMgTkYgRGVwbG95bWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1jbG91ZDpORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3Qgc2VydmluZy1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCB0aGF0IHNlcnZlcyB0aGlzIE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1vYW06TWFuYWdlZEVsZW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQogICAgfQp9
+o-ran-smo-teiv-rel-oam-cloud urn:o-ran:smo-teiv-rel-oam-cloud REL_OAM_CLOUD ["o-ran-smo-teiv-oam", "o-ran-smo-teiv-cloud"] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1vYW0tY2xvdWQgewogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LXJlbC1vYW0tY2xvdWQiOwogICAgcHJlZml4IG9yLXRlaXYtb2FtdG9jbG91ZDsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtb2FtIHtwcmVmaXggb3ItdGVpdi1vYW07IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY2xvdWQge3ByZWZpeCBvci10ZWl2LWNsb3VkOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBPJk0gdG8gQ2xvdWQgdG9wb2xvZ3kgbW9kZWwuCgogICAgICAgIFRoaXMgbW9kZWwgY29udGFpbnMgdGhlIFJBTiBPJk0gdG8gQ2xvdWQgdG9wb2xvZ3kgcmVsYXRpb25zCgogICAgICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgICAgIE1vZGlmaWNhdGlvbnMgQ29weXJpZ2h0IChDKSAyMDI0IE9wZW5JbmZyYSBGb3VuZGF0aW9uIEV1cm9wZQoKICAgICAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpOwogICAgICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgICAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCgogICAgICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgICAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsCiAgICAgICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiAgICAgICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAogICAgICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKICAgICAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCI7CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmcsIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAgdG8gdGhlIHRvcG9sb2d5IG9iamVjdC4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNS0wMiIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA3LTE1IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoaXMgcmV2aXNpb24gYWxpZ25zIE8tUkFOIFdvcmsgR3JvdXAgMTAgU3RhZ2UgMiBTcGVjaWZpY2F0aW9uIChPLVJBTi5XRzEwLlRFJklWLUNJTUkuMC1SMDA0LnYwMi4wMCkiOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICBvci10ZWl2LXlleHQ6ZG9tYWluIFJFTF9PQU1fQ0xPVUQ7CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBNQU5BR0VERUxFTUVOVF9ERVBMT1lFRF9BU19DTE9VRElGSUVETkYgeyAgLy8gMC4uMSB0byAxCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmIGRlcGxveWVkLWFzLWNsb3VkaWZpZWRORiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJNYW5hZ2VkIEVsZW1lbnQgZGVwbG95ZWQgYXMgQ2xvdWRpZmllZCBORi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1vYW06TWFuYWdlZEVsZW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgZGVwbG95ZWQtbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiQ2xvdWRpZmllZCBORiBkZXBsb3lzIE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1jbG91ZDpDbG91ZGlmaWVkTkY7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTkZERVBMT1lNRU5UX1NFUlZFU19NQU5BR0VERUxFTUVOVCB7IC8vIDEuLm4gdG8gMQoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fUmVsYXRpb25zaGlwX01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZiBzZXJ2aWNlZC1tYW5hZ2VkRWxlbWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJNYW5hZ2VkIEVsZW1lbnQgc2VydmljZWQgYnkgdGhpcyBORiBEZXBsb3ltZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBvci10ZWl2LWNsb3VkOk5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aW5nLW5GRGVwbG95bWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJORiBEZXBsb3ltZW50IHRoYXQgc2VydmVzIHRoaXMgTWFuYWdlZCBFbGVtZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LW9hbTpNYW5hZ2VkRWxlbWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9Cn0=
o-ran-smo-teiv-rel-oam-ran urn:o-ran:smo-teiv-rel-oam-ran REL_OAM_RAN ["o-ran-smo-teiv-oam", "o-ran-smo-teiv-ran"] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1vYW0tcmFuIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1yZWwtb2FtLXJhbiI7CiAgICBwcmVmaXggb3ItdGVpdi1yZWwtb2FtcmFuOwoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyB7IHByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMgeyBwcmVmaXggb3ItdGVpdi15ZXh0OyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LW9hbSB7IHByZWZpeCBvci10ZWl2LW9hbTsgfQoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1yYW4geyBwcmVmaXggb3ItdGVpdi1yYW47IH0KCiAgICBvcmdhbml6YXRpb24gIk9SQU4iOwogICAgY29udGFjdCAiVGhlIEF1dGhvcnMiOwogICAgZGVzY3JpcHRpb24KICAgICAgICAiUkFOIE8mTSB0byBMb2dpY2FsIHRvcG9sb2d5IG1vZGVsLgoKICAgICAgICBUaGlzIG1vZGVsIGNvbnRhaW5zIHRoZSBSQU4gTyZNIHRvIExvZ2ljYWwgdG9wb2xvZ3kgcmVsYXRpb25zCgogICAgICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgICAgIE1vZGlmaWNhdGlvbnMgQ29weXJpZ2h0IChDKSAyMDI0IE9wZW5JbmZyYSBGb3VuZGF0aW9uIEV1cm9wZQoKICAgICAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpOwogICAgICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgICAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCgogICAgICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgICAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsCiAgICAgICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiAgICAgICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAogICAgICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKICAgICAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCI7CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmcsIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAgdG8gdGhlIHRvcG9sb2d5IG9iamVjdC4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjUuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNy0xNSIgewogICAgICAgIGRlc2NyaXB0aW9uICJUaGlzIHJldmlzaW9uIGFsaWducyBPLVJBTiBXb3JrIEdyb3VwIDEwIFN0YWdlIDIgU3BlY2lmaWNhdGlvbiAoTy1SQU4uV0cxMC5URSZJVi1DSU1JLjAtUjAwNC52MDIuMDApIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC40LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDUtMjQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiSW5pdGlhbCByZXZpc2lvbi4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjMuMDsKICAgIH0KCiAgICBvci10ZWl2LXlleHQ6ZG9tYWluIFJFTF9PQU1fUkFOOwoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfTUFOQUdFU19PRFVGVU5DVElPTiB7ICAgIC8vIDEgdG8gMC4ubgoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBNYW5hZ2VkRWxlbWVudCB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE9EVUZ1bmN0aW9uIHR5cGUuCiAgICAgICAgICAgIFRoZSBNYW5hZ2VkRWxlbWVudCByZXByZXNlbnRzIHRoZSBub2RlIHRoYXQgbWFuYWdlcyB0aGUgT0RVRnVuY3Rpb24uCiAgICAgICAgICAgIEEgTWFuYWdlZEVsZW1lbnQgaW5zdGFuY2UgY2FuIG1hbmFnZSBtYW55IE9EVUZ1bmN0aW9ucy4KICAgICAgICAgICAgQW4gT0RVRnVuY3Rpb24gaW5zdGFuY2UgbXVzdCBiZSBtYW5hZ2VkIGJ5IG9uZSBNYW5hZ2VkRWxlbWVudC4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBtYW5hZ2VkLW9kdUZ1bmN0aW9uIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk1hbmFnZWQgRWxlbWVudCBtYW5hZ2VzIE8tRFUgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1EVSBGdW5jdGlvbiBtYW5hZ2VkIGJ5IE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0RVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfTUFOQUdFU19PQ1VDUEZVTkNUSU9OIHsgICAgLy8gMSB0byAwLi5uCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE1hbmFnZWRFbGVtZW50IHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0NVQ1BGdW5jdGlvbiB0eXBlLgogICAgICAgICAgICBUaGUgTWFuYWdlZEVsZW1lbnQgcmVwcmVzZW50cyB0aGUgbm9kZSB0aGF0IG1hbmFnZXMgdGhlIE9DVUNQRnVuY3Rpb24uCiAgICAgICAgICAgIEEgTWFuYWdlZEVsZW1lbnQgaW5zdGFuY2UgY2FuIG1hbmFnZSBtYW55IE9DVUNQRnVuY3Rpb25zLgogICAgICAgICAgICBBbiBPQ1VDUEZ1bmN0aW9uIGluc3RhbmNlIG11c3QgYmUgbWFuYWdlZCBieSBvbmUgTWFuYWdlZEVsZW1lbnQuCiAgICAgICAgICAgICI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgbWFuYWdlZC1vY3VjcEZ1bmN0aW9uIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk1hbmFnZWQgRWxlbWVudCBtYW5hZ2VzIE8tQ1UtQ1AgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DVS1DUCBGdW5jdGlvbiBtYW5hZ2VkIGJ5IE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0NVQ1BGdW5jdGlvbjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBNQU5BR0VERUxFTUVOVF9NQU5BR0VTX09DVVVQRlVOQ1RJT04geyAgICAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgTWFuYWdlZEVsZW1lbnQgdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBPQ1VVUEZ1bmN0aW9uIHR5cGUuCiAgICAgICAgICAgIFRoZSBNYW5hZ2VkRWxlbWVudCByZXByZXNlbnRzIHRoZSBub2RlIHRoYXQgbWFuYWdlcyB0aGUgT0NVVVBGdW5jdGlvbi4KICAgICAgICAgICAgQSBNYW5hZ2VkRWxlbWVudCBpbnN0YW5jZSBjYW4gbWFuYWdlIG1hbnkgT0NVVVBGdW5jdGlvbnMuCiAgICAgICAgICAgIEFuIE9DVVVQRnVuY3Rpb24gaW5zdGFuY2UgbXVzdCBiZSBtYW5hZ2VkIGJ5IG9uZSBNYW5hZ2VkRWxlbWVudC4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBtYW5hZ2VkLW9jdXVwRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IG1hbmFnZXMgTy1DVS1VUCBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1vYW06TWFuYWdlZEVsZW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgbWFuYWdlZC1ieS1tYW5hZ2VkRWxlbWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLUNVLVVQIEZ1bmN0aW9uIG1hbmFnZWQgYnkgTWFuYWdlZCBFbGVtZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LXJhbjpPQ1VVUEZ1bmN0aW9uOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE1BTkFHRURFTEVNRU5UX01BTkFHRVNfT1JVRlVOQ1RJT04geyAgICAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgTWFuYWdlZEVsZW1lbnQgdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBPUlVGdW5jdGlvbiB0eXBlLgogICAgICAgICAgICBUaGUgTWFuYWdlZEVsZW1lbnQgcmVwcmVzZW50cyB0aGUgbm9kZSB0aGF0IG1hbmFnZXMgdGhlIE9SVUZ1bmN0aW9uLgogICAgICAgICAgICBBIE1hbmFnZWRFbGVtZW50IGluc3RhbmNlIGNhbiBtYW5hZ2UgbWFueSBPUlVGdW5jdGlvbi4KICAgICAgICAgICAgQW4gT1JVRnVuY3Rpb24gaW5zdGFuY2UgbXVzdCBiZSBtYW5hZ2VkIGJ5IG9uZSBNYW5hZ2VkRWxlbWVudC4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBtYW5hZ2VkLW9ydUZ1bmN0aW9uIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk1hbmFnZWQgRWxlbWVudCBtYW5hZ2VzIE8tUlUgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1SVSBGdW5jdGlvbiBtYW5hZ2VkIGJ5IE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T1JVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfTUFOQUdFU19ORUFSUlRSSUNGVU5DVElPTiB7ICAgIC8vIDEgdG8gMC4ubgoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBNYW5hZ2VkRWxlbWVudCB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5lYXJSVFJJQ0Z1bmN0aW9uIHR5cGUuCiAgICAgICAgICAgIFRoZSBNYW5hZ2VkRWxlbWVudCByZXByZXNlbnRzIHRoZSBub2RlIHRoYXQgbWFuYWdlcyB0aGUgTmVhclJUUklDRnVuY3Rpb24uCiAgICAgICAgICAgIEEgTWFuYWdlZEVsZW1lbnQgaW5zdGFuY2UgY2FuIG1hbmFnZSBtYW55IE5lYXJSVFJJQ0Z1bmN0aW9uLgogICAgICAgICAgICBBbiBOZWFyUlRSSUNGdW5jdGlvbiBpbnN0YW5jZSBtdXN0IGJlIG1hbmFnZWQgYnkgb25lIE1hbmFnZWRFbGVtZW50LgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IG1hbmFnZWQtbmVhclJUUklDRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IG1hbmFnZXMgTmVhciBSVCBSSUMgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmVhciBSVCBSSUMgRnVuY3Rpb24gbWFuYWdlZCBieSBNYW5hZ2VkIEVsZW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtcmFuOk5lYXJSVFJJQ0Z1bmN0aW9uOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KfQ==
\.
SET default_tablespace = '';
SET default_table_access_method = heap;
-SET ROLE 'topology_exposure_user';
+SET ROLE topology_exposure_user;
-- Function to create CONSTRAINT only if it does not exists
CREATE OR REPLACE FUNCTION ties_data.create_constraint_if_not_exists (
SELECT ties_data.create_constraint_if_not_exists(
'3C2E2CE7BDF8321BC824B6318B190690F58DBB82',
'FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA',
- 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'3C2E2CE7BDF8321BC824B6318B190690F58DBB82',
'FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5',
- 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5" FOREIGN KEY ("bSide_NearRTRICFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5" FOREIGN KEY ("bSide_NearRTRICFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'CFC235E0404703D1E4454647DF8AAE2C193DB402',
'FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960',
- 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'CFC235E0404703D1E4454647DF8AAE2C193DB402',
'FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06',
- 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06" FOREIGN KEY ("bSide_AntennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06" FOREIGN KEY ("bSide_AntennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE',
'FK_A08D274894ECB6799E56C2089A494AF0345B9B16',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_A08D274894ECB6799E56C2089A494AF0345B9B16" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_A08D274894ECB6799E56C2089A494AF0345B9B16" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE',
'FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F" FOREIGN KEY ("bSide_OCloudNamespace") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F" FOREIGN KEY ("bSide_OCloudNamespace") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDeployment',
'FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0" FOREIGN KEY ("REL_FK_comprised-by-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0" FOREIGN KEY ("REL_FK_comprised-by-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDeployment',
'FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9" FOREIGN KEY ("REL_FK_serviced-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9" FOREIGN KEY ("REL_FK_serviced-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE',
'FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92" FOREIGN KEY ("aSide_NodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92" FOREIGN KEY ("aSide_NodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE',
'FK_888BF6FF782916E61B3FE80643A549A1CFDB6117',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_888BF6FF782916E61B3FE80643A549A1CFDB6117" FOREIGN KEY ("bSide_OCloudSite") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudSite" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_888BF6FF782916E61B3FE80643A549A1CFDB6117" FOREIGN KEY ("bSide_OCloudSite") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudSite" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_OCloudNamespace',
'FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ADD CONSTRAINT "FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF" FOREIGN KEY ("REL_FK_deployed-on-nodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ADD CONSTRAINT "FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF" FOREIGN KEY ("REL_FK_deployed-on-nodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-equipment_AntennaModule',
'FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC" FOREIGN KEY ("REL_FK_installed-at-site") REFERENCES ties_data."o-ran-smo-teiv-equipment_Site" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC" FOREIGN KEY ("REL_FK_installed-at-site") REFERENCES ties_data."o-ran-smo-teiv-equipment_Site" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-equipment_AntennaModule',
'FK_078764B2F3D613D44CC6E3586F564C83164D2481',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_078764B2F3D613D44CC6E3586F564C83164D2481" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_078764B2F3D613D44CC6E3586F564C83164D2481" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-oam_ManagedElement',
'FK_899B8130A861D1450FC49D3159D8B29C0628A717',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-oam_ManagedElement" ADD CONSTRAINT "FK_899B8130A861D1450FC49D3159D8B29C0628A717" FOREIGN KEY ("REL_FK_deployed-as-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-oam_ManagedElement" ADD CONSTRAINT "FK_899B8130A861D1450FC49D3159D8B29C0628A717" FOREIGN KEY ("REL_FK_deployed-as-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRCellCU',
'FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellCU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction" FOREIGN KEY ("REL_FK_provided-by-ocucpFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellCU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction" FOREIGN KEY ("REL_FK_provided-by-ocucpFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRCellDU',
'FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRCellDU',
'FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRSectorCarrier',
'FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu" FOREIGN KEY ("REL_FK_used-by-nrCellDu") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu" FOREIGN KEY ("REL_FK_used-by-nrCellDu") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRSectorCarrier',
'FK_65D538D54EB33081C808540235FEB28823428E64',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_65D538D54EB33081C808540235FEB28823428E64" FOREIGN KEY ("REL_FK_used-antennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_65D538D54EB33081C808540235FEB28823428E64" FOREIGN KEY ("REL_FK_used-antennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRSectorCarrier',
'FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NearRTRICFunction',
'FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ADD CONSTRAINT "FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ADD CONSTRAINT "FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_OCUCPFunction',
'FK_122DD9709032528D161177B3624AD7AAF6589005',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ADD CONSTRAINT "FK_122DD9709032528D161177B3624AD7AAF6589005" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ADD CONSTRAINT "FK_122DD9709032528D161177B3624AD7AAF6589005" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_OCUUPFunction',
'FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ADD CONSTRAINT "FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ADD CONSTRAINT "FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_ODUFunction',
'FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ODUFunction" ADD CONSTRAINT "FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ODUFunction" ADD CONSTRAINT "FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_ORUFunction',
'FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ORUFunction" ADD CONSTRAINT "FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ORUFunction" ADD CONSTRAINT "FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION',
'FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION',
'FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6" FOREIGN KEY ("bSide_OCUCPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6" FOREIGN KEY ("bSide_OCUCPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION',
'FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION',
'FK_8585D545BC37A473A298E0F5F5942F897A7105B1',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_8585D545BC37A473A298E0F5F5942F897A7105B1" FOREIGN KEY ("bSide_OCUUPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUUPFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_8585D545BC37A473A298E0F5F5942F897A7105B1" FOREIGN KEY ("bSide_OCUUPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION',
'FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION',
'FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08" FOREIGN KEY ("bSide_ODUFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08" FOREIGN KEY ("bSide_ODUFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU',
'FK_1AB1E0CC29DA2E122D43A6616EC60A3F73E68649',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_1AB1E0CC29DA2E122D43A6616EC60A3F73E68649" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_1AB1E0CC29DA2E122D43A6616EC60A3F73E68649" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU',
'FK_8605800A4923C52258A8CE3989E18A7C93D22E8C',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_8605800A4923C52258A8CE3989E18A7C93D22E8C" FOREIGN KEY ("bSide_NRCellDU") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_8605800A4923C52258A8CE3989E18A7C93D22E8C" FOREIGN KEY ("bSide_NRCellDU") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" ("id");'
);
CREATE INDEX IF NOT EXISTS "IDX_996D2C34C2458A6EFE8599C1A0E6942D3D288B7A" ON ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
SET default_tablespace = '';
SET default_table_access_method = heap;
-SET ROLE 'topology_exposure_user';
+SET ROLE topology_exposure_user;
CREATE TABLE IF NOT EXISTS ties_consumer_data."module_reference" (
"name" TEXT PRIMARY KEY,
SET default_tablespace = '';
SET default_table_access_method = heap;
-SET ROLE 'topology_exposure_user';
+SET ROLE topology_exposure_user;
-- Function to create CONSTRAINT only if it does not exists
CREATE OR REPLACE FUNCTION ties_groups.create_constraint_if_not_exists (
"description" : "Provides the capability to update or remove user-defined values on entities and relationships.",
"name" : "Decorators"
}, {
- "description" : "Provides the capability to group topology entities and/or relationships of any type. Groups can be created in static or dynamic way. *Static groups*: Group members are defined statically upon group creation. It can include a maximum of 25,000 members. *Dynamic groups*: Group members are dynamically selected based on the defined resource query.",
+ "description" : "Provides the capability to group topology entities and/or relationships of any type. Groups can be created in static or dynamic way. *Static groups*: Group members are defined statically upon group creation. It can include a maximum of 10,000 members. *Dynamic groups*: Group members are dynamically selected based on the defined resource query.",
"name" : "Groups"
} ],
"paths" : {
- name: Decorators
description: "Provides the capability to update or remove user-defined values on entities and relationships."
- name: Groups
- description: "Provides the capability to group topology entities and/or relationships of any type. Groups can be created in static or dynamic way. *Static groups*: Group members are defined statically upon group creation. It can include a maximum of 25,000 members. *Dynamic groups*: Group members are dynamically selected based on the defined resource query."
+ description: "Provides the capability to group topology entities and/or relationships of any type. Groups can be created in static or dynamic way. *Static groups*: Group members are defined statically upon group creation. It can include a maximum of 10,000 members. *Dynamic groups*: Group members are dynamically selected based on the defined resource query."
servers:
- url: https://{host}/topology-inventory/v1alpha11
public static final String GEO_LOCATION = "geo-location";
public static final String GEOGRAPHY = "geography";
public static final String METADATA = "metadata";
- public static final String UPDATETIME = "updated_time";
+ public static final String UPDATED_TIME = "updated_time";
public static final String TIMESTAMPTZ = "TIMESTAMPTZ";
public static final String REL_PREFIX = "REL_";
public static final String RESP_PREFIX = "RESP_";
public static final String BYTEA = "BYTEA";
public static final String REL_METADATA_PREFIX = "REL_" + METADATA + "_";
- public static final String REL_UPDATETIME_PREFIX = "REL_" + UPDATETIME + "_";
+ public static final String HASHED_ID = "hashed_id";
+ public static final String REL_UPDATETIME_PREFIX = "REL_" + UPDATED_TIME + "_";
public static final String REL_RESP_PREFIX = REL_PREFIX + RESP_PREFIX + ID + "_";
}
private String tableName;
@Getter
private String referencedTable;
+ @Getter
+ private String referencedColumn;
private String columnToAddConstraintTo;
@Override
}
private void validateColumnConstraints(Column baselineColumn, Column modelColumn, String tableName) {
- for (PostgresConstraint constraint : baselineColumn.getPostgresConstraints()) {
+ for (PostgresConstraint baselineConstraint : baselineColumn.getPostgresConstraints()) {
Optional<PostgresConstraint> matchingConstraint = modelColumn.getPostgresConstraints().stream().filter(
- constraint1 -> constraint1.getConstraintName().equals(constraint.getConstraintName())).findFirst();
+ generatedConstraint -> generatedConstraint.getConstraintName().equals(baselineConstraint
+ .getConstraintName())).findFirst();
- String modifiedOrRemovedConstraintFromBaseline = "modified/removed constraint for column(%s.%s) present in baseline";
- matchingConstraint.ifPresentOrElse(constraint1 -> {
- if (!constraint.getTableToAddConstraintTo().equals(constraint1.getTableToAddConstraintTo()) && !constraint
- .getColumnToAddConstraintTo().equals(constraint1.getColumnToAddConstraintTo()) && !constraint
- .getConstraintName().equals(constraint1.getConstraintName())) {
+ matchingConstraint.ifPresentOrElse(generatedConstraint -> {
+ if (!baselineConstraint.getTableToAddConstraintTo().equals(generatedConstraint
+ .getTableToAddConstraintTo()) && !baselineConstraint.getColumnToAddConstraintTo().equals(
+ generatedConstraint.getColumnToAddConstraintTo()) && !baselineConstraint.getConstraintName()
+ .equals(generatedConstraint.getConstraintName())) {
throw PgSchemaGeneratorException.nbcChangeIdentifiedException(String.format(
- modifiedOrRemovedConstraintFromBaseline, tableName, baselineColumn.getName()),
- new UnsupportedOperationException());
+ "modified/removed constraint for column(%s.%s) present in baseline", tableName, baselineColumn
+ .getName()), new UnsupportedOperationException());
}
- if (constraint instanceof ForeignKeyConstraint && !constraint.getTableToAddConstraintTo().equals(constraint1
- .getTableToAddConstraintTo())) {
+ if ((baselineConstraint instanceof ForeignKeyConstraint fkBaselineConstraint && generatedConstraint instanceof ForeignKeyConstraint fkGeneratedConstraint) && !fkBaselineConstraint
+ .getTableToAddConstraintTo().equals(fkGeneratedConstraint
+ .getTableToAddConstraintTo()) && !fkBaselineConstraint.getReferencedColumn().equals(
+ fkGeneratedConstraint.getReferencedTable()) && !fkBaselineConstraint
+ .getReferencedColumn().equals(fkGeneratedConstraint
+ .getReferencedColumn())) {
throw PgSchemaGeneratorException.nbcChangeIdentifiedException(String.format(
- modifiedOrRemovedConstraintFromBaseline, tableName, baselineColumn.getName()),
- new UnsupportedOperationException());
+ "modified/removed constraint for column(%s.%s) present in baseline", tableName, baselineColumn
+ .getName()), new UnsupportedOperationException());
}
}, () -> {
throw PgSchemaGeneratorException.nbcChangeIdentifiedException(String.format(
- modifiedOrRemovedConstraintFromBaseline, tableName, baselineColumn.getName()),
- new UnsupportedOperationException());
+ "modified/removed constraint for column(%s.%s) present in baseline", tableName, baselineColumn
+ .getName()), new UnsupportedOperationException());
});
}
}
String alterStatement = br.readLine();
String columnToAddForeignKeyTo = StringUtils.substringBetween(alterStatement, "(", ")").replace("\"", "");
- String[] stringInQuotes = StringUtils.substringsBetween(alterStatement, "\"", "\"");
- String referenceTable = stringInQuotes[stringInQuotes.length - 1];
identifiedTables.stream().filter(table -> table.getName().equals(tableToAddConstraintTo)).findFirst().flatMap(
table -> table.getColumns().stream().filter(column -> column.getName().equals(columnToAddForeignKeyTo))
.tableName(tableToAddConstraintTo).columnToAddConstraintTo(columnToAddForeignKeyTo)
.build());
} else if (alterStatement.contains("FOREIGN KEY")) {
+ String substringFromLastTiesData = alterStatement.substring(StringUtils.lastIndexOf(
+ alterStatement, "ties_data.\""));
+ String referenceTable = StringUtils.substringBetween(substringFromLastTiesData, "\"", "\"");
+ String referenceTableColumn = alterStatement.substring(StringUtils.lastIndexOf(
+ alterStatement, "(") + 1, StringUtils.lastIndexOf(alterStatement, ")")).replace(
+ "\"", "").trim();
postgresConstraintCollection.add(ForeignKeyConstraint.builder().constraintName(
constraintName).tableName(tableToAddConstraintTo).columnToAddConstraintTo(
- columnToAddForeignKeyTo).referencedTable(referenceTable).build());
+ columnToAddForeignKeyTo).referencedTable(referenceTable).referencedColumn(
+ referenceTableColumn).build());
}
column.setPostgresConstraints(postgresConstraintCollection);
});
return String.format(ALTER_TABLE_TIES_DATA_S_ADD_CONSTRAINT_S + "PRIMARY KEY (\"%s\")", postgresConstraint
.getTableToAddConstraintTo(), postgresConstraint.getConstraintName(), postgresConstraint
.getColumnToAddConstraintTo());
- } else if (postgresConstraint instanceof ForeignKeyConstraint foreignKeyConstraint) {
+ } else if (postgresConstraint instanceof ForeignKeyConstraint fkConstraint) {
return String.format(
- ALTER_TABLE_TIES_DATA_S_ADD_CONSTRAINT_S + "FOREIGN KEY (\"%s\") REFERENCES ties_data.\"%s\" (id) ON DELETE CASCADE",
- postgresConstraint.getTableToAddConstraintTo(), postgresConstraint.getConstraintName(),
- postgresConstraint.getColumnToAddConstraintTo(), foreignKeyConstraint.getReferencedTable());
+ ALTER_TABLE_TIES_DATA_S_ADD_CONSTRAINT_S + "FOREIGN KEY (\"%s\") REFERENCES ties_data.\"%s\" (\"%s\")",
+ fkConstraint.getTableToAddConstraintTo(), fkConstraint.getConstraintName(), fkConstraint
+ .getColumnToAddConstraintTo(), fkConstraint.getReferencedTable(), fkConstraint
+ .getReferencedColumn());
} else if (postgresConstraint instanceof UniqueConstraint) {
return String.format(ALTER_TABLE_TIES_DATA_S_ADD_CONSTRAINT_S + "UNIQUE (\"%s\")", postgresConstraint
.getTableToAddConstraintTo(), postgresConstraint.getConstraintName(), postgresConstraint
COLUMN);
relColumns.add(Column.builder().name(hashedRelFk).dataType(TEXT).postgresConstraints(new ArrayList<>(List.of(
- createForeignKeyConstraints(tableName, hashedTableName, hashedReferenceTable, relFk, hashedRelFk))))
+ createForeignKeyConstraints(tableName, hashedTableName, hashedReferenceTable, ID, relFk, hashedRelFk))))
.build());
relColumns.add(Column.builder().name(hashedRelId).dataType(TEXT).postgresConstraints(new ArrayList<>(List.of(
List<Column> relColumns = new ArrayList<>(Arrays.asList(Column.builder().name(ID).dataType(TEXT)
.postgresConstraints(new ArrayList<>(List.of(createPrimaryKeyConstraints(tableName, hashedTableName, ID))))
.build(), Column.builder().name(hashedRelASide).dataType(TEXT).postgresConstraints(new ArrayList<>(List.of(
- createForeignKeyConstraints(tableName, hashedTableName, hashedASideMOType, relASide,
+ createForeignKeyConstraints(tableName, hashedTableName, hashedASideMOType, ID, relASide,
hashedRelASide)))).build(), Column.builder().name(hashedRelBSide).dataType(TEXT)
.postgresConstraints(new ArrayList<>(List.of(createForeignKeyConstraints(tableName,
- hashedTableName, hashedBSideMOType, relBSide, hashedRelBSide)))).build()));
+ hashedTableName, hashedBSideMOType, ID, relBSide, hashedRelBSide))))
+ .build()));
rel.getConsumerData().forEach(cd -> {
final String columnName = CONSUMER_DATA + cd.getName();
final String hashedColumnName = hashInfoDataGenerator.generateHashAndRegisterTableRow(CONSUMER_DATA, cd
}
private PostgresConstraint createForeignKeyConstraints(String tableToAddForeignKeyTo,
- String hashedTableToAddForeignKeyTo, String hashedReferenceTable, String columnName, String hashedColumnName) {
+ String hashedTableToAddForeignKeyTo, String hashedReferenceTable, String referencedColumn, String columnName,
+ String hashedColumnName) {
String constraintName = hashInfoDataGenerator.generateHashAndRegisterTableRow(FOREIGN_KEY,
tableToAddForeignKeyTo + "_" + columnName, CONSTRAINT);
return ForeignKeyConstraint.builder().constraintName(constraintName).tableName(hashedTableToAddForeignKeyTo)
- .referencedTable(hashedReferenceTable).columnToAddConstraintTo(hashedColumnName).build();
+ .referencedTable(hashedReferenceTable).columnToAddConstraintTo(hashedColumnName).referencedColumn(
+ referencedColumn).build();
}
private PostgresConstraint createPrimaryKeyConstraints(String tableName, String hashedTableName, String columnName) {
"Please check the logs for more details", null);
}
- public static TiesException resourceNotFoundException() {
- return new TiesException("Resource Not Found", "The requested resource is not found", HttpStatus.NOT_FOUND, null);
+ public static TiesException resourceNotFoundException(final String id) {
+ return new TiesException("Resource Not Found", String.format("The requested resource is not found. ID: %s", id),
+ HttpStatus.NOT_FOUND, null);
}
public static TiesException resourceNotFoundException(Set<String> entityIds, Set<String> relationshipIds) {
String id = (String) record.get(persistable.getIdColumnNameWithTableName());
List<String> classifierListAfterUpdate = JooqTypeConverter.jsonbToList(record.get(String.format(QUOTED_STRING,
persistable.getClassifiersColumnName()), JSONB.class));
- OperationResult operationResult = OperationResult.createClassifierOperationResult(id, persistable.getName(),
- persistable.getCategory(), classifierListAfterUpdate);
+ OperationResult operationResult = OperationResult.builder().id(id).type(persistable.getName()).category(
+ persistable.getCategory()).classifiers(classifierListAfterUpdate).isUpdatedInDb(true).build();
opResults.put(id, operationResult);
}
String id = (String) record.get(persistable.getIdColumnNameWithTableName());
Map<String, Object> decoratorsAfterUpdate = JooqTypeConverter.jsonbToMap(record.get(String.format(QUOTED_STRING,
persistable.getDecoratorsColumnName()), JSONB.class));
- OperationResult operationResult = OperationResult.createDecoratorOperationResult(id, persistable.getName(),
- persistable.getCategory(), decoratorsAfterUpdate);
+ OperationResult operationResult = OperationResult.builder().id(id).type(persistable.getName()).category(
+ persistable.getCategory()).decorators(decoratorsAfterUpdate).isUpdatedInDb(true).build();
results.put(id, operationResult);
}
final EntityType entityType = SchemaRegistry.getEntityTypeByName(entityName);
final Result<Record> result = dataRepository.getEntityById(entityType, id);
if (result.isEmpty()) {
- throw TiesException.resourceNotFoundException();
+ throw TiesException.resourceNotFoundException(id);
}
return entityMapper.getItemsWithTotalCount(result).getLeft().get(0);
final RelationType relationType = SchemaRegistry.getRelationTypeByName(relationName);
final Result<Record> result = dataRepository.getRelationshipById(id, relationType);
if (result.isEmpty()) {
- throw TiesException.resourceNotFoundException();
+ throw TiesException.resourceNotFoundException(id);
}
return relationshipMapper.getItemsWithTotalCount(result).getLeft().get(0);
final int offset) {
basePathRefinement.refine(filterCriteria);
SelectOrderByStep<Record> query = PathToJooqRefinement.toJooq(filterCriteria, offset, limit);
- log.debug("SQL: {}", query);
-
return runMethodSafe(() -> readDataDslContext.fetch(query));
}
import java.math.BigInteger;
import java.util.List;
import java.util.Objects;
-import java.util.stream.Collectors;
import org.jooq.Condition;
import org.jooq.JSONB;
import org.oran.smo.teiv.schema.EntityType;
import org.oran.smo.teiv.schema.Persistable;
import org.oran.smo.teiv.schema.RelationType;
-import org.oran.smo.teiv.schema.RelationshipDataLocation;
import org.oran.smo.teiv.schema.SchemaRegistry;
import org.oran.smo.teiv.utils.query.exception.TiesPathException;
return JSONB.valueOf(scopeObject.getParameter());
}
case GEOGRAPHIC -> {
- validateGeographicPoint(scopeObject.getParameter(), true);
+ validateGeographicPoint(scopeObject.getParameter());
return scopeObject.getParameter();
}
default -> throw TiesPathException.invalidQueryCondition("Unexpected value: " + scopeObject.getDataType());
}
}
- protected static String processContainers(final Persistable persistable, final List<String> innerContainer) {
- String tableName = persistable.getTableName();
- String rootElement = name(innerContainer.get(0)).toString();
- if (innerContainer.size() == 1) {
- return String.format("%s.%s", tableName, rootElement);
- }
-
- List<String> remainingElements = innerContainer.subList(1, innerContainer.size());
- String path = remainingElements.stream().map(element -> String.format("'%s'", element)).collect(Collectors
- .joining(" -> "));
- return String.format("%s.%s -> %s", tableName, rootElement, path);
- }
-
- protected static String processArrayContainers(final Persistable persistable, final List<String> innerContainer) {
- String tableName = persistable.getTableName();
- String rootElement = name(innerContainer.get(0)).toString();
- if (innerContainer.size() == 1) {
- return String.format("%s.%s", tableName, rootElement);
- }
-
- List<String> middleElements = innerContainer.subList(1, innerContainer.size() - 1);
- String middlePath = middleElements.stream().map(element -> String.format("'%s'", element)).collect(Collectors
- .joining(" -> "));
-
- String lastElement = String.format("'%s'", innerContainer.get(innerContainer.size() - 1));
- String path = middleElements.isEmpty() ?
- String.format("->> %s", lastElement) :
- String.format("-> %s ->> %s", middlePath, lastElement);
- return String.format("%s.%s %s", tableName, rootElement, path);
- }
-
- public static String handleEqComplexParameter(final ScopeObject scopeObject) {
- if (scopeObject.getDataType() == DataType.INTEGER) {
- return scopeObject.getParameter();
- }
- return String.valueOf(name(scopeObject.getParameter()));
- }
-
- public static String handleLikeComplexParameter(final ScopeObject scopeObject) {
- if (scopeObject.getDataType() == DataType.INTEGER) {
- return scopeObject.getParameter();
- }
- return String.format("%%%s%%", scopeObject.getParameter());
- }
-
protected static Persistable getPersistable(final ScopeObject scopeObject) {
switch (scopeObject.getTopologyObjectType()) {
case ENTITY -> {
}
}
- private static void validateGeographicPoint(final String point, boolean allowHeight) {
+ private static void validateGeographicPoint(final String point) {
final boolean is2D = point.matches("(?i)POINT\\([-?\\d]+(\\.\\d+)? -?\\d+(\\.\\d+)?\\)");
final boolean is3D = point.matches("(?i)POINT Z \\([-?\\d]+(\\.\\d+)? -?\\d+(\\.\\d+)? -?\\d+(\\.\\d+)?\\)");
if (!is2D && !is3D) {
- if (allowHeight) {
- throw TiesPathException.invalidQueryCondition(
- "Invalid geographic format, geographic type must be 2D or 3D coordinates. For example: POINT(39.40 67.94) or POINT Z (47.49 19.04 111.11)");
- } else {
- throw TiesPathException.invalidQueryCondition(
- "Invalid geographic format, geographic type must be 2D coordinate. For example: POINT(39.40 67.94)");
- }
- } else if (is3D && !allowHeight) {
- throw TiesPathException.invalidQueryCondition("Invalid geographic format, 3D coordinates are not allowed.");
+ throw TiesPathException.invalidQueryCondition(
+ "Invalid geographic format, geographic type must be 2D or 3D coordinates. For example: POINT(39.40 67.94) or POINT Z (47.49 19.04 111.11)");
}
}
}
@Override
public Condition getCondition(final ScopeObject scopeObject) {
- return switch (scopeObject.getQueryFunction()) {
- case EQ -> equalsCondition(scopeObject);
- case CONTAINS -> containsCondition(scopeObject);
- case WITHIN_METERS -> withinMetersCondition(scopeObject);
- case COVERED_BY -> coveredByCondition(scopeObject);
- case NOT_NULL -> {
- if (!scopeObject.getInnerContainer().isEmpty()) {
- throw TiesPathException.invalidQueryCondition("Inner container should be empty");
+ if (scopeObject.getInnerContainer().isEmpty()) {
+ return handleSimpleAttribute(scopeObject);
+ }
+ return handleComplexAttribute(scopeObject);
+ }
+
+ private Condition handleSimpleAttribute(final ScopeObject scopeObject) {
+ switch (scopeObject.getQueryFunction()) {
+ case EQ -> {
+ if (scopeObject.getDataType().equals(DataType.GEOGRAPHIC)) {
+ return condition("? = st_geomfromtext(?)", field(handleSimpleLeaf(scopeObject)), val(convert(
+ scopeObject)));
}
- yield field(getTableNameWithColumnName(getPersistable(scopeObject).getTableName(), scopeObject
- .getLeaf())).isNotNull();
+ return field(handleSimpleLeaf(scopeObject)).eq(convert(scopeObject));
}
- default -> {
- throw TiesPathException.invalidQueryFunction();
+ case CONTAINS -> {
+ if (scopeObject.getDataType().equals(DataType.GEOGRAPHIC)) {
+ throw TiesPathException.invalidQueryCondition("Cannot have CONTAINS on geography type data");
+ }
+ return field(handleSimpleLeaf(scopeObject)).contains(convert(scopeObject));
}
- };
- }
+ case WITHIN_METERS -> {
+ if (!scopeObject.getDataType().equals(DataType.GEOGRAPHIC)) {
+ throw TiesPathException.invalidQueryCondition("Within meters condition needs geography type data");
+ }
- private static Condition equalsCondition(final ScopeObject scopeObject) {
- if (scopeObject.getInnerContainer().isEmpty()) {
- if (scopeObject.getDataType() == DataType.GEOGRAPHIC) {
- return condition(getTableNameWithColumnName(getPersistable(scopeObject).getTableName(), scopeObject
- .getLeaf()) + " = st_geomfromtext(?)", val(convert(scopeObject)));
+ String[] parameters = scopeObject.getParameter().split(",");
+ if (parameters.length != 2 || !parameters[0].matches(pointRegex)) {
+ throw TiesPathException.invalidQueryCondition("Invalid parameter for within meters condition");
+ }
+
+ return condition("ST_DWithin(?, ST_GeographyFromText(?), ?)", field("\"" + scopeObject
+ .getLeaf() + "\""), field(parameters[0]), field(parameters[1].replaceAll(" ", "")));
+ }
+ case COVERED_BY -> {
+ if (!scopeObject.getDataType().equals(DataType.GEOGRAPHIC)) {
+ throw TiesPathException.invalidQueryCondition("Covered by condition needs geography type data");
+ }
+
+ if (!scopeObject.getParameter().matches(polygonRegex)) {
+ throw TiesPathException.invalidQueryCondition("Invalid parameter for covered by condition");
+ }
+
+ return condition("ST_CoveredBy(?, ST_GeographyFromText(?))", field("\"" + scopeObject.getLeaf() + "\""),
+ val(scopeObject.getParameter()));
+ }
+ default -> {
+ return field(handleSimpleLeaf(scopeObject)).isNotNull();
}
- return field(getTableNameWithColumnName(getPersistable(scopeObject).getTableName(), scopeObject.getLeaf()))
- .eq(convert(scopeObject));
- } else if (scopeObject.getLeaf().equals(ITEM)) {
- return condition(processContainers(getPersistable(scopeObject), scopeObject.getInnerContainer()) + " @> ?",
- inline(handleEqComplexParameter(scopeObject)));
- } else {
- return field(processContainers(getPersistable(scopeObject), scopeObject.getInnerContainer()) + " -> ?", val(
- scopeObject.getLeaf())).eq(field(inline(handleEqComplexParameter(scopeObject))));
}
}
- private static Condition containsCondition(final ScopeObject scopeObject) {
- if (scopeObject.getInnerContainer().isEmpty()) {
- if (scopeObject.getDataType() == DataType.GEOGRAPHIC) {
- throw TiesPathException.invalidQueryCondition("Cannot have CONTAINS on geography type data");
- }
- return field(getTableNameWithColumnName(getPersistable(scopeObject).getTableName(), scopeObject.getLeaf()))
- .contains(convert(scopeObject));
- } else if (scopeObject.getLeaf().equals(ITEM)) {
- return condition(processArrayContainers(getPersistable(scopeObject), scopeObject
- .getInnerContainer()) + "::text like ?", val("%" + scopeObject.getParameter() + "%"));
- } else {
- return condition(field(processContainers(getPersistable(scopeObject), scopeObject
- .getInnerContainer()) + " ->> ?", val(scopeObject.getLeaf())).like(handleLikeComplexParameter(
+ private Condition handleComplexAttribute(final ScopeObject scopeObject) {
+ switch (scopeObject.getQueryFunction()) {
+ case EQ -> {
+ if (scopeObject.getLeaf().equals(ITEM)) {
+ return condition(handleContainers(scopeObject) + " @> ?", inline(handleEqComplexParameter(
scopeObject)));
+ }
+ return field(handleContainers(scopeObject) + " -> ?", val(scopeObject.getLeaf())).eq(field(applyQuotes(
+ handleEqComplexParameter(scopeObject))));
+ }
+ case CONTAINS -> {
+ if (scopeObject.getLeaf().equals(ITEM)) {
+ return condition(handleContainersForArray(scopeObject) + "::text like ?", val("%" + scopeObject
+ .getParameter() + "%"));
+ }
+ return condition(field(handleContainers(scopeObject) + " ->> ?", val(scopeObject.getLeaf())).like(
+ handleLikeComplexParameter(scopeObject)));
+ }
+ default -> throw TiesPathException.invalidQueryFunction();
}
}
- private static Condition withinMetersCondition(final ScopeObject scopeObject) {
- if (scopeObject.getDataType() != DataType.GEOGRAPHIC) {
- throw TiesPathException.invalidQueryCondition("Within meters condition needs geography type data");
+ private String handleEqComplexParameter(final ScopeObject scopeObject) {
+ if (scopeObject.getDataType().equals(DataType.INTEGER)) {
+ return scopeObject.getParameter();
}
+ return String.valueOf(name(scopeObject.getParameter()));
+ }
- String[] parameters = scopeObject.getParameter().split(",");
- if (parameters.length != 2 || !parameters[0].matches(pointRegex)) {
- throw TiesPathException.invalidQueryCondition("Invalid parameter for within meters condition");
+ private String handleLikeComplexParameter(final ScopeObject scopeObject) {
+ if (scopeObject.getDataType().equals(DataType.INTEGER)) {
+ return scopeObject.getParameter();
}
+ return String.format("%%%s%%", scopeObject.getParameter());
+ }
- return condition("ST_DWithin(?, ST_GeographyFromText(?), ?)", field("\"" + scopeObject.getLeaf() + "\""), field(
- parameters[0]), field(parameters[1].replaceAll(" ", "")));
+ private String handleSimpleLeaf(final ScopeObject scopeObject) {
+ return getPersistable(scopeObject).getTableName() + "." + name(scopeObject.getLeaf());
}
- private static Condition coveredByCondition(final ScopeObject scopeObject) {
- if (scopeObject.getDataType() != DataType.GEOGRAPHIC) {
- throw TiesPathException.invalidQueryCondition("Covered by condition needs geography type data");
- }
+ private String handleContainers(final ScopeObject scopeObject) {
- if (!scopeObject.getParameter().matches(polygonRegex)) {
- throw TiesPathException.invalidQueryCondition("Invalid parameter for covered by condition");
+ if (scopeObject.getInnerContainer().size() > 1) {
+ StringBuilder sb = new StringBuilder();
+
+ for (String element : scopeObject.getInnerContainer().subList(1, scopeObject.getInnerContainer().size())) {
+ sb.append(" -> ").append(applyQuotes(element));
+ }
+ return getPersistable(scopeObject).getTableName() + "." + name(scopeObject.getInnerContainer().get(0)) + sb;
}
+ return getPersistable(scopeObject).getTableName() + "." + name(scopeObject.getInnerContainer().get(0));
+ }
- return condition("ST_CoveredBy(?, ST_GeographyFromText(?))", field("\"" + scopeObject.getLeaf() + "\""), val(
- scopeObject.getParameter()));
+ private String handleContainersForArray(final ScopeObject scopeObject) {
+
+ if (scopeObject.getInnerContainer().size() > 1) {
+ StringBuilder sb = new StringBuilder();
+
+ for (String element : scopeObject.getInnerContainer().subList(1, scopeObject.getInnerContainer()
+ .size() - 1)) {
+ sb.append(" -> ").append(applyQuotes(element));
+ }
+ sb.append(" ->> ").append(applyQuotes(scopeObject.getInnerContainer().get(scopeObject.getInnerContainer()
+ .size() - 1)));
+ return getPersistable(scopeObject).getTableName() + "." + name(scopeObject.getInnerContainer().get(0)) + sb;
+ }
+ return getPersistable(scopeObject).getTableName() + "." + name(scopeObject.getInnerContainer().get(0));
}
+ private static String applyQuotes(String element) {
+ return String.format("'%s'", element);
+ }
}
static class RelationCondition extends AnyCondition {
@Override
public Condition getCondition(final ScopeObject scopeObject) {
return switch (scopeObject.getQueryFunction()) {
- case EQ, CONTAINS -> createEqOrContainsCondition(scopeObject);
+ case EQ, CONTAINS, COVERED_BY, WITHIN_METERS -> createCondition(scopeObject);
case NOT_NULL -> field(SchemaRegistry.getReferenceColumnName(getRelationType(scopeObject))).isNotNull();
- default -> throw TiesPathException.invalidQueryFunction();
};
}
- private Condition createEqOrContainsCondition(final ScopeObject scopeObject) {
- return scopeObject.getLeaf().equals("id") ?
- createIdCondition(scopeObject) :
- createAttributeCondition(scopeObject);
- }
-
- private static Condition createIdCondition(final ScopeObject scopeObject) {
- RelationType relation = getRelationType(scopeObject);
- if (scopeObject.getDataType() == null) {
- scopeObject.setDataType(DataType.PRIMITIVE);
- }
-
- String idColumn = getIdColumn(scopeObject, relation);
- if (relation.getRelationshipStorageLocation() == RelationshipDataLocation.RELATION) {
- String fullColumnName = getTableNameWithColumnName(relation.getTableName(), idColumn);
- return createEqualsOrContainsCondition(scopeObject, fullColumnName);
- }
-
- EntityType entityType = relation.getStoringSideEntityType();
- idColumn = relation.getNotStoringSideEntityIdColumnNameInStoringSideTable();
- boolean isEntityTypeMatch = matchTopologyObjectOrAssociation(scopeObject, entityType);
- if (isEntityTypeMatch) {
- String fullIdColumn = getTableNameWithColumnName(entityType.getTableName(), idColumn);
- return createEqualsOrContainsCondition(scopeObject, fullIdColumn);
+ private Condition createCondition(final ScopeObject scopeObject) {
+ if (scopeObject.getLeaf().equals("id")) {
+ return createIdConditionForFilterSide(scopeObject);
}
-
- String nonNullColumn = getTableNameWithColumnName(entityType.getTableName(), idColumn);
- String fullIdColumn = getTableNameWithColumnName(entityType.getTableName(), entityType.getIdColumnName());
- return field(nonNullColumn).isNotNull().and(createEqualsOrContainsCondition(scopeObject, fullIdColumn));
+ return createAttributeConditionForFilterSide(scopeObject);
}
- private static Condition createAttributeCondition(final ScopeObject scopeObject) {
+ private Condition createIdConditionForFilterSide(final ScopeObject scopeObject) {
+ RelationType relation = getRelationType(scopeObject);
+ String associationName = scopeObject.getInnerContainer().get(0);
+ EntityType filter = relation.getAssociationSide(associationName);
+ ScopeObject modifiedScopeObject = ScopeObject.copy(scopeObject);
+ modifiedScopeObject.setContainer(ContainerType.ID);
+ modifiedScopeObject.setTopologyObject(filter.getName());
+ modifiedScopeObject.setTopologyObjectType(TopologyObjectType.ENTITY);
+ modifiedScopeObject.setDataType(DataType.PRIMITIVE);
+ return ConditionFactory.create(modifiedScopeObject).getCondition(modifiedScopeObject);
+ }
+
+ private Condition createAttributeConditionForFilterSide(final ScopeObject scopeObject) {
+ ScopeObject modifiedScopeObject = ScopeObject.copy(scopeObject);
RelationType relation = getRelationType(scopeObject);
- EntityType entityType = getEntityTypeOnFilterSide(scopeObject, relation);
+ EntityType filter = relation.getAssociationSide(scopeObject.getInnerContainer().get(0));
+ modifiedScopeObject.setContainer(ContainerType.ATTRIBUTES);
+ modifiedScopeObject.setTopologyObject(filter.getName());
+ modifiedScopeObject.setInnerContainer(modifiedScopeObject.getInnerContainer().subList(1, modifiedScopeObject
+ .getInnerContainer().size()));
+ modifiedScopeObject.setTopologyObjectType(TopologyObjectType.ENTITY);
if (scopeObject.getDataType() == null) {
- throw TiesPathException.invalidQueryCondition("Datatype for parameter is missing");
- }
- if (scopeObject.getQueryFunction().equals(QueryFunction.CONTAINS) && scopeObject.getDataType().equals(
- DataType.GEOGRAPHIC)) {
- throw TiesPathException.invalidQueryCondition("Cannot have CONTAINS on geography type data");
- }
- List<String> innerContainer = scopeObject.getInnerContainer().subList(1, scopeObject.getInnerContainer()
- .size());
- if (innerContainer.isEmpty() && scopeObject.getDataType() == DataType.GEOGRAPHIC) {
- return condition(getTableNameWithColumnName(entityType.getTableName(), scopeObject
- .getLeaf()) + " = st_geomfromtext(?)", val(convert(scopeObject)));
- }
-
- String compareField = getAttributeColumn(scopeObject, innerContainer, relation);
- if (!relation.getRelationshipStorageLocation().equals(RelationshipDataLocation.RELATION)) {
- if (relation.getStoringSideEntityType().equals(entityType)) {
- String idColumn = getTableNameWithColumnName(entityType.getTableName(), getIdColumn(scopeObject,
- relation));
- return field(idColumn).isNotNull().and(createEqualsOrContainsCondition(scopeObject, compareField));
- }
- return createEqualsOrContainsCondition(scopeObject, compareField);
+ throw TiesPathException.invalidQueryCondition("Data type was not found");
}
- return createEqualsOrContainsCondition(scopeObject, compareField);
- }
-
- private static String getIdColumn(final ScopeObject scopeObject, final RelationType relation) {
- if (relation.getRelationshipStorageLocation() != RelationshipDataLocation.RELATION) {
- return relation.getNotStoringSideEntityIdColumnNameInStoringSideTable();
+ Condition condition = ConditionFactory.create(modifiedScopeObject).getCondition(modifiedScopeObject);
+ if (filter.equals(relation.getStoringSideEntityType())) {
+ condition = field(getTableNameWithColumnName(filter.getTableName(), relation
+ .getNotStoringSideEntityIdColumnNameInStoringSideTable())).isNotNull().and(condition);
}
- if (!relation.isConnectsSameEntity()) {
- return matchTopologyObjectOrAssociation(scopeObject, relation.getASide()) ?
- relation.bSideColumnName() :
- relation.aSideColumnName();
- }
- boolean aSideAssociation = relation.getASideAssociation().getName().equals(scopeObject.getInnerContainer().get(
- 0));
- return aSideAssociation ? relation.aSideColumnName() : relation.bSideColumnName();
- }
-
- private static String getAttributeColumn(final ScopeObject scopeObject, final List<String> innerContainer,
- final RelationType relation) {
- if (!scopeObject.getTopologyObjectType().equals(TopologyObjectType.ENTITY)) {
- throw TiesPathException.invalidTopologyObjectType();
- }
- EntityType entityType = getEntityTypeOnFilterSide(scopeObject, relation);
- if (innerContainer.isEmpty()) {
- return getTableNameWithColumnName(entityType.getTableName(), scopeObject.getLeaf());
- }
- return processContainers(entityType, innerContainer) + String.format(" -> '%s'", scopeObject.getLeaf());
+ return condition;
}
private static RelationType getRelationType(final ScopeObject scopeObject) {
- switch (scopeObject.getTopologyObjectType()) {
- case ENTITY:
- return SchemaRegistry.getAllRelationNamesByAssociationName(scopeObject.getInnerContainer().get(0))
- .stream().filter(r -> topologyObjectEquals(scopeObject, r.getASide()) || topologyObjectEquals(
- scopeObject, r.getBSide())).findFirst().orElseThrow(() -> TiesPathException
- .invalidQueryCondition("Relation was not found"));
- case RELATION:
- return SchemaRegistry.getRelationTypeByName(scopeObject.getTopologyObject());
- default:
- throw TiesPathException.invalidTopologyObjectType();
- }
- }
-
- private static EntityType getEntityTypeOnFilterSide(final ScopeObject scopeObject, final RelationType relation) {
- boolean isTopologyObjASide = matchTopologyObjectOrAssociation(scopeObject, relation.getASide());
- return isTopologyObjASide ? relation.getBSide() : relation.getASide();
- }
-
- private static boolean matchTopologyObjectOrAssociation(final ScopeObject scopeObject,
- final EntityType entityType) {
- RelationType relation = getRelationType(scopeObject);
- return topologyObjectEquals(scopeObject, entityType) || SchemaRegistry.getEntityTypeOnAssociationSide(relation,
- scopeObject.getInnerContainer().get(0)).equals(entityType);
+ return switch (scopeObject.getTopologyObjectType()) {
+ case ENTITY -> SchemaRegistry.getAllRelationNamesByAssociationName(scopeObject.getInnerContainer().get(0))
+ .stream().filter(r -> topologyObjectEquals(scopeObject, r.getASide()) || topologyObjectEquals(
+ scopeObject, r.getBSide())).findFirst().orElseThrow(() -> TiesPathException
+ .invalidQueryCondition("Relation was not found"));
+ case RELATION -> SchemaRegistry.getRelationTypeByName(scopeObject.getTopologyObject());
+ default -> throw TiesPathException.invalidTopologyObjectType();
+ };
}
private static boolean topologyObjectEquals(final ScopeObject scopeObject, final EntityType entityType) {
return entityType.getName().equals(scopeObject.getTopologyObject());
}
-
- private static Condition createEqualsOrContainsCondition(final ScopeObject scopeObject, final String field) {
- return scopeObject.getQueryFunction() == EQ ?
- condition(field(field).eq(convert(scopeObject))) :
- condition(field(field).contains(convert(scopeObject)));
- }
}
static class MetaDataMapCondition extends AnyCondition {
import lombok.Builder;
import lombok.Data;
import org.oran.smo.teiv.exception.TiesException;
+import org.oran.smo.teiv.schema.BidiDbNameMapper;
import org.oran.smo.teiv.schema.DataType;
import org.oran.smo.teiv.schema.Persistable;
import org.oran.smo.teiv.schema.RelationType;
import org.oran.smo.teiv.schema.SchemaRegistry;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
ID_COLUMN_NAME))), select);
}
+ public RelationType getRelationTypeFromTarget(TargetObject targetObject) {
+ switch (targetObject.getTopologyObjectType()) {
+ case ENTITY -> {
+ List<Table> tables = new ArrayList<>(getTables());
+ String associationTable = tables.get(tables.size() - 1).getName().replace("ties_data.", "").replace("\"",
+ "");
+ String targetTable = tables.get(0).getName().replace("ties_data.", "").replace("\"", "");
+ String associationEntity = BidiDbNameMapper.getModelledName(associationTable).split("_")[1];
+ String targetEntity = BidiDbNameMapper.getModelledName(targetTable).split("_")[1];
+ return SchemaRegistry.getRelationTypeBetweenEntities(targetEntity, associationEntity);
+ }
+ case RELATION -> {
+ return SchemaRegistry.getRelationTypes().stream().filter(entityType -> entityType.getName().equals(
+ targetObject.getTopologyObject())).findFirst().orElse(null);
+ }
+ default -> throw TiesException.unParsedTopologyObjectType(targetObject.getTopologyObject());
+ }
+ }
+
public Table getTableFromTarget(TargetObject targetObject) {
switch (targetObject.getTopologyObjectType()) {
case ENTITY -> {
@Data
public abstract class LogicalBlock {
private boolean isValid = true;
+ private boolean isFirstHop = false;
public abstract Condition getCondition();
import lombok.Data;
import lombok.EqualsAndHashCode;
-import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.commons.lang3.tuple.Pair;
import org.jooq.Condition;
import org.jooq.Table;
import org.oran.smo.teiv.exception.TiesException;
import org.oran.smo.teiv.schema.EntityType;
+import org.oran.smo.teiv.schema.RelationCardinality;
import org.oran.smo.teiv.schema.RelationType;
import org.oran.smo.teiv.schema.RelationshipDataLocation;
import org.oran.smo.teiv.schema.SchemaRegistry;
import static org.jooq.impl.DSL.table;
import static org.oran.smo.teiv.utils.PersistableUtil.getTableNameWithColumnName;
import static org.oran.smo.teiv.utils.TiesConstants.ID_COLUMN_NAME;
-import static org.oran.smo.teiv.utils.TiesConstants.QUOTED_STRING;
@Data
@EqualsAndHashCode(callSuper = true)
-@RequiredArgsConstructor
public class ScopeLogicalBlock extends LogicalBlock {
private final ScopeObject scopeObject;
Set<Table> result = new HashSet<>();
- if (scopeObject.getContainer().equals(ContainerType.ASSOCIATION)) {
- result.add(addAssociationToTable());
- } else if (scopeObject.getTopologyObjectType() == TopologyObjectType.ENTITY) {
- result.add(addEntityToTable());
+ if (scopeObject.getTopologyObjectType() == TopologyObjectType.ENTITY) {
+ result.add(getEntityTable());
} else if (scopeObject.getTopologyObjectType() == TopologyObjectType.RELATION) {
- result.add(addRelationToTable());
+ result.add(getRelationTable());
} else if (scopeObject.getTopologyObjectType() == TopologyObjectType.UNDEFINED) {
throw TiesException.unknownTopologyObjectType(scopeObject.getTopologyObject());
}
-
+ if (scopeObject.getContainer().equals(ContainerType.ASSOCIATION)) {
+ result.add(getAssociationTable());
+ }
return result;
}
public Set<Pair<String, Field>> getJoinCondition() {
- HashSet<Pair<String, Field>> joinCondition = new HashSet<>();
- if (scopeObject.getContainer().equals(ContainerType.ASSOCIATION) && scopeObject.getTopologyObjectType().equals(
- TopologyObjectType.ENTITY)) {
- EntityType entityType = SchemaRegistry.getEntityTypeByName(scopeObject.getTopologyObject());
- String association = scopeObject.getInnerContainer().get(0);
- List<RelationType> relationTypes = SchemaRegistry.getAllRelationNamesByAssociationName(association);
-
- RelationType relationType = relationTypes.stream().filter(relation -> relation.getASide().equals(
- entityType) || relation.getBSide().equals(entityType)).findFirst().orElseThrow(() -> TiesPathException
- .invalidAssociation(entityType.getName(), association));
-
- if (relationType.getRelationshipStorageLocation().equals(RelationshipDataLocation.RELATION)) {
- String columnName = "";
- if (relationType.getASide().equals(entityType)) {
- columnName = relationType.aSideColumnName();
- } else {
- columnName = relationType.bSideColumnName();
- }
- String col1 = constructColumnNameForJoinCondition(relationType, columnName);
- String col2 = getTableNameWithColumnName(entityType.getTableName(), ID_COLUMN_NAME);
+ if (scopeObject.getContainer().equals(ContainerType.ASSOCIATION)) {
+ switch (scopeObject.getTopologyObjectType()) {
+ case ENTITY:
+ return constructEntityAssociationJoin(scopeObject);
+ case RELATION:
+ return constructRelationAssociationJoin(scopeObject);
+ default:
+ break;
+ }
+ }
+ return new HashSet<>();
+ }
- joinCondition.add(constructJoinConditionPair(relationType, col1, col2));
- } else if (!relationType.getStoringSideEntityType().getName().equals(scopeObject.getTopologyObject())) {
- String col1 = constructColumnNameForJoinCondition(relationType, relationType
- .getNotStoringSideEntityIdColumnNameInStoringSideTable());
- String col2 = getTableNameWithColumnName(relationType.getNotStoringSideTableName(), ID_COLUMN_NAME);
+ private static Set<Pair<String, Field>> constructEntityAssociationJoin(ScopeObject scopeObject) {
+ Set<Pair<String, Field>> joinCondition = new HashSet<>();
+ EntityType entityType = SchemaRegistry.getEntityTypeByName(scopeObject.getTopologyObject());
+ String association = scopeObject.getInnerContainer().get(0);
+ List<RelationType> relationTypes = SchemaRegistry.getAllRelationNamesByAssociationName(association);
+
+ RelationType relationType = relationTypes.stream().filter(relation -> relation.getASide().equals(
+ entityType) || relation.getBSide().equals(entityType)).findFirst().orElseThrow(() -> TiesPathException
+ .invalidAssociation(entityType.getName(), association));
+ if (relationType.getRelationshipStorageLocation().equals(RelationshipDataLocation.RELATION)) {
+ String columnName = relationType.getASide().equals(entityType) ?
+ relationType.aSideColumnName() :
+ relationType.bSideColumnName();
+ String col1 = getTableNameWithColumnName(relationType.getTableName(), columnName);
+ String col2 = getTableNameWithColumnName(entityType.getTableName(), ID_COLUMN_NAME);
+ joinCondition.add(constructJoinConditionPair(relationType, col1, col2));
+ } else if (!relationType.getStoringSideEntityType().getName().equals(scopeObject.getTopologyObject())) {
+ String col1 = getTableNameWithColumnName(relationType.getTableName(), relationType
+ .getNotStoringSideEntityIdColumnNameInStoringSideTable());
+ String col2 = getTableNameWithColumnName(relationType.getNotStoringSideTableName(), ID_COLUMN_NAME);
+ joinCondition.add(constructJoinConditionPair(relationType, col1, col2));
+ }
+ return joinCondition;
+ }
- joinCondition.add(constructJoinConditionPair(relationType, col1, col2));
- }
+ private static HashSet<Pair<String, Field>> constructRelationAssociationJoin(ScopeObject scopeObject) {
+ HashSet<Pair<String, Field>> joinCondition = new HashSet<>();
+ String association = scopeObject.getInnerContainer().get(0);
+ List<RelationType> relationTypes = SchemaRegistry.getAllRelationNamesByAssociationName(association);
+
+ RelationType relationType = relationTypes.stream().filter(relation -> relation.getName().equals(scopeObject
+ .getTopologyObject())).findFirst().orElseThrow(() -> TiesPathException.invalidAssociation(scopeObject
+ .getTopologyObject(), association));
+
+ EntityType targetEntity = relationType.getAssociationSide(association);
+ RelationCardinality relationCardinality = relationType.getRelationCardinality(targetEntity.getName());
+ if (relationCardinality == RelationCardinality.ONE_TO_MANY || relationCardinality == RelationCardinality.MANY_TO_ONE) {
+ String tableName = relationCardinality == RelationCardinality.ONE_TO_MANY ?
+ relationType.getTableName() :
+ targetEntity.getTableName();
+ Pair<String, Field> pairOneToMany = createJoinPair(tableName, relationType.getNotStoringSideTableName(),
+ relationType.getNotStoringSideEntityIdColumnNameInStoringSideTable());
+ joinCondition.add(pairOneToMany);
+ } else if (relationCardinality == RelationCardinality.MANY_TO_MANY || relationCardinality == RelationCardinality.ONE_TO_ONE) {
+ Pair<String, Field> pairRelationTable = createMultipleJoinPair(relationType.getTableName(), relationType
+ .getBSide().getTableName(), relationType.aSideColumnName(), relationType.bSideColumnName());
+ joinCondition.add(pairRelationTable);
}
return joinCondition;
}
- private static String constructColumnNameForJoinCondition(RelationType relationType, String columnName) {
- return relationType.getTableName() + "." + String.format(QUOTED_STRING, columnName);
+ private static Pair<String, Field> createJoinPair(String tableName, String tableName2, String foreignKeyColumn) {
+ String foreignKeyField = getTableNameWithColumnName(tableName, foreignKeyColumn);
+ String idField = getTableNameWithColumnName(tableName2, ID_COLUMN_NAME);
+ return new ImmutablePair<>(tableName2, field(foreignKeyField + "=" + idField));
+ }
+
+ private static Pair<String, Field> createMultipleJoinPair(String tableName, String relationTable,
+ String foreignKeyColumn, String foreignKeyColumn2) {
+ String foreignKeyField = getTableNameWithColumnName(tableName, foreignKeyColumn);
+ String foreignKeyField2 = getTableNameWithColumnName(tableName, foreignKeyColumn2);
+ String idField = getTableNameWithColumnName(relationTable, ID_COLUMN_NAME);
+ String idField2 = getTableNameWithColumnName(relationTable, ID_COLUMN_NAME);
+ return new ImmutablePair<>(relationTable, field(foreignKeyField + "=" + idField + " OR " + field(
+ foreignKeyField2 + "=" + idField2)));
}
private static Pair<String, Field> constructJoinConditionPair(RelationType relationType, String col1, String col2) {
return new ImmutablePair<>(relationType.getTableName(), equalsField);
}
- private Table addEntityToTable() {
+ private Table getEntityTable() {
return table(SchemaRegistry.getEntityTypeByName(scopeObject.getTopologyObject()).getTableName());
}
- private Table addRelationToTable() {
+ private Table getRelationTable() {
return table(SchemaRegistry.getRelationTypeByName(scopeObject.getTopologyObject()).getTableName());
}
- private Table addAssociationToTable() {
+ private Table getAssociationTable() {
List<RelationType> relationTypes = SchemaRegistry.getAllRelationNamesByAssociationName(scopeObject
.getInnerContainer().get(0));
if (scopeObject.getTopologyObjectType().equals(TopologyObjectType.ENTITY)) {
for (RelationType relation : relationTypes) {
- if (relation.getASide().getName().equals(scopeObject.getTopologyObject()) || relation.getBSide().getName()
- .equals(scopeObject.getTopologyObject())) {
- return table(relation.getTableName());
+ if (relation.getASide().getName().equals(scopeObject.getTopologyObject())) {
+ return table(relation.getBSide().getTableName());
+ } else if (relation.getBSide().getName().equals(scopeObject.getTopologyObject())) {
+ return table(relation.getASide().getTableName());
}
}
} else {
throw TiesException.invalidAssociationType(scopeObject.getInnerContainer().get(0));
}
+ @Override
+ public boolean isFirstHop() {
+ return scopeObject.getContainer() != null && scopeObject.getContainer().equals(ContainerType.ASSOCIATION);
+ }
}
import org.oran.smo.teiv.schema.DataType;
import lombok.Data;
+import java.util.ArrayList;
import java.util.List;
@Data
public static ScopeObjectBuilder builder(final String topologyObject) {
return hiddenBuilder().topologyObject(topologyObject);
}
+
+ public static ScopeObject copy(final ScopeObject scopeObject) {
+ return builder(scopeObject.getTopologyObject()).topologyObjectType(scopeObject.getTopologyObjectType()).container(
+ scopeObject.getContainer()).innerContainer(new ArrayList<>(scopeObject.getInnerContainer())).leaf(
+ scopeObject.getLeaf()).queryFunction(scopeObject.getQueryFunction()).parameter(scopeObject
+ .getParameter()).dataType(scopeObject.getDataType()).resolverDataType(scopeObject
+ .getResolverDataType()).build();
+ }
}
case ID:
validateIdParameter(so);
break;
- case ASSOCIATION, RELATION:
- validateAssociationAndRelationParameter(so);
+ case ASSOCIATION:
+ validateAssociationParameter(so);
+ break;
+ case RELATION:
+ validateRelationParameter(so);
break;
case SOURCE_IDS:
validateSourceIdsParameter(so);
so.setDataType(DataType.PRIMITIVE);
}
- private void validateAssociationAndRelationParameter(final ScopeObject so) {
+ private void validateRelationParameter(final ScopeObject so) {
if (so.getLeaf() != null && !ID_COLUMN_NAME.equals(so.getLeaf())) {
- throw TiesPathException.grammarError("Only id condition can be queried in case of association container");
+ throw TiesPathException.grammarError("Only id condition can be queried in case of relation container");
} else if (so.getResolverDataType().equals(ResolverDataType.INTEGER)) {
throw TiesPathException.grammarError("Invalid data type provided for scopeFilter");
} else if (so.getResolverDataType().equals(ResolverDataType.STRING)) {
}
}
+ private void validateAssociationParameter(final ScopeObject so) {
+ if (so.getLeaf() == null) {
+ throw TiesPathException.grammarError("Leaf cannot be null in case of association container");
+ }
+ if (ID_COLUMN_NAME.equals(so.getLeaf())) {
+ validateIdParameter(so);
+ return;
+ }
+ if (so.getInnerContainer().size() == 1) {
+ so.setDataType(SchemaRegistry.getOtherEntityByEntityAndAssociation(so.getTopologyObject(), so
+ .getInnerContainer().get(0)).getFields().get(so.getLeaf()));
+ compareResolverDataTypeToDataType(so);
+ } else if (so.getInnerContainer().size() > 1) {
+ setDataTypeForComplexAttribute(so);
+ }
+ }
+
private void validateSourceIdsParameter(final ScopeObject so) {
if (so.getResolverDataType().equals(ResolverDataType.INTEGER)) {
throw TiesPathException.grammarError("Invalid data type provided for scopeFilter");
package org.oran.smo.teiv.exposure.tiespath.refiner;
import org.apache.commons.lang3.tuple.Pair;
+import org.jooq.CommonTableExpression;
import org.jooq.Field;
import org.jooq.JSONB;
import org.jooq.OrderField;
import org.jooq.Record;
+import org.jooq.Record1;
import org.jooq.SelectConditionStep;
import org.jooq.SelectField;
import org.jooq.SelectOrderByStep;
+import org.jooq.Table;
+import org.jooq.impl.DSL;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.FilterCriteria;
import lombok.experimental.UtilityClass;
import org.jooq.SelectJoinStep;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.InnerFilterCriteria;
+import org.oran.smo.teiv.exposure.tiespath.innerlanguage.TargetObject;
import org.oran.smo.teiv.schema.DataType;
+import org.oran.smo.teiv.schema.RelationType;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Map.Entry;
import java.util.Set;
import static org.jooq.impl.DSL.field;
+import static org.jooq.impl.DSL.name;
import static org.jooq.impl.DSL.select;
import static org.jooq.impl.DSL.selectCount;
+import static org.jooq.impl.DSL.table;
+import static org.jooq.impl.DSL.with;
+import static org.oran.smo.teiv.utils.TiesConstants.ID_COLUMN_NAME;
import static org.oran.smo.teiv.utils.TiesConstants.QUOTED_STRING;
@UtilityClass
public static SelectOrderByStep<Record> toJooq(FilterCriteria filterCriteria, int offset, int limit) {
SelectOrderByStep<Record> basicQuery = createBasicQuery(filterCriteria, false);
SelectOrderByStep<Record> countQuery = createBasicQuery(filterCriteria, true);
-
- List<Map.Entry<SelectField, Map<SelectField, DataType>>> selectList = new ArrayList<>(filterCriteria.getSelects()
+ List<Entry<SelectField, Map<SelectField, DataType>>> selectList = new ArrayList<>(filterCriteria.getSelects()
.entrySet());
-
return createQueryWithCount(selectList, basicQuery, countQuery, offset, limit);
}
- private static SelectOrderByStep<Record> createBasicQuery(FilterCriteria filterCriteria, boolean countMode) {
- Map<SelectField, DataType> fields = new HashMap<>();
- if (countMode) {
- for (SelectField id : filterCriteria.getSelects().keySet()) {
- fields.put(id, DataType.PRIMITIVE);
- }
- } else {
- for (Map<SelectField, DataType> fieldSet : filterCriteria.getSelects().values()) {
- fields.putAll(fieldSet);
+ private static SelectOrderByStep<Record> createQueryWithCount(
+ List<Entry<SelectField, Map<SelectField, DataType>>> selectList, SelectOrderByStep<Record> basicQuery,
+ SelectOrderByStep<Record> countQuery, int offset, int limit) {
+ List<SelectField> fields = new ArrayList<>();
+ for (Entry<SelectField, Map<SelectField, DataType>> fieldSet : selectList) {
+ for (Entry<SelectField, DataType> field : fieldSet.getValue().entrySet()) {
+ if (field.getValue() == DataType.CONTAINER) {
+ fields.add(field(String.format(QUOTED_STRING, field.getKey().getName()), JSONB.class));
+ } else {
+ fields.add(field(String.format(QUOTED_STRING, field.getKey().getName())));
+ }
}
}
- SelectOrderByStep<Record> query = createInnerQuery(filterCriteria.getFilterCriteriaList().get(0), fields,
- countMode);
+ List<SelectField> fieldsWithNullCount = new ArrayList<>(fields);
+ fieldsWithNullCount.add(field("null").as("count"));
+
+ List<SelectField> nullFieldsWithCount = getNulledFields(selectList);
+ nullFieldsWithCount.add(field(selectCount().from(countQuery)).as("count"));
+
+ return select(nullFieldsWithCount).unionAll(select(fieldsWithNullCount).from(basicQuery).limit(offset, limit));
+ }
+
+ private static SelectOrderByStep<Record> createBasicQuery(FilterCriteria filterCriteria, boolean countMode) {
+ Map<SelectField, DataType> fields = getFields(filterCriteria.getSelects(), countMode);
+ SelectOrderByStep<Record> query = createBasicOrFirstHopInnerQuery(filterCriteria.getFilterCriteriaList().get(0),
+ fields, countMode);
for (int i = 1; i < filterCriteria.getFilterCriteriaList().size(); i++) {
- query = query.unionAll(createInnerQuery(filterCriteria.getFilterCriteriaList().get(i), fields, countMode));
+ query = query.unionAll(createBasicOrFirstHopInnerQuery(filterCriteria.getFilterCriteriaList().get(i), fields,
+ countMode));
}
return query;
}
- private static SelectOrderByStep<Record> createInnerQuery(InnerFilterCriteria filterCriteria,
- Map<SelectField, DataType> otherFields, boolean countMode) {
- Set<SelectField> selfFields = new HashSet<>();
- List<SelectField> resolvedFields = new ArrayList<>();
-
- for (Map<SelectField, DataType> fieldSet : filterCriteria.getSelects().values()) {
- selfFields.addAll(fieldSet.keySet());
+ private static SelectOrderByStep<Record> createBasicOrFirstHopInnerQuery(InnerFilterCriteria filterCriteria,
+ Map<SelectField, DataType> fields, boolean countMode) {
+ if (filterCriteria.getScope().isFirstHop()) {
+ return createFirstHopInnerQuery(filterCriteria, fields, countMode);
}
+ return createInnerQuery(filterCriteria, fields, countMode);
+ }
- for (Map.Entry<SelectField, DataType> field : otherFields.entrySet()) {
- if (selfFields.contains(field.getKey())) {
- resolvedFields.add(field.getKey());
- } else if (field.getValue() == DataType.CONTAINER) {
- resolvedFields.add(field("null::jsonb", JSONB.class).as(field.getKey().getName()));
- } else if (field.getValue() == DataType.INTEGER) {
- resolvedFields.add(field("null::integer").as(field.getKey().getName()));
- } else if (field.getValue() == DataType.BIGINT) {
- resolvedFields.add(field("null::bigint").as(field.getKey().getName()));
- } else if (field.getValue() == DataType.DECIMAL) {
- resolvedFields.add(field("null::numeric").as(field.getKey().getName()));
- } else if (field.getValue() == DataType.TIMESTAMPTZ) {
- resolvedFields.add(field("null::timestamptz").as(field.getKey().getName()));
- } else if (field.getValue() == DataType.BYTEA) {
- resolvedFields.add(field("null::bytea").as(field.getKey().getName()));
- } else {
- resolvedFields.add(field("null").as(field.getKey().getName()));
- }
+ private static SelectOrderByStep<Record> createFirstHopInnerQuery(InnerFilterCriteria filterCriteria,
+ Map<SelectField, DataType> otherFields, boolean countMode) {
+ List<SelectField> resolvedFields = getResolvedFields(filterCriteria.getSelects(), otherFields.entrySet());
+ SelectOrderByStep<Record> query = buildSingleFirstHopQuery(filterCriteria, resolvedFields);
+
+ if (countMode) {
+ return query;
+ } else {
+ return (SelectOrderByStep) query.orderBy(filterCriteria.getSelects().keySet().stream().map(i -> field(i).asc())
+ .toList().toArray(new OrderField[0]));
}
+ }
+ private static SelectOrderByStep<Record> createInnerQuery(InnerFilterCriteria filterCriteria,
+ Map<SelectField, DataType> otherFields, boolean countMode) {
+ List<SelectField> resolvedFields = getResolvedFields(filterCriteria.getSelects(), otherFields.entrySet());
SelectJoinStep<Record> query = select(resolvedFields).from(filterCriteria.getTableFromTarget(filterCriteria
.getTargets().get(0)));
}
}
- private static SelectOrderByStep<Record> createQueryWithCount(
- List<Map.Entry<SelectField, Map<SelectField, DataType>>> selectList, SelectOrderByStep<Record> basicQuery,
- SelectOrderByStep<Record> countQuery, int offset, int limit) {
- List<SelectField> fields = new ArrayList<>();
- for (Map.Entry<SelectField, Map<SelectField, DataType>> fieldSet : selectList) {
- for (Map.Entry<SelectField, DataType> field : fieldSet.getValue().entrySet()) {
- if (field.getValue() == DataType.CONTAINER) {
- fields.add(field(String.format(QUOTED_STRING, field.getKey().getName()), JSONB.class));
- } else {
- fields.add(field(String.format(QUOTED_STRING, field.getKey().getName())));
- }
- }
- }
+ private SelectConditionStep<Record> buildSingleFirstHopQuery(InnerFilterCriteria innerFilterCriteria,
+ List<SelectField> resolvedFields) {
+ TargetObject targetObject = innerFilterCriteria.getTargets().get(0);
+ return switch (innerFilterCriteria.getRelationTypeFromTarget(targetObject).getRelationCardinality(targetObject
+ .getTopologyObject())) {
+ case ONE_TO_MANY -> buildOneToManyQuery(innerFilterCriteria, resolvedFields);
+ case MANY_TO_ONE -> buildManyToOneQuery(innerFilterCriteria, resolvedFields);
+ case MANY_TO_MANY, ONE_TO_ONE -> buildManyToManyQuery(innerFilterCriteria, resolvedFields);
+ };
+ }
- List<SelectField> fieldsWithNullCount = new ArrayList<>(fields);
- fieldsWithNullCount.add(field("null").as("count"));
+ private static SelectConditionStep<Record> buildManyToManyQuery(InnerFilterCriteria innerFilterCriteria,
+ List<SelectField> resolvedFields) {
+ TargetObject targetObject = innerFilterCriteria.getTargets().get(0);
+ RelationType relation = innerFilterCriteria.getRelationTypeFromTarget(targetObject);
- List<SelectField> nullFieldsWithCount = getNulledFields(selectList);
- nullFieldsWithCount.add(field(selectCount().from(countQuery)).as("count"));
+ String associtionTableName = relation.getOtherSideTableName(targetObject.getTopologyObject());
+ boolean isAssociationASide = associtionTableName.equals(relation.getASide().getTableName());
+ String entityTableName = isAssociationASide ?
+ relation.getBSide().getTableName() :
+ relation.getASide().getTableName();
+ String outerSelectField = isAssociationASide ? relation.bSideColumnName() : relation.aSideColumnName();
+ String outerWhereField = isAssociationASide ? relation.aSideColumnName() : relation.bSideColumnName();
+ String relationTable = relation.getTableName();
- return select(nullFieldsWithCount).unionAll(select(fieldsWithNullCount).from(basicQuery).limit(offset, limit));
+ Field idField = field("id");
+ SelectConditionStep<Record> innerQuery = select(idField).from(associtionTableName).where(innerFilterCriteria
+ .getCondition());
+
+ Field selectField = field(DSL.quotedName(outerSelectField));
+ Field whereField = field(DSL.quotedName(outerWhereField));
+
+ CommonTableExpression<Record1<String>> cell = name(targetObject.getTopologyObject()).fields("id").as(select(
+ selectField).from(relationTable).where(whereField.in(innerQuery)));
+
+ return with(cell).select(resolvedFields).from(table(entityTableName)).where(field("id").in(select(field("id")).from(
+ cell)));
+ }
+
+ private static SelectConditionStep<Record> buildOneToManyQuery(InnerFilterCriteria innerFilterCriteria,
+ List<SelectField> resolvedFields) {
+ TargetObject targetObject = innerFilterCriteria.getTargets().get(0);
+ RelationType relation = innerFilterCriteria.getRelationTypeFromTarget(targetObject);
+ String filterTable = relation.getOtherSideTableName(targetObject.getTopologyObject());
+ Table targetTable = innerFilterCriteria.getTableFromTarget(targetObject);
+ Field targetIdField = field(ID_COLUMN_NAME);
+
+ Field filterForeignKeyField = field(DSL.quotedName(relation
+ .getNotStoringSideEntityIdColumnNameInStoringSideTable()));
+
+ SelectConditionStep<Record> subQuery = select(filterForeignKeyField).from(filterTable).where(innerFilterCriteria
+ .getCondition());
+ return select(resolvedFields).from(targetTable).where(targetIdField.in(subQuery));
}
- private static List<SelectField> getNulledFields(List<Map.Entry<SelectField, Map<SelectField, DataType>>> selectList) {
+ public static SelectConditionStep<Record> buildManyToOneQuery(InnerFilterCriteria innerFilterCriteria,
+ List<SelectField> resolvedFields) {
+ TargetObject targetObject = innerFilterCriteria.getTargets().get(0);
+ RelationType relation = innerFilterCriteria.getRelationTypeFromTarget(targetObject);
+ String filterTable = relation.getOtherSideTableName(targetObject.getTopologyObject());
+ Field targetForeignKeyField = field(DSL.quotedName(relation
+ .getNotStoringSideEntityIdColumnNameInStoringSideTable()));
+
+ Field filterIdField = field(ID_COLUMN_NAME);
+
+ SelectConditionStep<Record> subQuery = select(filterIdField).from(filterTable).where(innerFilterCriteria
+ .getCondition());
+ return select(resolvedFields).from(innerFilterCriteria.getTableFromTarget(targetObject)).where(targetForeignKeyField
+ .in(subQuery));
+ }
+
+ private static List<SelectField> getNulledFields(List<Entry<SelectField, Map<SelectField, DataType>>> selectList) {
List<SelectField> nulledFields = new ArrayList<>();
for (int i = 0; i < selectList.size(); i++) {
addNullFields(selectList, nulledFields, i);
return nulledFields;
}
- private static void addNullFields(List<Map.Entry<SelectField, Map<SelectField, DataType>>> selectList,
+ private static Map<SelectField, DataType> getFields(Map<SelectField, Map<SelectField, DataType>> getSelects,
+ boolean countMode) {
+ Map<SelectField, DataType> fields = new HashMap<>();
+ if (countMode) {
+ for (SelectField id : getSelects.keySet()) {
+ fields.put(id, DataType.PRIMITIVE);
+ }
+ } else {
+ for (Map<SelectField, DataType> fieldSet : getSelects.values()) {
+ fields.putAll(fieldSet);
+ }
+ }
+ return fields;
+ }
+
+ private static List<SelectField> getResolvedFields(Map<SelectField, Map<SelectField, DataType>> getSelects,
+ Set<Entry<SelectField, DataType>> otherFields) {
+ Set<SelectField> selfFields = new HashSet<>();
+ for (Map<SelectField, DataType> fieldSet : getSelects.values()) {
+ selfFields.addAll(fieldSet.keySet());
+ }
+ List<SelectField> resolvedFields = new ArrayList<>();
+ for (Entry<SelectField, DataType> field : otherFields) {
+ if (selfFields.contains(field.getKey())) {
+ resolvedFields.add(field.getKey());
+ } else if (field.getValue() == DataType.CONTAINER) {
+ resolvedFields.add(field("null::jsonb", JSONB.class).as(field.getKey().getName()));
+ } else if (field.getValue() == DataType.INTEGER) {
+ resolvedFields.add(field("null::integer").as(field.getKey().getName()));
+ } else if (field.getValue() == DataType.BIGINT) {
+ resolvedFields.add(field("null::bigint").as(field.getKey().getName()));
+ } else if (field.getValue() == DataType.DECIMAL) {
+ resolvedFields.add(field("null::numeric").as(field.getKey().getName()));
+ } else if (field.getValue() == DataType.TIMESTAMPTZ) {
+ resolvedFields.add(field("null::timestamptz").as(field.getKey().getName()));
+ } else if (field.getValue() == DataType.BYTEA) {
+ resolvedFields.add(field("null::bytea").as(field.getKey().getName()));
+ } else {
+ resolvedFields.add(field("null").as(field.getKey().getName()));
+ }
+ }
+ return resolvedFields;
+ }
+
+ private static void addNullFields(List<Entry<SelectField, Map<SelectField, DataType>>> selectList,
List<SelectField> nulledFields, int i) {
for (SelectField field : selectList.get(i).getValue().keySet()) {
if (selectList.get(i).getValue().get(field) == DataType.CONTAINER) {
nulledFields.add(field("null").as(field.getName()));
}
}
+
}
}
import jakarta.annotation.Nullable;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.ContainerType;
+import org.oran.smo.teiv.schema.SchemaRegistry;
import org.oran.smo.teiv.utils.query.exception.TiesPathException;
import static org.oran.smo.teiv.utils.TiesConstants.ATTRIBUTES;
public static String getTopologyObject(final String rootObject, final List<String> containerNames) {
final int noOfContainers = containerNames.size();
final String firstContainer = containerNames.get(0);
-
+ if (isContainingAssociation(containerNames)) {
+ return Optional.ofNullable(rootObject).orElse(WILDCARD);
+ }
if (isComplexAttribute(containerNames)) {
return getTopologyObjectOnComplexAttributeCondition(rootObject, firstContainer);
} else if (noOfContainers > 2) {
return index != -1 && containerNames.size() - 1 > index;
}
+ public static boolean isContainingAssociation(final List<String> containerNames) {
+ return !containerNames.isEmpty() && containerNames.stream().anyMatch(SchemaRegistry::isValidAssociation);
+ }
+
@Nullable
public static ContainerType getContainerType(final List<String> containerNames) {
+ if (isContainingAssociation(containerNames)) {
+ return null;
+ }
return ContainerType.fromValue(containerNames.get(containerNames.size() - 1));
}
import static org.oran.smo.teiv.exposure.tiespath.resolver.ResolverUtil.getContainerType;
import static org.oran.smo.teiv.exposure.tiespath.resolver.ResolverUtil.getTopologyObject;
import static org.oran.smo.teiv.exposure.tiespath.resolver.ResolverUtil.isComplexAttribute;
+import static org.oran.smo.teiv.exposure.tiespath.resolver.ResolverUtil.isContainingAssociation;
import static org.oran.smo.teiv.utils.TiesConstants.ATTRIBUTES;
import static org.oran.smo.teiv.utils.TiesConstants.WILDCARD;
.queryFunction(queryFunction);
Optional.ofNullable(getContainerType(this.containerNames)).ifPresentOrElse(scopeObjectBuilder::container, () -> {
- if (!isComplexAttribute(containerNames)) {
- final String container = this.containerNames.get(containerNames.size() - 1);
- if (topologyObject.equals(container)) {
- Optional.ofNullable(getContainerType(List.of(leafName))).ifPresentOrElse(
- containerType -> scopeObjectBuilder.container(containerType).leaf(null), () -> {
- throw TiesPathException.grammarError(String.format(
- "%s is not a valid leaf for topology object: %s", leafName, rootObject));
- });
- } else {
- scopeObjectBuilder.topologyObject(Objects.equals(topologyObject, WILDCARD) ? null : topologyObject)
- .innerContainer(new ArrayList<>(Arrays.asList(container)));
- }
+ boolean isContainingAssociation = isContainingAssociation(containerNames);
+ if (!isComplexAttribute(containerNames) && !isContainingAssociation) {
+ handleSimple(scopeObjectBuilder, topologyObject, leafName, containerNames);
+ } else if (isContainingAssociation) {
+ handleAssociation(scopeObjectBuilder, topologyObject, containerNames);
} else {
- scopeObjectBuilder.topologyObject(topologyObject.equals(WILDCARD) ? null : topologyObject).container(
- ContainerType.ATTRIBUTES).innerContainer(Collections.unmodifiableList(containerNames.subList(
- containerNames.indexOf(ATTRIBUTES) + 1, containerNames.size())));
+ handleComplex(scopeObjectBuilder, topologyObject, containerNames);
}
-
});
return scopeObjectBuilder;
}
+ private void handleSimple(final ScopeObject.ScopeObjectBuilder scopeObjectBuilder, final String topologyObject,
+ final String leafName, final List<String> containerNames) {
+ final String container = this.containerNames.get(containerNames.size() - 1);
+ if (topologyObject.equals(container)) {
+ Optional.ofNullable(getContainerType(List.of(leafName))).ifPresentOrElse(containerType -> scopeObjectBuilder
+ .container(containerType).leaf(null), () -> {
+ throw TiesPathException.grammarError(String.format("%s is not a valid leaf for topology object: %s",
+ leafName, rootObject));
+ });
+ } else {
+ scopeObjectBuilder.topologyObject(Objects.equals(topologyObject, WILDCARD) ? null : topologyObject)
+ .innerContainer(new ArrayList<>(Arrays.asList(container)));
+ }
+ }
+
+ private void handleAssociation(final ScopeObject.ScopeObjectBuilder scopeObjectBuilder, final String topologyObject,
+ final List<String> containerNames) {
+ containerNames.remove(ATTRIBUTES);
+ if (containerNames.size() > 1) {
+ scopeObjectBuilder.container(ContainerType.ASSOCIATION);
+ }
+ scopeObjectBuilder.topologyObject(topologyObject.equals(WILDCARD) ? null : topologyObject).innerContainer(
+ Collections.unmodifiableList(containerNames));
+ }
+
+ private void handleComplex(final ScopeObject.ScopeObjectBuilder scopeObjectBuilder, final String topologyObject,
+ final List<String> containerNames) {
+ scopeObjectBuilder.topologyObject(topologyObject.equals(WILDCARD) ? null : topologyObject).container(
+ ContainerType.ATTRIBUTES).innerContainer(Collections.unmodifiableList(containerNames.subList(containerNames
+ .indexOf(ATTRIBUTES) + 1, containerNames.size())));
+ }
+
private void addScopeLogicalBlock(ScopeObject.ScopeObjectBuilder scopeObjectBuilder) {
if (this.logicalBlock == null || this.logicalBlock instanceof ScopeLogicalBlock) {
this.logicalBlock = new ScopeLogicalBlock(scopeObjectBuilder.build());
if (topologyObjectType == null) {
return;
}
- combinedQueries.add(groupsRepository.createQueryForPresentProvidedMembers(topologyObjectType.getTableName(),
- topologyType, providedMembersIds, topologyObjectType.getIdColumnName()));
+ combinedQueries.add(groupsRepository.createQueryForPresentProvidedMembers(groupId, topologyObjectType
+ .getTableName(), topologyType, topologyObjectType.getIdColumnName()));
});
return processCombinedQueries(combinedQueries, requestDetails);
}
/**
* Retrieves all members of the specified static group that are present in the network for the given topology type
*
+ * @param groupId
+ * - group id
* @param tableName
* - table name where entity is stored
* @param topologyType
* - topology type entity relates to
- * @param providedMembersIds
- * - provided members ids to be matched on
* @param idColumnName
* - id column name
* @return a query to select present provided members
*/
- Select<Record2<String, String>> createQueryForPresentProvidedMembers(String tableName, String topologyType,
- List<String> providedMembersIds, String idColumnName);
+ Select<Record2<String, String>> createQueryForPresentProvidedMembers(String groupId, String tableName,
+ String topologyType, String idColumnName);
/**
* Retrieves all members of the specified static group that are not present in the network for the given topology type
}
@Override
- public Select<Record2<String, String>> createQueryForPresentProvidedMembers(String tableName, String topologyType,
- List<String> providedMembersIds, String idColumnName) {
+ public Select<Record2<String, String>> createQueryForPresentProvidedMembers(String groupId, String tableName,
+ String topologyType, String idColumnName) {
return readDataDslContext.select(DSL.field(DSL.name(idColumnName), String.class).as("id"), DSL.inline(topologyType)
.as("topology_type")).from(DSL.table(tableName)).where(DSL.field(DSL.name(idColumnName)).in(
- providedMembersIds));
+ readDataDslContext.select(DSL.field("unnest(" + PROVIDED_MEMBERS_IDS.getName() + ")", String.class)
+ .as("unnested_id")).from(STATIC_GROUPS_TABLE).where(GROUP_ID.eq(groupId)).and(TOPOLOGY_TYPE
+ .eq(topologyType))));
}
@Override
*
* @return the reliability indicator column as String
*/
- public String getReliabilityColumnName(String attributeDbName) {
- return getDbName(String.format(RELIABILITY_INDICATOR_COL, attributeDbName));
+ public String getReliabilityColumnName(String attributeName) {
+ return getDbName(String.format(RELIABILITY_INDICATOR_COL, attributeName));
}
/**
*
* @return the responsible adapter column as String
*/
- public String getResponsibleAdapterAttributeColumnName(String attributeDbName) {
- return getDbName(String.format(RESPONSIBLE_ADAPTER_COL, attributeDbName));
+ public String getResponsibleAdapterAttributeColumnName(String attributeName) {
+ return getDbName(String.format(RESPONSIBLE_ADAPTER_COL, attributeName));
}
@Override
* SPDX-License-Identifier: Apache-2.0
* ============LICENSE_END=========================================================
*/
-package org.oran.smo.teiv.utils;
+package org.oran.smo.teiv.schema;
-/**
- * Constant Environment Variables.
- */
-public class EnvironmentVariableConstants {
-
- private EnvironmentVariableConstants() {
- }
+public enum RelationCardinality {
+ ONE_TO_MANY,
+ MANY_TO_ONE,
+ MANY_TO_MANY,
+ ONE_TO_ONE
}
return getDbName(String.format(REL_UPDATETIME_COL_PREFIX, name));
}
}
+
+ public RelationCardinality getRelationCardinality(String targetSide) {
+ if (getNotStoringSideEntityType() == null || getStoringSideEntityType() == null) {
+ if (!isAssociationOneSide(getASideAssociation())) {
+ return RelationCardinality.MANY_TO_MANY;
+ }
+ return RelationCardinality.ONE_TO_ONE;
+ } else if (targetSide.equals(getStoringSideEntityType().getName())) {
+ return RelationCardinality.MANY_TO_ONE;
+ } else if (targetSide.equals(getNotStoringSideEntityType().getName())) {
+ return RelationCardinality.ONE_TO_MANY;
+ }
+ return null;
+ }
+
+ public EntityType getAssociationSide(String associationName) {
+ if (getBSideAssociation().getName().equals(associationName)) {
+ return getASide();
+ } else if (getASideAssociation().getName().equals(associationName)) {
+ return getBSide();
+ }
+ return null;
+ }
+
+ public EntityType getNotAssociationSide(String associationName) {
+ if (getBSideAssociation().getName().equals(associationName)) {
+ return getBSide();
+ } else if (getASideAssociation().getName().equals(associationName)) {
+ return getASide();
+ }
+ return null;
+ }
+
+ public String getOtherSideTableName(String targetSide) {
+ if (getASide() == null || getBSide() == null) {
+ return null;
+ }
+ if (targetSide.equals(getASide().getName())) {
+ return getBSide().getTableName();
+ } else if (targetSide.equals(getBSide().getName())) {
+ return getASide().getTableName();
+ }
+ return null;
+ }
+
+ private static boolean isAssociationOneSide(Association association) {
+ return (association.getMinCardinality() <= 1) && association.getMaxCardinality() == 1;
+ }
}
@Getter
private static List<RelationType> relationTypes;
- //Modules section
+ // Modules section
/**
* Initializes the modules. Once set cannot be overridden.
*
.toCollection(TreeSet::new));
}
- //Entities section
+ // Entities section
/**
* Initializes the entity types. Once set cannot be overridden.
associationName) || relationType.getBSideAssociation().getName().equals(associationName)).toList();
}
+ public static boolean isValidAssociation(String associationName) {
+ if (associationName == null || associationName.isEmpty()) {
+ return false;
+ }
+ return relationTypes.stream().anyMatch(relationType -> relationType.getASideAssociation().getName().equals(
+ associationName) || relationType.getBSideAssociation().getName().equals(associationName));
+ }
+
public static String getReferenceColumnName(RelationType relationType) {
if (relationType.getRelationshipStorageLocation().equals(RelationshipDataLocation.A_SIDE)) {
return Objects.requireNonNull(relationType).getTableName() + "." + String.format(TiesConstants.QUOTED_STRING,
return Objects.requireNonNull(relationType).getTableName() + "." + relationType.getIdColumnName();
}
- public static EntityType getEntityTypeOnAssociationSide(RelationType relationType, String associationName) {
- boolean isAssociationASide = relationType.getASideAssociation().getName().equals(associationName);
- if (isAssociationASide) {
- return relationType.getASide();
+ public static RelationType getRelationTypeBetweenEntities(String entityA, String entityB) {
+ return relationTypes.stream().filter(relationType -> (relationType.getASide().getName().equals(
+ entityA) && relationType.getBSide().getName().equals(entityB)) || (relationType.getASide().getName().equals(
+ entityB) && relationType.getBSide().getName().equals(entityA))).findFirst().orElse(null);
+ }
+
+ public static EntityType getOtherEntityByEntityAndAssociation(String entityName, String associationName) {
+ RelationType relationType = getAllRelationNamesByAssociationName(associationName).stream().filter(
+ relation -> relation.getASide().getName().equals(entityName) || relation.getBSide().getName().equals(
+ entityName)).findFirst().orElse(null);
+ if (relationType == null) {
+ return null;
}
- return relationType.getBSide();
+ return relationType.getASide().getName().equals(entityName) ? relationType.getBSide() : relationType.getASide();
+ }
+
+ public static RelationType getRelationTypeByRelationNameAndAssociationName(String relation, String associationName) {
+ return relationTypes.stream().filter(relationType -> relationType.getName().equals(relation) && (relationType
+ .getASideAssociation().getName().equals(associationName) || relationType.getBSideAssociation().getName()
+ .equals(associationName))).findFirst().orElse(null);
}
}
ENTITY_NOT_FOUND_IN_DOMAIN,
ENTITY_NOT_FOUND_IN_MODULE,
RELATIONSHIP_NOT_FOUND_IN_DOMAIN,
- RELATIONSHIP_NOT_FOUND_IN_MODULE
+ RELATIONSHIP_NOT_FOUND_IN_MODULE,
+ RELATIONSHIP_NOT_FOUND_BETWEEN_ENTITIES,
}
import static org.oran.smo.teiv.schema.BidiDbNameMapper.getDbName;
import static org.oran.smo.teiv.schema.RelationshipDataLocation.B_SIDE;
import static org.oran.smo.teiv.schema.RelationshipDataLocation.RELATION;
+import static org.oran.smo.teiv.service.models.OperationResult.ENTITY_CATEGORY;
+import static org.oran.smo.teiv.service.models.OperationResult.RELATIONSHIP_CATEGORY;
import static org.oran.smo.teiv.utils.JooqTypeConverter.toJsonb;
import static org.oran.smo.teiv.utils.TiesConstants.FOREIGN_KEY_VIOLATION_ERROR_CODE;
import static org.oran.smo.teiv.utils.TiesConstants.ID_COLUMN_NAME;
int affectedRows = context.delete(table(entityType.getTableName())).where(field(ID_COLUMN_NAME).eq(entityId))
.execute();
if (affectedRows > 0) {
- result.add(OperationResult.createEntityOperationResult(entityId, entityType.getName()));
+ result.add(OperationResult.builder().id(entityId).type(entityType.getName()).category(ENTITY_CATEGORY).build());
}
return result;
}
List<OperationResult> relationshipList = context.select(field(String.format(QUOTED_STRING, relationType
.getIdColumnName()), String.class)).from(table(relationType.getTableName())).where(field(String.format(
QUOTED_STRING, manySideEntityIdColumn)).eq(manySideEntityId)).forUpdate().fetchInto(String.class)
- .stream().filter(Objects::nonNull).map(id -> OperationResult.createRelationshipOperationResult(id,
- relationType.getName())).collect(Collectors.toList());
+ .stream().filter(Objects::nonNull).map(id -> OperationResult.builder().id(id).type(relationType.getName())
+ .category(RELATIONSHIP_CATEGORY).build()).collect(Collectors.toList());
if (relationshipList.isEmpty()) {
return relationshipList;
} else {
field(String.format(QUOTED_STRING, relationType.getSourceIdsColumnName())), toJsonb(List.of()))
.where(field(String.format(QUOTED_STRING, relationType.getIdColumnName())).eq(relationshipId)).execute();
return affectedRows > 0 ?
- Optional.of(OperationResult.createRelationshipOperationResult(relationshipId, relationType.getName())) :
+ Optional.of(OperationResult.builder().id(relationshipId).type(relationType.getName()).category(
+ RELATIONSHIP_CATEGORY).build()) :
Optional.empty();
}
entityId))).returning(field(TiesConstants.ID_COLUMN_NAME)).fetch().getValues(field(
TiesConstants.ID_COLUMN_NAME), String.class);
- return deletedIds.stream().map(id -> OperationResult.createRelationshipOperationResult(id, relationType.getName()))
- .collect(Collectors.toList());
+ return deletedIds.stream().map(id -> OperationResult.builder().id(id).type(relationType.getName()).category(
+ RELATIONSHIP_CATEGORY).build()).collect(Collectors.toList());
}
public Optional<OperationResult> deleteManyToManyRelationByRelationId(DSLContext context, RelationType relationType,
int affectedRows = context.delete(table(relationType.getTableName())).where(field(ID_COLUMN_NAME).eq(
relationshipId)).execute();
return affectedRows > 0 ?
- Optional.of(OperationResult.createRelationshipOperationResult(relationshipId, relationType.getName())) :
+ Optional.of(OperationResult.builder().id(relationshipId).type(relationType.getName()).category(
+ RELATIONSHIP_CATEGORY).build()) :
Optional.empty();
}
dbMap.remove(entityType.getResponsibleAdapterIdColumnName());
dbMap.remove(entityType.getMetadataColumnName());
resultExclusion.forEach(dbMap::remove);
- results.add(OperationResult.createEntityOperationResult(entity.getId(), entity.getType(), dbMap, entity
- .getSourceIds(), isUpdatedInDb).setMetadata(metadata));
+ results.add(OperationResult.builder().id(entity.getId()).type(entity.getType()).category(ENTITY_CATEGORY)
+ .attributes(dbMap).sourceIds(entity.getSourceIds()).isUpdatedInDb(isUpdatedInDb).metadata(metadata)
+ .build());
}
};
if (fetch != null) {
boolean isUpdatedInDb = fetch.getValue("xmax", int.class) != 0;
- return Optional.of(OperationResult.createRelationshipOperationResult(relationship, isUpdatedInDb).setMetadata(
- RELIABILITY_INDICATOR_OK_MAP));
+ return Optional.of(OperationResult.builder().id(relationship.getId()).type(relationship.getType()).category(
+ RELATIONSHIP_CATEGORY).aSide(relationship.getASide()).bSide(relationship.getBSide()).sourceIds(
+ relationship.getSourceIds()).isUpdatedInDb(isUpdatedInDb).metadata(RELIABILITY_INDICATOR_OK_MAP)
+ .build());
}
return Optional.empty();
}
.returning(field("xmax", int.class)).fetchOne();
if (fetch != null) {
boolean isUpdatedInDb = fetch.getValue("xmax", int.class) != 0;
- results.add(OperationResult.createRelationshipOperationResult(relationship, isUpdatedInDb).setMetadata(
- RELIABILITY_INDICATOR_OK_MAP));
+ results.add(OperationResult.builder().id(relationship.getId()).type(relationship.getType()).category(
+ RELATIONSHIP_CATEGORY).aSide(relationship.getASide()).bSide(relationship.getBSide()).sourceIds(
+ relationship.getSourceIds()).isUpdatedInDb(isUpdatedInDb).metadata(RELIABILITY_INDICATOR_OK_MAP)
+ .build());
} else {
throw new IllegalManyToManyRelationshipUpdateException(relationship);
}
if (createMissingEntity(aSideTableName, aSideId, relationshipId, dslContext, relationType.getASide(), updateTime,
respAdapterByteArray) == 1) {
- results.add(OperationResult.createEntityOperationResult(aSideId, relationType.getASide().getName(), List.of(
- relationshipId)));
+ results.add(OperationResult.builder().id(aSideId).type(relationType.getASide().getName()).category(
+ ENTITY_CATEGORY).sourceIds(List.of(relationshipId)).build());
}
if (createMissingEntity(bSideTableName, bSideId, relationshipId, dslContext, relationType.getBSide(), updateTime,
respAdapterByteArray) == 1) {
- results.add(OperationResult.createEntityOperationResult(bSideId, relationType.getBSide().getName(), List.of(
- relationshipId)));
+ results.add(OperationResult.builder().id(bSideId).type(relationType.getBSide().getName()).category(
+ ENTITY_CATEGORY).sourceIds(List.of(relationshipId)).build());
}
}
private void addEntityToOperationResults(List<OperationResult> results, String entityId, Map<String, Object> metadata,
String entityType) {
- OperationResult result = OperationResult.createEntityOperationResult(entityId, entityType).setMetadata(metadata);
+ OperationResult result = OperationResult.builder().id(entityId).type(entityType).category(ENTITY_CATEGORY).metadata(
+ metadata).build();
if (!results.contains(result)) {
results.add(result);
}
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonIgnore;
-import org.oran.smo.teiv.service.cloudevent.data.Entity;
-import org.oran.smo.teiv.service.cloudevent.data.Relationship;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import lombok.Builder;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@Builder
public class OperationResult {
private String id;
private String type; // e.g.: NRCellDU, Site, CloudNativeApplication
private Map<String, Object> metadata;
private List<String> sourceIds;
private boolean isUpdatedInDb;
- private static final String ENTITY = "entity";
-
- public static OperationResult createEntityOperationResult(String id, String type, Map<String, Object> attributes,
- List<String> sourceIds, boolean isUpdatedInDb) {
- return new OperationResult(id, type, ENTITY, attributes, null, null, null, null, null, sourceIds, isUpdatedInDb);
- }
-
- public static OperationResult createEntityOperationResult(String id, String type, Map<String, Object> attributes,
- List<String> sourceIds) {
- return new OperationResult(id, type, ENTITY, attributes, null, null, null, null, null, sourceIds, false);
- }
-
- public static OperationResult createEntityOperationResult(String id, String type, Map<String, Object> attributes) {
- return createEntityOperationResult(id, type, attributes, null);
- }
-
- public static OperationResult createEntityOperationResult(String id, String type) {
- return OperationResult.createEntityOperationResult(id, type, null, null);
- }
-
- public static OperationResult createEntityOperationResult(String id, String type, List<String> sourceIds) {
- return OperationResult.createEntityOperationResult(id, type, null, sourceIds);
- }
-
- public static OperationResult createEntityOperationResult(Entity entity) {
- return OperationResult.createEntityOperationResult(entity.getId(), entity.getType(), entity.getAttributes(), entity
- .getSourceIds());
- }
-
- public static OperationResult createRelationshipOperationResult(String id, String type, String aSide, String bSide,
- List<String> sourceIds, boolean isUpdatedInDb) {
- return new OperationResult(id, type, "relationship", null, aSide, bSide, null, null, null, sourceIds,
- isUpdatedInDb);
- }
-
- public static OperationResult createRelationshipOperationResult(String id, String type, String aSide, String bSide) {
- return createRelationshipOperationResult(id, type, aSide, bSide, null, false);
- }
-
- public static OperationResult createRelationshipOperationResult(String id, String type) {
- return OperationResult.createRelationshipOperationResult(id, type, null, null, null, false);
- }
-
- public static OperationResult createRelationshipOperationResult(Relationship relationship, boolean isUpdatedInDb) {
- return OperationResult.createRelationshipOperationResult(relationship.getId(), relationship.getType(), relationship
- .getASide(), relationship.getBSide(), relationship.getSourceIds(), isUpdatedInDb);
- }
-
- public static OperationResult createClassifierOperationResult(String id, String type, String category,
- List<String> classifiers) {
- return new OperationResult(id, type, category, null, null, null, classifiers, null, null, null, true);
- }
-
- public static OperationResult createDecoratorOperationResult(String id, String type, String category,
- Map<String, Object> decorators) {
- return new OperationResult(id, type, category, null, null, null, null, decorators, null, null, true);
- }
+ public static final String ENTITY_CATEGORY = "entity";
+ public static final String RELATIONSHIP_CATEGORY = "relationship";
@JsonIgnore
public boolean isRelationship() {
- return getCategory().equals("relationship");
+ return getCategory().equals(RELATIONSHIP_CATEGORY);
}
@JsonIgnore
public boolean isEntity() {
- return getCategory().equals(ENTITY);
+ return getCategory().equals(ENTITY_CATEGORY);
}
public OperationResult setMetadata(Map<String, Object> metadata) {
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package org.oran.smo.teiv.utils;
-
-/**
- * A utility class for retrieving environment/system values.
- *
- * @see System#getProperty(String)
- * @see System#getenv(String)
- */
-public final class Environment {
-
- private Environment() {
-
- }
-
- /**
- * Returns the {@code propertyName} specified if it is set as a {@link System} property or as a
- * {@link System}
- * environment variable. The order of
- * the search is property first then environment variable.
- * <p>
- * If neither is set then null is returned.
- *
- * @param propertyName
- * the property to search for
- * @return the value of the searched property, otherwise {@code null}
- */
- public static String getEnvironmentValue(final String propertyName) {
- return System.getProperty(propertyName, System.getenv(propertyName));
- }
-
- /**
- * Returns the {@code propertyName} specified if it is set as a {@link System} property or as a
- * {@link System}
- * environment variable. The order of
- * the search is property first then environment variable.
- * <p>
- * If neither is set then the default value provided is returned.
- *
- * @param propertyName
- * the property name to search for
- * @param defaultValue
- * the default value if no property exists
- * @return The value of the searched name, otherwise the {@code defaultValue}
- */
- public static String getEnvironmentValue(final String propertyName, final String defaultValue) {
- final String envVariable = System.getenv(propertyName);
- if (envVariable != null) {
- return envVariable;
- }
- return System.getProperty(propertyName, defaultValue);
- }
-}
groups:
static:
provided-members-ids:
- max-limit: 25000
+ max-limit: 10000
insert-max-limit: 2000
yang-data-validation:
- name: Decorators
description: "Provides the capability to update or remove user-defined values on entities and relationships."
- name: Groups
- description: "Provides the capability to group topology entities and/or relationships of any type. Groups can be created in static or dynamic way. *Static groups*: Group members are defined statically upon group creation. It can include a maximum of 25,000 members. *Dynamic groups*: Group members are dynamically selected based on the defined resource query."
+ description: "Provides the capability to group topology entities and/or relationships of any type. Groups can be created in static or dynamic way. *Static groups*: Group members are defined statically upon group creation. It can include a maximum of 10,000 members. *Dynamic groups*: Group members are dynamically selected based on the defined resource query."
servers:
- url: https://{host}/topology-inventory/v1alpha11
"POINT(39.4019881 67.9419888").dataType(DataType.GEOGRAPHIC).build();
// spotless:off
- assertEquals(condition("ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"geoColumn\" = st_geomfromtext('point(39.4019881 67.9419888)')")
+ assertEquals(condition(
+ "ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"geoColumn\" = st_geomfromtext('point(39.4019881 67.9419888)')")
.toString(), new ScopeLogicalBlock(valid1).getCondition().toString());
- assertEquals(condition("ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"geoColumn\" = st_geomfromtext('POINT(39.4019881 67.9419888)')")
+ assertEquals(condition(
+ "ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"geoColumn\" = st_geomfromtext('POINT(39.4019881 67.9419888)')")
.toString(), new ScopeLogicalBlock(valid2).getCondition().toString());
- assertEquals(condition("ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"geoColumn\" = st_geomfromtext('POINT Z (39.4019881 67.9419888 123.9878)')")
+ assertEquals(condition(
+ "ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"geoColumn\" = st_geomfromtext('POINT Z (39.4019881 67.9419888 123.9878)')")
.toString(), new ScopeLogicalBlock(valid3).getCondition().toString());
assertThrows(TiesPathException.class, new ScopeLogicalBlock(invalidContains)::getCondition);
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"o-ran-smo-teiv-ran_ORUFunction\".\"REL_FK_managed-by-managedElement\" = 'me1'\n"
- +
- " and ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-oam_ManagedElement\".\"id\" = 'me1'\n" + //
+ " and ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n" + //
+ ""
+ )
.toString(),
getTestAndCondition(List.of(scopeObject1, scopeObject2)).toString());
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n"
- +
- " and ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" = 'odu1'\n"
- +
- " and ties_data.\"o-ran-smo-teiv-ran_OCUCPFunction\".\"REL_FK_managed-by-managedElement\" is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" = 'odu1'\n" + //
+ " and ties_data.\"o-ran-smo-teiv-ran_OCUCPFunction\".\"REL_FK_managed-by-managedElement\" is not null\n" + //
+ ""
+ )
.toString(),
getTestAndCondition(List.of(scopeObject3, scopeObject4)).toString());
// spotless:on
Condition actualCondition = scopeObject1.getCondition();
// spotless:off
assertEquals(
- ("ties_data.\"o-ran-smo-teiv-ran_ORUFunction\".\"REL_FK_managed-by-managedElement\"like(('%'||replace("
- + "\n" +
- "replace(" + "\n" +
- "replace('me1','!','!!')," + "\n" +
- "'%'," + "\n" +
- "'!%'" + "\n" +
- ")," + "\n" +
- "'_'," + "\n" +
- "'!_'" + "\n" +
+ ("ties_data.\"o-ran-smo-teiv-oam_ManagedElement\".\"id\"like(('%'||replace(\n" + //
+ "replace(\n" + //
+ "replace('me1','!','!!'),\n" + //
+ "'%',\n" + //
+ "'!%'\n" + //
+ "),\n" + //
+ "'_',\n" + //
+ "'!_'\n" + //
"))||'%')escape'!'").replace(" ", ""),
actualCondition.toString().replace(" ", ""));
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" = 'site1'\n"
- +
- " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n")
- .toString(),
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-equipment_Site\".\"id\" = 'site1'\n" + //
+ " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n" + //
+ "").toString(),
getTestOrCondition(List.of(scopeObject1, scopeObject2)).toString());
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " (\n" +
- " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n"
- +
- " and ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'am1'\n"
- +
- " )\n" +
- " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'am1'\n" + //
+ " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n" + //
+ ""
+ )
.toString(),
getTestOrCondition(List.of(scopeObject3, scopeObject4)).toString());
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- "ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n"
- +
- "and ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" like ("
- +
- "('%' || replace(" + "\n" +
- "replace(" + "\n" +
- "replace('am1', '!', '!!')," + "\n" +
- "'%'," + "\n" +
- "'!%'" + "\n" +
- ")," + "\n" +
- "'_'," + "\n" +
- "'!_'" + "\n" +
- ")) || '%') escape '!'" + "\n")
- .toString().replace(" ", ""), scopeObject1.getCondition().toString().replace(" ", ""));
+ "ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\"like(('%'||replace(\n" + //
+ "replace(\n" + //
+ "replace('am1','!','!!'),\n" + //
+ "'%',\n" + //
+ "'!%'\n" + //
+ "),\n" + //
+ "'_',\n" + //
+ "'!_'\n" + //
+ "))||'%')escape'!'" ).toString().replace(" ", ""),
+ String.format("(%s)",scopeObject1.getCondition().toString()).replace(" ", ""));
// spotless:on
ScopeLogicalBlock scopeObject2 = new ScopeLogicalBlock(ScopeObject.builder(ANTENNA_MODULE).topologyObjectType(
.build());
// spotless:off
- assertEquals(("ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\"" +
- ".\"bSide_AntennaCapability\"like(('%'||replace(" + "\n" +
- "replace(" + "\n" +
- "replace('ac1','!','!!')," + "\n" +
- "'%'," + "\n" +
- "'!%'" + "\n" +
- ")," + "\n" +
- "'_'," + "\n" +
- "'!_'" + "\n" +
+ assertEquals(("ties_data.\"o-ran-smo-teiv-ran_AntennaCapability\".\"id\"like(('%'||replace(\n" + //
+ "replace(\n" + //
+ "replace('ac1','!','!!'),\n" + //
+ "'%',\n" + //
+ "'!%'\n" + //
+ "),\n" + //
+ "'_',\n" + //
+ "'!_'\n" + //
"))||'%')escape'!'")
.replace(" ", ""), scopeObject2.getCondition().toString().replace(" ", ""));
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".\"bSide_AntennaCapability\" = 'ac1'\n"
- +
- " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-ran_AntennaCapability\".\"id\" = 'ac1'\n"
+ + //
+ " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n"
+ )
.toString(), getTestAndCondition(List.of(scopeObject1, scopeObject2)).toString());
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".\"aSide_AntennaModule\" = 'am1'\n"
- +
- " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'am1'\n"
+ + //
+ " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n"
+ )
.toString(), getTestAndCondition(List.of(scopeObject3, scopeObject4)).toString());
// spotless:on
}
"AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A")
.build());
// spotless:off
- assertEquals(("ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\"" +
- ".\"aSide_AntennaModule\"like(('%'||replace(" + "\n" +
- "replace(" + "\n" +
- "replace('AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A','!','!!'),"
- + "\n" +
- "'%'," + "\n" +
- "'!%'" + "\n" +
- ")," + "\n" +
- "'_'," + "\n" +
- "'!_'" + "\n" +
+ assertEquals(("ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\"like(('%'||replace(\n" + //
+ "replace(\n" + //
+ "replace('AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A','!','!!'),\n"
+ + //
+ "'%',\n" + //
+ "'!%'\n" + //
+ "),\n" + //
+ "'_',\n" + //
+ "'!_'\n" + //
"))||'%')escape'!'")
.replace(" ", ""), associationScope2.getCondition().toString().replace(" ", ""));
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"o-ran-smo-teiv-ran_ORUFunction\".\"REL_FK_managed-by-managedElement\" = 'me1'\n"
- +
- " and ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-oam_ManagedElement\".\"id\" = 'me1'\n" + //
+ " and ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n" + //
+ ""
+ )
.toString(), getTestAndCondition(List.of(scopeObject1, scopeObject2)).toString());
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"o-ran-smo-teiv-ran_ORUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n"
- +
- " and ties_data.\"o-ran-smo-teiv-ran_ORUFunction\".\"id\" = 'oruf1'\n"
- +
- " and ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-ran_ORUFunction\".\"id\" = 'oruf1'\n" + //
+ " and ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"REL_FK_managed-by-managedElement\" is not null\n" + //
+ "")
.toString(), getTestAndCondition(List.of(scopeObject3, scopeObject4)).toString());
// spotless:on
}
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" = 'site1'\n"
- +
- " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-equipment_Site\".\"id\" = 'site1'\n" + //
+ " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n" + //
+ "")
.toString(), getTestOrCondition(List.of(scopeObject1, scopeObject2)).toString());
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " (\n" +
- " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n"
- +
- " and ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'am1'\n"
- +
- " )\n" +
- " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'am1'\n" + //
+ " or ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"REL_FK_installed-at-site\" is not null\n" + //
+ "")
.toString(), getTestOrCondition(List.of(scopeObject3, scopeObject4)).toString());
// spotless:on
}
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".\"bSide_AntennaCapability\" = 'ac1'\n"
- +
- " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-ran_AntennaCapability\".\"id\" = 'ac1'\n"
+ + //
+ " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n"
+ )
.toString(), getTestAndCondition(List.of(scopeObject1, scopeObject2)).toString());
// spotless:on
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".\"aSide_AntennaModule\" = 'am1'\n"
- +
- " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'am1'\n"
+ + //
+ " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n"
+ )
.toString(), getTestAndCondition(List.of(scopeObject3, scopeObject4)).toString());
// spotless:on
}
// spotless:off
assertEquals(condition(
- "\n" +
- " ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".\"bSide_AntennaCapability\" = 'ac1'\n"
- +
- " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n")
+ "\n" + //
+ " ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'ac1'\n"
+ + //
+ " and ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\".id is not null\n"
+ )
.toString(), getTestAndCondition(List.of(scopeObject1, scopeObject2)).toString());
// spotless:on
}
void testConditions_entityAssociation_equals_attributes_nested_leaf() {
ScopeLogicalBlock associationScope3 = new ScopeLogicalBlock(ScopeObject.builder(SECTOR).topologyObjectType(
TopologyObjectType.ENTITY).container(ContainerType.ASSOCIATION).innerContainer(List.of("grouped-nrCellDu",
- "plmnId")).leaf("mcc").queryFunction(QueryFunction.EQ).parameter("599").dataType(DataType.BIGINT)
+ "plmnId")).leaf("mcc").queryFunction(QueryFunction.EQ).parameter("599").dataType(DataType.INTEGER)
.build());
// spotless:off
- assertEquals(condition("\n" +
- " ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"REL_FK_grouped-by-sector\" is not null\n"
- +
- " and ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"plmnId\" -> 'mcc' = 599\n")
+ assertEquals(condition("\n" + //
+ " ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"REL_FK_grouped-by-sector\" is not null\n" + //
+ " and ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"plmnId\" -> 'mcc' = '599'\n" + //
+ "")
.toString(),
associationScope3.getCondition().toString());
// spotless:on
ScopeLogicalBlock associationScope4 = new ScopeLogicalBlock(ScopeObject.builder(SECTOR).topologyObjectType(
TopologyObjectType.ENTITY).container(ContainerType.ASSOCIATION).innerContainer(List.of("grouped-nrCellDu",
"plmnId", "mcc")).leaf("mcca").queryFunction(QueryFunction.EQ).parameter("599").dataType(
- DataType.BIGINT).build());
+ DataType.INTEGER).build());
// spotless:off
assertEquals(condition("\n" +
" ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"REL_FK_grouped-by-sector\" is not null\n"
+
- " and ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"plmnId\" -> 'mcc' -> 'mcca' = 599\n")
+ " and ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"plmnId\" -> 'mcc' -> 'mcca' = '599'\n")
.toString(),
associationScope4.getCondition().toString());
// spotless:on
ScopeLogicalBlock scopeLogicalBlock8 = new ScopeLogicalBlock(scopeObject8);
resultTables.add(table("ties_data.\"o-ran-smo-teiv-ran_NRCellDU\""));
+ resultTables.add(table("ties_data.\"o-ran-smo-teiv-ran_ODUFunction\""));
Assertions.assertEquals(resultTables, scopeLogicalBlock.getTables());
resultTables.clear();
Assertions.assertEquals(resultTables, scopeLogicalBlock4.getTables());
resultTables.clear();
+ resultTables.add(table("ties_data.\"o-ran-smo-teiv-oam_ManagedElement\""));
resultTables.add(table("ties_data.\"o-ran-smo-teiv-ran_ODUFunction\""));
Assertions.assertEquals(resultTables, scopeLogicalBlock5.getTables());
resultTables.clear();
Assertions.assertEquals(resultTables, scopeLogicalBlock6.getTables());
resultTables.clear();
+ resultTables.add(table("ties_data.\"o-ran-smo-teiv-ran_Sector\""));
resultTables.add(table("ties_data.\"o-ran-smo-teiv-ran_NRCellDU\""));
Assertions.assertEquals(resultTables, scopeLogicalBlock8.getTables());
resultTables.clear();
// Reason: invalid association added in innerContainer list for RELATION type scopeObject
Assertions.assertThrows(TiesPathException.class, () -> basePathRefinement.validateContainers(filterCriteria));
+ final FilterCriteria filterCriteria2 = FilterCriteria.builder("EQUIPMENT").filterCriteriaList(List.of(
+ InnerFilterCriteria.builder().targets(targetResolver.resolve(null, null)).scope(scopeResolver.resolve(null,
+ "/installed-at-site/attributes[@geo-location='POINT(60.4019881 18.9419888)']")).build()))
+ .resolvingTopologyObjectType(FilterCriteria.ResolvingTopologyObjectType.ENTITY).build();
+
+ basePathRefinement.refine(filterCriteria2);
+
+ ScopeLogicalBlock expected2 = new ScopeLogicalBlock(ScopeObject.builder("AntennaModule").container(
+ ContainerType.ASSOCIATION).topologyObjectType(TopologyObjectType.ENTITY).queryFunction(QueryFunction.EQ)
+ .parameter("POINT(60.4019881 18.9419888)").resolverDataType(ResolverDataType.STRING).dataType(
+ DataType.GEOGRAPHIC).innerContainer(List.of("installed-at-site")).leaf("geo-location").build());
+ Assertions.assertEquals(expected2, filterCriteria2.getFilterCriteriaList().get(0).getScope());
}
@Test
.parameter("1").resolverDataType(ResolverDataType.INTEGER).build());
filterCriteria.setFilterCriteriaList(List.of(InnerFilterCriteria.builder().scope(scopeLogicalBlock2).build()));
- Assertions.assertThrows(TiesPathException.class, () -> basePathRefinement.validateScopeParametersDataType(
- filterCriteria));
-
- // error reason: scopeFilter: /provided-nrCellDu[@cellLocalId=1] -> only id can be queried for associations
- ScopeLogicalBlock scopeLogicalBlock3 = new ScopeLogicalBlock(ScopeObject.builder(ODU_FUNCTION).innerContainer(
- new ArrayList<>(Arrays.asList("provided-nrCellDu"))).container(ContainerType.ASSOCIATION)
- .topologyObjectType(TopologyObjectType.ENTITY).queryFunction(QueryFunction.EQ).leaf("cellLocalId")
- .parameter("1").resolverDataType(ResolverDataType.INTEGER).build());
- filterCriteria.setFilterCriteriaList(List.of(InnerFilterCriteria.builder().scope(scopeLogicalBlock3).build()));
-
Assertions.assertThrows(TiesPathException.class, () -> basePathRefinement.validateScopeParametersDataType(
filterCriteria));
*/
package org.oran.smo.teiv.exposure.tiespath.refiner;
+import java.util.ArrayList;
import java.util.List;
-import org.junit.jupiter.api.Assertions;
+import org.jooq.SelectOrderByStep;
+import org.jooq.Record;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.oran.smo.teiv.schema.MockSchemaLoader;
import org.oran.smo.teiv.schema.SchemaLoaderException;
+import static org.junit.Assert.assertEquals;
+
class PathToJooqRefinementTest {
@BeforeAll
TopologyObjectType.ENTITY).container(ContainerType.ID).dataType(DataType.PRIMITIVE)
.parameter("123").queryFunction(QueryFunction.EQ).build())).build())).build();
- //spotless:off
- Assertions.assertEquals("(\n" +
- " select\n" +
- " null::bigint \"o-ran-smo-teiv-ran:ODUFunction.attr.gNBDUId\",\n" +
- " null \"o-ran-smo-teiv-ran:ODUFunction.id\",\n" +
- " (\n" +
- " select count(*)\n" +
- " from (\n" +
- " select ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" \"o-ran-smo-teiv-ran:ODUFunction.id\"\n" +
- " from ties_data.\"o-ran-smo-teiv-ran_ODUFunction\"\n" +
- " where ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" = '123'\n" +
- " ) \"alias_101460301\"\n" +
- " ) \"count\"\n" +
- ")\n" +
- "union all (\n" +
- " select\n" +
- " \"o-ran-smo-teiv-ran:ODUFunction.attr.gNBDUId\",\n" +
- " \"o-ran-smo-teiv-ran:ODUFunction.id\",\n" +
- " null \"count\"\n" +
- " from (\n" +
- " select\n" +
- " ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"gNBDUId\" \"o-ran-smo-teiv-ran:ODUFunction.attr.gNBDUId\",\n" +
- " ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" \"o-ran-smo-teiv-ran:ODUFunction.id\"\n" +
- " from ties_data.\"o-ran-smo-teiv-ran_ODUFunction\"\n" +
- " where ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" = '123'\n" +
- " order by \"o-ran-smo-teiv-ran:ODUFunction.id\" asc\n" +
- " ) \"alias_47405590\"\n" +
- " limit 100\n" +
- " offset 0\n" +
- ")", PathToJooqRefinement.toJooq(filterCriteria,0,100).toString());
- //spotless:on
+ // spotless:off
+ assertEquals("(\n" +
+ " select\n" +
+ " null::bigint \"o-ran-smo-teiv-ran:ODUFunction.attr.gNBDUId\",\n" +
+ " null \"o-ran-smo-teiv-ran:ODUFunction.id\",\n" +
+ " (\n" +
+ " select count(*)\n" +
+ " from (\n" +
+ " select ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" \"o-ran-smo-teiv-ran:ODUFunction.id\"\n"
+ +
+ " from ties_data.\"o-ran-smo-teiv-ran_ODUFunction\"\n" +
+ " where ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" = '123'\n" +
+ " ) \"alias_101460301\"\n" +
+ " ) \"count\"\n" +
+ ")\n" +
+ "union all (\n" +
+ " select\n" +
+ " \"o-ran-smo-teiv-ran:ODUFunction.attr.gNBDUId\",\n" +
+ " \"o-ran-smo-teiv-ran:ODUFunction.id\",\n" +
+ " null \"count\"\n" +
+ " from (\n" +
+ " select\n" +
+ " ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"gNBDUId\" \"o-ran-smo-teiv-ran:ODUFunction.attr.gNBDUId\",\n" +
+ " ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" \"o-ran-smo-teiv-ran:ODUFunction.id\"\n"
+ +
+ " from ties_data.\"o-ran-smo-teiv-ran_ODUFunction\"\n" +
+ " where ties_data.\"o-ran-smo-teiv-ran_ODUFunction\".\"id\" = '123'\n" +
+ " order by \"o-ran-smo-teiv-ran:ODUFunction.id\" asc\n" +
+ " ) \"alias_47405590\"\n" +
+ " limit 100\n" +
+ " offset 0\n" +
+ ")", PathToJooqRefinement.toJooq(filterCriteria, 0, 100).toString());
+ // spotless:on
+ }
+
+ @Test
+ void associationToJooqFirstHopeManyToOneSingleTest() {
+ List<TargetObject> targetObjects = getTargetObjects(List.of("AntennaModule"));
+ ScopeLogicalBlock scopeLogicalBlock = new ScopeLogicalBlock(ScopeObject.builder("AntennaModule").topologyObjectType(
+ TopologyObjectType.ENTITY).container(ContainerType.ASSOCIATION).innerContainer(List.of("installed-at-site"))
+ .leaf("geo-location").queryFunction(QueryFunction.EQ).parameter("point(39.4019881 67.9419888)").dataType(
+ DataType.GEOGRAPHIC).build());
+
+ FilterCriteria filterCriteria = FilterCriteria.builder("RAN").filterCriteriaList(List.of(InnerFilterCriteria
+ .builder().targets(targetObjects).scope(scopeLogicalBlock).build())).build();
+
+ SelectOrderByStep<Record> query = PathToJooqRefinement.toJooq(filterCriteria, 0, 100);
+
+ // spotless:off
+ assertEquals("(\n" + //
+ " select\n" + //
+ " null \"o-ran-smo-teiv-equipment:AntennaModule.id\",\n" + //
+ " (\n" + //
+ " select count(*)\n" + //
+ " from (\n" + //
+ " select ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" \"o-ran-smo-teiv-equipment:AntennaModule.id\"\n"
+ + //
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" + //
+ " where \"REL_FK_installed-at-site\" in (\n" + //
+ " select id\n" + //
+ " from ties_data.\"o-ran-smo-teiv-equipment_Site\"\n" + //
+ " where (ties_data.\"o-ran-smo-teiv-equipment_Site\".\"geo-location\" = st_geomfromtext('point(39.4019881 67.9419888)'))\n"
+ + //
+ " )\n" + //
+ " ) \"alias_3993031\"\n" + //
+ " ) \"count\"\n" + //
+ ")\n" + //
+ "union all (\n" + //
+ " select\n" + //
+ " \"o-ran-smo-teiv-equipment:AntennaModule.id\",\n" + //
+ " null \"count\"\n" + //
+ " from (\n" + //
+ " select ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" \"o-ran-smo-teiv-equipment:AntennaModule.id\"\n"
+ + //
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" + //
+ " where \"REL_FK_installed-at-site\" in (\n" + //
+ " select id\n" + //
+ " from ties_data.\"o-ran-smo-teiv-equipment_Site\"\n" + //
+ " where (ties_data.\"o-ran-smo-teiv-equipment_Site\".\"geo-location\" = st_geomfromtext('point(39.4019881 67.9419888)'))\n"
+ + //
+ " )\n" + //
+ " order by \"o-ran-smo-teiv-equipment:AntennaModule.id\" asc\n" + //
+ " ) \"alias_77076166\"\n" + //
+ " limit 100\n" + //
+ " offset 0\n" + //
+ ")", query.toString());
+ // spotless:on
+ }
+
+ @Test
+ void associationToJooqFirstHopeOneToManySingleTest() {
+ List<TargetObject> targetObjects = getTargetObjects(List.of("Sector"));
+ ScopeLogicalBlock scopeLogicalBlock = new ScopeLogicalBlock(ScopeObject.builder("Sector").topologyObjectType(
+ TopologyObjectType.ENTITY).container(ContainerType.ASSOCIATION).innerContainer(List.of("grouped-nrCellDu"))
+ .leaf("nCI").queryFunction(QueryFunction.EQ).parameter("400").dataType(DataType.BIGINT).build());
+
+ FilterCriteria filterCriteria = FilterCriteria.builder("RAN").filterCriteriaList(List.of(InnerFilterCriteria
+ .builder().targets(targetObjects).scope(scopeLogicalBlock).build())).build();
+
+ SelectOrderByStep<Record> query = PathToJooqRefinement.toJooq(filterCriteria, 0, 100);
+
+ // spotless:off
+ assertEquals("(\n" + //
+ " select\n" + //
+ " null \"o-ran-smo-teiv-ran:Sector.id\",\n" + //
+ " (\n" + //
+ " select count(*)\n" + //
+ " from (\n" + //
+ " select ties_data.\"o-ran-smo-teiv-ran_Sector\".\"id\" \"o-ran-smo-teiv-ran:Sector.id\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-ran_Sector\"\n" + //
+ " where id in (\n" + //
+ " select \"REL_FK_grouped-by-sector\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-ran_NRCellDU\"\n" + //
+ " where (\n" + //
+ " ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"REL_FK_grouped-by-sector\" is not null\n" + //
+ " and ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"nCI\" = 400\n" + //
+ " )\n" + //
+ " )\n" + //
+ " ) \"alias_78318003\"\n" + //
+ " ) \"count\"\n" + //
+ ")\n" + //
+ "union all (\n" + //
+ " select\n" + //
+ " \"o-ran-smo-teiv-ran:Sector.id\",\n" + //
+ " null \"count\"\n" + //
+ " from (\n" + //
+ " select ties_data.\"o-ran-smo-teiv-ran_Sector\".\"id\" \"o-ran-smo-teiv-ran:Sector.id\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-ran_Sector\"\n" + //
+ " where id in (\n" + //
+ " select \"REL_FK_grouped-by-sector\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-ran_NRCellDU\"\n" + //
+ " where (\n" + //
+ " ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"REL_FK_grouped-by-sector\" is not null\n" + //
+ " and ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"nCI\" = 400\n" + //
+ " )\n" + //
+ " )\n" + //
+ " order by \"o-ran-smo-teiv-ran:Sector.id\" asc\n" + //
+ " ) \"alias_21420574\"\n" + //
+ " limit 100\n" + //
+ " offset 0\n" + //
+ ")", query.toString());
+ // spotless:on
+
+ }
+
+ @Test
+ void associationToJooqFirstHopeManyToManySingleTest() {
+ List<TargetObject> targetObjects = getTargetObjects(List.of("NRCellDU"));
+
+ ScopeLogicalBlock scope = new ScopeLogicalBlock(ScopeObject.builder("NRCellDU").topologyObjectType(
+ TopologyObjectType.ENTITY).container(ContainerType.ASSOCIATION).innerContainer(List.of(
+ "serving-antennaModule")).leaf("id").queryFunction(QueryFunction.EQ).parameter("AntennaModule_1")
+ .dataType(DataType.PRIMITIVE).build());
+
+ FilterCriteria filterCriteria = FilterCriteria.builder("RAN").filterCriteriaList(List.of(InnerFilterCriteria
+ .builder().targets(targetObjects).scope(scope).build())).build();
+
+ SelectOrderByStep<Record> query = PathToJooqRefinement.toJooq(filterCriteria, 0, 100);
+
+ assertEquals("(\n" + //
+ " select\n" + //
+ " null \"o-ran-smo-teiv-ran:NRCellDU.id\",\n" + //
+ " (\n" + //
+ " select count(*)\n" + //
+ " from (\n" + //
+ " with\n" + //
+ " \"NRCellDU\"(\"id\") as (\n" + //
+ " select \"bSide_NRCellDU\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU\"\n" + //
+ " where \"aSide_AntennaModule\" in (\n" + //
+ " select id\n" + //
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" + //
+ " where ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'AntennaModule_1'\n" + //
+ " )\n" + //
+ " )\n" + //
+ " select ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"id\" \"o-ran-smo-teiv-ran:NRCellDU.id\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-ran_NRCellDU\"\n" + //
+ " where id in (\n" + //
+ " select id\n" + //
+ " from \"NRCellDU\"\n" + //
+ " )\n" + //
+ " ) \"alias_53607736\"\n" + //
+ " ) \"count\"\n" + //
+ ")\n" + //
+ "union all (\n" + //
+ " select\n" + //
+ " \"o-ran-smo-teiv-ran:NRCellDU.id\",\n" + //
+ " null \"count\"\n" + //
+ " from (\n" + //
+ " with\n" + //
+ " \"NRCellDU\"(\"id\") as (\n" + //
+ " select \"bSide_NRCellDU\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU\"\n" + //
+ " where \"aSide_AntennaModule\" in (\n" + //
+ " select id\n" + //
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" + //
+ " where ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'AntennaModule_1'\n" + //
+ " )\n" + //
+ " )\n" + //
+ " select ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"id\" \"o-ran-smo-teiv-ran:NRCellDU.id\"\n" + //
+ " from ties_data.\"o-ran-smo-teiv-ran_NRCellDU\"\n" + //
+ " where id in (\n" + //
+ " select id\n" + //
+ " from \"NRCellDU\"\n" + //
+ " )\n" + //
+ " order by \"o-ran-smo-teiv-ran:NRCellDU.id\" asc\n" + //
+ " ) \"alias_8945972\"\n" + //
+ " limit 100\n" + //
+ " offset 0\n" + //
+ ")", query.toString());
+ }
+
+ @Test
+ void associationToJooqFirstHopeManyToManyMultipleTest() {
+ List<TargetObject> targetObjects = getTargetObjects(List.of("AntennaCapability"));
+ List<TargetObject> targetObjects2 = getTargetObjects(List.of("NRCellDU"));
+
+ ScopeLogicalBlock scope = new ScopeLogicalBlock(ScopeObject.builder("AntennaCapability").topologyObjectType(
+ TopologyObjectType.ENTITY).container(ContainerType.ASSOCIATION).innerContainer(List.of(
+ "serving-antennaModule")).leaf("id").queryFunction(QueryFunction.EQ).parameter("AntennaModule_1")
+ .dataType(DataType.PRIMITIVE).build());
+ ScopeLogicalBlock scope2 = new ScopeLogicalBlock(ScopeObject.builder("NRCellDU").topologyObjectType(
+ TopologyObjectType.ENTITY).container(ContainerType.ASSOCIATION).innerContainer(List.of(
+ "serving-antennaModule")).leaf("id").queryFunction(QueryFunction.EQ).parameter("AntennaModule_3")
+ .dataType(DataType.PRIMITIVE).build());
+
+ FilterCriteria filterCriteria = FilterCriteria.builder("RAN").filterCriteriaList(List.of(InnerFilterCriteria
+ .builder().targets(targetObjects).scope(scope).build(), InnerFilterCriteria.builder().targets(
+ targetObjects2).scope(scope2).build())).build();
+
+ SelectOrderByStep<Record> query = PathToJooqRefinement.toJooq(filterCriteria, 0, 100);
+
+ // spotless:off
+ assertEquals("(\n" +
+ " select\n" +
+ " null \"o-ran-smo-teiv-ran:AntennaCapability.id\",\n" +
+ " null \"o-ran-smo-teiv-ran:NRCellDU.id\",\n" +
+ " (\n" +
+ " select count(*)\n" +
+ " from (\n" +
+ " with\n" +
+ " \"AntennaCapability\"(\"id\") as (\n" +
+ " select \"bSide_AntennaCapability\"\n" +
+ " from ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\"\n" +
+ " where \"aSide_AntennaModule\" in (\n" +
+ " select id\n" +
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" +
+ " where ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'AntennaModule_1'\n"
+ +
+ " )\n" +
+ " )\n" +
+ " (\n" +
+ " select\n" +
+ " ties_data.\"o-ran-smo-teiv-ran_AntennaCapability\".\"id\" \"o-ran-smo-teiv-ran:AntennaCapability.id\",\n"
+ +
+ " null \"o-ran-smo-teiv-ran:NRCellDU.id\"\n" +
+ " from ties_data.\"o-ran-smo-teiv-ran_AntennaCapability\"\n" +
+ " where id in (\n" +
+ " select id\n" +
+ " from \"AntennaCapability\"\n" +
+ " )\n" +
+ " )\n" +
+ " union all (\n" +
+ " with\n" +
+ " \"NRCellDU\"(\"id\") as (\n" +
+ " select \"bSide_NRCellDU\"\n" +
+ " from ties_data.\"o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU\"\n"
+ +
+ " where \"aSide_AntennaModule\" in (\n" +
+ " select id\n" +
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" +
+ " where ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'AntennaModule_3'\n"
+ +
+ " )\n" +
+ " )\n" +
+ " select\n" +
+ " null \"o-ran-smo-teiv-ran:AntennaCapability.id\",\n" +
+ " ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"id\" \"o-ran-smo-teiv-ran:NRCellDU.id\"\n"
+ +
+ " from ties_data.\"o-ran-smo-teiv-ran_NRCellDU\"\n" +
+ " where id in (\n" +
+ " select id\n" +
+ " from \"NRCellDU\"\n" +
+ " )\n" +
+ " )\n" +
+ " ) \"alias_81628762\"\n" +
+ " ) \"count\"\n" +
+ ")\n" +
+ "union all (\n" +
+ " select\n" +
+ " \"o-ran-smo-teiv-ran:AntennaCapability.id\",\n" +
+ " \"o-ran-smo-teiv-ran:NRCellDU.id\",\n" +
+ " null \"count\"\n" +
+ " from (\n" +
+ " with\n" +
+ " \"AntennaCapability\"(\"id\") as (\n" +
+ " select \"bSide_AntennaCapability\"\n" +
+ " from ties_data.\"CFC235E0404703D1E4454647DF8AAE2C193DB402\"\n" +
+ " where \"aSide_AntennaModule\" in (\n" +
+ " select id\n" +
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" +
+ " where ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'AntennaModule_1'\n"
+ +
+ " )\n" +
+ " )\n" +
+ " (\n" +
+ " select\n" +
+ " ties_data.\"o-ran-smo-teiv-ran_AntennaCapability\".\"id\" \"o-ran-smo-teiv-ran:AntennaCapability.id\",\n"
+ +
+ " null \"o-ran-smo-teiv-ran:NRCellDU.id\"\n" +
+ " from ties_data.\"o-ran-smo-teiv-ran_AntennaCapability\"\n" +
+ " where id in (\n" +
+ " select id\n" +
+ " from \"AntennaCapability\"\n" +
+ " )\n" +
+ " order by \"o-ran-smo-teiv-ran:AntennaCapability.id\" asc\n" +
+ " )\n" +
+ " union all (\n" +
+ " with\n" +
+ " \"NRCellDU\"(\"id\") as (\n" +
+ " select \"bSide_NRCellDU\"\n" +
+ " from ties_data.\"o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU\"\n"
+ +
+ " where \"aSide_AntennaModule\" in (\n" +
+ " select id\n" +
+ " from ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\"\n" +
+ " where ties_data.\"o-ran-smo-teiv-equipment_AntennaModule\".\"id\" = 'AntennaModule_3'\n"
+ +
+ " )\n" +
+ " )\n" +
+ " select\n" +
+ " null \"o-ran-smo-teiv-ran:AntennaCapability.id\",\n" +
+ " ties_data.\"o-ran-smo-teiv-ran_NRCellDU\".\"id\" \"o-ran-smo-teiv-ran:NRCellDU.id\"\n"
+ +
+ " from ties_data.\"o-ran-smo-teiv-ran_NRCellDU\"\n" +
+ " where id in (\n" +
+ " select id\n" +
+ " from \"NRCellDU\"\n" +
+ " )\n" +
+ " order by \"o-ran-smo-teiv-ran:NRCellDU.id\" asc\n" +
+ " )\n" +
+ " ) \"alias_37365486\"\n" +
+ " limit 100\n" +
+ " offset 0\n" +
+ ")", query.toString());
+ // spotless:on
+ }
+
+ private List<TargetObject> getTargetObjects(List<String> targetObjects) {
+ List<TargetObject> targetObjectList = new ArrayList<>();
+ for (String targetObject : targetObjects) {
+ targetObjectList.add(TargetObject.builder(targetObject).topologyObjectType(TopologyObjectType.ENTITY)
+ .isAllParamQueried(true).isGenerated(false).container(ContainerType.ID).params(List.of()).build());
+ }
+ return targetObjectList;
}
}
import java.util.List;
import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.AndLogicalBlock;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.QueryFunction;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.ScopeLogicalBlock;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.ScopeObject;
+import org.oran.smo.teiv.exposure.tiespath.innerlanguage.TopologyObjectType;
+import org.oran.smo.teiv.schema.MockSchemaLoader;
+import org.oran.smo.teiv.schema.SchemaLoader;
+import org.oran.smo.teiv.schema.SchemaLoaderException;
import org.oran.smo.teiv.utils.query.exception.TiesPathException;
class ScopeResolverTest {
private final ScopeResolver scopeResolver = new ScopeResolver();
+ @BeforeAll
+ public static void beforeAll() throws UnsupportedOperationException, SchemaLoaderException {
+ SchemaLoader mockedSchemaLoader = new MockSchemaLoader();
+ mockedSchemaLoader.loadSchemaRegistry();
+
+ }
+
@Test
void testEmptyScope() {
LogicalBlock expected = EmptyLogicalBlock.getInstance();
}
@Test
- void testAssociation() {
+ void testAssociationWithAndWithouthRootObject() {
ScopeLogicalBlock expected = new ScopeLogicalBlock(ScopeObject.builder("AntennaCapability").container(null)
.queryFunction(QueryFunction.CONTAINS).parameter(
"AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A")
final LogicalBlock resolvedScope = scopeResolver.resolve("AntennaCapability",
"/serving-antennaModule[contains(@id,'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A')]");
Assertions.assertEquals(expected, resolvedScope);
- }
+ ScopeLogicalBlock expected2 = new ScopeLogicalBlock(ScopeObject.builder(null).container(null).queryFunction(
+ QueryFunction.EQ).parameter("POINT(60.4019881 18.9419888)").resolverDataType(ResolverDataType.STRING)
+ .innerContainer(List.of("installed-at-site")).leaf("geo-location").build());
+ final LogicalBlock resolvedScope2 = scopeResolver.resolve(null,
+ "/installed-at-site/attributes[@geo-location='POINT(60.4019881 18.9419888)']");
+ Assertions.assertEquals(expected2, resolvedScope2);
+
+ ScopeLogicalBlock expected3 = new ScopeLogicalBlock(ScopeObject.builder("GNBCUCPFunction").topologyObjectType(
+ TopologyObjectType.UNDEFINED).container(ContainerType.ASSOCIATION).innerContainer(List.of(
+ "provided-nrCellCu", "pLMNId")).leaf("mcc").queryFunction(QueryFunction.EQ).parameter("010")
+ .resolverDataType(ResolverDataType.STRING).build());
+ final LogicalBlock resolvedScope3 = scopeResolver.resolve("GNBCUCPFunction",
+ "/provided-nrCellCu/attributes/pLMNId[@mcc='010']");
+ Assertions.assertEquals(expected3, resolvedScope3);
+ }
}
import java.util.List;
+import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Assertions;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.ContainerType;
import org.oran.smo.teiv.exposure.tiespath.innerlanguage.TargetObject;
+import org.oran.smo.teiv.schema.MockSchemaLoader;
+import org.oran.smo.teiv.schema.SchemaLoader;
+import org.oran.smo.teiv.schema.SchemaLoaderException;
import org.oran.smo.teiv.utils.query.exception.TiesPathException;
class TargetResolverTest {
private final TargetResolver targetResolver = new TargetResolver();
+ @BeforeAll
+ public static void beforeAll() throws UnsupportedOperationException, SchemaLoaderException {
+ SchemaLoader mockedSchemaLoader = new MockSchemaLoader();
+ mockedSchemaLoader.loadSchemaRegistry();
+
+ }
+
@Test
void testIdOnlyWhenTopologyObjectInRootObjectType() {
List<TargetObject> expectedObject = List.of(TargetObject.builder("GNBDUFunction").build());
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
+import static org.oran.smo.teiv.service.models.OperationResult.ENTITY_CATEGORY;
+import static org.oran.smo.teiv.service.models.OperationResult.RELATIONSHIP_CATEGORY;
import static org.oran.smo.teiv.utils.TiesConstants.TIES_DATA_SCHEMA;
import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
import static org.junit.jupiter.api.Assertions.assertEquals;
.getEntityTypeByModuleAndName("o-ran-smo-teiv-oam", "ManagedElement"), "managed_element_entity_id1");
assertFalse(deleteResultMatch.isEmpty(), "Delete operation should return a non-empty list");
- assertTrue(deleteResultMatch.contains(OperationResult.createEntityOperationResult("managed_element_entity_id1",
- "ManagedElement")),
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("managed_element_entity_id1").type(
+ "ManagedElement").category(ENTITY_CATEGORY).build()),
"The list should contain the delete operation result with id: 'managed_element_entity_id1'");
// Delete operation with the same EIID - expected to fail
"ManagedElementttttttttttttttttt_USES_NRCellDUUUUUUUUUUUU"));
assertTrue(deleteASideResultMatch.isPresent(), "Delete operation should return a present Optional");
- assertEquals(OperationResult.createRelationshipOperationResult("eiid1",
- "ManagedElementttttttttttttttttt_USES_NRCellDUUUUUUUUUUUU"), deleteASideResultMatch.get(),
+ assertEquals(OperationResult.builder().id("eiid1").type("ManagedElementttttttttttttttttt_USES_NRCellDUUUUUUUUUUUU")
+ .category(RELATIONSHIP_CATEGORY).build(), deleteASideResultMatch.get(),
"The delete operation result should be present for: 'eiid1'");
// Delete operation with the same EIID - expected to fail
"MANAGEDELEMENT_MANAGES_ORUFUNCTION"));
assertFalse(deleteResultMatch.isEmpty(), "Delete operation should return a non-empty list");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("eiid1",
- "MANAGEDELEMENT_MANAGES_ORUFUNCTION")),
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("eiid1").type(
+ "MANAGEDELEMENT_MANAGES_ORUFUNCTION").category(RELATIONSHIP_CATEGORY).build()),
"The list should contain the delete operation result with id: 'eiid1'");
// Delete operation with the same entity ID - expected to return an empty list
// Check if all expected IDs are present in the deletion result
assertEquals(4, deleteResultMatch.size(), "Delete operation should match expected size");
- assertTrue(deleteResultMatch.contains(OperationResult.createEntityOperationResult("me-id1", "ManagedElement")),
- "The list should contain the delete operation result with id: 'me-id1'");
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("me-id1").type("ManagedElement").category(
+ ENTITY_CATEGORY).build()), "The list should contain the delete operation result with id: 'me-id1'");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("eiid1",
- "MANAGEDELEMENT_MANAGES_ORUFUNCTION")),
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("eiid1").type(
+ "MANAGEDELEMENT_MANAGES_ORUFUNCTION").category(RELATIONSHIP_CATEGORY).build()),
"The list should contain the delete operation result with id: 'eiid1'");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("eiid2",
- "MANAGEDELEMENT_MANAGES_ORUFUNCTION")),
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("eiid2").type(
+ "MANAGEDELEMENT_MANAGES_ORUFUNCTION").category(RELATIONSHIP_CATEGORY).build()),
"The list should contain the delete operation result with id: 'eiid2'");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("eiid3",
- "MANAGEDELEMENT_MANAGES_ORUFUNCTION")),
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("eiid3").type(
+ "MANAGEDELEMENT_MANAGES_ORUFUNCTION").category(RELATIONSHIP_CATEGORY).build()),
"The list should contain the delete operation result with id: 'eiid3'");
// Verify all related entities have their relationships deleted
Optional<OperationResult> deleteResultMatch = tiesDbOperations.deleteManyToManyRelationByRelationId(dslContext,
relType, "rel_id1");
assertTrue(deleteResultMatch.isPresent(), "Delete operation should return a present Optional");
- assertEquals(OperationResult.createRelationshipOperationResult("rel_id1", "ANTENNAMODULE_SERVES_ANTENNACAPABILITY"),
- deleteResultMatch.get(), "Deleted relationship ID should match 'rel_id1'");
+ assertEquals(OperationResult.builder().id("rel_id1").type("ANTENNAMODULE_SERVES_ANTENNACAPABILITY").category(
+ RELATIONSHIP_CATEGORY).build(), deleteResultMatch.get(), "Deleted relationship ID should match 'rel_id1'");
// Test deletion of the same relationship ID again (expected failure)
Optional<OperationResult> deleteResultNoMatch = tiesDbOperations.deleteManyToManyRelationByRelationId(dslContext,
List<OperationResult> deleteResultMatch = tiesDbOperations.deleteManyToManyRelationByEntityId(dslContext, relType,
"antennamodule_id1", "aSide_AntennaModule", "bSide_AntennaCapability");
assertEquals(2, deleteResultMatch.size(), "Expected two relations to be deleted");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("rel_id1",
- "ANTENNAMODULE_SERVES_ANTENNACAPABILITY")),
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("rel_id1").type(
+ "ANTENNAMODULE_SERVES_ANTENNACAPABILITY").category(RELATIONSHIP_CATEGORY).build()),
"The list should contain the delete operation result with id: 'rel_id1'");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("rel_id2",
- "ANTENNAMODULE_SERVES_ANTENNACAPABILITY")),
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("rel_id2").type(
+ "ANTENNAMODULE_SERVES_ANTENNACAPABILITY").category(RELATIONSHIP_CATEGORY).build()),
"The list should contain the delete operation result with id: 'rel_id2'");
// Test deletion of relations by the same entity ID again (expected to find no
antennaRelType1, "rel_id1");
assertTrue(deleteResultMatch.isPresent(), "Delete operation should return a present Optional");
- assertEquals(OperationResult.createRelationshipOperationResult("rel_id1",
- "ANTENNAMODULEEEEEEEEEEEE_REALISED_BY_ANTENNAMODULEEEEEEEEEEEEEEE"), deleteResultMatch.get(),
- "Deleted relationship ID should match 'rel_id1'");
+ assertEquals(OperationResult.builder().id("rel_id1").type(
+ "ANTENNAMODULEEEEEEEEEEEE_REALISED_BY_ANTENNAMODULEEEEEEEEEEEEEEE").category(RELATIONSHIP_CATEGORY).build(),
+ deleteResultMatch.get(), "Deleted relationship ID should match 'rel_id1'");
// Test deletion of the same relationship ID again (expected failure)
Optional<OperationResult> deleteResultNoMatch = tiesDbOperations.deleteManyToManyRelationByRelationId(dslContext,
"module_id1", "aSide_2A2D3374BF907674FA1905478E30ACB8882DC03C",
"bSide_EE6DD4A2CFD743779BBCBFC18FC296EF6D72EB1E");
assertEquals(2, deleteResultMatch.size(), "Expected two relations to be deleted");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("rel_id1",
- "ANTENNAMODULEEEEEEEEEEEE_REALISED_BY_ANTENNAMODULEEEEEEEEEEEEEEE")),
- "The list should contain the delete operation result with id: 'rel_id1'");
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("rel_id1").type(
+ "ANTENNAMODULEEEEEEEEEEEE_REALISED_BY_ANTENNAMODULEEEEEEEEEEEEEEE").category(RELATIONSHIP_CATEGORY)
+ .build()), "The list should contain the delete operation result with id: 'rel_id1'");
- assertTrue(deleteResultMatch.contains(OperationResult.createRelationshipOperationResult("rel_id2",
- "ANTENNAMODULEEEEEEEEEEEE_REALISED_BY_ANTENNAMODULEEEEEEEEEEEEEEE")),
- "The list should contain the delete operation result with id: 'rel_id2'");
+ assertTrue(deleteResultMatch.contains(OperationResult.builder().id("rel_id2").type(
+ "ANTENNAMODULEEEEEEEEEEEE_REALISED_BY_ANTENNAMODULEEEEEEEEEEEEEEE").category(RELATIONSHIP_CATEGORY)
+ .build()), "The list should contain the delete operation result with id: 'rel_id2'");
// Test deletion of relations by the same entity ID again (expected to find no
// relations to delete)
+++ /dev/null
-{
- "entities": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "entityId_1",
- "attributes": {
- "cellLocalId": 4589,
- "nRPCI": 12,
- "nRTAC": 310,
- "primitiveArray": [
- 1,
- 2,
- 3
- ],
- "singleList": [
- "12"
- ],
- "jsonObjectArray": [
- {
- "test1": "128",
- "test2": "49"
- },
- {
- "test1": "129",
- "test2": "50"
- }
- ]
- }
- },
- {
- "id": "entityId_3",
- "attributes": {
- "cellLocalId": 45891,
- "nRPCI": 121,
- "nRTAC": 3101,
- "primitiveArray": [
- 1,
- 2,
- 3
- ],
- "singleList": [
- "121"
- ],
- "jsonObjectArray": [
- {
- "test1": "1281",
- "test2": "491"
- },
- {
- "test1": "1291",
- "test2": "501"
- }
- ]
- }
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRSectorCarrier": [
- {
- "id": "entityId_2",
- "attributes": {
- "arfcnDL": 4590,
- "testDouble": 32.5,
- "testBoolean": true,
- "cmId": {
- "option1": "test_option1",
- "option2": "test_option2"
- }
- }
- }
- ]
- }
- ],
- "relationships": [
- {
- "o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER": [
- {
- "id": "relationshipId",
- "aSide": "entityId_1",
- "bSide": "entityId_2"
- },
- {
- "id": "relationshipId2",
- "aSide": "entityId_3",
- "bSide": "entityId_4"
- }
- ],
- "o-ran-smo-teiv-ran:ODUFunctionRealisedByCloudNativeApplication": [
- {
- "id": "relationshipId3",
- "aSide": "entityId_5",
- "bSide": "entityId_6"
- },
- {
- "id": "relationshipId4",
- "aSide": "entityId_5",
- "bSide": "entityId_7"
- }
- ]
- }
- ]
-}
{
"id": "NRCellDU_21",
"attributes": {
-
+ "cellLocalIdddddddddddddddddddddddddddddddddddddddddddddddddddddd": 4589,
+ "nCI": 1,
+ "nRPCI": 12,
+ "nRTAC": 310
},
"sourceIds": [
"source1",
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.classifiers
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with classifiers in scopeFilter."
- request {
- method GET()
- url "topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[2]', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with classifiers in scopeFilter(OR)"
- request {
- method GET()
- url "topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural'] | /classifiers[@item='test-app-module:Indoor']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural'] | /classifiers[@item='test-app-module:Indoor']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural'] | /classifiers[@item='test-app-module:Indoor']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural'] | /classifiers[@item='test-app-module:Indoor']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural'] | /classifiers[@item='test-app-module:Indoor']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural'] | /classifiers[@item='test-app-module:Indoor']"
- },
- "totalCount": 4
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(4)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[2]', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with classifiers in scopeFilter.(AND)"
- request {
- method GET()
- url "topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[2]', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with classifiers in scopeFilter.(Contains)"
- request {
- method GET()
- url "topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'app-module:Rural')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'app-module:Rural')]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'app-module:Rural')]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'app-module:Rural')]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'app-module:Rural')]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'app-module:Rural')]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[0]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].classifiers[2]', byEquality())
- }
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.classifier
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get classifiers using getRelationshipsByType - EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10",
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=661A89AD3C2702233CD9E96E97E738C05C35EC5FDF32DC78D149B773726350067315B72448D004C938BCD0263F0C4BCCC8A5F9CDD145B9B740983D1523664328"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16",
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural']&targetFilter=/classifiers"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural']&targetFilter=/classifiers"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural']&targetFilter=/classifiers"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural']&targetFilter=/classifiers"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural']&targetFilter=/classifiers"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get classifiers using getRelationshipsByType - EQUALS(AND)"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10",
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=661A89AD3C2702233CD9E96E97E738C05C35EC5FDF32DC78D149B773726350067315B72448D004C938BCD0263F0C4BCCC8A5F9CDD145B9B740983D1523664328"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16",
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']&targetFilter=/classifiers"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']&targetFilter=/classifiers"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']&targetFilter=/classifiers"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']&targetFilter=/classifiers"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[@item='test-app-module:Rural' and @item='test-app-module:Weekend']&targetFilter=/classifiers"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get classifiers using getRelationshipsByType - CONTAINS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'ural')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10",
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=661A89AD3C2702233CD9E96E97E738C05C35EC5FDF32DC78D149B773726350067315B72448D004C938BCD0263F0C4BCCC8A5F9CDD145B9B740983D1523664328"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16",
- "classifiers": [
- "module-x:Indoor",
- "module-y:Rural",
- "module-z:Weekend"
- ],
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[contains(@item,'ural')]&targetFilter=/classifiers"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[contains(@item,'ural')]&targetFilter=/classifiers"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[contains(@item,'ural')]&targetFilter=/classifiers"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[contains(@item,'ural')]&targetFilter=/classifiers"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/classifiers[contains(@item,'ural')]&targetFilter=/classifiers"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get classifiers using getRelationshipsByType - CONTAINS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[contains(@item,'NOT_EXISTING')]"
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Invalid classifiers",
- "details": "The provided classifiers are invalid [NOT_EXISTING]"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.classifier
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get classifiers using getEntitiesByDomain - EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?targetFilter=/ODUFunction/classifiers&scopeFilter=/ODUFunction/classifiers[@item='test-app-module:Rural']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/ODUFunction/classifiers&scopeFilter=/ODUFunction/classifiers[@item='test-app-module:Rural']"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/ODUFunction/classifiers&scopeFilter=/ODUFunction/classifiers[@item='test-app-module:Rural']"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/ODUFunction/classifiers&scopeFilter=/ODUFunction/classifiers[@item='test-app-module:Rural']"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/ODUFunction/classifiers&scopeFilter=/ODUFunction/classifiers[@item='test-app-module:Rural']"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/ODUFunction/classifiers&scopeFilter=/ODUFunction/classifiers[@item='test-app-module:Rural']"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get classifiers using getEntitiesByDomain - EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "classifiers": [
- "test-app-module:Rural"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=93"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Rural']"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.classifier
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "NOT FOUND - 404: Merge classifiers with wrong entity ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "entityIds": [
- "WRONG_ENTITY_ID",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [WRONG_ENTITY_ID] Relationships: []"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "NOT FOUND - 404: Merge classifiers with wrong relationship ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512",
- "WRONG_RELATIONSHIP_ID"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [] Relationships: [WRONG_RELATIONSHIP_ID]"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 204: Merge valid classifiers to entities and relationships (add)."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Weekday"
- ],
- "entityIds": [
- "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.classifier
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "NOT FOUND - 404: Delete classifiers with wrong entity ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers":[
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "entityIds": [
- "WRONG_ENTITY_ID",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [WRONG_ENTITY_ID] Relationships: []"}''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "NOT FOUND - 404: Delete classifiers with wrong relationship ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512",
- "WRONG_RELATIONSHIP_ID"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [] Relationships: [WRONG_RELATIONSHIP_ID]"}''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "BAD REQUEST - 400: Delete classifiers from non-existing schema."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module-wrong:Rural",
- "test-app-module:Weekend"
- ],
- "entityIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid schema name",
- "details": "Invalid schema name: test-app-module-wrong"}''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid classifiers, no topology object given."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid classifiers on entities."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "entityIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid classifiers on relationships."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA",
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid classifiers on entities and relationships."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/classifiers"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "classifiers": [
- "test-app-module:Rural",
- "test-app-module:Weekend"
- ],
- "entityIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA",
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get all the available topology domains."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "CLOUD",
- "entityTypes": {
- "href": "/domains/CLOUD/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/CLOUD/relationship-types"
- }
- },
- {
- "name": "EQUIPMENT",
- "entityTypes": {
- "href": "/domains/EQUIPMENT/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/EQUIPMENT/relationship-types"
- }
- },
- {
- "name": "OAM",
- "entityTypes": {
- "href": "/domains/OAM/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/OAM/relationship-types"
- }
- },
- {
- "name": "RAN",
- "entityTypes": {
- "href": "/domains/RAN/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/RAN/relationship-types"
- }
- },
- {
- "name": "REL_CLOUD_RAN",
- "entityTypes": {
- "href": "/domains/REL_CLOUD_RAN/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/REL_CLOUD_RAN/relationship-types"
- }
- },
- {
- "name": "REL_EQUIPMENT_RAN",
- "entityTypes": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types"
- }
- },
- {
- "name": "REL_OAM_CLOUD",
- "entityTypes": {
- "href": "/domains/REL_OAM_CLOUD/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/REL_OAM_CLOUD/relationship-types"
- }
- },
- {
- "name": "REL_OAM_RAN",
- "entityTypes": {
- "href": "/domains/REL_OAM_RAN/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/REL_OAM_RAN/relationship-types"
- }
- },
- {
- "name": "TEIV",
- "entityTypes": {
- "href": "/domains/TEIV/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/TEIV/relationship-types"
- }
- },
- {
- "name": "TEST",
- "entityTypes": {
- "href": "/domains/TEST/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/TEST/relationship-types"
- }
- }
- ],
- "self": {
- "href": "/domains?offset=0&limit=500"
- },
- "first": {
- "href": "/domains?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains?offset=0&limit=500"
- },
- "next": {
- "href": "/domains?offset=0&limit=500"
- },
- "last": {
- "href": "/domains?offset=0&limit=500"
- },
- "totalCount": 10
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(10)
- })
- jsonPath('$.items[0].name', byEquality())
- jsonPath('$.items[0].entityTypes.href', byEquality())
- jsonPath('$.items[0].relationshipTypes.href', byEquality())
- jsonPath('$.items[1].name', byEquality())
- jsonPath('$.items[1].entityTypes.href', byEquality())
- jsonPath('$.items[1].relationshipTypes.href', byEquality())
- jsonPath('$.items[2].name', byEquality())
- jsonPath('$.items[2].entityTypes.href', byEquality())
- jsonPath('$.items[2].relationshipTypes.href', byEquality())
- jsonPath('$.items[3].name', byEquality())
- jsonPath('$.items[3].entityTypes.href', byEquality())
- jsonPath('$.items[3].relationshipTypes.href', byEquality())
- jsonPath('$.items[4].name', byEquality())
- jsonPath('$.items[4].entityTypes.href', byEquality())
- jsonPath('$.items[4].relationshipTypes.href', byEquality())
- jsonPath('$.items[5].name', byEquality())
- jsonPath('$.items[5].entityTypes.href', byEquality())
- jsonPath('$.items[5].relationshipTypes.href', byEquality())
- jsonPath('$.items[6].name', byEquality())
- jsonPath('$.items[6].entityTypes.href', byEquality())
- jsonPath('$.items[6].relationshipTypes.href', byEquality())
- jsonPath('$.items[7].name', byEquality())
- jsonPath('$.items[7].entityTypes.href', byEquality())
- jsonPath('$.items[7].relationshipTypes.href', byEquality())
- jsonPath('$.items[8].name', byEquality())
- jsonPath('$.items[8].entityTypes.href', byEquality())
- jsonPath('$.items[8].relationshipTypes.href', byEquality())
- jsonPath('$.items[9].name', byEquality())
- jsonPath('$.items[9].entityTypes.href', byEquality())
- jsonPath('$.items[9].relationshipTypes.href', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all the available topology domains with offset as 2 and limit as 3."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains?offset=2&limit=3"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "OAM",
- "entityTypes": {
- "href": "/domains/OAM/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/OAM/relationship-types"
- }
- },
- {
- "name": "RAN",
- "entityTypes": {
- "href": "/domains/RAN/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/RAN/relationship-types"
- }
- },
- {
- "name": "REL_CLOUD_RAN",
- "entityTypes": {
- "href": "/domains/REL_CLOUD_RAN/entity-types"
- },
- "relationshipTypes": {
- "href": "/domains/REL_CLOUD_RAN/relationship-types"
- }
- }
- ],
- "self": {
- "href": "/domains?offset=2&limit=3"
- },
- "first": {
- "href": "/domains?offset=0&limit=3"
- },
- "prev": {
- "href": "/domains?offset=0&limit=3"
- },
- "next": {
- "href": "/domains?offset=5&limit=3"
- },
- "last": {
- "href": "/domains?offset=8&limit=3"
- },
- "totalCount": 10
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].name', byEquality())
- jsonPath('$.items[0].entityTypes.href', byEquality())
- jsonPath('$.items[0].relationshipTypes.href', byEquality())
- jsonPath('$.items[1].name', byEquality())
- jsonPath('$.items[1].entityTypes.href', byEquality())
- jsonPath('$.items[1].relationshipTypes.href', byEquality())
- jsonPath('$.items[2].name', byEquality())
- jsonPath('$.items[2].entityTypes.href', byEquality())
- jsonPath('$.items[2].relationshipTypes.href', byEquality())
- }
- }
- },
- Contract.make {
- description "ERROR - 400: Get all the available topology domains with invalid offset (greater than total count)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains?offset=100"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid Value",
- "details": "Offset cannot be larger than 9"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get all the available topology entity types in OAM domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/OAM/entity-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "ManagedElement",
- "entities": {
- "href": "/domains/OAM/entity-types/ManagedElement/entities"
- }
- }
- ],
- "self": {
- "href": "/domains/OAM/entity-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/OAM/entity-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/OAM/entity-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/OAM/entity-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/OAM/entity-types?offset=0&limit=500"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].name', byEquality())
- jsonPath('$.items[0].entities.href', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all the available topology entity types in REL_OAM_RAN domain (includes OAM and RAN domains)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/entity-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "AntennaCapability",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/AntennaCapability/entities"
- }
- },
- {
- "name": "ManagedElement",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/ManagedElement/entities"
- }
- },
- {
- "name": "NRCellCU",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/NRCellCU/entities"
- }
- },
- {
- "name": "NRCellDU",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/NRCellDU/entities"
- }
- },
- {
- "name": "NRSectorCarrier",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/NRSectorCarrier/entities"
- }
- },
- {
- "name": "NearRTRICFunction",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/NearRTRICFunction/entities"
- }
- },
- {
- "name": "OCUCPFunction",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/OCUCPFunction/entities"
- }
- },
- {
- "name": "OCUUPFunction",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/OCUUPFunction/entities"
- }
- },
- {
- "name": "ODUFunction",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/ODUFunction/entities"
- }
- },
- {
- "name": "ORUFunction",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/ORUFunction/entities"
- }
- },
- {
- "name": "Sector",
- "entities": {
- "href": "/domains/REL_OAM_RAN/entity-types/Sector/entities"
- }
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/entity-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/entity-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/entity-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/entity-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/entity-types?offset=0&limit=500"
- },
- "totalCount": 11
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(11)
- })
- jsonPath('$.items[0].name', byEquality())
- jsonPath('$.items[0].entities.href', byEquality())
- jsonPath('$.items[1].name', byEquality())
- jsonPath('$.items[1].entities.href', byEquality())
- jsonPath('$.items[2].name', byEquality())
- jsonPath('$.items[2].entities.href', byEquality())
- jsonPath('$.items[3].name', byEquality())
- jsonPath('$.items[3].entities.href', byEquality())
- jsonPath('$.items[4].name', byEquality())
- jsonPath('$.items[4].entities.href', byEquality())
- jsonPath('$.items[5].name', byEquality())
- jsonPath('$.items[5].entities.href', byEquality())
- jsonPath('$.items[6].name', byEquality())
- jsonPath('$.items[6].entities.href', byEquality())
- jsonPath('$.items[7].name', byEquality())
- jsonPath('$.items[7].entities.href', byEquality())
- jsonPath('$.items[8].name', byEquality())
- jsonPath('$.items[8].entities.href', byEquality())
- jsonPath('$.items[9].name', byEquality())
- jsonPath('$.items[9].entities.href', byEquality())
- jsonPath('$.items[10].name', byEquality())
- jsonPath('$.items[10].entities.href', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all the available topology entity types in RAN domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "AntennaCapability",
- "entities": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities"
- }
- },
- {
- "name": "NRCellCU",
- "entities": {
- "href": "/domains/RAN/entity-types/NRCellCU/entities"
- }
- },
- {
- "name": "NRCellDU",
- "entities": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities"
- }
- },
- {
- "name": "NRSectorCarrier",
- "entities": {
- "href": "/domains/RAN/entity-types/NRSectorCarrier/entities"
- }
- },
- {
- "name": "NearRTRICFunction",
- "entities": {
- "href": "/domains/RAN/entity-types/NearRTRICFunction/entities"
- }
- },
- {
- "name": "OCUCPFunction",
- "entities": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities"
- }
- },
- {
- "name": "OCUUPFunction",
- "entities": {
- "href": "/domains/RAN/entity-types/OCUUPFunction/entities"
- }
- },
- {
- "name": "ODUFunction",
- "entities": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities"
- }
- },
- {
- "name": "ORUFunction",
- "entities": {
- "href": "/domains/RAN/entity-types/ORUFunction/entities"
- }
- },
- {
- "name": "Sector",
- "entities": {
- "href": "/domains/RAN/entity-types/Sector/entities"
- }
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/RAN/entity-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/RAN/entity-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/RAN/entity-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/RAN/entity-types?offset=0&limit=500"
- },
- "totalCount": 10
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(10)
- })
- jsonPath('$.items[0].name', byEquality())
- jsonPath('$.items[0].entities.href', byEquality())
- jsonPath('$.items[1].name', byEquality())
- jsonPath('$.items[1].entities.href', byEquality())
- jsonPath('$.items[2].name', byEquality())
- jsonPath('$.items[2].entities.href', byEquality())
- jsonPath('$.items[3].name', byEquality())
- jsonPath('$.items[3].entities.href', byEquality())
- jsonPath('$.items[4].name', byEquality())
- jsonPath('$.items[4].entities.href', byEquality())
- jsonPath('$.items[5].name', byEquality())
- jsonPath('$.items[5].entities.href', byEquality())
- jsonPath('$.items[6].name', byEquality())
- jsonPath('$.items[6].entities.href', byEquality())
- jsonPath('$.items[7].name', byEquality())
- jsonPath('$.items[7].entities.href', byEquality())
- jsonPath('$.items[8].name', byEquality())
- jsonPath('$.items[8].entities.href', byEquality())
- jsonPath('$.items[9].name', byEquality())
- jsonPath('$.items[9].entities.href', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all the available topology entity types in TEIV domain (includes all the supported topology domains)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEIV/entity-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "AntennaCapability",
- "entities": {
- "href": "/domains/TEIV/entity-types/AntennaCapability/entities"
- }
- },
- {
- "name": "AntennaModule",
- "entities": {
- "href": "/domains/TEIV/entity-types/AntennaModule/entities"
- }
- },
- {
- "name": "CloudifiedNF",
- "entities": {
- "href": "/domains/TEIV/entity-types/CloudifiedNF/entities"
- }
- },
- {
- "name": "EntityTypeA",
- "entities": {
- "href": "/domains/TEIV/entity-types/EntityTypeA/entities"
- }
- },
- {
- "name": "EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters",
- "entities": {
- "href": "/domains/TEIV/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities"
- }
- },
- {
- "name": "ManagedElement",
- "entities": {
- "href": "/domains/TEIV/entity-types/ManagedElement/entities"
- }
- },
- {
- "name": "NFDeployment",
- "entities": {
- "href": "/domains/TEIV/entity-types/NFDeployment/entities"
- }
- },
- {
- "name": "NRCellCU",
- "entities": {
- "href": "/domains/TEIV/entity-types/NRCellCU/entities"
- }
- },
- {
- "name": "NRCellDU",
- "entities": {
- "href": "/domains/TEIV/entity-types/NRCellDU/entities"
- }
- },
- {
- "name": "NRSectorCarrier",
- "entities": {
- "href": "/domains/TEIV/entity-types/NRSectorCarrier/entities"
- }
- },
- {
- "name": "NearRTRICFunction",
- "entities": {
- "href": "/domains/TEIV/entity-types/NearRTRICFunction/entities"
- }
- },
- {
- "name": "NodeCluster",
- "entities": {
- "href": "/domains/TEIV/entity-types/NodeCluster/entities"
- }
- },
- {
- "name": "OCUCPFunction",
- "entities": {
- "href": "/domains/TEIV/entity-types/OCUCPFunction/entities"
- }
- },
- {
- "name": "OCUUPFunction",
- "entities": {
- "href": "/domains/TEIV/entity-types/OCUUPFunction/entities"
- }
- },
- {
- "name": "OCloudNamespace",
- "entities": {
- "href": "/domains/TEIV/entity-types/OCloudNamespace/entities"
- }
- },
- {
- "name": "OCloudSite",
- "entities": {
- "href": "/domains/TEIV/entity-types/OCloudSite/entities"
- }
- },
- {
- "name": "ODUFunction",
- "entities": {
- "href": "/domains/TEIV/entity-types/ODUFunction/entities"
- }
- },
- {
- "name": "ORUFunction",
- "entities": {
- "href": "/domains/TEIV/entity-types/ORUFunction/entities"
- }
- },
- {
- "name": "Sector",
- "entities": {
- "href": "/domains/TEIV/entity-types/Sector/entities"
- }
- },
- {
- "name": "Site",
- "entities": {
- "href": "/domains/TEIV/entity-types/Site/entities"
- }
- }
- ],
- "self": {
- "href": "/domains/TEIV/entity-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/TEIV/entity-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/TEIV/entity-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/TEIV/entity-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/TEIV/entity-types?offset=0&limit=500"
- },
- "totalCount": 20
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(20)
- })
- jsonPath('$.items[0].name', byEquality())
- jsonPath('$.items[0].entities.href', byEquality())
- jsonPath('$.items[1].name', byEquality())
- jsonPath('$.items[1].entities.href', byEquality())
- jsonPath('$.items[2].name', byEquality())
- jsonPath('$.items[2].entities.href', byEquality())
- jsonPath('$.items[3].name', byEquality())
- jsonPath('$.items[3].entities.href', byEquality())
- jsonPath('$.items[4].name', byEquality())
- jsonPath('$.items[4].entities.href', byEquality())
- jsonPath('$.items[5].name', byEquality())
- jsonPath('$.items[5].entities.href', byEquality())
- jsonPath('$.items[6].name', byEquality())
- jsonPath('$.items[6].entities.href', byEquality())
- jsonPath('$.items[7].name', byEquality())
- jsonPath('$.items[7].entities.href', byEquality())
- jsonPath('$.items[8].name', byEquality())
- jsonPath('$.items[8].entities.href', byEquality())
- jsonPath('$.items[9].name', byEquality())
- jsonPath('$.items[9].entities.href', byEquality())
- jsonPath('$.items[10].name', byEquality())
- jsonPath('$.items[10].entities.href', byEquality())
- jsonPath('$.items[11].name', byEquality())
- jsonPath('$.items[11].entities.href', byEquality())
- jsonPath('$.items[12].name', byEquality())
- jsonPath('$.items[12].entities.href', byEquality())
- jsonPath('$.items[13].name', byEquality())
- jsonPath('$.items[13].entities.href', byEquality())
- jsonPath('$.items[14].name', byEquality())
- jsonPath('$.items[14].entities.href', byEquality())
- jsonPath('$.items[15].name', byEquality())
- jsonPath('$.items[15].entities.href', byEquality())
- jsonPath('$.items[16].name', byEquality())
- jsonPath('$.items[16].entities.href', byEquality())
- jsonPath('$.items[17].name', byEquality())
- jsonPath('$.items[17].entities.href', byEquality())
- jsonPath('$.items[18].name', byEquality())
- jsonPath('$.items[18].entities.href', byEquality())
- jsonPath('$.items[19].name', byEquality())
- jsonPath('$.items[19].entities.href', byEquality())
- }
- }
- },
- Contract.make {
- description "ERROR - 400: Get all the available topology entity types with invalid domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/INVALID/entity-types"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Unknown domain",
- "details": "Unknown domain: INVALID, known domains: [CLOUD, EQUIPMENT, OAM, RAN, REL_CLOUD_RAN, REL_EQUIPMENT_RAN, REL_OAM_CLOUD, REL_OAM_RAN, TEIV, TEST]"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get all the available topology entity types in TEIV domain with invalid offset (greater than total count)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEIV/entity-types?offset=100"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid Value",
- "details": "Offset cannot be larger than 19"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type NRCellDU."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=92"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=93"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500"
- },
- "totalCount": 6
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(6)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[5].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with offset as 1 and limit as 4."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?offset=1&limit=4"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=1&limit=4"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=4"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=4"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=5&limit=4"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=5&limit=4"
- },
- "totalCount": 7
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(4)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type NRCellDU with scopeFilter."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type NRCellDU which matches given ID (exact ID match). Alternate to GET entity by ID."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?scopeFilter=/NRCellDU[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type NRCellDU which contain 'ManagedElement=9,ODUFunction=9' in ID (partial ID match)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?scopeFilter=/NRCellDU[contains(@id, 'ManagedElement=9,ODUFunction=9')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[contains(@id, 'ManagedElement=9,ODUFunction=9')]"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[contains(@id, 'ManagedElement=9,ODUFunction=9')]"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[contains(@id, 'ManagedElement=9,ODUFunction=9')]"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[contains(@id, 'ManagedElement=9,ODUFunction=9')]"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/NRCellDU[contains(@id, 'ManagedElement=9,ODUFunction=9')]"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type AntennaCapability which has serving-antennaModule association with ID that contains 'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A'"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEIV/entity-types/AntennaCapability/entities?scopeFilter=/serving-antennaModule[contains(@id,'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:AntennaCapability": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEIV/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[contains(@id,'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A')]"
- },
- "first": {
- "href": "/domains/TEIV/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[contains(@id,'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A')]"
- },
- "prev": {
- "href": "/domains/TEIV/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[contains(@id,'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A')]"
- },
- "next": {
- "href": "/domains/TEIV/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[contains(@id,'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A')]"
- },
- "last": {
- "href": "/domains/TEIV/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[contains(@id,'AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A')]"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction which has provided-nrCellDu association with ID that contains 'NRCellDU=1'."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?scopeFilter=/provided-nrCellDu[contains(@id,'NRCellDU=1')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/provided-nrCellDu[contains(@id,'NRCellDU=1')]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/provided-nrCellDu[contains(@id,'NRCellDU=1')]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/provided-nrCellDu[contains(@id,'NRCellDU=1')]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/provided-nrCellDu[contains(@id,'NRCellDU=1')]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/provided-nrCellDu[contains(@id,'NRCellDU=1')]"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type AntennaModule with targetFilter=/sourceIds"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?targetFilter=/sourceIds"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=72AC3D5E2A5F1C47BD09258A9F7B48E0123E9AD752AC54F7E8D8F9D3A6BC487A89A762A5D12CB9D148BB9E5D53A4F3F981345ACDF7B4CB55D67BC12A13FD5B7A",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=84A3E5D7C916F4B2390DC45F178BE6A9235FD80CB41972E3456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1",
- "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"
- ]
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1",
- "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"
- ]
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=B7F52C914E8D36A0185BC9D47EF230A95C681D7B4F923E0A5D8C741F6B9203E85A4D967B312C8F405E9B7831A6D2C5904F8B3E167A9D204C5B8371F9E6A02D45",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds"
- },
- "first": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds"
- },
- "prev": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds"
- },
- "next": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds"
- },
- "last": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds"
- },
- "totalCount": 5
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(5)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[0]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[1]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[2]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[3]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[0]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[2]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[3]', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[0]', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[1]', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[2]', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[3]', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[0]', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[1]', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[2]', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[3]', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[0]', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[1]', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[2]', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[3]', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type AntennaModule with scopeFilter on sourceIds"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?scopeFilter=/sourceIds[@item = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1']&targetFilter=/sourceIds"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1']"
- },
- "first": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1']"
- },
- "prev": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1']"
- },
- "next": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1']"
- },
- "last": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1']"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[0]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[1]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[2]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].sourceIds[3]', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get empty items array when no entity exists of given filter criteria."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=898989]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=898989]"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=898989]"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=898989]"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=898989]"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=898989]"
- },
- "totalCount": 0
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(0)
- })
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities by a long named entity type."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities?offset=0&limit=1&targetFilter=/attributes"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters": [
- {
- "attributes": {
- "attributeA2WithAttributeNameLengthLongerThanSixtyThreeCharacters": 9223372036854775807,
- "attributeA6WithAttributeNameLengthLongerThanSixtyThreeCharacters": [
- "1000",
- "2000"
- ],
- "attributeA5WithAttributeNameLengthLongerThanSixtyThreeCharacters": 1.1,
- "attributeA4WithAttributeNameLengthLongerThanSixtyThreeCharacters": -9223372036854775807,
- "attributeA3WithAttributeNameLengthLongerThanSixtyThreeCharacters": 2147483647,
- "attributeA7WithAttributeNameLengthLongerThanSixtyThreeCharacters": {
- "mcc": "01",
- "mnc": "234"
- },
- "attributeA1WithAttributeNameLengthLongerThanSixtyThreeCharacters": "someStringValue"
- },
- "id": "LongEntityType1"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities?offset=0&limit=1&targetFilter=/attributes"
- },
- "first": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities?offset=0&limit=1&targetFilter=/attributes"
- },
- "prev": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities?offset=0&limit=1&targetFilter=/attributes"
- },
- "next": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities?offset=1&limit=1&targetFilter=/attributes"
- },
- "last": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities?offset=2&limit=1&targetFilter=/attributes"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].id', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA1WithAttributeNameLengthLongerThanSixtyThreeCharacters', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA2WithAttributeNameLengthLongerThanSixtyThreeCharacters', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA3WithAttributeNameLengthLongerThanSixtyThreeCharacters', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA4WithAttributeNameLengthLongerThanSixtyThreeCharacters', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA5WithAttributeNameLengthLongerThanSixtyThreeCharacters', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA6WithAttributeNameLengthLongerThanSixtyThreeCharacters[0]', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA6WithAttributeNameLengthLongerThanSixtyThreeCharacters[1]', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA7WithAttributeNameLengthLongerThanSixtyThreeCharacters.mcc', byEquality())
- jsonPath('$.items[0].test-built-in-module:EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[0].attributes.attributeA7WithAttributeNameLengthLongerThanSixtyThreeCharacters.mnc', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type NRCellDU with scopeFilter on association."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=100&scopeFilter=/provided-by-oduFunction[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9']&targetFilter=/attributes(nCI)"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "attributes": {
- "nCI": 1
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "attributes": {
- "nCI": 2
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "attributes": {
- "nCI": 3
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=100&targetFilter=/attributes(nCI)&scopeFilter=/provided-by-oduFunction[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=100&targetFilter=/attributes(nCI)&scopeFilter=/provided-by-oduFunction[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=100&targetFilter=/attributes(nCI)&scopeFilter=/provided-by-oduFunction[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=100&targetFilter=/attributes(nCI)&scopeFilter=/provided-by-oduFunction[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=100&targetFilter=/attributes(nCI)&scopeFilter=/provided-by-oduFunction[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9']"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].attributes.nCI', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].attributes.nCI', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].attributes.nCI', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with scopeFilter on sourceIds and gNBId with AND condition."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/attributes[@gNBId=10]; /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']&targetFilter=/attributes;/sourceIds"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "pLMNId": {
- "mcc": "456",
- "mnc": "82"
- },
- "gNBId": 10,
- "gNBDUId": null,
- "gNBIdLength": 2
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10",
- "urn:cmHandle:72FDA73D085F138FECC974CB91F1450E"
- ]
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/attributes;/sourceIds&scopeFilter=/attributes[@gNBId=10]; /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/attributes;/sourceIds&scopeFilter=/attributes[@gNBId=10]; /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/attributes;/sourceIds&scopeFilter=/attributes[@gNBId=10]; /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/attributes;/sourceIds&scopeFilter=/attributes[@gNBId=10]; /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/attributes;/sourceIds&scopeFilter=/attributes[@gNBId=10]; /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with scopeFilter with AND an OR conditions."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/attributes[@gNBId=10 or @gNBId=13]; /attributes[@gNBIdLength = 2]&targetFilter=/ODUFunction"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/ODUFunction&scopeFilter=/attributes[@gNBId=10 or @gNBId=13]; /attributes[@gNBIdLength = 2]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/ODUFunction&scopeFilter=/attributes[@gNBId=10 or @gNBId=13]; /attributes[@gNBIdLength = 2]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/ODUFunction&scopeFilter=/attributes[@gNBId=10 or @gNBId=13]; /attributes[@gNBIdLength = 2]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/ODUFunction&scopeFilter=/attributes[@gNBId=10 or @gNBId=13]; /attributes[@gNBIdLength = 2]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/ODUFunction&scopeFilter=/attributes[@gNBId=10 or @gNBId=13]; /attributes[@gNBIdLength = 2]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type ODUFunction with scopeFilter with AND an OR conditions."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&scopeFilter=/attributes[@gNBId = 9 and @gNBIdLength = 1] | /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']&targetFilter=/id"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/id&scopeFilter=/attributes[@gNBId = 9 and @gNBIdLength = 1] | /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/id&scopeFilter=/attributes[@gNBId = 9 and @gNBIdLength = 1] | /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/id&scopeFilter=/attributes[@gNBId = 9 and @gNBIdLength = 1] | /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/id&scopeFilter=/attributes[@gNBId = 9 and @gNBIdLength = 1] | /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/id&scopeFilter=/attributes[@gNBId = 9 and @gNBIdLength = 1] | /sourceIds[@item = 'urn:cmHandle:72FDA73D085F138FECC974CB91F1450E']"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type OCUCPFunction with scopeFilter on complex attribute STRING value - EQUALS - KEY AND VALUE EXISTS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUCPFunction=10",
- "attributes": {
- "pLMNId": {
- "mcc": "456",
- "mnc": "83"
- }
- }
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUCPFunction=16",
- "attributes": {
- "pLMNId": {
- "mcc": "456",
- "mnc": "86"
- }
- }
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type OCUCPFunction with scopeFilter on complex attribute STRING value - EQUALS - KEY AND VALUE EXISTS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUCPFunction=10",
- "attributes": {
- "pLMNId": {
- "mcc": "456",
- "mnc": "83"
- }
- }
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUCPFunction=16",
- "attributes": {
- "pLMNId": {
- "mcc": "456",
- "mnc": "86"
- }
- }
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[@mcc='456']"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type OCUCPFunction with scopeFilter on complex attribute STRING value - CONTAINS - KEY AND VALUE EXISTS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[contains(@mcc,'78')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,OCUCPFunction=13",
- "attributes": {
- "pLMNId": {
- "mcc": "789",
- "mnc": "84"
- }
- }
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,OCUCPFunction=19",
- "attributes": {
- "pLMNId": {
- "mcc": "789",
- "mnc": "87"
- }
- }
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[contains(@mcc,'78')]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[contains(@mcc,'78')]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[contains(@mcc,'78')]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[contains(@mcc,'78')]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/OCUCPFunction/entities?offset=0&limit=500&targetFilter=/attributes(pLMNId)&scopeFilter=/attributes/pLMNId[contains(@mcc,'78')]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type AntennaCapability with scopeFilter on complex attribute STRING array - EXACT MATCH - VALUE EXISTS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item='456']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:AntennaCapability": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1",
- "attributes": {
- "eUtranFqBands": [
- "123",
- "456",
- "789"
- ]
- }
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:AntennaCapability": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1",
- "attributes": {
- "eUtranFqBands": [
- "123",
- "456",
- "789"
- ]
- }
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item='456']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item='456']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item='456']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item='456']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item='456']"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type AntennaCapability with scopeFilter on complex attribute INTEGER array - EXACT MATCH - VALUE NOT EXISTS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item=456]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [],
- "self": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item=456]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item=456]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item=456]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item=456]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[@item=456]"
- },
- "totalCount": 0
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(0)
- })
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type AntennaCapability with scopeFilter on complex attribute STRING array - PARTIAL MATCH - VALUE EXISTS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'45')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:AntennaCapability": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1",
- "attributes": {
- "eUtranFqBands": [
- "123",
- "456",
- "789"
- ]
- }
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:AntennaCapability": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1",
- "attributes": {
- "eUtranFqBands": [
- "123",
- "456",
- "789"
- ]
- }
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'45')]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'45')]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'45')]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'45')]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'45')]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all topology entities of type AntennaCapability with scopeFilter on complex attribute STRING array - PARTIAL MATCH - VALUE NOT EXISTS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'999')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [],
- "self": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'999')]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'999')]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'999')]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'999')]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&targetFilter=/attributes(eUtranFqBands)&scopeFilter=/attributes/eUtranFqBands[contains(@item,'999')]"
- },
- "totalCount": 0
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(0)
- })
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities of type AntennaModule with scopeFilter on geographic attribute"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881 67.9419888)']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A",
- "attributes": {
- "geo-location": "POINT(39.4019881 67.9419888)"
- }
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881 67.9419888)']"
- },
- "first": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881 67.9419888)']"
- },
- "prev": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881 67.9419888)']"
- },
- "next": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881 67.9419888)']"
- },
- "last": {
- "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881 67.9419888)']"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- }
- }
- },
- Contract.make {
- description "ERROR - 400: Get entities of type AntennaModule with scopeFilter on geographic attribute - invalid format"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = '(39.4019881 67.9419888)']"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid query condition",
- "details": "Invalid geographic format, geographic type must be 2D or 3D coordinates. For example: POINT(39.40 67.94) or POINT Z (47.49 19.04 111.11)"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get entities of type AntennaModule with scopeFilter on geographic attribute - 1 coordinate"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881)']"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid query condition",
- "details": "Invalid geographic format, geographic type must be 2D or 3D coordinates. For example: POINT(39.40 67.94) or POINT Z (47.49 19.04 111.11)"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get entities of type AntennaModule with scopeFilter on geographic attribute - invalid coordinate"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&targetFilter=/attributes(geo-location)&scopeFilter=/attributes[@geo-location = 'POINT(39.4019881 ABC)']"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid query condition",
- "details": "Invalid geographic format, geographic type must be 2D or 3D coordinates. For example: POINT(39.40 67.94) or POINT Z (47.49 19.04 111.11)"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get all topology entities for an entity type that is not in the domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/NRCellDU/entities"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Unknown entity type",
- "details": "Entity type NRCellDU is not part of the domain EQUIPMENT, known entity types: [AntennaModule, Site]"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get all topology entities for wrong entity type name."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU1/entities"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Unknown entity type",
- "details": "Entity type NRCellDU1 is not part of the model, known entity types: [AntennaCapability, AntennaModule, CloudifiedNF, EntityTypeA, EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters, ManagedElement, NFDeployment, NRCellCU, NRCellDU, NRSectorCarrier, NearRTRICFunction, NodeCluster, OCUCPFunction, OCUUPFunction, OCloudNamespace, OCloudSite, ODUFunction, ORUFunction, Sector, Site]"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get all topology entities with invalid scopeFilter (attribute not prefixed with @)"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/OCUCPFunction/entities?scopeFilter=/attributes[contains(gNBCUName,'Cucp-1')]"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Grammar error",
- "details": "no viable alternative at input '[contains(gNBCUName' at line 1:21"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get all topology entities of type OCUUPFunction with invalid offset (greater than total count)."
- request {
- method GET()
- url "topology-inventory/v1alpha11/domains/RAN/entity-types/OCUUPFunction/entities?offset=10000"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid Value",
- "details": "Offset cannot be larger than 6"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get topology for ManagedElement entity with id 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9' in OAM domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/OAM/entity-types/ManagedElement/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9"
- }
- response {
- status OK()
- headers {
- contentType('application/yang.data+json')
- }
- body('''{
- "o-ran-smo-teiv-oam:ManagedElement": [
- {
- "decorators": {},
- "classifiers": [],
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology for ODUFunction entity with id 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9' with REL_EQUIPMENT_RAN (domain including other domains)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/entity-types/ODUFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9"
- }
- response {
- status OK()
- headers {
- contentType('application/yang.data+json')
- }
- body('''{
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "ORAN"
- },
- "classifiers": [
- "test-app-module:Indoor",
- "test-app-module:Weekend"
- ],
- "attributes": {
- "gNBDUId": null,
- "gNBId": 9,
- "gNBIdLength": 1
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get topology for ODUFunction entity with non existing id 'non-existing-id'."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/entity-types/ODUFunction/entities/non-existing-id"
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource is not found"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get all relationships for entity type NRCellDU with ID urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "id": "urn:o-ran:smo:teiv:sha512:NRCELLDU_USES_NRSECTORCARRIER=7B9425BBD6977FEA6C180F6078CFBAEBE65400223B29E0EFA4F38424FAD66C690806778909177ECF1457CAC18E5BCF6FA4F24E3ECE524C89DE68108708D6D876"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "Sector=2",
- "id": "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100"
- },
- "first": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100"
- },
- "next": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100"
- },
- "last": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER[0].aSide', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER[0].bSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].bSide', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].bSide', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for entity type NRCellDU with ID urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1 & targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU"
- },
- "first": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU"
- },
- "next": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU"
- },
- "last": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU"
- },
- "totalCount": 1
-}''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for entity type NRCellDU with ID urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1 & targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU;/SECTOR_GROUPS_NRCELLDU."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU;/SECTOR_GROUPS_NRCELLDU"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "Sector=2",
- "id": "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU;/SECTOR_GROUPS_NRCELLDU"
- },
- "first": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU;/SECTOR_GROUPS_NRCELLDU"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU;/SECTOR_GROUPS_NRCELLDU"
- },
- "next": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU;/SECTOR_GROUPS_NRCELLDU"
- },
- "last": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1/relationships?offset=0&limit=100&targetFilter=/ODUFUNCTION_PROVIDES_NRCELLDU;/SECTOR_GROUPS_NRCELLDU"
- },
- "totalCount": 2
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for entity type ODUFunction with ID urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1. & scopeFilter=/provided-nrCellDu[@id = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9/relationships?offset=0&limit=100&scopeFilter=/provided-nrCellDu[@id = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9/relationships?offset=0&limit=100&scopeFilter=/provided-nrCellDu[@id = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9/relationships?offset=0&limit=100&scopeFilter=/provided-nrCellDu[@id = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9/relationships?offset=0&limit=100&scopeFilter=/provided-nrCellDu[@id = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9/relationships?offset=0&limit=100&scopeFilter=/provided-nrCellDu[@id = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9/relationships?offset=0&limit=100&scopeFilter=/provided-nrCellDu[@id = 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "totalCount": 1
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for entity type NRCellDU with ID urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3 with limit as 2."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3/relationships?limit=2"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=3",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3",
- "id": "urn:o-ran:smo:teiv:sha512:NRCELLDU_USES_NRSECTORCARRIER=950ED4540349F9859CEA9E47884A28CD567BDD2505A3C5335C8851A7AADF2AF65542157BB42D607EE3847E4223D76DE88B90762D0590E48693822FD6DCAE60CD"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=714C1B73945C298CAA03FE0D800053CDD1C571BBF375DC647B9F23FDA861CEB369832A3593BB1AA4B8A7245AD187ED24ADDF6FB147130827CDC17BA8370C4838"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3/relationships?offset=0&limit=2"
- },
- "first": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3/relationships?offset=0&limit=2"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3/relationships?offset=0&limit=2"
- },
- "next": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3/relationships?offset=2&limit=2"
- },
- "last": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3/relationships?offset=2&limit=2"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER[0].aSide', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCELLDU_USES_NRSECTORCARRIER[0].bSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].bSide', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for long entity type name with id as LongEntityType1 (OneToOne, ManyToOne, ManyToMany and Same Entity with aSide of relationship)"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEA_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType1",
- "aSide": "EntityType1",
- "id": "RelId_OneToOne_EntityType1_LongEntityType1"
- }
- ]
- },
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "LongEntityType1",
- "id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
- }
- ]
- },
- {
- "test-built-in-module:ENTITYTYPEA_GROUPS_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType1",
- "aSide": "EntityType2",
- "id": "Rel_ManyToOne_EntityType2_LongEntityType1"
- }
- ]
- },
- {
- "test-built-in-module:ENTITYTYPEA_INSTALLED_AT_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType1",
- "aSide": "EntityType1",
- "id": "Rel_ManyToMany_EntityType1_LongEntityType1"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500"
- },
- "totalCount": 4
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for long entity type name with id as LongEntityType2 (OneToMany and Same Entity with bSide of relationship)"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEA_PROVIDES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "EntityType2",
- "id": "Rel_OneToMany_EntityType2_LongEntityType2"
- }
- ]
- },
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "LongEntityType1",
- "id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
- }
- ]
- },
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType3",
- "aSide": "LongEntityType2",
- "id": "Rel_OneToOne_SameEntity_LongEntityType2_LongEntityType3"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500"
- },
- "totalCount": 3
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for long entity type name with id as LongEntityType1 and with scope filter on sourceIds"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?scopeFilter=/sourceIds[@item = 'urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616']&targetFilter=/sourceIds"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "LongEntityType1",
- "id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616']"
- },
- "first": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616']"
- },
- "prev": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616']"
- },
- "next": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616']"
- },
- "last": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType1/relationships?offset=0&limit=500&targetFilter=/sourceIds&scopeFilter=/sourceIds[@item = 'urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616']"
- },
- "totalCount": 1
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for long entity type name with id as LongEntityType3 and with scope filter on classifiers"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType3/relationships?scopeFilter=/classifiers[@item='test-app-module:Weekend']&targetFilter=/classifiers"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType3",
- "aSide": "LongEntityType2",
- "id": "Rel_OneToOne_SameEntity_LongEntityType2_LongEntityType3"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType3/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Weekend']"
- },
- "first": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType3/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Weekend']"
- },
- "prev": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType3/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Weekend']"
- },
- "next": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType3/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Weekend']"
- },
- "last": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType3/relationships?offset=0&limit=500&targetFilter=/classifiers&scopeFilter=/classifiers[@item='test-app-module:Weekend']"
- },
- "totalCount": 1
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for long entity type name with id as LongEntityType2 and with scope filter on decorators"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?&scopeFilter=/decorators[contains(@test-app-module:textdata, 'ORAN')]&targetFilter=/decorators"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "LongEntityType1",
- "id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
- }
- ]
- },
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType3",
- "aSide": "LongEntityType2",
- "id": "Rel_OneToOne_SameEntity_LongEntityType2_LongEntityType3"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'ORAN')]"
- },
- "first": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'ORAN')]"
- },
- "prev": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'ORAN')]"
- },
- "next": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'ORAN')]"
- },
- "last": {
- "href": "/domains/TEST/entity-types/EntityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters/entities/LongEntityType2/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'ORAN')]"
- },
- "totalCount": 2
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Return items as empty for a entity with no relationship"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [],
- "self": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91/relationships?offset=0&limit=500"
- },
- "totalCount": 0
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for an entity id where there exists no relationships for the entity type in the given domain"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/OCUUPFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [],
- "self": {
- "href": "/domains/RAN/entity-types/OCUUPFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/RAN/entity-types/OCUUPFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/OCUUPFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/RAN/entity-types/OCUUPFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/RAN/entity-types/OCUUPFunction/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9/relationships?offset=0&limit=500"
- },
- "totalCount": 0
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all relationships for an entity id where there exists no relationships in the given domain"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/OAM/entity-types/ManagedElement/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9/relationships?offset=0&limit=100"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [],
- "self": {
- "href": "/domains/OAM/entity-types/ManagedElement/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9/relationships?offset=0&limit=100"
- },
- "first": {
- "href": "/domains/OAM/entity-types/ManagedElement/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9/relationships?offset=0&limit=100"
- },
- "prev": {
- "href": "/domains/OAM/entity-types/ManagedElement/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9/relationships?offset=0&limit=100"
- },
- "next": {
- "href": "/domains/OAM/entity-types/ManagedElement/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9/relationships?offset=0&limit=100"
- },
- "last": {
- "href": "/domains/OAM/entity-types/ManagedElement/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9/relationships?offset=0&limit=100"
- },
- "totalCount": 0
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get all relationships for NRCellDU entity with invalid offset (greater than total count)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities/urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3/relationships?offset=1000"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid Value",
- "details": "Offset cannot be larger than 2"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 404: Get all relationships for non existing NRCellDU id."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities/non-existent/relationships"
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource is not found"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get all the available topology relationships types in REL_OAM_RAN domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_OCUCPFUNCTION",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_OCUCPFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_OCUUPFUNCTION",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_OCUUPFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_ODUFUNCTION",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_ORUFUNCTION",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships"
- }
- },
- {
- "name": "NRCELLDU_USES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/NRCELLDU_USES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "NRSECTORCARRIER_USES_ANTENNACAPABILITY",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships"
- }
- },
- {
- "name": "OCUCPFUNCTION_PROVIDES_NRCELLCU",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/OCUCPFUNCTION_PROVIDES_NRCELLCU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRCELLDU",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/ODUFUNCTION_PROVIDES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "SECTOR_GROUPS_NRCELLDU",
- "relationships": {
- "href": "/domains/REL_OAM_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships"
- }
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types?offset=0&limit=500"
- },
- "totalCount": 11
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(11)
- })
- jsonPath('$.items[0].name', byEquality())
- jsonPath('$.items[0].relationships.href', byEquality())
- jsonPath('$.items[1].name', byEquality())
- jsonPath('$.items[1].relationships.href', byEquality())
- jsonPath('$.items[2].name', byEquality())
- jsonPath('$.items[2].relationships.href', byEquality())
- jsonPath('$.items[3].name', byEquality())
- jsonPath('$.items[3].relationships.href', byEquality())
- jsonPath('$.items[4].name', byEquality())
- jsonPath('$.items[4].relationships.href', byEquality())
- jsonPath('$.items[5].name', byEquality())
- jsonPath('$.items[5].relationships.href', byEquality())
- jsonPath('$.items[6].name', byEquality())
- jsonPath('$.items[6].relationships.href', byEquality())
- jsonPath('$.items[7].name', byEquality())
- jsonPath('$.items[7].relationships.href', byEquality())
- jsonPath('$.items[8].name', byEquality())
- jsonPath('$.items[8].relationships.href', byEquality())
- jsonPath('$.items[9].name', byEquality())
- jsonPath('$.items[9].relationships.href', byEquality())
- jsonPath('$.items[10].name', byEquality())
- jsonPath('$.items[10].relationships.href', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all the available topology relationship types in REL_EQUIPMENT_RAN domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/relationship-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "ANTENNAMODULE_INSTALLED_AT_SITE",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_INSTALLED_AT_SITE/relationships"
- }
- },
- {
- "name": "ANTENNAMODULE_SERVES_ANTENNACAPABILITY",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships"
- }
- },
- {
- "name": "ANTENNAMODULE_SERVES_NRCELLDU",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_NRCELLDU/relationships"
- }
- },
- {
- "name": "NRCELLDU_USES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/NRCELLDU_USES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "NRSECTORCARRIER_USES_ANTENNACAPABILITY",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships"
- }
- },
- {
- "name": "OCUCPFUNCTION_PROVIDES_NRCELLCU",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/OCUCPFUNCTION_PROVIDES_NRCELLCU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRCELLDU",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ODUFUNCTION_PROVIDES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "SECTOR_GROUPS_ANTENNAMODULE",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_ANTENNAMODULE/relationships"
- }
- },
- {
- "name": "SECTOR_GROUPS_NRCELLDU",
- "relationships": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships"
- }
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types?offset=0&limit=500"
- },
- "totalCount": 10
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all the available topology relationship types in RAN domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/relationship-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "NRCELLDU_USES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/RAN/relationship-types/NRCELLDU_USES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "NRSECTORCARRIER_USES_ANTENNACAPABILITY",
- "relationships": {
- "href": "/domains/RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships"
- }
- },
- {
- "name": "OCUCPFUNCTION_PROVIDES_NRCELLCU",
- "relationships": {
- "href": "/domains/RAN/relationship-types/OCUCPFUNCTION_PROVIDES_NRCELLCU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRCELLDU",
- "relationships": {
- "href": "/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "SECTOR_GROUPS_NRCELLDU",
- "relationships": {
- "href": "/domains/RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships"
- }
- }
- ],
- "self": {
- "href": "/domains/RAN/relationship-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/RAN/relationship-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/RAN/relationship-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/RAN/relationship-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/RAN/relationship-types?offset=0&limit=500"
- },
- "totalCount": 6
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get all the available topology relationship types in TEIV."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEIV/relationship-types"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "name": "ANTENNAMODULE_INSTALLED_AT_SITE",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ANTENNAMODULE_INSTALLED_AT_SITE/relationships"
- }
- },
- {
- "name": "ANTENNAMODULE_SERVES_ANTENNACAPABILITY",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships"
- }
- },
- {
- "name": "ANTENNAMODULE_SERVES_NRCELLDU",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ANTENNAMODULE_SERVES_NRCELLDU/relationships"
- }
- },
- {
- "name": "CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT/relationships"
- }
- },
- {
- "name": "ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships"
- }
- },
- {
- "name": "ENTITYTYPEA_GROUPS_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ENTITYTYPEA_GROUPS_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships"
- }
- },
- {
- "name": "ENTITYTYPEA_INSTALLED_AT_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ENTITYTYPEA_INSTALLED_AT_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships"
- }
- },
- {
- "name": "ENTITYTYPEA_PROVIDES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ENTITYTYPEA_PROVIDES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships"
- }
- },
- {
- "name": "ENTITYTYPEA_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ENTITYTYPEA_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_OCUCPFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/MANAGEDELEMENT_MANAGES_OCUCPFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_OCUUPFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/MANAGEDELEMENT_MANAGES_OCUUPFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_ODUFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_ORUFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships"
- }
- },
- {
- "name": "NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE/relationships"
- }
- },
- {
- "name": "NFDEPLOYMENT_SERVES_OCUCPFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NFDEPLOYMENT_SERVES_OCUCPFUNCTION/relationships"
- }
- },
- {
- "name": "MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION/relationships"
- }
- },
- {
- "name": "NFDEPLOYMENT_SERVES_OCUCPFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NFDEPLOYMENT_SERVES_OCUCPFUNCTION/relationships"
- }
- },
- {
- "name": "NFDEPLOYMENT_SERVES_OCUUPFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NFDEPLOYMENT_SERVES_OCUUPFUNCTION/relationships"
- }
- },
- {
- "name": "NFDEPLOYMENT_SERVES_ODUFUNCTION",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NFDEPLOYMENT_SERVES_ODUFUNCTION/relationships"
- }
- },
- {
- "name": "NODECLUSTER_LOCATED_AT_OCLOUDSITE",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NODECLUSTER_LOCATED_AT_OCLOUDSITE/relationships"
- }
- },
- {
- "name": "NRCELLDU_USES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NRCELLDU_USES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "NRSECTORCARRIER_USES_ANTENNACAPABILITY",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships"
- }
- },
- {
- "name": "OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER/relationships"
- }
- },
- {
- "name": "OCUCPFUNCTION_PROVIDES_NRCELLCU",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/OCUCPFUNCTION_PROVIDES_NRCELLCU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRCELLDU",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships"
- }
- },
- {
- "name": "ODUFUNCTION_PROVIDES_NRSECTORCARRIER",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/ODUFUNCTION_PROVIDES_NRSECTORCARRIER/relationships"
- }
- },
- {
- "name": "SECTOR_GROUPS_ANTENNAMODULE",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/SECTOR_GROUPS_ANTENNAMODULE/relationships"
- }
- },
- {
- "name": "SECTOR_GROUPS_NRCELLDU",
- "relationships": {
- "href": "/domains/TEIV/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships"
- }
- }
- ],
- "self": {
- "href": "/domains/TEIV/relationship-types?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/TEIV/relationship-types?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/TEIV/relationship-types?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/TEIV/relationship-types?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/TEIV/relationship-types?offset=0&limit=500"
- },
- "totalCount": 30
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get all the available topology relationship types in invalid domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/INVALID/relationship-types"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Unknown domain",
- "details": "Unknown domain: INVALID, known domains: [CLOUD, EQUIPMENT, OAM, RAN, REL_CLOUD_RAN, REL_EQUIPMENT_RAN, REL_OAM_CLOUD, REL_OAM_RAN, TEIV, TEST]"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type MANAGEDELEMENT_MANAGES_ODUFUNCTION(OneToMany)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=661A89AD3C2702233CD9E96E97E738C05C35EC5FDF32DC78D149B773726350067315B72448D004C938BCD0263F0C4BCCC8A5F9CDD145B9B740983D1523664328"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6BD25E5C8FB7842F69010736253CC47F43535D7238E9E9A03E8092E8C019C83270DE47C96EF1049C40B83A130F9F129AE93B9C8538B6B004AE89BD0A098E48DD"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=9243B48F7D6A6CF471226915C74CF5FE4BDA6FA3CF7D897473007B46DF7FC50230BD6B8B4256116A6AFBF4D822CF9379EB56DE9490C1C0B54238263F2574B426"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,ODUFunction=28",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=ADD4A82DFBAF0409FA9D3C929A09314088627B447C733429D4EE7AAE2FFAEE4894F90826B6814B63431EC07140783C7861E463C5AF8330E29469D704675EAB43"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500"
- },
- "totalCount": 7
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(7)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].aSide', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].bSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].aSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].bSide', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].aSide', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].bSide', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].aSide', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].bSide', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].aSide', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].bSide', byEquality())
- jsonPath('$.items[5].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[5].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].aSide', byEquality())
- jsonPath('$.items[5].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].bSide', byEquality())
- jsonPath('$.items[6].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[6].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].aSide', byEquality())
- jsonPath('$.items[6].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].bSide', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type NRSECTORCARRIER_USES_ANTENNACAPABILITY(ManyToOne)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRSECTORCARRIER_USES_ANTENNACAPABILITY": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=1",
- "id": "urn:o-ran:smo:teiv:sha512:NRSECTORCARRIER_USES_ANTENNACAPABILITY=11EDFC31E2BE240D3CB15DB1A3FA3B78C828524BC8FCA3365A615129A61A627C21DA8EBF6DD788CDBDEC668344D1F79A371749083D6AE04DDDD57CB4FA8C3ECB"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRSECTORCARRIER_USES_ANTENNACAPABILITY": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=3",
- "id": "urn:o-ran:smo:teiv:sha512:NRSECTORCARRIER_USES_ANTENNACAPABILITY=1B891FCC4F5479BC71127ED2EB43EA26AC3452F8C47792786373442C10BBC408FE5B779BF1CF732C81220803342F4FB969E348F9C5CEEDEC78F9764E186C633F"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRSECTORCARRIER_USES_ANTENNACAPABILITY": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=2",
- "id": "urn:o-ran:smo:teiv:sha512:NRSECTORCARRIER_USES_ANTENNACAPABILITY=27DF07D016FE349EC565DE2FB09303EE7D8700346624046F79D8DAC176E7FA221E918E3030758B51931C430919E14FD7D16720460F6E1585000C72874A1641DA"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/RAN/relationship-types/NRSECTORCARRIER_USES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "totalCount": 3
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type ANTENNAMODULE_SERVES_ANTENNACAPABILITY(ManyToMany)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-equipment-ran:ANTENNAMODULE_SERVES_ANTENNACAPABILITY": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1",
- "aSide": "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7",
- "id": "urn:o-ran:smo:teiv:sha512:ANTENNAMODULE_SERVES_ANTENNACAPABILITY=8940999E2069725B463052BC35572FDB888C7B734459EE78A01B9F91E2607D87356425BC8EFF0B1C9057D852A4D3F9E1B09479D32FEE68C65EF2821B65F7BD80"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-equipment-ran:ANTENNAMODULE_SERVES_ANTENNACAPABILITY": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1",
- "aSide": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A",
- "id": "urn:o-ran:smo:teiv:sha512:ANTENNAMODULE_SERVES_ANTENNACAPABILITY=ABD52B030DF1169F9F41C898913EF30F7BB5741F53352F482310B280C90AC569B7D31D52A2BB41F1F0099AE1EDD56CACF0B285D145A5584D376DD45DED1E2D65"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/ANTENNAMODULE_SERVES_ANTENNACAPABILITY/relationships?offset=0&limit=500"
- },
- "totalCount": 2
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type MANAGEDELEMENT_MANAGES_ODUFUNCTION with offset=1 and limit=1."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=1&limit=1"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19",
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6BD25E5C8FB7842F69010736253CC47F43535D7238E9E9A03E8092E8C019C83270DE47C96EF1049C40B83A130F9F129AE93B9C8538B6B004AE89BD0A098E48DD"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=1&limit=1"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=1"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=1"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=2&limit=1"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=6&limit=1"
- },
- "totalCount": 7
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS where used-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters id is 'Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2'."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType1']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "LongEntityType1",
- "id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType1']"
- },
- "first": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType1']"
- },
- "prev": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType1']"
- },
- "next": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType1']"
- },
- "last": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType1']"
- },
- "totalCount": 1
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS where used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters id is 'Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2'."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "LongEntityType1",
- "id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
- },
- "first": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
- },
- "prev": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
- },
- "next": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
- },
- "last": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
- },
- "totalCount": 1
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type SECTOR_GROUPS_NRCELLDU where grouped-nrCellDu id is 'urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1'."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/grouped-nrCellDu[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "Sector=2",
- "id": "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/grouped-nrCellDu[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/grouped-nrCellDu[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/grouped-nrCellDu[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/grouped-nrCellDu[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/grouped-nrCellDu[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1']"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].bSide', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships of type SECTOR_GROUPS_NRCELLDU where relation id is 'urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463'."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/SECTOR_GROUPS_NRCELLDU[@id='urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "Sector=2",
- "id": "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/SECTOR_GROUPS_NRCELLDU[@id='urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463']"
- },
- "first": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/SECTOR_GROUPS_NRCELLDU[@id='urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463']"
- },
- "prev": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/SECTOR_GROUPS_NRCELLDU[@id='urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463']"
- },
- "next": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/SECTOR_GROUPS_NRCELLDU[@id='urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463']"
- },
- "last": {
- "href": "/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships?offset=0&limit=100&scopeFilter=/SECTOR_GROUPS_NRCELLDU[@id='urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463']"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:SECTOR_GROUPS_NRCELLDU[0].bSide', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology relationships for same entity long relationship name of type ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType2",
- "aSide": "LongEntityType1",
- "id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
- }
- ]
- },
- {
- "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
- {
- "bSide": "LongEntityType3",
- "aSide": "LongEntityType2",
- "id": "Rel_OneToOne_SameEntity_LongEntityType2_LongEntityType3"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=500"
- },
- "totalCount": 2
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get empty items array when no relationship exists of given type."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ORUFUNCTION": []
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ORUFUNCTION/relationships?offset=0&limit=500"
- },
- "totalCount": 0
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get relationship by type checking total count"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=714C1B73945C298CAA03FE0D800053CDD1C571BBF375DC647B9F23FDA861CEB369832A3593BB1AA4B8A7245AD187ED24ADDF6FB147130827CDC17BA8370C4838"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=93",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=7723E5D5B3332E0890EAA620C77A6A47065E15A2EA28AD83F3B3CFEA5A7E3BB5965AE78890F1BF000EAA89BF8DE209E506192BF5EA6871426603ED76CBFAF088"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=78ECC09D4832328976EF0F9C19699EE05D98E3837368D386AE39AD027543494AC620086BD2A7403DACFAA7B474B3DEBD313E0906F1EDE7FA2B584E16542A706A"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=92",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=DDECCEFB8831FA4EB21B121BA35EAB07ED8D841B5A38580C5F3AD11E66FE73D2FC42E823C6C73288860C7562B610C3D07B6C39FD386171A3BE622096F4B3D006"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships?offset=0&limit=500"
- },
- "first": {
- "href": "/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships?offset=0&limit=500"
- },
- "prev": {
- "href": "/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships?offset=0&limit=500"
- },
- "next": {
- "href": "/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships?offset=0&limit=500"
- },
- "last": {
- "href": "/domains/RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships?offset=0&limit=500"
- },
- "totalCount": 5
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(5)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].bSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].bSide', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].bSide', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].bSide', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].id', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].aSide', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU[0].bSide', byEquality())
- jsonPath('$.totalCount', byEquality())
- }
- }
- },
- Contract.make {
- description "ERROR - 400: Get topology relationships of type MANAGEDELEMENT_MANAGES_ODUFUNCTION with invalid offset (greater than total count)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=1000"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid Value",
- "details": "Offset cannot be larger than 6"
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get topology relationships of type SECTOR_GROUPS_NRCELLDU with wrong domain."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/OAM/relationship-types/SECTOR_GROUPS_NRCELLDU/relationships"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Unknown relationship type",
- "details": "Relationship type SECTOR_GROUPS_NRCELLDU is not part of the domain OAM, known relationship types: []"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get relationship with specified id"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_EQUIPMENT_RAN/relationship-types/SECTOR_GROUPS_ANTENNAMODULE/relationships/urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512"
- }
- response {
- status OK()
- headers {
- contentType('application/yang.data+json')
- }
- body('''{
- "o-ran-smo-teiv-rel-equipment-ran:SECTOR_GROUPS_ANTENNAMODULE": [
- {
- "bSide": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A",
- "aSide": "Sector=2",
- "id": "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512",
- "sourceIds": []
- }
- ]
- }''')
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get relationship with specified id"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/ODUFUNCTION_PROVIDES_NRCELLDU/relationships/urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C"
- }
- response {
- status OK()
- headers {
- contentType('application/yang.data+json')
- }
- body('''{
- "o-ran-smo-teiv-ran:ODUFUNCTION_PROVIDES_NRCELLDU": [
- {
- "bSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "aSide": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9",
- "id": "urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C",
- "sourceIds": []
- }
- ]
- }''')
- }
- },
- Contract.make {
- description "ERROR - 400: Get relationship with non existing id 'non-existing-id'"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships/non-existing-id"
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource is not found"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.data
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get entities in RAN domain with targetFilter=/ODUFunction/attributes(gNBDUId)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/attributes(gNBDUId)"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBDUId": null
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBDUId": null
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBDUId": null
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBDUId": 16
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBDUId": null
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBDUId": null
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,ODUFunction=28"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBDUId": null
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/attributes(gNBDUId)"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/attributes(gNBDUId)"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/attributes(gNBDUId)"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/attributes(gNBDUId)"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/attributes(gNBDUId)"
- },
- "totalCount": 7
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(7)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].attributes.gNBDUId', byNull())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].attributes.gNBDUId', byNull())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].attributes.gNBDUId', byNull())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-ran:ODUFunction[0].attributes.gNBDUId', byRegex(anInteger()).asInteger())
- jsonPath('$.items[4].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-ran:ODUFunction[0].attributes.gNBDUId', byNull())
- jsonPath('$.items[5].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[5].o-ran-smo-teiv-ran:ODUFunction[0].attributes.gNBDUId', byNull())
- jsonPath('$.items[6].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[6].o-ran-smo-teiv-ran:ODUFunction[0].attributes.gNBDUId', byNull())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities in TEIV domain with targetFilter=/AntennaModule;/OCUUPFunction."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/TEIV/entities?offset=0&limit=100&targetFilter=/AntennaModule;/OCUUPFunction"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=72AC3D5E2A5F1C47BD09258A9F7B48E0123E9AD752AC54F7E8D8F9D3A6BC487A89A762A5D12CB9D148BB9E5D53A4F3F981345ACDF7B4CB55D67BC12A13FD5B7A"
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=84A3E5D7C916F4B2390DC45F178BE6A9235FD80CB41972E3456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123"
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7"
- }
- ]
- },
- {
- "o-ran-smo-teiv-equipment:AntennaModule": [
- {
- "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=B7F52C914E8D36A0185BC9D47EF230A95C681D7B4F923E0A5D8C741F6B9203E85A4D967B312C8F405E9B7831A6D2C5904F8B3E167A9D204C5B8371F9E6A02D45"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUUPFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,OCUUPFunction=13"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,OCUUPFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUUPFunction=16"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,OCUUPFunction=19"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,OCUUPFunction=28"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/TEIV/entities?offset=0&limit=100&targetFilter=/AntennaModule;/OCUUPFunction"
- },
- "first": {
- "href": "/domains/TEIV/entities?offset=0&limit=100&targetFilter=/AntennaModule;/OCUUPFunction"
- },
- "prev": {
- "href": "/domains/TEIV/entities?offset=0&limit=100&targetFilter=/AntennaModule;/OCUUPFunction"
- },
- "next": {
- "href": "/domains/TEIV/entities?offset=0&limit=100&targetFilter=/AntennaModule;/OCUUPFunction"
- },
- "last": {
- "href": "/domains/TEIV/entities?offset=0&limit=100&targetFilter=/AntennaModule;/OCUUPFunction"
- },
- "totalCount": 12
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(12)
- })
- jsonPath('$.items[5].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[6].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[7].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[8].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[9].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[10].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[11].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[3].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- jsonPath('$.items[4].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities in RAN domain with scopeFilter=/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=1')] or /NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=2')] and targetFilter=/NRCellDU/sourceIds."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&scopeFilter=/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]|/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=2')]&targetFilter=/NRCellDU/sourceIds"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "sourceIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:NRCellDU":[
- {
- "id":"urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2",
- "sourceIds":[
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2",
- "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"
- ]
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/sourceIds&scopeFilter=/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]|/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=2')]"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/sourceIds&scopeFilter=/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]|/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=2')]"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/sourceIds&scopeFilter=/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]|/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=2')]"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/sourceIds&scopeFilter=/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]|/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=2')]"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/sourceIds&scopeFilter=/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]|/NRCellDU/sourceIds[contains(@item,'ManagedElement=9,ODUFunction=9,NRCellDU=2')]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].sourceIds[0]', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].sourceIds[1]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].sourceIds[0]', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].sourceIds[1]', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities in RAN domain with scopeFilter=/NRCellDU/attributes[@cellLocalId=1] and targetFilter=/NRCellDU/attributes(nCI)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]&targetFilter=/NRCellDU/attributes(nCI)"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1",
- "attributes": {
- "nCI": 1
- }
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/attributes(nCI)&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/attributes(nCI)&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/attributes(nCI)&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/attributes(nCI)&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU/attributes(nCI)&scopeFilter=/NRCellDU/attributes[@cellLocalId=1]"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].attributes.nCI', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get topology for an entity with given ID (exact ID match) without knowing entity type."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?scopeFilter=/id[text()='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/id[text()='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/id[text()='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/id[text()='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/id[text()='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/id[text()='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2']"
- },
- "totalCount": 1
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(1)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get empty items array when no entity exists of given filter criteria."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&scopeFilter=/NRCellDU/attributes[@cellLocalId=8989439]&targetFilter=/NRCellDU"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU&scopeFilter=/NRCellDU/attributes[@cellLocalId=8989439]"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU&scopeFilter=/NRCellDU/attributes[@cellLocalId=8989439]"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU&scopeFilter=/NRCellDU/attributes[@cellLocalId=8989439]"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU&scopeFilter=/NRCellDU/attributes[@cellLocalId=8989439]"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/NRCellDU&scopeFilter=/NRCellDU/attributes[@cellLocalId=8989439]"
- },
- "totalCount": 0
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(0)
- })
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities in RAN domain with scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10'] and targetFilter=/attributes."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']&targetFilter=/attributes"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "attributes": {
- "gNBId": 10,
- "pLMNId": {
- "mcc": "456",
- "mnc": "83"
- },
- "gNBIdLength": 2,
- "gNBCUName": "ocucp-10"
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUCPFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "attributes": {
- "gNBId": 10,
- "gNBIdLength": 2
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUUPFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBId": 10,
- "gNBDUId": null,
- "gNBIdLength": 2
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[1].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities in RAN domain with scopeFilter=/managed-by-managedElement; /attributes[@gNBId=10] and targetFilter=/attributes."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']&targetFilter=/attributes"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "attributes": {
- "gNBId": 10,
- "pLMNId": {
- "mcc": "456",
- "mnc": "83"
- },
- "gNBIdLength": 2,
- "gNBCUName": "ocucp-10"
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUCPFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUUPFunction": [
- {
- "attributes": {
- "gNBId": 10,
- "gNBIdLength": 2
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUUPFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "attributes": {
- "gNBId": 10,
- "gNBDUId": null,
- "gNBIdLength": 2
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes&scopeFilter=/managed-by-managedElement[@id='urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10']"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[1].o-ran-smo-teiv-ran:OCUUPFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities in RAN domain with scopeFilter=/attributes[@gNBIdLength=1]; /NRCellDU/attributes[@nCI=1] and targetFilter=/attributes(gNBId, pLMNId); /NRCellDU."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/attributes[@gNBIdLength=1]; /NRCellDU/attributes[@nCI=1]&targetFilter=/attributes(gNBId, pLMNId); /NRCellDU"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "attributes": {
- "pLMNId": {
- "mcc": "456",
- "mnc": "82"
- },
- "gNBId": 9
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUCPFunction=9"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes(gNBId, pLMNId); /NRCellDU&scopeFilter=/attributes[@gNBIdLength=1]; /NRCellDU/attributes[@nCI=1]"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes(gNBId, pLMNId); /NRCellDU&scopeFilter=/attributes[@gNBIdLength=1]; /NRCellDU/attributes[@nCI=1]"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes(gNBId, pLMNId); /NRCellDU&scopeFilter=/attributes[@gNBIdLength=1]; /NRCellDU/attributes[@nCI=1]"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes(gNBId, pLMNId); /NRCellDU&scopeFilter=/attributes[@gNBIdLength=1]; /NRCellDU/attributes[@nCI=1]"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=500&targetFilter=/attributes(gNBId, pLMNId); /NRCellDU&scopeFilter=/attributes[@gNBIdLength=1]; /NRCellDU/attributes[@nCI=1]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[1].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get entities in RAN domain with scopeFilter on 2 different entity types and combining the condition on complex attributes"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?scopeFilter=/NRCellDU/attributes[@nCI=1];/OCUCPFunction/attributes/pLMNId[@mcc='456' or @mnc='83']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:NRCellDU": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUCPFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:OCUCPFunction": [
- {
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUCPFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/NRCellDU/attributes[@nCI=1];/OCUCPFunction/attributes/pLMNId[@mcc='456' or @mnc='83']"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/NRCellDU/attributes[@nCI=1];/OCUCPFunction/attributes/pLMNId[@mcc='456' or @mnc='83']"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/NRCellDU/attributes[@nCI=1];/OCUCPFunction/attributes/pLMNId[@mcc='456' or @mnc='83']"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/NRCellDU/attributes[@nCI=1];/OCUCPFunction/attributes/pLMNId[@mcc='456' or @mnc='83']"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/NRCellDU/attributes[@nCI=1];/OCUCPFunction/attributes/pLMNId[@mcc='456' or @mnc='83']"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[1].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:OCUCPFunction[0].id', byEquality())
- jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "ERROR - 400: Get entities in RAN domain with invalid offset (greater than total count)."
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?&targetFilter=/NRCellDU;&offset=1000"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid Value",
- "details": "Offset cannot be larger than 5"
- }''')
- }
- },
- Contract.make {
- description "Error - 400: Get entities with wrong syntax items instead of item with scopeFilter=/NRCellDU/sourceIds[contains(@items,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&scopeFilter=/NRCellDU/sourceIds[contains(@items,'ManagedElement=9,ODUFunction=9,NRCellDU=1')]"
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid parameter error",
- "details": "Invalid source id parameter provided for NRCellDU"
- }''')
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.decorators
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get decorators using getTopologyByEntityTypeName - EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 456
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get decorators using getTopologyByEntityTypeName - CONTAINS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 456
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get decorators using getTopologyByEntityTypeName - CONTAINS and EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]"
- },
- "first": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]"
- },
- "prev": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]"
- },
- "next": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]"
- },
- "last": {
- "href": "/domains/RAN/entity-types/ODUFunction/entities?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.decorators
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get decorators using getRelationshipsByType - EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 456
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']&targetFilter=/decorators"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']&targetFilter=/decorators"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']&targetFilter=/decorators"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']&targetFilter=/decorators"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[@test-app-module:textdata = 'Stockholm']&targetFilter=/decorators"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get decorators using getRelationshipsByType - CONTAINS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 456
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]&targetFilter=/decorators"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]&targetFilter=/decorators"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]&targetFilter=/decorators"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]&targetFilter=/decorators"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')]&targetFilter=/decorators"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get decorators using getRelationshipsByType - CONTAINS and EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&targetFilter=/decorators&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA"
- }
- ]
- },
- {
- "o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]&targetFilter=/decorators"
- },
- "first": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]&targetFilter=/decorators"
- },
- "prev": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]&targetFilter=/decorators"
- },
- "next": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]&targetFilter=/decorators"
- },
- "last": {
- "href": "/domains/REL_OAM_RAN/relationship-types/MANAGEDELEMENT_MANAGES_ODUFUNCTION/relationships?offset=0&limit=500&scopeFilter=/decorators[contains(@test-app-module:textdata, 'Stock')] ; /decorators[@test-app-module:intdata = 123]&targetFilter=/decorators"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-rel-oam-ran:MANAGEDELEMENT_MANAGES_ODUFUNCTION[0].id', byEquality())
- }
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.decorators
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "SUCCESS - 200: Get decorators using getEntitiesByDomain - EQUALS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123]"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123]"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123]"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123]"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123]"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get decorators using getEntitiesByDomain - CONTAINS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 456
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "totalCount": 3
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(3)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[2].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 200: Get decorators using getEntitiesByDomain - EQUALS and CONTAINS"
- request {
- method GET()
- url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123];/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- }
- response {
- status OK()
- headers {
- contentType('application/json')
- }
- body('''{
- "items": [
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- }
- ]
- },
- {
- "o-ran-smo-teiv-ran:ODUFunction": [
- {
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16"
- }
- ]
- }
- ],
- "self": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123];/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "first": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123];/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "prev": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123];/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "next": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123];/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "last": {
- "href": "/domains/RAN/entities?offset=0&limit=100&targetFilter=/ODUFunction/decorators&scopeFilter=/ODUFunction/decorators[@test-app-module:intdata=123];/ODUFunction/decorators[contains(@test-app-module:textdata,'Stock')]"
- },
- "totalCount": 2
- }''')
- bodyMatchers {
- jsonPath('$.items', byType {
- occurrence(2)
- })
- jsonPath('$.items[0].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- jsonPath('$.items[1].o-ran-smo-teiv-ran:ODUFunction[0].id', byEquality())
- }
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.decorators
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "NOT FOUND - 404: Merge decorators with wrong entity ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "entityIds": [
- "WRONG_ENTITY_ID",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [WRONG_ENTITY_ID] Relationships: []"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "NOT FOUND - 404: Merge decorators with wrong relationship ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512",
- "WRONG_RELATIONSHIP_ID"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [] Relationships: [WRONG_RELATIONSHIP_ID]"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "NOT FOUND - 404: Merge decorators with wrong entity and relationship ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "entityIds": [
- "WRONG_ENTITY_ID",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "relationshipIds": [
- "WRONG_RELATIONSHIP_ID"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [WRONG_ENTITY_ID] Relationships: [WRONG_RELATIONSHIP_ID]"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "NOT FOUND - 404: Merge invalid decorators."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:te": "Budapest",
- "test-app-module:intdata": "123"
- },
- "entityIds": [
- "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Invalid decorators",
- "details": "The provided decorators are invalid {test-app-module:intdata=is_not_compatible, test-app-module:te=is_not_available}"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 204: Merge valid decorators, no topology object given."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "operation": "merge"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Merge valid decorators to entities (add)."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "entityIds": [
- "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Merge valid decorators to relationships (add)."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512",
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=CEEC51BE136D671D2101C09FEDD8A1D95E1E177A4818E9FC0D6E63E610BC8FE26FC9C729A1E58AD43D70472F4CD54403E25CB1E5D2BBA66966625C21435C4A78"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Merge valid decorators to entities and relationships (add)."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Budapest",
- "test-app-module:intdata": 123
- },
- "entityIds": [
- "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Merge valid decorators to entities and relationships (update)."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Athlone",
- "test-app-module:intdata": 456
- },
- "entityIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=661A89AD3C2702233CD9E96E97E738C05C35EC5FDF32DC78D149B773726350067315B72448D004C938BCD0263F0C4BCCC8A5F9CDD145B9B740983D1523664328"
- ],
- "operation": "merge"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- }
-]
+++ /dev/null
-/*
- * ============LICENSE_START=======================================================
- * Copyright (C) 2024 Ericsson
- * Modifications Copyright (C) 2024 OpenInfra Foundation Europe
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * SPDX-License-Identifier: Apache-2.0
- * ============LICENSE_END=========================================================
- */
-package contracts.decorators
-
-import org.springframework.cloud.contract.spec.Contract
-
-[
- Contract.make {
- description "NOT FOUND - 404: Delete decorators with wrong entity ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 1
- },
- "entityIds": [
- "WRONG_ENTITY_ID",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [WRONG_ENTITY_ID] Relationships: []"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "NOT FOUND - 404: Delete decorators with wrong relationship ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 2
- },
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512",
- "WRONG_RELATIONSHIP_ID"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [] Relationships: [WRONG_RELATIONSHIP_ID]"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "NOT FOUND - 404: Delete decorators with wrong entity and relationship ids."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 3
- },
- "entityIds": [
- "WRONG_ENTITY_ID",
- "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
- ],
- "relationshipIds": [
- "WRONG_RELATIONSHIP_ID"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NOT_FOUND()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "NOT_FOUND",
- "message": "Resource Not Found",
- "details": "The requested resource with the following ids cannot be found. Entities: [WRONG_ENTITY_ID] Relationships: [WRONG_RELATIONSHIP_ID]"
- }''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "BAD REQUEST - 400: Delete decorators from non-existing schema."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module-wrong:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "entityIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status BAD_REQUEST()
- headers {
- contentType('application/problem+json')
- }
- body('''{
- "status": "BAD_REQUEST",
- "message": "Invalid schema name",
- "details": "Invalid schema name: test-app-module-wrong"}''')
- bodyMatchers {
- jsonPath('$.status', byEquality())
- jsonPath('$.message', byEquality())
- jsonPath('$.details', byEquality())
- }
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete invalid decorators, no topology object given."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid decorators, no topology object given."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid decorators on entities."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "entityIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid decorators on relationships."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA",
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- },
- Contract.make {
- description "SUCCESS - 204: Delete valid decorators on entities and relationships."
- request {
- method POST()
- url "/topology-inventory/v1alpha11/decorators"
- headers {
- contentType("application/json")
- accept('application/problem+json')
- }
- body('''{
- "decorators": {
- "test-app-module:textdata": "Stockholm",
- "test-app-module:intdata": 123
- },
- "entityIds": [
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13",
- "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14"
- ],
- "relationshipIds": [
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA",
- "urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7"
- ],
- "operation": "delete"
- }''')
- }
- response {
- status NO_CONTENT()
- }
- }
-]
})
}
}
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of type AntennaCapability inside the specified Polygon of AntennaModule'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:AntennaCapability": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "first": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "next": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "last": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "totalCount": 1
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(1)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description "SUCCESS - 200: Get entities of type AntennaCapability by AntennaModule id"
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:AntennaCapability": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "first": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "prev": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "next": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "last": {
+ "href": "/domains/RAN/entity-types/AntennaCapability/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "totalCount": 1
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(1)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of type NRCellDU 500 meters radius of AntennaModule'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "first": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "next": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "last": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "totalCount": 1
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(1)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ //44
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of type NRCellDU where AntennaModule antennaModelNumber is 5'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@antennaModelNumber='5']"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@antennaModelNumber='5']"
+ },
+ "first": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@antennaModelNumber='5']"
+ },
+ "prev": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@antennaModelNumber='5']"
+ },
+ "next": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@antennaModelNumber='5']"
+ },
+ "last": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@antennaModelNumber='5']"
+ },
+ "totalCount": 2
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(2)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description "SUCCESS - 200: Get entities of type NRCellDU by Sector id"
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "first": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "prev": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "next": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "last": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of type AntennaModule inside the specified Polygon of Sector'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-equipment:AntennaModule": [
+ {
+ "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-equipment:AntennaModule": [
+ {
+ "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=84A3E5D7C916F4B2390DC45F178BE6A9235FD80CB41972E3456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-equipment:AntennaModule": [
+ {
+ "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "first": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "prev": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "next": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "last": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of type AntennaModule inside the specified Polygon of Sector'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-equipment:AntennaModule": [
+ {
+ "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-equipment:AntennaModule": [
+ {
+ "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=84A3E5D7C916F4B2390DC45F178BE6A9235FD80CB41972E3456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-equipment:AntennaModule": [
+ {
+ "id": "urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "first": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "prev": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "next": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "last": {
+ "href": "/domains/EQUIPMENT/entity-types/AntennaModule/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-equipment:AntennaModule[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of type NRCellDU where Sector sectorId is 2'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "first": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "next": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "last": {
+ "href": "/domains/RAN/entity-types/NRCellDU/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of type Sector where NRCellDU cellLocalId is 3'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entity-types/Sector/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:Sector": [
+ {
+ "id": "Sector=2"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entity-types/Sector/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "first": {
+ "href": "/domains/RAN/entity-types/Sector/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entity-types/Sector/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "next": {
+ "href": "/domains/RAN/entity-types/Sector/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "last": {
+ "href": "/domains/RAN/entity-types/Sector/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "totalCount": 1
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(1)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:Sector[0].id', byEquality())
+ }
+ }
}
]
body('''{
"status": "NOT_FOUND",
"message": "Resource Not Found",
- "details": "The requested resource is not found"
+ "details": "The requested resource is not found. ID: non-existing-id"
}''')
}
}
body('''{
"status": "NOT_FOUND",
"message": "Resource Not Found",
- "details": "The requested resource is not found"
+ "details": "The requested resource is not found. ID: non-existent"
}''')
}
},
}
},
Contract.make {
- description "SUCCESS - 200: Get topology relationships of type ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS where used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters id is 'Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2'."
+ description "SUCCESS - 200: Get topology relationships of type ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS where used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters id is 'LongEntityType2'."
request {
method GET()
url "/topology-inventory/v1alpha11/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
"id": "Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2"
}
]
+ },
+ {
+ "test-built-in-module:ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS": [
+ {
+ "bSide": "LongEntityType3",
+ "aSide": "LongEntityType2",
+ "id": "Rel_OneToOne_SameEntity_LongEntityType2_LongEntityType3"
+ }
+ ]
}
],
"self": {
"last": {
"href": "/domains/TEST/relationship-types/ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS_USES_ENTITYTYPEAWITHENTITYTYPENAMELENGTHLONGERTHANSIXTYTHREECHARACTERS/relationships?offset=0&limit=100&scopeFilter=/used-by-entityTypeAWithEntityTypeNameLengthLongerThanSixtyThreeCharacters[@id='LongEntityType2']"
},
- "totalCount": 1
+ "totalCount": 2
}''')
}
},
body('''{
"status": "NOT_FOUND",
"message": "Resource Not Found",
- "details": "The requested resource is not found"
+ "details": "The requested resource is not found. ID: non-existing-id"
}''')
}
}
})
}
}
+ },
+ Contract.make {
+ description "SUCCESS - 200: Get entities of domain RAN by AntennaModule id"
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:AntennaCapability": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule[@id='urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7']"
+ },
+ "totalCount": 2
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(2)
+ })
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of domain RAN inside the specified Polygon of AntennaModule'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:AntennaCapability": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[coveredBy(@geo-location, 'POLYGON((48 68, 50 68, 50 69, 48 69, 48 68))')]"
+ },
+ "totalCount": 2
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(2)
+ })
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of domain RAN within 500 meters radius of AntennaModule'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:AntennaCapability": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[withinMeters(@geo-location, 'POINT(49.40199 68.94199)', 500)]"
+ },
+ "totalCount": 2
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(2)
+ })
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of domain RAN where AntennaModule electricalAntennaTilt is 11'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@electricalAntennaTilt=11]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:AntennaCapability": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:AntennaCapability": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@electricalAntennaTilt=11]"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@electricalAntennaTilt=11]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@electricalAntennaTilt=11]"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@electricalAntennaTilt=11]"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/serving-antennaModule/attributes[@electricalAntennaTilt=11]"
+ },
+ "totalCount": 4
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(4)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
+ jsonPath('$.items[3].o-ran-smo-teiv-ran:AntennaCapability[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description "SUCCESS - 200: Get entities of domain RAN by Sector id"
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector[@id='Sector=2']"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of domain RAN inside the specified Polygon of Sector'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[coveredBy(@geo-location, 'POLYGON((60 18, 61 18, 61 20, 60 20, 60 18))')]"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of domain RAN within 500 meters radius of Sector'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[withinMeters(@geo-location, 'POINT(60.4019881 18.9419888)', 500)]"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of domain RAN where Sector sectorId is 2'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2"
+ }
+ ]
+ },
+ {
+ "o-ran-smo-teiv-ran:NRCellDU": [
+ {
+ "id": "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-by-sector/attributes[@sectorId=2]"
+ },
+ "totalCount": 3
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(3)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[1].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ jsonPath('$.items[2].o-ran-smo-teiv-ran:NRCellDU[0].id', byEquality())
+ }
+ }
+ },
+ Contract.make {
+ description 'SUCCESS - 200: Get entities of domain RAN where NRCellDU cellLocalId is 3'
+ request {
+ method GET()
+ url "/topology-inventory/v1alpha11/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ }
+ response {
+ status OK()
+ headers {
+ contentType('application/json')
+ }
+ body('''{
+ "items": [
+ {
+ "o-ran-smo-teiv-ran:Sector": [
+ {
+ "id": "Sector=2"
+ }
+ ]
+ }
+ ],
+ "self": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "first": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "prev": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "next": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "last": {
+ "href": "/domains/RAN/entities?offset=0&limit=500&scopeFilter=/grouped-nrCellDu/attributes[@cellLocalId=3]"
+ },
+ "totalCount": 1
+ }''')
+ bodyMatchers {
+ jsonPath('$.items', byType {
+ occurrence(1)
+ })
+ jsonPath('$.items[0].o-ran-smo-teiv-ran:Sector[0].id', byEquality())
+ }
+ }
}
]
body ('''{
"status": "NOT_FOUND",
"message": "Resource Not Found",
- "details": "The requested resource is not found"
+ "details": "The requested resource is not found. ID: urn:3gpp:dn:non-existing-odufunction"
}''')
}
},
+++ /dev/null
---
--- ============LICENSE_START=======================================================
--- Copyright (C) 2024 Ericsson
--- Modifications Copyright (C) 2024 OpenInfra Foundation Europe
--- ================================================================================
--- Licensed under the Apache License, Version 2.0 (the "License");
--- you may not use this file except in compliance with the License.
--- You may obtain a copy of the License at
---
--- http://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing, software
--- distributed under the License is distributed on an "AS IS" BASIS,
--- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--- See the License for the specific language governing permissions and
--- limitations under the License.
---
--- SPDX-License-Identifier: Apache-2.0
--- ============LICENSE_END=========================================================
---
-
-BEGIN;
-
-CREATE EXTENSION IF NOT EXISTS postgis;
-CREATE EXTENSION IF NOT EXISTS postgis_topology;
-CREATE EXTENSION IF NOT EXISTS pg_trgm;
-
-GRANT USAGE ON SCHEMA topology to :pguser;
-GRANT SELECT ON ALL SEQUENCES IN SCHEMA topology TO :pguser;
-GRANT SELECT ON ALL TABLES IN SCHEMA topology TO :pguser;
-
-CREATE SCHEMA IF NOT EXISTS ties_data;
-ALTER SCHEMA ties_data OWNER TO :pguser;
-SET default_tablespace = '';
-SET default_table_access_method = heap;
-
-SET ROLE :pguser;
-
--- Function to create CONSTRAINT only if it does not exists
-CREATE OR REPLACE FUNCTION ties_data.create_constraint_if_not_exists (
- t_name TEXT, c_name TEXT, constraint_sql TEXT
-)
-RETURNS void AS
-$$
-BEGIN
- IF NOT EXISTS (SELECT constraint_name FROM information_schema.table_constraints WHERE table_schema = 'ties_data' AND table_name = t_name AND constraint_name = c_name) THEN
- EXECUTE constraint_sql;
- END IF;
-END;
-$$ language 'plpgsql';
-
-CREATE OR REPLACE FUNCTION ties_data.create_enum_type(
- schema_name TEXT, type_name TEXT, enum_values TEXT[]
-) RETURNS VOID AS $$
-BEGIN
- IF NOT EXISTS (SELECT 1 FROM pg_type t JOIN pg_namespace n ON n.oid = t.typnamespace WHERE t.typname = type_name AND n.nspname = schema_name) THEN
- EXECUTE format('CREATE TYPE %I.%I AS ENUM (%s)',schema_name, type_name, array_to_string(ARRAY(SELECT quote_literal(value) FROM unnest(enum_values) AS value), ', '));
- END IF;
-END;
-$$ language 'plpgsql';
-
-SELECT ties_data.create_enum_type('ties_data', 'Reliability', ARRAY['OK', 'RESTORED', 'ADVISED']);
-
-CREATE TABLE IF NOT EXISTS ties_data."responsible_adapter" (
- "id" TEXT,
- "hashed_id" BYTEA
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'responsible_adapter',
- 'PK_responsible_adapter_id',
- 'ALTER TABLE ties_data."responsible_adapter" ADD CONSTRAINT "PK_responsible_adapter_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'responsible_adapter',
- 'UNIQUE_responsible_adapter_hashed_id',
- 'ALTER TABLE ties_data."responsible_adapter" ADD CONSTRAINT "UNIQUE_responsible_adapter_hashed_id" UNIQUE ("hashed_id");'
-);CREATE TABLE IF NOT EXISTS ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" (
- "id" TEXT,
- "aSide_NFDeployment" TEXT,
- "bSide_NearRTRICFunction" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" (
- "id" TEXT,
- "aSide_AntennaModule" TEXT,
- "bSide_AntennaCapability" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" (
- "id" TEXT,
- "name" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" (
- "id" TEXT,
- "aSide_NFDeployment" TEXT,
- "bSide_OCloudNamespace" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-cloud_NFDeployment" (
- "id" TEXT,
- "name" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_comprised-by-cloudifiedNF" TEXT,
- "REL_ID_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" TEXT,
- "REL_CD_sourceIds_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" jsonb,
- "REL_CD_classifiers_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" jsonb,
- "REL_CD_decorators_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" jsonb,
- "REL_metadata_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" jsonb,
- "REL_FK_serviced-managedElement" TEXT,
- "REL_ID_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" TEXT,
- "REL_CD_sourceIds_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" jsonb,
- "REL_CD_classifiers_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" jsonb,
- "REL_CD_decorators_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" jsonb,
- "REL_metadata_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "REL_CD_sourceIds_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "REL_CD_classifiers_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "REL_CD_decorators_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "REL_CD_sourceIds_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "REL_CD_classifiers_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NFDeployment" ALTER COLUMN "REL_CD_decorators_NFDEPLOYMENT_SERVES_MANAGEDELEMENT" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" (
- "id" TEXT,
- "aSide_NodeCluster" TEXT,
- "bSide_OCloudSite" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-cloud_NodeCluster" (
- "id" TEXT,
- "name" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NodeCluster" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NodeCluster" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_NodeCluster" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" (
- "id" TEXT,
- "name" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_deployed-on-nodeCluster" TEXT,
- "REL_ID_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" TEXT,
- "REL_CD_sourceIds_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" jsonb,
- "REL_CD_classifiers_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" jsonb,
- "REL_CD_decorators_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" jsonb,
- "REL_metadata_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ALTER COLUMN "REL_CD_sourceIds_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ALTER COLUMN "REL_CD_classifiers_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ALTER COLUMN "REL_CD_decorators_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-cloud_OCloudSite" (
- "id" TEXT,
- "geo-location" geography,
- "name" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudSite" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudSite" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-cloud_OCloudSite" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-equipment_AntennaModule" (
- "id" TEXT,
- "antennaBeamWidth" jsonb,
- "antennaModelNumber" TEXT,
- "azimuth" DECIMAL,
- "electricalAntennaTilt" INTEGER,
- "geo-location" geography,
- "horizontalBeamWidth" DECIMAL,
- "mechanicalAntennaBearing" INTEGER,
- "mechanicalAntennaTilt" INTEGER,
- "positionWithinSector" TEXT,
- "totalTilt" INTEGER,
- "verticalBeamWidth" DECIMAL,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_installed-at-site" TEXT,
- "REL_ID_ANTENNAMODULE_INSTALLED_AT_SITE" TEXT,
- "REL_CD_sourceIds_ANTENNAMODULE_INSTALLED_AT_SITE" jsonb,
- "REL_CD_classifiers_ANTENNAMODULE_INSTALLED_AT_SITE" jsonb,
- "REL_CD_decorators_ANTENNAMODULE_INSTALLED_AT_SITE" jsonb,
- "REL_metadata_ANTENNAMODULE_INSTALLED_AT_SITE" jsonb,
- "REL_FK_grouped-by-sector" TEXT,
- "REL_ID_SECTOR_GROUPS_ANTENNAMODULE" TEXT,
- "REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE" jsonb,
- "REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE" jsonb,
- "REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE" jsonb,
- "REL_metadata_SECTOR_GROUPS_ANTENNAMODULE" jsonb,
- "REL_FK_grouped-by-sector" TEXT,
- "REL_ID_SECTOR_GROUPS_ANTENNAMODULE" TEXT,
- "REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE" jsonb,
- "REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE" jsonb,
- "REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE" jsonb,
- "REL_metadata_SECTOR_GROUPS_ANTENNAMODULE" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_sourceIds_ANTENNAMODULE_INSTALLED_AT_SITE" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_classifiers_ANTENNAMODULE_INSTALLED_AT_SITE" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_decorators_ANTENNAMODULE_INSTALLED_AT_SITE" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ALTER COLUMN "REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-equipment_Site" (
- "id" TEXT,
- "geo-location" geography,
- "name" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_Site" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_Site" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-equipment_Site" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-oam_ManagedElement" (
- "id" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_deployed-as-cloudifiedNF" TEXT,
- "REL_ID_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" TEXT,
- "REL_CD_sourceIds_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" jsonb,
- "REL_CD_classifiers_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" jsonb,
- "REL_CD_decorators_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" jsonb,
- "REL_metadata_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-oam_ManagedElement" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-oam_ManagedElement" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-oam_ManagedElement" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-oam_ManagedElement" ALTER COLUMN "REL_CD_sourceIds_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-oam_ManagedElement" ALTER COLUMN "REL_CD_classifiers_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-oam_ManagedElement" ALTER COLUMN "REL_CD_decorators_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_AntennaCapability" (
- "id" TEXT,
- "eUtranFqBands" jsonb,
- "geranFqBands" jsonb,
- "nRFqBands" jsonb,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_AntennaCapability" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_AntennaCapability" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_AntennaCapability" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_NRCellCU" (
- "id" TEXT,
- "cellLocalId" INTEGER,
- "nCI" BIGINT,
- "nRTAC" INTEGER,
- "plmnId" jsonb,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_provided-by-ocucpFunction" TEXT,
- "REL_ID_OCUCPFUNCTION_PROVIDES_NRCELLCU" TEXT,
- "REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU" jsonb,
- "REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU" jsonb,
- "REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU" jsonb,
- "REL_metadata_OCUCPFUNCTION_PROVIDES_NRCELLCU" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellCU" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellCU" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellCU" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellCU" ALTER COLUMN "REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellCU" ALTER COLUMN "REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellCU" ALTER COLUMN "REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_NRCellDU" (
- "id" TEXT,
- "cellLocalId" INTEGER,
- "nCI" BIGINT,
- "nRPCI" INTEGER,
- "nRTAC" INTEGER,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_provided-by-oduFunction" TEXT,
- "REL_ID_ODUFUNCTION_PROVIDES_NRCELLDU" TEXT,
- "REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRCELLDU" jsonb,
- "REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRCELLDU" jsonb,
- "REL_CD_decorators_ODUFUNCTION_PROVIDES_NRCELLDU" jsonb,
- "REL_metadata_ODUFUNCTION_PROVIDES_NRCELLDU" jsonb,
- "REL_FK_grouped-by-sector" TEXT,
- "REL_ID_SECTOR_GROUPS_NRCELLDU" TEXT,
- "REL_CD_sourceIds_SECTOR_GROUPS_NRCELLDU" jsonb,
- "REL_CD_classifiers_SECTOR_GROUPS_NRCELLDU" jsonb,
- "REL_CD_decorators_SECTOR_GROUPS_NRCELLDU" jsonb,
- "REL_metadata_SECTOR_GROUPS_NRCELLDU" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRCELLDU" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRCELLDU" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "REL_CD_decorators_ODUFUNCTION_PROVIDES_NRCELLDU" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "REL_CD_sourceIds_SECTOR_GROUPS_NRCELLDU" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "REL_CD_classifiers_SECTOR_GROUPS_NRCELLDU" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRCellDU" ALTER COLUMN "REL_CD_decorators_SECTOR_GROUPS_NRCELLDU" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" (
- "id" TEXT,
- "arfcnDL" INTEGER,
- "arfcnUL" INTEGER,
- "bSChannelBwDL" INTEGER,
- "frequencyDL" INTEGER,
- "frequencyUL" INTEGER,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_used-by-nrCellDu" TEXT,
- "REL_ID_NRCELLDU_USES_NRSECTORCARRIER" TEXT,
- "REL_CD_sourceIds_NRCELLDU_USES_NRSECTORCARRIER" jsonb,
- "REL_CD_classifiers_NRCELLDU_USES_NRSECTORCARRIER" jsonb,
- "REL_CD_decorators_NRCELLDU_USES_NRSECTORCARRIER" jsonb,
- "REL_metadata_NRCELLDU_USES_NRSECTORCARRIER" jsonb,
- "REL_FK_used-antennaCapability" TEXT,
- "REL_ID_NRSECTORCARRIER_USES_ANTENNACAPABILITY" TEXT,
- "REL_CD_sourceIds_NRSECTORCARRIER_USES_ANTENNACAPABILITY" jsonb,
- "REL_CD_classifiers_NRSECTORCARRIER_USES_ANTENNACAPABILITY" jsonb,
- "REL_CD_decorators_NRSECTORCARRIER_USES_ANTENNACAPABILITY" jsonb,
- "REL_metadata_NRSECTORCARRIER_USES_ANTENNACAPABILITY" jsonb,
- "REL_FK_provided-by-oduFunction" TEXT,
- "REL_ID_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" TEXT,
- "REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" jsonb,
- "REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" jsonb,
- "REL_CD_decorators_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" jsonb,
- "REL_metadata_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_sourceIds_NRCELLDU_USES_NRSECTORCARRIER" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_classifiers_NRCELLDU_USES_NRSECTORCARRIER" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_decorators_NRCELLDU_USES_NRSECTORCARRIER" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_sourceIds_NRSECTORCARRIER_USES_ANTENNACAPABILITY" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_classifiers_NRSECTORCARRIER_USES_ANTENNACAPABILITY" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_decorators_NRSECTORCARRIER_USES_ANTENNACAPABILITY" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ALTER COLUMN "REL_CD_decorators_ODUFUNCTION_PROVIDES_NRSECTORCARRIER" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" (
- "id" TEXT,
- "nearRtRicId" BIGINT,
- "pLMNId" jsonb,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_managed-by-managedElement" TEXT,
- "REL_ID_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" TEXT,
- "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" jsonb,
- "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" jsonb,
- "REL_CD_decorators_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" jsonb,
- "REL_metadata_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ALTER COLUMN "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ALTER COLUMN "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ALTER COLUMN "REL_CD_decorators_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_OCUCPFunction" (
- "id" TEXT,
- "gNBCUName" TEXT,
- "gNBId" BIGINT,
- "gNBIdLength" INTEGER,
- "pLMNId" jsonb,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_managed-by-managedElement" TEXT,
- "REL_ID_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" TEXT,
- "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" jsonb,
- "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" jsonb,
- "REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" jsonb,
- "REL_metadata_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ALTER COLUMN "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ALTER COLUMN "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ALTER COLUMN "REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_OCUUPFunction" (
- "id" TEXT,
- "gNBId" BIGINT,
- "gNBIdLength" INTEGER,
- "pLMNIdList" jsonb,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_managed-by-managedElement" TEXT,
- "REL_ID_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" TEXT,
- "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" jsonb,
- "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" jsonb,
- "REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" jsonb,
- "REL_metadata_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ALTER COLUMN "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ALTER COLUMN "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ALTER COLUMN "REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_ODUFunction" (
- "id" TEXT,
- "gNBDUId" BIGINT,
- "gNBId" BIGINT,
- "gNBIdLength" INTEGER,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_managed-by-managedElement" TEXT,
- "REL_ID_MANAGEDELEMENT_MANAGES_ODUFUNCTION" TEXT,
- "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ODUFUNCTION" jsonb,
- "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ODUFUNCTION" jsonb,
- "REL_CD_decorators_MANAGEDELEMENT_MANAGES_ODUFUNCTION" jsonb,
- "REL_metadata_MANAGEDELEMENT_MANAGES_ODUFUNCTION" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ODUFunction" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ODUFunction" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ODUFunction" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ODUFunction" ALTER COLUMN "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ODUFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ODUFunction" ALTER COLUMN "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ODUFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ODUFunction" ALTER COLUMN "REL_CD_decorators_MANAGEDELEMENT_MANAGES_ODUFUNCTION" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_ORUFunction" (
- "id" TEXT,
- "oruId" BIGINT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb,
- "REL_FK_managed-by-managedElement" TEXT,
- "REL_ID_MANAGEDELEMENT_MANAGES_ORUFUNCTION" TEXT,
- "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ORUFUNCTION" jsonb,
- "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ORUFUNCTION" jsonb,
- "REL_CD_decorators_MANAGEDELEMENT_MANAGES_ORUFUNCTION" jsonb,
- "REL_metadata_MANAGEDELEMENT_MANAGES_ORUFUNCTION" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ORUFunction" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ORUFunction" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ORUFunction" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ORUFunction" ALTER COLUMN "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ORUFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ORUFunction" ALTER COLUMN "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ORUFUNCTION" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_ORUFunction" ALTER COLUMN "REL_CD_decorators_MANAGEDELEMENT_MANAGES_ORUFUNCTION" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-ran_Sector" (
- "id" TEXT,
- "azimuth" DECIMAL,
- "geo-location" geography,
- "sectorId" BIGINT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_Sector" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_Sector" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-ran_Sector" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" (
- "id" TEXT,
- "aSide_NFDeployment" TEXT,
- "bSide_OCUCPFunction" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" (
- "id" TEXT,
- "aSide_NFDeployment" TEXT,
- "bSide_OCUUPFunction" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" (
- "id" TEXT,
- "aSide_NFDeployment" TEXT,
- "bSide_ODUFunction" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "metadata" jsonb
-);
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-SELECT ties_data.create_constraint_if_not_exists(
- '3C2E2CE7BDF8321BC824B6318B190690F58DBB82',
- 'PK_82A1C5618438FF6DF7CDD48FD71E0A584E6D052A',
- 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "PK_82A1C5618438FF6DF7CDD48FD71E0A584E6D052A" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'CFC235E0404703D1E4454647DF8AAE2C193DB402',
- 'PK_63E61CB6802F21FE7A04A80A095F6AF8ABF067CE',
- 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "PK_63E61CB6802F21FE7A04A80A095F6AF8ABF067CE" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_CloudifiedNF',
- 'PK_o-ran-smo-teiv-cloud_CloudifiedNF_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ADD CONSTRAINT "PK_o-ran-smo-teiv-cloud_CloudifiedNF_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE',
- 'PK_E4FDDE2DC433209F933C7F53C9F72C1D2EB04BC6',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "PK_E4FDDE2DC433209F933C7F53C9F72C1D2EB04BC6" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDeployment',
- 'PK_o-ran-smo-teiv-cloud_NFDeployment_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "PK_o-ran-smo-teiv-cloud_NFDeployment_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE',
- 'PK_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "PK_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NodeCluster',
- 'PK_o-ran-smo-teiv-cloud_NodeCluster_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NodeCluster" ADD CONSTRAINT "PK_o-ran-smo-teiv-cloud_NodeCluster_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_OCloudNamespace',
- 'PK_o-ran-smo-teiv-cloud_OCloudNamespace_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ADD CONSTRAINT "PK_o-ran-smo-teiv-cloud_OCloudNamespace_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_OCloudSite',
- 'PK_o-ran-smo-teiv-cloud_OCloudSite_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudSite" ADD CONSTRAINT "PK_o-ran-smo-teiv-cloud_OCloudSite_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_AntennaModule',
- 'PK_o-ran-smo-teiv-equipment_AntennaModule_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "PK_o-ran-smo-teiv-equipment_AntennaModule_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_Site',
- 'PK_o-ran-smo-teiv-equipment_Site_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_Site" ADD CONSTRAINT "PK_o-ran-smo-teiv-equipment_Site_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-oam_ManagedElement',
- 'PK_o-ran-smo-teiv-oam_ManagedElement_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-oam_ManagedElement" ADD CONSTRAINT "PK_o-ran-smo-teiv-oam_ManagedElement_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_AntennaCapability',
- 'PK_o-ran-smo-teiv-ran_AntennaCapability_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_AntennaCapability" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_AntennaCapability_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellCU',
- 'PK_o-ran-smo-teiv-ran_NRCellCU_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellCU" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_NRCellCU_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellDU',
- 'PK_o-ran-smo-teiv-ran_NRCellDU_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_NRCellDU_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRSectorCarrier',
- 'PK_o-ran-smo-teiv-ran_NRSectorCarrier_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_NRSectorCarrier_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NearRTRICFunction',
- 'PK_o-ran-smo-teiv-ran_NearRTRICFunction_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_NearRTRICFunction_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_OCUCPFunction',
- 'PK_o-ran-smo-teiv-ran_OCUCPFunction_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_OCUCPFunction_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_OCUUPFunction',
- 'PK_o-ran-smo-teiv-ran_OCUUPFunction_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_OCUUPFunction_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_ODUFunction',
- 'PK_o-ran-smo-teiv-ran_ODUFunction_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ODUFunction" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_ODUFunction_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_ORUFunction',
- 'PK_o-ran-smo-teiv-ran_ORUFunction_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ORUFunction" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_ORUFunction_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_Sector',
- 'PK_o-ran-smo-teiv-ran_Sector_id',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_Sector" ADD CONSTRAINT "PK_o-ran-smo-teiv-ran_Sector_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION',
- 'PK_2D854968CB74C42C534D8E7C2A53E93F6B7F001F',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "PK_2D854968CB74C42C534D8E7C2A53E93F6B7F001F" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION',
- 'PK_E551D02D14B3C04A565DC73A386BEB29627D3C08',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "PK_E551D02D14B3C04A565DC73A386BEB29627D3C08" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION',
- 'PK_A10CB552A0F126991DD325EC84DBFAC6F2BBE1A3',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "PK_A10CB552A0F126991DD325EC84DBFAC6F2BBE1A3" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- '3C2E2CE7BDF8321BC824B6318B190690F58DBB82',
- 'FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA',
- 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- '3C2E2CE7BDF8321BC824B6318B190690F58DBB82',
- 'FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5',
- 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5" FOREIGN KEY ("bSide_NearRTRICFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'CFC235E0404703D1E4454647DF8AAE2C193DB402',
- 'FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960',
- 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'CFC235E0404703D1E4454647DF8AAE2C193DB402',
- 'FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06',
- 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06" FOREIGN KEY ("bSide_AntennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE',
- 'FK_A08D274894ECB6799E56C2089A494AF0345B9B16',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_A08D274894ECB6799E56C2089A494AF0345B9B16" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE',
- 'FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F" FOREIGN KEY ("bSide_OCloudNamespace") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDeployment',
- 'FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0" FOREIGN KEY ("REL_FK_comprised-by-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDeployment',
- 'UNIQUE_A5A8418B6BE911F281E6E2AA640D7D9F777471DC',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "UNIQUE_A5A8418B6BE911F281E6E2AA640D7D9F777471DC" UNIQUE ("REL_ID_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDeployment',
- 'FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9" FOREIGN KEY ("REL_FK_serviced-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NFDeployment',
- 'UNIQUE_8AD46969905BEEB89F63D3F37FD82B14F34FDCBC',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "UNIQUE_8AD46969905BEEB89F63D3F37FD82B14F34FDCBC" UNIQUE ("REL_ID_NFDEPLOYMENT_SERVES_MANAGEDELEMENT");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE',
- 'FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92" FOREIGN KEY ("aSide_NodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE',
- 'FK_888BF6FF782916E61B3FE80643A549A1CFDB6117',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_888BF6FF782916E61B3FE80643A549A1CFDB6117" FOREIGN KEY ("bSide_OCloudSite") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudSite" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_OCloudNamespace',
- 'FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ADD CONSTRAINT "FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF" FOREIGN KEY ("REL_FK_deployed-on-nodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-cloud_OCloudNamespace',
- 'UNIQUE_C4DE73BD7AA3DBFA2D32E577D4E0A534A7184AB0',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ADD CONSTRAINT "UNIQUE_C4DE73BD7AA3DBFA2D32E577D4E0A534A7184AB0" UNIQUE ("REL_ID_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_AntennaModule',
- 'FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC" FOREIGN KEY ("REL_FK_installed-at-site") REFERENCES ties_data."o-ran-smo-teiv-equipment_Site" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_AntennaModule',
- 'UNIQUE_9DF414C2F0CD7FA8BFCB3E9BF851784AC4BC49B1',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "UNIQUE_9DF414C2F0CD7FA8BFCB3E9BF851784AC4BC49B1" UNIQUE ("REL_ID_ANTENNAMODULE_INSTALLED_AT_SITE");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_AntennaModule',
- 'FK_078764B2F3D613D44CC6E3586F564C83164D2481',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_078764B2F3D613D44CC6E3586F564C83164D2481" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_AntennaModule',
- 'UNIQUE_78B1D3DCD903AFFB1965D440D87B2D194CA028A0',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "UNIQUE_78B1D3DCD903AFFB1965D440D87B2D194CA028A0" UNIQUE ("REL_ID_SECTOR_GROUPS_ANTENNAMODULE");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_AntennaModule',
- 'FK_078764B2F3D613D44CC6E3586F564C83164D2481',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_078764B2F3D613D44CC6E3586F564C83164D2481" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-equipment_AntennaModule',
- 'UNIQUE_78B1D3DCD903AFFB1965D440D87B2D194CA028A0',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "UNIQUE_78B1D3DCD903AFFB1965D440D87B2D194CA028A0" UNIQUE ("REL_ID_SECTOR_GROUPS_ANTENNAMODULE");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-oam_ManagedElement',
- 'FK_899B8130A861D1450FC49D3159D8B29C0628A717',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-oam_ManagedElement" ADD CONSTRAINT "FK_899B8130A861D1450FC49D3159D8B29C0628A717" FOREIGN KEY ("REL_FK_deployed-as-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-oam_ManagedElement',
- 'UNIQUE_EC9B35192A31C6491E6566602720D1C26E3CB708',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-oam_ManagedElement" ADD CONSTRAINT "UNIQUE_EC9B35192A31C6491E6566602720D1C26E3CB708" UNIQUE ("REL_ID_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellCU',
- 'FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellCU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction" FOREIGN KEY ("REL_FK_provided-by-ocucpFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellCU',
- 'UNIQUE_928074AEE57C9CB151F93FDC81BC59200D5F7497',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellCU" ADD CONSTRAINT "UNIQUE_928074AEE57C9CB151F93FDC81BC59200D5F7497" UNIQUE ("REL_ID_OCUCPFUNCTION_PROVIDES_NRCELLCU");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellDU',
- 'FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellDU',
- 'UNIQUE_B70F668E0E45FFFC5B7014489F6FD528EB15F192',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "UNIQUE_B70F668E0E45FFFC5B7014489F6FD528EB15F192" UNIQUE ("REL_ID_ODUFUNCTION_PROVIDES_NRCELLDU");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellDU',
- 'FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRCellDU',
- 'UNIQUE_AC1C114ABED77D6DEC3F3AE3F9EBE8231924AEF4',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "UNIQUE_AC1C114ABED77D6DEC3F3AE3F9EBE8231924AEF4" UNIQUE ("REL_ID_SECTOR_GROUPS_NRCELLDU");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRSectorCarrier',
- 'FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu" FOREIGN KEY ("REL_FK_used-by-nrCellDu") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRSectorCarrier',
- 'UNIQUE_1AB577E5AC207ED4C99A9A96BA1C9C35544AFD25',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "UNIQUE_1AB577E5AC207ED4C99A9A96BA1C9C35544AFD25" UNIQUE ("REL_ID_NRCELLDU_USES_NRSECTORCARRIER");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRSectorCarrier',
- 'FK_65D538D54EB33081C808540235FEB28823428E64',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_65D538D54EB33081C808540235FEB28823428E64" FOREIGN KEY ("REL_FK_used-antennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRSectorCarrier',
- 'UNIQUE_A799EC9DA6624651081E1DA21B5F0C2D38F6A192',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "UNIQUE_A799EC9DA6624651081E1DA21B5F0C2D38F6A192" UNIQUE ("REL_ID_NRSECTORCARRIER_USES_ANTENNACAPABILITY");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRSectorCarrier',
- 'FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NRSectorCarrier',
- 'UNIQUE_D5D35955594A6EB48640425529F7DE44BED00B62',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "UNIQUE_D5D35955594A6EB48640425529F7DE44BED00B62" UNIQUE ("REL_ID_ODUFUNCTION_PROVIDES_NRSECTORCARRIER");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NearRTRICFunction',
- 'FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ADD CONSTRAINT "FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_NearRTRICFunction',
- 'UNIQUE_E020461673334EB824643649B6B31670FB064EC8',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ADD CONSTRAINT "UNIQUE_E020461673334EB824643649B6B31670FB064EC8" UNIQUE ("REL_ID_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_OCUCPFunction',
- 'FK_122DD9709032528D161177B3624AD7AAF6589005',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ADD CONSTRAINT "FK_122DD9709032528D161177B3624AD7AAF6589005" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_OCUCPFunction',
- 'UNIQUE_2B7D3D49C1072E660047DE56843413CE628BF94A',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ADD CONSTRAINT "UNIQUE_2B7D3D49C1072E660047DE56843413CE628BF94A" UNIQUE ("REL_ID_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_OCUUPFunction',
- 'FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ADD CONSTRAINT "FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_OCUUPFunction',
- 'UNIQUE_DF85FE7809B5527CB4A6028DD1A599DBBD5AF214',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ADD CONSTRAINT "UNIQUE_DF85FE7809B5527CB4A6028DD1A599DBBD5AF214" UNIQUE ("REL_ID_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_ODUFunction',
- 'FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ODUFunction" ADD CONSTRAINT "FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_ODUFunction',
- 'UNIQUE_D570291C9E28A2AF73387B7A8B0F4C70130EEDB4',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ODUFunction" ADD CONSTRAINT "UNIQUE_D570291C9E28A2AF73387B7A8B0F4C70130EEDB4" UNIQUE ("REL_ID_MANAGEDELEMENT_MANAGES_ODUFUNCTION");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_ORUFunction',
- 'FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ORUFunction" ADD CONSTRAINT "FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-ran_ORUFunction',
- 'UNIQUE_4E6F008B82605A806EED04B2315A1FEE095A9241',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ORUFunction" ADD CONSTRAINT "UNIQUE_4E6F008B82605A806EED04B2315A1FEE095A9241" UNIQUE ("REL_ID_MANAGEDELEMENT_MANAGES_ORUFUNCTION");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION',
- 'FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION',
- 'FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6" FOREIGN KEY ("bSide_OCUCPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION',
- 'FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION',
- 'FK_8585D545BC37A473A298E0F5F5942F897A7105B1',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_8585D545BC37A473A298E0F5F5942F897A7105B1" FOREIGN KEY ("bSide_OCUUPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUUPFunction" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION',
- 'FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION',
- 'FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08" FOREIGN KEY ("bSide_ODUFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
-);
-
-CREATE INDEX IF NOT EXISTS "IDX_996D2C34C2458A6EFE8599C1A0E6942D3D288B7A" ON ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_F52FEEDBAF1B04D2D22EBAE051BB5125DF6A6968" ON ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_D333FA5882890B7CD3599712FFFB2641B9E04C80" ON ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_E896A9EB22A3F9F96CE75A271475316A98B629C8" ON ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_DD0D676834B12CA2F7E8219310998376A08D7F5F" ON ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_7BF09D0227840279556AD27ACECB068705893D28" ON ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_9EDB5C47201FC82A4565BFED9EF369D6C6529B19" ON ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_BD96130868B69147B2F87B0D15F5829690DEF454" ON ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-cloud_CloudifiedNF_CD_decorators" ON ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_F97E398B17532BCD9923CE0CF98E73227D890037" ON ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_1BCFD9635C4FA089EDC2E18FFEF56DBF3C5E7A52" ON ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_4055A796F223DD01411AFFB5AD97EEEAB6B2320C" ON ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_6433B9B7D69E51E828BDCFCAF59729EDCD10DA60" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_BED5B5FAA75FEE133E27581EAA611B89D20F24E1" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-cloud_NFDeployment_CD_decorators" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_072EB0C094138AB2D90F9CFBDA765B3B464EE86F" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN (("REL_CD_sourceIds_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_31F185F0F700C0AE11C5A9B8D28DBF6E37538635" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN (("REL_CD_classifiers_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_46CDB369134F042EC021F7496DF721B49A9D43C0" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN ("REL_CD_decorators_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT");
-
-CREATE INDEX IF NOT EXISTS "IDX_4DD95BAED8503502101FEB9ECA25DDA8F371816C" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN (("REL_CD_sourceIds_NFDEPLOYMENT_SERVES_MANAGEDELEMENT"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_1EE98ACCAE5537752BD51A3D5F6429585CC543F6" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN (("REL_CD_classifiers_NFDEPLOYMENT_SERVES_MANAGEDELEMENT"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_39A292C3C42B34C2AD7C2A0FD087739C253B06FC" ON ties_data."o-ran-smo-teiv-cloud_NFDeployment" USING GIN ("REL_CD_decorators_NFDEPLOYMENT_SERVES_MANAGEDELEMENT");
-
-CREATE INDEX IF NOT EXISTS "IDX_1D7F9BD4B5BBF73CC3D06D949731DC169DDED26D" ON ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_29702D5C8D0B9B20BFB534FA233B9D9FADC2E3A1" ON ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_98A32BE3A8C1FF8CDEC95561DE4A74852FE70322" ON ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_DC1829E4241BA7C9B3E5281AC0DF00A766F9452E" ON ties_data."o-ran-smo-teiv-cloud_NodeCluster" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_CB29E8DDA990051B2A3DF193D8E4912F25D5FA0D" ON ties_data."o-ran-smo-teiv-cloud_NodeCluster" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-cloud_NodeCluster_CD_decorators" ON ties_data."o-ran-smo-teiv-cloud_NodeCluster" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_1B8DF6B061E229E5B6AC796911E6C8C23ECAD585" ON ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_57EB74DEF745DE4BA9AAD8E735BACB71F2E8C417" ON ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-cloud_OCloudNamespace_CD_decorators" ON ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_A7A50200F582AB86EF483F9BA74F999F17B7F653" ON ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" USING GIN (("REL_CD_sourceIds_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_6EE081E80342904B676496DA42DFAEC3EDA2CE27" ON ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" USING GIN (("REL_CD_classifiers_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_9AB8994DE0826F790D70614D4C52DD270AEF946B" ON ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" USING GIN ("REL_CD_decorators_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER");
-
-CREATE INDEX IF NOT EXISTS "IDX_30C83E5F8447D28D8E2A73048DF751C886AF318B" ON ties_data."o-ran-smo-teiv-cloud_OCloudSite" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_281A2DE604D25D6CFECB9B26D1FF70429FDB0FD0" ON ties_data."o-ran-smo-teiv-cloud_OCloudSite" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-cloud_OCloudSite_CD_decorators" ON ties_data."o-ran-smo-teiv-cloud_OCloudSite" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_21B0F1FE632B6CB185C49BA6F00224068F443215" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("antennaBeamWidth"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_905011128A2C218B5352C19ED1FE9851F43EB911" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_1C0CAFD80FDD6444044E3F76C7C0A7BDC35F9BC8" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-equipment_AntennaModule_CD_decorators" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_F497DEC01DA066CB09DA2AA7EDE3F4410078491B" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("REL_CD_sourceIds_ANTENNAMODULE_INSTALLED_AT_SITE"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_17E417F7EF56809674BE1D5F5154DCCE01E00A96" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("REL_CD_classifiers_ANTENNAMODULE_INSTALLED_AT_SITE"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_2321BFA482AD2700F41E2BA359F6EB00F47601B9" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN ("REL_CD_decorators_ANTENNAMODULE_INSTALLED_AT_SITE");
-
-CREATE INDEX IF NOT EXISTS "IDX_5ABDB19E55A6BDEF33855F14CB1B3B8CF457912C" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_83B6347C0C0A005D5E3D856D973D3322DFEDEA35" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_6C6FBD69F47F41970595A8775DC99CA0F5E894A1" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN ("REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE");
-
-CREATE INDEX IF NOT EXISTS "IDX_5ABDB19E55A6BDEF33855F14CB1B3B8CF457912C" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_83B6347C0C0A005D5E3D856D973D3322DFEDEA35" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN (("REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_6C6FBD69F47F41970595A8775DC99CA0F5E894A1" ON ties_data."o-ran-smo-teiv-equipment_AntennaModule" USING GIN ("REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE");
-
-CREATE INDEX IF NOT EXISTS "IDX_102A50584376DE25B6BBD7157594C607A5C957F2" ON ties_data."o-ran-smo-teiv-equipment_Site" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_EEBF1BC3344E97988232825777AB13FAB6C4F3F0" ON ties_data."o-ran-smo-teiv-equipment_Site" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-equipment_Site_CD_decorators" ON ties_data."o-ran-smo-teiv-equipment_Site" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_DDD73D6F4004BF3A96AA118281EE3E565A922B47" ON ties_data."o-ran-smo-teiv-oam_ManagedElement" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_98AC4232BC02323E03416954215889CEE874A1E9" ON ties_data."o-ran-smo-teiv-oam_ManagedElement" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-oam_ManagedElement_CD_decorators" ON ties_data."o-ran-smo-teiv-oam_ManagedElement" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_8065626F3F48D4E5A4285654739D3B26499E4C4E" ON ties_data."o-ran-smo-teiv-oam_ManagedElement" USING GIN (("REL_CD_sourceIds_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_634619CF7333EBC0AFDE990900B79220FC626EBA" ON ties_data."o-ran-smo-teiv-oam_ManagedElement" USING GIN (("REL_CD_classifiers_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_F15A070FC83B2E49223B4232E0BEB8931C2B7A4C" ON ties_data."o-ran-smo-teiv-oam_ManagedElement" USING GIN ("REL_CD_decorators_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF");
-
-CREATE INDEX IF NOT EXISTS "IDX_5FB80647AE3E5C0443A792618D65B9090EE2A3FC" ON ties_data."o-ran-smo-teiv-ran_AntennaCapability" USING GIN (("eUtranFqBands"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_A94722FF7B95D8974B494793908B57B4E1A9743B" ON ties_data."o-ran-smo-teiv-ran_AntennaCapability" USING GIN (("geranFqBands"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_441B5C05448D63552C6414BD59C13641D8A4408D" ON ties_data."o-ran-smo-teiv-ran_AntennaCapability" USING GIN (("nRFqBands"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_CC3E208A4EE51D3B505416A599F36F3C99F466C8" ON ties_data."o-ran-smo-teiv-ran_AntennaCapability" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_E7FFE8F4A166AA9A382A0659762FFEC313A9EB5C" ON ties_data."o-ran-smo-teiv-ran_AntennaCapability" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_AntennaCapability_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_AntennaCapability" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_NRCellCU_plmnId" ON ties_data."o-ran-smo-teiv-ran_NRCellCU" USING GIN ("plmnId");
-
-CREATE INDEX IF NOT EXISTS "IDX_0C443A16285D233F16966C2F0314CDC9D0F6D0B8" ON ties_data."o-ran-smo-teiv-ran_NRCellCU" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_E5930226819982DC0CFC1FA64FB3600647222435" ON ties_data."o-ran-smo-teiv-ran_NRCellCU" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_NRCellCU_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_NRCellCU" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_6891C1BB8EE214340A362906C08955E8ACC1C597" ON ties_data."o-ran-smo-teiv-ran_NRCellCU" USING GIN (("REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_D366F952FD4A52645C45A19CBFD02B8897FC1F18" ON ties_data."o-ran-smo-teiv-ran_NRCellCU" USING GIN (("REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_5D761303176D3B9338784DFBEE0CEC51046ADC30" ON ties_data."o-ran-smo-teiv-ran_NRCellCU" USING GIN ("REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU");
-
-CREATE INDEX IF NOT EXISTS "IDX_FFD60DD99D80C276F402E66546F5DACB2D81EE26" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_C437D39632DC79BAB6AC4F0880826A05425F9C32" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_NRCellDU_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_B48D188E92ACBE9A2CAF8CD730A5DDFD7E086705" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN (("REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRCELLDU"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_A950BF337D5D820E5B39AC3F1B1AC09C062F30C9" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN (("REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRCELLDU"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_F494CB3BA4C726D4C45D53B1EF62E1E26811CCEF" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN ("REL_CD_decorators_ODUFUNCTION_PROVIDES_NRCELLDU");
-
-CREATE INDEX IF NOT EXISTS "IDX_6325926B4D2FDD1FBBB34250DABEA5E7229FF9F5" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN (("REL_CD_sourceIds_SECTOR_GROUPS_NRCELLDU"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_7CB4A7724F68D1CB2D12E8DE779BA9103F7DBE0A" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN (("REL_CD_classifiers_SECTOR_GROUPS_NRCELLDU"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_0A03C47C13AD3B5C84D3D8081493D670E9CBDCD1" ON ties_data."o-ran-smo-teiv-ran_NRCellDU" USING GIN ("REL_CD_decorators_SECTOR_GROUPS_NRCELLDU");
-
-CREATE INDEX IF NOT EXISTS "IDX_8E34EC0B1DE7DDCE3B32ADD85B11E15F95C5644E" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_050A80BEEF775E4D3CE216F282F23DB99DA2D798" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_NRSectorCarrier_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_7BFD17A71AB1B7765FE6431DA4E66C2EDE88AC3B" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("REL_CD_sourceIds_NRCELLDU_USES_NRSECTORCARRIER"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_ED50A5139F1449DBAD8DA10D45F5A5BF819EACBA" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("REL_CD_classifiers_NRCELLDU_USES_NRSECTORCARRIER"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_2ADB5C6DCAEE8811FB1CA8FD9EB53381F35FCB70" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN ("REL_CD_decorators_NRCELLDU_USES_NRSECTORCARRIER");
-
-CREATE INDEX IF NOT EXISTS "IDX_1F27C515A028616FAC422A02ABBEC402D5DBB2E5" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("REL_CD_sourceIds_NRSECTORCARRIER_USES_ANTENNACAPABILITY"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_B975D24291849007D4AA6686C5D3983885D5C884" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("REL_CD_classifiers_NRSECTORCARRIER_USES_ANTENNACAPABILITY"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_902B73F741160B9D4FBF62406D3D9ABBECAD8BE7" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN ("REL_CD_decorators_NRSECTORCARRIER_USES_ANTENNACAPABILITY");
-
-CREATE INDEX IF NOT EXISTS "IDX_986B2223E72FF79237337329F4C3BB9DA9025A34" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRSECTORCARRIER"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_FC70CCFDC1359B698BBBE5CA7AA158F0AF693461" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN (("REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRSECTORCARRIER"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_5AB1D780E57D940C42BAD29772E9E2B6C63498A0" ON ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" USING GIN ("REL_CD_decorators_ODUFUNCTION_PROVIDES_NRSECTORCARRIER");
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_NearRTRICFunction_pLMNId" ON ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" USING GIN ("pLMNId");
-
-CREATE INDEX IF NOT EXISTS "IDX_E4E40B26C322AF63A662706AF8B0B36E1043B793" ON ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_8BCCF388DFC8652AD5CD0675C64F49D2D2EDC7A1" ON ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_NearRTRICFunction_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_B608D8F6B8A79097EA61A1B4777A96CD3D2D1E98" ON ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" USING GIN (("REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_0ECC814A408874C9F8E73EEE3968984A6345A606" ON ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" USING GIN (("REL_CD_classifiers_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_B10FD045A6C3E169953CCC38CC2D801FCE15A75F" ON ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" USING GIN ("REL_CD_decorators_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION");
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_OCUCPFunction_pLMNId" ON ties_data."o-ran-smo-teiv-ran_OCUCPFunction" USING GIN ("pLMNId");
-
-CREATE INDEX IF NOT EXISTS "IDX_84A29F8571860AC5A7BD1A99923485ECB6A3939D" ON ties_data."o-ran-smo-teiv-ran_OCUCPFunction" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_8D9862DBF6A721FABAEA4204E04B374692C1C5B8" ON ties_data."o-ran-smo-teiv-ran_OCUCPFunction" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_OCUCPFunction_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_OCUCPFunction" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_4C6B5CB5CF018656DC8191CE6FE3B9DA2CD0C819" ON ties_data."o-ran-smo-teiv-ran_OCUCPFunction" USING GIN (("REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_21F2560C8330A795E8AFB54C6D31CDCF6CCD3070" ON ties_data."o-ran-smo-teiv-ran_OCUCPFunction" USING GIN (("REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_D856E84F300B6711E81931AE1CBC8AD905FA384F" ON ties_data."o-ran-smo-teiv-ran_OCUCPFunction" USING GIN ("REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION");
-
-CREATE INDEX IF NOT EXISTS "IDX_9122DAA7A60DB585BE5ECA68A2EDB9ABF1E7156A" ON ties_data."o-ran-smo-teiv-ran_OCUUPFunction" USING GIN (("pLMNIdList"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_6C81B2BBFCFE94C87598869A2099E04571202BA7" ON ties_data."o-ran-smo-teiv-ran_OCUUPFunction" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_25E4BCFBF8F5344DFC60BCB159FA873FFC8109E9" ON ties_data."o-ran-smo-teiv-ran_OCUUPFunction" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_OCUUPFunction_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_OCUUPFunction" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_50209F1FF59B49F79FF194887B631994F2B5148A" ON ties_data."o-ran-smo-teiv-ran_OCUUPFunction" USING GIN (("REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_3346DFB8C2B7D6EEA12B7C1DE4A84B058C24A657" ON ties_data."o-ran-smo-teiv-ran_OCUUPFunction" USING GIN (("REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_ADD3393C27589066C4993A3491436C6FB57A539F" ON ties_data."o-ran-smo-teiv-ran_OCUUPFunction" USING GIN ("REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION");
-
-CREATE INDEX IF NOT EXISTS "IDX_73790DA8FF6365B752DC8B399893AC6DE8CF26C4" ON ties_data."o-ran-smo-teiv-ran_ODUFunction" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_5CE9EDE1F25AB2D880A41BC5D297FDBE668182E8" ON ties_data."o-ran-smo-teiv-ran_ODUFunction" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_ODUFunction_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_ODUFunction" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_0E5C91A3252FBAFA72DB644D4E949A379F0CB910" ON ties_data."o-ran-smo-teiv-ran_ODUFunction" USING GIN (("REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ODUFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_5DD192861541E0EB2776C6BFE34B327FF27F93C3" ON ties_data."o-ran-smo-teiv-ran_ODUFunction" USING GIN (("REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ODUFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_0B9AC962B1E07740CE43D912B5FBC54E0B39DD24" ON ties_data."o-ran-smo-teiv-ran_ODUFunction" USING GIN ("REL_CD_decorators_MANAGEDELEMENT_MANAGES_ODUFUNCTION");
-
-CREATE INDEX IF NOT EXISTS "IDX_D0D11CFAA917F4FA12748A041A34D2B39A3AD707" ON ties_data."o-ran-smo-teiv-ran_ORUFunction" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_2A5AAAD13FDCFF7F2958005C22937366F6604A0D" ON ties_data."o-ran-smo-teiv-ran_ORUFunction" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_ORUFunction_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_ORUFunction" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_AF235FB2C9CCA99D94CC4038669EDD1BB6C7B2DF" ON ties_data."o-ran-smo-teiv-ran_ORUFunction" USING GIN (("REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ORUFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_DA79A3F946C1F4E8D05B4D6ADEF5E4C65E47635E" ON ties_data."o-ran-smo-teiv-ran_ORUFunction" USING GIN (("REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ORUFUNCTION"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_7B916E1753D2860DF434831CF1E9697ED9973C8F" ON ties_data."o-ran-smo-teiv-ran_ORUFunction" USING GIN ("REL_CD_decorators_MANAGEDELEMENT_MANAGES_ORUFUNCTION");
-
-CREATE INDEX IF NOT EXISTS "IDX_E234B43A7CD7843672F08F2197AB46A2A50BECB0" ON ties_data."o-ran-smo-teiv-ran_Sector" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_19C19556F9714850389595E0A16218FA229205FE" ON ties_data."o-ran-smo-teiv-ran_Sector" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_GIN_o-ran-smo-teiv-ran_Sector_CD_decorators" ON ties_data."o-ran-smo-teiv-ran_Sector" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_10BCC6B44663A8D5431668BEE5DF80423420C616" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_03F9C6A2FA82614A788443AC6044BCED2401C465" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_0867A1E865A904F4BB513948DAEB60412BE67DF3" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_64B7C127C01069009A3FB13592DAE249B0029283" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_69152691D777DDB084C053915D4A4B15F7F8B3EB" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_3AB53A0DB6DC4B4C8BB6194D6D487EBDC3D0E88F" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" USING GIN ("CD_decorators");
-
-CREATE INDEX IF NOT EXISTS "IDX_5996D077978D38D0C1A951A262F1F7E1E339F052" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_F4A1999634924C7E4D1CBD05E83996A5B1262A8A" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" USING GIN (("CD_classifiers"::TEXT) gin_trgm_ops);
-
-CREATE INDEX IF NOT EXISTS "IDX_5BAC6D2F05A63FDE27F082E8C8F4D766C145E835" ON ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" USING GIN ("CD_decorators");
-
-ANALYZE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_ODUFunction";
-
-ANALYZE ties_data."o-ran-smo-teiv-equipment_Site";
-
-ANALYZE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE";
-
-ANALYZE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION";
-
-ANALYZE ties_data."o-ran-smo-teiv-cloud_NodeCluster";
-
-ANALYZE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_OCUCPFunction";
-
-ANALYZE ties_data."o-ran-smo-teiv-oam_ManagedElement";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_NRCellDU";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction";
-
-ANALYZE ties_data."o-ran-smo-teiv-cloud_CloudifiedNF";
-
-ANALYZE ties_data."o-ran-smo-teiv-cloud_NFDeployment";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_AntennaCapability";
-
-ANALYZE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82";
-
-ANALYZE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE";
-
-ANALYZE ties_data."o-ran-smo-teiv-equipment_AntennaModule";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_ORUFunction";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_NRCellCU";
-
-ANALYZE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_OCUUPFunction";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier";
-
-ANALYZE ties_data."o-ran-smo-teiv-ran_Sector";
-
-ANALYZE ties_data."o-ran-smo-teiv-cloud_OCloudSite";
-
-ANALYZE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace";
-
-COMMIT;
SELECT ties_data.create_constraint_if_not_exists(
'3C2E2CE7BDF8321BC824B6318B190690F58DBB82',
'FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA',
- 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'3C2E2CE7BDF8321BC824B6318B190690F58DBB82',
'FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5',
- 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5" FOREIGN KEY ("bSide_NearRTRICFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" ADD CONSTRAINT "FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5" FOREIGN KEY ("bSide_NearRTRICFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'CFC235E0404703D1E4454647DF8AAE2C193DB402',
'FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960',
- 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'CFC235E0404703D1E4454647DF8AAE2C193DB402',
'FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06',
- 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06" FOREIGN KEY ("bSide_AntennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ADD CONSTRAINT "FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06" FOREIGN KEY ("bSide_AntennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE',
'FK_A08D274894ECB6799E56C2089A494AF0345B9B16',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_A08D274894ECB6799E56C2089A494AF0345B9B16" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_A08D274894ECB6799E56C2089A494AF0345B9B16" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE',
'FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F" FOREIGN KEY ("bSide_OCloudNamespace") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE" ADD CONSTRAINT "FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F" FOREIGN KEY ("bSide_OCloudNamespace") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDeployment',
'FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0" FOREIGN KEY ("REL_FK_comprised-by-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0" FOREIGN KEY ("REL_FK_comprised-by-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NFDeployment',
'FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9" FOREIGN KEY ("REL_FK_serviced-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NFDeployment" ADD CONSTRAINT "FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9" FOREIGN KEY ("REL_FK_serviced-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE',
'FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92" FOREIGN KEY ("aSide_NodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92" FOREIGN KEY ("aSide_NodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE',
'FK_888BF6FF782916E61B3FE80643A549A1CFDB6117',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_888BF6FF782916E61B3FE80643A549A1CFDB6117" FOREIGN KEY ("bSide_OCloudSite") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudSite" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE" ADD CONSTRAINT "FK_888BF6FF782916E61B3FE80643A549A1CFDB6117" FOREIGN KEY ("bSide_OCloudSite") REFERENCES ties_data."o-ran-smo-teiv-cloud_OCloudSite" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-cloud_OCloudNamespace',
'FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ADD CONSTRAINT "FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF" FOREIGN KEY ("REL_FK_deployed-on-nodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-cloud_OCloudNamespace" ADD CONSTRAINT "FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF" FOREIGN KEY ("REL_FK_deployed-on-nodeCluster") REFERENCES ties_data."o-ran-smo-teiv-cloud_NodeCluster" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-equipment_AntennaModule',
'FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC" FOREIGN KEY ("REL_FK_installed-at-site") REFERENCES ties_data."o-ran-smo-teiv-equipment_Site" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC" FOREIGN KEY ("REL_FK_installed-at-site") REFERENCES ties_data."o-ran-smo-teiv-equipment_Site" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-equipment_AntennaModule',
'FK_078764B2F3D613D44CC6E3586F564C83164D2481',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_078764B2F3D613D44CC6E3586F564C83164D2481" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-equipment_AntennaModule" ADD CONSTRAINT "FK_078764B2F3D613D44CC6E3586F564C83164D2481" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-oam_ManagedElement',
'FK_899B8130A861D1450FC49D3159D8B29C0628A717',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-oam_ManagedElement" ADD CONSTRAINT "FK_899B8130A861D1450FC49D3159D8B29C0628A717" FOREIGN KEY ("REL_FK_deployed-as-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-oam_ManagedElement" ADD CONSTRAINT "FK_899B8130A861D1450FC49D3159D8B29C0628A717" FOREIGN KEY ("REL_FK_deployed-as-cloudifiedNF") REFERENCES ties_data."o-ran-smo-teiv-cloud_CloudifiedNF" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRCellCU',
'FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellCU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction" FOREIGN KEY ("REL_FK_provided-by-ocucpFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellCU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction" FOREIGN KEY ("REL_FK_provided-by-ocucpFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRCellDU',
'FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRCellDU',
'FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRCellDU" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector" FOREIGN KEY ("REL_FK_grouped-by-sector") REFERENCES ties_data."o-ran-smo-teiv-ran_Sector" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRSectorCarrier',
'FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu" FOREIGN KEY ("REL_FK_used-by-nrCellDu") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu" FOREIGN KEY ("REL_FK_used-by-nrCellDu") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRSectorCarrier',
'FK_65D538D54EB33081C808540235FEB28823428E64',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_65D538D54EB33081C808540235FEB28823428E64" FOREIGN KEY ("REL_FK_used-antennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_65D538D54EB33081C808540235FEB28823428E64" FOREIGN KEY ("REL_FK_used-antennaCapability") REFERENCES ties_data."o-ran-smo-teiv-ran_AntennaCapability" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NRSectorCarrier',
'FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ADD CONSTRAINT "FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD" FOREIGN KEY ("REL_FK_provided-by-oduFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_NearRTRICFunction',
'FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ADD CONSTRAINT "FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_NearRTRICFunction" ADD CONSTRAINT "FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_OCUCPFunction',
'FK_122DD9709032528D161177B3624AD7AAF6589005',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ADD CONSTRAINT "FK_122DD9709032528D161177B3624AD7AAF6589005" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ADD CONSTRAINT "FK_122DD9709032528D161177B3624AD7AAF6589005" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_OCUUPFunction',
'FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ADD CONSTRAINT "FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ADD CONSTRAINT "FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_ODUFunction',
'FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ODUFunction" ADD CONSTRAINT "FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ODUFunction" ADD CONSTRAINT "FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-ran_ORUFunction',
'FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ORUFunction" ADD CONSTRAINT "FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-ran_ORUFunction" ADD CONSTRAINT "FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE" FOREIGN KEY ("REL_FK_managed-by-managedElement") REFERENCES ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION',
'FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION',
'FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6" FOREIGN KEY ("bSide_OCUCPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION" ADD CONSTRAINT "FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6" FOREIGN KEY ("bSide_OCUCPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION',
'FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION',
'FK_8585D545BC37A473A298E0F5F5942F897A7105B1',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_8585D545BC37A473A298E0F5F5942F897A7105B1" FOREIGN KEY ("bSide_OCUUPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUUPFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION" ADD CONSTRAINT "FK_8585D545BC37A473A298E0F5F5942F897A7105B1" FOREIGN KEY ("bSide_OCUUPFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION',
'FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79" FOREIGN KEY ("aSide_NFDeployment") REFERENCES ties_data."o-ran-smo-teiv-cloud_NFDeployment" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION',
'FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08" FOREIGN KEY ("bSide_ODUFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION" ADD CONSTRAINT "FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08" FOREIGN KEY ("bSide_ODUFunction") REFERENCES ties_data."o-ran-smo-teiv-ran_ODUFunction" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU',
'FK_1AB1E0CC29DA2E122D43A6616EC60A3F73E68649',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_1AB1E0CC29DA2E122D43A6616EC60A3F73E68649" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_1AB1E0CC29DA2E122D43A6616EC60A3F73E68649" FOREIGN KEY ("aSide_AntennaModule") REFERENCES ties_data."o-ran-smo-teiv-equipment_AntennaModule" ("id");'
);
SELECT ties_data.create_constraint_if_not_exists(
'o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU',
'FK_8605800A4923C52258A8CE3989E18A7C93D22E8C',
- 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_8605800A4923C52258A8CE3989E18A7C93D22E8C" FOREIGN KEY ("bSide_NRCellDU") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" (id) ON DELETE CASCADE;'
+ 'ALTER TABLE ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ADD CONSTRAINT "FK_8605800A4923C52258A8CE3989E18A7C93D22E8C" FOREIGN KEY ("bSide_NRCellDU") REFERENCES ties_data."o-ran-smo-teiv-ran_NRCellDU" ("id");'
);
CREATE INDEX IF NOT EXISTS "IDX_996D2C34C2458A6EFE8599C1A0E6942D3D288B7A" ON ties_data."3C2E2CE7BDF8321BC824B6318B190690F58DBB82" USING GIN (("CD_sourceIds"::TEXT) gin_trgm_ops);
+++ /dev/null
---
--- ============LICENSE_START=======================================================
--- Copyright (C) 2024 Ericsson
--- Modifications Copyright (C) 2024 OpenInfra Foundation Europe
--- ================================================================================
--- Licensed under the Apache License, Version 2.0 (the "License");
--- you may not use this file except in compliance with the License.
--- You may obtain a copy of the License at
---
--- http://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing, software
--- distributed under the License is distributed on an "AS IS" BASIS,
--- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--- See the License for the specific language governing permissions and
--- limitations under the License.
---
--- SPDX-License-Identifier: Apache-2.0
--- ============LICENSE_END=========================================================
---
-
-BEGIN;
-
-DROP SCHEMA IF EXISTS ties_model cascade;
-CREATE SCHEMA IF NOT EXISTS ties_model;
-ALTER SCHEMA ties_model OWNER TO :pguser;
-SET default_tablespace = '';
-SET default_table_access_method = heap;
-
-SET ROLE :pguser;
-
-CREATE TABLE IF NOT EXISTS ties_model.hash_info (
- "name" TEXT PRIMARY KEY,
- "hashedValue" VARCHAR(63) NOT NULL,
- "type" VARCHAR(511)
-);
-
-CREATE TABLE IF NOT EXISTS ties_model.module_reference (
- "name" TEXT PRIMARY KEY,
- "namespace" TEXT,
- "domain" TEXT,
- "includedModules" jsonb DEFAULT '[]'::jsonb,
- "revision" TEXT NOT NULL,
- "content" TEXT NOT NULL
-);
-
-CREATE TABLE IF NOT EXISTS ties_model.entity_info (
- "storedAt" TEXT PRIMARY KEY,
- "name" TEXT NOT NULL,
- "moduleReferenceName" TEXT NOT NULL,
- "attributeNames" jsonb DEFAULT '[]'::jsonb,
- FOREIGN KEY ("moduleReferenceName") REFERENCES ties_model.module_reference ("name") ON DELETE CASCADE
-);
-
-CREATE TABLE IF NOT EXISTS ties_model.relationship_info (
- "name" TEXT NOT NULL,
- "aSideAssociationName" TEXT NOT NULL,
- "aSideMOType" TEXT NOT NULL,
- "aSideModule" TEXT NOT NULL,
- "aSideMinCardinality" BIGINT NOT NULL,
- "aSideMaxCardinality" BIGINT NOT NULL,
- "bSideAssociationName" TEXT NOT NULL,
- "bSideMOType" TEXT NOT NULL,
- "bSideModule" TEXT NOT NULL,
- "bSideMinCardinality" BIGINT NOT NULL,
- "bSideMaxCardinality" BIGINT NOT NULL,
- "associationKind" TEXT NOT NULL,
- "relationshipDataLocation" TEXT NOT NULL,
- "storedAt" TEXT NOT NULL,
- "connectSameEntity" BOOLEAN NOT NULL,
- "moduleReferenceName" TEXT NOT NULL,
- PRIMARY KEY ("name", "moduleReferenceName"),
- FOREIGN KEY ("aSideModule") REFERENCES ties_model.module_reference ("name") ON DELETE CASCADE,
- FOREIGN KEY ("bSideModule") REFERENCES ties_model.module_reference ("name") ON DELETE CASCADE,
- FOREIGN KEY ("moduleReferenceName") REFERENCES ties_model.module_reference ("name") ON DELETE CASCADE
-);
-
-COPY ties_model.hash_info("name", "hashedValue", "type") FROM stdin;
-CD_classifiers CD_classifiers COLUMN
-CD_decorators CD_decorators COLUMN
-CD_sourceIds CD_sourceIds COLUMN
-FK_o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE_aSide_NFDeployment FK_A08D274894ECB6799E56C2089A494AF0345B9B16 CONSTRAINT
-FK_o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE_bSide_OCloudNamespace FK_D39953B79C8D39296B892FCF2C00B9C99AC7023F CONSTRAINT
-FK_o-ran-smo-teiv-cloud_NFDeployment_REL_FK_comprised-by-cloudifiedNF FK_127C21CB9B8871C3BCACA05A5400BE6B8E7FCAC0 CONSTRAINT
-FK_o-ran-smo-teiv-cloud_NFDeployment_REL_FK_serviced-managedElement FK_AC1348E208C2E64F2EB1DECE2CCA5DB10B89CBD9 CONSTRAINT
-FK_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_aSide_NodeCluster FK_AE882D77CE8D21B8032B124E1822E0EEE5DAAD92 CONSTRAINT
-FK_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_bSide_OCloudSite FK_888BF6FF782916E61B3FE80643A549A1CFDB6117 CONSTRAINT
-FK_o-ran-smo-teiv-cloud_OCloudNamespace_REL_FK_deployed-on-nodeCluster FK_143EFC1953E68469572446EFB56BDEBBC83B8EBF CONSTRAINT
-FK_o-ran-smo-teiv-equipment_AntennaModule_REL_FK_grouped-by-sector FK_078764B2F3D613D44CC6E3586F564C83164D2481 CONSTRAINT
-FK_o-ran-smo-teiv-equipment_AntennaModule_REL_FK_installed-at-site FK_E3BAEF04443354C0FC1837CF7964E05BEF9FD6CC CONSTRAINT
-FK_o-ran-smo-teiv-oam_ManagedElement_REL_FK_deployed-as-cloudifiedNF FK_899B8130A861D1450FC49D3159D8B29C0628A717 CONSTRAINT
-FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction FK_o-ran-smo-teiv-ran_NRCellCU_REL_FK_provided-by-ocucpFunction CONSTRAINT
-FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_grouped-by-sector CONSTRAINT
-FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction FK_o-ran-smo-teiv-ran_NRCellDU_REL_FK_provided-by-oduFunction CONSTRAINT
-FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_provided-by-oduFunction FK_9B73B9E2DBA36736FB76606005C823A6D565A5CD CONSTRAINT
-FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-antennaCapability FK_65D538D54EB33081C808540235FEB28823428E64 CONSTRAINT
-FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu FK_o-ran-smo-teiv-ran_NRSectorCarrier_REL_FK_used-by-nrCellDu CONSTRAINT
-FK_o-ran-smo-teiv-ran_NearRTRICFunction_REL_FK_managed-by-managedElement FK_32BDE0334EA6AD74ABB3958A2B163F63A3F05203 CONSTRAINT
-FK_o-ran-smo-teiv-ran_OCUCPFunction_REL_FK_managed-by-managedElement FK_122DD9709032528D161177B3624AD7AAF6589005 CONSTRAINT
-FK_o-ran-smo-teiv-ran_OCUUPFunction_REL_FK_managed-by-managedElement FK_8062AF50E5EE5543FBCC68D66FDFF673E31E081D CONSTRAINT
-FK_o-ran-smo-teiv-ran_ODUFunction_REL_FK_managed-by-managedElement FK_B6F0A4F9024FB47DA39C9A4F1DFFF78330222A80 CONSTRAINT
-FK_o-ran-smo-teiv-ran_ORUFunction_REL_FK_managed-by-managedElement FK_B497A8C3DC2D647938E6DB4C7E691509DD8C90DE CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION_aSide_NFDeployment FK_BE847E738902EA979AC709D5A3D0CCD3FD8911CA CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION_bSide_NearRTRICFunction FK_CCC0DEA6E4ABAB8614332070E83D953254D5A3A5 CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION_aSide_NFDeployment FK_2B4B09AF7CC9C877B1140BB127B4CB4DA438195D CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION_bSide_OCUCPFunction FK_BCF2F9776761ABC19AE0BBD0244D7CD5785E7AC6 CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION_aSide_NFDeployment FK_AC1393DCBA845EDA13DADCB5BD87DF4163CD1669 CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION_bSide_OCUUPFunction FK_8585D545BC37A473A298E0F5F5942F897A7105B1 CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION_aSide_NFDeployment FK_ABA5D0BEEB45E6A5B14DB24E880029CA38DF3F79 CONSTRAINT
-FK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION_bSide_ODUFunction FK_C7C12DB840FBCF4EA729B8C2BBCD8BFDE06F0F08 CONSTRAINT
-FK_o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY_aSide_AntennaModule FK_D80D1E6B26DF620B4DE659C600A3B7F709A41960 CONSTRAINT
-FK_o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY_bSide_AntennaCapability FK_7148BEED02C0617DE1DEEB6639F34A9FA9251B06 CONSTRAINT
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_CloudifiedNF_CD_classifiers IDX_BD96130868B69147B2F87B0D15F5829690DEF454 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_CloudifiedNF_CD_sourceIds IDX_9EDB5C47201FC82A4565BFED9EF369D6C6529B19 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE_CD_classifiers IDX_1BCFD9635C4FA089EDC2E18FFEF56DBF3C5E7A52 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE_CD_sourceIds IDX_F97E398B17532BCD9923CE0CF98E73227D890037 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDeployment_CD_classifiers IDX_BED5B5FAA75FEE133E27581EAA611B89D20F24E1 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDeployment_CD_sourceIds IDX_6433B9B7D69E51E828BDCFCAF59729EDCD10DA60 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDeployment_REL_CD_classifiers_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT IDX_31F185F0F700C0AE11C5A9B8D28DBF6E37538635 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDeployment_REL_CD_classifiers_NFDEPLOYMENT_SERVES_MANAGEDELEMENT IDX_1EE98ACCAE5537752BD51A3D5F6429585CC543F6 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDeployment_REL_CD_sourceIds_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT IDX_072EB0C094138AB2D90F9CFBDA765B3B464EE86F INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NFDeployment_REL_CD_sourceIds_NFDEPLOYMENT_SERVES_MANAGEDELEMENT IDX_4DD95BAED8503502101FEB9ECA25DDA8F371816C INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_CD_classifiers IDX_29702D5C8D0B9B20BFB534FA233B9D9FADC2E3A1 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_CD_sourceIds IDX_1D7F9BD4B5BBF73CC3D06D949731DC169DDED26D INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NodeCluster_CD_classifiers IDX_CB29E8DDA990051B2A3DF193D8E4912F25D5FA0D INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_NodeCluster_CD_sourceIds IDX_DC1829E4241BA7C9B3E5281AC0DF00A766F9452E INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_OCloudNamespace_CD_classifiers IDX_57EB74DEF745DE4BA9AAD8E735BACB71F2E8C417 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_OCloudNamespace_CD_sourceIds IDX_1B8DF6B061E229E5B6AC796911E6C8C23ECAD585 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_OCloudNamespace_REL_CD_classifiers_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER IDX_6EE081E80342904B676496DA42DFAEC3EDA2CE27 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_OCloudNamespace_REL_CD_sourceIds_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER IDX_A7A50200F582AB86EF483F9BA74F999F17B7F653 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_OCloudSite_CD_classifiers IDX_281A2DE604D25D6CFECB9B26D1FF70429FDB0FD0 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-cloud_OCloudSite_CD_sourceIds IDX_30C83E5F8447D28D8E2A73048DF751C886AF318B INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_AntennaModule_CD_classifiers IDX_1C0CAFD80FDD6444044E3F76C7C0A7BDC35F9BC8 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_AntennaModule_CD_sourceIds IDX_905011128A2C218B5352C19ED1FE9851F43EB911 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_AntennaModule_REL_CD_classifiers_ANTENNAMODULE_INSTALLED_AT_SITE IDX_17E417F7EF56809674BE1D5F5154DCCE01E00A96 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_AntennaModule_REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE IDX_83B6347C0C0A005D5E3D856D973D3322DFEDEA35 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_AntennaModule_REL_CD_sourceIds_ANTENNAMODULE_INSTALLED_AT_SITE IDX_F497DEC01DA066CB09DA2AA7EDE3F4410078491B INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_AntennaModule_REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE IDX_5ABDB19E55A6BDEF33855F14CB1B3B8CF457912C INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_AntennaModule_antennaBeamWidth IDX_21B0F1FE632B6CB185C49BA6F00224068F443215 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_Site_CD_classifiers IDX_EEBF1BC3344E97988232825777AB13FAB6C4F3F0 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-equipment_Site_CD_sourceIds IDX_102A50584376DE25B6BBD7157594C607A5C957F2 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-oam_ManagedElement_CD_classifiers IDX_98AC4232BC02323E03416954215889CEE874A1E9 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-oam_ManagedElement_CD_sourceIds IDX_DDD73D6F4004BF3A96AA118281EE3E565A922B47 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-oam_ManagedElement_REL_CD_classifiers_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF IDX_634619CF7333EBC0AFDE990900B79220FC626EBA INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-oam_ManagedElement_REL_CD_sourceIds_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF IDX_8065626F3F48D4E5A4285654739D3B26499E4C4E INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_AntennaCapability_CD_classifiers IDX_E7FFE8F4A166AA9A382A0659762FFEC313A9EB5C INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_AntennaCapability_CD_sourceIds IDX_CC3E208A4EE51D3B505416A599F36F3C99F466C8 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_AntennaCapability_eUtranFqBands IDX_5FB80647AE3E5C0443A792618D65B9090EE2A3FC INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_AntennaCapability_geranFqBands IDX_A94722FF7B95D8974B494793908B57B4E1A9743B INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_AntennaCapability_nRFqBands IDX_441B5C05448D63552C6414BD59C13641D8A4408D INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellCU_CD_classifiers IDX_E5930226819982DC0CFC1FA64FB3600647222435 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellCU_CD_sourceIds IDX_0C443A16285D233F16966C2F0314CDC9D0F6D0B8 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellCU_REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU IDX_D366F952FD4A52645C45A19CBFD02B8897FC1F18 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellCU_REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU IDX_6891C1BB8EE214340A362906C08955E8ACC1C597 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellDU_CD_classifiers IDX_C437D39632DC79BAB6AC4F0880826A05425F9C32 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellDU_CD_sourceIds IDX_FFD60DD99D80C276F402E66546F5DACB2D81EE26 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellDU_REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRCELLDU IDX_A950BF337D5D820E5B39AC3F1B1AC09C062F30C9 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellDU_REL_CD_classifiers_SECTOR_GROUPS_NRCELLDU IDX_7CB4A7724F68D1CB2D12E8DE779BA9103F7DBE0A INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellDU_REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRCELLDU IDX_B48D188E92ACBE9A2CAF8CD730A5DDFD7E086705 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRCellDU_REL_CD_sourceIds_SECTOR_GROUPS_NRCELLDU IDX_6325926B4D2FDD1FBBB34250DABEA5E7229FF9F5 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_CD_classifiers IDX_050A80BEEF775E4D3CE216F282F23DB99DA2D798 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_CD_sourceIds IDX_8E34EC0B1DE7DDCE3B32ADD85B11E15F95C5644E INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_classifiers_NRCELLDU_USES_NRSECTORCARRIER IDX_ED50A5139F1449DBAD8DA10D45F5A5BF819EACBA INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_classifiers_NRSECTORCARRIER_USES_ANTENNACAPABILITY IDX_B975D24291849007D4AA6686C5D3983885D5C884 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRSECTORCARRIER IDX_FC70CCFDC1359B698BBBE5CA7AA158F0AF693461 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_sourceIds_NRCELLDU_USES_NRSECTORCARRIER IDX_7BFD17A71AB1B7765FE6431DA4E66C2EDE88AC3B INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_sourceIds_NRSECTORCARRIER_USES_ANTENNACAPABILITY IDX_1F27C515A028616FAC422A02ABBEC402D5DBB2E5 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRSECTORCARRIER IDX_986B2223E72FF79237337329F4C3BB9DA9025A34 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NearRTRICFunction_CD_classifiers IDX_8BCCF388DFC8652AD5CD0675C64F49D2D2EDC7A1 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NearRTRICFunction_CD_sourceIds IDX_E4E40B26C322AF63A662706AF8B0B36E1043B793 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NearRTRICFunction_REL_CD_classifiers_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION IDX_0ECC814A408874C9F8E73EEE3968984A6345A606 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_NearRTRICFunction_REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION IDX_B608D8F6B8A79097EA61A1B4777A96CD3D2D1E98 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUCPFunction_CD_classifiers IDX_8D9862DBF6A721FABAEA4204E04B374692C1C5B8 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUCPFunction_CD_sourceIds IDX_84A29F8571860AC5A7BD1A99923485ECB6A3939D INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUCPFunction_REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION IDX_21F2560C8330A795E8AFB54C6D31CDCF6CCD3070 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUCPFunction_REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION IDX_4C6B5CB5CF018656DC8191CE6FE3B9DA2CD0C819 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUUPFunction_CD_classifiers IDX_25E4BCFBF8F5344DFC60BCB159FA873FFC8109E9 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUUPFunction_CD_sourceIds IDX_6C81B2BBFCFE94C87598869A2099E04571202BA7 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUUPFunction_REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION IDX_3346DFB8C2B7D6EEA12B7C1DE4A84B058C24A657 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUUPFunction_REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION IDX_50209F1FF59B49F79FF194887B631994F2B5148A INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_OCUUPFunction_pLMNIdList IDX_9122DAA7A60DB585BE5ECA68A2EDB9ABF1E7156A INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ODUFunction_CD_classifiers IDX_5CE9EDE1F25AB2D880A41BC5D297FDBE668182E8 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ODUFunction_CD_sourceIds IDX_73790DA8FF6365B752DC8B399893AC6DE8CF26C4 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ODUFunction_REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ODUFUNCTION IDX_5DD192861541E0EB2776C6BFE34B327FF27F93C3 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ODUFunction_REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ODUFUNCTION IDX_0E5C91A3252FBAFA72DB644D4E949A379F0CB910 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ORUFunction_CD_classifiers IDX_2A5AAAD13FDCFF7F2958005C22937366F6604A0D INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ORUFunction_CD_sourceIds IDX_D0D11CFAA917F4FA12748A041A34D2B39A3AD707 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ORUFunction_REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ORUFUNCTION IDX_DA79A3F946C1F4E8D05B4D6ADEF5E4C65E47635E INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_ORUFunction_REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ORUFUNCTION IDX_AF235FB2C9CCA99D94CC4038669EDD1BB6C7B2DF INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_Sector_CD_classifiers IDX_19C19556F9714850389595E0A16218FA229205FE INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-ran_Sector_CD_sourceIds IDX_E234B43A7CD7843672F08F2197AB46A2A50BECB0 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION_CD_classifiers IDX_F52FEEDBAF1B04D2D22EBAE051BB5125DF6A6968 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION_CD_sourceIds IDX_996D2C34C2458A6EFE8599C1A0E6942D3D288B7A INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION_CD_classifiers IDX_03F9C6A2FA82614A788443AC6044BCED2401C465 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION_CD_sourceIds IDX_10BCC6B44663A8D5431668BEE5DF80423420C616 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION_CD_classifiers IDX_69152691D777DDB084C053915D4A4B15F7F8B3EB INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION_CD_sourceIds IDX_64B7C127C01069009A3FB13592DAE249B0029283 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION_CD_classifiers IDX_F4A1999634924C7E4D1CBD05E83996A5B1262A8A INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION_CD_sourceIds IDX_5996D077978D38D0C1A951A262F1F7E1E339F052 INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY_CD_classifiers IDX_DD0D676834B12CA2F7E8219310998376A08D7F5F INDEX
-IDX_GIN_TRGM_OPS_ON_LIST_AS_JSONB_o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY_CD_sourceIds IDX_E896A9EB22A3F9F96CE75A271475316A98B629C8 INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_CloudifiedNF_CD_decorators IDX_GIN_o-ran-smo-teiv-cloud_CloudifiedNF_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE_CD_decorators IDX_4055A796F223DD01411AFFB5AD97EEEAB6B2320C INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_NFDeployment_CD_decorators IDX_GIN_o-ran-smo-teiv-cloud_NFDeployment_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_NFDeployment_REL_CD_decorators_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT IDX_46CDB369134F042EC021F7496DF721B49A9D43C0 INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_NFDeployment_REL_CD_decorators_NFDEPLOYMENT_SERVES_MANAGEDELEMENT IDX_39A292C3C42B34C2AD7C2A0FD087739C253B06FC INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_CD_decorators IDX_98A32BE3A8C1FF8CDEC95561DE4A74852FE70322 INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_NodeCluster_CD_decorators IDX_GIN_o-ran-smo-teiv-cloud_NodeCluster_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_OCloudNamespace_CD_decorators IDX_GIN_o-ran-smo-teiv-cloud_OCloudNamespace_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_OCloudNamespace_REL_CD_decorators_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER IDX_9AB8994DE0826F790D70614D4C52DD270AEF946B INDEX
-IDX_GIN_o-ran-smo-teiv-cloud_OCloudSite_CD_decorators IDX_GIN_o-ran-smo-teiv-cloud_OCloudSite_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-equipment_AntennaModule_CD_decorators IDX_GIN_o-ran-smo-teiv-equipment_AntennaModule_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-equipment_AntennaModule_REL_CD_decorators_ANTENNAMODULE_INSTALLED_AT_SITE IDX_2321BFA482AD2700F41E2BA359F6EB00F47601B9 INDEX
-IDX_GIN_o-ran-smo-teiv-equipment_AntennaModule_REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE IDX_6C6FBD69F47F41970595A8775DC99CA0F5E894A1 INDEX
-IDX_GIN_o-ran-smo-teiv-equipment_Site_CD_decorators IDX_GIN_o-ran-smo-teiv-equipment_Site_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-oam_ManagedElement_CD_decorators IDX_GIN_o-ran-smo-teiv-oam_ManagedElement_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-oam_ManagedElement_REL_CD_decorators_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF IDX_F15A070FC83B2E49223B4232E0BEB8931C2B7A4C INDEX
-IDX_GIN_o-ran-smo-teiv-ran_AntennaCapability_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_AntennaCapability_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRCellCU_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_NRCellCU_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRCellCU_REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU IDX_5D761303176D3B9338784DFBEE0CEC51046ADC30 INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRCellCU_plmnId IDX_GIN_o-ran-smo-teiv-ran_NRCellCU_plmnId INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRCellDU_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_NRCellDU_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRCellDU_REL_CD_decorators_ODUFUNCTION_PROVIDES_NRCELLDU IDX_F494CB3BA4C726D4C45D53B1EF62E1E26811CCEF INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRCellDU_REL_CD_decorators_SECTOR_GROUPS_NRCELLDU IDX_0A03C47C13AD3B5C84D3D8081493D670E9CBDCD1 INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRSectorCarrier_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_NRSectorCarrier_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_decorators_NRCELLDU_USES_NRSECTORCARRIER IDX_2ADB5C6DCAEE8811FB1CA8FD9EB53381F35FCB70 INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_decorators_NRSECTORCARRIER_USES_ANTENNACAPABILITY IDX_902B73F741160B9D4FBF62406D3D9ABBECAD8BE7 INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NRSectorCarrier_REL_CD_decorators_ODUFUNCTION_PROVIDES_NRSECTORCARRIER IDX_5AB1D780E57D940C42BAD29772E9E2B6C63498A0 INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NearRTRICFunction_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_NearRTRICFunction_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NearRTRICFunction_REL_CD_decorators_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION IDX_B10FD045A6C3E169953CCC38CC2D801FCE15A75F INDEX
-IDX_GIN_o-ran-smo-teiv-ran_NearRTRICFunction_pLMNId IDX_GIN_o-ran-smo-teiv-ran_NearRTRICFunction_pLMNId INDEX
-IDX_GIN_o-ran-smo-teiv-ran_OCUCPFunction_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_OCUCPFunction_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_OCUCPFunction_REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION IDX_D856E84F300B6711E81931AE1CBC8AD905FA384F INDEX
-IDX_GIN_o-ran-smo-teiv-ran_OCUCPFunction_pLMNId IDX_GIN_o-ran-smo-teiv-ran_OCUCPFunction_pLMNId INDEX
-IDX_GIN_o-ran-smo-teiv-ran_OCUUPFunction_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_OCUUPFunction_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_OCUUPFunction_REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION IDX_ADD3393C27589066C4993A3491436C6FB57A539F INDEX
-IDX_GIN_o-ran-smo-teiv-ran_ODUFunction_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_ODUFunction_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_ODUFunction_REL_CD_decorators_MANAGEDELEMENT_MANAGES_ODUFUNCTION IDX_0B9AC962B1E07740CE43D912B5FBC54E0B39DD24 INDEX
-IDX_GIN_o-ran-smo-teiv-ran_ORUFunction_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_ORUFunction_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-ran_ORUFunction_REL_CD_decorators_MANAGEDELEMENT_MANAGES_ORUFUNCTION IDX_7B916E1753D2860DF434831CF1E9697ED9973C8F INDEX
-IDX_GIN_o-ran-smo-teiv-ran_Sector_CD_decorators IDX_GIN_o-ran-smo-teiv-ran_Sector_CD_decorators INDEX
-IDX_GIN_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION_CD_decorators IDX_D333FA5882890B7CD3599712FFFB2641B9E04C80 INDEX
-IDX_GIN_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION_CD_decorators IDX_0867A1E865A904F4BB513948DAEB60412BE67DF3 INDEX
-IDX_GIN_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION_CD_decorators IDX_3AB53A0DB6DC4B4C8BB6194D6D487EBDC3D0E88F INDEX
-IDX_GIN_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION_CD_decorators IDX_5BAC6D2F05A63FDE27F082E8C8F4D766C145E835 INDEX
-IDX_GIN_o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY_CD_decorators IDX_7BF09D0227840279556AD27ACECB068705893D28 INDEX
-PK_o-ran-smo-teiv-cloud_CloudifiedNF_id PK_o-ran-smo-teiv-cloud_CloudifiedNF_id CONSTRAINT
-PK_o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE_id PK_E4FDDE2DC433209F933C7F53C9F72C1D2EB04BC6 CONSTRAINT
-PK_o-ran-smo-teiv-cloud_NFDeployment_id PK_o-ran-smo-teiv-cloud_NFDeployment_id CONSTRAINT
-PK_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_id PK_o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE_id CONSTRAINT
-PK_o-ran-smo-teiv-cloud_NodeCluster_id PK_o-ran-smo-teiv-cloud_NodeCluster_id CONSTRAINT
-PK_o-ran-smo-teiv-cloud_OCloudNamespace_id PK_o-ran-smo-teiv-cloud_OCloudNamespace_id CONSTRAINT
-PK_o-ran-smo-teiv-cloud_OCloudSite_id PK_o-ran-smo-teiv-cloud_OCloudSite_id CONSTRAINT
-PK_o-ran-smo-teiv-equipment_AntennaModule_id PK_o-ran-smo-teiv-equipment_AntennaModule_id CONSTRAINT
-PK_o-ran-smo-teiv-equipment_Site_id PK_o-ran-smo-teiv-equipment_Site_id CONSTRAINT
-PK_o-ran-smo-teiv-oam_ManagedElement_id PK_o-ran-smo-teiv-oam_ManagedElement_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_AntennaCapability_id PK_o-ran-smo-teiv-ran_AntennaCapability_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_NRCellCU_id PK_o-ran-smo-teiv-ran_NRCellCU_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_NRCellDU_id PK_o-ran-smo-teiv-ran_NRCellDU_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_NRSectorCarrier_id PK_o-ran-smo-teiv-ran_NRSectorCarrier_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_NearRTRICFunction_id PK_o-ran-smo-teiv-ran_NearRTRICFunction_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_OCUCPFunction_id PK_o-ran-smo-teiv-ran_OCUCPFunction_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_OCUUPFunction_id PK_o-ran-smo-teiv-ran_OCUUPFunction_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_ODUFunction_id PK_o-ran-smo-teiv-ran_ODUFunction_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_ORUFunction_id PK_o-ran-smo-teiv-ran_ORUFunction_id CONSTRAINT
-PK_o-ran-smo-teiv-ran_Sector_id PK_o-ran-smo-teiv-ran_Sector_id CONSTRAINT
-PK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION_id PK_82A1C5618438FF6DF7CDD48FD71E0A584E6D052A CONSTRAINT
-PK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION_id PK_2D854968CB74C42C534D8E7C2A53E93F6B7F001F CONSTRAINT
-PK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION_id PK_E551D02D14B3C04A565DC73A386BEB29627D3C08 CONSTRAINT
-PK_o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION_id PK_A10CB552A0F126991DD325EC84DBFAC6F2BBE1A3 CONSTRAINT
-PK_o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY_id PK_63E61CB6802F21FE7A04A80A095F6AF8ABF067CE CONSTRAINT
-REL_CD_classifiers_ANTENNAMODULE_INSTALLED_AT_SITE REL_CD_classifiers_ANTENNAMODULE_INSTALLED_AT_SITE COLUMN
-REL_CD_classifiers_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT REL_CD_classifiers_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT COLUMN
-REL_CD_classifiers_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF REL_CD_classifiers_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF COLUMN
-REL_CD_classifiers_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION REL_CD_classifiers_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION COLUMN
-REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION COLUMN
-REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION COLUMN
-REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ODUFUNCTION REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ODUFUNCTION COLUMN
-REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ORUFUNCTION REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ORUFUNCTION COLUMN
-REL_CD_classifiers_NFDEPLOYMENT_SERVES_MANAGEDELEMENT REL_CD_classifiers_NFDEPLOYMENT_SERVES_MANAGEDELEMENT COLUMN
-REL_CD_classifiers_NRCELLDU_USES_NRSECTORCARRIER REL_CD_classifiers_NRCELLDU_USES_NRSECTORCARRIER COLUMN
-REL_CD_classifiers_NRSECTORCARRIER_USES_ANTENNACAPABILITY REL_CD_classifiers_NRSECTORCARRIER_USES_ANTENNACAPABILITY COLUMN
-REL_CD_classifiers_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER REL_CD_classifiers_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER COLUMN
-REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU COLUMN
-REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRCELLDU REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRCELLDU COLUMN
-REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRSECTORCARRIER REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRSECTORCARRIER COLUMN
-REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE COLUMN
-REL_CD_classifiers_SECTOR_GROUPS_NRCELLDU REL_CD_classifiers_SECTOR_GROUPS_NRCELLDU COLUMN
-REL_CD_decorators_ANTENNAMODULE_INSTALLED_AT_SITE REL_CD_decorators_ANTENNAMODULE_INSTALLED_AT_SITE COLUMN
-REL_CD_decorators_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT REL_CD_decorators_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT COLUMN
-REL_CD_decorators_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF REL_CD_decorators_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF COLUMN
-REL_CD_decorators_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION REL_CD_decorators_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION COLUMN
-REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION COLUMN
-REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION COLUMN
-REL_CD_decorators_MANAGEDELEMENT_MANAGES_ODUFUNCTION REL_CD_decorators_MANAGEDELEMENT_MANAGES_ODUFUNCTION COLUMN
-REL_CD_decorators_MANAGEDELEMENT_MANAGES_ORUFUNCTION REL_CD_decorators_MANAGEDELEMENT_MANAGES_ORUFUNCTION COLUMN
-REL_CD_decorators_NFDEPLOYMENT_SERVES_MANAGEDELEMENT REL_CD_decorators_NFDEPLOYMENT_SERVES_MANAGEDELEMENT COLUMN
-REL_CD_decorators_NRCELLDU_USES_NRSECTORCARRIER REL_CD_decorators_NRCELLDU_USES_NRSECTORCARRIER COLUMN
-REL_CD_decorators_NRSECTORCARRIER_USES_ANTENNACAPABILITY REL_CD_decorators_NRSECTORCARRIER_USES_ANTENNACAPABILITY COLUMN
-REL_CD_decorators_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER REL_CD_decorators_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER COLUMN
-REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU COLUMN
-REL_CD_decorators_ODUFUNCTION_PROVIDES_NRCELLDU REL_CD_decorators_ODUFUNCTION_PROVIDES_NRCELLDU COLUMN
-REL_CD_decorators_ODUFUNCTION_PROVIDES_NRSECTORCARRIER REL_CD_decorators_ODUFUNCTION_PROVIDES_NRSECTORCARRIER COLUMN
-REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE COLUMN
-REL_CD_decorators_SECTOR_GROUPS_NRCELLDU REL_CD_decorators_SECTOR_GROUPS_NRCELLDU COLUMN
-REL_CD_sourceIds_ANTENNAMODULE_INSTALLED_AT_SITE REL_CD_sourceIds_ANTENNAMODULE_INSTALLED_AT_SITE COLUMN
-REL_CD_sourceIds_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT REL_CD_sourceIds_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT COLUMN
-REL_CD_sourceIds_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF REL_CD_sourceIds_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF COLUMN
-REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION COLUMN
-REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION COLUMN
-REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION COLUMN
-REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ODUFUNCTION REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ODUFUNCTION COLUMN
-REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ORUFUNCTION REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ORUFUNCTION COLUMN
-REL_CD_sourceIds_NFDEPLOYMENT_SERVES_MANAGEDELEMENT REL_CD_sourceIds_NFDEPLOYMENT_SERVES_MANAGEDELEMENT COLUMN
-REL_CD_sourceIds_NRCELLDU_USES_NRSECTORCARRIER REL_CD_sourceIds_NRCELLDU_USES_NRSECTORCARRIER COLUMN
-REL_CD_sourceIds_NRSECTORCARRIER_USES_ANTENNACAPABILITY REL_CD_sourceIds_NRSECTORCARRIER_USES_ANTENNACAPABILITY COLUMN
-REL_CD_sourceIds_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER REL_CD_sourceIds_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER COLUMN
-REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU COLUMN
-REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRCELLDU REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRCELLDU COLUMN
-REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRSECTORCARRIER REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRSECTORCARRIER COLUMN
-REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE COLUMN
-REL_CD_sourceIds_SECTOR_GROUPS_NRCELLDU REL_CD_sourceIds_SECTOR_GROUPS_NRCELLDU COLUMN
-REL_FK_comprised-by-cloudifiedNF REL_FK_comprised-by-cloudifiedNF COLUMN
-REL_FK_deployed-as-cloudifiedNF REL_FK_deployed-as-cloudifiedNF COLUMN
-REL_FK_deployed-on-nodeCluster REL_FK_deployed-on-nodeCluster COLUMN
-REL_FK_grouped-by-sector REL_FK_grouped-by-sector COLUMN
-REL_FK_installed-at-site REL_FK_installed-at-site COLUMN
-REL_FK_managed-by-managedElement REL_FK_managed-by-managedElement COLUMN
-REL_FK_provided-by-ocucpFunction REL_FK_provided-by-ocucpFunction COLUMN
-REL_FK_provided-by-oduFunction REL_FK_provided-by-oduFunction COLUMN
-REL_FK_serviced-managedElement REL_FK_serviced-managedElement COLUMN
-REL_FK_used-antennaCapability REL_FK_used-antennaCapability COLUMN
-REL_FK_used-by-nrCellDu REL_FK_used-by-nrCellDu COLUMN
-REL_ID_ANTENNAMODULE_INSTALLED_AT_SITE REL_ID_ANTENNAMODULE_INSTALLED_AT_SITE COLUMN
-REL_ID_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT REL_ID_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT COLUMN
-REL_ID_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF REL_ID_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF COLUMN
-REL_ID_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION REL_ID_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION COLUMN
-REL_ID_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION REL_ID_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION COLUMN
-REL_ID_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION REL_ID_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION COLUMN
-REL_ID_MANAGEDELEMENT_MANAGES_ODUFUNCTION REL_ID_MANAGEDELEMENT_MANAGES_ODUFUNCTION COLUMN
-REL_ID_MANAGEDELEMENT_MANAGES_ORUFUNCTION REL_ID_MANAGEDELEMENT_MANAGES_ORUFUNCTION COLUMN
-REL_ID_NFDEPLOYMENT_SERVES_MANAGEDELEMENT REL_ID_NFDEPLOYMENT_SERVES_MANAGEDELEMENT COLUMN
-REL_ID_NRCELLDU_USES_NRSECTORCARRIER REL_ID_NRCELLDU_USES_NRSECTORCARRIER COLUMN
-REL_ID_NRSECTORCARRIER_USES_ANTENNACAPABILITY REL_ID_NRSECTORCARRIER_USES_ANTENNACAPABILITY COLUMN
-REL_ID_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER REL_ID_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER COLUMN
-REL_ID_OCUCPFUNCTION_PROVIDES_NRCELLCU REL_ID_OCUCPFUNCTION_PROVIDES_NRCELLCU COLUMN
-REL_ID_ODUFUNCTION_PROVIDES_NRCELLDU REL_ID_ODUFUNCTION_PROVIDES_NRCELLDU COLUMN
-REL_ID_ODUFUNCTION_PROVIDES_NRSECTORCARRIER REL_ID_ODUFUNCTION_PROVIDES_NRSECTORCARRIER COLUMN
-REL_ID_SECTOR_GROUPS_ANTENNAMODULE REL_ID_SECTOR_GROUPS_ANTENNAMODULE COLUMN
-REL_ID_SECTOR_GROUPS_NRCELLDU REL_ID_SECTOR_GROUPS_NRCELLDU COLUMN
-REL_metadata_ANTENNAMODULE_INSTALLED_AT_SITE REL_metadata_ANTENNAMODULE_INSTALLED_AT_SITE COLUMN
-REL_metadata_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT REL_metadata_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT COLUMN
-REL_metadata_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF REL_metadata_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF COLUMN
-REL_metadata_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION REL_metadata_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION COLUMN
-REL_metadata_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION REL_metadata_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION COLUMN
-REL_metadata_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION REL_metadata_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION COLUMN
-REL_metadata_MANAGEDELEMENT_MANAGES_ODUFUNCTION REL_metadata_MANAGEDELEMENT_MANAGES_ODUFUNCTION COLUMN
-REL_metadata_MANAGEDELEMENT_MANAGES_ORUFUNCTION REL_metadata_MANAGEDELEMENT_MANAGES_ORUFUNCTION COLUMN
-REL_metadata_NFDEPLOYMENT_SERVES_MANAGEDELEMENT REL_metadata_NFDEPLOYMENT_SERVES_MANAGEDELEMENT COLUMN
-REL_metadata_NRCELLDU_USES_NRSECTORCARRIER REL_metadata_NRCELLDU_USES_NRSECTORCARRIER COLUMN
-REL_metadata_NRSECTORCARRIER_USES_ANTENNACAPABILITY REL_metadata_NRSECTORCARRIER_USES_ANTENNACAPABILITY COLUMN
-REL_metadata_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER REL_metadata_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER COLUMN
-REL_metadata_OCUCPFUNCTION_PROVIDES_NRCELLCU REL_metadata_OCUCPFUNCTION_PROVIDES_NRCELLCU COLUMN
-REL_metadata_ODUFUNCTION_PROVIDES_NRCELLDU REL_metadata_ODUFUNCTION_PROVIDES_NRCELLDU COLUMN
-REL_metadata_ODUFUNCTION_PROVIDES_NRSECTORCARRIER REL_metadata_ODUFUNCTION_PROVIDES_NRSECTORCARRIER COLUMN
-REL_metadata_SECTOR_GROUPS_ANTENNAMODULE REL_metadata_SECTOR_GROUPS_ANTENNAMODULE COLUMN
-REL_metadata_SECTOR_GROUPS_NRCELLDU REL_metadata_SECTOR_GROUPS_NRCELLDU COLUMN
-UNIQUE_o-ran-smo-teiv-cloud_NFDeployment_REL_ID_CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT UNIQUE_A5A8418B6BE911F281E6E2AA640D7D9F777471DC CONSTRAINT
-UNIQUE_o-ran-smo-teiv-cloud_NFDeployment_REL_ID_NFDEPLOYMENT_SERVES_MANAGEDELEMENT UNIQUE_8AD46969905BEEB89F63D3F37FD82B14F34FDCBC CONSTRAINT
-UNIQUE_o-ran-smo-teiv-cloud_OCloudNamespace_REL_ID_OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER UNIQUE_C4DE73BD7AA3DBFA2D32E577D4E0A534A7184AB0 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-equipment_AntennaModule_REL_ID_ANTENNAMODULE_INSTALLED_AT_SITE UNIQUE_9DF414C2F0CD7FA8BFCB3E9BF851784AC4BC49B1 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-equipment_AntennaModule_REL_ID_SECTOR_GROUPS_ANTENNAMODULE UNIQUE_78B1D3DCD903AFFB1965D440D87B2D194CA028A0 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-oam_ManagedElement_REL_ID_MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF UNIQUE_EC9B35192A31C6491E6566602720D1C26E3CB708 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_NRCellCU_REL_ID_OCUCPFUNCTION_PROVIDES_NRCELLCU UNIQUE_928074AEE57C9CB151F93FDC81BC59200D5F7497 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_NRCellDU_REL_ID_ODUFUNCTION_PROVIDES_NRCELLDU UNIQUE_B70F668E0E45FFFC5B7014489F6FD528EB15F192 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_NRCellDU_REL_ID_SECTOR_GROUPS_NRCELLDU UNIQUE_AC1C114ABED77D6DEC3F3AE3F9EBE8231924AEF4 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_NRSectorCarrier_REL_ID_NRCELLDU_USES_NRSECTORCARRIER UNIQUE_1AB577E5AC207ED4C99A9A96BA1C9C35544AFD25 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_NRSectorCarrier_REL_ID_NRSECTORCARRIER_USES_ANTENNACAPABILITY UNIQUE_A799EC9DA6624651081E1DA21B5F0C2D38F6A192 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_NRSectorCarrier_REL_ID_ODUFUNCTION_PROVIDES_NRSECTORCARRIER UNIQUE_D5D35955594A6EB48640425529F7DE44BED00B62 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_NearRTRICFunction_REL_ID_MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION UNIQUE_E020461673334EB824643649B6B31670FB064EC8 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_OCUCPFunction_REL_ID_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION UNIQUE_2B7D3D49C1072E660047DE56843413CE628BF94A CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_OCUUPFunction_REL_ID_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION UNIQUE_DF85FE7809B5527CB4A6028DD1A599DBBD5AF214 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_ODUFunction_REL_ID_MANAGEDELEMENT_MANAGES_ODUFUNCTION UNIQUE_D570291C9E28A2AF73387B7A8B0F4C70130EEDB4 CONSTRAINT
-UNIQUE_o-ran-smo-teiv-ran_ORUFunction_REL_ID_MANAGEDELEMENT_MANAGES_ORUFUNCTION UNIQUE_4E6F008B82605A806EED04B2315A1FEE095A9241 CONSTRAINT
-aSide_AntennaModule aSide_AntennaModule COLUMN
-aSide_NFDeployment aSide_NFDeployment COLUMN
-aSide_NodeCluster aSide_NodeCluster COLUMN
-antennaBeamWidth antennaBeamWidth COLUMN
-antennaModelNumber antennaModelNumber COLUMN
-arfcnDL arfcnDL COLUMN
-arfcnUL arfcnUL COLUMN
-azimuth azimuth COLUMN
-bSChannelBwDL bSChannelBwDL COLUMN
-bSide_AntennaCapability bSide_AntennaCapability COLUMN
-bSide_NearRTRICFunction bSide_NearRTRICFunction COLUMN
-bSide_OCUCPFunction bSide_OCUCPFunction COLUMN
-bSide_OCUUPFunction bSide_OCUUPFunction COLUMN
-bSide_OCloudNamespace bSide_OCloudNamespace COLUMN
-bSide_OCloudSite bSide_OCloudSite COLUMN
-bSide_ODUFunction bSide_ODUFunction COLUMN
-cellLocalId cellLocalId COLUMN
-eUtranFqBands eUtranFqBands COLUMN
-electricalAntennaTilt electricalAntennaTilt COLUMN
-frequencyDL frequencyDL COLUMN
-frequencyUL frequencyUL COLUMN
-gNBCUName gNBCUName COLUMN
-gNBDUId gNBDUId COLUMN
-gNBId gNBId COLUMN
-gNBIdLength gNBIdLength COLUMN
-geo-location geo-location COLUMN
-geranFqBands geranFqBands COLUMN
-horizontalBeamWidth horizontalBeamWidth COLUMN
-id id COLUMN
-mechanicalAntennaBearing mechanicalAntennaBearing COLUMN
-mechanicalAntennaTilt mechanicalAntennaTilt COLUMN
-metadata metadata COLUMN
-nCI nCI COLUMN
-nRFqBands nRFqBands COLUMN
-nRPCI nRPCI COLUMN
-nRTAC nRTAC COLUMN
-name name COLUMN
-nearRtRicId nearRtRicId COLUMN
-o-ran-smo-teiv-cloud_CloudifiedNF o-ran-smo-teiv-cloud_CloudifiedNF TABLE
-o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE TABLE
-o-ran-smo-teiv-cloud_NFDeployment o-ran-smo-teiv-cloud_NFDeployment TABLE
-o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE TABLE
-o-ran-smo-teiv-cloud_NodeCluster o-ran-smo-teiv-cloud_NodeCluster TABLE
-o-ran-smo-teiv-cloud_OCloudNamespace o-ran-smo-teiv-cloud_OCloudNamespace TABLE
-o-ran-smo-teiv-cloud_OCloudSite o-ran-smo-teiv-cloud_OCloudSite TABLE
-o-ran-smo-teiv-equipment_AntennaModule o-ran-smo-teiv-equipment_AntennaModule TABLE
-o-ran-smo-teiv-equipment_Site o-ran-smo-teiv-equipment_Site TABLE
-o-ran-smo-teiv-oam_ManagedElement o-ran-smo-teiv-oam_ManagedElement TABLE
-o-ran-smo-teiv-ran_AntennaCapability o-ran-smo-teiv-ran_AntennaCapability TABLE
-o-ran-smo-teiv-ran_NRCellCU o-ran-smo-teiv-ran_NRCellCU TABLE
-o-ran-smo-teiv-ran_NRCellDU o-ran-smo-teiv-ran_NRCellDU TABLE
-o-ran-smo-teiv-ran_NRSectorCarrier o-ran-smo-teiv-ran_NRSectorCarrier TABLE
-o-ran-smo-teiv-ran_NearRTRICFunction o-ran-smo-teiv-ran_NearRTRICFunction TABLE
-o-ran-smo-teiv-ran_OCUCPFunction o-ran-smo-teiv-ran_OCUCPFunction TABLE
-o-ran-smo-teiv-ran_OCUUPFunction o-ran-smo-teiv-ran_OCUUPFunction TABLE
-o-ran-smo-teiv-ran_ODUFunction o-ran-smo-teiv-ran_ODUFunction TABLE
-o-ran-smo-teiv-ran_ORUFunction o-ran-smo-teiv-ran_ORUFunction TABLE
-o-ran-smo-teiv-ran_Sector o-ran-smo-teiv-ran_Sector TABLE
-o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION 3C2E2CE7BDF8321BC824B6318B190690F58DBB82 TABLE
-o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION TABLE
-o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION TABLE
-o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION TABLE
-o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY CFC235E0404703D1E4454647DF8AAE2C193DB402 TABLE
-oruId oruId COLUMN
-pLMNId pLMNId COLUMN
-pLMNIdList pLMNIdList COLUMN
-plmnId plmnId COLUMN
-positionWithinSector positionWithinSector COLUMN
-sectorId sectorId COLUMN
-totalTilt totalTilt COLUMN
-verticalBeamWidth verticalBeamWidth COLUMN
-\.
-
-COPY ties_model.module_reference("name", "namespace", "domain", "includedModules", "revision", "content") FROM stdin;
-_3gpp-common-yang-extensions urn:3gpp:sa5:_3gpp-common-yang-extensions \N [] 2019-06-23 bW9kdWxlIF8zZ3BwLWNvbW1vbi15YW5nLWV4dGVuc2lvbnMgewogIHlhbmctdmVyc2lvbiAxLjE7CiAgbmFtZXNwYWNlIHVybjozZ3BwOnNhNTpfM2dwcC1jb21tb24teWFuZy1leHRlbnNpb25zIDsKICBwcmVmaXggeWV4dDNncHAgOwoKICBvcmdhbml6YXRpb24gIjNHUFAgU0E1IjsKICBkZXNjcmlwdGlvbiAiVGhlIG1vZHVsZSBkZWZpbmVzIFlBTkcgZXh0ZW5zaW9ucyBuZWVkZWQgCiAgICAzR1BQIFlBTkcgbW9kZWxpbmcuCgogICAgQ29weXJpZ2h0IChjKSAyMDE5IDNHUFAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgRXh0ZW5zaW9ucyBNVVNUIGJlIGRlZmluZWQgd2l0aCB0aGUgZm9sbG93aW5nIHN0cnVjdHVyZSBpbiB0aGUKICAgIGRlc2NyaXB0aW9uIHN0YXRlbWVudDoKICAgICAgICAtIFdoYXQgaXMgdGhpcyBzdGF0ZW1lbnQuCiAgICAgICAgLSBOZXdsaW5lLAogICAgICAgIC0gVGhpcyBzdGF0ZW1lbnQgY2FuIGJlIGEgc3Vic3RhdGVtZW50IG9mIHRoZSB4eHggc3RhdGVtZW50cyB3aXRoCiAgICAgICAgY2FyZGluYWxpdHkgeC4ueS4KICAgICAgICAtIFRoaXMgc3RhdGVtZW50IGNhbiBoYXZlIHRoZSBmb2xsb3dpbmcgc3Vic3RhdGVtZW50cyB3aXRoCiAgICAgICAgY2FyZGluYWxpdHkgeC4ueS4KICAgICAgICAtIE5ld2xpbmUKICAgICAgICAtIElzIGNoYW5naW5nIHRoaXMgc3RhdGVtZW50IGFuIGVkaXRvcmlhbCwgQkMoYmFja3dhcmRzIGNvbXBhdGlibGUpIAogICAgICAgIG9yIE5CQyhub24tQkMpIGNoYW5nZT8KICAgICAgICAtIE5ld2xpbmUuCiAgICAgICAgLSBUaGUgYXJndW1lbnQgaXRzIG1lYW5pbmcgYW5kIHR5cGUuIFByZWZlcmFibHkgdXNlIFlBTkcgdHlwZXMgYW5kCiAgICAgICAgICBjb25zdHJhaW50cyB0byBkZWZpbmUgdGhlIGFyZ3VtZW50J3MgdHlwZS4KCiAgICBBbnkgZXh0ZW5zaW9uIHN0YXRlbWVudCBjYW4gYmUgYWRkZWQgd2l0aCBhCiAgICBkZXZpYXRpb24vZGV2aWF0ZSBhZGQgc3RhdGVtZW50LiBJbiB0aGlzIGNhc2UgdGhlIHJlc3RyaWN0aW9uIGFib3V0CiAgICB0aGUgcGFyZW50IHN0YXRlbWVudCBvZiB0aGUgZXh0ZW5zaW9uIFNIQUxMIGJlIGV2YWx1YXRlZCBiYXNlZCBvbiB0aGUKICAgIHRhcmdldCBvZiB0aGUgZGV2aWF0aW9uIHN0YXRlbWVudC4KCiAgICBTdXBwb3J0IGZvciB0aGlzIG1vZHVsZSBkb2VzIG5vdCBtZWFuIHRoYXQgYSBZQU5HIHNlcnZlciBpbXBsZW1lbnRzCiAgICBzdXBwb3J0IGZvciBlYWNoIG9mIHRoZXNlIGV4dGVuc2lvbnMuCiAgICBJbXBsZW1lbnRlcnMgb2YgZWFjaCBzcGVjaWZpYyBtb2R1bGUgdXNpbmcgYW4gZXh0ZW5zaW9ucyBNVVNUIGNoZWNrCiAgICBpZiB0aGUgc2VydmVyIGltcGxlbWVudHMgc3VwcG9ydCBmb3IgdGhlIHVzZWQgZXh0ZW5zaW9uLgogICAgTm90ZTogbW9kdWxlcyB1c2UgbWFueSBleHRlbnNpb25zIHdoaWNoIGluZGl2aWR1YWwKICAgIGltcGxlbWVudGF0aW9ucyBNQVkgb3IgTUFZIE5PVCBzdXBwb3J0LgogICAgSWYgc3VwcG9ydCBmb3IgYW4gZXh0ZW5zaW9uIGlzIG1pc3NpbmcgdGhlIGV4dGVuc2lvbiBzdGF0ZW1lbnQgbmVlZHMKICAgIGluZGl2aWR1YWwgaGFuZGxpbmcgb3IgaXQgU0hPVUxEIGJlIHJlbW92ZWQgZnJvbSB0aGUgbW9kdWxlIHVzaW5nCiAgICB0aGUgZXh0ZW5zaW9uIGUuZy4gd2l0aCBhIGRldmlhdGlvbi4KICAgICAgICAgICI7CgogIHJldmlzaW9uICIyMDE5LTA2LTIzIiB7CiAgICBkZXNjcmlwdGlvbiAiSW5pdGlhbCB2ZXJzaW9uIjsKICB9CgogIGV4dGVuc2lvbiBpblZhcmlhbnQgewogICAgZGVzY3JpcHRpb24KICAgICAgIkluZGljYXRlcyB0aGF0IHRoZSB2YWx1ZSBmb3IgdGhlIGRhdGEgbm9kZSBjYW4gb25seSBiZSBzZXQgd2hlbiBpdHMKICAgICAgcGFyZW50IGRhdGEgbm9kZSBpcyBiZWluZyBjcmVhdGVkLiBUbyBjaGFuZ2UgdGhlIHZhbHVlIGFmdGVyIHRoYXQsIHRoZQogICAgICBwYXJlbnQgZGF0YSBub2RlIG11c3QgYmUgZGVsZXRlZCBhbmQgcmVjcmVhdGVkIHdpdGggdGhlIGRhdGEgbm9kZQogICAgICBoYXZpbmcgdGhlIG5ldyB2YWx1ZS4KCiAgICAgIEl0IGlzIHVubmVjZXNzYXJ5IHRvIHVzZSBhbmQgTVVTVCBOT1QgYmUgdXNlZCBmb3Iga2V5IGxlYWZzLgoKICAgICAgVGhlIHN0YXRlbWVudCBNVVNUIG9ubHkgYmUgYSBzdWJzdGF0ZW1lbnQgb2YgYSBsZWFmLCBsZWFmLWxpc3QsIGxpc3QgCiAgICAgIHN0YXRlbWVudHMgdGhhdCBpcyBjb25maWc9dHJ1ZS4KICAgICAgWmVybyBvciBvbmUgaW5WYXJpYW50IHN0YXRlbWVudCBpcyBhbGxvd2VkIHBlciBwYXJlbnQgc3RhdGVtZW50LgogICAgICBOTyBzdWJzdGF0ZW1lbnRzIGFyZSBhbGxvd2VkLgogICAgICAgICAgICAKICAgICAgQWRkaW5nIHRoaXMgc3RhdGVtZW50IGlzIGFuIE5CQyBjaGFuZ2UsIHJlbW92aW5nIGl0IGlzIEJDLiI7CiAgfQoKICBleHRlbnNpb24gaW5pdGlhbC12YWx1ZSB7CiAgICBkZXNjcmlwdGlvbiAiU3BlY2lmaWVzIGEgdmFsdWUgdGhhdCB0aGUgc3lzdGVtIHdpbGwgc2V0IGZvciBhIGxlYWYKICAgICAgbGVhZi1saXN0IGlmIGEgdmFsdWUgaXMgbm90IHNwZWNpZmllZCBmb3IgaXQgd2hlbiBpdHMgcGFyZW50IGxpc3QKICAgICAgb3IgY29udGFpbmVyIGlzIGNyZWF0ZWQuIFRoZSB2YWx1ZSBoYXMgbm8gZWZmZWN0IGluIGFueSBvdGhlcgogICAgICBtb2RpZmljYXRpb24gZS5nLiBjaGFuZ2luZyBvciByZW1vdmluZyB0aGUgdmFsdWUuCgogICAgICBUaGUgZGVzY3JpcHRpb24gc3RhdGVtZW50IG9mIHRoZSBwYXJlbnQgc3RhdGVtZW50IFNIT1VMRCBjb250YWluCiAgICAgIHRoZSBsYWJlbCAnSW5pdGlhbC12YWx1ZTogJyBmb2xsb3dlZCBieSB0aGUgdGV4dCBmcm9tIHRoZSBhcmd1bWVudC4KCiAgICAgIFRoZSBzdGF0ZW1lbnQgTVVTVCBvbmx5IGJlIGEgc3Vic3RhdGVtZW50IG9mIGEgbGVhZiBvciBsZWFmLWxpc3QuCiAgICAgIFRoZSBzdGF0ZW1lbnQgTVVTVCBOT1QgYmUgcHJlc2VudCBpZiB0aGUgbGVhZiBvciB0aGUgbGVhZi1saXN0IAogICAgICBoYXMgYSBkZWZhdWx0IHN0YXRlbWVudCBvciB0aGUgdHlwZSB1c2VkIGZvciB0aGUgZGF0YSBub2RlIAogICAgICBoYXMgYSBkZWZhdWx0IHZhbHVlLgogICAgICBUaGUgc3RhdGVtZW50IE1VU1QgTk9UIGJlIHVzZWQgZm9yIGNvbmZpZz1mYWxzZSBkYXRhIG9yIGluIGFuIAogICAgICBhY3Rpb24sIHJwYyBvciBub3RpZmljYXRpb24uCiAgICAgIFplcm8gb3Igb25lIGluaXRpYWwtdmFsdWUgc3RhdGVtZW50cyBhcmUgYWxsb3dlZCBmb3IgYSBsZWFmIHBhcmVudAogICAgICBzdGF0ZW1lbnQuIFplcm8gb3IgbW9yZSBpbml0aWFsLXZhbHVlIHN0YXRlbWVudHMgYXJlIGFsbG93ZWQgZm9yIGEKICAgICAgbGVhZi1saXN0IHBhcmVudCBzdGF0ZW1lbnQuIElmIHRoZSBsZWFmLWxpc3QgaXMgb3JkZXJlZC1ieSB1c2VyLCB0aGUKICAgICAgaW5pdGlhbCB2YWx1ZXMgYXJlIHN0b3JlZCBpbiB0aGUgb3JkZXIgdGhleSBhcHBlYXIgaW4gdGhlIFlBTkcgZGVmaW5pdGlvbi4KICAgICAgTk8gc3Vic3RhdGVtZW50cyBhcmUgYWxsb3dlZC4KCiAgICAgIEFsd2F5cyBjb25zaWRlciB1c2luZyBhIFlBTkctZGVmYXVsdCBzdGF0ZW1lbnQgaW5zdGVhZC4KCiAgICAgIE1vZGlmaWNhdGlvbiBvZiB0aGUgaW5pdGlhbC12YWx1ZSBpcyBhIG5vbi1iYWNrd2FyZHMtY29tcGF0aWJsZSBjaGFuZ2UuCgogICAgICBUaGUgYXJndW1lbnQgc3BlY2lmaWVzIGEgc2luZ2xlIGluaXRpYWwgdmFsdWUgZm9yIGEgbGVhZiBvciBsZWFmLWxpc3QuCiAgICAgIFRoZSB2YWx1ZSBNVVNUIGJlIHBhcnQgb2YgdGhlIHZhbHVlc3BhY2Ugb2YgdGhlIGxlYWYvbGVhZi1saXN0LgogICAgICBJdCBmb2xsb3dzIHRoZSBzYW1lIHJ1bGVzIGFzIHRoZSBhcmd1bWVudCBvZiB0aGUgZGVmYXVsdCBzdGF0ZW1lbnQuIjsKCiAgICBhcmd1bWVudCAiaW5pdGlhbC12YWx1ZSI7CiAgfQp9
-_3gpp-common-yang-types urn:3gpp:sa5:_3gpp-common-yang-types \N [] 2022-07-26 bW9kdWxlIF8zZ3BwLWNvbW1vbi15YW5nLXR5cGVzIHsKICB5YW5nLXZlcnNpb24gMS4xOwogIG5hbWVzcGFjZSAidXJuOjNncHA6c2E1Ol8zZ3BwLWNvbW1vbi15YW5nLXR5cGVzIjsKICBwcmVmaXggInR5cGVzM2dwcCI7CiAgCiAgaW1wb3J0IGlldGYtaW5ldC10eXBlcyB7IHByZWZpeCBpbmV0OyB9CiAgaW1wb3J0IGlldGYteWFuZy10eXBlcyB7IHByZWZpeCB5YW5nOyB9CgogIG9yZ2FuaXphdGlvbiAiM0dQUCBTQTUiOwogIGNvbnRhY3QgImh0dHBzOi8vd3d3LjNncHAub3JnL0R5bmFSZXBvcnQvVFNHLVdHLS1TNS0tb2ZmaWNpYWxzLmh0bT9JdGVtaWQ9NDY0IjsKICBkZXNjcmlwdGlvbiAiVGhlIG1vZGVsIGRlZmluZXMgYSBZQU5HIG1hcHBpbmcgb2YgdGhlIHRvcCBsZXZlbCAKICAgIGluZm9ybWF0aW9uIGNsYXNzZXMgdXNlZCBmb3IgbWFuYWdlbWVudCBvZiA1RyBuZXR3b3JrcyBhbmQgCiAgICBuZXR3b3JrIHNsaWNpbmcuIjsKICByZWZlcmVuY2UgIjNHUFAgVFMgMjguNjIzIjsKCiAgcmV2aXNpb24gMjAyMi0wNy0yNiB7IHJlZmVyZW5jZSBDUi0wMTgwIDsgfQogIHJldmlzaW9uIDIwMjItMDItMDkgeyByZWZlcmVuY2UgIkNSLTAxNDQiOyB9CiAgcmV2aXNpb24gMjAyMS0xMS0wMSB7IHJlZmVyZW5jZSAiQ1ItMDE0MSI7IH0KICAKICByZXZpc2lvbiAyMDIxLTA5LTMwIHsKICAgIGRlc2NyaXB0aW9uICJBZGRlZCBMb25naXR1ZGUsIExhdGl0dWRlLCBUZW50aE9mRGVncmVlcywgT25PZmYuIjsKICAgIHJlZmVyZW5jZSAiQ1ItMDEzOCI7CiAgfQoKICByZXZpc2lvbiAyMDIwLTExLTA2IHsKICAgIGRlc2NyaXB0aW9uICJSZW1vdmVkIGluY29ycmVjdCBTLU5TU0FJIGRlZmluaXRpb25zLiI7CiAgICByZWZlcmVuY2UgIkNSLTAxMTgiOwogIH0KCiAgcmV2aXNpb24gMjAyMC0wMy0xMCB7CiAgICBkZXNjcmlwdGlvbiAiUmVtb3ZlZCBmYXVsdHkgd2hlbiBzdGF0ZW1lbnRzLiI7CiAgICByZWZlcmVuY2UgIlNQLTIwMDIyOSI7CiAgfQogCiAgcmV2aXNpb24gMjAxOS0xMC0yNSB7CiAgICBkZXNjcmlwdGlvbiAiQWRkZWQgTWFuYWdlZE5GUHJvZmlsZS4iOwogICAgcmVmZXJlbmNlICJTNS0xOTQ0NTciOwogIH0KCiAgcmV2aXNpb24gMjAxOS0xMC0xNiB7CiAgICBkZXNjcmlwdGlvbiAiQWRkZWQgU0FQIGFuZCB1c2FnZVN0YXRlLiI7CiAgICByZWZlcmVuY2UgIlM1LTE5MzUxOCI7CiAgfQoKICByZXZpc2lvbiAyMDE5LTA2LTIzIHsKICAgIHJlZmVyZW5jZSAgIkluaXRpYWwgdmVyc2lvbi4iOwogIH0KCiAgdHlwZWRlZiBFbmFibGVkRGlzYWJsZWQgewogICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgIGVudW0gRElTQUJMRUQgOwogICAgICBlbnVtIEVOQUJMRUQgOwogICAgfQogIH0KICAKICBncm91cGluZyBQcm9jZXNzTW9uaXRvciB7CiAgICBkZXNjcmlwdGlvbiAiUHJvdmlkZXMgYXR0cmlidXRlcyB0byBtb25pdG9yIHRoZSBwcm9ncmVzcyBvZiBwcm9jZXNzZXMgCiAgICAgIHdpdGggc3BlY2lmaWMgcHVycG9zZSBhbmQgbGltaXRlZCBsaWZldGltZSBydW5uaW5nIG9uIE1uUyBwcm9kdWNlcnMuIAogICAgICBJdCBtYXkgYmUgdXNlZCBhcyBkYXRhIHR5cGUgZm9yIGRlZGljYXRlZCBwcm9ncmVzcyBtb25pdG9yIGF0dHJpYnV0ZXMgCiAgICAgIHdoZW4gc3BlY2lmeWluZyB0aGUgbWFuYWdlbWVudCByZXByZXNlbnRhdGlvbiBvZiB0aGVzZSBwcm9jZXNzZXMuIAogICAgICBUaGUgYXR0cmlidXRlcyBpbiB0aGlzIGNsYXVzZSBhcmUgZGVmaW5lZCBpbiBhIGdlbmVyaWMgd2F5LiAKICAgICAgRm9yIHNvbWUgYXR0cmlidXRlcyBzcGVjaWFsaXNhdGlvbnMgbWF5IGJlIHByb3ZpZGVkIHdoZW4gc3BlY2lmeWluZyBhIAogICAgICBjb25jcmV0ZSBwcm9jZXNzIHJlcHJlc2VudGF0aW9uLgoKICAgICAgSWYgYSBtYW5hZ2VtZW50IG9wZXJhdGlvbiBvbiBzb21lIElPQ3MgdHJpZ2dlcnMgYW4gYXNzb2NpYXRlZCAKICAgICAgYXN5bmNocm9ub3VzIHByb2Nlc3MgKHdob3NlIHByb2dyZXNzIHNoYWxsIGJlIG1vbml0b3JlZCksIHRoaXMgc2hvdWxkIAogICAgICBhbHNvIHJlc3VsdCBpbiBjcmVhdGluZyBhbiBhdHRyaWJ1dGUgbmFtZWQgJ3Byb2Nlc3NNb25pdG9yJyAob2YgdHlwZSAKICAgICAgJ1Byb2Nlc3NNb25pdG9yJykgaW4gdGhlc2UgSU9DKHMpLiBUaGUgcHJvY2Vzc01vbml0b3IgYXR0cmlidXRlIG1heSBiZSAKICAgICAgYWNjb21wYW5pZWQgYnkgdXNlLWNhc2Ugc3BlY2lmaWMgYWRkaXRpb25hbCBkYXRhIGl0ZW1zLgoKICAgICAgVGhlIHByb2dyZXNzIG9mIHRoZSBwcm9jZXNzIGlzIGRlc2NyaWJlZCBieSB0aGUgJ3N0YXR1cycgYW5kIAogICAgICAncHJvZ3Jlc3NQZXJjZW50YWdlJyBhdHRyaWJ1dGVzLiBBZGRpdGlvbmFsIHRleHR1YWwgcXVhbGlmaWNhdGlvbnMgZm9yIAogICAgICB0aGUgJ3N0YXR1cycgYXR0cmlidXRlIG1heSBiZSBwcm92aWRlZCBieSB0aGUgJ3Byb2dyZXNzU3RhdGVJbmZvJyBhbmQgCiAgICAgICdyZXN1bHRTdGF0ZUluZm8nIGF0dHJpYnV0ZXMuCgogICAgICBXaGVuIHRoZSBwcm9jZXNzIGlzIGluc3RhbnRpYXRlZCwgdGhlICdzdGF0dXMnIGlzIHNldCB0byAnTk9UX1JVTk5JTkcnIAogICAgICBhbmQgdGhlICdwcm9ncmVzc1BlcmNlbnRhZ2UnIHRvICcwJy4gVGhlIE1uUyBwcm9kdWNlciBkZWNpZGVzIHdoZW4gdG8gCiAgICAgIHN0YXJ0IGV4ZWN1dGluZyB0aGUgcHJvY2VzcyBhbmQgdG8gdHJhbnNpdGlvbiBpbnRvIHRoZSAnUlVOTklORycgc3RhdGUuIAogICAgICBUaGlzIHRpbWUgaXMgY2FwdHVyZWQgaW4gdGhlICdzdGFydFRpbWUnIGF0dHJpYnV0ZS4gQWx0ZXJuYXRpdmVseSwgdGhlIAogICAgICBwcm9jZXNzIG1heSBzdGFydCB0byBleGVjdXRlIGRpcmVjdGx5IHVwb24gaXRzIGluc3RhbnRpYXRpb24uIE9uZSAKICAgICAgYWx0ZXJuYXRpdmUgbXVzdCBiZSBzZWxlY3RlZCB3aGVuIHVzaW5nIHRoaXMgZGF0YSB0eXBlLgoKICAgICAgRHVyaW5nIHRoZSAnUlVOTklORycgc3RhdGUgdGhlICdwcm9ncmVzc1BlcmNlbnRhZ2UnIGF0dHJpYnV0ZSBtYXkgYmUgCiAgICAgIHJlcGVhdGVkbHkgdXBkYXRlZC4gVGhlIGV4YWN0IHNlbWFudGljIG9mIHRoaXMgYXR0cmlidXRlIGlzIHN1YmplY3QgdG8gCiAgICAgIGZ1cnRoZXIgc3BlY2lhbGlzYXRpb24uIFRoZSAncHJvZ3Jlc3NJbmZvJyBhdHRyaWJ1dGUgbWF5IGJlIHVzZWQgdG8gCiAgICAgIHByb3ZpZGUgYWRkaXRpb25hbCB0ZXh0dWFsIGluZm9ybWF0aW9uIGluIHRoZSAnTk9UX1JVTk5JTkcnLCAnQ0FOQ0VMTElORycgCiAgICAgIGFuZCAnUlVOTklORycgc3RhdGVzLiBGdXJ0aGVyIHNwZWNpYWxpc2F0aW9uIG9mIAogICAgICAncHJvZ3Jlc3NTdGF0ZUluZm8nIG1heSBiZSBwcm92aWRlZCB3aGVyZSB0aGlzIGRhdGEgdHlwZSBpcyAKICAgICAgdXNlZC4KCiAgICAgIFVwb24gc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIHRoZSBwcm9jZXNzLCB0aGUgJ3N0YXR1cycgYXR0cmlidXRlIGlzIHNldCAKICAgICAgdG8gJ0ZJTklTSEVEJywgdGhlICdwcm9ncmVzc1BlcmNlbnRhZ2UnIHRvIDEwMCUuIFRoZSB0aW1lIGlzIGNhcHR1cmVkIGluIAogICAgICB0aGUgJ2VuZFRpbWUnIGF0dHJpYnV0ZS4gQWRkaXRpb25hbCB0ZXh0dWFsIGluZm9ybWF0aW9uIG1heSBiZSBwcm92aWRlZCAKICAgICAgaW4gdGhlICdyZXN1bHRTdGF0ZUluZm8nIGF0dHJpYnV0ZS4gVGhlIHR5cGUgb2YgCiAgICAgICdyZXN1bHRTdGF0ZUluZm8nIGluIHRoaXMgZGF0YSB0eXBlIGRlZmluaXRpb24gaXMgJ1N0cmluZycuIAogICAgICBGdXJ0aGVyIHNwZWNpYWxpc2F0aW9uIG9mICdyZXN1bHRTdGF0ZUluZm8nIG1heSBiZSBwcm92aWRlZCAKICAgICAgd2hlcmUgdGhpcyBkYXRhIHR5cGUgaXMgdXNlZC4KCiAgICAgIEluIGNhc2UgdGhlIHByb2Nlc3MgZmFpbHMgdG8gY29tcGxldGUgc3VjY2Vzc2Z1bGx5LCB0aGUgJ3N0YXR1cycgCiAgICAgIGF0dHJpYnV0ZSBpcyBzZXQgdG8gJ0ZBSUxFRCcgb3IgJ1BBUlRJQUxMWV9GQUlMRUQnLCB0aGUgY3VycmVudCB2YWx1ZSBvZiAKICAgICAgJ3Byb2dyZXNzUGVyY2VudGFnZScgaXMgZnJvemVuLCBhbmQgdGhlIHRpbWUgY2FwdHVyZWQgaW4gJ2VuZFRpbWUnLiBUaGUgCiAgICAgICdyZXN1bHRTdGF0ZUluZm8nIHNwZWNpZmllcyB0aGUgcmVhc29uIGZvciB0aGUgZmFpbHVyZS4gCiAgICAgIFNwZWNpZmljIGZhaWx1cmUgcmVhc29ucyBtYXkgYmUgc3BlY2lmaWVkIHdoZXJlIHRoZSBkYXRhIHR5cGUgZGVmaW5lZCBpbiAKICAgICAgdGhpcyBjbGF1c2UgaXMgdXNlZC4gVGhlIGV4YWN0IHNlbWFudGljIG9mIGZhaWx1cmUgbWF5IGJlIHN1YmplY3QgZm9yIAogICAgICBmdXJ0aGVyIHNwZWNpYWxpc2F0aW9uIGFzIHdlbGwuCgogICAgICBJbiBjYXNlIHRoZSBwcm9jZXNzIGlzIGNhbmNlbGxlZCwgdGhlICdzdGF0dXMnIGF0dHJpYnV0ZSBpcyBmaXJzdCBzZXQgdG8gCiAgICAgICdDQU5DRUxMSU5HJyBhbmQgd2hlbiB0aGUgcHJvY2VzcyBpcyByZWFsbHkgY2FuY2VsbGVkIHRoZW4gdG8gJ0NBTkNFTExFRCcuIAogICAgICBUaGUgdHJhbnNpdGlvbiB0byAnQ0FOQ0VMTEVEJyBpcyBjYXB0dXJlZCBpbiB0aGUgJ2VuZFRpbWUnIGF0dHJpYnV0ZS4gCiAgICAgIFRoZSB2YWx1ZSBvZiAncHJvZ3Jlc3NQZXJjZW50YWdlJyBpcyBmcm96ZW4uIEFkZGl0aW9uYWwgdGV4dHVhbCAKICAgICAgaW5mb3JtYXRpb24gbWF5IGJlIHByb3ZpZGVkIGluIHRoZSAncmVzdWx0U3RhdGVJbmZvJyBhdHRyaWJ1dGUuCgogICAgICBUaGUgJ3Jlc3VsdFN0YXRlSW5mbycgYXR0cmlidXRlIGlzIHByb3ZpZGVkIG9ubHkgZm9yIGFkZGl0aW9uYWwgdGV4dHVhbCAKICAgICAgcXVhbGlmaWNhdGlvbiBvZiB0aGUgc3RhdGVzICdGSU5JU0hFRCcsICdGQUlMRUQnLCAnUEFSVElBTExZX0ZBSUxFRCcgb3IgCiAgICAgICdDQU5DRUxMRUQnLiBJdCBzaGFsbCBub3QgYmUgdXNlZCBmb3IgbWFraW5nIHRoZSBvdXRjb21lLCB0aGF0IHRoZSAKICAgICAgcHJvY2VzcyBtYXkgcHJvZHVjZSBpbiBjYXNlIG9mIHN1Y2Nlc3MsIGF2YWlsYWJsZS4KCiAgICAgIFRoZSBwcm9jZXNzIG1heSBoYXZlIHRvIGJlIGNvbXBsZXRlZCB3aXRoaW4gYSBjZXJ0YWluIHRpbWUgYWZ0ZXIgaXRzIAogICAgICBjcmVhdGlvbiwgZm9yIGV4YW1wbGUgYmVjYXVzZSByZXF1aXJlZCBkYXRhIG1heSBub3QgYmUgYXZhaWxhYmxlIGFueSAKICAgICAgbW9yZSBhZnRlciBhIGNlcnRhaW4gdGltZSwgb3IgdGhlIHByb2Nlc3Mgb3V0Y29tZSBpcyBuZWVkZWQgdW50aWwgYSAKICAgICAgY2VydGFpbiB0aW1lIGFuZCB3aGVuIG5vdCBwcm92aWRlZCBieSB0aGlzIHRpbWUgaXMgbm90IG5lZWRlZCBhbnkgbW9yZS4gCiAgICAgIFRoZSB0aW1lIHVudGlsIHRoZSBNblMgcHJvZHVjZXIgYXV0b21hdGljYWxseSBjYW5jZWxzIHRoZSBwcm9jZXNzIGlzIAogICAgICBpbmRpY2F0ZWQgYnkgdGhlICd0aW1lcicgYXR0cmlidXRlLiI7CiAgICAgIAogICAgbGVhZiBpZCB7CiAgICAgIHR5cGUgc3RyaW5nOwogICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgZGVzY3JpcHRpb24gIklkIG9mIHRoZSBwcm9jZXNzLiBJdCBpcyB1bmlxdWUgd2l0aGluIGEgc2luZ2xlIAogICAgICAgIG11bHRpdmFsdWUgYXR0cmlidXRlIG9mIHR5cGUgUHJvY2Vzc01vbml0b3IuIjsKICAgIH0KICAgIAogICAgbGVhZiBzdGF0dXMgeyAKICAgICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgICAgZW51bSBOT1RfU1RBUlRFRCA7CiAgICAgICAgZW51bSBSVU5OSU5HIDsKICAgICAgICBlbnVtIENBTkNFTExJTkcgOwogICAgICAgIGVudW0gRklOSVNIRUQgOwogICAgICAgIGVudW0gRkFJTEVEIDsKICAgICAgICBlbnVtIFBBUlRJQUxMWV9GQUlMRUQgOwogICAgICAgIGVudW0gQ0FOQ0VMTEVEIDsKICAgICAgfQogICAgICBjb25maWcgZmFsc2U7CiAgICAgIGRlZmF1bHQgIFJVTk5JTkc7CiAgICAgIGRlc2NyaXB0aW9uICJSZXByZXNlbnRzIHRoZSBzdGF0dXMgb2YgdGhlIGFzc29jaWF0ZWQgcHJvY2VzcywgCiAgICAgICAgd2hldGhlciBpdCBmYWlscywgc3VjY2VlZHMgZXRjLiAKICAgICAgICBJdCBkb2VzIG5vdCByZXByZXNlbnQgdGhlIHJldHVybmVkIHZhbHVlcyBvZiBhIHN1Y2Nlc3NmdWxseSBmaW5pc2hlZCAKICAgICAgICBwcm9jZXNzLiAiOwogICAgfQoKICAgIGxlYWYgcHJvZ3Jlc3NQZXJjZW50YWdlIHsKICAgICAgdHlwZSB1aW50OCB7CiAgICAgICAgcmFuZ2UgMC4uMTAwOwogICAgICB9CiAgICAgIGNvbmZpZyBmYWxzZTsKICAgICAgZGVzY3JpcHRpb24gIlByb2dyZXNzIG9mIHRoZSBhc3NvY2lhdGVkIHByb2Nlc3MgYXMgcGVyY2VudGFnZSI7CiAgICB9CgogICAgbGVhZi1saXN0IHByb2dyZXNzU3RhdGVJbmZvIHsKICAgICAgdHlwZSBzdHJpbmc7CiAgICAgIGNvbmZpZyBmYWxzZTsKICAgICAgZGVzY3JpcHRpb24gIkFkZGl0aW9uYWwgdGV4dHVhbCBxdWFsaWZpY2F0aW9uIG9mIHRoZSBzdGF0ZXMgCiAgICAgICAgJ05PVF9TVEFSVEVEJywgJ0NBTkNFTExJTkcnIGFuZCAnUlVOTklORycuCgogICAgICAgIEZvciBzcGVjaWZpYyBwcm9jZXNzZXMsIHNwZWNpZmljIHdlbGwtZGVmaW5lZCBzdHJpbmdzIChlLmcuIHN0cmluZyAKICAgICAgICBwYXR0ZXJucyBvciBlbnVtcykgbWF5IGJlIGRlZmluZWQgYXMgYSBzcGVjaWFsaXNhdGlvbi4iOwogICAgfQoKICAgIGxlYWYgcmVzdWx0U3RhdGVJbmZvIHsKICAgICAgdHlwZSBzdHJpbmc7CiAgICAgIGNvbmZpZyBmYWxzZTsKICAgICAgZGVzY3JpcHRpb24gIkFkZGl0aW9uYWwgdGV4dHVhbCBxdWFsaWZpY2F0aW9uIG9mIHRoZSBzdGF0ZXMgCiAgICAgICAgJ0ZJTklTSEVEJywgJ0ZBSUxFRCcsICdQQVJUSUFMTFlfRkFJTEVEIGFuZCAnQ0FOQ0VMTEVEJy4gCiAgICAgICAgRm9yIGV4YW1wbGUsIGluIHRoZSAnRkFJTEVEJyBvciAnUEFSVElBTExZX0ZBSUxFRCcgc3RhdGUgdGhpcyAKICAgICAgICBhdHRyaWJ1dGUgbWF5IGJlIHVzZWQgdG8gcHJvdmlkZSBlcnJvciByZWFzb25zLgoKICAgICAgICBUaGlzIGF0dHJpYnV0ZSBzaGFsbCBub3QgYmUgdXNlZCB0byBtYWtlIHRoZSBvdXRjb21lIG9mIHRoZSBwcm9jZXNzIAogICAgICAgIGF2YWlsYWJsZSBmb3IgcmV0cmlldmFsLCBpZiBhbnkuIEZvciB0aGlzIHB1cnBvc2UsIGRlZGljYXRlZCAKICAgICAgICBhdHRyaWJ1dGVzIHNoYWxsIGJlIHNwZWNpZmllZCB3aGVuIHNwZWNpZnlpbmcgdGhlIHJlcHJlc2VudGF0aW9uIG9mIAogICAgICAgIGEgc3BlY2lmaWMgcHJvY2Vzcy4KCiAgICAgICAgRm9yIHNwZWNpZmljIHByb2Nlc3Nlcywgc3BlY2lmaWMgd2VsbC1kZWZpbmVkIHN0cmluZ3MgKGUuZy4gc3RyaW5nIAogICAgICAgIHBhdHRlcm5zIG9yIGVudW1zKSBtYXkgYmUgZGVmaW5lZCBhcyBhIHNwZWNpYWxpc2F0aW9uLiI7CiAgICB9CgogICAgbGVhZiBzdGFydFRpbWUgewogICAgICB0eXBlIHlhbmc6ZGF0ZS1hbmQtdGltZTsKICAgICAgY29uZmlnIGZhbHNlOwogICAgICBkZXNjcmlwdGlvbiAiU3RhcnQgdGltZSBvZiB0aGUgYXNzb2NpYXRlZCBwcm9jZXNzLCBpLmUuIHRoZSB0aW1lIHdoZW4gdGhlIAogICAgICAgIHN0YXR1cyBjaGFuZ2VkIGZyb20gJ05PVF9TVEFSVEVEJyB0byAnUlVOTklORycuIjsKICAgIH0KCiAgICBsZWFmIGVuZFRpbWUgewogICAgICB0eXBlIHlhbmc6ZGF0ZS1hbmQtdGltZTsKICAgICAgY29uZmlnIGZhbHNlOwogICAgICBkZXNjcmlwdGlvbiAiRGF0ZSBhbmQgdGltZSB3aGVuIHN0YXR1cyBjaGFuZ2VkIHRvICdTVUNDRVNTJywgJ0NBTkNFTExFRCcsIAogICAgICAgICdGQUlMRUQnIG9yICdQQVJUSUFMTFlfRkFJTEVEJy4gCgogICAgICAgIElmIHRoZSB0aW1lIGlzIGluIHRoZSBmdXR1cmUsIGl0IGlzIHRoZSBlc3RpbWF0ZWQgdGltZSAKICAgICAgICB0aGUgcHJvY2VzcyB3aWxsIGVuZC4iOwogICAgfQoKICAgIGxlYWYgdGltZXIgewogICAgICB0eXBlIHVpbnQzMjsKICAgICAgdW5pdHMgbWludXRlczsKICAgICAgZGVzY3JpcHRpb24gIlRpbWUgdW50aWwgdGhlIGFzc29jaWF0ZWQgcHJvY2VzcyBpcyBhdXRvbWF0aWNhbGx5IGNhbmNlbGxlZC4KICAgICAgICBJZiBzZXQsIHRoZSBzeXN0ZW0gZGVjcmVhc2VzIHRoZSB0aW1lciB3aXRoIHRpbWUuIFdoZW4gaXQgcmVhY2hlcyB6ZXJvIAogICAgICAgIHRoZSBjYW5jZWxsYXRpb24gb2YgdGhlIGFzc29jaWF0ZWQgcHJvY2VzcyBpcyBpbml0aWF0ZWQgYnkgdGhlIAogICAgICAgIE1uU19Qcm9kdWNlci4gCiAgICAgICAgSWYgbm90IHNldCwgdGhlcmUgaXMgbm8gdGltZSBsaW1pdCBmb3IgdGhlIHByb2Nlc3MuCiAgICAgICAgCiAgICAgICAgT25jZSB0aGUgdGltZXIgaXMgc2V0LCB0aGUgY29uc3VtZXIgY2FuIG5vdCBjaGFuZ2UgaXQgYW55bW9yZS4gCiAgICAgICAgSWYgdGhlIGNvbnN1bWVyIGhhcyBub3Qgc2V0IHRoZSB0aW1lciB0aGUgTW5TIFByb2R1Y2VyIG1heSBzZXQgaXQuIjsKICAgIH0KICB9CiAgCiAgdHlwZWRlZiBUZW50aE9mRGVncmVlcyB7IAogICAgdHlwZSB1aW50MTYgeyAKICAgICAgcmFuZ2UgMC4uMzYwMDsgCiAgICB9CiAgICB1bml0cyAiMC4xIGRlZ3JlZXMiOwogICAgZGVzY3JpcHRpb24gIkEgc2luZ2xlIGludGVncmFsIHZhbHVlIGNvcnJlc3BvbmRpbmcgdG8gYW4gYW5nbGUgaW4gZGVncmVlcyAKICAgICAgYmV0d2VlbiAwIGFuZCAzNjAgd2l0aCBhIHJlc29sdXRpb24gb2YgMC4xIGRlZ3JlZXMuIjsKICB9CgogIHR5cGVkZWYgTGF0aXR1ZGUgewogICAgdHlwZSBkZWNpbWFsNjQgewogICAgICBmcmFjdGlvbi1kaWdpdHMgNDsKICAgICAgcmFuZ2UgIi05MC4wMDAwLi4rOTAuMDAwMCI7IAogICAgfQogICAgZGVzY3JpcHRpb24gIkxhdGl0dWRlIHZhbHVlcyI7CiAgfQoKICB0eXBlZGVmIExvbmdpdHVkZSB7CiAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgIGZyYWN0aW9uLWRpZ2l0cyA0OwogICAgICByYW5nZSAiLTE4MC4wMDAwLi4rMTgwLjAwMDAiOyAKICAgIH0KICAgIGRlc2NyaXB0aW9uICJMb25naXR1ZGUgdmFsdWVzIjsKICB9CgogIHR5cGVkZWYgT25PZmYgewogICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgIGVudW0gT047CiAgICAgIGVudW0gT0ZGOwogICAgfQogIH0KICAKICAvLyBncm91cGluZyBNYW5hZ2VkTkZQcm9maWxlIHdpbGwgYmUgcmVtb3ZlZCBhcyBpdCBpcyAKICAvLyAgYmVpbmcgbW92ZWQgdG8gXzNncHAtNWdjLW5ybS1uZnByb2ZpbGUKICBncm91cGluZyBNYW5hZ2VkTkZQcm9maWxlIHsKICAgIGRlc2NyaXB0aW9uICJEZWZpbmVzIHByb2ZpbGUgZm9yIG1hbmFnZWQgTkYiOwogICAgcmVmZXJlbmNlICIzR1BQIFRTIDIzLjUwMSI7CiAgICAKICAgIGxlYWYgaWR4IHsgdHlwZSB1aW50MzIgOyB9CiAgICAKICAgIGxlYWYgbmZJbnN0YW5jZUlEIHsKICAgICAgY29uZmlnIGZhbHNlOwogICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgdHlwZSB5YW5nOnV1aWQgOwogICAgICBkZXNjcmlwdGlvbiAiVGhpcyBwYXJhbWV0ZXIgZGVmaW5lcyBwcm9maWxlIGZvciBtYW5hZ2VkIE5GLiAKICAgICAgICBUaGUgZm9ybWF0IG9mIHRoZSBORiBJbnN0YW5jZSBJRCBzaGFsbCBiZSBhIAogICAgICAgIFVuaXZlcnNhbGx5IFVuaXF1ZSBJZGVudGlmaWVyIChVVUlEKSB2ZXJzaW9uIDQsIAogICAgICAgIGFzIGRlc2NyaWJlZCBpbiBJRVRGIFJGQyA0MTIyICIgOwogICAgfQogICAgCiAgICBsZWFmLWxpc3QgbmZUeXBlIHsKICAgICAgY29uZmlnIGZhbHNlOwogICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgdHlwZSBOZlR5cGU7CiAgICAgIGRlc2NyaXB0aW9uICJUeXBlIG9mIHRoZSBOZXR3b3JrIEZ1bmN0aW9uIiA7CiAgICB9CiAgICAKICAgIGxlYWYgaG9zdEFkZHIgewogICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgdHlwZSBpbmV0Omhvc3QgOwogICAgICBkZXNjcmlwdGlvbiAiSG9zdCBhZGRyZXNzIG9mIGEgTkYiOwogICAgfQogICAgCiAgICBsZWFmIGF1dGh6SW5mbyB7CiAgICAgIHR5cGUgc3RyaW5nIDsKICAgICAgZGVzY3JpcHRpb24gIlRoaXMgcGFyYW1ldGVyIGRlZmluZXMgTkYgU3BlY2lmaWMgU2VydmljZSBhdXRob3JpemF0aW9uIAogICAgICAgIGluZm9ybWF0aW9uLiBJdCBzaGFsbCBpbmNsdWRlIHRoZSBORiB0eXBlIChzKSBhbmQgTkYgcmVhbG1zL29yaWdpbnMgCiAgICAgICAgYWxsb3dlZCB0byBjb25zdW1lIE5GIFNlcnZpY2Uocykgb2YgTkYgU2VydmljZSBQcm9kdWNlci4iOwogICAgICByZWZlcmVuY2UgIlNlZSBUUyAyMy41MDEiIDsKICAgIH0KICAgIAogICAgbGVhZiBsb2NhdGlvbiB7CiAgICAgIHR5cGUgc3RyaW5nIDsKICAgICAgZGVzY3JpcHRpb24gIkluZm9ybWF0aW9uIGFib3V0IHRoZSBsb2NhdGlvbiBvZiB0aGUgTkYgaW5zdGFuY2UgCiAgICAgICAgKGUuZy4gZ2VvZ3JhcGhpYyBsb2NhdGlvbiwgZGF0YSBjZW50ZXIpIGRlZmluZWQgYnkgb3BlcmF0b3IiOwogICAgICByZWZlcmVuY2UgIlRTIDI5LjUxMCIgOwogICAgfQogICAgCiAgICBsZWFmIGNhcGFjaXR5IHsKICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgIHR5cGUgdWludDE2IDsKICAgICAgZGVzY3JpcHRpb24gIlRoaXMgcGFyYW1ldGVyIGRlZmluZXMgc3RhdGljIGNhcGFjaXR5IGluZm9ybWF0aW9uIAogICAgICAgIGluIHRoZSByYW5nZSBvZiAwLTY1NTM1LCBleHByZXNzZWQgYXMgYSB3ZWlnaHQgcmVsYXRpdmUgdG8gb3RoZXIgCiAgICAgICAgTkYgaW5zdGFuY2VzIG9mIHRoZSBzYW1lIHR5cGU7IGlmIGNhcGFjaXR5IGlzIGFsc28gcHJlc2VudCBpbiB0aGUgCiAgICAgICAgbmZTZXJ2aWNlTGlzdCBwYXJhbWV0ZXJzLCB0aG9zZSB3aWxsIGhhdmUgcHJlY2VkZW5jZSBvdmVyIHRoaXMgdmFsdWUuIjsKICAgICAgcmVmZXJlbmNlICJUUyAyOS41MTAiIDsKICAgIH0KICAgICAgCiAgICBsZWFmIG5GU3J2R3JvdXBJZCB7CiAgICAgIHR5cGUgc3RyaW5nIDsKICAgICAgZGVzY3JpcHRpb24gIlRoaXMgcGFyYW1ldGVyIGRlZmluZXMgaWRlbnRpdHkgb2YgdGhlIGdyb3VwIHRoYXQgaXMgCiAgICAgICAgc2VydmVkIGJ5IHRoZSBORiBpbnN0YW5jZS4KICAgICAgICBNYXkgYmUgY29uZmlnIGZhbHNlIG9yIHRydWUgZGVwZW5kaW5nIG9uIHRoZSBNYW5hZ2VkRnVuY3Rpb24uIAogICAgICAgIENvbmZpZz10cnVlIGZvciBVZHJpbmZvLiBDb25maWc9ZmFsc2UgZm9yIFVkbUluZm8gYW5kIEF1c2ZJbmZvLiAKICAgICAgICBTaGFsbCBiZSBwcmVzZW50IGlmIC4uL25mVHlwZSA9IFVETSBvciBBVVNGIG9yIFVEUi4gIjsKICAgICAgcmVmZXJlbmNlICJUUyAyOS41MTAiIDsKICAgIH0KICAgIAogICAgbGVhZi1saXN0IHN1cHBvcnRlZERhdGFTZXRJZHMgewogICAgICB0eXBlIGVudW1lcmF0aW9uIHsKICAgICAgICBlbnVtIFNVQlNDUklQVElPTjsKICAgICAgICBlbnVtIFBPTElDWTsKICAgICAgICBlbnVtIEVYUE9TVVJFOwogICAgICAgIGVudW0gQVBQTElDQVRJT047CiAgICAgIH0KICAgICAgZGVzY3JpcHRpb24gIkxpc3Qgb2Ygc3VwcG9ydGVkIGRhdGEgc2V0cyBpbiB0aGUgVURSIGluc3RhbmNlLiAKICAgICAgICBNYXkgYmUgcHJlc2VudCBpZiAuLi9uZlR5cGUgPSBVRFIiOwogICAgICByZWZlcmVuY2UgIlRTIDI5LjUxMCIgOwogICAgfQogICAgCiAgICBsZWFmLWxpc3Qgc21mU2VydmluZ0FyZWFzIHsKICAgICAgdHlwZSBzdHJpbmcgOwogICAgICBkZXNjcmlwdGlvbiAiRGVmaW5lcyB0aGUgU01GIHNlcnZpY2UgYXJlYShzKSB0aGUgVVBGIGNhbiBzZXJ2ZS4gCiAgICAgICAgU2hhbGwgYmUgcHJlc2VudCBpZiAuLi9uZlR5cGUgPSBVUEYiOwogICAgICByZWZlcmVuY2UgIlRTIDI5LjUxMCIgOwogICAgfQogICAgCiAgICBsZWFmIHByaW9yaXR5IHsKICAgICAgdHlwZSB1aW50MTY7CiAgICAgIGRlc2NyaXB0aW9uICJUaGlzIHBhcmFtZXRlciBkZWZpbmVzIFByaW9yaXR5IChyZWxhdGl2ZSB0byBvdGhlciBORnMgCiAgICAgICAgb2YgdGhlIHNhbWUgdHlwZSkgaW4gdGhlIHJhbmdlIG9mIDAtNjU1MzUsIHRvIGJlIHVzZWQgZm9yIE5GIHNlbGVjdGlvbjsgCiAgICAgICAgbG93ZXIgdmFsdWVzIGluZGljYXRlIGEgaGlnaGVyIHByaW9yaXR5LiBJZiBwcmlvcml0eSBpcyBhbHNvIHByZXNlbnQgCiAgICAgICAgaW4gdGhlIG5mU2VydmljZUxpc3QgcGFyYW1ldGVycywgdGhvc2Ugd2lsbCBoYXZlIHByZWNlZGVuY2Ugb3ZlciAKICAgICAgICB0aGlzIHZhbHVlLiBTaGFsbCBiZSBwcmVzZW50IGlmIC4uL25mVHlwZSA9IEFNRiAiOwogICAgICByZWZlcmVuY2UgIlRTIDI5LjUxMCIgOwogICAgfQogIH0KICAKICB0eXBlZGVmIHVzYWdlU3RhdGUgewogICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgIGVudW0gSURMRTsKICAgICAgZW51bSBBQ1RJVkU7CiAgICAgIGVudW0gQlVTWTsKICAgIH0KICAgIGRlc2NyaXB0aW9uICJJdCBkZXNjcmliZXMgd2hldGhlciBvciBub3QgdGhlIHJlc291cmNlIGlzIGFjdGl2ZWx5IGluIAogICAgICB1c2UgYXQgYSBzcGVjaWZpYyBpbnN0YW50LCBhbmQgaWYgc28sIHdoZXRoZXIgb3Igbm90IGl0IGhhcyBzcGFyZSAKICAgICAgY2FwYWNpdHkgZm9yIGFkZGl0aW9uYWwgdXNlcnMgYXQgdGhhdCBpbnN0YW50LiBUaGUgdmFsdWUgaXMgUkVBRC1PTkxZLiI7CiAgICByZWZlcmVuY2UgIklUVSBUIFJlY29tbWVuZGF0aW9uIFguNzMxIjsKICB9CiAgCiAgZ3JvdXBpbmcgU0FQIHsKICAgIGxlYWYgaG9zdCB7CiAgICAgIHR5cGUgaW5ldDpob3N0OwogICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgIH0KICAgIGxlYWYgcG9ydCB7CiAgICAgIHR5cGUgaW5ldDpwb3J0LW51bWJlcjsKICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICB9CiAgICBkZXNjcmlwdGlvbiAiU2VydmljZSBhY2Nlc3MgcG9pbnQuIjsKICAgIHJlZmVyZW5jZSAiVFMgMjguNjIyIjsKICB9CiAgCiAgdHlwZWRlZiBNY2MgewogICAgZGVzY3JpcHRpb24gIlRoZSBtb2JpbGUgY291bnRyeSBjb2RlIGNvbnNpc3RzIG9mIHRocmVlIGRlY2ltYWwgZGlnaXRzLCAKICAgICAgVGhlIGZpcnN0IGRpZ2l0IG9mIHRoZSBtb2JpbGUgY291bnRyeSBjb2RlIGlkZW50aWZpZXMgdGhlIGdlb2dyYXBoaWMgCiAgICAgIHJlZ2lvbiAodGhlIGRpZ2l0cyAxIGFuZCA4IGFyZSBub3QgdXNlZCk6IjsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnWzAyLTc5XVswLTldWzAtOV0nOwogICAgfQogICAgcmVmZXJlbmNlICIzR1BQIFRTIDIzLjAwMyBzdWJjbGF1c2UgMi4yIGFuZCAxMi4xIjsKICB9CgogIHR5cGVkZWYgTW5jIHsKICAgIGRlc2NyaXB0aW9uICJUaGUgbW9iaWxlIG5ldHdvcmsgY29kZSBjb25zaXN0cyBvZiB0d28gb3IgdGhyZWUgCiAgICAgIGRlY2ltYWwgZGlnaXRzIChmb3IgZXhhbXBsZTogTU5DIG9mIDAwMSBpcyBub3QgdGhlIHNhbWUgYXMgTU5DIG9mIDAxKSI7CiAgICB0eXBlIHN0cmluZyB7CiAgICAgIHBhdHRlcm4gJ1swLTldWzAtOV1bMC05XXxbMC05XVswLTldJzsKICAgIH0KICAgIHJlZmVyZW5jZSAiM0dQUCBUUyAyMy4wMDMgc3ViY2xhdXNlIDIuMiBhbmQgMTIuMSI7CiAgfQoKICBncm91cGluZyBQTE1OSWQgewogICAgbGVhZiBtY2MgewogICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgdHlwZSBNY2M7CiAgICB9CiAgICBsZWFmIG1uYyB7CiAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICB0eXBlIE1uYzsKICAgIH0KICAgIHJlZmVyZW5jZSAiVFMgMjMuNjU4IjsKICB9CiAgCiAgdHlwZWRlZiBOY2kgewogICAgZGVzY3JpcHRpb24gIk5SIENlbGwgSWRlbnRpdHkuIFRoZSBOQ0kgc2hhbGwgYmUgb2YgZml4ZWQgbGVuZ3RoIG9mIDM2IGJpdHMgCiAgICAgIGFuZCBzaGFsbCBiZSBjb2RlZCB1c2luZyBmdWxsIGhleGFkZWNpbWFsIHJlcHJlc2VudGF0aW9uLiAKICAgICAgVGhlIGV4YWN0IGNvZGluZyBvZiB0aGUgTkNJIGlzIHRoZSByZXNwb25zaWJpbGl0eSBvZiBlYWNoIFBMTU4gb3BlcmF0b3IiOwogICAgcmVmZXJlbmNlICJUUyAyMy4wMDMiOwogICAgdHlwZSB1bmlvbiB7CiAgICAgIHR5cGUgc3RyaW5nIHsKICAgICAgICBsZW5ndGggMzY7CiAgICAgICAgcGF0dGVybiAnWzAxXSsnOwogICAgICB9CiAgICAgIHR5cGUgc3RyaW5nIHsKICAgICAgICBsZW5ndGggOTsKICAgICAgICBwYXR0ZXJuICdbYS1mQS1GMC05XSonOwogICAgICB9CiAgICB9CiAgfQogICAgCiAgdHlwZWRlZiBPcGVyYXRpb25hbFN0YXRlIHsKICAgIHJlZmVyZW5jZSAiM0dQUCBUUyAyOC42MjUgYW5kIElUVS1UIFguNzMxIjsKICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICBlbnVtIERJU0FCTEVEIHsKICAgICAgICB2YWx1ZSAwOwogICAgICAgIGRlc2NyaXB0aW9uICJUaGUgcmVzb3VyY2UgaXMgdG90YWxseSBpbm9wZXJhYmxlLiI7CiAgICAgIH0KCiAgICAgIGVudW0gRU5BQkxFRCB7CiAgICAgICAgdmFsdWUgMTsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIHJlc291cmNlIGlzIHBhcnRpYWxseSBvciBmdWxseSBvcGVyYWJsZS4iOwogICAgICB9CgogICAgfQogIH0KICAKICB0eXBlZGVmIEJhc2ljQWRtaW5pc3RyYXRpdmVTdGF0ZSB7CiAgICByZWZlcmVuY2UgIjNHUFAgVFMgMjguNjI1IGFuZCBJVFUtVCBYLjczMSI7CiAgICB0eXBlIGVudW1lcmF0aW9uIHsKICAgICAgZW51bSBMT0NLRUQgewogICAgICAgIHZhbHVlIDA7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoZSByZXNvdXJjZSBpcyBhZG1pbmlzdHJhdGl2ZWx5IHByb2hpYml0ZWQgZnJvbSBwZXJmb3JtaW5nCiAgICAgICAgICAgICAgICAgc2VydmljZXMgZm9yIGl0cyB1c2Vycy4iOwogICAgICB9CgogICAgICBlbnVtIFVOTE9DS0VEIHsKICAgICAgICB2YWx1ZSAxOwogICAgICAgIGRlc2NyaXB0aW9uICJUaGUgcmVzb3VyY2UgaXMgYWRtaW5pc3RyYXRpdmVseSBwZXJtaXR0ZWQgdG8gcGVyZm9ybQogICAgICAgICAgc2VydmljZXMgZm9yIGl0cyB1c2Vycy4gVGhpcyBpcyBpbmRlcGVuZGVudCBvZiBpdHMgaW5oZXJlbnQKICAgICAgICAgIG9wZXJhYmlsaXR5LiI7CiAgICAgIH0KICAgIH0KICB9CiAgCiAgdHlwZWRlZiBBZG1pbmlzdHJhdGl2ZVN0YXRlIHsKICAgIHJlZmVyZW5jZSAiM0dQUCBUUyAyOC42MjUgYW5kIElUVS1UIFguNzMxIjsKICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICBlbnVtIExPQ0tFRCB7CiAgICAgICAgdmFsdWUgMDsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIHJlc291cmNlIGlzIGFkbWluaXN0cmF0aXZlbHkgcHJvaGliaXRlZCBmcm9tIHBlcmZvcm1pbmcKICAgICAgICAgICAgICAgICBzZXJ2aWNlcyBmb3IgaXRzIHVzZXJzLiI7CiAgICAgIH0KCiAgICAgIGVudW0gVU5MT0NLRUQgewogICAgICAgIHZhbHVlIDE7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoZSByZXNvdXJjZSBpcyBhZG1pbmlzdHJhdGl2ZWx5IHBlcm1pdHRlZCB0byBwZXJmb3JtCiAgICAgICAgICBzZXJ2aWNlcyBmb3IgaXRzIHVzZXJzLiBUaGlzIGlzIGluZGVwZW5kZW50IG9mIGl0cyBpbmhlcmVudAogICAgICAgICAgb3BlcmFiaWxpdHkuIjsKICAgICAgfQoKICAgICAgZW51bSBTSFVUVElOR0RPV04gewogICAgICAgIHZhbHVlIDI7CiAgICAgICAgZGVzY3JpcHRpb24gIlVzZSBvZiB0aGUgcmVzb3VyY2UgaXMgYWRtaW5pc3RyYXRpdmVseSBwZXJtaXR0ZWQgdG8KICAgICAgICAgIGV4aXN0aW5nIGluc3RhbmNlcyBvZiB1c2Ugb25seS4gV2hpbGUgdGhlIHN5c3RlbSByZW1haW5zIGluCiAgICAgICAgICB0aGUgc2h1dHRpbmcgZG93biBzdGF0ZSB0aGUgbWFuYWdlciBvciB0aGUgbWFuYWdlZCBlbGVtZW50IAogICAgICAgICAgbWF5IGF0IGFueSB0aW1lIGNhdXNlIHRoZSByZXNvdXJjZSB0byB0cmFuc2l0aW9uIHRvIHRoZSAKICAgICAgICAgIGxvY2tlZCBzdGF0ZS4iOwogICAgICB9CiAgICB9CiAgfQogIAogIHR5cGVkZWYgQXZhaWxhYmlsaXR5U3RhdHVzIHsKICAgICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgICAgICBlbnVtIElOX1RFU1Q7CiAgICAgICAgICBlbnVtIEZBSUxFRDsgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgIGVudW0gUE9XRVJfT0ZGOyAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgZW51bSBPRkZfTElORTsgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgIGVudW0gT0ZGX0RVVFk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICBlbnVtIERFUEVOREVOQ1k7ICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICBlbnVtIERFR1JBREVEOyAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgZW51bSBOT1RfSU5TVEFMTEVEOyAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgZW51bSBMT0dfRlVMTDsgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgIH0KICB9CiAgCiAgdHlwZWRlZiBDZWxsU3RhdGUgewogICAgICB0eXBlIGVudW1lcmF0aW9uIHsKICAgICAgICBlbnVtIElETEU7CiAgICAgICAgZW51bSBJTkFDVElWRTsgICAgICAgICAgICAgIAogICAgICAgIGVudW0gQUNUSVZFOyAgICAgICAgICAgICAgCiAgICAgfQogIH0KCiAgdHlwZWRlZiBOcnBjaSB7CiAgICB0eXBlIHVpbnQzMjsKICAgIGRlc2NyaXB0aW9uICJQaHlzaWNhbCBDZWxsIElkZW50aXR5IChQQ0kpIG9mIHRoZSBOUiBjZWxsLiI7CiAgICByZWZlcmVuY2UgIlRTIDM2LjIxMSBzdWJjbGF1c2UgNi4xMSI7CiAgfQoKICB0eXBlZGVmIFRhYyB7CiAgICB0eXBlIGludDMyIHsKICAgICAgcmFuZ2UgMC4uMTY3NzcyMTUgOwogICAgfQogICAgZGVzY3JpcHRpb24gIlRyYWNraW5nIEFyZWEgQ29kZSI7CiAgICByZWZlcmVuY2UgIlRTIDIzLjAwMyBjbGF1c2UgMTkuNC4yLjMiOwogIH0KCiAgdHlwZWRlZiBBbWZSZWdpb25JZCB7CiAgICB0eXBlIHVuaW9uIHsgCiAgICAgIHR5cGUgdWludDggOwogICAgICB0eXBlIHN0cmluZyB7CiAgICAgICAgbGVuZ3RoIDg7CiAgICAgICAgcGF0dGVybiAnWzAxXSonOwogICAgICB9CiAgICB9CiAgICByZWZlcmVuY2UgImNsYXVzZSAyLjEwLjEgb2YgM0dQUCBUUyAyMy4wMDMiOwogIH0KCiAgdHlwZWRlZiBBbWZTZXRJZCB7CiAgICB0eXBlIHVuaW9uIHsgCiAgICAgIHR5cGUgdWludDE2IHsKICAgICAgICByYW5nZSAnMC4uMTAyMyc7CiAgICAgIH0KICAgICAgdHlwZSBzdHJpbmcgewogICAgICAgIGxlbmd0aCA4OwogICAgICAgIHBhdHRlcm4gJ1swMV0qJzsKICAgICAgfQogICAgfQogICAgcmVmZXJlbmNlICJjbGF1c2UgMi4xMC4xIG9mIDNHUFAgVFMgMjMuMDAzIjsKICB9CgogIHR5cGVkZWYgQW1mUG9pbnRlciB7CiAgICB0eXBlIHVuaW9uIHsgCiAgICAgIHR5cGUgdWludDggewogICAgICAgIHJhbmdlICcwLi42Myc7CiAgICAgIH0KICAgICAgdHlwZSBzdHJpbmcgewogICAgICAgIGxlbmd0aCA2OwogICAgICAgIHBhdHRlcm4gJ1swMV0qJzsKICAgICAgfQogICAgfQogICAgcmVmZXJlbmNlICJjbGF1c2UgMi4xMC4xIG9mIDNHUFAgVFMgMjMuMDAzIjsKICB9CiAgICAgICAgCiAgZ3JvdXBpbmcgQW1mSWRlbnRpZmllciB7ICAgICAgICAKICAgIGxlYWYgYW1mUmVnaW9uSWQgewogICAgICB0eXBlIEFtZlJlZ2lvbklkOwogICAgfQogICAgbGVhZiBhbWZTZXRJZCB7CiAgICAgIHR5cGUgQW1mU2V0SWQ7CiAgICB9CiAgICBsZWFmIGFtZlBvaW50ZXIgewogICAgICB0eXBlIEFtZlBvaW50ZXI7CiAgICB9IAogICAgZGVzY3JpcHRpb24gIlRoZSBBTUZJIGlzIGNvbnN0cnVjdGVkIGZyb20gYW4gQU1GIFJlZ2lvbiBJRCwgCiAgICAgIGFuIEFNRiBTZXQgSUQgYW5kIGFuIEFNRiBQb2ludGVyLiAKICAgICAgVGhlIEFNRiBSZWdpb24gSUQgaWRlbnRpZmllcyB0aGUgcmVnaW9uLCAKICAgICAgdGhlIEFNRiBTZXQgSUQgdW5pcXVlbHkgaWRlbnRpZmllcyB0aGUgQU1GIFNldCB3aXRoaW4gdGhlIEFNRiBSZWdpb24sIGFuZCAKICAgICAgdGhlIEFNRiBQb2ludGVyIHVuaXF1ZWx5IGlkZW50aWZpZXMgdGhlIEFNRiB3aXRoaW4gdGhlIEFNRiBTZXQuICI7IAogIH0gICAgCgovLyB0eXBlIGRlZmluaXRpb25zIGVzcGVjaWFsbHkgZm9yIGNvcmUgTkZzCgogIHR5cGVkZWYgTmZUeXBlIHsKICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICBlbnVtIE5SRjsKICAgICAgZW51bSBVRE07CiAgICAgIGVudW0gQU1GOwogICAgICBlbnVtIFNNRjsKICAgICAgZW51bSBBVVNGOwogICAgICBlbnVtIE5FRjsKICAgICAgZW51bSBQQ0Y7CiAgICAgIGVudW0gU01TRjsKICAgICAgZW51bSBOU1NGOwogICAgICBlbnVtIFVEUjsKICAgICAgZW51bSBMTUY7CiAgICAgIGVudW0gR01MQzsKICAgICAgZW51bSA1R19FSVI7CiAgICAgIGVudW0gU0VQUDsKICAgICAgZW51bSBVUEY7CiAgICAgIGVudW0gTjNJV0Y7CiAgICAgIGVudW0gQUY7CiAgICAgIGVudW0gVURTRjsKICAgICAgZW51bSBCU0Y7CiAgICAgIGVudW0gQ0hGOwogICAgfSAgICAgICAgICAKICB9CiAgCiAgdHlwZWRlZiBOb3RpZmljYXRpb25UeXBlIHsKICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICBlbnVtIE4xX01FU1NBR0VTOwogICAgICBlbnVtIE4yX0lORk9STUFUSU9OOwogICAgICBlbnVtIExPQ0FUSU9OX05PVElGSUNBVElPTjsKICAgIH0gICAgICAKICB9CiAgCiAgdHlwZWRlZiBMb2FkIHsKICAgIGRlc2NyaXB0aW9uICJMYXRlc3Qga25vd24gbG9hZCBpbmZvcm1hdGlvbiBvZiB0aGUgTkYsIHBlcmNlbnRhZ2UgIjsKICAgIHR5cGUgdWludDggewogICAgICByYW5nZSAwLi4xMDA7CiAgICB9CiAgfQoKICB0eXBlZGVmIE4xTWVzc2FnZUNsYXNzIHsKICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICBlbnVtIDVHTU07CiAgICAgIGVudW0gU007CiAgICAgIGVudW0gTFBQOwogICAgICBlbnVtIFNNUzsgCiAgICB9ICAgICAgCiAgfQogIAogIHR5cGVkZWYgTjJJbmZvcm1hdGlvbkNsYXNzIHsKICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICBlbnVtIFNNOwogICAgICBlbnVtIE5SUFBBOwogICAgICBlbnVtIFBXUzsKICAgICAgZW51bSBQV1NfQkNBTDsKICAgICAgZW51bSBQV1NfUkY7CiAgICB9ICAgICAgICAgICAgICAKICB9CiAgCiAgZ3JvdXBpbmcgRGVmYXVsdE5vdGlmaWNhdGlvblN1YnNjcmlwdGlvbiB7CiAgICAKICAgIGxlYWYgbm90aWZpY2F0aW9uVHlwZSB7CiAgICAgIHR5cGUgTm90aWZpY2F0aW9uVHlwZTsKICAgIH0KICAgIAogICAgbGVhZiBjYWxsYmFja1VyaSB7CiAgICAgIHR5cGUgaW5ldDp1cmk7CiAgICB9CiAgICAKICAgIGxlYWYgbjFNZXNzYWdlQ2xhc3MgewogICAgICB0eXBlIE4xTWVzc2FnZUNsYXNzOwogICAgfQogICAgCiAgICBsZWFmIG4ySW5mb3JtYXRpb25DbGFzcyB7CiAgICAgIHR5cGUgTjJJbmZvcm1hdGlvbkNsYXNzOwogICAgfSAgICAKICB9ICAKICAgICAgICAKICBncm91cGluZyBJcHY0QWRkcmVzc1JhbmdlIHsKICBsZWFmIHN0YXJ0IHsKICAgIHR5cGUgaW5ldDppcHY0LWFkZHJlc3M7CiAgICB9CiAgbGVhZiBlbmQgewogICAgdHlwZSBpbmV0OmlwdjQtYWRkcmVzczsKICAgIH0gICAgCiAgfQogICAgCiAgZ3JvdXBpbmcgSXB2NlByZWZpeFJhbmdlIHsKICBsZWFmIHN0YXJ0IHsKICAgIHR5cGUgaW5ldDppcHY2LXByZWZpeDsKICAgIH0KICBsZWFmIGVuZCB7CiAgICB0eXBlIGluZXQ6aXB2Ni1wcmVmaXg7CiAgICB9ICAgIAogIH0KICAgICAKICB0eXBlZGVmIE5zaUlkIHsKICAgIHR5cGUgc3RyaW5nOwogIH0KICAgIAogIHR5cGVkZWYgVWVNb2JpbGl0eUxldmVsIHsKICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICBlbnVtIFNUQVRJT05BUlk7CiAgICAgIGVudW0gTk9NQURJQzsKICAgICAgZW51bSBSRVNUUklDVEVEX01PQklMSVRZOwogICAgICBlbnVtIEZVTExZX01PQklMSVRZOwogICAgfQogIH0KICAgICAgCiAgdHlwZWRlZiBSZXNvdXJjZVNoYXJpbmdMZXZlbCB7CiAgICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICAgIGVudW0gU0hBUkVEOwogICAgICAgIGVudW0gTk9UX1NIQVJFRDsKICAgICAgfQogIH0KICAgICAgCiAgdHlwZWRlZiBUeERpcmVjdGlvbiB7CiAgICAgIHR5cGUgZW51bWVyYXRpb24gewogICAgICAgIGVudW0gREw7CiAgICAgICAgZW51bSBVTDsKICAgICAgICBlbnVtIERMX0FORF9VTDsKICAgICAgfQogIH0KICAgICAgCiAgZ3JvdXBpbmcgQWRkcmVzc1dpdGhWbGFuIHsKICAgIGxlYWYgaXBBZGRyZXNzIHsKICAgICAgdHlwZSBpbmV0OmlwLWFkZHJlc3M7ICAgCiAgICB9CiAgICBsZWFmIHZsYW5JZCB7CiAgICAgICB0eXBlIHVpbnQxNjsKICAgIH0gIAogIH0KICAKICB0eXBlZGVmIERpc3Rpbmd1aXNoZWROYW1lIHsgICAgLy8gVE9ETyBpcyB0aGlzIGVxdWl2YWxlbnQgdG8gVFMgMzIuMzAwID8KICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnKFthLXpBLVpdW2EtekEtWjAtOS1dKj0oXFwoIHwjfFxcfD58PHw7fCJ8XCt8LHxbYS1mQS1GMC05XXsyfSl8W15cXD48OyIrLCMgXSknCiAgICAgICAgKyAnKChcXCggfCN8XFx8Pnw8fDt8InxcK3wsfFthLWZBLUYwLTldezJ9KXxbXlxcPjw7IissXSkqJwogICAgICAgICsgJyhcXCggfCN8XFx8Pnw8fDt8InxcK3wsfFthLWZBLUYwLTldezJ9KXxbXlxcPjw7IissIF0pKT8nCiAgICAgICAgKyAnWyxcK10pKlthLXpBLVpdW2EtekEtWjAtOS1dKj0oXFwoIHwjfFxcfD58PHw7fCJ8XCt8LHxbYS1mQS1GMC05XXsyfSl8W15cXD48OyIrLCMgXSknCiAgICAgICAgKyAnKChcXCggfCN8XFx8Pnw8fDt8InxcK3wsfFthLWZBLUYwLTldezJ9KScKICAgICAgICArICd8W15cXD48OyIrLF0pKihcXCggfCN8XFx8Pnw8fDt8InxcK3wsfFthLWZBLUYwLTldezJ9KXxbXlxcPjw7IissIF0pKT8nOyAgCiAgICB9CiAgICBkZXNjcmlwdGlvbiAiUmVwcmVzZW50cyB0aGUgaW50ZXJuYXRpb25hbCBzdGFuZGFyZCBmb3IgdGhlIHJlcHJlc2VudGF0aW9uIAogICAgICBvZiBEaXN0aW5ndWlzaGVkIE5hbWUgKFJGQyA0NTEyKS4gCiAgICAgIFRoZSBmb3JtYXQgb2YgdGhlIERpc3Rpbmd1aXNoZWROYW1lIFJFR0VYIGlzOgogICAgICB7QXR0cmlidXRlVHlwZSA9IEF0dHJpYnV0ZVZhbHVlfSAgIAoKICAgICAgQXR0cmlidXRlVHlwZSBjb25zaXN0cyBvZiBhbHBoYW51bWVyaWMgYW5kIGh5cGhlbiAoT0lEcyBub3QgYWxsb3dlZCkuIAogICAgICBBbGwgb3RoZXIgY2hhcmFjdGVycyBhcmUgcmVzdHJpY3RlZC4KICAgICAgVGhlIEF0dHJpYnV0ZSB2YWx1ZSBjYW5ub3QgY29udGFpbiBjb250cm9sIGNoYXJhY3RlcnMgb3IgdGhlIAogICAgICAgIGZvbGxvd2luZyBjaGFyYWN0ZXJzIDogXFwgPiA8IDsgXCIgKyAsIChDb21tYSkgYW5kIFdoaXRlIHNwYWNlCiAgICAgIFRoZSBBdHRyaWJ1dGUgdmFsdWUgY2FuIGNvbnRhaW4gdGhlIGZvbGxvd2luZyBjaGFyYWN0ZXJzIGlmIHRoZXkgCiAgICAgICAgYXJlIGV4Y2FwZWQgOiBcXCA+IDwgOyBcIiArICwgKENvbW1hKSBhbmQgV2hpdGUgc3BhY2UKICAgICAgVGhlIEF0dHJpYnV0ZSB2YWx1ZSBjYW4gY29udGFpbiBjb250cm9sIGNoYXJhY3RlcnMgaWYgaXRzIGFuIGVzY2FwZWQgCiAgICAgICAgZG91YmxlIGRpZ2l0IGhleCBudW1iZXIuCiAgICAgICAgRXhhbXBsZXMgY291bGQgYmUgCiAgICAgICAgICBVSUQ9bm9ib2R5QGV4YW1wbGUuY29tLERDPWV4YW1wbGUsREM9Y29tCiAgICAgICAgICAgIENOPUpvaG4gU21pdGgsT1U9U2FsZXMsTz1BQ01FIExpbWl0ZWQsTD1Nb2FiLFNUPVV0YWgsQz1VUyI7CiAgICByZWZlcmVuY2UgICJSRkMgNDUxMiBMaWdodHdlaWdodCBEaXJlY3RvcnkgQWNjZXNzIFByb3RvY29sIChMREFQKToKICAgICAgICAgICAgICAgICAgICAgIERpcmVjdG9yeSBJbmZvcm1hdGlvbiBNb2RlbHMiOwogIH0gLy8gcmVjaGVjayByZWdleHAgaXQgZG9lc24ndCBoYW5kbGUgcG9zaXggWzpjbnRybDpdCiAKICB0eXBlZGVmIFFPZmZzZXRSYW5nZSAgewogICAgdHlwZSBpbnQ4IHsgCiAgICAgIHJhbmdlICItMjQgfCAtMjIgfCAtMjAgfCAtMTggfCAtMTYgfCAtMTQgfCAtMTIgfCAtMTAgfCAtOCB8IC02IHwgIiArCiAgICAgICAgIiAtNSB8IC00IHwgLTMgfCAtMiB8IC0xIHwgMCB8IDEgfCAyIHwgMyB8IDQgfCA1IHwgNiB8IDggfCAxMCB8ICIgKwogICAgICAgICIgMTIgfCAxNCB8IDE2IHwgMTggfCAyMCB8IDIyIHwgMjQiOyAKICAgIH0KICAgIHVuaXRzIGRCOwogIH0KfQ==
-ietf-geo-location urn:ietf:params:xml:ns:yang:ietf-geo-location \N [] 2022-02-11 bW9kdWxlIGlldGYtZ2VvLWxvY2F0aW9uIHsKICB5YW5nLXZlcnNpb24gMS4xOwogIG5hbWVzcGFjZSAidXJuOmlldGY6cGFyYW1zOnhtbDpuczp5YW5nOmlldGYtZ2VvLWxvY2F0aW9uIjsKICBwcmVmaXggZ2VvOwogIGltcG9ydCBpZXRmLXlhbmctdHlwZXMgewogICAgcHJlZml4IHlhbmc7CiAgICByZWZlcmVuY2UgIlJGQyA2OTkxOiBDb21tb24gWUFORyBEYXRhIFR5cGVzIjsKICB9CgogIG9yZ2FuaXphdGlvbgogICAgIklFVEYgTkVUTU9EIFdvcmtpbmcgR3JvdXAgKE5FVE1PRCkiOwogIGNvbnRhY3QKICAgIldHIFdlYjogICA8aHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy93Zy9uZXRtb2QvPgogICAgV0cgTGlzdDogIDxtYWlsdG86bmV0bW9kQGlldGYub3JnPgoKICAgIEVkaXRvcjogICBDaHJpc3RpYW4gSG9wcHMKICAgICAgICAgICAgICA8bWFpbHRvOmNob3Bwc0BjaG9wcHMub3JnPiI7CgogIGRlc2NyaXB0aW9uCiAgICAiVGhpcyBtb2R1bGUgZGVmaW5lcyBhIGdyb3VwaW5nIG9mIGEgY29udGFpbmVyIG9iamVjdCBmb3IKICAgICBzcGVjaWZ5aW5nIGEgbG9jYXRpb24gb24gb3IgYXJvdW5kIGFuIGFzdHJvbm9taWNhbCBvYmplY3QgKGUuZy4sCiAgICAgJ2VhcnRoJykuCgogICAgIFRoZSBrZXkgd29yZHMgJ01VU1QnLCAnTVVTVCBOT1QnLCAnUkVRVUlSRUQnLCAnU0hBTEwnLCAnU0hBTEwKICAgICBOT1QnLCAnU0hPVUxEJywgJ1NIT1VMRCBOT1QnLCAnUkVDT01NRU5ERUQnLCAnTk9UIFJFQ09NTUVOREVEJywKICAgICAnTUFZJywgYW5kICdPUFRJT05BTCcgaW4gdGhpcyBkb2N1bWVudCBhcmUgdG8gYmUgaW50ZXJwcmV0ZWQgYXMKICAgICBkZXNjcmliZWQgaW4gQkNQIDE0IChSRkMgMjExOSkgKFJGQyA4MTc0KSB3aGVuLCBhbmQgb25seSB3aGVuLAogICAgIHRoZXkgYXBwZWFyIGluIGFsbCBjYXBpdGFscywgYXMgc2hvd24gaGVyZS4KCiAgICAgQ29weXJpZ2h0IChjKSAyMDIyIElFVEYgVHJ1c3QgYW5kIHRoZSBwZXJzb25zIGlkZW50aWZpZWQgYXMKICAgICBhdXRob3JzIG9mIHRoZSBjb2RlLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KCiAgICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3JtcywKICAgICB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uLCBpcyBwZXJtaXR0ZWQgcHVyc3VhbnQgdG8sCiAgICAgYW5kIHN1YmplY3QgdG8gdGhlIGxpY2Vuc2UgdGVybXMgY29udGFpbmVkIGluLCB0aGUKICAgICBSZXZpc2VkIEJTRCBMaWNlbnNlIHNldCBmb3J0aCBpbiBTZWN0aW9uIDQuYyBvZiB0aGUKICAgICBJRVRGIFRydXN0J3MgTGVnYWwgUHJvdmlzaW9ucyBSZWxhdGluZyB0byBJRVRGIERvY3VtZW50cwogICAgIChodHRwczovL3RydXN0ZWUuaWV0Zi5vcmcvbGljZW5zZS1pbmZvKS4KCiAgICAgVGhpcyB2ZXJzaW9uIG9mIHRoaXMgWUFORyBtb2R1bGUgaXMgcGFydCBvZiBSRkMgOTE3OQogICAgIChodHRwczovL3d3dy5yZmMtZWRpdG9yLm9yZy9pbmZvL3JmYzkxNzkpOyBzZWUgdGhlIFJGQyBpdHNlbGYKICAgICBmb3IgZnVsbCBsZWdhbCBub3RpY2VzLiI7CgogIHJldmlzaW9uIDIwMjItMDItMTEgewogICAgZGVzY3JpcHRpb24KICAgICAgIkluaXRpYWwgUmV2aXNpb24iOwogICAgcmVmZXJlbmNlCiAgICAgICJSRkMgOTE3OTogQSBZQU5HIEdyb3VwaW5nIGZvciBHZW9ncmFwaGljIExvY2F0aW9ucyI7CiAgfQoKICBmZWF0dXJlIGFsdGVybmF0ZS1zeXN0ZW1zIHsKICAgIGRlc2NyaXB0aW9uCiAgICAgICJUaGlzIGZlYXR1cmUgbWVhbnMgdGhlIGRldmljZSBzdXBwb3J0cyBzcGVjaWZ5aW5nIGxvY2F0aW9ucwogICAgICAgdXNpbmcgYWx0ZXJuYXRlIHN5c3RlbXMgZm9yIHJlZmVyZW5jZSBmcmFtZXMuIjsKICB9CgogIGdyb3VwaW5nIGdlby1sb2NhdGlvbiB7CiAgICBkZXNjcmlwdGlvbgogICAgICAiR3JvdXBpbmcgdG8gaWRlbnRpZnkgYSBsb2NhdGlvbiBvbiBhbiBhc3Ryb25vbWljYWwgb2JqZWN0LiI7CgogICAgY29udGFpbmVyIGdlby1sb2NhdGlvbiB7CiAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIkEgbG9jYXRpb24gb24gYW4gYXN0cm9ub21pY2FsIGJvZHkgKGUuZy4sICdlYXJ0aCcpCiAgICAgICAgIHNvbWV3aGVyZSBpbiBhIHVuaXZlcnNlLiI7CgogICAgICBjb250YWluZXIgcmVmZXJlbmNlLWZyYW1lIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIlRoZSBGcmFtZSBvZiBSZWZlcmVuY2UgZm9yIHRoZSBsb2NhdGlvbiB2YWx1ZXMuIjsKCiAgICAgICAgbGVhZiBhbHRlcm5hdGUtc3lzdGVtIHsKICAgICAgICAgIGlmLWZlYXR1cmUgImFsdGVybmF0ZS1zeXN0ZW1zIjsKICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBzeXN0ZW0gaW4gd2hpY2ggdGhlIGFzdHJvbm9taWNhbCBib2R5IGFuZAogICAgICAgICAgICAgZ2VvZGV0aWMtZGF0dW0gaXMgZGVmaW5lZC4gIE5vcm1hbGx5LCB0aGlzIHZhbHVlIGlzIG5vdAogICAgICAgICAgICAgcHJlc2VudCBhbmQgdGhlIHN5c3RlbSBpcyB0aGUgbmF0dXJhbCB1bml2ZXJzZTsgaG93ZXZlciwKICAgICAgICAgICAgIHdoZW4gcHJlc2VudCwgdGhpcyB2YWx1ZSBhbGxvd3MgZm9yIHNwZWNpZnlpbmcgYWx0ZXJuYXRlCiAgICAgICAgICAgICBzeXN0ZW1zIChlLmcuLCB2aXJ0dWFsIHJlYWxpdGllcykuICBBbiBhbHRlcm5hdGUtc3lzdGVtCiAgICAgICAgICAgICBtb2RpZmllcyB0aGUgZGVmaW5pdGlvbiAoYnV0IG5vdCB0aGUgdHlwZSkgb2YgdGhlIG90aGVyCiAgICAgICAgICAgICB2YWx1ZXMgaW4gdGhlIHJlZmVyZW5jZSBmcmFtZS4iOwogICAgICAgIH0KICAgICAgICBsZWFmIGFzdHJvbm9taWNhbC1ib2R5IHsKICAgICAgICAgIHR5cGUgc3RyaW5nIHsKICAgICAgICAgICAgcGF0dGVybiAnWyAtQFxbLVxeXy1+XSonOwogICAgICAgICAgfQogICAgICAgICAgZGVmYXVsdCAiZWFydGgiOwogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIkFuIGFzdHJvbm9taWNhbCBib2R5IGFzIG5hbWVkIGJ5IHRoZSBJbnRlcm5hdGlvbmFsCiAgICAgICAgICAgICBBc3Ryb25vbWljYWwgVW5pb24gKElBVSkgb3IgYWNjb3JkaW5nIHRvIHRoZSBhbHRlcm5hdGUKICAgICAgICAgICAgIHN5c3RlbSBpZiBzcGVjaWZpZWQuICBFeGFtcGxlcyBpbmNsdWRlICdzdW4nIChvdXIgc3RhciksCiAgICAgICAgICAgICAnZWFydGgnIChvdXIgcGxhbmV0KSwgJ21vb24nIChvdXIgbW9vbiksICdlbmNlbGFkdXMnIChhCiAgICAgICAgICAgICBtb29uIG9mIFNhdHVybiksICdjZXJlcycgKGFuIGFzdGVyb2lkKSwgYW5kCiAgICAgICAgICAgICAnNjdwL2NodXJ5dW1vdi1nZXJhc2ltZW5rbyAoYSBjb21ldCkuICBUaGUgQVNDSUkgdmFsdWUKICAgICAgICAgICAgIFNIT1VMRCBoYXZlIHVwcGVyY2FzZSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlIGFuZCBub3QKICAgICAgICAgICAgIGluY2x1ZGUgY29udHJvbCBjaGFyYWN0ZXJzIChpLmUuLCB2YWx1ZXMgMzIuLjY0LCBhbmQKICAgICAgICAgICAgIDkxLi4xMjYpLiAgQW55IHByZWNlZGluZyAndGhlJyBpbiB0aGUgbmFtZSBTSE9VTEQgTk9UIGJlCiAgICAgICAgICAgICBpbmNsdWRlZC4iOwogICAgICAgICAgcmVmZXJlbmNlCiAgICAgICAgICAgICJodHRwczovL3d3dy5pYXUub3JnLyI7CiAgICAgICAgfQogICAgICAgIGNvbnRhaW5lciBnZW9kZXRpYy1zeXN0ZW0gewogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBnZW9kZXRpYyBzeXN0ZW0gb2YgdGhlIGxvY2F0aW9uIGRhdGEuIjsKICAgICAgICAgIGxlYWYgZ2VvZGV0aWMtZGF0dW0gewogICAgICAgICAgICB0eXBlIHN0cmluZyB7CiAgICAgICAgICAgICAgcGF0dGVybiAnWyAtQFxbLVxeXy1+XSonOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICAgIkEgZ2VvZGV0aWMtZGF0dW0gZGVmaW5pbmcgdGhlIG1lYW5pbmcgb2YgbGF0aXR1ZGUsCiAgICAgICAgICAgICAgIGxvbmdpdHVkZSwgYW5kIGhlaWdodC4gIFRoZSBkZWZhdWx0IHdoZW4gdGhlCiAgICAgICAgICAgICAgIGFzdHJvbm9taWNhbCBib2R5IGlzICdlYXJ0aCcgaXMgJ3dncy04NCcsIHdoaWNoIGlzCiAgICAgICAgICAgICAgIHVzZWQgYnkgdGhlIEdsb2JhbCBQb3NpdGlvbmluZyBTeXN0ZW0gKEdQUykuICBUaGUKICAgICAgICAgICAgICAgQVNDSUkgdmFsdWUgU0hPVUxEIGhhdmUgdXBwZXJjYXNlIGNvbnZlcnRlZCB0bwogICAgICAgICAgICAgICBsb3dlcmNhc2UgYW5kIG5vdCBpbmNsdWRlIGNvbnRyb2wgY2hhcmFjdGVycwogICAgICAgICAgICAgICAoaS5lLiwgdmFsdWVzIDMyLi42NCwgYW5kIDkxLi4xMjYpLiAgVGhlIElBTkEgcmVnaXN0cnkKICAgICAgICAgICAgICAgZnVydGhlciByZXN0cmljdHMgdGhlIHZhbHVlIGJ5IGNvbnZlcnRpbmcgYWxsIHNwYWNlcwogICAgICAgICAgICAgICAoJyAnKSB0byBkYXNoZXMgKCctJykuCiAgICAgICAgICAgICAgIFRoZSBzcGVjaWZpY2F0aW9uIGZvciB0aGUgZ2VvZGV0aWMtZGF0dW0gaW5kaWNhdGVzCiAgICAgICAgICAgICAgIGhvdyBhY2N1cmF0ZWx5IGl0IG1vZGVscyB0aGUgYXN0cm9ub21pY2FsIGJvZHkgaW4KICAgICAgICAgICAgICAgcXVlc3Rpb24sIGJvdGggZm9yIHRoZSAnaG9yaXpvbnRhbCcKICAgICAgICAgICAgICAgbGF0aXR1ZGUvbG9uZ2l0dWRlIGNvb3JkaW5hdGVzIGFuZCBmb3IgaGVpZ2h0CiAgICAgICAgICAgICAgIGNvb3JkaW5hdGVzLiI7CiAgICAgICAgICAgIHJlZmVyZW5jZQogICAgICAgICAgICAgICJSRkMgOTE3OTogQSBZQU5HIEdyb3VwaW5nIGZvciBHZW9ncmFwaGljIExvY2F0aW9ucywKICAgICAgICAgICAgICAgU2VjdGlvbiA2LjEiOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiBjb29yZC1hY2N1cmFjeSB7CiAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgNjsKICAgICAgICAgICAgfQogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICJUaGUgYWNjdXJhY3kgb2YgdGhlIGxhdGl0dWRlL2xvbmdpdHVkZSBwYWlyIGZvcgogICAgICAgICAgICAgICBlbGxpcHNvaWRhbCBjb29yZGluYXRlcywgb3IgdGhlIFgsIFksIGFuZCBaIGNvbXBvbmVudHMKICAgICAgICAgICAgICAgZm9yIENhcnRlc2lhbiBjb29yZGluYXRlcy4gIFdoZW4gY29vcmQtYWNjdXJhY3kgaXMKICAgICAgICAgICAgICAgc3BlY2lmaWVkLCBpdCBpbmRpY2F0ZXMgaG93IHByZWNpc2VseSB0aGUgY29vcmRpbmF0ZXMKICAgICAgICAgICAgICAgaW4gdGhlIGFzc29jaWF0ZWQgbGlzdCBvZiBsb2NhdGlvbnMgaGF2ZSBiZWVuCiAgICAgICAgICAgICAgIGRldGVybWluZWQgd2l0aCByZXNwZWN0IHRvIHRoZSBjb29yZGluYXRlIHN5c3RlbQogICAgICAgICAgICAgICBkZWZpbmVkIGJ5IHRoZSBnZW9kZXRpYy1kYXR1bS4gIEZvciBleGFtcGxlLCB0aGVyZQogICAgICAgICAgICAgICBtaWdodCBiZSB1bmNlcnRhaW50eSBkdWUgdG8gbWVhc3VyZW1lbnQgZXJyb3IgaWYgYW4KICAgICAgICAgICAgICAgZXhwZXJpbWVudGFsIG1lYXN1cmVtZW50IHdhcyBtYWRlIHRvIGRldGVybWluZSBlYWNoCiAgICAgICAgICAgICAgIGxvY2F0aW9uLiI7CiAgICAgICAgICB9CiAgICAgICAgICBsZWFmIGhlaWdodC1hY2N1cmFjeSB7CiAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgNjsKICAgICAgICAgICAgfQogICAgICAgICAgICB1bml0cyAibWV0ZXJzIjsKICAgICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgICAiVGhlIGFjY3VyYWN5IG9mIHRoZSBoZWlnaHQgdmFsdWUgZm9yIGVsbGlwc29pZGFsCiAgICAgICAgICAgICAgIGNvb3JkaW5hdGVzOyB0aGlzIHZhbHVlIGlzIG5vdCB1c2VkIHdpdGggQ2FydGVzaWFuCiAgICAgICAgICAgICAgIGNvb3JkaW5hdGVzLiAgV2hlbiBoZWlnaHQtYWNjdXJhY3kgaXMgc3BlY2lmaWVkLCBpdAogICAgICAgICAgICAgICBpbmRpY2F0ZXMgaG93IHByZWNpc2VseSB0aGUgaGVpZ2h0cyBpbiB0aGUKICAgICAgICAgICAgICAgYXNzb2NpYXRlZCBsaXN0IG9mIGxvY2F0aW9ucyBoYXZlIGJlZW4gZGV0ZXJtaW5lZAogICAgICAgICAgICAgICB3aXRoIHJlc3BlY3QgdG8gdGhlIGNvb3JkaW5hdGUgc3lzdGVtIGRlZmluZWQgYnkgdGhlCiAgICAgICAgICAgICAgIGdlb2RldGljLWRhdHVtLiAgRm9yIGV4YW1wbGUsIHRoZXJlIG1pZ2h0IGJlCiAgICAgICAgICAgICAgIHVuY2VydGFpbnR5IGR1ZSB0byBtZWFzdXJlbWVudCBlcnJvciBpZiBhbgogICAgICAgICAgICAgICBleHBlcmltZW50YWwgbWVhc3VyZW1lbnQgd2FzIG1hZGUgdG8gZGV0ZXJtaW5lIGVhY2gKICAgICAgICAgICAgICAgbG9jYXRpb24uIjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgY2hvaWNlIGxvY2F0aW9uIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIlRoZSBsb2NhdGlvbiBkYXRhIGVpdGhlciBpbiBsYXRpdHVkZS9sb25naXR1ZGUgb3IKICAgICAgICAgICBDYXJ0ZXNpYW4gdmFsdWVzIjsKICAgICAgICBjYXNlIGVsbGlwc29pZCB7CiAgICAgICAgICBsZWFmIGxhdGl0dWRlIHsKICAgICAgICAgICAgdHlwZSBkZWNpbWFsNjQgewogICAgICAgICAgICAgIGZyYWN0aW9uLWRpZ2l0cyAxNjsKICAgICAgICAgICAgfQogICAgICAgICAgICB1bml0cyAiZGVjaW1hbCBkZWdyZWVzIjsKICAgICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgICAiVGhlIGxhdGl0dWRlIHZhbHVlIG9uIHRoZSBhc3Ryb25vbWljYWwgYm9keS4gIFRoZQogICAgICAgICAgICAgICBkZWZpbml0aW9uIGFuZCBwcmVjaXNpb24gb2YgdGhpcyBtZWFzdXJlbWVudCBpcwogICAgICAgICAgICAgICBpbmRpY2F0ZWQgYnkgdGhlIHJlZmVyZW5jZS1mcmFtZS4iOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiBsb25naXR1ZGUgewogICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDE2OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHVuaXRzICJkZWNpbWFsIGRlZ3JlZXMiOwogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICJUaGUgbG9uZ2l0dWRlIHZhbHVlIG9uIHRoZSBhc3Ryb25vbWljYWwgYm9keS4gIFRoZQogICAgICAgICAgICAgICBkZWZpbml0aW9uIGFuZCBwcmVjaXNpb24gb2YgdGhpcyBtZWFzdXJlbWVudCBpcwogICAgICAgICAgICAgICBpbmRpY2F0ZWQgYnkgdGhlIHJlZmVyZW5jZS1mcmFtZS4iOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiBoZWlnaHQgewogICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDY7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdW5pdHMgIm1ldGVycyI7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICAgIkhlaWdodCBmcm9tIGEgcmVmZXJlbmNlIDAgdmFsdWUuICBUaGUgcHJlY2lzaW9uIGFuZAogICAgICAgICAgICAgICAnMCcgdmFsdWUgaXMgZGVmaW5lZCBieSB0aGUgcmVmZXJlbmNlLWZyYW1lLiI7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhc2UgY2FydGVzaWFuIHsKICAgICAgICAgIGxlYWYgeCB7CiAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgNjsKICAgICAgICAgICAgfQogICAgICAgICAgICB1bml0cyAibWV0ZXJzIjsKICAgICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgICAiVGhlIFggdmFsdWUgYXMgZGVmaW5lZCBieSB0aGUgcmVmZXJlbmNlLWZyYW1lLiI7CiAgICAgICAgICB9CiAgICAgICAgICBsZWFmIHkgewogICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDY7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdW5pdHMgIm1ldGVycyI7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICAgIlRoZSBZIHZhbHVlIGFzIGRlZmluZWQgYnkgdGhlIHJlZmVyZW5jZS1mcmFtZS4iOwogICAgICAgICAgfQogICAgICAgICAgbGVhZiB6IHsKICAgICAgICAgICAgdHlwZSBkZWNpbWFsNjQgewogICAgICAgICAgICAgIGZyYWN0aW9uLWRpZ2l0cyA2OwogICAgICAgICAgICB9CiAgICAgICAgICAgIHVuaXRzICJtZXRlcnMiOwogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICJUaGUgWiB2YWx1ZSBhcyBkZWZpbmVkIGJ5IHRoZSByZWZlcmVuY2UtZnJhbWUuIjsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgY29udGFpbmVyIHZlbG9jaXR5IHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIklmIHRoZSBvYmplY3QgaXMgaW4gbW90aW9uLCB0aGUgdmVsb2NpdHkgdmVjdG9yIGRlc2NyaWJlcwogICAgICAgICAgIHRoaXMgbW90aW9uIGF0IHRoZSB0aW1lIGdpdmVuIGJ5IHRoZSB0aW1lc3RhbXAuICBGb3IgYQogICAgICAgICAgIGZvcm11bGEgdG8gY29udmVydCB0aGVzZSB2YWx1ZXMgdG8gc3BlZWQgYW5kIGhlYWRpbmcsIHNlZQogICAgICAgICAgIFJGQyA5MTc5LiI7CiAgICAgICAgcmVmZXJlbmNlCiAgICAgICAgICAiUkZDIDkxNzk6IEEgWUFORyBHcm91cGluZyBmb3IgR2VvZ3JhcGhpYyBMb2NhdGlvbnMiOwoKICAgICAgICBsZWFmIHYtbm9ydGggewogICAgICAgICAgdHlwZSBkZWNpbWFsNjQgewogICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgMTI7CiAgICAgICAgICB9CiAgICAgICAgICB1bml0cyAibWV0ZXJzIHBlciBzZWNvbmQiOwogICAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgInYtbm9ydGggaXMgdGhlIHJhdGUgb2YgY2hhbmdlIChpLmUuLCBzcGVlZCkgdG93YXJkcwogICAgICAgICAgICAgdHJ1ZSBub3J0aCBhcyBkZWZpbmVkIGJ5IHRoZSBnZW9kZXRpYy1zeXN0ZW0uIjsKICAgICAgICB9CgogICAgICAgIGxlYWYgdi1lYXN0IHsKICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDEyOwogICAgICAgICAgfQogICAgICAgICAgdW5pdHMgIm1ldGVycyBwZXIgc2Vjb25kIjsKICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJ2LWVhc3QgaXMgdGhlIHJhdGUgb2YgY2hhbmdlIChpLmUuLCBzcGVlZCkgcGVycGVuZGljdWxhcgogICAgICAgICAgICAgdG8gdGhlIHJpZ2h0IG9mIHRydWUgbm9ydGggYXMgZGVmaW5lZCBieQogICAgICAgICAgICAgdGhlIGdlb2RldGljLXN5c3RlbS4iOwogICAgICAgIH0KCiAgICAgICAgbGVhZiB2LXVwIHsKICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDEyOwogICAgICAgICAgfQogICAgICAgICAgdW5pdHMgIm1ldGVycyBwZXIgc2Vjb25kIjsKICAgICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJ2LXVwIGlzIHRoZSByYXRlIG9mIGNoYW5nZSAoaS5lLiwgc3BlZWQpIGF3YXkgZnJvbSB0aGUKICAgICAgICAgICAgIGNlbnRlciBvZiBtYXNzLiI7CiAgICAgICAgfQogICAgICB9CiAgICAgIGxlYWYgdGltZXN0YW1wIHsKICAgICAgICB0eXBlIHlhbmc6ZGF0ZS1hbmQtdGltZTsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgIlJlZmVyZW5jZSB0aW1lIHdoZW4gbG9jYXRpb24gd2FzIHJlY29yZGVkLiI7CiAgICAgIH0KICAgICAgbGVhZiB2YWxpZC11bnRpbCB7CiAgICAgICAgdHlwZSB5YW5nOmRhdGUtYW5kLXRpbWU7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICJUaGUgdGltZXN0YW1wIGZvciB3aGljaCB0aGlzIGdlby1sb2NhdGlvbiBpcyB2YWxpZCB1bnRpbC4KICAgICAgICAgICBJZiB1bnNwZWNpZmllZCwgdGhlIGdlby1sb2NhdGlvbiBoYXMgbm8gc3BlY2lmaWMKICAgICAgICAgICBleHBpcmF0aW9uIHRpbWUuIjsKICAgICAgfQogICAgfQogIH0KfQo=
-ietf-inet-types urn:ietf:params:xml:ns:yang:ietf-inet-types \N [] 2013-07-15 bW9kdWxlIGlldGYtaW5ldC10eXBlcyB7CgogIG5hbWVzcGFjZSAidXJuOmlldGY6cGFyYW1zOnhtbDpuczp5YW5nOmlldGYtaW5ldC10eXBlcyI7CiAgcHJlZml4ICJpbmV0IjsKCiAgb3JnYW5pemF0aW9uCiAgICJJRVRGIE5FVE1PRCAoTkVUQ09ORiBEYXRhIE1vZGVsaW5nIExhbmd1YWdlKSBXb3JraW5nIEdyb3VwIjsKCiAgY29udGFjdAogICAiV0cgV2ViOiAgIDxodHRwOi8vdG9vbHMuaWV0Zi5vcmcvd2cvbmV0bW9kLz4KICAgIFdHIExpc3Q6ICA8bWFpbHRvOm5ldG1vZEBpZXRmLm9yZz4KCiAgICBXRyBDaGFpcjogRGF2aWQgS2Vzc2VucwogICAgICAgICAgICAgIDxtYWlsdG86ZGF2aWQua2Vzc2Vuc0Buc24uY29tPgoKICAgIFdHIENoYWlyOiBKdWVyZ2VuIFNjaG9lbndhZWxkZXIKICAgICAgICAgICAgICA8bWFpbHRvOmouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZT4KCiAgICBFZGl0b3I6ICAgSnVlcmdlbiBTY2hvZW53YWVsZGVyCiAgICAgICAgICAgICAgPG1haWx0bzpqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGU+IjsKCiAgZGVzY3JpcHRpb24KICAgIlRoaXMgbW9kdWxlIGNvbnRhaW5zIGEgY29sbGVjdGlvbiBvZiBnZW5lcmFsbHkgdXNlZnVsIGRlcml2ZWQKICAgIFlBTkcgZGF0YSB0eXBlcyBmb3IgSW50ZXJuZXQgYWRkcmVzc2VzIGFuZCByZWxhdGVkIHRoaW5ncy4KCiAgICBDb3B5cmlnaHQgKGMpIDIwMTMgSUVURiBUcnVzdCBhbmQgdGhlIHBlcnNvbnMgaWRlbnRpZmllZCBhcwogICAgYXV0aG9ycyBvZiB0aGUgY29kZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvcgogICAgd2l0aG91dCBtb2RpZmljYXRpb24sIGlzIHBlcm1pdHRlZCBwdXJzdWFudCB0bywgYW5kIHN1YmplY3QKICAgIHRvIHRoZSBsaWNlbnNlIHRlcm1zIGNvbnRhaW5lZCBpbiwgdGhlIFNpbXBsaWZpZWQgQlNEIExpY2Vuc2UKICAgIHNldCBmb3J0aCBpbiBTZWN0aW9uIDQuYyBvZiB0aGUgSUVURiBUcnVzdCdzIExlZ2FsIFByb3Zpc2lvbnMKICAgIFJlbGF0aW5nIHRvIElFVEYgRG9jdW1lbnRzCiAgICAoaHR0cDovL3RydXN0ZWUuaWV0Zi5vcmcvbGljZW5zZS1pbmZvKS4KCiAgICBUaGlzIHZlcnNpb24gb2YgdGhpcyBZQU5HIG1vZHVsZSBpcyBwYXJ0IG9mIFJGQyA2OTkxOyBzZWUKICAgIHRoZSBSRkMgaXRzZWxmIGZvciBmdWxsIGxlZ2FsIG5vdGljZXMuIjsKCiAgcmV2aXNpb24gMjAxMy0wNy0xNSB7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGlzIHJldmlzaW9uIGFkZHMgdGhlIGZvbGxvd2luZyBuZXcgZGF0YSB0eXBlczoKICAgICAgLSBpcC1hZGRyZXNzLW5vLXpvbmUKICAgICAgLSBpcHY0LWFkZHJlc3Mtbm8tem9uZQogICAgICAtIGlwdjYtYWRkcmVzcy1uby16b25lIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjk5MTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICByZXZpc2lvbiAyMDEwLTA5LTI0IHsKICAgIGRlc2NyaXB0aW9uCiAgICAgIkluaXRpYWwgcmV2aXNpb24uIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjAyMTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgdHlwZXMgcmVsYXRlZCB0byBwcm90b2NvbCBmaWVsZHMgKioqLwoKICB0eXBlZGVmIGlwLXZlcnNpb24gewogICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgIGVudW0gdW5rbm93biB7CiAgICAgICAgdmFsdWUgIjAiOwogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICJBbiB1bmtub3duIG9yIHVuc3BlY2lmaWVkIHZlcnNpb24gb2YgdGhlIEludGVybmV0CiAgICAgICAgICBwcm90b2NvbC4iOwogICAgICB9CiAgICAgIGVudW0gaXB2NCB7CiAgICAgICAgdmFsdWUgIjEiOwogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICJUaGUgSVB2NCBwcm90b2NvbCBhcyBkZWZpbmVkIGluIFJGQyA3OTEuIjsKICAgICAgfQogICAgICBlbnVtIGlwdjYgewogICAgICAgIHZhbHVlICIyIjsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAiVGhlIElQdjYgcHJvdG9jb2wgYXMgZGVmaW5lZCBpbiBSRkMgMjQ2MC4iOwogICAgICB9CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGlzIHZhbHVlIHJlcHJlc2VudHMgdGhlIHZlcnNpb24gb2YgdGhlIElQIHByb3RvY29sLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIEluZXRWZXJzaW9uIHRleHR1YWwgY29udmVudGlvbiBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgIDc5MTogSW50ZXJuZXQgUHJvdG9jb2wKICAgICAgUkZDIDI0NjA6IEludGVybmV0IFByb3RvY29sLCBWZXJzaW9uIDYgKElQdjYpIFNwZWNpZmljYXRpb24KICAgICAgUkZDIDQwMDE6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIEludGVybmV0IE5ldHdvcmsgQWRkcmVzc2VzIjsKICB9CgogIHR5cGVkZWYgZHNjcCB7CiAgICB0eXBlIHVpbnQ4IHsKICAgICAgcmFuZ2UgIjAuLjYzIjsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBkc2NwIHR5cGUgcmVwcmVzZW50cyBhIERpZmZlcmVudGlhdGVkIFNlcnZpY2VzIENvZGUgUG9pbnQKICAgICAgdGhhdCBtYXkgYmUgdXNlZCBmb3IgbWFya2luZyBwYWNrZXRzIGluIGEgdHJhZmZpYyBzdHJlYW0uCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBEc2NwIHRleHR1YWwgY29udmVudGlvbiBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMzI4OTogTWFuYWdlbWVudCBJbmZvcm1hdGlvbiBCYXNlIGZvciB0aGUgRGlmZmVyZW50aWF0ZWQKICAgICAgICAgICAgICAgIFNlcnZpY2VzIEFyY2hpdGVjdHVyZQogICAgICBSRkMgMjQ3NDogRGVmaW5pdGlvbiBvZiB0aGUgRGlmZmVyZW50aWF0ZWQgU2VydmljZXMgRmllbGQKICAgICAgICAgICAgICAgIChEUyBGaWVsZCkgaW4gdGhlIElQdjQgYW5kIElQdjYgSGVhZGVycwogICAgICBSRkMgMjc4MDogSUFOQSBBbGxvY2F0aW9uIEd1aWRlbGluZXMgRm9yIFZhbHVlcyBJbgogICAgICAgICAgICAgICAgdGhlIEludGVybmV0IFByb3RvY29sIGFuZCBSZWxhdGVkIEhlYWRlcnMiOwogIH0KCiAgdHlwZWRlZiBpcHY2LWZsb3ctbGFiZWwgewogICAgdHlwZSB1aW50MzIgewogICAgICByYW5nZSAiMC4uMTA0ODU3NSI7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgaXB2Ni1mbG93LWxhYmVsIHR5cGUgcmVwcmVzZW50cyB0aGUgZmxvdyBpZGVudGlmaWVyIG9yIEZsb3cKICAgICAgTGFiZWwgaW4gYW4gSVB2NiBwYWNrZXQgaGVhZGVyIHRoYXQgbWF5IGJlIHVzZWQgdG8KICAgICAgZGlzY3JpbWluYXRlIHRyYWZmaWMgZmxvd3MuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgSVB2NkZsb3dMYWJlbCB0ZXh0dWFsIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDM1OTU6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIElQdjYgRmxvdyBMYWJlbAogICAgICBSRkMgMjQ2MDogSW50ZXJuZXQgUHJvdG9jb2wsIFZlcnNpb24gNiAoSVB2NikgU3BlY2lmaWNhdGlvbiI7CiAgfQoKICB0eXBlZGVmIHBvcnQtbnVtYmVyIHsKICAgIHR5cGUgdWludDE2IHsKICAgICAgcmFuZ2UgIjAuLjY1NTM1IjsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBwb3J0LW51bWJlciB0eXBlIHJlcHJlc2VudHMgYSAxNi1iaXQgcG9ydCBudW1iZXIgb2YgYW4KICAgICAgSW50ZXJuZXQgdHJhbnNwb3J0LWxheWVyIHByb3RvY29sIHN1Y2ggYXMgVURQLCBUQ1AsIERDQ1AsIG9yCiAgICAgIFNDVFAuICBQb3J0IG51bWJlcnMgYXJlIGFzc2lnbmVkIGJ5IElBTkEuICBBIGN1cnJlbnQgbGlzdCBvZgogICAgICBhbGwgYXNzaWdubWVudHMgaXMgYXZhaWxhYmxlIGZyb20gPGh0dHA6Ly93d3cuaWFuYS5vcmcvPi4KCiAgICAgIE5vdGUgdGhhdCB0aGUgcG9ydCBudW1iZXIgdmFsdWUgemVybyBpcyByZXNlcnZlZCBieSBJQU5BLiAgSW4KICAgICAgc2l0dWF0aW9ucyB3aGVyZSB0aGUgdmFsdWUgemVybyBkb2VzIG5vdCBtYWtlIHNlbnNlLCBpdCBjYW4KICAgICAgYmUgZXhjbHVkZWQgYnkgc3VidHlwaW5nIHRoZSBwb3J0LW51bWJlciB0eXBlLgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgSW5ldFBvcnROdW1iZXIgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAgNzY4OiBVc2VyIERhdGFncmFtIFByb3RvY29sCiAgICAgIFJGQyAgNzkzOiBUcmFuc21pc3Npb24gQ29udHJvbCBQcm90b2NvbAogICAgICBSRkMgNDk2MDogU3RyZWFtIENvbnRyb2wgVHJhbnNtaXNzaW9uIFByb3RvY29sCiAgICAgIFJGQyA0MzQwOiBEYXRhZ3JhbSBDb25nZXN0aW9uIENvbnRyb2wgUHJvdG9jb2wgKERDQ1ApCiAgICAgIFJGQyA0MDAxOiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBJbnRlcm5ldCBOZXR3b3JrIEFkZHJlc3NlcyI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgdHlwZXMgcmVsYXRlZCB0byBhdXRvbm9tb3VzIHN5c3RlbXMgKioqLwoKICB0eXBlZGVmIGFzLW51bWJlciB7CiAgICB0eXBlIHVpbnQzMjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBhcy1udW1iZXIgdHlwZSByZXByZXNlbnRzIGF1dG9ub21vdXMgc3lzdGVtIG51bWJlcnMKICAgICAgd2hpY2ggaWRlbnRpZnkgYW4gQXV0b25vbW91cyBTeXN0ZW0gKEFTKS4gIEFuIEFTIGlzIGEgc2V0CiAgICAgIG9mIHJvdXRlcnMgdW5kZXIgYSBzaW5nbGUgdGVjaG5pY2FsIGFkbWluaXN0cmF0aW9uLCB1c2luZwogICAgICBhbiBpbnRlcmlvciBnYXRld2F5IHByb3RvY29sIGFuZCBjb21tb24gbWV0cmljcyB0byByb3V0ZQogICAgICBwYWNrZXRzIHdpdGhpbiB0aGUgQVMsIGFuZCB1c2luZyBhbiBleHRlcmlvciBnYXRld2F5CiAgICAgIHByb3RvY29sIHRvIHJvdXRlIHBhY2tldHMgdG8gb3RoZXIgQVNlcy4gIElBTkEgbWFpbnRhaW5zCiAgICAgIHRoZSBBUyBudW1iZXIgc3BhY2UgYW5kIGhhcyBkZWxlZ2F0ZWQgbGFyZ2UgcGFydHMgdG8gdGhlCiAgICAgIHJlZ2lvbmFsIHJlZ2lzdHJpZXMuCgogICAgICBBdXRvbm9tb3VzIHN5c3RlbSBudW1iZXJzIHdlcmUgb3JpZ2luYWxseSBsaW1pdGVkIHRvIDE2CiAgICAgIGJpdHMuICBCR1AgZXh0ZW5zaW9ucyBoYXZlIGVubGFyZ2VkIHRoZSBhdXRvbm9tb3VzIHN5c3RlbQogICAgICBudW1iZXIgc3BhY2UgdG8gMzIgYml0cy4gIFRoaXMgdHlwZSB0aGVyZWZvcmUgdXNlcyBhbiB1aW50MzIKICAgICAgYmFzZSB0eXBlIHdpdGhvdXQgYSByYW5nZSByZXN0cmljdGlvbiBpbiBvcmRlciB0byBzdXBwb3J0CiAgICAgIGEgbGFyZ2VyIGF1dG9ub21vdXMgc3lzdGVtIG51bWJlciBzcGFjZS4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBJbmV0QXV0b25vbW91c1N5c3RlbU51bWJlciB0ZXh0dWFsIGNvbnZlbnRpb24gb2YKICAgICAgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDE5MzA6IEd1aWRlbGluZXMgZm9yIGNyZWF0aW9uLCBzZWxlY3Rpb24sIGFuZCByZWdpc3RyYXRpb24KICAgICAgICAgICAgICAgIG9mIGFuIEF1dG9ub21vdXMgU3lzdGVtIChBUykKICAgICAgUkZDIDQyNzE6IEEgQm9yZGVyIEdhdGV3YXkgUHJvdG9jb2wgNCAoQkdQLTQpCiAgICAgIFJGQyA0MDAxOiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBJbnRlcm5ldCBOZXR3b3JrIEFkZHJlc3NlcwogICAgICBSRkMgNjc5MzogQkdQIFN1cHBvcnQgZm9yIEZvdXItT2N0ZXQgQXV0b25vbW91cyBTeXN0ZW0gKEFTKQogICAgICAgICAgICAgICAgTnVtYmVyIFNwYWNlIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiB0eXBlcyByZWxhdGVkIHRvIElQIGFkZHJlc3NlcyBhbmQgaG9zdG5hbWVzICoqKi8KCiAgdHlwZWRlZiBpcC1hZGRyZXNzIHsKICAgIHR5cGUgdW5pb24gewogICAgICB0eXBlIGluZXQ6aXB2NC1hZGRyZXNzOwogICAgICB0eXBlIGluZXQ6aXB2Ni1hZGRyZXNzOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGlwLWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElQIGFkZHJlc3MgYW5kIGlzIElQCiAgICAgIHZlcnNpb24gbmV1dHJhbC4gIFRoZSBmb3JtYXQgb2YgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb24KICAgICAgaW1wbGllcyB0aGUgSVAgdmVyc2lvbi4gIFRoaXMgdHlwZSBzdXBwb3J0cyBzY29wZWQgYWRkcmVzc2VzCiAgICAgIGJ5IGFsbG93aW5nIHpvbmUgaWRlbnRpZmllcnMgaW4gdGhlIGFkZHJlc3MgZm9ybWF0LiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDQwMDc6IElQdjYgU2NvcGVkIEFkZHJlc3MgQXJjaGl0ZWN0dXJlIjsKICB9CgogIHR5cGVkZWYgaXB2NC1hZGRyZXNzIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybgogICAgICAgICcoKFswLTldfFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSlcLil7M30nCiAgICAgICsgICcoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1bMC05XXwyWzAtNF1bMC05XXwyNVswLTVdKScKICAgICAgKyAnKCVbXHB7Tn1ccHtMfV0rKT8nOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAgIlRoZSBpcHY0LWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElQdjQgYWRkcmVzcyBpbgogICAgICAgZG90dGVkLXF1YWQgbm90YXRpb24uICBUaGUgSVB2NCBhZGRyZXNzIG1heSBpbmNsdWRlIGEgem9uZQogICAgICAgaW5kZXgsIHNlcGFyYXRlZCBieSBhICUgc2lnbi4KCiAgICAgICBUaGUgem9uZSBpbmRleCBpcyB1c2VkIHRvIGRpc2FtYmlndWF0ZSBpZGVudGljYWwgYWRkcmVzcwogICAgICAgdmFsdWVzLiAgRm9yIGxpbmstbG9jYWwgYWRkcmVzc2VzLCB0aGUgem9uZSBpbmRleCB3aWxsCiAgICAgICB0eXBpY2FsbHkgYmUgdGhlIGludGVyZmFjZSBpbmRleCBudW1iZXIgb3IgdGhlIG5hbWUgb2YgYW4KICAgICAgIGludGVyZmFjZS4gIElmIHRoZSB6b25lIGluZGV4IGlzIG5vdCBwcmVzZW50LCB0aGUgZGVmYXVsdAogICAgICAgem9uZSBvZiB0aGUgZGV2aWNlIHdpbGwgYmUgdXNlZC4KCiAgICAgICBUaGUgY2Fub25pY2FsIGZvcm1hdCBmb3IgdGhlIHpvbmUgaW5kZXggaXMgdGhlIG51bWVyaWNhbAogICAgICAgZm9ybWF0IjsKICB9CgogIHR5cGVkZWYgaXB2Ni1hZGRyZXNzIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnKCg6fFswLTlhLWZBLUZdezAsNH0pOikoWzAtOWEtZkEtRl17MCw0fTopezAsNX0nCiAgICAgICAgICAgICsgJygoKFswLTlhLWZBLUZdezAsNH06KT8oOnxbMC05YS1mQS1GXXswLDR9KSl8JwogICAgICAgICAgICArICcoKCgyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV0/WzAtOV0pXC4pezN9JwogICAgICAgICAgICArICcoMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldP1swLTldKSkpJwogICAgICAgICAgICArICcoJVtccHtOfVxwe0x9XSspPyc7CiAgICAgIHBhdHRlcm4gJygoW146XSs6KXs2fSgoW146XSs6W146XSspfCguKlwuLiopKSl8JwogICAgICAgICAgICArICcoKChbXjpdKzopKlteOl0rKT86OigoW146XSs6KSpbXjpdKyk/KScKICAgICAgICAgICAgKyAnKCUuKyk/JzsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBpcHY2LWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElQdjYgYWRkcmVzcyBpbiBmdWxsLAogICAgICBtaXhlZCwgc2hvcnRlbmVkLCBhbmQgc2hvcnRlbmVkLW1peGVkIG5vdGF0aW9uLiAgVGhlIElQdjYKICAgICAgYWRkcmVzcyBtYXkgaW5jbHVkZSBhIHpvbmUgaW5kZXgsIHNlcGFyYXRlZCBieSBhICUgc2lnbi4KCiAgICAgIFRoZSB6b25lIGluZGV4IGlzIHVzZWQgdG8gZGlzYW1iaWd1YXRlIGlkZW50aWNhbCBhZGRyZXNzCiAgICAgIHZhbHVlcy4gIEZvciBsaW5rLWxvY2FsIGFkZHJlc3NlcywgdGhlIHpvbmUgaW5kZXggd2lsbAogICAgICB0eXBpY2FsbHkgYmUgdGhlIGludGVyZmFjZSBpbmRleCBudW1iZXIgb3IgdGhlIG5hbWUgb2YgYW4KICAgICAgaW50ZXJmYWNlLiAgSWYgdGhlIHpvbmUgaW5kZXggaXMgbm90IHByZXNlbnQsIHRoZSBkZWZhdWx0CiAgICAgIHpvbmUgb2YgdGhlIGRldmljZSB3aWxsIGJlIHVzZWQuCgogICAgICBUaGUgY2Fub25pY2FsIGZvcm1hdCBvZiBJUHY2IGFkZHJlc3NlcyB1c2VzIHRoZSB0ZXh0dWFsCiAgICAgIHJlcHJlc2VudGF0aW9uIGRlZmluZWQgaW4gU2VjdGlvbiA0IG9mIFJGQyA1OTUyLiAgVGhlCiAgICAgIGNhbm9uaWNhbCBmb3JtYXQgZm9yIHRoZSB6b25lIGluZGV4IGlzIHRoZSBudW1lcmljYWwKICAgICAgZm9ybWF0IGFzIGRlc2NyaWJlZCBpbiBTZWN0aW9uIDExLjIgb2YgUkZDIDQwMDcuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNDI5MTogSVAgVmVyc2lvbiA2IEFkZHJlc3NpbmcgQXJjaGl0ZWN0dXJlCiAgICAgIFJGQyA0MDA3OiBJUHY2IFNjb3BlZCBBZGRyZXNzIEFyY2hpdGVjdHVyZQogICAgICBSRkMgNTk1MjogQSBSZWNvbW1lbmRhdGlvbiBmb3IgSVB2NiBBZGRyZXNzIFRleHQKICAgICAgICAgICAgICAgIFJlcHJlc2VudGF0aW9uIjsKICB9CgogIHR5cGVkZWYgaXAtYWRkcmVzcy1uby16b25lIHsKICAgIHR5cGUgdW5pb24gewogICAgICB0eXBlIGluZXQ6aXB2NC1hZGRyZXNzLW5vLXpvbmU7CiAgICAgIHR5cGUgaW5ldDppcHY2LWFkZHJlc3Mtbm8tem9uZTsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBpcC1hZGRyZXNzLW5vLXpvbmUgdHlwZSByZXByZXNlbnRzIGFuIElQIGFkZHJlc3MgYW5kIGlzCiAgICAgIElQIHZlcnNpb24gbmV1dHJhbC4gIFRoZSBmb3JtYXQgb2YgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb24KICAgICAgaW1wbGllcyB0aGUgSVAgdmVyc2lvbi4gIFRoaXMgdHlwZSBkb2VzIG5vdCBzdXBwb3J0IHNjb3BlZAogICAgICBhZGRyZXNzZXMgc2luY2UgaXQgZG9lcyBub3QgYWxsb3cgem9uZSBpZGVudGlmaWVycyBpbiB0aGUKICAgICAgYWRkcmVzcyBmb3JtYXQuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNDAwNzogSVB2NiBTY29wZWQgQWRkcmVzcyBBcmNoaXRlY3R1cmUiOwogIH0KCiAgdHlwZWRlZiBpcHY0LWFkZHJlc3Mtbm8tem9uZSB7CiAgICB0eXBlIGluZXQ6aXB2NC1hZGRyZXNzIHsKICAgICAgcGF0dGVybiAnWzAtOVwuXSonOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAgIkFuIElQdjQgYWRkcmVzcyB3aXRob3V0IGEgem9uZSBpbmRleC4gIFRoaXMgdHlwZSwgZGVyaXZlZCBmcm9tCiAgICAgICBpcHY0LWFkZHJlc3MsIG1heSBiZSB1c2VkIGluIHNpdHVhdGlvbnMgd2hlcmUgdGhlIHpvbmUgaXMKICAgICAgIGtub3duIGZyb20gdGhlIGNvbnRleHQgYW5kIGhlbmNlIG5vIHpvbmUgaW5kZXggaXMgbmVlZGVkLiI7CiAgfQoKICB0eXBlZGVmIGlwdjYtYWRkcmVzcy1uby16b25lIHsKICAgIHR5cGUgaW5ldDppcHY2LWFkZHJlc3MgewogICAgICBwYXR0ZXJuICdbMC05YS1mQS1GOlwuXSonOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAgIkFuIElQdjYgYWRkcmVzcyB3aXRob3V0IGEgem9uZSBpbmRleC4gIFRoaXMgdHlwZSwgZGVyaXZlZCBmcm9tCiAgICAgICBpcHY2LWFkZHJlc3MsIG1heSBiZSB1c2VkIGluIHNpdHVhdGlvbnMgd2hlcmUgdGhlIHpvbmUgaXMKICAgICAgIGtub3duIGZyb20gdGhlIGNvbnRleHQgYW5kIGhlbmNlIG5vIHpvbmUgaW5kZXggaXMgbmVlZGVkLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDQyOTE6IElQIFZlcnNpb24gNiBBZGRyZXNzaW5nIEFyY2hpdGVjdHVyZQogICAgICBSRkMgNDAwNzogSVB2NiBTY29wZWQgQWRkcmVzcyBBcmNoaXRlY3R1cmUKICAgICAgUkZDIDU5NTI6IEEgUmVjb21tZW5kYXRpb24gZm9yIElQdjYgQWRkcmVzcyBUZXh0CiAgICAgICAgICAgICAgICBSZXByZXNlbnRhdGlvbiI7CiAgfQoKICB0eXBlZGVmIGlwLXByZWZpeCB7CiAgICB0eXBlIHVuaW9uIHsKICAgICAgdHlwZSBpbmV0OmlwdjQtcHJlZml4OwogICAgICB0eXBlIGluZXQ6aXB2Ni1wcmVmaXg7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgaXAtcHJlZml4IHR5cGUgcmVwcmVzZW50cyBhbiBJUCBwcmVmaXggYW5kIGlzIElQCiAgICAgIHZlcnNpb24gbmV1dHJhbC4gIFRoZSBmb3JtYXQgb2YgdGhlIHRleHR1YWwgcmVwcmVzZW50YXRpb25zCiAgICAgIGltcGxpZXMgdGhlIElQIHZlcnNpb24uIjsKICB9CgogIHR5cGVkZWYgaXB2NC1wcmVmaXggewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuCiAgICAgICAgICcoKFswLTldfFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSlcLil7M30nCiAgICAgICArICAnKFswLTldfFsxLTldWzAtOV18MVswLTldWzAtOV18MlswLTRdWzAtOV18MjVbMC01XSknCiAgICAgICArICcvKChbMC05XSl8KFsxLTJdWzAtOV0pfCgzWzAtMl0pKSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgaXB2NC1wcmVmaXggdHlwZSByZXByZXNlbnRzIGFuIElQdjQgYWRkcmVzcyBwcmVmaXguCiAgICAgIFRoZSBwcmVmaXggbGVuZ3RoIGlzIGdpdmVuIGJ5IHRoZSBudW1iZXIgZm9sbG93aW5nIHRoZQogICAgICBzbGFzaCBjaGFyYWN0ZXIgYW5kIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDMyLgoKICAgICAgQSBwcmVmaXggbGVuZ3RoIHZhbHVlIG9mIG4gY29ycmVzcG9uZHMgdG8gYW4gSVAgYWRkcmVzcwogICAgICBtYXNrIHRoYXQgaGFzIG4gY29udGlndW91cyAxLWJpdHMgZnJvbSB0aGUgbW9zdAogICAgICBzaWduaWZpY2FudCBiaXQgKE1TQikgYW5kIGFsbCBvdGhlciBiaXRzIHNldCB0byAwLgoKICAgICAgVGhlIGNhbm9uaWNhbCBmb3JtYXQgb2YgYW4gSVB2NCBwcmVmaXggaGFzIGFsbCBiaXRzIG9mCiAgICAgIHRoZSBJUHY0IGFkZHJlc3Mgc2V0IHRvIHplcm8gdGhhdCBhcmUgbm90IHBhcnQgb2YgdGhlCiAgICAgIElQdjQgcHJlZml4LiI7CiAgfQoKICB0eXBlZGVmIGlwdjYtcHJlZml4IHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnKCg6fFswLTlhLWZBLUZdezAsNH0pOikoWzAtOWEtZkEtRl17MCw0fTopezAsNX0nCiAgICAgICAgICAgICsgJygoKFswLTlhLWZBLUZdezAsNH06KT8oOnxbMC05YS1mQS1GXXswLDR9KSl8JwogICAgICAgICAgICArICcoKCgyNVswLTVdfDJbMC00XVswLTldfFswMV0/WzAtOV0/WzAtOV0pXC4pezN9JwogICAgICAgICAgICArICcoMjVbMC01XXwyWzAtNF1bMC05XXxbMDFdP1swLTldP1swLTldKSkpJwogICAgICAgICAgICArICcoLygoWzAtOV0pfChbMC05XXsyfSl8KDFbMC0xXVswLTldKXwoMTJbMC04XSkpKSc7CiAgICAgIHBhdHRlcm4gJygoW146XSs6KXs2fSgoW146XSs6W146XSspfCguKlwuLiopKSl8JwogICAgICAgICAgICArICcoKChbXjpdKzopKlteOl0rKT86OigoW146XSs6KSpbXjpdKyk/KScKICAgICAgICAgICAgKyAnKC8uKyknOwogICAgfQoKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBpcHY2LXByZWZpeCB0eXBlIHJlcHJlc2VudHMgYW4gSVB2NiBhZGRyZXNzIHByZWZpeC4KICAgICAgVGhlIHByZWZpeCBsZW5ndGggaXMgZ2l2ZW4gYnkgdGhlIG51bWJlciBmb2xsb3dpbmcgdGhlCiAgICAgIHNsYXNoIGNoYXJhY3RlciBhbmQgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gMTI4LgoKICAgICAgQSBwcmVmaXggbGVuZ3RoIHZhbHVlIG9mIG4gY29ycmVzcG9uZHMgdG8gYW4gSVAgYWRkcmVzcwogICAgICBtYXNrIHRoYXQgaGFzIG4gY29udGlndW91cyAxLWJpdHMgZnJvbSB0aGUgbW9zdAogICAgICBzaWduaWZpY2FudCBiaXQgKE1TQikgYW5kIGFsbCBvdGhlciBiaXRzIHNldCB0byAwLgoKICAgICAgVGhlIElQdjYgYWRkcmVzcyBzaG91bGQgaGF2ZSBhbGwgYml0cyB0aGF0IGRvIG5vdCBiZWxvbmcKICAgICAgdG8gdGhlIHByZWZpeCBzZXQgdG8gemVyby4KCiAgICAgIFRoZSBjYW5vbmljYWwgZm9ybWF0IG9mIGFuIElQdjYgcHJlZml4IGhhcyBhbGwgYml0cyBvZgogICAgICB0aGUgSVB2NiBhZGRyZXNzIHNldCB0byB6ZXJvIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRoZQogICAgICBJUHY2IHByZWZpeC4gIEZ1cnRoZXJtb3JlLCB0aGUgSVB2NiBhZGRyZXNzIGlzIHJlcHJlc2VudGVkCiAgICAgIGFzIGRlZmluZWQgaW4gU2VjdGlvbiA0IG9mIFJGQyA1OTUyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDU5NTI6IEEgUmVjb21tZW5kYXRpb24gZm9yIElQdjYgQWRkcmVzcyBUZXh0CiAgICAgICAgICAgICAgICBSZXByZXNlbnRhdGlvbiI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgZG9tYWluIG5hbWUgYW5kIFVSSSB0eXBlcyAqKiovCgogIHR5cGVkZWYgZG9tYWluLW5hbWUgewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuCiAgICAgICAgJygoKFthLXpBLVowLTlfXShbYS16QS1aMC05XC1fXSl7MCw2MX0pP1thLXpBLVowLTldXC4pKicKICAgICAgKyAnKFthLXpBLVowLTlfXShbYS16QS1aMC05XC1fXSl7MCw2MX0pP1thLXpBLVowLTldXC4/KScKICAgICAgKyAnfFwuJzsKICAgICAgbGVuZ3RoICIxLi4yNTMiOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGRvbWFpbi1uYW1lIHR5cGUgcmVwcmVzZW50cyBhIEROUyBkb21haW4gbmFtZS4gIFRoZQogICAgICBuYW1lIFNIT1VMRCBiZSBmdWxseSBxdWFsaWZpZWQgd2hlbmV2ZXIgcG9zc2libGUuCgogICAgICBJbnRlcm5ldCBkb21haW4gbmFtZXMgYXJlIG9ubHkgbG9vc2VseSBzcGVjaWZpZWQuICBTZWN0aW9uCiAgICAgIDMuNSBvZiBSRkMgMTAzNCByZWNvbW1lbmRzIGEgc3ludGF4IChtb2RpZmllZCBpbiBTZWN0aW9uCiAgICAgIDIuMSBvZiBSRkMgMTEyMykuICBUaGUgcGF0dGVybiBhYm92ZSBpcyBpbnRlbmRlZCB0byBhbGxvdwogICAgICBmb3IgY3VycmVudCBwcmFjdGljZSBpbiBkb21haW4gbmFtZSB1c2UsIGFuZCBzb21lIHBvc3NpYmxlCiAgICAgIGZ1dHVyZSBleHBhbnNpb24uICBJdCBpcyBkZXNpZ25lZCB0byBob2xkIHZhcmlvdXMgdHlwZXMgb2YKICAgICAgZG9tYWluIG5hbWVzLCBpbmNsdWRpbmcgbmFtZXMgdXNlZCBmb3IgQSBvciBBQUFBIHJlY29yZHMKICAgICAgKGhvc3QgbmFtZXMpIGFuZCBvdGhlciByZWNvcmRzLCBzdWNoIGFzIFNSViByZWNvcmRzLiAgTm90ZQogICAgICB0aGF0IEludGVybmV0IGhvc3QgbmFtZXMgaGF2ZSBhIHN0cmljdGVyIHN5bnRheCAoZGVzY3JpYmVkCiAgICAgIGluIFJGQyA5NTIpIHRoYW4gdGhlIEROUyByZWNvbW1lbmRhdGlvbnMgaW4gUkZDcyAxMDM0IGFuZAogICAgICAxMTIzLCBhbmQgdGhhdCBzeXN0ZW1zIHRoYXQgd2FudCB0byBzdG9yZSBob3N0IG5hbWVzIGluCiAgICAgIHNjaGVtYSBub2RlcyB1c2luZyB0aGUgZG9tYWluLW5hbWUgdHlwZSBhcmUgcmVjb21tZW5kZWQgdG8KICAgICAgYWRoZXJlIHRvIHRoaXMgc3RyaWN0ZXIgc3RhbmRhcmQgdG8gZW5zdXJlIGludGVyb3BlcmFiaWxpdHkuCgogICAgICBUaGUgZW5jb2Rpbmcgb2YgRE5TIG5hbWVzIGluIHRoZSBETlMgcHJvdG9jb2wgaXMgbGltaXRlZAogICAgICB0byAyNTUgY2hhcmFjdGVycy4gIFNpbmNlIHRoZSBlbmNvZGluZyBjb25zaXN0cyBvZiBsYWJlbHMKICAgICAgcHJlZml4ZWQgYnkgYSBsZW5ndGggYnl0ZXMgYW5kIHRoZXJlIGlzIGEgdHJhaWxpbmcgTlVMTAogICAgICBieXRlLCBvbmx5IDI1MyBjaGFyYWN0ZXJzIGNhbiBhcHBlYXIgaW4gdGhlIHRleHR1YWwgZG90dGVkCiAgICAgIG5vdGF0aW9uLgoKICAgICAgVGhlIGRlc2NyaXB0aW9uIGNsYXVzZSBvZiBzY2hlbWEgbm9kZXMgdXNpbmcgdGhlIGRvbWFpbi1uYW1lCiAgICAgIHR5cGUgTVVTVCBkZXNjcmliZSB3aGVuIGFuZCBob3cgdGhlc2UgbmFtZXMgYXJlIHJlc29sdmVkIHRvCiAgICAgIElQIGFkZHJlc3Nlcy4gIE5vdGUgdGhhdCB0aGUgcmVzb2x1dGlvbiBvZiBhIGRvbWFpbi1uYW1lIHZhbHVlCiAgICAgIG1heSByZXF1aXJlIHRvIHF1ZXJ5IG11bHRpcGxlIEROUyByZWNvcmRzIChlLmcuLCBBIGZvciBJUHY0CiAgICAgIGFuZCBBQUFBIGZvciBJUHY2KS4gIFRoZSBvcmRlciBvZiB0aGUgcmVzb2x1dGlvbiBwcm9jZXNzIGFuZAogICAgICB3aGljaCBETlMgcmVjb3JkIHRha2VzIHByZWNlZGVuY2UgY2FuIGVpdGhlciBiZSBkZWZpbmVkCiAgICAgIGV4cGxpY2l0bHkgb3IgbWF5IGRlcGVuZCBvbiB0aGUgY29uZmlndXJhdGlvbiBvZiB0aGUKICAgICAgcmVzb2x2ZXIuCgogICAgICBEb21haW4tbmFtZSB2YWx1ZXMgdXNlIHRoZSBVUy1BU0NJSSBlbmNvZGluZy4gIFRoZWlyIGNhbm9uaWNhbAogICAgICBmb3JtYXQgdXNlcyBsb3dlcmNhc2UgVVMtQVNDSUkgY2hhcmFjdGVycy4gIEludGVybmF0aW9uYWxpemVkCiAgICAgIGRvbWFpbiBuYW1lcyBNVVNUIGJlIEEtbGFiZWxzIGFzIHBlciBSRkMgNTg5MC4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAgOTUyOiBEb0QgSW50ZXJuZXQgSG9zdCBUYWJsZSBTcGVjaWZpY2F0aW9uCiAgICAgIFJGQyAxMDM0OiBEb21haW4gTmFtZXMgLSBDb25jZXB0cyBhbmQgRmFjaWxpdGllcwogICAgICBSRkMgMTEyMzogUmVxdWlyZW1lbnRzIGZvciBJbnRlcm5ldCBIb3N0cyAtLSBBcHBsaWNhdGlvbgogICAgICAgICAgICAgICAgYW5kIFN1cHBvcnQKICAgICAgUkZDIDI3ODI6IEEgRE5TIFJSIGZvciBzcGVjaWZ5aW5nIHRoZSBsb2NhdGlvbiBvZiBzZXJ2aWNlcwogICAgICAgICAgICAgICAgKEROUyBTUlYpCiAgICAgIFJGQyA1ODkwOiBJbnRlcm5hdGlvbmFsaXplZCBEb21haW4gTmFtZXMgaW4gQXBwbGljYXRpb25zCiAgICAgICAgICAgICAgICAoSUROQSk6IERlZmluaXRpb25zIGFuZCBEb2N1bWVudCBGcmFtZXdvcmsiOwogIH0KCiAgdHlwZWRlZiBob3N0IHsKICAgIHR5cGUgdW5pb24gewogICAgICB0eXBlIGluZXQ6aXAtYWRkcmVzczsKICAgICAgdHlwZSBpbmV0OmRvbWFpbi1uYW1lOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGhvc3QgdHlwZSByZXByZXNlbnRzIGVpdGhlciBhbiBJUCBhZGRyZXNzIG9yIGEgRE5TCiAgICAgIGRvbWFpbiBuYW1lLiI7CiAgfQoKICB0eXBlZGVmIHVyaSB7CiAgICB0eXBlIHN0cmluZzsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSB1cmkgdHlwZSByZXByZXNlbnRzIGEgVW5pZm9ybSBSZXNvdXJjZSBJZGVudGlmaWVyCiAgICAgIChVUkkpIGFzIGRlZmluZWQgYnkgU1REIDY2LgoKICAgICAgT2JqZWN0cyB1c2luZyB0aGUgdXJpIHR5cGUgTVVTVCBiZSBpbiBVUy1BU0NJSSBlbmNvZGluZywKICAgICAgYW5kIE1VU1QgYmUgbm9ybWFsaXplZCBhcyBkZXNjcmliZWQgYnkgUkZDIDM5ODYgU2VjdGlvbnMKICAgICAgNi4yLjEsIDYuMi4yLjEsIGFuZCA2LjIuMi4yLiAgQWxsIHVubmVjZXNzYXJ5CiAgICAgIHBlcmNlbnQtZW5jb2RpbmcgaXMgcmVtb3ZlZCwgYW5kIGFsbCBjYXNlLWluc2Vuc2l0aXZlCiAgICAgIGNoYXJhY3RlcnMgYXJlIHNldCB0byBsb3dlcmNhc2UgZXhjZXB0IGZvciBoZXhhZGVjaW1hbAogICAgICBkaWdpdHMsIHdoaWNoIGFyZSBub3JtYWxpemVkIHRvIHVwcGVyY2FzZSBhcyBkZXNjcmliZWQgaW4KICAgICAgU2VjdGlvbiA2LjIuMi4xLgoKICAgICAgVGhlIHB1cnBvc2Ugb2YgdGhpcyBub3JtYWxpemF0aW9uIGlzIHRvIGhlbHAgcHJvdmlkZQogICAgICB1bmlxdWUgVVJJcy4gIE5vdGUgdGhhdCB0aGlzIG5vcm1hbGl6YXRpb24gaXMgbm90CiAgICAgIHN1ZmZpY2llbnQgdG8gcHJvdmlkZSB1bmlxdWVuZXNzLiAgVHdvIFVSSXMgdGhhdCBhcmUKICAgICAgdGV4dHVhbGx5IGRpc3RpbmN0IGFmdGVyIHRoaXMgbm9ybWFsaXphdGlvbiBtYXkgc3RpbGwgYmUKICAgICAgZXF1aXZhbGVudC4KCiAgICAgIE9iamVjdHMgdXNpbmcgdGhlIHVyaSB0eXBlIG1heSByZXN0cmljdCB0aGUgc2NoZW1lcyB0aGF0CiAgICAgIHRoZXkgcGVybWl0LiAgRm9yIGV4YW1wbGUsICdkYXRhOicgYW5kICd1cm46JyBzY2hlbWVzCiAgICAgIG1pZ2h0IG5vdCBiZSBhcHByb3ByaWF0ZS4KCiAgICAgIEEgemVyby1sZW5ndGggVVJJIGlzIG5vdCBhIHZhbGlkIFVSSS4gIFRoaXMgY2FuIGJlIHVzZWQgdG8KICAgICAgZXhwcmVzcyAnVVJJIGFic2VudCcgd2hlcmUgcmVxdWlyZWQuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgVXJpIFNNSXYyIHRleHR1YWwgY29udmVudGlvbiBkZWZpbmVkIGluIFJGQyA1MDE3LiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDM5ODY6IFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllciAoVVJJKTogR2VuZXJpYyBTeW50YXgKICAgICAgUkZDIDMzMDU6IFJlcG9ydCBmcm9tIHRoZSBKb2ludCBXM0MvSUVURiBVUkkgUGxhbm5pbmcgSW50ZXJlc3QKICAgICAgICAgICAgICAgIEdyb3VwOiBVbmlmb3JtIFJlc291cmNlIElkZW50aWZpZXJzIChVUklzKSwgVVJMcywKICAgICAgICAgICAgICAgIGFuZCBVbmlmb3JtIFJlc291cmNlIE5hbWVzIChVUk5zKTogQ2xhcmlmaWNhdGlvbnMKICAgICAgICAgICAgICAgIGFuZCBSZWNvbW1lbmRhdGlvbnMKICAgICAgUkZDIDUwMTc6IE1JQiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBVbmlmb3JtIFJlc291cmNlCiAgICAgICAgICAgICAgICBJZGVudGlmaWVycyAoVVJJcykiOwogIH0KCn0K
-ietf-yang-types urn:ietf:params:xml:ns:yang:ietf-yang-types \N [] 2013-07-15 bW9kdWxlIGlldGYteWFuZy10eXBlcyB7CgogIG5hbWVzcGFjZSAidXJuOmlldGY6cGFyYW1zOnhtbDpuczp5YW5nOmlldGYteWFuZy10eXBlcyI7CiAgcHJlZml4ICJ5YW5nIjsKCiAgb3JnYW5pemF0aW9uCiAgICJJRVRGIE5FVE1PRCAoTkVUQ09ORiBEYXRhIE1vZGVsaW5nIExhbmd1YWdlKSBXb3JraW5nIEdyb3VwIjsKCiAgY29udGFjdAogICAiV0cgV2ViOiAgIDxodHRwOi8vdG9vbHMuaWV0Zi5vcmcvd2cvbmV0bW9kLz4KICAgIFdHIExpc3Q6ICA8bWFpbHRvOm5ldG1vZEBpZXRmLm9yZz4KCiAgICBXRyBDaGFpcjogRGF2aWQgS2Vzc2VucwogICAgICAgICAgICAgIDxtYWlsdG86ZGF2aWQua2Vzc2Vuc0Buc24uY29tPgoKICAgIFdHIENoYWlyOiBKdWVyZ2VuIFNjaG9lbndhZWxkZXIKICAgICAgICAgICAgICA8bWFpbHRvOmouc2Nob2Vud2FlbGRlckBqYWNvYnMtdW5pdmVyc2l0eS5kZT4KCiAgICBFZGl0b3I6ICAgSnVlcmdlbiBTY2hvZW53YWVsZGVyCiAgICAgICAgICAgICAgPG1haWx0bzpqLnNjaG9lbndhZWxkZXJAamFjb2JzLXVuaXZlcnNpdHkuZGU+IjsKCiAgZGVzY3JpcHRpb24KICAgIlRoaXMgbW9kdWxlIGNvbnRhaW5zIGEgY29sbGVjdGlvbiBvZiBnZW5lcmFsbHkgdXNlZnVsIGRlcml2ZWQKICAgIFlBTkcgZGF0YSB0eXBlcy4KCiAgICBDb3B5cmlnaHQgKGMpIDIwMTMgSUVURiBUcnVzdCBhbmQgdGhlIHBlcnNvbnMgaWRlbnRpZmllZCBhcwogICAgYXV0aG9ycyBvZiB0aGUgY29kZS4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCgogICAgUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvcgogICAgd2l0aG91dCBtb2RpZmljYXRpb24sIGlzIHBlcm1pdHRlZCBwdXJzdWFudCB0bywgYW5kIHN1YmplY3QKICAgIHRvIHRoZSBsaWNlbnNlIHRlcm1zIGNvbnRhaW5lZCBpbiwgdGhlIFNpbXBsaWZpZWQgQlNEIExpY2Vuc2UKICAgIHNldCBmb3J0aCBpbiBTZWN0aW9uIDQuYyBvZiB0aGUgSUVURiBUcnVzdCdzIExlZ2FsIFByb3Zpc2lvbnMKICAgIFJlbGF0aW5nIHRvIElFVEYgRG9jdW1lbnRzCiAgICAoaHR0cDovL3RydXN0ZWUuaWV0Zi5vcmcvbGljZW5zZS1pbmZvKS4KCiAgICBUaGlzIHZlcnNpb24gb2YgdGhpcyBZQU5HIG1vZHVsZSBpcyBwYXJ0IG9mIFJGQyA2OTkxOyBzZWUKICAgIHRoZSBSRkMgaXRzZWxmIGZvciBmdWxsIGxlZ2FsIG5vdGljZXMuIjsKCiAgcmV2aXNpb24gMjAxMy0wNy0xNSB7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGlzIHJldmlzaW9uIGFkZHMgdGhlIGZvbGxvd2luZyBuZXcgZGF0YSB0eXBlczoKICAgICAgLSB5YW5nLWlkZW50aWZpZXIKICAgICAgLSBoZXgtc3RyaW5nCiAgICAgIC0gdXVpZAogICAgICAtIGRvdHRlZC1xdWFkIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjk5MTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICByZXZpc2lvbiAyMDEwLTA5LTI0IHsKICAgIGRlc2NyaXB0aW9uCiAgICAgIkluaXRpYWwgcmV2aXNpb24uIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNjAyMTogQ29tbW9uIFlBTkcgRGF0YSBUeXBlcyI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2YgY291bnRlciBhbmQgZ2F1Z2UgdHlwZXMgKioqLwoKICB0eXBlZGVmIGNvdW50ZXIzMiB7CiAgICB0eXBlIHVpbnQzMjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBjb3VudGVyMzIgdHlwZSByZXByZXNlbnRzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIKICAgICAgdGhhdCBtb25vdG9uaWNhbGx5IGluY3JlYXNlcyB1bnRpbCBpdCByZWFjaGVzIGEKICAgICAgbWF4aW11bSB2YWx1ZSBvZiAyXjMyLTEgKDQyOTQ5NjcyOTUgZGVjaW1hbCksIHdoZW4gaXQKICAgICAgd3JhcHMgYXJvdW5kIGFuZCBzdGFydHMgaW5jcmVhc2luZyBhZ2FpbiBmcm9tIHplcm8uCgogICAgICBDb3VudGVycyBoYXZlIG5vIGRlZmluZWQgJ2luaXRpYWwnIHZhbHVlLCBhbmQgdGh1cywgYQogICAgICBzaW5nbGUgdmFsdWUgb2YgYSBjb3VudGVyIGhhcyAoaW4gZ2VuZXJhbCkgbm8gaW5mb3JtYXRpb24KICAgICAgY29udGVudC4gIERpc2NvbnRpbnVpdGllcyBpbiB0aGUgbW9ub3RvbmljYWxseSBpbmNyZWFzaW5nCiAgICAgIHZhbHVlIG5vcm1hbGx5IG9jY3VyIGF0IHJlLWluaXRpYWxpemF0aW9uIG9mIHRoZQogICAgICBtYW5hZ2VtZW50IHN5c3RlbSwgYW5kIGF0IG90aGVyIHRpbWVzIGFzIHNwZWNpZmllZCBpbiB0aGUKICAgICAgZGVzY3JpcHRpb24gb2YgYSBzY2hlbWEgbm9kZSB1c2luZyB0aGlzIHR5cGUuICBJZiBzdWNoCiAgICAgIG90aGVyIHRpbWVzIGNhbiBvY2N1ciwgZm9yIGV4YW1wbGUsIHRoZSBjcmVhdGlvbiBvZgogICAgICBhIHNjaGVtYSBub2RlIG9mIHR5cGUgY291bnRlcjMyIGF0IHRpbWVzIG90aGVyIHRoYW4KICAgICAgcmUtaW5pdGlhbGl6YXRpb24sIHRoZW4gYSBjb3JyZXNwb25kaW5nIHNjaGVtYSBub2RlCiAgICAgIHNob3VsZCBiZSBkZWZpbmVkLCB3aXRoIGFuIGFwcHJvcHJpYXRlIHR5cGUsIHRvIGluZGljYXRlCiAgICAgIHRoZSBsYXN0IGRpc2NvbnRpbnVpdHkuCgogICAgICBUaGUgY291bnRlcjMyIHR5cGUgc2hvdWxkIG5vdCBiZSB1c2VkIGZvciBjb25maWd1cmF0aW9uCiAgICAgIHNjaGVtYSBub2Rlcy4gIEEgZGVmYXVsdCBzdGF0ZW1lbnQgU0hPVUxEIE5PVCBiZSB1c2VkIGluCiAgICAgIGNvbWJpbmF0aW9uIHdpdGggdGhlIHR5cGUgY291bnRlcjMyLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIENvdW50ZXIzMiB0eXBlIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyNTc4OiBTdHJ1Y3R1cmUgb2YgTWFuYWdlbWVudCBJbmZvcm1hdGlvbiBWZXJzaW9uIDIKICAgICAgICAgICAgICAgIChTTUl2MikiOwogIH0KCiAgdHlwZWRlZiB6ZXJvLWJhc2VkLWNvdW50ZXIzMiB7CiAgICB0eXBlIHlhbmc6Y291bnRlcjMyOwogICAgZGVmYXVsdCAiMCI7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgemVyby1iYXNlZC1jb3VudGVyMzIgdHlwZSByZXByZXNlbnRzIGEgY291bnRlcjMyCiAgICAgIHRoYXQgaGFzIHRoZSBkZWZpbmVkICdpbml0aWFsJyB2YWx1ZSB6ZXJvLgoKICAgICAgQSBzY2hlbWEgbm9kZSBvZiB0aGlzIHR5cGUgd2lsbCBiZSBzZXQgdG8gemVybyAoMCkgb24gY3JlYXRpb24KICAgICAgYW5kIHdpbGwgdGhlcmVhZnRlciBpbmNyZWFzZSBtb25vdG9uaWNhbGx5IHVudGlsIGl0IHJlYWNoZXMKICAgICAgYSBtYXhpbXVtIHZhbHVlIG9mIDJeMzItMSAoNDI5NDk2NzI5NSBkZWNpbWFsKSwgd2hlbiBpdAogICAgICB3cmFwcyBhcm91bmQgYW5kIHN0YXJ0cyBpbmNyZWFzaW5nIGFnYWluIGZyb20gemVyby4KCiAgICAgIFByb3ZpZGVkIHRoYXQgYW4gYXBwbGljYXRpb24gZGlzY292ZXJzIGEgbmV3IHNjaGVtYSBub2RlCiAgICAgIG9mIHRoaXMgdHlwZSB3aXRoaW4gdGhlIG1pbmltdW0gdGltZSB0byB3cmFwLCBpdCBjYW4gdXNlIHRoZQogICAgICAnaW5pdGlhbCcgdmFsdWUgYXMgYSBkZWx0YS4gIEl0IGlzIGltcG9ydGFudCBmb3IgYSBtYW5hZ2VtZW50CiAgICAgIHN0YXRpb24gdG8gYmUgYXdhcmUgb2YgdGhpcyBtaW5pbXVtIHRpbWUgYW5kIHRoZSBhY3R1YWwgdGltZQogICAgICBiZXR3ZWVuIHBvbGxzLCBhbmQgdG8gZGlzY2FyZCBkYXRhIGlmIHRoZSBhY3R1YWwgdGltZSBpcyB0b28KICAgICAgbG9uZyBvciB0aGVyZSBpcyBubyBkZWZpbmVkIG1pbmltdW0gdGltZS4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBaZXJvQmFzZWRDb3VudGVyMzIgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgICJSRkMgNDUwMjogUmVtb3RlIE5ldHdvcmsgTW9uaXRvcmluZyBNYW5hZ2VtZW50IEluZm9ybWF0aW9uCiAgICAgICAgICAgICAgICAgQmFzZSBWZXJzaW9uIDIiOwogIH0KCiAgdHlwZWRlZiBjb3VudGVyNjQgewogICAgdHlwZSB1aW50NjQ7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgY291bnRlcjY0IHR5cGUgcmVwcmVzZW50cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyCiAgICAgIHRoYXQgbW9ub3RvbmljYWxseSBpbmNyZWFzZXMgdW50aWwgaXQgcmVhY2hlcyBhCiAgICAgIG1heGltdW0gdmFsdWUgb2YgMl42NC0xICgxODQ0Njc0NDA3MzcwOTU1MTYxNSBkZWNpbWFsKSwKICAgICAgd2hlbiBpdCB3cmFwcyBhcm91bmQgYW5kIHN0YXJ0cyBpbmNyZWFzaW5nIGFnYWluIGZyb20gemVyby4KCiAgICAgIENvdW50ZXJzIGhhdmUgbm8gZGVmaW5lZCAnaW5pdGlhbCcgdmFsdWUsIGFuZCB0aHVzLCBhCiAgICAgIHNpbmdsZSB2YWx1ZSBvZiBhIGNvdW50ZXIgaGFzIChpbiBnZW5lcmFsKSBubyBpbmZvcm1hdGlvbgogICAgICBjb250ZW50LiAgRGlzY29udGludWl0aWVzIGluIHRoZSBtb25vdG9uaWNhbGx5IGluY3JlYXNpbmcKICAgICAgdmFsdWUgbm9ybWFsbHkgb2NjdXIgYXQgcmUtaW5pdGlhbGl6YXRpb24gb2YgdGhlCiAgICAgIG1hbmFnZW1lbnQgc3lzdGVtLCBhbmQgYXQgb3RoZXIgdGltZXMgYXMgc3BlY2lmaWVkIGluIHRoZQogICAgICBkZXNjcmlwdGlvbiBvZiBhIHNjaGVtYSBub2RlIHVzaW5nIHRoaXMgdHlwZS4gIElmIHN1Y2gKICAgICAgb3RoZXIgdGltZXMgY2FuIG9jY3VyLCBmb3IgZXhhbXBsZSwgdGhlIGNyZWF0aW9uIG9mCiAgICAgIGEgc2NoZW1hIG5vZGUgb2YgdHlwZSBjb3VudGVyNjQgYXQgdGltZXMgb3RoZXIgdGhhbgogICAgICByZS1pbml0aWFsaXphdGlvbiwgdGhlbiBhIGNvcnJlc3BvbmRpbmcgc2NoZW1hIG5vZGUKICAgICAgc2hvdWxkIGJlIGRlZmluZWQsIHdpdGggYW4gYXBwcm9wcmlhdGUgdHlwZSwgdG8gaW5kaWNhdGUKICAgICAgdGhlIGxhc3QgZGlzY29udGludWl0eS4KCiAgICAgIFRoZSBjb3VudGVyNjQgdHlwZSBzaG91bGQgbm90IGJlIHVzZWQgZm9yIGNvbmZpZ3VyYXRpb24KICAgICAgc2NoZW1hIG5vZGVzLiAgQSBkZWZhdWx0IHN0YXRlbWVudCBTSE9VTEQgTk9UIGJlIHVzZWQgaW4KICAgICAgY29tYmluYXRpb24gd2l0aCB0aGUgdHlwZSBjb3VudGVyNjQuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgQ291bnRlcjY0IHR5cGUgb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDI1Nzg6IFN0cnVjdHVyZSBvZiBNYW5hZ2VtZW50IEluZm9ybWF0aW9uIFZlcnNpb24gMgogICAgICAgICAgICAgICAgKFNNSXYyKSI7CiAgfQoKICB0eXBlZGVmIHplcm8tYmFzZWQtY291bnRlcjY0IHsKICAgIHR5cGUgeWFuZzpjb3VudGVyNjQ7CiAgICBkZWZhdWx0ICIwIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSB6ZXJvLWJhc2VkLWNvdW50ZXI2NCB0eXBlIHJlcHJlc2VudHMgYSBjb3VudGVyNjQgdGhhdAogICAgICBoYXMgdGhlIGRlZmluZWQgJ2luaXRpYWwnIHZhbHVlIHplcm8uCgogICAgICBBIHNjaGVtYSBub2RlIG9mIHRoaXMgdHlwZSB3aWxsIGJlIHNldCB0byB6ZXJvICgwKSBvbiBjcmVhdGlvbgogICAgICBhbmQgd2lsbCB0aGVyZWFmdGVyIGluY3JlYXNlIG1vbm90b25pY2FsbHkgdW50aWwgaXQgcmVhY2hlcwogICAgICBhIG1heGltdW0gdmFsdWUgb2YgMl42NC0xICgxODQ0Njc0NDA3MzcwOTU1MTYxNSBkZWNpbWFsKSwKICAgICAgd2hlbiBpdCB3cmFwcyBhcm91bmQgYW5kIHN0YXJ0cyBpbmNyZWFzaW5nIGFnYWluIGZyb20gemVyby4KCiAgICAgIFByb3ZpZGVkIHRoYXQgYW4gYXBwbGljYXRpb24gZGlzY292ZXJzIGEgbmV3IHNjaGVtYSBub2RlCiAgICAgIG9mIHRoaXMgdHlwZSB3aXRoaW4gdGhlIG1pbmltdW0gdGltZSB0byB3cmFwLCBpdCBjYW4gdXNlIHRoZQogICAgICAnaW5pdGlhbCcgdmFsdWUgYXMgYSBkZWx0YS4gIEl0IGlzIGltcG9ydGFudCBmb3IgYSBtYW5hZ2VtZW50CiAgICAgIHN0YXRpb24gdG8gYmUgYXdhcmUgb2YgdGhpcyBtaW5pbXVtIHRpbWUgYW5kIHRoZSBhY3R1YWwgdGltZQogICAgICBiZXR3ZWVuIHBvbGxzLCBhbmQgdG8gZGlzY2FyZCBkYXRhIGlmIHRoZSBhY3R1YWwgdGltZSBpcyB0b28KICAgICAgbG9uZyBvciB0aGVyZSBpcyBubyBkZWZpbmVkIG1pbmltdW0gdGltZS4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBaZXJvQmFzZWRDb3VudGVyNjQgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyODU2OiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBBZGRpdGlvbmFsIEhpZ2ggQ2FwYWNpdHkKICAgICAgICAgICAgICAgIERhdGEgVHlwZXMiOwogIH0KCiAgdHlwZWRlZiBnYXVnZTMyIHsKICAgIHR5cGUgdWludDMyOwogICAgZGVzY3JpcHRpb24KICAgICAiVGhlIGdhdWdlMzIgdHlwZSByZXByZXNlbnRzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIsIHdoaWNoCiAgICAgIG1heSBpbmNyZWFzZSBvciBkZWNyZWFzZSwgYnV0IHNoYWxsIG5ldmVyIGV4Y2VlZCBhIG1heGltdW0KICAgICAgdmFsdWUsIG5vciBmYWxsIGJlbG93IGEgbWluaW11bSB2YWx1ZS4gIFRoZSBtYXhpbXVtIHZhbHVlCiAgICAgIGNhbm5vdCBiZSBncmVhdGVyIHRoYW4gMl4zMi0xICg0Mjk0OTY3Mjk1IGRlY2ltYWwpLCBhbmQKICAgICAgdGhlIG1pbmltdW0gdmFsdWUgY2Fubm90IGJlIHNtYWxsZXIgdGhhbiAwLiAgVGhlIHZhbHVlIG9mCiAgICAgIGEgZ2F1Z2UzMiBoYXMgaXRzIG1heGltdW0gdmFsdWUgd2hlbmV2ZXIgdGhlIGluZm9ybWF0aW9uCiAgICAgIGJlaW5nIG1vZGVsZWQgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIGl0cyBtYXhpbXVtCiAgICAgIHZhbHVlLCBhbmQgaGFzIGl0cyBtaW5pbXVtIHZhbHVlIHdoZW5ldmVyIHRoZSBpbmZvcm1hdGlvbgogICAgICBiZWluZyBtb2RlbGVkIGlzIHNtYWxsZXIgdGhhbiBvciBlcXVhbCB0byBpdHMgbWluaW11bSB2YWx1ZS4KICAgICAgSWYgdGhlIGluZm9ybWF0aW9uIGJlaW5nIG1vZGVsZWQgc3Vic2VxdWVudGx5IGRlY3JlYXNlcwogICAgICBiZWxvdyAoaW5jcmVhc2VzIGFib3ZlKSB0aGUgbWF4aW11bSAobWluaW11bSkgdmFsdWUsIHRoZQogICAgICBnYXVnZTMyIGFsc28gZGVjcmVhc2VzIChpbmNyZWFzZXMpLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIEdhdWdlMzIgdHlwZSBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMjU3ODogU3RydWN0dXJlIG9mIE1hbmFnZW1lbnQgSW5mb3JtYXRpb24gVmVyc2lvbiAyCiAgICAgICAgICAgICAgICAoU01JdjIpIjsKICB9CgogIHR5cGVkZWYgZ2F1Z2U2NCB7CiAgICB0eXBlIHVpbnQ2NDsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSBnYXVnZTY0IHR5cGUgcmVwcmVzZW50cyBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyLCB3aGljaAogICAgICBtYXkgaW5jcmVhc2Ugb3IgZGVjcmVhc2UsIGJ1dCBzaGFsbCBuZXZlciBleGNlZWQgYSBtYXhpbXVtCiAgICAgIHZhbHVlLCBub3IgZmFsbCBiZWxvdyBhIG1pbmltdW0gdmFsdWUuICBUaGUgbWF4aW11bSB2YWx1ZQogICAgICBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIDJeNjQtMSAoMTg0NDY3NDQwNzM3MDk1NTE2MTUpLCBhbmQKICAgICAgdGhlIG1pbmltdW0gdmFsdWUgY2Fubm90IGJlIHNtYWxsZXIgdGhhbiAwLiAgVGhlIHZhbHVlIG9mCiAgICAgIGEgZ2F1Z2U2NCBoYXMgaXRzIG1heGltdW0gdmFsdWUgd2hlbmV2ZXIgdGhlIGluZm9ybWF0aW9uCiAgICAgIGJlaW5nIG1vZGVsZWQgaXMgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIGl0cyBtYXhpbXVtCiAgICAgIHZhbHVlLCBhbmQgaGFzIGl0cyBtaW5pbXVtIHZhbHVlIHdoZW5ldmVyIHRoZSBpbmZvcm1hdGlvbgogICAgICBiZWluZyBtb2RlbGVkIGlzIHNtYWxsZXIgdGhhbiBvciBlcXVhbCB0byBpdHMgbWluaW11bSB2YWx1ZS4KICAgICAgSWYgdGhlIGluZm9ybWF0aW9uIGJlaW5nIG1vZGVsZWQgc3Vic2VxdWVudGx5IGRlY3JlYXNlcwogICAgICBiZWxvdyAoaW5jcmVhc2VzIGFib3ZlKSB0aGUgbWF4aW11bSAobWluaW11bSkgdmFsdWUsIHRoZQogICAgICBnYXVnZTY0IGFsc28gZGVjcmVhc2VzIChpbmNyZWFzZXMpLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIENvdW50ZXJCYXNlZEdhdWdlNjQgU01JdjIgdGV4dHVhbCBjb252ZW50aW9uIGRlZmluZWQKICAgICAgaW4gUkZDIDI4NTYiOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyODU2OiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBBZGRpdGlvbmFsIEhpZ2ggQ2FwYWNpdHkKICAgICAgICAgICAgICAgIERhdGEgVHlwZXMiOwogIH0KCiAgLyoqKiBjb2xsZWN0aW9uIG9mIGlkZW50aWZpZXItcmVsYXRlZCB0eXBlcyAqKiovCgogIHR5cGVkZWYgb2JqZWN0LWlkZW50aWZpZXIgewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuICcoKFswLTFdKFwuWzEtM10/WzAtOV0pKXwoMlwuKDB8KFsxLTldXGQqKSkpKScKICAgICAgICAgICAgKyAnKFwuKDB8KFsxLTldXGQqKSkpKic7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgb2JqZWN0LWlkZW50aWZpZXIgdHlwZSByZXByZXNlbnRzIGFkbWluaXN0cmF0aXZlbHkKICAgICAgYXNzaWduZWQgbmFtZXMgaW4gYSByZWdpc3RyYXRpb24taGllcmFyY2hpY2FsLW5hbWUgdHJlZS4KCiAgICAgIFZhbHVlcyBvZiB0aGlzIHR5cGUgYXJlIGRlbm90ZWQgYXMgYSBzZXF1ZW5jZSBvZiBudW1lcmljYWwKICAgICAgbm9uLW5lZ2F0aXZlIHN1Yi1pZGVudGlmaWVyIHZhbHVlcy4gIEVhY2ggc3ViLWlkZW50aWZpZXIKICAgICAgdmFsdWUgTVVTVCBOT1QgZXhjZWVkIDJeMzItMSAoNDI5NDk2NzI5NSkuICBTdWItaWRlbnRpZmllcnMKICAgICAgYXJlIHNlcGFyYXRlZCBieSBzaW5nbGUgZG90cyBhbmQgd2l0aG91dCBhbnkgaW50ZXJtZWRpYXRlCiAgICAgIHdoaXRlc3BhY2UuCgogICAgICBUaGUgQVNOLjEgc3RhbmRhcmQgcmVzdHJpY3RzIHRoZSB2YWx1ZSBzcGFjZSBvZiB0aGUgZmlyc3QKICAgICAgc3ViLWlkZW50aWZpZXIgdG8gMCwgMSwgb3IgMi4gIEZ1cnRoZXJtb3JlLCB0aGUgdmFsdWUgc3BhY2UKICAgICAgb2YgdGhlIHNlY29uZCBzdWItaWRlbnRpZmllciBpcyByZXN0cmljdGVkIHRvIHRoZSByYW5nZQogICAgICAwIHRvIDM5IGlmIHRoZSBmaXJzdCBzdWItaWRlbnRpZmllciBpcyAwIG9yIDEuICBGaW5hbGx5LAogICAgICB0aGUgQVNOLjEgc3RhbmRhcmQgcmVxdWlyZXMgdGhhdCBhbiBvYmplY3QgaWRlbnRpZmllcgogICAgICBoYXMgYWx3YXlzIGF0IGxlYXN0IHR3byBzdWItaWRlbnRpZmllcnMuICBUaGUgcGF0dGVybgogICAgICBjYXB0dXJlcyB0aGVzZSByZXN0cmljdGlvbnMuCgogICAgICBBbHRob3VnaCB0aGUgbnVtYmVyIG9mIHN1Yi1pZGVudGlmaWVycyBpcyBub3QgbGltaXRlZCwKICAgICAgbW9kdWxlIGRlc2lnbmVycyBzaG91bGQgcmVhbGl6ZSB0aGF0IHRoZXJlIG1heSBiZQogICAgICBpbXBsZW1lbnRhdGlvbnMgdGhhdCBzdGljayB3aXRoIHRoZSBTTUl2MiBsaW1pdCBvZiAxMjgKICAgICAgc3ViLWlkZW50aWZpZXJzLgoKICAgICAgVGhpcyB0eXBlIGlzIGEgc3VwZXJzZXQgb2YgdGhlIFNNSXYyIE9CSkVDVCBJREVOVElGSUVSIHR5cGUKICAgICAgc2luY2UgaXQgaXMgbm90IHJlc3RyaWN0ZWQgdG8gMTI4IHN1Yi1pZGVudGlmaWVycy4gIEhlbmNlLAogICAgICB0aGlzIHR5cGUgU0hPVUxEIE5PVCBiZSB1c2VkIHRvIHJlcHJlc2VudCB0aGUgU01JdjIgT0JKRUNUCiAgICAgIElERU5USUZJRVIgdHlwZTsgdGhlIG9iamVjdC1pZGVudGlmaWVyLTEyOCB0eXBlIFNIT1VMRCBiZQogICAgICB1c2VkIGluc3RlYWQuIjsKICAgIHJlZmVyZW5jZQogICAgICJJU085ODM0LTE6IEluZm9ybWF0aW9uIHRlY2hub2xvZ3kgLS0gT3BlbiBTeXN0ZW1zCiAgICAgIEludGVyY29ubmVjdGlvbiAtLSBQcm9jZWR1cmVzIGZvciB0aGUgb3BlcmF0aW9uIG9mIE9TSQogICAgICBSZWdpc3RyYXRpb24gQXV0aG9yaXRpZXM6IEdlbmVyYWwgcHJvY2VkdXJlcyBhbmQgdG9wCiAgICAgIGFyY3Mgb2YgdGhlIEFTTi4xIE9iamVjdCBJZGVudGlmaWVyIHRyZWUiOwogIH0KCiAgdHlwZWRlZiBvYmplY3QtaWRlbnRpZmllci0xMjggewogICAgdHlwZSBvYmplY3QtaWRlbnRpZmllciB7CiAgICAgIHBhdHRlcm4gJ1xkKihcLlxkKil7MSwxMjd9JzsKICAgIH0KICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoaXMgdHlwZSByZXByZXNlbnRzIG9iamVjdC1pZGVudGlmaWVycyByZXN0cmljdGVkIHRvIDEyOAogICAgICBzdWItaWRlbnRpZmllcnMuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgT0JKRUNUIElERU5USUZJRVIgdHlwZSBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMjU3ODogU3RydWN0dXJlIG9mIE1hbmFnZW1lbnQgSW5mb3JtYXRpb24gVmVyc2lvbiAyCiAgICAgICAgICAgICAgICAoU01JdjIpIjsKICB9CgogIHR5cGVkZWYgeWFuZy1pZGVudGlmaWVyIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgbGVuZ3RoICIxLi5tYXgiOwogICAgICBwYXR0ZXJuICdbYS16QS1aX11bYS16QS1aMC05XC1fLl0qJzsKICAgICAgcGF0dGVybiAnLnwuLnxbXnhYXS4qfC5bXm1NXS4qfC4uW15sTF0uKic7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICAiQSBZQU5HIGlkZW50aWZpZXIgc3RyaW5nIGFzIGRlZmluZWQgYnkgdGhlICdpZGVudGlmaWVyJwogICAgICAgcnVsZSBpbiBTZWN0aW9uIDEyIG9mIFJGQyA2MDIwLiAgQW4gaWRlbnRpZmllciBtdXN0CiAgICAgICBzdGFydCB3aXRoIGFuIGFscGhhYmV0aWMgY2hhcmFjdGVyIG9yIGFuIHVuZGVyc2NvcmUKICAgICAgIGZvbGxvd2VkIGJ5IGFuIGFyYml0cmFyeSBzZXF1ZW5jZSBvZiBhbHBoYWJldGljIG9yCiAgICAgICBudW1lcmljIGNoYXJhY3RlcnMsIHVuZGVyc2NvcmVzLCBoeXBoZW5zLCBvciBkb3RzLgoKICAgICAgIEEgWUFORyBpZGVudGlmaWVyIE1VU1QgTk9UIHN0YXJ0IHdpdGggYW55IHBvc3NpYmxlCiAgICAgICBjb21iaW5hdGlvbiBvZiB0aGUgbG93ZXJjYXNlIG9yIHVwcGVyY2FzZSBjaGFyYWN0ZXIKICAgICAgIHNlcXVlbmNlICd4bWwnLiI7CiAgICByZWZlcmVuY2UKICAgICAgIlJGQyA2MDIwOiBZQU5HIC0gQSBEYXRhIE1vZGVsaW5nIExhbmd1YWdlIGZvciB0aGUgTmV0d29yawogICAgICAgICAgICAgICAgIENvbmZpZ3VyYXRpb24gUHJvdG9jb2wgKE5FVENPTkYpIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiB0eXBlcyByZWxhdGVkIHRvIGRhdGUgYW5kIHRpbWUqKiovCgogIHR5cGVkZWYgZGF0ZS1hbmQtdGltZSB7CiAgICB0eXBlIHN0cmluZyB7CiAgICAgIHBhdHRlcm4gJ1xkezR9LVxkezJ9LVxkezJ9VFxkezJ9OlxkezJ9OlxkezJ9KFwuXGQrKT8nCiAgICAgICAgICAgICsgJyhafFtcK1wtXVxkezJ9OlxkezJ9KSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgZGF0ZS1hbmQtdGltZSB0eXBlIGlzIGEgcHJvZmlsZSBvZiB0aGUgSVNPIDg2MDEKICAgICAgc3RhbmRhcmQgZm9yIHJlcHJlc2VudGF0aW9uIG9mIGRhdGVzIGFuZCB0aW1lcyB1c2luZyB0aGUKICAgICAgR3JlZ29yaWFuIGNhbGVuZGFyLiAgVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBieSB0aGUKICAgICAgZGF0ZS10aW1lIHByb2R1Y3Rpb24gaW4gU2VjdGlvbiA1LjYgb2YgUkZDIDMzMzkuCgogICAgICBUaGUgZGF0ZS1hbmQtdGltZSB0eXBlIGlzIGNvbXBhdGlibGUgd2l0aCB0aGUgZGF0ZVRpbWUgWE1MCiAgICAgIHNjaGVtYSB0eXBlIHdpdGggdGhlIGZvbGxvd2luZyBub3RhYmxlIGV4Y2VwdGlvbnM6CgogICAgICAoYSkgVGhlIGRhdGUtYW5kLXRpbWUgdHlwZSBkb2VzIG5vdCBhbGxvdyBuZWdhdGl2ZSB5ZWFycy4KCiAgICAgIChiKSBUaGUgZGF0ZS1hbmQtdGltZSB0aW1lLW9mZnNldCAtMDA6MDAgaW5kaWNhdGVzIGFuIHVua25vd24KICAgICAgICAgIHRpbWUgem9uZSAoc2VlIFJGQyAzMzM5KSB3aGlsZSAtMDA6MDAgYW5kICswMDowMCBhbmQgWgogICAgICAgICAgYWxsIHJlcHJlc2VudCB0aGUgc2FtZSB0aW1lIHpvbmUgaW4gZGF0ZVRpbWUuCgogICAgICAoYykgVGhlIGNhbm9uaWNhbCBmb3JtYXQgKHNlZSBiZWxvdykgb2YgZGF0YS1hbmQtdGltZSB2YWx1ZXMKICAgICAgICAgIGRpZmZlcnMgZnJvbSB0aGUgY2Fub25pY2FsIGZvcm1hdCB1c2VkIGJ5IHRoZSBkYXRlVGltZSBYTUwKICAgICAgICAgIHNjaGVtYSB0eXBlLCB3aGljaCByZXF1aXJlcyBhbGwgdGltZXMgdG8gYmUgaW4gVVRDIHVzaW5nCiAgICAgICAgICB0aGUgdGltZS1vZmZzZXQgJ1onLgoKICAgICAgVGhpcyB0eXBlIGlzIG5vdCBlcXVpdmFsZW50IHRvIHRoZSBEYXRlQW5kVGltZSB0ZXh0dWFsCiAgICAgIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyIHNpbmNlIFJGQyAzMzM5IHVzZXMgYSBkaWZmZXJlbnQKICAgICAgc2VwYXJhdG9yIGJldHdlZW4gZnVsbC1kYXRlIGFuZCBmdWxsLXRpbWUgYW5kIHByb3ZpZGVzCiAgICAgIGhpZ2hlciByZXNvbHV0aW9uIG9mIHRpbWUtc2VjZnJhYy4KCiAgICAgIFRoZSBjYW5vbmljYWwgZm9ybWF0IGZvciBkYXRlLWFuZC10aW1lIHZhbHVlcyB3aXRoIGEga25vd24gdGltZQogICAgICB6b25lIHVzZXMgYSBudW1lcmljIHRpbWUgem9uZSBvZmZzZXQgdGhhdCBpcyBjYWxjdWxhdGVkIHVzaW5nCiAgICAgIHRoZSBkZXZpY2UncyBjb25maWd1cmVkIGtub3duIG9mZnNldCB0byBVVEMgdGltZS4gIEEgY2hhbmdlIG9mCiAgICAgIHRoZSBkZXZpY2UncyBvZmZzZXQgdG8gVVRDIHRpbWUgd2lsbCBjYXVzZSBkYXRlLWFuZC10aW1lIHZhbHVlcwogICAgICB0byBjaGFuZ2UgYWNjb3JkaW5nbHkuICBTdWNoIGNoYW5nZXMgbWlnaHQgaGFwcGVuIHBlcmlvZGljYWxseQogICAgICBpbiBjYXNlIGEgc2VydmVyIGZvbGxvd3MgYXV0b21hdGljYWxseSBkYXlsaWdodCBzYXZpbmcgdGltZQogICAgICAoRFNUKSB0aW1lIHpvbmUgb2Zmc2V0IGNoYW5nZXMuICBUaGUgY2Fub25pY2FsIGZvcm1hdCBmb3IKICAgICAgZGF0ZS1hbmQtdGltZSB2YWx1ZXMgd2l0aCBhbiB1bmtub3duIHRpbWUgem9uZSAodXN1YWxseQogICAgICByZWZlcnJpbmcgdG8gdGhlIG5vdGlvbiBvZiBsb2NhbCB0aW1lKSB1c2VzIHRoZSB0aW1lLW9mZnNldAogICAgICAtMDA6MDAuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMzMzOTogRGF0ZSBhbmQgVGltZSBvbiB0aGUgSW50ZXJuZXQ6IFRpbWVzdGFtcHMKICAgICAgUkZDIDI1Nzk6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIFNNSXYyCiAgICAgIFhTRC1UWVBFUzogWE1MIFNjaGVtYSBQYXJ0IDI6IERhdGF0eXBlcyBTZWNvbmQgRWRpdGlvbiI7CiAgfQoKICB0eXBlZGVmIHRpbWV0aWNrcyB7CiAgICB0eXBlIHVpbnQzMjsKICAgIGRlc2NyaXB0aW9uCiAgICAgIlRoZSB0aW1ldGlja3MgdHlwZSByZXByZXNlbnRzIGEgbm9uLW5lZ2F0aXZlIGludGVnZXIgdGhhdAogICAgICByZXByZXNlbnRzIHRoZSB0aW1lLCBtb2R1bG8gMl4zMiAoNDI5NDk2NzI5NiBkZWNpbWFsKSwgaW4KICAgICAgaHVuZHJlZHRocyBvZiBhIHNlY29uZCBiZXR3ZWVuIHR3byBlcG9jaHMuICBXaGVuIGEgc2NoZW1hCiAgICAgIG5vZGUgaXMgZGVmaW5lZCB0aGF0IHVzZXMgdGhpcyB0eXBlLCB0aGUgZGVzY3JpcHRpb24gb2YKICAgICAgdGhlIHNjaGVtYSBub2RlIGlkZW50aWZpZXMgYm90aCBvZiB0aGUgcmVmZXJlbmNlIGVwb2Nocy4KCiAgICAgIEluIHRoZSB2YWx1ZSBzZXQgYW5kIGl0cyBzZW1hbnRpY3MsIHRoaXMgdHlwZSBpcyBlcXVpdmFsZW50CiAgICAgIHRvIHRoZSBUaW1lVGlja3MgdHlwZSBvZiB0aGUgU01JdjIuIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgMjU3ODogU3RydWN0dXJlIG9mIE1hbmFnZW1lbnQgSW5mb3JtYXRpb24gVmVyc2lvbiAyCiAgICAgICAgICAgICAgICAoU01JdjIpIjsKICB9CgogIHR5cGVkZWYgdGltZXN0YW1wIHsKICAgIHR5cGUgeWFuZzp0aW1ldGlja3M7CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgdGltZXN0YW1wIHR5cGUgcmVwcmVzZW50cyB0aGUgdmFsdWUgb2YgYW4gYXNzb2NpYXRlZAogICAgICB0aW1ldGlja3Mgc2NoZW1hIG5vZGUgYXQgd2hpY2ggYSBzcGVjaWZpYyBvY2N1cnJlbmNlCiAgICAgIGhhcHBlbmVkLiAgVGhlIHNwZWNpZmljIG9jY3VycmVuY2UgbXVzdCBiZSBkZWZpbmVkIGluIHRoZQogICAgICBkZXNjcmlwdGlvbiBvZiBhbnkgc2NoZW1hIG5vZGUgZGVmaW5lZCB1c2luZyB0aGlzIHR5cGUuICBXaGVuCiAgICAgIHRoZSBzcGVjaWZpYyBvY2N1cnJlbmNlIG9jY3VycmVkIHByaW9yIHRvIHRoZSBsYXN0IHRpbWUgdGhlCiAgICAgIGFzc29jaWF0ZWQgdGltZXRpY2tzIGF0dHJpYnV0ZSB3YXMgemVybywgdGhlbiB0aGUgdGltZXN0YW1wCiAgICAgIHZhbHVlIGlzIHplcm8uICBOb3RlIHRoYXQgdGhpcyByZXF1aXJlcyBhbGwgdGltZXN0YW1wIHZhbHVlcwogICAgICB0byBiZSByZXNldCB0byB6ZXJvIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSBhc3NvY2lhdGVkIHRpbWV0aWNrcwogICAgICBhdHRyaWJ1dGUgcmVhY2hlcyA0OTcrIGRheXMgYW5kIHdyYXBzIGFyb3VuZCB0byB6ZXJvLgoKICAgICAgVGhlIGFzc29jaWF0ZWQgdGltZXRpY2tzIHNjaGVtYSBub2RlIG11c3QgYmUgc3BlY2lmaWVkCiAgICAgIGluIHRoZSBkZXNjcmlwdGlvbiBvZiBhbnkgc2NoZW1hIG5vZGUgdXNpbmcgdGhpcyB0eXBlLgoKICAgICAgSW4gdGhlIHZhbHVlIHNldCBhbmQgaXRzIHNlbWFudGljcywgdGhpcyB0eXBlIGlzIGVxdWl2YWxlbnQKICAgICAgdG8gdGhlIFRpbWVTdGFtcCB0ZXh0dWFsIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiUkZDIDI1Nzk6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIFNNSXYyIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiBnZW5lcmljIGFkZHJlc3MgdHlwZXMgKioqLwoKICB0eXBlZGVmIHBoeXMtYWRkcmVzcyB7CiAgICB0eXBlIHN0cmluZyB7CiAgICAgIHBhdHRlcm4gJyhbMC05YS1mQS1GXXsyfSg6WzAtOWEtZkEtRl17Mn0pKik/JzsKICAgIH0KCiAgICBkZXNjcmlwdGlvbgogICAgICJSZXByZXNlbnRzIG1lZGlhLSBvciBwaHlzaWNhbC1sZXZlbCBhZGRyZXNzZXMgcmVwcmVzZW50ZWQKICAgICAgYXMgYSBzZXF1ZW5jZSBvY3RldHMsIGVhY2ggb2N0ZXQgcmVwcmVzZW50ZWQgYnkgdHdvIGhleGFkZWNpbWFsCiAgICAgIG51bWJlcnMuICBPY3RldHMgYXJlIHNlcGFyYXRlZCBieSBjb2xvbnMuICBUaGUgY2Fub25pY2FsCiAgICAgIHJlcHJlc2VudGF0aW9uIHVzZXMgbG93ZXJjYXNlIGNoYXJhY3RlcnMuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgUGh5c0FkZHJlc3MgdGV4dHVhbCBjb252ZW50aW9uIG9mIHRoZSBTTUl2Mi4iOwogICAgcmVmZXJlbmNlCiAgICAgIlJGQyAyNTc5OiBUZXh0dWFsIENvbnZlbnRpb25zIGZvciBTTUl2MiI7CiAgfQoKICB0eXBlZGVmIG1hYy1hZGRyZXNzIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnWzAtOWEtZkEtRl17Mn0oOlswLTlhLWZBLUZdezJ9KXs1fSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJUaGUgbWFjLWFkZHJlc3MgdHlwZSByZXByZXNlbnRzIGFuIElFRUUgODAyIE1BQyBhZGRyZXNzLgogICAgICBUaGUgY2Fub25pY2FsIHJlcHJlc2VudGF0aW9uIHVzZXMgbG93ZXJjYXNlIGNoYXJhY3RlcnMuCgogICAgICBJbiB0aGUgdmFsdWUgc2V0IGFuZCBpdHMgc2VtYW50aWNzLCB0aGlzIHR5cGUgaXMgZXF1aXZhbGVudAogICAgICB0byB0aGUgTWFjQWRkcmVzcyB0ZXh0dWFsIGNvbnZlbnRpb24gb2YgdGhlIFNNSXYyLiI7CiAgICByZWZlcmVuY2UKICAgICAiSUVFRSA4MDI6IElFRUUgU3RhbmRhcmQgZm9yIExvY2FsIGFuZCBNZXRyb3BvbGl0YW4gQXJlYQogICAgICAgICAgICAgICAgTmV0d29ya3M6IE92ZXJ2aWV3IGFuZCBBcmNoaXRlY3R1cmUKICAgICAgUkZDIDI1Nzk6IFRleHR1YWwgQ29udmVudGlvbnMgZm9yIFNNSXYyIjsKICB9CgogIC8qKiogY29sbGVjdGlvbiBvZiBYTUwtc3BlY2lmaWMgdHlwZXMgKioqLwoKICB0eXBlZGVmIHhwYXRoMS4wIHsKICAgIHR5cGUgc3RyaW5nOwogICAgZGVzY3JpcHRpb24KICAgICAiVGhpcyB0eXBlIHJlcHJlc2VudHMgYW4gWFBBVEggMS4wIGV4cHJlc3Npb24uCgogICAgICBXaGVuIGEgc2NoZW1hIG5vZGUgaXMgZGVmaW5lZCB0aGF0IHVzZXMgdGhpcyB0eXBlLCB0aGUKICAgICAgZGVzY3JpcHRpb24gb2YgdGhlIHNjaGVtYSBub2RlIE1VU1Qgc3BlY2lmeSB0aGUgWFBhdGgKICAgICAgY29udGV4dCBpbiB3aGljaCB0aGUgWFBhdGggZXhwcmVzc2lvbiBpcyBldmFsdWF0ZWQuIjsKICAgIHJlZmVyZW5jZQogICAgICJYUEFUSDogWE1MIFBhdGggTGFuZ3VhZ2UgKFhQYXRoKSBWZXJzaW9uIDEuMCI7CiAgfQoKICAvKioqIGNvbGxlY3Rpb24gb2Ygc3RyaW5nIHR5cGVzICoqKi8KCiAgdHlwZWRlZiBoZXgtc3RyaW5nIHsKICAgIHR5cGUgc3RyaW5nIHsKICAgICAgcGF0dGVybiAnKFswLTlhLWZBLUZdezJ9KDpbMC05YS1mQS1GXXsyfSkqKT8nOwogICAgfQogICAgZGVzY3JpcHRpb24KICAgICAiQSBoZXhhZGVjaW1hbCBzdHJpbmcgd2l0aCBvY3RldHMgcmVwcmVzZW50ZWQgYXMgaGV4IGRpZ2l0cwogICAgICBzZXBhcmF0ZWQgYnkgY29sb25zLiAgVGhlIGNhbm9uaWNhbCByZXByZXNlbnRhdGlvbiB1c2VzCiAgICAgIGxvd2VyY2FzZSBjaGFyYWN0ZXJzLiI7CiAgfQoKICB0eXBlZGVmIHV1aWQgewogICAgdHlwZSBzdHJpbmcgewogICAgICBwYXR0ZXJuICdbMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS0nCiAgICAgICAgICAgICsgJ1swLTlhLWZBLUZdezR9LVswLTlhLWZBLUZdezEyfSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICJBIFVuaXZlcnNhbGx5IFVuaXF1ZSBJRGVudGlmaWVyIGluIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24KICAgICAgZGVmaW5lZCBpbiBSRkMgNDEyMi4gIFRoZSBjYW5vbmljYWwgcmVwcmVzZW50YXRpb24gdXNlcwogICAgICBsb3dlcmNhc2UgY2hhcmFjdGVycy4KCiAgICAgIFRoZSBmb2xsb3dpbmcgaXMgYW4gZXhhbXBsZSBvZiBhIFVVSUQgaW4gc3RyaW5nIHJlcHJlc2VudGF0aW9uOgogICAgICBmODFkNGZhZS03ZGVjLTExZDAtYTc2NS0wMGEwYzkxZTZiZjYKICAgICAgIjsKICAgIHJlZmVyZW5jZQogICAgICJSRkMgNDEyMjogQSBVbml2ZXJzYWxseSBVbmlxdWUgSURlbnRpZmllciAoVVVJRCkgVVJOCiAgICAgICAgICAgICAgICBOYW1lc3BhY2UiOwogIH0KCiAgdHlwZWRlZiBkb3R0ZWQtcXVhZCB7CiAgICB0eXBlIHN0cmluZyB7CiAgICAgIHBhdHRlcm4KICAgICAgICAnKChbMC05XXxbMS05XVswLTldfDFbMC05XVswLTldfDJbMC00XVswLTldfDI1WzAtNV0pXC4pezN9JwogICAgICArICcoWzAtOV18WzEtOV1bMC05XXwxWzAtOV1bMC05XXwyWzAtNF1bMC05XXwyNVswLTVdKSc7CiAgICB9CiAgICBkZXNjcmlwdGlvbgogICAgICAiQW4gdW5zaWduZWQgMzItYml0IG51bWJlciBleHByZXNzZWQgaW4gdGhlIGRvdHRlZC1xdWFkCiAgICAgICBub3RhdGlvbiwgaS5lLiwgZm91ciBvY3RldHMgd3JpdHRlbiBhcyBkZWNpbWFsIG51bWJlcnMKICAgICAgIGFuZCBzZXBhcmF0ZWQgd2l0aCB0aGUgJy4nIChmdWxsIHN0b3ApIGNoYXJhY3Rlci4iOwogIH0KfQo=
-o-ran-smo-teiv-cloud urn:o-ran:smo-teiv-cloud CLOUD [] 2024-07-15 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWNsb3VkIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1jbG91ZCI7CiAgICBwcmVmaXggb3ItdGVpdi1jbG91ZDsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgaWV0Zi1nZW8tbG9jYXRpb24gewogICAgICAgIHByZWZpeCBnZW87CiAgICAgICAgcmVmZXJlbmNlICJSRkMgOTE3OTogQSBZQU5HIEdyb3VwaW5nIGZvciBHZW9ncmFwaGljIExvY2F0aW9ucyI7CiAgICB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBDbG91ZCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgdG9wb2xvZ3kgZW50aXRpZXMgYW5kIHJlbGF0aW9ucyBpbiB0aGUKICAgICAgICBSQU4gQ0xPVUQgZG9tYWluLCB3aGljaCBjb21wcmlzZXMgY2xvdWQgaW5mcmFzdHJ1Y3R1cmUgYW5kCiAgICAgICAgZGVwbG95bWVudCBhc3BlY3RzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIHRvcG9sb2d5IG1vZGVsLgoKICAgICAgICBDb3B5cmlnaHQgKEMpIDIwMjQgRXJpY3Nzb24KICAgICAgICBNb2RpZmljYXRpb25zIENvcHlyaWdodCAoQykgMjAyNCBPcGVuSW5mcmEgRm91bmRhdGlvbiBFdXJvcGUKCiAgICAgICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgICAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiAgICAgICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CgogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgICAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAgICAgICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLAogICAgICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAgICAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KCiAgICAgICAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAiOwoKICAgIHJldmlzaW9uICIyMDI0LTA1LTAyIiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkluaXRpYWwgcmV2aXNpb24uIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDctMTUiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhpcyByZXZpc2lvbiBhbGlnbnMgTy1SQU4gV29yayBHcm91cCAxMCBTdGFnZSAyIFNwZWNpZmljYXRpb24gKE8tUkFOLldHMTAuVEUmSVYtQ0lNSS4wLVIwMDQudjAyLjAwKSI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIG9yLXRlaXYteWV4dDpkb21haW4gQ0xPVUQ7CgogICAgbGlzdCBDbG91ZGlmaWVkTkYgewogICAgICAgIGRlc2NyaXB0aW9uICJBIFJBTiBOZXR3b3JrIEZ1bmN0aW9uIHNvZnR3YXJlIHRoYXQgaXMgZGVwbG95ZWQgaW4gdGhlIE8tQ2xvdWQgdmlhIG9uZSBvciBtb3JlIE5GIERlcGxveW1lbnRzLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBDbG91ZGlmaWVkIE5GIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgTkZEZXBsb3ltZW50IHsKICAgICAgICBkZXNjcmlwdGlvbiAiQSBzb2Z0d2FyZSBkZXBsb3ltZW50IG9uIE8tQ2xvdWQgcmVzb3VyY2VzIHRoYXQgcmVhbGl6ZXMsIGFsbCBvciBwYXJ0IG9mLCBhIENsb3VkaWZpZWQgTkYuIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGNvbnRhaW5lciBhdHRyaWJ1dGVzIHsKICAgICAgICAgICAgbGVhZiBuYW1lIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOYW1lIG9mIE5GIERlcGxveW1lbnQiOwogICAgICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBPQ2xvdWROYW1lc3BhY2UgewogICAgICAgIGRlc2NyaXB0aW9uICJPQ2xvdWROYW1lc3BhY2UgcHJvdmlkZSBhIG1lY2hhbmlzbSBmb3IgaXNvbGF0aW5nCiAgICAgICAgZ3JvdXBzIG9mIHJlc291cmNlcyB3aXRoaW4gYSBzaW5nbGUgY2x1c3Rlci4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIG5hbWUgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5hbWUgb2YgQ2xvdWQgTmFtZXNwYWNlIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgTm9kZUNsdXN0ZXIgewogICAgICAgIGRlc2NyaXB0aW9uICJBIE5vZGVDbHVzdGVyIG1hbmFnZXMgYSBjb2xsZWN0aW9uIG9mIE5vZGVzLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBOb2RlIENsdXN0ZXIiOwogICAgICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBPQ2xvdWRTaXRlIHsKICAgICAgICBkZXNjcmlwdGlvbiAiUmVwcmVzZW50cyB0aGUgaW5mcmFzdHJ1Y3R1cmUgdGhhdAogICAgICAgIGhvc3RzIHRoZSBORiBEZXBsb3ltZW50LiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBDbG91ZCBTaXRlIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CgogICAgICAgICAgICB1c2VzIGdlbzpnZW8tbG9jYXRpb247CiAgICAgICAgfQogICAgfQoKCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIENMT1VESUZJRURORl9DT01QUklTRVNfTkZERVBMT1lNRU5UIHsgLy8gMSB0byAxLi5uCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgY29tcHJpc2VkLW5GRGVwbG95bWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJDbG91ZGlmaWVkIE5GIGNvbXByaXNlcyBvZiB0aGVzZSBORiBEZXBsb3ltZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBDbG91ZGlmaWVkTkY7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQoKICAgICAgICBsZWFmIGNvbXByaXNlZC1ieS1jbG91ZGlmaWVkTkYgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCBwYXJ0IG9mIENsb3VkaWZpZWQgTkYuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBORkRFUExPWU1FTlRfREVQTE9ZRURfT05fT0NMT1VETkFNRVNQQUNFIHsgLy8gMS4ubiB0byAxLi5uCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgZGVwbG95ZWQtb24tb2Nsb3VkTmFtZXNwYWNlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5GIERlcGxveW1lbnQgZGVwbG95ZWQgb24gTy1DbG91ZCBOYW1lc3BhY2UuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIE5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBkZXBsb3llZC1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiT0Nsb3VkIE5hbWVzcGFjZSBkZXBsb3lzIE5GIERlcGxveW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE9DbG91ZE5hbWVzcGFjZTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBPQ0xPVUROQU1FU1BBQ0VfREVQTE9ZRURfT05fTk9ERUNMVVNURVIgeyAvLyAxLi5uIHRvIDEKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYgZGVwbG95ZWQtb24tbm9kZUNsdXN0ZXIgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DbG91ZCBOYW1lc3BhY2UgZGVwbG95ZWQgb24gTm9kZSBDbHVzdGVyLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBPQ2xvdWROYW1lc3BhY2U7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3QgZGVwbG95ZWQtb2Nsb3VkTmFtZXNwYWNlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5vZGUgQ2x1c3RlciBkZXBsb3lzIE8tQ2xvdWQgTmFtZXNwYWNlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBOb2RlQ2x1c3RlcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBOT0RFQ0xVU1RFUl9MT0NBVEVEX0FUX09DTE9VRFNJVEUgeyAvLyAxLi5uIHRvIDEuLm4KCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBsb2NhdGVkLWF0LW9jbG91ZFNpdGUgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTm9kZSBDbHVzdGVyIGxvY2F0ZWQgYXQgTy1DbG91ZCBTaXRlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBOb2RlQ2x1c3RlcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBsb2NhdGlvbi1vZi1vbm9kZUNsdXN0ZXIgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DbG91ZCBTaXRlIGlzIGxvY2F0aW9uIG9mIE5vZGUgQ2x1c3Rlci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgT0Nsb3VkU2l0ZTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtaW4tZWxlbWVudHMgMTsKICAgICAgICB9CiAgICB9Cn0=
-o-ran-smo-teiv-common-yang-extensions urn:o-ran:smo-teiv-common-yang-extensions \N [] 2024-05-24 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMgewoKICB5YW5nLXZlcnNpb24gMS4xOwogIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMiOwogIHByZWZpeCBvci10ZWl2LXlleHQ7CgogIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgY29udGFjdCAiVGhlIEF1dGhvcnMiOwogIGRlc2NyaXB0aW9uCiAgIlRvcG9sb2d5IGFuZCBJbnZlbnRvcnkgWUFORyBleHRlbnNpb25zIG1vZGVsCgogIFRoaXMgbW9kZWwgY29udGFpbnMgZXh0ZW5zaW9ucyB0byB0aGUgWUFORyBsYW5ndWFnZSB0aGF0IHRvcG9sb2d5IGFuZAogIGludmVudG9yeSBtb2RlbHMgd2lsbCB1c2UgdG8gZGVmaW5lIGFuZCBhbm5vdGF0ZSB0eXBlcyBhbmQgcmVsYXRpb25zaGlwcy4KCiAgQ29weXJpZ2h0IChDKSAyMDI0IEVyaWNzc29uCiAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7CiAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgogIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKCiAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQogIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgogIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wIjsKCiAgICByZXZpc2lvbiAiMjAyNC0wNS0yNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIGV4dGVuc2lvbiBiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgewogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJEZWZpbmVzIGEgYmktZGlyZWN0aW9uYWwgcmVsYXRpb25zaGlwIGluIHRoZSB0b3BvbG9neS4KCiAgICAgICAgICAgIEEgYmktZGlyZWN0aW9uYWwtYXNzb2NpYXRpb24gKEJEQSkgaXMgYSByZWxhdGlvbnNoaXAgY29tcHJpc2luZyBvZgogICAgICAgICAgICBhbiBBLXNpZGUgYW5kIGEgQi1zaWRlLiBUaGUgQS1zaWRlIGlzIGNvbnNpZGVyZWQgdGhlIG9yaWdpbmF0aW5nCiAgICAgICAgICAgIHNpZGUgb2YgdGhlIHJlbGF0aW9uc2hpcDsgdGhlIEItc2lkZSBpcyBjb25zaWRlcmVkIHRoZSB0ZXJtaW5hdGluZwogICAgICAgICAgICBzaWRlIG9mIHRoZSByZWxhdGlvbnNoaXAuIFRoZSBvcmRlciBvZiBBLXNpZGUgYW5kIEItc2lkZSBpcyBvZgogICAgICAgICAgICBpbXBvcnRhbmNlIGFuZCBNVVNUIE5PVCBiZSBjaGFuZ2VkIG9uY2UgZGVmaW5lZC4KCiAgICAgICAgICAgIEJvdGggQS1zaWRlIGFuZCBCLXNpZGUgYXJlIGRlZmluZWQgb24gYSB0eXBlLCBhbmQgYXJlIGdpdmVuIGEgcm9sZS4KICAgICAgICAgICAgQSB0eXBlIG1heSBoYXZlIG11bHRpcGxlIG9yaWdpbmF0aW5nIGFuZC9vciB0ZXJtaW5hdGluZyBzaWRlcyBvZiBhCiAgICAgICAgICAgIHJlbGF0aW9uc2hpcCwgYWxsIGRpc3Rpbmd1aXNoZWQgYnkgcm9sZSBuYW1lLgoKICAgICAgICAgICAgVGhlIHN0YXRlbWVudCBNVVNUIG9ubHkgYmUgYSBzdWJzdGF0ZW1lbnQgb2YgdGhlICdtb2R1bGUnIHN0YXRlbWVudC4KICAgICAgICAgICAgTXVsdGlwbGUgJ2JpLWRpcmVjdGlvbmFsLXRvcG9sb2d5LXJlbGF0aW9uc2hpcCcgc3RhdGVtZW50cyBhcmUKICAgICAgICAgICAgYWxsb3dlZCBwZXIgcGFyZW50IHN0YXRlbWVudC4KCiAgICAgICAgICAgIFN1YnN0YXRlbWVudHMgdG8gdGhlICdiaS1kaXJlY3Rpb25hbC10b3BvbG9neS1yZWxhdGlvbnNoaXAnIGRlZmluZQogICAgICAgICAgICB0aGUgQS1zaWRlIGFuZCB0aGUgQi1zaWRlLCByZXNwZWN0aXZlbHksIGFuZCBvcHRpb25hbGx5IHByb3BlcnRpZXMKICAgICAgICAgICAgb2YgdGhlIHJlbGF0aW9uc2hpcC4gRGF0YSBub2RlcyBvZiB0eXBlcyAnbGVhZicgYW5kICdsZWFmLWxpc3QnIGFyZQogICAgICAgICAgICB1c2VkIGZvciB0aGlzIHB1cnBvc2UuIE9uZSBvZiB0aGUgZGF0YSBub2RlcyBNVVNUIGJlIGFubm90YXRlZCB3aXRoCiAgICAgICAgICAgIHRoZSAnYS1zaWRlJyBleHRlbnNpb247IGFub3RoZXIgZGF0YSBub2RlIE1VU1QgYmUgYW5ub3RhdGVkIHdpdGggdGhlCiAgICAgICAgICAgICdiLXNpZGUnIGV4dGVuc2lvbi4gT3RoZXIgZGF0YSBub2RlcyBkZWZpbmUgcHJvcGVydGllcyBvZiB0aGUKICAgICAgICAgICAgcmVsYXRpb25zaGlwLgoKICAgICAgICAgICAgVGhlIGFyZ3VtZW50IGlzIHRoZSBuYW1lIG9mIHRoZSByZWxhdGlvbnNoaXAuIFRoZSByZWxhdGlvbnNoaXAgbmFtZQogICAgICAgICAgICBpcyBzY29wZWQgdG8gdGhlIG5hbWVzcGFjZSBvZiB0aGUgZGVjbGFyaW5nIG1vZHVsZSBhbmQgTVVTVCBiZQogICAgICAgICAgICB1bmlxdWUgd2l0aGluIHRoZSBzY29wZS4iOwoKICAgICAgICBhcmd1bWVudCByZWxhdGlvbnNoaXBOYW1lOwogICAgfQoKICAgIGV4dGVuc2lvbiBhU2lkZSB7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIkRlZmluZXMgdGhlIEEtc2lkZSBvZiBhIHJlbGF0aW9uc2hpcC4KCiAgICAgICAgICAgIFRoZSBzdGF0ZW1lbnQgTVVTVCBvbmx5IGJlIGEgc3Vic3RhdGVtZW50IG9mIGEgJ2xlYWYnIG9yICdsZWFmLWxpc3QnCiAgICAgICAgICAgIHN0YXRlbWVudCwgd2hpY2ggaXRzZWxmIG11c3QgYmUgYSBzdWJzdGF0ZW1lbnQgb2YgdGhlCiAgICAgICAgICAgICd1bmktZGlyZWN0aW9uYWwtdG9wb2xvZ3ktcmVsYXRpb25zaGlwJyBzdGF0ZW1lbnQuCgogICAgICAgICAgICBUaGUgZGF0YSB0eXBlIG9mIHRoZSBwYXJlbnQgJ2xlYWYnIG9yICdsZWFmLWxpc3QnIE1VU1QgYmUKICAgICAgICAgICAgJ2luc3RhbmNlLWlkZW50aWZpZXInLiBDb25zdHJhaW50cyBNQVkgYmUgdXNlZCBhcyBwYXJ0IG9mIHRoZSBwYXJlbnQKICAgICAgICAgICAgJ2xlYWYnIG9yICdsZWFmLWxpc3QnIHRvIGVuZm9yY2UgY2FyZGluYWxpdHkuCgogICAgICAgICAgICBUaGUgaWRlbnRpZmllciBvZiB0aGUgcGFyZW50ICdsZWFmJyBvciAnbGVhZi1saXN0JyBpcyB1c2VkIGFzIG5hbWUKICAgICAgICAgICAgb2YgdGhlIHJvbGUgb2YgdGhlIEEtc2lkZSBvZiB0aGUgcmVsYXRpb25zaGlwLiBUaGUgbmFtZSBvZiB0aGUgcm9sZQogICAgICAgICAgICBpcyBzY29wZWQgdG8gdGhlIHR5cGUgb24gd2hpY2ggdGhlIEEtc2lkZSBpcyBkZWZpbmVkIGFuZCBNVVNUIGJlCiAgICAgICAgICAgIHVuaXF1ZSB3aXRoaW4gdGhlIHNjb3BlLgoKICAgICAgICAgICAgV2hpbGUgdGhlIHBhcmVudCAnbGVhZicgb3IgJ2xlYWYtbGlzdCcgZG9lcyBub3QgcmVzdWx0IGluIGEgcHJvcGVydHkKICAgICAgICAgICAgb2YgdGhlIHJlbGF0aW9uc2hpcCwgaXQgaXMgUkVDT01NRU5ERUQgdG8gYXZvaWQgdXNpbmcgdGhlIG5hbWUgb2YgYW4KICAgICAgICAgICAgZXhpc3RpbmcgdHlwZSBwcm9wZXJ0eSBhcyByb2xlIG5hbWUgdG8gYXZvaWQgcG90ZW50aWFsIGFtYmlndWl0aWVzCiAgICAgICAgICAgIGJldHdlZW4gcHJvcGVydGllcyBvZiBhIHR5cGUsIGFuZCByb2xlcyBvZiBhIHJlbGF0aW9uc2hpcCBvbiB0aGUKICAgICAgICAgICAgdHlwZS4KCiAgICAgICAgICAgIFRoZSBhcmd1bWVudCBpcyB0aGUgbmFtZSBvZiB0aGUgdHlwZSBvbiB3aGljaCB0aGUgQS1zaWRlIHJlc2lkZXMuCiAgICAgICAgICAgIElmIHRoZSB0eXBlIGlzIGRlY2xhcmVkIGluIGFub3RoZXIgbW9kdWxlLCB0aGUgdHlwZSBtdXN0IGJlCiAgICAgICAgICAgIHByZWZpeGVkLCBhbmQgYSBjb3JyZXNwb25kaW5nICdpbXBvcnQnIHN0YXRlbWVudCBiZSB1c2VkIHRvIGRlY2xhcmUKICAgICAgICAgICAgdGhlIHByZWZpeC4iOwoKICAgICAgICBhcmd1bWVudCBhU2lkZVR5cGU7CiAgICB9CgogICAgZXh0ZW5zaW9uIGJTaWRlIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiRGVmaW5lcyB0aGUgQi1zaWRlIG9mIGEgcmVsYXRpb25zaGlwLgoKICAgICAgICAgICAgVGhlIHN0YXRlbWVudCBNVVNUIG9ubHkgYmUgYSBzdWJzdGF0ZW1lbnQgb2YgYSAnbGVhZicgb3IgJ2xlYWYtbGlzdCcKICAgICAgICAgICAgc3RhdGVtZW50LCB3aGljaCBpdHNlbGYgbXVzdCBiZSBhIHN1YnN0YXRlbWVudCBvZiB0aGUKICAgICAgICAgICAgJ3VuaS1kaXJlY3Rpb25hbC10b3BvbG9neS1yZWxhdGlvbnNoaXAnIHN0YXRlbWVudC4KCiAgICAgICAgICAgIFRoZSBkYXRhIHR5cGUgb2YgdGhlIHBhcmVudCAnbGVhZicgb3IgJ2xlYWYtbGlzdCcgTVVTVCBiZQogICAgICAgICAgICAnaW5zdGFuY2UtaWRlbnRpZmllcicuIENvbnN0cmFpbnRzIE1BWSBiZSB1c2VkIGFzIHBhcnQgb2YgdGhlIHBhcmVudAogICAgICAgICAgICAnbGVhZicgb3IgJ2xlYWYtbGlzdCcgdG8gZW5mb3JjZSBjYXJkaW5hbGl0eS4KCiAgICAgICAgICAgIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBwYXJlbnQgJ2xlYWYnIG9yICdsZWFmLWxpc3QnIGlzIHVzZWQgYXMgbmFtZQogICAgICAgICAgICBvZiB0aGUgcm9sZSBvZiB0aGUgQi1zaWRlIG9mIHRoZSByZWxhdGlvbnNoaXAuIFRoZSBuYW1lIG9mIHRoZSByb2xlCiAgICAgICAgICAgIGlzIHNjb3BlZCB0byB0aGUgdHlwZSBvbiB3aGljaCB0aGUgQi1zaWRlIGlzIGRlZmluZWQgYW5kIE1VU1QgYmUKICAgICAgICAgICAgdW5pcXVlIHdpdGhpbiB0aGUgc2NvcGUuCgogICAgICAgICAgICBXaGlsZSB0aGUgcGFyZW50ICdsZWFmJyBvciAnbGVhZi1saXN0JyBkb2VzIG5vdCByZXN1bHQgaW4gYSBwcm9wZXJ0eQogICAgICAgICAgICBvZiB0aGUgcmVsYXRpb25zaGlwLCBpdCBpcyBSRUNPTU1FTkRFRCB0byBhdm9pZCB1c2luZyB0aGUgbmFtZSBvZiBhbgogICAgICAgICAgICBleGlzdGluZyB0eXBlIHByb3BlcnR5IGFzIHJvbGUgbmFtZSB0byBhdm9pZCBwb3RlbnRpYWwgYW1iaWd1aXRpZXMKICAgICAgICAgICAgYmV0d2VlbiBwcm9wZXJ0aWVzIG9mIGEgdHlwZSwgYW5kIHJvbGVzIG9mIGEgcmVsYXRpb25zaGlwIG9uIHRoZQogICAgICAgICAgICB0eXBlLgoKICAgICAgICAgICAgVGhlIGFyZ3VtZW50IGlzIHRoZSBuYW1lIG9mIHRoZSB0eXBlIG9uIHdoaWNoIHRoZSBCLXNpZGUgcmVzaWRlcy4KICAgICAgICAgICAgSWYgdGhlIHR5cGUgaXMgZGVjbGFyZWQgaW4gYW5vdGhlciBtb2R1bGUsIHRoZSB0eXBlIG11c3QgYmUKICAgICAgICAgICAgcHJlZml4ZWQsIGFuZCBhIGNvcnJlc3BvbmRpbmcgJ2ltcG9ydCcgc3RhdGVtZW50IGJlIHVzZWQgdG8gZGVjbGFyZQogICAgICAgICAgICB0aGUgcHJlZml4LiI7CgogICAgICAgIGFyZ3VtZW50IGJTaWRlVHlwZTsKICAgIH0KCiAgICBleHRlbnNpb24gZG9tYWluIHsKICAgICAgICBkZXNjcmlwdGlvbiAiS2V5d29yZCB1c2VkIHRvIGNhcnJ5IGRvbWFpbiBpbmZvcm1hdGlvbi4iOwogICAgICAgIGFyZ3VtZW50IGRvbWFpbk5hbWU7CiAgICB9CgogICAgZXh0ZW5zaW9uIGxhYmVsIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGxhYmVsIGNhbiBiZSB1c2VkIHRvIGdpdmUgbW9kdWxlcyBhbmQgc3VibW9kdWxlcyBhIHNlbWFudGljCiAgICAgICAgICAgIHZlcnNpb24sIGluIGFkZGl0aW9uIHRvIHRoZWlyIHJldmlzaW9uLgoKICAgICAgICAgICAgVGhlIGZvcm1hdCBvZiB0aGUgbGFiZWwgaXMgJ3gueS56JyAtIGV4cHJlc3NlZCBhcyBwYXR0ZXJuLCBpdCBpcwogICAgICAgICAgICBbMC05XStcXC5bMC05XStcXC5bMC05XSsKCiAgICAgICAgICAgIFRoZSBzdGF0ZW1lbnQgTVVTVCBvbmx5IGJlIGEgc3Vic3RhdGVtZW50IG9mIHRoZSByZXZpc2lvbiBzdGF0ZW1lbnQuCiAgICAgICAgICAgIFplcm8gb3Igb25lIHJldmlzaW9uIGxhYmVsIHN0YXRlbWVudHMgcGVyIHBhcmVudCBzdGF0ZW1lbnQgYXJlCiAgICAgICAgICAgIGFsbG93ZWQuCgogICAgICAgICAgICBSZXZpc2lvbiBsYWJlbHMgTVVTVCBiZSB1bmlxdWUgYW1vbmdzdCBhbGwgcmV2aXNpb25zIG9mIGEgbW9kdWxlIG9yCiAgICAgICAgICAgIHN1Ym1vZHVsZS4iOwoKICAgICAgICBhcmd1bWVudCBzZW12ZXJzaW9uOwogICAgfQp9
-o-ran-smo-teiv-common-yang-types urn:o-ran:smo-teiv-common-yang-types \N [] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLXR5cGVzIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyI7CiAgICBwcmVmaXggb3ItdGVpdi10eXBlczsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7IHByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgXzNncHAtY29tbW9uLXlhbmctdHlwZXMgeyBwcmVmaXggdHlwZXMzZ3BwOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAiVG9wb2xvZ3kgYW5kIEludmVudG9yeSBjb21tb24gdHlwZXMgbW9kZWwKCiAgICBUaGlzIG1vZGVsIGNvbnRhaW5zIHJlLXVzYWJsZSBkYXRhIHR5cGVzIHRoYXQgdG9wb2xvZ3kgYW5kIGludmVudG9yeSBtb2RlbHMKICAgIHdpbGwgZnJlcXVlbnRseSB1c2UgYXMgcGFydCBvZiB0eXBlcyBhbmQgcmVsYXRpb25zaGlwcy4KCiAgICBDb3B5cmlnaHQgKEMpIDIwMjQgRXJpY3Nzb24KICAgIE1vZGlmaWNhdGlvbnMgQ29weXJpZ2h0IChDKSAyMDI0IE9wZW5JbmZyYSBGb3VuZGF0aW9uIEV1cm9wZQoKICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7CiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKCiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsCiAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKICAgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wIjsKCiAgICByZXZpc2lvbiAiMjAyNC0xMC0wNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJBZGRlZCBPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwIGFuZCBPcmlnaW5fUmVsYXRpb25zaGlwX01hcHBpbmdfR3JwCiAgICAgICAgZm9yIHNvdXJjZUlkcyBhbmQgcmVsaWFiaWxpdHlJbmRpY2F0b3IgdG8gbWV0YWRhdGEuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC40LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDUtMjQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiSW5pdGlhbCByZXZpc2lvbi4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjMuMDsKICAgIH0KCiAgICBncm91cGluZyBUb3BfR3JwX1R5cGUgewogICAgICAgIGRlc2NyaXB0aW9uICJHcm91cGluZyBjb250YWluaW5nIHRoZSBrZXkgYXR0cmlidXRlIGNvbW1vbiB0byBhbGwgdHlwZXMuCiAgICAgICAgICAgIEFsbCB0eXBlcyBNVVNUIHVzZSB0aGlzIGdyb3VwaW5nLiI7CgogICAgICAgIGxlYWYgaWQgewogICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIlVuaXF1ZSBpZGVudGlmaWVyIG9mIHRvcG9sb2d5IGVudGl0aWVzLiBSZXByZXNlbnRzIHRoZQogICAgICAgICAgICAgICAgRW50aXR5IEluc3RhbmNlIElkZW50aWZpZXIuIjsKICAgICAgICB9CiAgICB9CgogICAgY29udGFpbmVyIGRlY29yYXRvcnMgewogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGlzIGNvbnRhaW5lciBzZXJ2ZXMgYXMgZXh0ZW5zaW9uIHBvaW50IGZvciBhcHBsaWNhdGlvbnMgd2lzaGluZwogICAgICAgICAgICB0byBkZWZpbmUgdGhlaXIgb3duIGRlY29yYXRvcnMuIFRoaXMgaXMgZG9uZSB2aWEgYXVnbWVudGF0aW9ucy4gVGhleQogICAgICAgICAgICBjYW4gb25seSBiZSBkZWZpbmVkIGluIG5hbWUgdmFsdWUgcGFpci4KCiAgICAgICAgICAgIFRoaXMgaXMgYSBjb25zdW1lciBkYXRhIGFuZCBjYW4gYmUgYXR0YWNoZWQgdG8gVG9wb2xvZ3kgRW50aXR5IG9yCiAgICAgICAgICAgIFRvcG9sb2d5IFJlbGF0aW9uIGluc3RhbmNlLCBvdXRzaWRlIG9mIHRoZSBkZWNsYXJlZCBUb3BvbG9neSBFbnRpdHkKICAgICAgICAgICAgb3IgVG9wb2xvZ3kgUmVsYXRpb25zaGlwJ3MgYXR0cmlidXRlcy4gVGhpcyBjYW5ub3QgYmUgaW5zdGFudGlhdGVkLAogICAgICAgICAgICBhbmQgaXQgTVVTVCBOT1QgYmUgYXVnbWVudGVkIG9yIGRldmlhdGVkIGluIGFueSB3YXksIHVubGVzcyBzdGF0ZWQKICAgICAgICAgICAgb3RoZXJ3aXNlLiI7CiAgICB9CgogICAgbGVhZi1saXN0IGNsYXNzaWZpZXJzIHsKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiQ29uc3VtZXIgZGVmaW5lZCB0YWdzIHRvIHRvcG9sb2d5IGVudGl0aWVzIGFuZCByZWxhdGlvbnNoaXBzLgoKICAgICAgICAgICAgVGhpcyBpcyBhIGNvbnN1bWVyIGRhdGEgYW5kIGNhbiBiZSBhdHRhY2hlZCB0byBUb3BvbG9neSBFbnRpdHkgb3IKICAgICAgICAgICAgVG9wb2xvZ3kgUmVsYXRpb24gaW5zdGFuY2UsIG91dHNpZGUgb2YgdGhlIGRlY2xhcmVkIFRvcG9sb2d5IEVudGl0eQogICAgICAgICAgICBvciBUb3BvbG9neSBSZWxhdGlvbnNoaXAncyBhdHRyaWJ1dGVzLiBUaGlzIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQsCiAgICAgICAgICAgIGFuZCBpdCBNVVNUIE5PVCBiZSBhdWdtZW50ZWQgb3IgZGV2aWF0ZWQgaW4gYW55IHdheSwgdW5sZXNzIHN0YXRlZAogICAgICAgICAgICBvdGhlcndpc2UuIjsKCiAgICAgICAgdHlwZSBpZGVudGl0eXJlZiB7IGJhc2UgY2xhc3NpZmllcjsgfQogICAgfQoKICAgIGdyb3VwaW5nIE9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnAgewogICAgICAgIGRlc2NyaXB0aW9uICJHcm91cGluZyB0byBpZGVudGlmeSBzb3VyY2VJZHMgb24gYSB0b3BvbG9neSBlbnRpdHkuIjsKCiAgICAgICAgbGVhZi1saXN0IHNvdXJjZUlkcyB7CgogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgIkFuIG9yZGVyZWQgbGlzdCBvZiBpZGVudGl0aWVzIHRoYXQgcmVwcmVzZW50IHRoZSBzZXQgb2YgbmF0aXZlCiAgICAgICAgICAgICAgICBzb3VyY2UgaWRlbnRpZmllcnMgZm9yIHBhcnRpY2lwYXRpbmcgZW50aXRpZXMuCgogICAgICAgICAgICAgICAgVGhpcyBtdXN0IGJlIGF0dGFjaGVkIHRvIHRoZSBUb3BvbG9neSBFbnRpdHkgaW5zdGFuY2UsIG91dHNpZGUgb2YgdGhlCiAgICAgICAgICAgICAgICBkZWNsYXJlZCBUb3BvbG9neSBFbnRpdHkncyBhdHRyaWJ1dGVzLiBUaGlzIGlzIGV4cG9zZWQgdG8gdGhlCiAgICAgICAgICAgICAgICBjb25zdW1lcnMgYW5kIGNhbiBvbmx5IGJlIHNldCBieSB0aGUgcmVzcG9uc2libGUgYWRhcHRlci4gVGhpcwogICAgICAgICAgICAgICAgY2Fubm90IGJlIGluc3RhbnRpYXRlZCwgYW5kIGl0IE1VU1QgTk9UIGJlIGF1Z21lbnRlZCBvciBkZXZpYXRlZAogICAgICAgICAgICAgICAgaW4gYW55IHdheSwgdW5sZXNzIHN0YXRlZCBvdGhlcndpc2UuIjsKCiAgICAgICAgICAgIHR5cGUgc291cmNlSWQ7CiAgICAgICAgICAgIG9yZGVyZWQtYnkgdXNlcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQogICAgfQoKICAgIGdyb3VwaW5nIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAgewogICAgICAgIGRlc2NyaXB0aW9uICJHcm91cGluZyB0byBpZGVudGlmeSBzb3VyY2VJZHMgb24gYSB0b3BvbG9neSByZWxhdGlvbnNoaXAuIjsKCiAgICAgICAgbGVhZi1saXN0IHNvdXJjZUlkcyB7CgogICAgICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAgICAgIkFuIG9yZGVyZWQgbGlzdCBvZiBpZGVudGl0aWVzIHRoYXQgcmVwcmVzZW50IHRoZSBzZXQgb2YgbmF0aXZlCiAgICAgICAgICAgICAgICBzb3VyY2UgaWRlbnRpZmllcnMgZm9yIHBhcnRpY2lwYXRpbmcgZW50aXRpZXMgaW4gdGhlIHJlbGF0aW9uc2hpcC4KCiAgICAgICAgICAgICAgICBUaGlzIG11c3QgYmUgYXR0YWNoZWQgdG8gdGhlIFRvcG9sb2d5IFJlbGF0aW9uIGluc3RhbmNlLCBvdXRzaWRlIG9mIHRoZQogICAgICAgICAgICAgICAgZGVjbGFyZWQgVG9wb2xvZ3kgUmVsYXRpb25zaGlwJ3MgYXR0cmlidXRlcy4gVGhpcyBpcyBleHBvc2VkIHRvIHRoZQogICAgICAgICAgICAgICAgY29uc3VtZXJzIGFuZCBjYW4gb25seSBiZSBzZXQgYnkgdGhlIHJlc3BvbnNpYmxlIGFkYXB0ZXIuIFRoaXMKICAgICAgICAgICAgICAgIGNhbm5vdCBiZSBpbnN0YW50aWF0ZWQsIGFuZCBpdCBNVVNUIE5PVCBiZSBhdWdtZW50ZWQgb3IgZGV2aWF0ZWQgaW4KICAgICAgICAgICAgICAgIGFueSB3YXksIHVubGVzcyBzdGF0ZWQgb3RoZXJ3aXNlLiI7CgogICAgICAgICAgICB0eXBlIHNvdXJjZUlkOwogICAgICAgICAgICBvcmRlcmVkLWJ5IHVzZXI7CiAgICAgICAgICAgIG1pbi1lbGVtZW50cyAyOwogICAgICAgIH0KICAgIH0KCiAgICBjb250YWluZXIgbWV0YWRhdGEgewogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGlzIGNvbnRhaW5lciBzZXJ2ZXMgYXMgYW4gZXh0ZW5zaW9uIHBvaW50IHRvIGRlZmluZSBtZXRhZGF0YS4gVGhleQogICAgICAgICAgICBjYW4gb25seSBiZSBkZWZpbmVkIGluIG5hbWUgdmFsdWUgcGFpcnMuCgogICAgICAgICAgICBUaGlzIG11c3QgYmUgYXR0YWNoZWQgdG8gdGhlIFRvcG9sb2d5IEVudGl0eSBvciBUb3BvbG9neSBSZWxhdGlvbiBpbnN0YW5jZSwKICAgICAgICAgICAgb3V0c2lkZSBvZiB0aGUgZGVjbGFyZWQgVG9wb2xvZ3kgRW50aXR5IG9yIFRvcG9sb2d5IFJlbGF0aW9uc2hpcCdzCiAgICAgICAgICAgIGF0dHJpYnV0ZXMuIFRoaXMgaXMgZXhwb3NlZCB0byB0aGUgY29uc3VtZXJzIGFuZCBjYW4gb25seSBiZSBzZXQgYnkKICAgICAgICAgICAgdGhlIHJlc3BvbnNpYmxlIGFkYXB0ZXIuIFRoaXMgY2Fubm90IGJlIGluc3RhbnRpYXRlZCwgYW5kIGl0IE1VU1QgTk9UIGJlCiAgICAgICAgICAgIGF1Z21lbnRlZCBvciBkZXZpYXRlZCBpbiBhbnkgd2F5LCB1bmxlc3Mgc3RhdGVkIG90aGVyd2lzZS4iOwoKICAgICAgICBsZWFmIHJlbGlhYmlsaXR5SW5kaWNhdG9yIHsKICAgICAgICAgICAgdHlwZSBlbnVtZXJhdGlvbiB7CiAgICAgICAgICAgICAgICBlbnVtIE9LIHsKICAgICAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIGRhdGEgaXMgaW4gYWxpZ25tZW50IHdpdGggdGhlIHNvdXJjZSBvZiB0cnV0aCwKICAgICAgICAgICAgICAgICAgICBhcyBmYXIgYXMgVG9wb2xvZ3kgRXhwb3N1cmUgSGFuZGxpbmcgaXMgYXdhcmUuIjsKICAgICAgICAgICAgICAgICAgICB2YWx1ZSAwOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZW51bSBSRVNUT1JFRCB7CiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBkYXRhIHdhcyByZXN0b3JlZCBmcm9tIGJhY2t1cCBhbmQgdGhlIHJlc3BvbnNpYmxlCiAgICAgICAgICAgICAgICAgICAgYWRhcHRlcnMgYXJlIGNoZWNraW5nIHRvIGVuc3VyZSB0aGUgZGF0YSBpcyBjdXJyZW50LiI7CiAgICAgICAgICAgICAgICAgICAgdmFsdWUgMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVudW0gQURWSVNFRCB7CiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkVudGl0eSBpbXBsaWNpdGx5IGNyZWF0ZWQgYnkgVG9wb2xvZ3kgRXhwb3N1cmUgSGFuZGxpbmcgYW5kCiAgICAgICAgICAgICAgICAgICAgcG90ZW50aWFsbHkgbm90IGFsaWduZWQgd2l0aCB0aGUgc291cmNlIG9mIHRydXRoLiI7CiAgICAgICAgICAgICAgICAgICAgdmFsdWUgMjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBpZGVudGl0eSBjbGFzc2lmaWVyIHsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIGNsYXNzaWZpZXIgaXMgdXNlZCBhcyBhIGJhc2UgdG8gcHJvdmlkZSBhbGwgY2xhc3NpZmllcnMKICAgICAgICB3aXRoIGlkZW50aXR5LiAiOwogICAgfQoKICAgIHR5cGVkZWYgc291cmNlSWQgewogICAgICAgIGRlc2NyaXB0aW9uICJBbiBpZGVudGl0eSB0aGF0IHJlcHJlc2VudHMgYSBuYXRpdmUgaWRlbnRpZmllciBvZiBhIHRvcG9sb2d5IGVudGl0eS4iOwogICAgICAgIHR5cGUgc3RyaW5nOwogICAgfQp9
-o-ran-smo-teiv-equipment urn:o-ran:smo-teiv-equipment EQUIPMENT [] 2024-10-21 bW9kdWxlIG8tcmFuLXNtby10ZWl2LWVxdWlwbWVudCB7CiAgICB5YW5nLXZlcnNpb24gMS4xOwogICAgbmFtZXNwYWNlICJ1cm46by1yYW46c21vLXRlaXYtZXF1aXBtZW50IjsKICAgIHByZWZpeCBvci10ZWl2LWVxdWlwOwoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyB7cHJlZml4IG9yLXRlaXYtdHlwZXM7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7cHJlZml4IG9yLXRlaXYteWV4dDsgfQoKICAgIGltcG9ydCBpZXRmLWdlby1sb2NhdGlvbiB7CiAgICAgICAgcHJlZml4IGdlbzsKICAgICAgICByZWZlcmVuY2UgIlJGQyA5MTc5OiBBIFlBTkcgR3JvdXBpbmcgZm9yIEdlb2dyYXBoaWMgTG9jYXRpb25zIjsKICAgIH0KCiAgICBvcmdhbml6YXRpb24gIk9SQU4iOwogICAgY29udGFjdCAiVGhlIEF1dGhvcnMiOwogICAgZGVzY3JpcHRpb24KICAgICJSQU4gRXF1aXBtZW50IHRvcG9sb2d5IG1vZGVsLgoKICAgIFRoaXMgbW9kZWwgY29udGFpbnMgdGhlIHRvcG9sb2d5IGVudGl0aWVzIGFuZCByZWxhdGlvbnMgaW4gdGhlCiAgICBSQU4gRXF1aXBtZW50IGRvbWFpbiwgd2hpY2ggaXMgbW9kZWxsZWQgdG8gdW5kZXJzdGFuZCB0aGUgcGh5c2ljYWwKICAgIGxvY2F0aW9uIG9mIGVxdWlwbWVudCBzdWNoIGFzIGFudGVubmFzIGFzc29jaWF0ZWQgd2l0aCBhIGNlbGwvY2FycmllcgogICAgYW5kIHRoZWlyIHJlbGV2YW50IHByb3BlcnRpZXMgZS5nLiB0aWx0LCBtYXggcG93ZXIgZXRjLgoKICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZCI7CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMjEiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiRGVwcmVjYXRlIEFudGVubmFNb2R1bGUgYXR0cmlidXRlIGFudGVubmFCZWFtV2lkdGguCiAgICAgICAgVG8gYmUgcmVwbGFjZWQgYnkgaG9yaXpvbnRhbEJlYW1XaWR0aCBhbmQgdmVydGljYWxCZWFtV2lkdGguIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC42LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDgiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgYXppbXV0aCBhdHRyaWJ1dGUgZm9yIEFudGVubmFNb2R1bGUuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC41LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmdzLCBPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwIG9yIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAKICAgICAgICB0byB0aGUgY29ycmVzcG9uZGluZyB0b3BvbG9neSBvYmplY3RzLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA1LTI0IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkluaXRpYWwgcmV2aXNpb24uIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmRvbWFpbiBFUVVJUE1FTlQ7CgogICAgbGlzdCBBbnRlbm5hTW9kdWxlIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQW4gQW50ZW5uYSBNb2R1bGUgcmVwcmVzZW50cyB0aGUgcGh5c2ljYWwgYXNwZWN0IG9mIGFuCiAgICAgICAgYW50ZW5uYS4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIGFudGVubmFNb2RlbE51bWJlciB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVmVuZG9yLXNwZWNpZmljIGFudGVubmEgbW9kZWwgaWRlbnRpZmllci4gVGhpcwogICAgICAgICAgICAgICAgYXR0cmlidXRlIGlzIHBhcnQgb2YgQUlTRyB2MyBBREIgU3RhbmRhcmQgYW5kIGhhcyBubwogICAgICAgICAgICAgICAgb3BlcmF0aW9uYWwgaW1wYWN0LiI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBtZWNoYW5pY2FsQW50ZW5uYUJlYXJpbmcgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkFudGVubmEgYmVhcmluZyBvbiBhbnRlbm5hIHN1YnVuaXQgd2hlcmUgYW50ZW5uYQogICAgICAgICAgICAgICAgdW5pdCBpcyBpbnN0YWxsZWQuIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgbWVjaGFuaWNhbEFudGVubmFUaWx0IHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJUaGUgZml4ZWQgYW50ZW5uYSB0aWx0IG9mIHRoZSBpbnN0YWxsYXRpb24sIGRlZmluZWQKICAgICAgICAgICAgICAgIGFzIHRoZSBpbmNsaW5hdGlvbiBvZiB0aGUgYW50ZW5uYSBlbGVtZW50IHJlc3BlY3QgdG8gdGhlCiAgICAgICAgICAgICAgICB2ZXJ0aWNhbCBwbGFuZS4gSXQgaXMgYSBzaWduZWQgdmFsdWUuIFBvc2l0aXZlIGluZGljYXRlcwogICAgICAgICAgICAgICAgZG93bnRpbHQsIGFuZCBuZWdhdGl2ZSBpbmRpY2F0ZXMgdXB0aWx0LiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIHBvc2l0aW9uV2l0aGluU2VjdG9yIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJBbnRlbm5hIHVuaXQgcG9zaXRpb24gd2l0aGluIHNlY3Rvci4gVGhpcyBhdHRyaWJ1dGUKICAgICAgICAgICAgICAgIGlzIHBhcnQgb2YgQUlTRyB2MyBBREIgU3RhbmRhcmQgYW5kIGhhcyBubyBvcGVyYXRpb25hbAogICAgICAgICAgICAgICAgaW1wYWN0LiI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiB0b3RhbFRpbHQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRvdGFsIGFudGVubmEgZWxldmF0aW9uIGluY2x1ZGluZyB0aGUgaW5zdGFsbGVkCiAgICAgICAgICAgICAgICB0aWx0IGFuZCB0aGUgdGlsdCBhcHBsaWVkIGJ5IHRoZSBSZW1vdGUgRWxlY3RyaWNhbAogICAgICAgICAgICAgICAgVGlsdCAoUkVUKS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBlbGVjdHJpY2FsQW50ZW5uYVRpbHQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkVsZWN0cmljYWxseS1jb250cm9sbGVkIHRpbHQgb2YgbWFpbiBiZWFtIG1heGltdW0KICAgICAgICAgICAgICAgIHdpdGggcmVzcGVjdCB0byBkaXJlY3Rpb24gb3J0aG9nb25hbCB0byBhbnRlbm5hIGVsZW1lbnQKICAgICAgICAgICAgICAgIGF4aXMgKHNlZSAzR1BQIFRTIDI1LjQ2NikuIFZhbHVlIGlzIHNpZ25lZDsgdGlsdCBkb3duIGlzCiAgICAgICAgICAgICAgICBwb3NpdGl2ZSwgdGlsdCB1cCBpcyBuZWdhdGl2ZS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZi1saXN0IGFudGVubmFCZWFtV2lkdGggewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBhbmd1bGFyIHNwYW4gb2YgdGhlIG1haW4gbG9iZSBvZiB0aGUgYW50ZW5uYQogICAgICAgICAgICAgICAgcmFkaWF0aW9uIHBhdHRlcm4gaW4gdGhlIGhvcml6b250YWwgcGxhbmUuIE1lYXN1cmVkIGluCiAgICAgICAgICAgICAgICBkZWdyZWVzLgoKICAgICAgICAgICAgICAgIERlcHJlY2F0ZWQ6IFNpbmNlIDI0LlE0LiBSZXBsYWNlZCBieSBBbnRlbm5hTW9kdWxlOjpob3Jpem9udGFsQmVhbVdpZHRoCiAgICAgICAgICAgICAgICBhbmQgQW50ZW5uYU1vZHVsZTo6dmVydGljYWxCZWFtV2lkdGguIFBsYW5uZWQgdG8gYmUgcmVtb3ZlZC4iOwogICAgICAgICAgICAgICAgdHlwZSB1aW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgaG9yaXpvbnRhbEJlYW1XaWR0aCAgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBhbmd1bGFyIHNwYW4gb2YgdGhlIG1haW4gbG9iZSBvZiB0aGUgYW50ZW5uYQogICAgICAgICAgICAgICAgcmFkaWF0aW9uIHBhdHRlcm4gaW4gdGhlIGhvcml6b250YWwgcGxhbmUuIjsKICAgICAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0IHsKICAgICAgICAgICAgICAgICAgICBmcmFjdGlvbi1kaWdpdHMgMTsKICAgICAgICAgICAgICAgICAgICByYW5nZSAiMC4uMzYwIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHVuaXRzICJkZWNpbWFsIGRlZ3JlZXMiOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIHZlcnRpY2FsQmVhbVdpZHRoICAgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBhbmd1bGFyIHNwYW4gb2YgdGhlIG1haW4gbG9iZSBvZiB0aGUgYW50ZW5uYQogICAgICAgICAgICAgICAgcmFkaWF0aW9uIHBhdHRlcm4gaW4gdGhlIHZlcnRpY2FsIHBsYW5lLiI7CiAgICAgICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDE7CiAgICAgICAgICAgICAgICAgICAgcmFuZ2UgIjAuLjM2MCI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB1bml0cyAiZGVjaW1hbCBkZWdyZWVzIjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBhemltdXRoIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJUaGUgdmFsdWUgb2YgdGhlIGF6aW11dGggb2YgdGhlIEFudGVubmEgTW9kdWxlLiI7CiAgICAgICAgICAgICAgICB0eXBlIGRlY2ltYWw2NCB7CiAgICAgICAgICAgICAgICAgICAgZnJhY3Rpb24tZGlnaXRzIDE7CiAgICAgICAgICAgICAgICAgICAgcmFuZ2UgIjAuLjM2MCI7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB1bml0cyAiZGVjaW1hbCBkZWdyZWVzIjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdXNlcyBnZW86Z2VvLWxvY2F0aW9uOwogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IFNpdGUgewogICAgICAgIGRlc2NyaXB0aW9uICJBIHNpdGUgaXMgYSBwaHlzaWNhbCBsb2NhdGlvbiB3aGVyZSBhbiBlcXVpcG1lbnQgY2FuIGJlCiAgICAgICAgaW5zdGFsbGVkLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgbmFtZSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmFtZSBvZiBTaXRlIjsKICAgICAgICAgICAgICAgIHR5cGUgc3RyaW5nOwogICAgICAgICAgICB9CgogICAgICAgICAgICB1c2VzIGdlbzpnZW8tbG9jYXRpb247CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgQU5URU5OQU1PRFVMRV9JTlNUQUxMRURfQVRfU0lURSB7IC8vIDAuLm4gdG8gMC4uMQoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBBbnRlbm5hTW9kdWxlIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgU2l0ZSB0eXBlLgogICAgICAgICAgICBUaGUgU2l0ZSByZXByZXNlbnRzIHRoZSBwaHlzaWNhbCBsb2NhdGlvbiB3aGVyZSB0aGUgQW50ZW5uYU1vZHVsZSBpcyBpbnN0YWxsZWQuCiAgICAgICAgICAgIEFuIEFudGVubmFNb2R1bGUgaW5zdGFuY2UgY2FuIG9ubHkgYmUgaW5zdGFsbGVkIGF0IG9uZSBTaXRlLgogICAgICAgICAgICBBIFNpdGUgaW5zdGFuY2UgY2FuIGhhdmUgbWFueSBpbnN0YWxsZWQgQW50ZW5uYU1vZHVsZXMuCiAgICAgICAgICAgICI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmIGluc3RhbGxlZC1hdC1zaXRlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIkFudGVubmEgTW9kdWxlIGluc3RhbGxlZCBhdCBTaXRlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBBbnRlbm5hTW9kdWxlOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3QgaW5zdGFsbGVkLWFudGVubmFNb2R1bGUgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiU2l0ZSB3aGVyZSBBbnRlbm5hIE1vZHVsZSBpcyBpbnN0YWxsZWQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIFNpdGU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9Cn0=
-o-ran-smo-teiv-oam urn:o-ran:smo-teiv-oam OAM [] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LW9hbSB7CiAgICB5YW5nLXZlcnNpb24gMS4xOwogICAgbmFtZXNwYWNlICJ1cm46by1yYW46c21vLXRlaXYtb2FtIjsKICAgIHByZWZpeCBvci10ZWl2LW9hbTsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMgeyBwcmVmaXggb3ItdGVpdi10eXBlczsgfQoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy1leHRlbnNpb25zIHsgcHJlZml4IG9yLXRlaXYteWV4dDsgfQoKICAgIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgICBjb250YWN0ICJUaGUgQXV0aG9ycyI7CiAgICBkZXNjcmlwdGlvbiAKICAgICJSQU4gTyZNIHRvcG9sb2d5IG1vZGVsLgoKICAgIFRoaXMgbW9kZWwgY29udGFpbnMgdGhlIHRvcG9sb2d5IGVudGl0aWVzIGFuZCByZWxhdGlvbnMgaW4gdGhlCiAgICBSQU4gTyZNIGRvbWFpbiwgd2hpY2ggYXJlIGludGVuZGVkIHRvIHJlcHJlc2VudCBtYW5hZ2VtZW50IHN5c3RlbXMKICAgIGFuZCBtYW5hZ2VtZW50IGludGVyZmFjZXMuCgogICAgQ29weXJpZ2h0IChDKSAyMDI0IEVyaWNzc29uCiAgICBNb2RpZmljYXRpb25zIENvcHlyaWdodCAoQykgMjAyNCBPcGVuSW5mcmEgRm91bmRhdGlvbiBFdXJvcGUKCiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpOwogICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgogICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CgogICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCgogICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQogICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLAogICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KCiAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCI7CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmcsIE9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnAgdG8gdGhlIHRvcG9sb2d5IG9iamVjdC4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNS0yNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIG9yLXRlaXYteWV4dDpkb21haW4gT0FNOwoKICAgIGxpc3QgTWFuYWdlZEVsZW1lbnQgewogICAgICAgIGRlc2NyaXB0aW9uICJBIE1hbmFnZWQgRWxlbWVudCAoTUUpIGlzIGEgbm9kZSBpbnRvIGEgdGVsZWNvbW11bmljYXRpb24KICAgICAgICBuZXR3b3JrIHByb3ZpZGluZyBzdXBwb3J0IGFuZC9vciBzZXJ2aWNlIHRvIHN1YnNjcmliZXJzLiBBbiBNRQogICAgICAgIGNvbW11bmljYXRlcyB3aXRoIGEgbWFuYWdlciBhcHBsaWNhdGlvbiAoZGlyZWN0bHkgb3IgaW5kaXJlY3RseSkKICAgICAgICBvdmVyIG9uZSBvciBtb3JlIGludGVyZmFjZXMgZm9yIHRoZSBwdXJwb3NlIG9mIGJlaW5nIG1vbml0b3JlZAogICAgICAgIGFuZC9vciBjb250cm9sbGVkLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwogICAgfQp9
-o-ran-smo-teiv-ran urn:o-ran:smo-teiv-ran RAN [] 2024-10-08 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJhbiB7CiAgICB5YW5nLXZlcnNpb24gMS4xOwogICAgbmFtZXNwYWNlICJ1cm46by1yYW46c21vLXRlaXYtcmFuIjsKICAgIHByZWZpeCBvci10ZWl2LXJhbjsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgXzNncHAtY29tbW9uLXlhbmctdHlwZXMgeyBwcmVmaXggdHlwZXMzZ3BwOyB9CgogICAgaW1wb3J0IGlldGYtZ2VvLWxvY2F0aW9uIHsKICAgICAgICBwcmVmaXggZ2VvOwogICAgICAgIHJlZmVyZW5jZSAiUkZDIDkxNzk6IEEgWUFORyBHcm91cGluZyBmb3IgR2VvZ3JhcGhpYyBMb2NhdGlvbnMiOwogICAgfQoKICAgIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgICBjb250YWN0ICJUaGUgQXV0aG9ycyI7CiAgICBkZXNjcmlwdGlvbgogICAgICAgICJSQU4gTG9naWNhbCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgdG9wb2xvZ3kgZW50aXRpZXMgYW5kIHJlbGF0aW9ucyBpbiB0aGUKICAgICAgICBSQU4gTG9naWNhbCBkb21haW4sIHdoaWNoIHJlcHJlc2VudHMgdGhlIGZ1bmN0aW9uYWwgY2FwYWJpbGl0eQogICAgICAgIG9mIHRoZSBkZXBsb3llZCBSQU4gdGhhdCBhcmUgcmVsZXZhbnQgdG8gckFwcHMgdXNlIGNhc2VzLgoKICAgICAgICBDb3B5cmlnaHQgKEMpIDIwMjQgRXJpY3Nzb24KICAgICAgICBNb2RpZmljYXRpb25zIENvcHlyaWdodCAoQykgMjAyNCBPcGVuSW5mcmEgRm91bmRhdGlvbiBFdXJvcGUKCiAgICAgICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgICAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCiAgICAgICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0CgogICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgICAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCiAgICAgICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLAogICAgICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmQKICAgICAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS4KCiAgICAgICAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAiOwoKICAgIHJldmlzaW9uICIyMDI0LTEwLTA4IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkFkZGVkIHJhbmdlIGZvciBhemltdXRoIGF0dHJpYnV0ZSBvZiBTZWN0b3IuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC42LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmdzLCBPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwIG9yIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAKICAgICAgICB0byB0aGUgY29ycmVzcG9uZGluZyB0b3BvbG9neSBvYmplY3QuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC41LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDctMTUiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiVGhpcyByZXZpc2lvbiBhbGlnbnMgTy1SQU4gV29yayBHcm91cCAxMCBTdGFnZSAyIFNwZWNpZmljYXRpb24gKE8tUkFOLldHMTAuVEUmSVYtQ0lNSS4wLVIwMDQudjAyLjAwKSI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuNC4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA1LTI0IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIkluaXRpYWwgcmV2aXNpb24uIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmRvbWFpbiBSQU47CgogICAgbGlzdCBPUlVGdW5jdGlvbiB7CiAgICAgICAgZGVzY3JpcHRpb24gIk8tUkFOIFJhZGlvIFVuaXQgKE8tUlUpLgoKICAgICAgICBBIGxvZ2ljYWwgbm9kZSBob3N0aW5nIExvdy1QSFkgbGF5ZXIgYW5kIFJGIHByb2Nlc3NpbmcgYmFzZWQgb24gYQogICAgICAgIGxvd2VyIGxheWVyIGZ1bmN0aW9uYWwgc3BsaXQuICBUaGlzIGlzIHNpbWlsYXIgdG8gM0dQUOKAmXMg4oCcVFJQ4oCdIG9yCiAgICAgICAg4oCcUlJI4oCdIGJ1dCBtb3JlIHNwZWNpZmljIGluIGluY2x1ZGluZyB0aGUgTG93LVBIWSBsYXllciAoRkZUL2lGRlQsCiAgICAgICAgUFJBQ0ggZXh0cmFjdGlvbikuIFRoZSBPLVJVIHRlcm1pbmF0ZXMgdGhlIE9wZW4gRnJvbnRoYXVsIGludGVyZmFjZQogICAgICAgIChhbHNvIGtub3duIGFzIExMUyBpbnRlcmZhY2UpIGFzIHdlbGwgYXMgTG93LVBIWSBmdW5jdGlvbnMgb2YgdGhlCiAgICAgICAgcmFkaW8gaW50ZXJmYWNlIHRvd2FyZHMgdGhlIFVFLiBUaGlzIGlzIGRlcGxveWVkIGFzIGEgUE5GLiBUaGUgTy1SVQogICAgICAgIHRlcm1pbmF0ZXMgdGhlIE9wZW4gRnJvbnRoYXVsIE0tUGxhbmUgaW50ZXJmYWNlIHRvd2FyZHMgdGhlIE8tRFUKICAgICAgICBhbmQgU01PLgoKICAgICAgICBOb3RlOiBJbiBUb3BvbG9neSwgeW91IGNhbiBjcmVhdGUsIHJlYWQsIHVwZGF0ZSwgYW5kIGRlbGV0ZQogICAgICAgIHRoZSBPLVJVIG9iamVjdC4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIG9ydUlkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIE8tUlUgd2l0aGluIGEgT1JVRnVuY3Rpb24iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQ2NDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE5lYXJSVFJJQ0Z1bmN0aW9uIHsKICAgICAgICBkZXNjcmlwdGlvbiAiTmVhci1SZWFsLVRpbWUgUkFOIEludGVsbGlnZW50IENvbnRyb2xsZXIgKE5lYXItUlQgUklDKS4KCiAgICAgICAgQW4gTy1SQU4gTmV0d29yayBGdW5jdGlvbiAoTkYpIHRoYXQgZW5hYmxlcyBuZWFyLXJlYWwtdGltZSBjb250cm9sCiAgICAgICAgYW5kIG9wdGltaXphdGlvbiBvZiBSQU4gZWxlbWVudHMgYW5kIHJlc291cmNlcyB2aWEgZmluZS1ncmFpbmVkCiAgICAgICAgZGF0YSBjb2xsZWN0aW9uIGFuZCBhY3Rpb25zIG92ZXIgRTIgaW50ZXJmYWNlLiBJdCBtYXkgaW5jbHVkZQogICAgICAgIEFJL01MIChBcnRpZmljaWFsIEludGVsbGlnZW5jZSAvIE1hY2hpbmUgTGVhcm5pbmcpIHdvcmtmbG93CiAgICAgICAgaW5jbHVkaW5nIG1vZGVsIHRyYWluaW5nLCBpbmZlcmVuY2UsIGFuZCB1cGRhdGVzLgoKICAgICAgICBOb3RlOiBJbiBUb3BvbG9neSwgeW91IGNhbiBjcmVhdGUsIHJlYWQsIHVwZGF0ZSwgYW5kIGRlbGV0ZQogICAgICAgIHRoZSBOZWFyLVJUIFJJQyBvYmplY3QuIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGNvbnRhaW5lciBhdHRyaWJ1dGVzIHsKICAgICAgICAgICAgbGVhZiBuZWFyUnRSaWNJZCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBOZWFyLVJUIFJJQyB3aXRoaW4gYSBOZWFyUlRSSUNGdW5jdGlvbiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDY0OwogICAgICAgICAgICB9CgogICAgICAgICAgICBjb250YWluZXIgcExNTklkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJQTE1OIGlkZW50aWZpZXIgdG8gYmUgdXNlZCBhcyBwYXJ0IG9mIGdsb2JhbCBSQU4KICAgICAgICAgICAgICAgIG5vZGUgaWRlbnRpdHkiOwogICAgICAgICAgICAgICAgdXNlcyB0eXBlczNncHA6UExNTklkOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgT0RVRnVuY3Rpb24gewogICAgICAgIGRlc2NyaXB0aW9uICJPLVJBTiBEaXN0cmlidXRlZCBVbml0IChPLURVKS4KCiAgICAgICAgVGhlIE8tRFUgaXMgYW4gTy1SQU4gTkYgaW4gdGhlIE8tUkFOIEFyY2hpdGVjdHVyZS4gQW4gTy1EVSwgY29tYmluZWQKICAgICAgICB3aXRoIG9uZSBvciBtb3JlIE8tUlUocykgY29ubmVjdGVkIHRvIGl0LCBzdXBwb3J0cyBhbmQgaXMgZnVsbHkKICAgICAgICBjb21wYXRpYmxlIHdpdGggdGhlIGZ1bmN0aW9ucyBvZiBhIGdOQi1EVSBhcyBkZWZpbmVkIGJ5IDNHUFAgVFMgMzguNDAxLgoKICAgICAgICBUaGUgZm9sbG93aW5nIGlzIHRydWUgZm9yIGEgTy1EVToKICAgICAgICBJcyBjb25uZWN0ZWQgdG8gdGhlIE8tQ1UtQ1AgdGhyb3VnaCB0aGUgRjEtQyBpbnRlcmZhY2UuIElzCiAgICAgICAgY29ubmVjdGVkIHRvIHRoZSBPLUNVLVVQIHRocm91Z2ggdGhlIEYxLVUgaW50ZXJmYWNlLiBPbmUgTy1EVSBpcwogICAgICAgIGNvbm5lY3RlZCB0byBvbmx5IG9uZSBPLUNVLUNQLiBPbmUgTy1EVSBjYW4gYmUgY29ubmVjdGVkIHRvCiAgICAgICAgbXVsdGlwbGUgTy1DVS1VUHMgdW5kZXIgdGhlIGNvbnRyb2wgb2YgdGhlIHNhbWUgTy1DVS1DUC4KCiAgICAgICAgTm90ZTogQSBnTkIgbWF5IGNvbnNpc3Qgb2YgYSBPLUNVLUNQLCBtdWx0aXBsZSBPLUNVLVVQcyBhbmQKICAgICAgICBtdWx0aXBsZSBPLURVcy4gTy1EVSBpcyBhIGNvbmNyZXRlIGNsYXNzIHRoYXQgZXh0ZW5kcyB0aGUgTkctUkFOCiAgICAgICAgbm9kZSBvYmplY3QuIEluIFRvcG9sb2d5LCB5b3UgY2FuIGNyZWF0ZSwgcmVhZCwgdXBkYXRlLCBhbmQgZGVsZXRlCiAgICAgICAgdGhlIGdOQi1EVSBvYmplY3QuIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGNvbnRhaW5lciBhdHRyaWJ1dGVzIHsKICAgICAgICAgICAgbGVhZiBnTkJEVUlkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIERVIHdpdGhpbiBhIGdOb2RlQiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDY0OwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIGdOQklkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJJZGVudGl0eSBvZiBnTm9kZUIgd2l0aGluIGEgUExNTiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDY0OwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIGdOQklkTGVuZ3RoIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJMZW5ndGggb2YgZ05CSWQgYml0IHN0cmluZyByZXByZXNlbnRhdGlvbiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgT0NVQ1BGdW5jdGlvbiB7CiAgICAgICAgZGVzY3JpcHRpb24gIk8tUkFOIENlbnRyYWxpemVkIFVuaXQgQ29udHJvbCBQbGFuZSAoTy1DVS1DUCkKCiAgICAgICAgVGhpcyBpcyBhIGxvZ2ljYWwgbm9kZSBob3N0aW5nIHRoZSBSYWRpbyBSZXNvdXJjZSBDb250cm9sIChSUkMpIGFuZAogICAgICAgIHRoZSBjb250cm9sIHBsYW5lIHBhcnQgb2YgdGhlIFBhY2tldCBEYXRhIENvbnZlcmdlbmNlIFByb3RvY29sCiAgICAgICAgKFBEQ1ApLiBUaGUgTy1DVS1DUCB0ZXJtaW5hdGVzIHRoZSBFMSBpbnRlcmZhY2UgY29ubmVjdGVkIHdpdGgKICAgICAgICB0aGUgTy1DVS1VUCBhbmQgdGhlIEYxLUMgaW50ZXJmYWNlIGNvbm5lY3RlZCB3aXRoIHRoZSBPLVJBTgogICAgICAgIERpc3RyaWJ1dGVkIFVuaXQgKE8tRFUpLgoKICAgICAgICBUaGUgZm9sbG93aW5nIGlzIHRydWUgZm9yIGEgTy1DVS1DUDoKICAgICAgICBJcyBjb25uZWN0ZWQgdG8gdGhlIE8tRFUgdGhyb3VnaCB0aGUgRjEtQyBpbnRlcmZhY2UuIElzIGNvbm5lY3RlZAogICAgICAgIHRvIHRoZSBPLUNVLVVQIHRocm91Z2ggdGhlIEUxIGludGVyZmFjZS4gT25seSBvbmUgTy1DVS1DUCBpcwogICAgICAgIGNvbm5lY3RlZCB0byBvbmUgTy1EVS4gT25seSBvbmUgTy1DVS1DUCBpcyBjb25uZWN0ZWQgdG8gb25lCiAgICAgICAgTy1DVS1VUC4gT25lIE8tRFUgY2FuIGJlIGNvbm5lY3RlZCB0byBtdWx0aXBsZSBPLUNVLVVQcyB1bmRlcgogICAgICAgIHRoZSBjb250cm9sIG9mIHRoZSBzYW1lIE8tQ1UtQ1AuIE9uZSBPLUNVLVVQIGNhbiBiZSBjb25uZWN0ZWQgdG8KICAgICAgICBtdWx0aXBsZSBEVXMgdW5kZXIgdGhlIGNvbnRyb2wgb2YgdGhlIHNhbWUgTy1DVS1DUC4KCiAgICAgICAgTm90ZTogQSBnTkIgbWF5IGNvbnNpc3Qgb2YgYSBPLUNVLUNQLCBtdWx0aXBsZSBPLUNVLVVQcyBhbmQKICAgICAgICBtdWx0aXBsZSBPLURVcy4gQW4gTy1DVS1DUCBpcyBhIGNvbmNyZXRlIGNsYXNzIHRoYXQgZXh0ZW5kcyB0aGUKICAgICAgICBORy1SQU4gbm9kZSBvYmplY3QuIEluIFRvcG9sb2d5LCB5b3UgY2FuIGNyZWF0ZSwgcmVhZCwgdXBkYXRlLCBhbmQKICAgICAgICBkZWxldGUgdGhlIE8tQ1UtQ1Agb2JqZWN0LiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgZ05CQ1VOYW1lIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOYW1lIG9mIGdOb2RlQi1DVSI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBnTkJJZCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiSWRlbnRpdHkgb2YgZ05vZGVCIHdpdGhpbiBhIFBMTU4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQ2NDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBnTkJJZExlbmd0aCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGVuZ3RoIG9mIGdOQklkIGJpdCBzdHJpbmcgcmVwcmVzZW50YXRpb24iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgY29udGFpbmVyIHBMTU5JZCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiUExNTiBpZGVudGlmaWVyIHRvIGJlIHVzZWQgYXMgcGFydCBvZiBnbG9iYWwgUkFOCiAgICAgICAgICAgICAgICBub2RlIGlkZW50aXR5IjsKICAgICAgICAgICAgICAgIHVzZXMgdHlwZXMzZ3BwOlBMTU5JZDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE9DVVVQRnVuY3Rpb24gewogICAgICAgIGRlc2NyaXB0aW9uICJPLVJBTiBDZW50cmFsaXplZCBVbml0IFVzZXIgUGxhbmUgKE8tQ1UtVVApCgogICAgICAgIEFuIE8tQ1UtVVAgaXMgYSBsb2dpY2FsIG5vZGUgaG9zdGluZyB0aGUgVXNlciBQbGFuZSBwYXJ0IG9mIHRoZQogICAgICAgIFBhY2tldCBEYXRhIENvbnZlcmdlbmNlIFByb3RvY29sIChQRENQKSBhbmQgdGhlIFNlcnZpY2UgRGF0YQogICAgICAgIEFkYXB0YXRpb24gUHJvdG9jb2wgKFNEQVApLiBUaGUgTy1DVS1VUCB0ZXJtaW5hdGVzIHRoZSBFMSBpbnRlcmZhY2UKICAgICAgICBjb25uZWN0ZWQgd2l0aCB0aGUgTy1DVS1DUCBhbmQgdGhlIEYxLVUgaW50ZXJmYWNlIGNvbm5lY3RlZCB3aXRoCiAgICAgICAgdGhlIE8tUkFOIERpc3RyaWJ1dGVkIFVuaXQgKE8tRFUpLgoKICAgICAgICBUaGUgZm9sbG93aW5nIGlzIHRydWUgZm9yIGEgTy1DVS1VUDoKICAgICAgICBJcyBjb25uZWN0ZWQgdG8gdGhlIE8tRFUgdGhyb3VnaCB0aGUgRjEtVSBpbnRlcmZhY2UuIElzIGNvbm5lY3RlZAogICAgICAgIHRvIHRoZSBPLUNVLUNQIHRocm91Z2ggdGhlIEUxIGludGVyZmFjZS4gT25lIE8tQ1UtVVAgaXMKICAgICAgICBjb25uZWN0ZWQgdG8gb25seSBvbmUgTy1DVS1DUC4gT25lIE8tRFUgY2FuIGJlIGNvbm5lY3RlZCB0bwogICAgICAgIG11bHRpcGxlIE8tQ1UtVVBzIHVuZGVyIHRoZSBjb250cm9sIG9mIHRoZSBzYW1lIE8tQ1UtQ1AuIE9uZQogICAgICAgIE8tQ1UtVVAgY2FuIGJlIGNvbm5lY3RlZCB0byBtdWx0aXBsZSBEVXMgdW5kZXIgdGhlIGNvbnRyb2wgb2YgdGhlCiAgICAgICAgc2FtZSBPLUNVLUNQLgoKICAgICAgICBOb3RlOiBBIGdOQiBtYXkgY29uc2lzdCBvZiBhbiBPLUNVLUNQLCBtdWx0aXBsZSBPLUNVLVVQcyBhbmQKICAgICAgICBtdWx0aXBsZSBPLURVcy4gQW4gTy1DVS1VUCBpcyBhIGNvbmNyZXRlIGNsYXNzIHRoYXQgZXh0ZW5kcyB0aGUKICAgICAgICBORy1SQU4gbm9kZSBvYmplY3QuIEluIFRvcG9sb2d5LCB5b3UgY2FuIGNyZWF0ZSwgcmVhZCwgdXBkYXRlLCBhbmQKICAgICAgICBkZWxldGUgdGhlIE8tQ1UtVVAgb2JqZWN0LiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgZ05CSWQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIklkZW50aXR5IG9mIGdOb2RlQiB3aXRoaW4gYSBQTE1OIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50NjQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgZ05CSWRMZW5ndGggewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIkxlbmd0aCBvZiBnTkJJZCBiaXQgc3RyaW5nIHJlcHJlc2VudGF0aW9uIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxpc3QgcExNTklkTGlzdCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGlzdCBvZiBQTE1OIGlkZW50aWZpZXIgdG8gYmUgdXNlZCBhcyBwYXJ0IG9mIGdsb2JhbCBSQU4gbm9kZSBpZGVudGl0eSI7CiAgICAgICAgICAgICAgICB1c2VzIHR5cGVzM2dwcDpQTE1OSWQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBOUkNlbGxDVSB7CiAgICAgICAgZGVzY3JpcHRpb24gIlJlcHJlc2VudHMgYW4gTlIgQ2VsbCBpbiBnTm9kZUItQ1UuCgogICAgICAgIDVHIE5SIGlzIGEgbmV3IHJhZGlvIGFjY2VzcyB0ZWNobm9sb2d5IChSQVQpIGRldmVsb3BlZCBieSAzR1BQIGZvcgogICAgICAgIHRoZSA1RyAoZmlmdGggZ2VuZXJhdGlvbikgbW9iaWxlIG5ldHdvcmsuIEl0IGlzIGRlc2lnbmVkIHRvIGJlIHRoZQogICAgICAgIGdsb2JhbCBzdGFuZGFyZCBmb3IgdGhlIGFpciBpbnRlcmZhY2Ugb2YgNUcgbmV0d29ya3MuCgogICAgICAgIDVHIE5SIGhhcyBzeW5jaHJvbml6YXRpb24gc2lnbmFsIHRoYXQgaXMga25vd24gYXMgUHJpbWFyeQogICAgICAgIFN5bmNocm9uaXphdGlvbiBTaWduYWwgKFBTUykgYW5kIFNlY29uZGFyeSBTeW5jaHJvbml6YXRpb24KICAgICAgICBTaWduYWwgKFNTUykuIFRoZXNlIHNpZ25hbHMgYXJlIHNwZWNpZmljIHRvIE5SIHBoeXNpY2FsIGxheWVyIGFuZAogICAgICAgIHByb3ZpZGUgdGhlIGZvbGxvd2luZyBpbmZvcm1hdGlvbiByZXF1aXJlZCBieSBVRSBmb3IgZG93bmxpbmsKICAgICAgICBzeW5jaHJvbml6YXRpb246IFBTUyBwcm92aWRlcyBSYWRpbyBGcmFtZSBCb3VuZGFyeSAoUG9zaXRpb24gb2YgMXN0CiAgICAgICAgU3ltYm9sIGluIGEgUmFkaW8gZnJhbWUpIFNTUyBwcm92aWRlcyBTdWJmcmFtZSBCb3VuZGFyeSAoUG9zaXRpb24gb2YKICAgICAgICAxc3QgU3ltYm9sIGluIGEgU3ViZnJhbWUpIFBoeXNpY2FsIExheWVyIENlbGwgSUQgKFBDSSkgaW5mb3JtYXRpb24KICAgICAgICB1c2luZyBib3RoIFBTUyBhbmQgU1NTLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYgY2VsbExvY2FsSWQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlVzZWQgdG9nZXRoZXIgd2l0aCBnTm9kZUIgaWRlbnRpZmllciB0byBpZGVudGlmeSBOUgogICAgICAgICAgICAgICAgY2VsbCBpbiBQTE1OLiBVc2VkIHRvZ2V0aGVyIHdpdGggZ05CSWQgdG8gZm9ybSBOQ0kuIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGNvbnRhaW5lciBwbG1uSWQgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlBMTU4gSUQgZm9yIE5SIENHSS4gSWYgZW1wdHksCiAgICAgICAgICAgICAgICBHTkJDVUNQRnVuY3Rpb246OnBMTU5JZCBpcyB1c2VkIGZvciBQTE1OIElEIGluIE5SIENHSSI7CiAgICAgICAgICAgICAgICB1c2VzIHR5cGVzM2dwcDpQTE1OSWQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgbkNJIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBDZWxsIElkZW50aXR5IjsKICAgICAgICAgICAgICAgIHR5cGUgaW50NjQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgblJUQUMgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIFRyYWNraW5nIEFyZWEgQ29kZSAoVEFDKSI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgTlJDZWxsRFUgewogICAgICAgIGRlc2NyaXB0aW9uICJSZXByZXNlbnRzIGFuIE5SIENlbGwgaW4gZ05vZGVCLURVLgoKICAgICAgICA1RyBOUiBpcyBhIG5ldyByYWRpbyBhY2Nlc3MgdGVjaG5vbG9neSAoUkFUKSBkZXZlbG9wZWQgYnkgM0dQUCBmb3IKICAgICAgICB0aGUgNUcgKGZpZnRoIGdlbmVyYXRpb24pIG1vYmlsZSBuZXR3b3JrLiBJdCBpcyBkZXNpZ25lZCB0byBiZSB0aGUKICAgICAgICBnbG9iYWwgc3RhbmRhcmQgZm9yIHRoZSBhaXIgaW50ZXJmYWNlIG9mIDVHIG5ldHdvcmtzLgoKICAgICAgICA1RyBOUiBoYXMgc3luY2hyb25pemF0aW9uIHNpZ25hbCB0aGF0IGlzIGtub3duIGFzIFByaW1hcnkKICAgICAgICBTeW5jaHJvbml6YXRpb24gc2lnbmFsIChQU1MpIGFuZCBTZWNvbmRhcnkgU3luY2hyb25pemF0aW9uIHNpZ25hbAogICAgICAgIChTU1MpLiBUaGVzZSBzaWduYWxzIGFyZSBzcGVjaWZpYyB0byBOUiBwaHlzaWNhbCBsYXllciBhbmQgcHJvdmlkZQogICAgICAgIHRoZSBmb2xsb3dpbmcgaW5mb3JtYXRpb24gcmVxdWlyZWQgYnkgVUUgZm9yIGRvd25saW5rCiAgICAgICAgc3luY2hyb25pemF0aW9uOiBQU1MgcHJvdmlkZXMgUmFkaW8gRnJhbWUgQm91bmRhcnkgKFBvc2l0aW9uIG9mIDFzdAogICAgICAgIFN5bWJvbCBpbiBhIFJhZGlvIGZyYW1lKSBTU1MgcHJvdmlkZXMgU3ViZnJhbWUgQm91bmRhcnkgKFBvc2l0aW9uIG9mCiAgICAgICAgMXN0IFN5bWJvbCBpbiBhIFN1YmZyYW1lKSBQaHlzaWNhbCBMYXllciBDZWxsIElEIChQQ0kpIGluZm9ybWF0aW9uCiAgICAgICAgdXNpbmcgYm90aCBQU1MgYW5kIFNTUy4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIGNlbGxMb2NhbElkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVc2VkIHRvZ2V0aGVyIHdpdGggZ05vZGVCIGlkZW50aWZpZXIgdG8gaWRlbnRpZnkgTlIKICAgICAgICAgICAgICAgIGNlbGwgaW4gUExNTi4gVXNlZCB0b2dldGhlciB3aXRoIGdOQklkIHRvIGZvcm0gTkNJLiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZWFmIG5DSSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTlIgQ2VsbCBJZGVudGl0eS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQ2NDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBuUlBDSSB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIFBoeXNpY2FsIENlbGwgSWRlbnRpdHkgKFBDSSkgb2YgdGhlIE5SIGNlbGwuIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgblJUQUMgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIFRyYWNraW5nIEFyZWEgQ29kZSAoVEFDKS4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBsaXN0IE5SU2VjdG9yQ2FycmllciB7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoZSBOUiBTZWN0b3IgQ2FycmllciBvYmplY3QgcHJvdmlkZXMgdGhlIGF0dHJpYnV0ZXMgZm9yCiAgICAgICAgZGVmaW5pbmcgdGhlIGxvZ2ljYWwgY2hhcmFjdGVyaXN0aWNzIG9mIGEgY2FycmllciAoY2VsbCkgaW4gYQogICAgICAgIHNlY3Rvci4gQSBzZWN0b3IgaXMgYSBjb3ZlcmFnZSBhcmVhIGFzc29jaWF0ZWQgd2l0aCBhIGJhc2Ugc3RhdGlvbgogICAgICAgIGhhdmluZyBpdHMgb3duIGFudGVubmFzLCByYWRpbyBwb3J0cywgYW5kIGNvbnRyb2wgY2hhbm5lbHMuIFRoZQogICAgICAgIGNvbmNlcHQgb2Ygc2VjdG9ycyB3YXMgZGV2ZWxvcGVkIHRvIGltcHJvdmUgY28tY2hhbm5lbCBpbnRlcmZlcmVuY2UKICAgICAgICBpbiBjZWxsdWxhciBzeXN0ZW1zLCBhbmQgbW9zdCB3aXJlbGVzcyBzeXN0ZW1zIHVzZSB0aHJlZSBzZWN0b3IKICAgICAgICBjZWxscy4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIGFyZmNuREwgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIEFic29sdXRlIFJhZGlvIEZyZXF1ZW5jeSBDaGFubmVsIE51bWJlcgogICAgICAgICAgICAgICAgKE5SLUFSRkNOKSBmb3IgZG93bmxpbmsiOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBhcmZjblVMIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBBYnNvbHV0ZSBSYWRpbyBmcmVxdWVuY3kgQ2hhbm5lbCBOdW1iZXIKICAgICAgICAgICAgICAgIChOUi1BUkZDTikgZm9yIHVwbGluay4iOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBmcmVxdWVuY3lETCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiUkYgUmVmZXJlbmNlIEZyZXF1ZW5jeSBvZiBkb3dubGluayBjaGFubmVsIjsKICAgICAgICAgICAgICAgIHR5cGUgaW50MzI7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxlYWYgZnJlcXVlbmN5VUwgewogICAgICAgICAgICAgICAgZGVzY3JpcHRpb24gIlJGIFJlZmVyZW5jZSBGcmVxdWVuY3kgb2YgdXBsaW5rIGNoYW5uZWwiOwogICAgICAgICAgICAgICAgdHlwZSBpbnQzMjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZiBiU0NoYW5uZWxCd0RMIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJCUyBDaGFubmVsIGJhbmR3aWR0aCBpbiBNSHogZm9yIGRvd25saW5rLiI7CiAgICAgICAgICAgICAgICB0eXBlIGludDMyOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGxpc3QgQW50ZW5uYUNhcGFiaWxpdHkgewogICAgICAgIGRlc2NyaXB0aW9uICJUaGlzIE1PIHNlcnZlcyBhcyBhIG1hcHBpbmcgYmV0d2VlbiB0aGUgY2VsbCBhbmQgdGhlIFJCUwogICAgICAgIGVxdWlwbWVudCB1c2VkIHRvIHByb3ZpZGUgY292ZXJhZ2UgaW4gYSBjZXJ0YWluIGdlb2dyYXBoaWNhbCBhcmVhLgogICAgICAgIFRoZSBNTyBhbHNvIGNvbnRyb2xzIHRoZSBtYXhpbXVtIG91dHB1dCBwb3dlciBvZiB0aGUgc2VjdG9yLiI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBjb250YWluZXIgYXR0cmlidXRlcyB7CiAgICAgICAgICAgIGxlYWYtbGlzdCBlVXRyYW5GcUJhbmRzIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJMaXN0IG9mIExURSBmcmVxdWVuY3kgYmFuZHMgdGhhdCBhc3NvY2lhdGVkCiAgICAgICAgICAgICAgICBoYXJkd2FyZSBzdXBwb3J0cyI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZi1saXN0IGdlcmFuRnFCYW5kcyB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGlzdCBvZiBHRVJBTiBmcmVxdWVuY3kgYmFuZHMgdGhhdCBhc3NvY2lhdGVkCiAgICAgICAgICAgICAgICBoYXJkd2FyZSBzdXBwb3J0cyI7CiAgICAgICAgICAgICAgICB0eXBlIHN0cmluZzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGVhZi1saXN0IG5SRnFCYW5kcyB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiTGlzdCBvZiBOUiBmcmVxdWVuY3kgYmFuZHMgYXNzb2NpYXRlZCBoYXJkd2FyZQogICAgICAgICAgICAgICAgc3VwcG9ydHMiOwogICAgICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgbGlzdCBTZWN0b3IgewogICAgICAgIGRlc2NyaXB0aW9uICJBIGdyb3VwIG9mIGNvLWxvY2F0ZWQgQ2VsbHMgdGhhdCBoYXZlIGEgc2hhcmVkCiAgICAgICAgY292ZXJhZ2UgYXJlYS4iOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgY29udGFpbmVyIGF0dHJpYnV0ZXMgewogICAgICAgICAgICBsZWFmIHNlY3RvcklkIHsKICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uICJVbml2ZXJzYWxseSB1bmlxdWUgSUQgZ2VuZXJhdGVkIGJ5IHRoZSBzZWN0b3IncwogICAgICAgICAgICAgICAgZGlzY292ZXJ5IG1lY2hhbmlzbS4iOwogICAgICAgICAgICAgICAgdHlwZSB1aW50NjQ7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHVzZXMgZ2VvOmdlby1sb2NhdGlvbjsKCiAgICAgICAgICAgIGxlYWYgYXppbXV0aCB7CiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbiAiQXZlcmFnZSB2YWx1ZSBvZiB0aGUgYXppbXV0aHMgb2YgdGhlIGNlbGxzCiAgICAgICAgICAgICAgICBjb21wcmlzaW5nIHRoZSBzZWN0b3IsIGRldGVybWluZWQgZHVyaW5nIHNlY3RvciBkaXNjb3ZlcnkuIjsKICAgICAgICAgICAgICAgIHR5cGUgZGVjaW1hbDY0ewogICAgICAgICAgICAgICAgICAgIGZyYWN0aW9uLWRpZ2l0cyAxOwogICAgICAgICAgICAgICAgICAgIHJhbmdlICIwLi4zNjAiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdW5pdHMgImRlY2ltYWwgZGVncmVlcyI7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgT0RVRlVOQ1RJT05fUFJPVklERVNfTlJDRUxMRFUgeyAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0RVRnVuY3Rpb24gdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBOUkNlbGxEVSB0eXBlLgogICAgICAgICAgICBUaGUgT0RVRnVuY3Rpb24gcmVwcmVzZW50cyB0aGUgRFUgY29tcG9uZW50IG9mIGEgZ05CIHRoYXQgcHJvdmlkZXMgdGhlIE5SQ2VsbERVLgogICAgICAgICAgICBBIE9EVUZ1bmN0aW9uIGluc3RhbmNlIGNhbiBwcm92aWRlIG1hbnkgTlJDZWxsRFVzLgogICAgICAgICAgICBBbiBOUkNlbGxEVSBpbnN0YW5jZSBtdXN0IGJlIHByb3ZpZGVkIGJ5IGFuIE9EVUZ1bmN0aW9uLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHByb3ZpZGVkLW5yQ2VsbER1IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk8tRFUgRnVuY3Rpb24gcHJvdmlkZXMgTlIgQ2VsbC1EVS4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgT0RVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgcHJvdmlkZWQtYnktb2R1RnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTlIgQ2VsbC1EVSBwcm92aWRlZCBieSBPLURVIEZ1bmN0aW9uLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBOUkNlbGxEVTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBPRFVGVU5DVElPTl9QUk9WSURFU19OUlNFQ1RPUkNBUlJJRVIgeyAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0RVRnVuY3Rpb24gdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBOUlNlY3RvckNhcnJpZXIgdHlwZS4KICAgICAgICAgICAgVGhlIE9EVUZ1bmN0aW9uIHJlcHJlc2VudHMgdGhlIERVIGNvbXBvbmVudCBvZiBhIGdOQiB0aGF0IHByb3ZpZGVzIHRoZSBOUlNlY3RvckNhcnJpZXIuCiAgICAgICAgICAgIEEgT0RVRnVuY3Rpb24gaW5zdGFuY2UgY2FuIHByb3ZpZGUgbWFueSBOUlNlY3RvckNhcnJpZXJzLgogICAgICAgICAgICBBbiBOUlNlY3RvckNhcnJpZXIgaW5zdGFuY2UgbXVzdCBiZSBwcm92aWRlZCBieSBhbiBPRFVGdW5jdGlvbi4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBwcm92aWRlZC1uclNlY3RvckNhcnJpZXIgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1EVSBGdW5jdGlvbiBwcm92aWRlcyBOUiBTZWN0b3IgQ2Fycmllci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgT0RVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgcHJvdmlkZWQtYnktb2R1RnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTlIgU2VjdG9yIENhcnJpZXIgcHJvdmlkZWQgYnkgTy1EVSBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgTlJTZWN0b3JDYXJyaWVyOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE9DVUNQRlVOQ1RJT05fUFJPVklERVNfTlJDRUxMQ1UgeyAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0NVQ1BGdW5jdGlvbiB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SQ2VsbENVIHR5cGUuCiAgICAgICAgICAgIFRoZSBPQ1VDUEZ1bmN0aW9uIHJlcHJlc2VudHMgdGhlIENVLUNQIGNvbXBvbmVudCBvZiBhIGdOQiB0aGF0IHByb3ZpZGVzIHRoZSBOUkNlbGxDVS4KICAgICAgICAgICAgQSBPQ1VDUEZ1bmN0aW9uIGluc3RhbmNlIGNhbiBwcm92aWRlIG1hbnkgTlJDZWxsQ1UuCiAgICAgICAgICAgIEFuIE5SQ2VsbENVIGluc3RhbmNlIG11c3QgYmUgcHJvdmlkZWQgYnkgYW4gT0NVQ1BGdW5jdGlvbi4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBwcm92aWRlZC1uckNlbGxDdSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLUNVLUNQIEZ1bmN0aW9uIHByb3ZpZGVzIE5SIENlbGwtQ1UuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIE9DVUNQRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgcHJvdmlkZWQtYnktb2N1Y3BGdW5jdGlvbiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBDZWxsLUNVIHByb3ZpZGVkIGJ5IE8tQ1UtQ1AgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE5SQ2VsbENVOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5SQ0VMTERVX1VTRVNfTlJTRUNUT1JDQVJSSUVSIHsgLy8gMC4uMSB0byAwLi5uCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SQ2VsbERVIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgTlJTZWN0b3JDYXJyaWVyIHR5cGUuCiAgICAgICAgICAgIFRoZSBOUkNlbGxEVSByZXByZXNlbnRzIHRoZSBjZWxsIHRoYXQgdXNlcyB0aGUgTlJTZWN0b3JDYXJyaWVyLgogICAgICAgICAgICBBbiBOUkNlbGxEVSBpbnN0YW5jZSBjYW4gdXNlIG1hbnkgTlJTZWN0b3JDYXJyaWVycy4KICAgICAgICAgICAgQW4gTlJTZWN0b3JDYXJyaWVyIGluc3RhbmNlIGNhbiBvbmx5IGJlIHVzZWQgYnkgb25lIE5SQ2VsbERVLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHVzZWQtbnJTZWN0b3JDYXJyaWVyIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIENlbGwtRFUgdXNlcyBOUiBTZWN0b3IgQ2Fycmllci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgTlJDZWxsRFU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgdXNlZC1ieS1uckNlbGxEdSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBTZWN0b3IgQ2FycmllciB1c2VkIGJ5IE5SIENlbGwtRFUuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIE5SU2VjdG9yQ2FycmllcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5SU0VDVE9SQ0FSUklFUl9VU0VTX0FOVEVOTkFDQVBBQklMSVRZIHsgLy8gMC4ubiB0byAwLi4xCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SU2VjdG9yQ2FycmllciB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIEFudGVubmFDYXBhYmlsaXR5IHR5cGUuCiAgICAgICAgICAgIFRoZSBOUlNlY3RvckNhcnJpZXIgcmVwcmVzZW50cyB0aGUgY2FycmllciB0aGF0IHVzZXMgdGhlIEFudGVubmFDYXBhYmlsaXR5LgogICAgICAgICAgICBBbiBOUlNlY3RvckNhcnJpZXIgaW5zdGFuY2UgY2FuIHVzZSBvbmx5IG9uZSBBbnRlbm5hQ2FwYWJpbGl0eS4KICAgICAgICAgICAgQW4gQW50ZW5uYUNhcGFiaWxpdHkgaW5zdGFuY2UgY2FuIGJlIHVzZWQgYnkgbWFueSBOUlNlY3RvckNhcnJpZXJzLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZiB1c2VkLWFudGVubmFDYXBhYmlsaXR5IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5SIFNlY3RvciBDYXJyaWVyIHVzZXMgQW50ZW5uYSBDYXBhYmlsaXR5LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBOUlNlY3RvckNhcnJpZXI7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCB1c2VkLWJ5LW5yU2VjdG9yQ2FycmllciB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJBbnRlbm5hIENhcGFiaWxpdHkgdXNlZCBieSBOUiBTZWN0b3IgQ2Fycmllci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgQW50ZW5uYUNhcGFiaWxpdHk7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBTRUNUT1JfR1JPVVBTX05SQ0VMTERVIHsgLy8gMC4uMSB0byAwLi5uCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIFNlY3RvciB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5SQ2VsbERVIHR5cGUuCiAgICAgICAgICAgIFRoZSBTZWN0b3IgcmVwcmVzZW50cyB0aGUgZ2VvZ3JhcGhpY2FsIGFyZWEgdGhhdCBncm91cHMgdGhlIE5SQ2VsbERVcy4KICAgICAgICAgICAgQSBTZWN0b3IgaW5zdGFuY2UgY2FuIGdyb3VwIG1hbnkgTlJDZWxsRFVzLgogICAgICAgICAgICBBbiBOUkNlbGxEVSBpbnN0YW5jZSBjYW4gb25seSBiZSBncm91cGVkIGJ5IG9uZSBTZWN0b3IuCiAgICAgICAgICAgICI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgZ3JvdXBlZC1uckNlbGxEdSB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJTZWN0b3IgZ3JvdXBzIE5SIENlbGwtRFUuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIFNlY3RvcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KCiAgICAgICAgbGVhZiBncm91cGVkLWJ5LXNlY3RvciB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJOUiBDZWxsLURVIGdyb3VwZWQgYnkgU2VjdG9yLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBOUkNlbGxEVTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KfQ==
-o-ran-smo-teiv-rel-cloud-ran urn:o-ran:smo-teiv-rel-cloud-ran REL_CLOUD_RAN ["o-ran-smo-teiv-cloud", "o-ran-smo-teiv-ran"] 2024-07-15 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1jbG91ZC1yYW4gewogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LXJlbC1jbG91ZC1yYW4iOwogICAgcHJlZml4IG9yLXRlaXYtY2xvdWR0b3JhbjsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY2xvdWQge3ByZWZpeCBvci10ZWl2LWNsb3VkOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LXJhbiB7cHJlZml4IG9yLXRlaXYtcmFuOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBDbG91ZCB0byBSQU4gTG9naWNhbCB0b3BvbG9neSBtb2RlbC4KCiAgICAgICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgUkFOIENsb3VkIHRvIFJBTiBMb2dpY2FsIHRvcG9sb2d5IHJlbGF0aW9ucy4KCiAgICAgICAgQ29weXJpZ2h0IChDKSAyMDI0IEVyaWNzc29uCiAgICAgICAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogICAgICAgIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7CiAgICAgICAgeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLgogICAgICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKCiAgICAgICAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZQogICAgICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICAgICAgICBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KICAgICAgICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiAgICAgICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgogICAgICAgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wIjsKCiAgICByZXZpc2lvbiAiMjAyNC0wNS0wMiIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIHJldmlzaW9uICIyMDI0LTA3LTE1IiB7CiAgICAgICAgZGVzY3JpcHRpb24gIlRoaXMgcmV2aXNpb24gYWxpZ25zIE8tUkFOIFdvcmsgR3JvdXAgMTAgU3RhZ2UgMiBTcGVjaWZpY2F0aW9uIChPLVJBTi5XRzEwLlRFJklWLUNJTUkuMC1SMDA0LnYwMi4wMCkiOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICBvci10ZWl2LXlleHQ6ZG9tYWluIFJFTF9DTE9VRF9SQU47CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBORkRFUExPWU1FTlRfU0VSVkVTX09EVUZVTkNUSU9OIHsgLy8gMC4ubiB0byAwLi5tCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3Qgc2VydmljZWQtb2R1RnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1EVSBGdW5jdGlvbiBzZXJ2aWNlZCBieSB0aGlzIE5GIERlcGxveW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtY2xvdWQ6TkZEZXBsb3ltZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3Qgc2VydmluZy1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCB0aGF0IHNlcnZlcyB0aGlzIE8tRFUgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtcmFuOk9EVUZ1bmN0aW9uOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTkZERVBMT1lNRU5UX1NFUlZFU19PQ1VDUEZVTkNUSU9OIHsgLy8gMC4ubiB0byAwLi5tCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3Qgc2VydmljZWQtb2N1Y3BGdW5jdGlvbiB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLUNVLUNQIEZ1bmN0aW9uIHNlcnZpY2VkIGJ5IHRoaXMgTkYgRGVwbG95bWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1jbG91ZDpORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aW5nLW5GRGVwbG95bWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJORiBEZXBsb3ltZW50IHRoYXQgc2VydmVzIHRoaXMgTy1DVS1DUCBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0NVQ1BGdW5jdGlvbjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5GREVQTE9ZTUVOVF9TRVJWRVNfT0NVVVBGVU5DVElPTiB7IC8vIDAuLm4gdG8gMC4ubQoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHNlcnZpY2VkLW9jdXVwRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DVS1VUCBGdW5jdGlvbiBzZXJ2aWNlZCBieSB0aGlzIE5GIERlcGxveW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtY2xvdWQ6TkZEZXBsb3ltZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3Qgc2VydmluZy1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCB0aGF0IHNlcnZlcyB0aGlzIE8tQ1UtVVAgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtcmFuOk9DVVVQRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBORkRFUExPWU1FTlRfU0VSVkVTX05FQVJSVFJJQ0ZVTkNUSU9OIHsgLy8gMC4ubiB0byAwLi5tCgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3Qgc2VydmljZWQtbmVhclJUUklDRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmVhclJUUklDRnVuY3Rpb24gc2VydmljZWQgYnkgdGhpcyBORiBEZXBsb3ltZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBvci10ZWl2LWNsb3VkOk5GRGVwbG95bWVudDsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KCiAgICAgICAgbGVhZi1saXN0IHNlcnZpbmctbkZEZXBsb3ltZW50IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk5GIERlcGxveW1lbnQgdGhhdCBzZXJ2ZXMgdGhpcyBOZWFyUlRSSUNGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46TmVhclJUUklDRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9Cn0=
-o-ran-smo-teiv-rel-equipment-ran urn:o-ran:smo-teiv-rel-equipment-ran REL_EQUIPMENT_RAN ["o-ran-smo-teiv-equipment", "o-ran-smo-teiv-ran"] 2024-10-08 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1lcXVpcG1lbnQtcmFuIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1yZWwtZXF1aXBtZW50LXJhbiI7CiAgICBwcmVmaXggb3ItdGVpdi1yZWwtZXF1aXByYW47CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLXR5cGVzIHsgcHJlZml4IG9yLXRlaXYtdHlwZXM7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7IHByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtZXF1aXBtZW50IHsgcHJlZml4IG9yLXRlaXYtZXF1aXA7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtcmFuIHsgcHJlZml4IG9yLXRlaXYtcmFuOyB9CgoKICAgIG9yZ2FuaXphdGlvbiAiT1JBTiI7CiAgICBjb250YWN0ICJUaGUgQXV0aG9ycyI7CiAgICBkZXNjcmlwdGlvbiAKICAgICJSQU4gRXF1aXBtZW50IHRvIExvZ2ljYWwgdG9wb2xvZ3kgbW9kZWwuCgogICAgVGhpcyBtb2RlbCBjb250YWlucyB0aGUgUkFOIEVxdWlwbWVudCB0byBMb2dpY2FsIHRvcG9sb2d5CiAgICBlbnRpdGllcyBhbmQgcmVsYXRpb25zLgoKICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgTW9kaWZpY2F0aW9ucyBDb3B5cmlnaHQgKEMpIDIwMjQgT3BlbkluZnJhIEZvdW5kYXRpb24gRXVyb3BlCgogICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsKICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAoKICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMAoKICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUywKICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLgogICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAogICAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCgogICAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjAiOwoKICAgIHJldmlzaW9uICIyMDI0LTEwLTA4IiB7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIkFkZGVkIG5ldyByZWxhdGlvbnNoaXAgQU5URU5OQU1PRFVMRV9TRVJWRVNfTlJDRUxMRFUuIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC41LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmcsIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAgdG8gdGhlIHRvcG9sb2d5IG9iamVjdC4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjQuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNS0yNCIgewogICAgICAgIGRlc2NyaXB0aW9uICJJbml0aWFsIHJldmlzaW9uLiI7CiAgICAgICAgb3ItdGVpdi15ZXh0OmxhYmVsIDAuMy4wOwogICAgfQoKICAgIG9yLXRlaXYteWV4dDpkb21haW4gUkVMX0VRVUlQTUVOVF9SQU47CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBBTlRFTk5BTU9EVUxFX1NFUlZFU19BTlRFTk5BQ0FQQUJJTElUWSB7IC8vIDAuLm4gdG8gMC4ubQoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBBbnRlbm5hTW9kdWxlIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgQW50ZW5uYUNhcGFiaWxpdHkgdHlwZS4KICAgICAgICAgICAgVGhlIEFudGVubmFNb2R1bGUgcmVwcmVzZW50cyB0aGUgcGh5c2ljYWwgYW50ZW5uYSB0aGF0IHNlcnZlcyB0aGUgQW50ZW5uYUNhcGFiaWxpdHkuCiAgICAgICAgICAgIEFuIEFudGVubmFNb2R1bGUgaW5zdGFuY2UgY2FuIHNlcnZlIG1hbnkgQW50ZW5uYUNhcGFiaWxpdGllcy4KICAgICAgICAgICAgQW4gQW50ZW5uYUNhcGFiaWxpdHkgaW5zdGFuY2UgY2FuIGJlIHNlcnZlZCBieSBtYW55IEFudGVubmFNb2R1bGVzLgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IHNlcnZpY2VkLWFudGVubmFDYXBhYmlsaXR5IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIkFudGVubmEgQ2FwYWJpbGl0eSBzZXJ2aWNlZCBieSB0aGlzIEFudGVubmEgTW9kdWxlLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDphU2lkZSBvci10ZWl2LWVxdWlwOkFudGVubmFNb2R1bGU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYtbGlzdCBzZXJ2aW5nLWFudGVubmFNb2R1bGUgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiQW50ZW5uYSBNb2R1bGUgc2VydmVzIHRoaXMgQW50ZW5uYSBDYXBhYmlsaXR5LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LXJhbjpBbnRlbm5hQ2FwYWJpbGl0eTsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIFNFQ1RPUl9HUk9VUFNfQU5URU5OQU1PRFVMRSB7IC8vIDAuLjEgdG8gMC4ubgoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBBbnRlbm5hTW9kdWxlIHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgTlJDZWxsRFUgdHlwZS4KICAgICAgICAgICAgVGhlIEFudGVubmFNb2R1bGUgcmVwcmVzZW50cyB0aGUgcGh5c2ljYWwgYW50ZW5uYSB0aGF0IHNlcnZlcyB0aGUgTlJDZWxsRFUuCiAgICAgICAgICAgIEFuIEFudGVubmFNb2R1bGUgaW5zdGFuY2UgY2FuIHNlcnZlIG1hbnkgTlJDZWxsRFVzLgogICAgICAgICAgICBBbiBOUkNlbGxEVSBpbnN0YW5jZSBjYW4gYmUgc2VydmVkIGJ5IG1hbnkgQW50ZW5uYU1vZHVsZXMuCiAgICAgICAgICAgICI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgZ3JvdXBlZC1hbnRlbm5hTW9kdWxlIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIlNlY3RvciBncm91cHMgQW50ZW5uYSBNb2R1bGUuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtcmFuOlNlY3RvcjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgIH0KCiAgICAgICAgbGVhZiBncm91cGVkLWJ5LXNlY3RvciB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJBbnRlbm5hIE1vZHVsZSBncm91cGVkIGJ5IFNlY3Rvci4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1lcXVpcDpBbnRlbm5hTW9kdWxlOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgU0VDVE9SX0dST1VQU19BTlRFTk5BTU9EVUxFIHsgLy8gMC4uMSB0byAwLi5uCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIFNlY3RvciB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIEFudGVubmFNb2R1bGUgdHlwZS4KICAgICAgICAgICAgVGhlIFNlY3RvciByZXByZXNlbnRzIHRoZSBnZW9ncmFwaGljYWwgYXJlYSB0aGF0IGdyb3VwcyB0aGUgQW50ZW5uYU1vZHVsZXMuCiAgICAgICAgICAgIEEgU2VjdG9yIGluc3RhbmNlIGNhbiBncm91cCBtYW55IEFudGVubmFNb2R1bGVzLgogICAgICAgICAgICBBbiBBbnRlbm5hTW9kdWxlIGluc3RhbmNlIGNhbiBvbmx5IGJlIGdyb3VwZWQgYnkgb25lIFNlY3Rvci4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX1JlbGF0aW9uc2hpcF9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBncm91cGVkLWFudGVubmFNb2R1bGUgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiU2VjdG9yIGdyb3VwcyBBbnRlbm5hIE1vZHVsZS4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1yYW46U2VjdG9yOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIGdyb3VwZWQtYnktc2VjdG9yIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIkFudGVubmEgTW9kdWxlIGdyb3VwZWQgYnkgU2VjdG9yLiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LWVxdWlwOkFudGVubmFNb2R1bGU7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CiAgICB9Cn0=
-o-ran-smo-teiv-rel-oam-cloud urn:o-ran:smo-teiv-rel-oam-cloud REL_OAM_CLOUD ["o-ran-smo-teiv-oam", "o-ran-smo-teiv-cloud"] 2024-07-15 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1vYW0tY2xvdWQgewogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOm8tcmFuOnNtby10ZWl2LXJlbC1vYW0tY2xvdWQiOwogICAgcHJlZml4IG9yLXRlaXYtb2FtdG9jbG91ZDsKCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctdHlwZXMge3ByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMge3ByZWZpeCBvci10ZWl2LXlleHQ7IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtb2FtIHtwcmVmaXggb3ItdGVpdi1vYW07IH0KCiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY2xvdWQge3ByZWZpeCBvci10ZWl2LWNsb3VkOyB9CgogICAgb3JnYW5pemF0aW9uICJPUkFOIjsKICAgIGNvbnRhY3QgIlRoZSBBdXRob3JzIjsKICAgIGRlc2NyaXB0aW9uCiAgICAgICAgIlJBTiBPJk0gdG8gQ2xvdWQgdG9wb2xvZ3kgbW9kZWwuCgogICAgICAgIFRoaXMgbW9kZWwgY29udGFpbnMgdGhlIFJBTiBPJk0gdG8gQ2xvdWQgdG9wb2xvZ3kgcmVsYXRpb25zCgogICAgICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgICAgIE1vZGlmaWNhdGlvbnMgQ29weXJpZ2h0IChDKSAyMDI0IE9wZW5JbmZyYSBGb3VuZGF0aW9uIEV1cm9wZQoKICAgICAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpOwogICAgICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgICAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCgogICAgICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgICAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsCiAgICAgICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiAgICAgICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAogICAgICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKICAgICAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCI7CgogICAgcmV2aXNpb24gIjIwMjQtMDUtMDIiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiSW5pdGlhbCByZXZpc2lvbi4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjMuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNy0xNSIgewogICAgICAgIGRlc2NyaXB0aW9uICJUaGlzIHJldmlzaW9uIGFsaWducyBPLVJBTiBXb3JrIEdyb3VwIDEwIFN0YWdlIDIgU3BlY2lmaWNhdGlvbiAoTy1SQU4uV0cxMC5URSZJVi1DSU1JLjAtUjAwNC52MDIuMDApIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC40LjA7CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmRvbWFpbiBSRUxfT0FNX0NMT1VEOwoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfREVQTE9ZRURfQVNfQ0xPVURJRklFRE5GIHsgIC8vIDAuLjEgdG8gMQoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZiBkZXBsb3llZC1hcy1jbG91ZGlmaWVkTkYgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IGRlcGxveWVkIGFzIENsb3VkaWZpZWQgTkYuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIGRlcGxveWVkLW1hbmFnZWRFbGVtZW50IHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIkNsb3VkaWZpZWQgTkYgZGVwbG95cyBNYW5hZ2VkIEVsZW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtY2xvdWQ6Q2xvdWRpZmllZE5GOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE5GREVQTE9ZTUVOVF9TRVJWRVNfTUFOQUdFREVMRU1FTlQgeyAvLyAxLi5uIHRvIDEKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYgc2VydmljZWQtbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IHNlcnZpY2VkIGJ5IHRoaXMgTkYgRGVwbG95bWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1jbG91ZDpORkRlcGxveW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQoKICAgICAgICBsZWFmLWxpc3Qgc2VydmluZy1uRkRlcGxveW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTkYgRGVwbG95bWVudCB0aGF0IHNlcnZlcyB0aGlzIE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1vYW06TWFuYWdlZEVsZW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWluLWVsZW1lbnRzIDE7CiAgICAgICAgfQogICAgfQp9
-o-ran-smo-teiv-rel-oam-ran urn:o-ran:smo-teiv-rel-oam-ran REL_OAM_RAN ["o-ran-smo-teiv-oam", "o-ran-smo-teiv-ran"] 2024-10-04 bW9kdWxlIG8tcmFuLXNtby10ZWl2LXJlbC1vYW0tcmFuIHsKICAgIHlhbmctdmVyc2lvbiAxLjE7CiAgICBuYW1lc3BhY2UgInVybjpvLXJhbjpzbW8tdGVpdi1yZWwtb2FtLXJhbiI7CiAgICBwcmVmaXggb3ItdGVpdi1yZWwtb2FtcmFuOwoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyB7IHByZWZpeCBvci10ZWl2LXR5cGVzOyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LWNvbW1vbi15YW5nLWV4dGVuc2lvbnMgeyBwcmVmaXggb3ItdGVpdi15ZXh0OyB9CgogICAgaW1wb3J0IG8tcmFuLXNtby10ZWl2LW9hbSB7IHByZWZpeCBvci10ZWl2LW9hbTsgfQoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1yYW4geyBwcmVmaXggb3ItdGVpdi1yYW47IH0KCiAgICBvcmdhbml6YXRpb24gIk9SQU4iOwogICAgY29udGFjdCAiVGhlIEF1dGhvcnMiOwogICAgZGVzY3JpcHRpb24KICAgICAgICAiUkFOIE8mTSB0byBMb2dpY2FsIHRvcG9sb2d5IG1vZGVsLgoKICAgICAgICBUaGlzIG1vZGVsIGNvbnRhaW5zIHRoZSBSQU4gTyZNIHRvIExvZ2ljYWwgdG9wb2xvZ3kgcmVsYXRpb25zCgogICAgICAgIENvcHlyaWdodCAoQykgMjAyNCBFcmljc3NvbgogICAgICAgIE1vZGlmaWNhdGlvbnMgQ29weXJpZ2h0IChDKSAyMDI0IE9wZW5JbmZyYSBGb3VuZGF0aW9uIEV1cm9wZQoKICAgICAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpOwogICAgICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KICAgICAgICBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQKCiAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCgogICAgICAgIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmUKICAgICAgICBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsCiAgICAgICAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCiAgICAgICAgU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZAogICAgICAgIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgoKICAgICAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMCI7CgogICAgcmV2aXNpb24gIjIwMjQtMTAtMDQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiQWRkZWQgZ3JvdXBpbmcsIE9yaWdpbl9SZWxhdGlvbnNoaXBfTWFwcGluZ19HcnAgdG8gdGhlIHRvcG9sb2d5IG9iamVjdC4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjUuMDsKICAgIH0KCiAgICByZXZpc2lvbiAiMjAyNC0wNy0xNSIgewogICAgICAgIGRlc2NyaXB0aW9uICJUaGlzIHJldmlzaW9uIGFsaWducyBPLVJBTiBXb3JrIEdyb3VwIDEwIFN0YWdlIDIgU3BlY2lmaWNhdGlvbiAoTy1SQU4uV0cxMC5URSZJVi1DSU1JLjAtUjAwNC52MDIuMDApIjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC40LjA7CiAgICB9CgogICAgcmV2aXNpb24gIjIwMjQtMDUtMjQiIHsKICAgICAgICBkZXNjcmlwdGlvbiAiSW5pdGlhbCByZXZpc2lvbi4iOwogICAgICAgIG9yLXRlaXYteWV4dDpsYWJlbCAwLjMuMDsKICAgIH0KCiAgICBvci10ZWl2LXlleHQ6ZG9tYWluIFJFTF9PQU1fUkFOOwoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfTUFOQUdFU19PRFVGVU5DVElPTiB7ICAgIC8vIDEgdG8gMC4ubgoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBNYW5hZ2VkRWxlbWVudCB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE9EVUZ1bmN0aW9uIHR5cGUuCiAgICAgICAgICAgIFRoZSBNYW5hZ2VkRWxlbWVudCByZXByZXNlbnRzIHRoZSBub2RlIHRoYXQgbWFuYWdlcyB0aGUgT0RVRnVuY3Rpb24uCiAgICAgICAgICAgIEEgTWFuYWdlZEVsZW1lbnQgaW5zdGFuY2UgY2FuIG1hbmFnZSBtYW55IE9EVUZ1bmN0aW9ucy4KICAgICAgICAgICAgQW4gT0RVRnVuY3Rpb24gaW5zdGFuY2UgbXVzdCBiZSBtYW5hZ2VkIGJ5IG9uZSBNYW5hZ2VkRWxlbWVudC4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBtYW5hZ2VkLW9kdUZ1bmN0aW9uIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk1hbmFnZWQgRWxlbWVudCBtYW5hZ2VzIE8tRFUgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1EVSBGdW5jdGlvbiBtYW5hZ2VkIGJ5IE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0RVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfTUFOQUdFU19PQ1VDUEZVTkNUSU9OIHsgICAgLy8gMSB0byAwLi5uCgogICAgICAgIGRlc2NyaXB0aW9uCiAgICAgICAgICAgICJUaGUgYVNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE1hbmFnZWRFbGVtZW50IHR5cGUuCiAgICAgICAgICAgIFRoZSBiU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgT0NVQ1BGdW5jdGlvbiB0eXBlLgogICAgICAgICAgICBUaGUgTWFuYWdlZEVsZW1lbnQgcmVwcmVzZW50cyB0aGUgbm9kZSB0aGF0IG1hbmFnZXMgdGhlIE9DVUNQRnVuY3Rpb24uCiAgICAgICAgICAgIEEgTWFuYWdlZEVsZW1lbnQgaW5zdGFuY2UgY2FuIG1hbmFnZSBtYW55IE9DVUNQRnVuY3Rpb25zLgogICAgICAgICAgICBBbiBPQ1VDUEZ1bmN0aW9uIGluc3RhbmNlIG11c3QgYmUgbWFuYWdlZCBieSBvbmUgTWFuYWdlZEVsZW1lbnQuCiAgICAgICAgICAgICI7CgogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpUb3BfR3JwX1R5cGU7CiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOk9yaWdpbl9FbnRpdHlfTWFwcGluZ19HcnA7CiAgICAgICAga2V5IGlkOwoKICAgICAgICBsZWFmLWxpc3QgbWFuYWdlZC1vY3VjcEZ1bmN0aW9uIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk1hbmFnZWQgRWxlbWVudCBtYW5hZ2VzIE8tQ1UtQ1AgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1DVS1DUCBGdW5jdGlvbiBtYW5hZ2VkIGJ5IE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T0NVQ1BGdW5jdGlvbjsKICAgICAgICAgICAgdHlwZSBpbnN0YW5jZS1pZGVudGlmaWVyOwogICAgICAgICAgICBtYW5kYXRvcnkgdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgb3ItdGVpdi15ZXh0OmJpRGlyZWN0aW9uYWxUb3BvbG9neVJlbGF0aW9uc2hpcCBNQU5BR0VERUxFTUVOVF9NQU5BR0VTX09DVVVQRlVOQ1RJT04geyAgICAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgTWFuYWdlZEVsZW1lbnQgdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBPQ1VVUEZ1bmN0aW9uIHR5cGUuCiAgICAgICAgICAgIFRoZSBNYW5hZ2VkRWxlbWVudCByZXByZXNlbnRzIHRoZSBub2RlIHRoYXQgbWFuYWdlcyB0aGUgT0NVVVBGdW5jdGlvbi4KICAgICAgICAgICAgQSBNYW5hZ2VkRWxlbWVudCBpbnN0YW5jZSBjYW4gbWFuYWdlIG1hbnkgT0NVVVBGdW5jdGlvbnMuCiAgICAgICAgICAgIEFuIE9DVVVQRnVuY3Rpb24gaW5zdGFuY2UgbXVzdCBiZSBtYW5hZ2VkIGJ5IG9uZSBNYW5hZ2VkRWxlbWVudC4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBtYW5hZ2VkLW9jdXVwRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IG1hbmFnZXMgTy1DVS1VUCBGdW5jdGlvbi4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YVNpZGUgb3ItdGVpdi1vYW06TWFuYWdlZEVsZW1lbnQ7CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICB9CgogICAgICAgIGxlYWYgbWFuYWdlZC1ieS1tYW5hZ2VkRWxlbWVudCB7CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJPLUNVLVVQIEZ1bmN0aW9uIG1hbmFnZWQgYnkgTWFuYWdlZCBFbGVtZW50LiI7CiAgICAgICAgICAgIG9yLXRlaXYteWV4dDpiU2lkZSBvci10ZWl2LXJhbjpPQ1VVUEZ1bmN0aW9uOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KCiAgICBvci10ZWl2LXlleHQ6YmlEaXJlY3Rpb25hbFRvcG9sb2d5UmVsYXRpb25zaGlwIE1BTkFHRURFTEVNRU5UX01BTkFHRVNfT1JVRlVOQ1RJT04geyAgICAvLyAxIHRvIDAuLm4KCiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICAgICAgIlRoZSBhU2lkZSBvZiB0aGlzIHJlbGF0aW9uc2hpcCBpcyBhbiBpbnN0YW5jZSBvZiB0aGUgTWFuYWdlZEVsZW1lbnQgdHlwZS4KICAgICAgICAgICAgVGhlIGJTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBPUlVGdW5jdGlvbiB0eXBlLgogICAgICAgICAgICBUaGUgTWFuYWdlZEVsZW1lbnQgcmVwcmVzZW50cyB0aGUgbm9kZSB0aGF0IG1hbmFnZXMgdGhlIE9SVUZ1bmN0aW9uLgogICAgICAgICAgICBBIE1hbmFnZWRFbGVtZW50IGluc3RhbmNlIGNhbiBtYW5hZ2UgbWFueSBPUlVGdW5jdGlvbi4KICAgICAgICAgICAgQW4gT1JVRnVuY3Rpb24gaW5zdGFuY2UgbXVzdCBiZSBtYW5hZ2VkIGJ5IG9uZSBNYW5hZ2VkRWxlbWVudC4KICAgICAgICAgICAgIjsKCiAgICAgICAgdXNlcyBvci10ZWl2LXR5cGVzOlRvcF9HcnBfVHlwZTsKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6T3JpZ2luX0VudGl0eV9NYXBwaW5nX0dycDsKICAgICAgICBrZXkgaWQ7CgogICAgICAgIGxlYWYtbGlzdCBtYW5hZ2VkLW9ydUZ1bmN0aW9uIHsKICAgICAgICAgICAgZGVzY3JpcHRpb24gIk1hbmFnZWQgRWxlbWVudCBtYW5hZ2VzIE8tUlUgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTy1SVSBGdW5jdGlvbiBtYW5hZ2VkIGJ5IE1hbmFnZWQgRWxlbWVudC4iOwogICAgICAgICAgICBvci10ZWl2LXlleHQ6YlNpZGUgb3ItdGVpdi1yYW46T1JVRnVuY3Rpb247CiAgICAgICAgICAgIHR5cGUgaW5zdGFuY2UtaWRlbnRpZmllcjsKICAgICAgICAgICAgbWFuZGF0b3J5IHRydWU7CiAgICAgICAgfQogICAgfQoKICAgIG9yLXRlaXYteWV4dDpiaURpcmVjdGlvbmFsVG9wb2xvZ3lSZWxhdGlvbnNoaXAgTUFOQUdFREVMRU1FTlRfTUFOQUdFU19ORUFSUlRSSUNGVU5DVElPTiB7ICAgIC8vIDEgdG8gMC4ubgoKICAgICAgICBkZXNjcmlwdGlvbgogICAgICAgICAgICAiVGhlIGFTaWRlIG9mIHRoaXMgcmVsYXRpb25zaGlwIGlzIGFuIGluc3RhbmNlIG9mIHRoZSBNYW5hZ2VkRWxlbWVudCB0eXBlLgogICAgICAgICAgICBUaGUgYlNpZGUgb2YgdGhpcyByZWxhdGlvbnNoaXAgaXMgYW4gaW5zdGFuY2Ugb2YgdGhlIE5lYXJSVFJJQ0Z1bmN0aW9uIHR5cGUuCiAgICAgICAgICAgIFRoZSBNYW5hZ2VkRWxlbWVudCByZXByZXNlbnRzIHRoZSBub2RlIHRoYXQgbWFuYWdlcyB0aGUgTmVhclJUUklDRnVuY3Rpb24uCiAgICAgICAgICAgIEEgTWFuYWdlZEVsZW1lbnQgaW5zdGFuY2UgY2FuIG1hbmFnZSBtYW55IE5lYXJSVFJJQ0Z1bmN0aW9uLgogICAgICAgICAgICBBbiBOZWFyUlRSSUNGdW5jdGlvbiBpbnN0YW5jZSBtdXN0IGJlIG1hbmFnZWQgYnkgb25lIE1hbmFnZWRFbGVtZW50LgogICAgICAgICAgICAiOwoKICAgICAgICB1c2VzIG9yLXRlaXYtdHlwZXM6VG9wX0dycF9UeXBlOwogICAgICAgIHVzZXMgb3ItdGVpdi10eXBlczpPcmlnaW5fRW50aXR5X01hcHBpbmdfR3JwOwogICAgICAgIGtleSBpZDsKCiAgICAgICAgbGVhZi1saXN0IG1hbmFnZWQtbmVhclJUUklDRnVuY3Rpb24gewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTWFuYWdlZCBFbGVtZW50IG1hbmFnZXMgTmVhciBSVCBSSUMgRnVuY3Rpb24uIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmFTaWRlIG9yLXRlaXYtb2FtOk1hbmFnZWRFbGVtZW50OwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgfQoKICAgICAgICBsZWFmIG1hbmFnZWQtYnktbWFuYWdlZEVsZW1lbnQgewogICAgICAgICAgICBkZXNjcmlwdGlvbiAiTmVhciBSVCBSSUMgRnVuY3Rpb24gbWFuYWdlZCBieSBNYW5hZ2VkIEVsZW1lbnQuIjsKICAgICAgICAgICAgb3ItdGVpdi15ZXh0OmJTaWRlIG9yLXRlaXYtcmFuOk5lYXJSVFJJQ0Z1bmN0aW9uOwogICAgICAgICAgICB0eXBlIGluc3RhbmNlLWlkZW50aWZpZXI7CiAgICAgICAgICAgIG1hbmRhdG9yeSB0cnVlOwogICAgICAgIH0KICAgIH0KfQ==
-\.
-
-COPY ties_model.entity_info("storedAt", "name", "moduleReferenceName", "attributeNames") FROM stdin;
-o-ran-smo-teiv-cloud_CloudifiedNF CloudifiedNF o-ran-smo-teiv-cloud ["name"]
-o-ran-smo-teiv-cloud_NFDeployment NFDeployment o-ran-smo-teiv-cloud ["name"]
-o-ran-smo-teiv-cloud_NodeCluster NodeCluster o-ran-smo-teiv-cloud ["name"]
-o-ran-smo-teiv-cloud_OCloudNamespace OCloudNamespace o-ran-smo-teiv-cloud ["name"]
-o-ran-smo-teiv-cloud_OCloudSite OCloudSite o-ran-smo-teiv-cloud ["geo-location", "name"]
-o-ran-smo-teiv-equipment_AntennaModule AntennaModule o-ran-smo-teiv-equipment ["antennaBeamWidth", "antennaModelNumber", "azimuth", "electricalAntennaTilt", "geo-location", "horizontalBeamWidth", "mechanicalAntennaBearing", "mechanicalAntennaTilt", "positionWithinSector", "totalTilt", "verticalBeamWidth"]
-o-ran-smo-teiv-equipment_Site Site o-ran-smo-teiv-equipment ["geo-location", "name"]
-o-ran-smo-teiv-oam_ManagedElement ManagedElement o-ran-smo-teiv-oam []
-o-ran-smo-teiv-ran_AntennaCapability AntennaCapability o-ran-smo-teiv-ran ["eUtranFqBands", "geranFqBands", "nRFqBands"]
-o-ran-smo-teiv-ran_NRCellCU NRCellCU o-ran-smo-teiv-ran ["cellLocalId", "nCI", "nRTAC", "plmnId"]
-o-ran-smo-teiv-ran_NRCellDU NRCellDU o-ran-smo-teiv-ran ["cellLocalId", "nCI", "nRPCI", "nRTAC"]
-o-ran-smo-teiv-ran_NRSectorCarrier NRSectorCarrier o-ran-smo-teiv-ran ["arfcnDL", "arfcnUL", "bSChannelBwDL", "frequencyDL", "frequencyUL"]
-o-ran-smo-teiv-ran_NearRTRICFunction NearRTRICFunction o-ran-smo-teiv-ran ["nearRtRicId", "pLMNId"]
-o-ran-smo-teiv-ran_OCUCPFunction OCUCPFunction o-ran-smo-teiv-ran ["gNBCUName", "gNBId", "gNBIdLength", "pLMNId"]
-o-ran-smo-teiv-ran_OCUUPFunction OCUUPFunction o-ran-smo-teiv-ran ["gNBId", "gNBIdLength", "pLMNIdList"]
-o-ran-smo-teiv-ran_ODUFunction ODUFunction o-ran-smo-teiv-ran ["gNBDUId", "gNBId", "gNBIdLength"]
-o-ran-smo-teiv-ran_ORUFunction ORUFunction o-ran-smo-teiv-ran ["oruId"]
-o-ran-smo-teiv-ran_Sector Sector o-ran-smo-teiv-ran ["azimuth", "geo-location", "sectorId"]
-\.
-
-COPY ties_model.relationship_info("name", "aSideAssociationName", "aSideMOType", "aSideModule", "aSideMinCardinality", "aSideMaxCardinality", "bSideAssociationName", "bSideMOType", "bSideModule", "bSideMinCardinality", "bSideMaxCardinality", "associationKind", "connectSameEntity", "relationshipDataLocation", "storedAt", "moduleReferenceName") FROM stdin;
-ANTENNAMODULE_INSTALLED_AT_SITE installed-at-site AntennaModule o-ran-smo-teiv-equipment 0 9223372036854775807 installed-antennaModule Site o-ran-smo-teiv-equipment 0 1 BI_DIRECTIONAL false A_SIDE o-ran-smo-teiv-equipment_AntennaModule o-ran-smo-teiv-equipment
-ANTENNAMODULE_SERVES_ANTENNACAPABILITY serviced-antennaCapability AntennaModule o-ran-smo-teiv-equipment 0 9223372036854775807 serving-antennaModule AntennaCapability o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false RELATION o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_ANTENNACAPABILITY o-ran-smo-teiv-rel-equipment-ran
-CLOUDIFIEDNF_COMPRISES_NFDEPLOYMENT comprised-nFDeployment CloudifiedNF o-ran-smo-teiv-cloud 1 1 comprised-by-cloudifiedNF NFDeployment o-ran-smo-teiv-cloud 1 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-cloud_NFDeployment o-ran-smo-teiv-cloud
-MANAGEDELEMENT_DEPLOYED_AS_CLOUDIFIEDNF deployed-as-cloudifiedNF ManagedElement o-ran-smo-teiv-oam 1 1 deployed-managedElement CloudifiedNF o-ran-smo-teiv-cloud 0 1 BI_DIRECTIONAL false A_SIDE o-ran-smo-teiv-oam_ManagedElement o-ran-smo-teiv-rel-oam-cloud
-MANAGEDELEMENT_MANAGES_NEARRTRICFUNCTION managed-nearRTRICFunction ManagedElement o-ran-smo-teiv-oam 1 1 managed-by-managedElement NearRTRICFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_NearRTRICFunction o-ran-smo-teiv-rel-oam-ran
-MANAGEDELEMENT_MANAGES_OCUCPFUNCTION managed-ocucpFunction ManagedElement o-ran-smo-teiv-oam 1 1 managed-by-managedElement OCUCPFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_OCUCPFunction o-ran-smo-teiv-rel-oam-ran
-MANAGEDELEMENT_MANAGES_OCUUPFUNCTION managed-ocuupFunction ManagedElement o-ran-smo-teiv-oam 1 1 managed-by-managedElement OCUUPFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_OCUUPFunction o-ran-smo-teiv-rel-oam-ran
-MANAGEDELEMENT_MANAGES_ODUFUNCTION managed-oduFunction ManagedElement o-ran-smo-teiv-oam 1 1 managed-by-managedElement ODUFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_ODUFunction o-ran-smo-teiv-rel-oam-ran
-MANAGEDELEMENT_MANAGES_ORUFUNCTION managed-oruFunction ManagedElement o-ran-smo-teiv-oam 1 1 managed-by-managedElement ORUFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_ORUFunction o-ran-smo-teiv-rel-oam-ran
-NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE deployed-on-ocloudNamespace NFDeployment o-ran-smo-teiv-cloud 1 9223372036854775807 deployed-nFDeployment OCloudNamespace o-ran-smo-teiv-cloud 1 9223372036854775807 BI_DIRECTIONAL false RELATION o-ran-smo-teiv-cloud_NFDEPLOYMENT_DEPLOYED_ON_OCLOUDNAMESPACE o-ran-smo-teiv-cloud
-NFDEPLOYMENT_SERVES_MANAGEDELEMENT serviced-managedElement NFDeployment o-ran-smo-teiv-cloud 1 9223372036854775807 serving-nFDeployment ManagedElement o-ran-smo-teiv-oam 1 1 BI_DIRECTIONAL false A_SIDE o-ran-smo-teiv-cloud_NFDeployment o-ran-smo-teiv-rel-oam-cloud
-NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION serviced-nearRTRICFunction NFDeployment o-ran-smo-teiv-cloud 0 9223372036854775807 serving-nFDeployment NearRTRICFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false RELATION o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_NEARRTRICFUNCTION o-ran-smo-teiv-rel-cloud-ran
-NFDEPLOYMENT_SERVES_OCUCPFUNCTION serviced-ocucpFunction NFDeployment o-ran-smo-teiv-cloud 0 9223372036854775807 serving-nFDeployment OCUCPFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false RELATION o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUCPFUNCTION o-ran-smo-teiv-rel-cloud-ran
-NFDEPLOYMENT_SERVES_OCUUPFUNCTION serviced-ocuupFunction NFDeployment o-ran-smo-teiv-cloud 0 9223372036854775807 serving-nFDeployment OCUUPFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false RELATION o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_OCUUPFUNCTION o-ran-smo-teiv-rel-cloud-ran
-NFDEPLOYMENT_SERVES_ODUFUNCTION serviced-oduFunction NFDeployment o-ran-smo-teiv-cloud 0 9223372036854775807 serving-nFDeployment ODUFunction o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false RELATION o-ran-smo-teiv-rel-cloud-ran_NFDEPLOYMENT_SERVES_ODUFUNCTION o-ran-smo-teiv-rel-cloud-ran
-NODECLUSTER_LOCATED_AT_OCLOUDSITE located-at-ocloudSite NodeCluster o-ran-smo-teiv-cloud 1 9223372036854775807 location-of-onodeCluster OCloudSite o-ran-smo-teiv-cloud 1 9223372036854775807 BI_DIRECTIONAL false RELATION o-ran-smo-teiv-cloud_NODECLUSTER_LOCATED_AT_OCLOUDSITE o-ran-smo-teiv-cloud
-NRCELLDU_USES_NRSECTORCARRIER used-nrSectorCarrier NRCellDU o-ran-smo-teiv-ran 0 1 used-by-nrCellDu NRSectorCarrier o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_NRSectorCarrier o-ran-smo-teiv-ran
-NRSECTORCARRIER_USES_ANTENNACAPABILITY used-antennaCapability NRSectorCarrier o-ran-smo-teiv-ran 0 9223372036854775807 used-by-nrSectorCarrier AntennaCapability o-ran-smo-teiv-ran 0 1 BI_DIRECTIONAL false A_SIDE o-ran-smo-teiv-ran_NRSectorCarrier o-ran-smo-teiv-ran
-OCLOUDNAMESPACE_DEPLOYED_ON_NODECLUSTER deployed-on-nodeCluster OCloudNamespace o-ran-smo-teiv-cloud 1 9223372036854775807 deployed-ocloudNamespace NodeCluster o-ran-smo-teiv-cloud 1 1 BI_DIRECTIONAL false A_SIDE o-ran-smo-teiv-cloud_OCloudNamespace o-ran-smo-teiv-cloud
-OCUCPFUNCTION_PROVIDES_NRCELLCU provided-nrCellCu OCUCPFunction o-ran-smo-teiv-ran 1 1 provided-by-ocucpFunction NRCellCU o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_NRCellCU o-ran-smo-teiv-ran
-ODUFUNCTION_PROVIDES_NRCELLDU provided-nrCellDu ODUFunction o-ran-smo-teiv-ran 1 1 provided-by-oduFunction NRCellDU o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_NRCellDU o-ran-smo-teiv-ran
-ODUFUNCTION_PROVIDES_NRSECTORCARRIER provided-nrSectorCarrier ODUFunction o-ran-smo-teiv-ran 1 1 provided-by-oduFunction NRSectorCarrier o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_NRSectorCarrier o-ran-smo-teiv-ran
-SECTOR_GROUPS_ANTENNAMODULE grouped-antennaModule Sector o-ran-smo-teiv-ran 0 1 grouped-by-sector AntennaModule o-ran-smo-teiv-equipment 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-equipment_AntennaModule o-ran-smo-teiv-rel-equipment-ran
-SECTOR_GROUPS_ANTENNAMODULE grouped-antennaModule Sector o-ran-smo-teiv-ran 0 1 grouped-by-sector AntennaModule o-ran-smo-teiv-equipment 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-equipment_AntennaModule o-ran-smo-teiv-rel-equipment-ran
-SECTOR_GROUPS_NRCELLDU grouped-nrCellDu Sector o-ran-smo-teiv-ran 0 1 grouped-by-sector NRCellDU o-ran-smo-teiv-ran 0 9223372036854775807 BI_DIRECTIONAL false B_SIDE o-ran-smo-teiv-ran_NRCellDU o-ran-smo-teiv-ran
-\.
-
-;
-
-COMMIT;
\ No newline at end of file
+++ /dev/null
---
--- ============LICENSE_START=======================================================
--- Copyright (C) 2024 Ericsson
--- Modifications Copyright (C) 2024 OpenInfra Foundation Europe
--- ================================================================================
--- Licensed under the Apache License, Version 2.0 (the "License");
--- you may not use this file except in compliance with the License.
--- You may obtain a copy of the License at
---
--- http://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing, software
--- distributed under the License is distributed on an "AS IS" BASIS,
--- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--- See the License for the specific language governing permissions and
--- limitations under the License.
---
--- SPDX-License-Identifier: Apache-2.0
--- ============LICENSE_END=========================================================
---
-
-BEGIN;
-
-CREATE SCHEMA IF NOT EXISTS ties_consumer_data;
-ALTER SCHEMA ties_consumer_data OWNER TO :pguser;
-SET default_tablespace = '';
-SET default_table_access_method = heap;
-
-SET ROLE :pguser;
-
-CREATE TABLE IF NOT EXISTS ties_consumer_data."module_reference" (
- "name" TEXT PRIMARY KEY,
- "namespace" TEXT,
- "revision" TEXT NOT NULL,
- "content" TEXT NOT NULL,
- "ownerAppId" VARCHAR(511) NOT NULL,
- "status" VARCHAR(127) NOT NULL
-);
-
-CREATE TABLE IF NOT EXISTS ties_consumer_data."decorators" (
- "name" TEXT PRIMARY KEY,
- "dataType" VARCHAR(511) NOT NULL,
- "moduleReferenceName" TEXT NOT NULL,
- FOREIGN KEY ("moduleReferenceName") REFERENCES ties_consumer_data."module_reference" ("name") ON DELETE CASCADE
-);
-
-CREATE TABLE IF NOT EXISTS ties_consumer_data."classifiers" (
- "name" TEXT PRIMARY KEY,
- "moduleReferenceName" TEXT NOT NULL,
- FOREIGN KEY ("moduleReferenceName") REFERENCES ties_consumer_data."module_reference" ("name") ON DELETE CASCADE
-);
-
-COMMIT;
+++ /dev/null
---
--- ============LICENSE_START=======================================================
--- Copyright (C) 2024 Ericsson
--- Modifications Copyright (C) 2024 OpenInfra Foundation Europe
--- ================================================================================
--- Licensed under the Apache License, Version 2.0 (the "License");
--- you may not use this file except in compliance with the License.
--- You may obtain a copy of the License at
---
--- http://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing, software
--- distributed under the License is distributed on an "AS IS" BASIS,
--- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--- See the License for the specific language governing permissions and
--- limitations under the License.
---
--- SPDX-License-Identifier: Apache-2.0
--- ============LICENSE_END=========================================================
---
-
-BEGIN;
-
-COPY ties_consumer_data."module_reference"("name", "namespace", "revision", "content", "ownerAppId", "status") FROM stdin;
-test-app-module urn:o-ran:test-app-module 2024-05-24 bW9kdWxlIHRlc3QtYXBwLW1vZHVsZSB7CgogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOnRlc3QtYXBwLW1vZHVsZSI7CiAgICBwcmVmaXggbW9kdWxlOwoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyB7IHByZWZpeCB0ZXN0OyB9CiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7cHJlZml4IG9yLXRlaXYteWV4dDsgfQoKICAgIHJldmlzaW9uICIyMDI0LTA2LTEwIiB7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICBJbml0aWFsIHJldmlzaW9uLjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgYXVnbWVudCAvdGVzdDpkZWNvcmF0b3JzIHsKICAgICAgICBsZWFmIGxvY2F0aW9uIHsKICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgfQogICAgICAgIGxlYWYgdmVuZG9yIHsKICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgfQogICAgfQoKICAgIGlkZW50aXR5IE91dGRvb3IgewogICAgICAgIGJhc2UgdGVzdDpjbGFzc2lmaWVyczsKICAgIH0KCiAgICBpZGVudGl0eSBSdXJhbCB7CiAgICAgICAgYmFzZSB0ZXN0OmNsYXNzaWZpZXJzOwogICAgfQoKICAgIGlkZW50aXR5IFdlZWtlbmQgewogICAgICAgIGJhc2UgdGVzdDpjbGFzc2lmaWVyczsKICAgIH0KCn0K APP IN_USAGE
-test-app-for-deletion-module urn:o-ran:test-app-for-deletion-module 2024-05-24 bW9kdWxlIHRlc3QtYXBwLW1vZHVsZSB7CgogICAgeWFuZy12ZXJzaW9uIDEuMTsKICAgIG5hbWVzcGFjZSAidXJuOnRlc3QtYXBwLW1vZHVsZSI7CiAgICBwcmVmaXggbW9kdWxlOwoKICAgIGltcG9ydCBvLXJhbi1zbW8tdGVpdi1jb21tb24teWFuZy10eXBlcyB7IHByZWZpeCB0ZXN0OyB9CiAgICBpbXBvcnQgby1yYW4tc21vLXRlaXYtY29tbW9uLXlhbmctZXh0ZW5zaW9ucyB7cHJlZml4IG9yLXRlaXYteWV4dDsgfQoKICAgIHJldmlzaW9uICIyMDI0LTA2LTEwIiB7CiAgICAgICAgZGVzY3JpcHRpb24KICAgICAgICBJbml0aWFsIHJldmlzaW9uLjsKICAgICAgICBvci10ZWl2LXlleHQ6bGFiZWwgMC4zLjA7CiAgICB9CgogICAgYXVnbWVudCAvdGVzdDpkZWNvcmF0b3JzIHsKICAgICAgICBsZWFmIGxvY2F0aW9uIHsKICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgfQogICAgICAgIGxlYWYgdmVuZG9yIHsKICAgICAgICAgICAgdHlwZSBzdHJpbmc7CiAgICAgICAgfQogICAgfQoKICAgIGlkZW50aXR5IE91dGRvb3IgewogICAgICAgIGJhc2UgdGVzdDpjbGFzc2lmaWVyczsKICAgIH0KCiAgICBpZGVudGl0eSBSdXJhbCB7CiAgICAgICAgYmFzZSB0ZXN0OmNsYXNzaWZpZXJzOwogICAgfQoKICAgIGlkZW50aXR5IFdlZWtlbmQgewogICAgICAgIGJhc2UgdGVzdDpjbGFzc2lmaWVyczsKICAgIH0KCn0K APP IN_USAGE
-\.
-
-COPY ties_consumer_data."decorators" ("name", "dataType", "moduleReferenceName" ) FROM stdin;
-test-app-module:textdata TEXT test-app-module
-test-app-module:intdata INT test-app-module
-\.
-
-COPY ties_consumer_data."classifiers" ("name", "moduleReferenceName" ) FROM stdin;
-test-app-module:Indoor test-app-module
-test-app-module:Outdoor test-app-module
-test-app-module:Rural test-app-module
-test-app-module:Weekday test-app-module
-test-app-module:Weekend test-app-module
-\.
-
-COMMIT;
\ No newline at end of file
+++ /dev/null
---
--- ============LICENSE_START=======================================================
--- Copyright (C) 2024 Ericsson
--- Modifications Copyright (C) 2024 OpenInfra Foundation Europe
--- ================================================================================
--- Licensed under the Apache License, Version 2.0 (the "License");
--- you may not use this file except in compliance with the License.
--- You may obtain a copy of the License at
---
--- http://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing, software
--- distributed under the License is distributed on an "AS IS" BASIS,
--- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--- See the License for the specific language governing permissions and
--- limitations under the License.
---
--- SPDX-License-Identifier: Apache-2.0
--- ============LICENSE_END=========================================================
---
-
-COPY ties_data."ManagedElement" (id, fdn) FROM stdin;
-45EF31D8A1FD624D7276390A1215BFC3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=1
-5BF1EECFD543243BE2C1BC52C7B484A0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=2
-23616B5A7FC56C146E3799DD7CA3B0C3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=3
-09ADB418B558918F8E858ECA77CAF22B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=4
-5F404149FF9EDF096764B00CC8D052A3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=5
-E1A1CA9D697DE4371C4014D587088498 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=6
-0DC59E39BAC5E54E5B646D346039C003 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=7
-E07B72DA5F4CD284C9A9EB5A6AE0D5AC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=8
-DA1039E77700A9EEFFA280049ECE9227 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=9
-6F02817AFE4D53237DB235EBE5378613 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=10
-0181BB891A56BBD886771EBA3A69F19A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=11
-1E113BF2E3ABD819E0FBC6C6128BEFE5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=12
-27500EB447000209EE6E3CA1B31FBA92 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=13
-06222D277EE209CD8DCA1FE61CE752E6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=14
-436C59D4065E5222414DAD697C8842D2 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=15
-DC86CA7724113F4C0DF42BFEAA17FD53 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=16
-1F0B4F7CEC39A09ADC16EB8D787978E6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=17
-AEAFE291F1DE32DEFFF0073D297B7693 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=18
-8D51EFC759166044DACBCA63C4EDFC51 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=19
-5BCC1BC502B66423981F90A6EA8D157E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=20
-87812D4D8A6E7AD11694CF6D4815B5C7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=21
-577CA8F71FFC2FC3C39D93D0F28E47EC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=22
-E87AF3DB09EE273C6F153AA00D4D1171 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=23
-A73755B1422176B1169546D884BD9FCC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=24
-D76CCB4E654B2CF5D248196E9B9524AD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=25
-E7CEF72CB78163D1B26B8B2A7A39757A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=26
-E57C2A20E96A8C9E7099BAD60957B59A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=27
-E64371CD4D12ED0CED200DD3A7591784 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ManagedElement=28
-\.
-
-COPY ties_data."CloudSite" (id, "geo-location", name) FROM stdin;
-82AD1C754500A0512FBB57A738F15DE9 POINT(59.4019881 17.9419888) ORAN
-D1E0DC52CF1A6A05C0B59A61A8217005 POINT(59.4019881 17.9419888) ORAN
-C09038081DDD8B353CB2BFF554542D6F POINT(59.4019881 17.9419888) ORAN
-6B24CE7976414BBF5CC71D543F8AD0DD POINT(59.4019881 17.9419888) ORAN
-27871D75A71FEDB483F45CBD138A1323 POINT(59.4019881 17.9419888) ORAN
-B2ED7B123B5733E2B03742988A64FD6B POINT(59.4019881 17.9419888) ORAN
-B240FE61456BDA8398C49FD8B562541F POINT(59.4019881 17.9419888) ORAN
-86353E518688D3CA4BB314BED0324003 POINT(59.4019881 17.9419888) ORAN
-16EE17AE89DF11B69E94B3F6827C2C0E POINT(59.4019881 17.9419888) ORAN
-\.
-
-COPY ties_data."NodeCluster" (id, name, "REL_NODECLUSTER_LOCATED_AT_CLOUDSITE_EIID", "REL_NODECLUSTER_LOCATED_AT_CLOUDSITE") FROM stdin;
-3BFA0DD4B1C990F9E49FA4DB5C24FECD Example NodeCluster/1 urn:base64:Tm9kZUNsdXN0ZXI6M0JGQTBERDRCMUM5OTBGOUU0OUZBNERCNUMyNEZFQ0Q6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODJBRDFDNzU0NTAwQTA1MTJGQkI1N0E3MzhGMTVERTk= 82AD1C754500A0512FBB57A738F15DE9
-1C3FB0A56E3FFFFEAC5DE407715ADDE6 Example NodeCluster/2 urn:base64:Tm9kZUNsdXN0ZXI6MUMzRkIwQTU2RTNGRkZGRUFDNURFNDA3NzE1QURERTY6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODJBRDFDNzU0NTAwQTA1MTJGQkI1N0E3MzhGMTVERTk= 82AD1C754500A0512FBB57A738F15DE9
-7FCF92B9827D67BF58138B16DBDC8249 Example NodeCluster/3 urn:base64:Tm9kZUNsdXN0ZXI6N0ZDRjkyQjk4MjdENjdCRjU4MTM4QjE2REJEQzgyNDk6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODJBRDFDNzU0NTAwQTA1MTJGQkI1N0E3MzhGMTVERTk= 82AD1C754500A0512FBB57A738F15DE9
-F6C0D9E3B2FEA197951D542042665BFD Example NodeCluster/4 urn:base64:Tm9kZUNsdXN0ZXI6RjZDMEQ5RTNCMkZFQTE5Nzk1MUQ1NDIwNDI2NjVCRkQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODJBRDFDNzU0NTAwQTA1MTJGQkI1N0E3MzhGMTVERTk= 82AD1C754500A0512FBB57A738F15DE9
-0CA91F4FA7764AA056EA8F2F759A3305 Example NodeCluster/5 urn:base64:Tm9kZUNsdXN0ZXI6MENBOTFGNEZBNzc2NEFBMDU2RUE4RjJGNzU5QTMzMDU6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODJBRDFDNzU0NTAwQTA1MTJGQkI1N0E3MzhGMTVERTk= 82AD1C754500A0512FBB57A738F15DE9
-B6E895E10C7F1D8EEAE6808C7FAEACF1 Example NodeCluster/6 urn:base64:Tm9kZUNsdXN0ZXI6QjZFODk1RTEwQzdGMUQ4RUVBRTY4MDhDN0ZBRUFDRjE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6RDFFMERDNTJDRjFBNkEwNUMwQjU5QTYxQTgyMTcwMDU= D1E0DC52CF1A6A05C0B59A61A8217005
-2042FF5409C9FA615811F92B1F14149D Example NodeCluster/7 urn:base64:Tm9kZUNsdXN0ZXI6MjA0MkZGNTQwOUM5RkE2MTU4MTFGOTJCMUYxNDE0OUQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6RDFFMERDNTJDRjFBNkEwNUMwQjU5QTYxQTgyMTcwMDU= D1E0DC52CF1A6A05C0B59A61A8217005
-E962ADB61C68FD1ACE07F83EA334F78D Example NodeCluster/8 urn:base64:Tm9kZUNsdXN0ZXI6RTk2MkFEQjYxQzY4RkQxQUNFMDdGODNFQTMzNEY3OEQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6RDFFMERDNTJDRjFBNkEwNUMwQjU5QTYxQTgyMTcwMDU= D1E0DC52CF1A6A05C0B59A61A8217005
-8A697137B4C22CC4E695328CD65EBD8E Example NodeCluster/9 urn:base64:Tm9kZUNsdXN0ZXI6OEE2OTcxMzdCNEMyMkNDNEU2OTUzMjhDRDY1RUJEOEU6TE9DQVRFRF9BVDpDbG91ZFNpdGU6RDFFMERDNTJDRjFBNkEwNUMwQjU5QTYxQTgyMTcwMDU= D1E0DC52CF1A6A05C0B59A61A8217005
-AA0464766269B073ABA3071C11ADA3F7 Example NodeCluster/10 urn:base64:Tm9kZUNsdXN0ZXI6QUEwNDY0NzY2MjY5QjA3M0FCQTMwNzFDMTFBREEzRjc6TE9DQVRFRF9BVDpDbG91ZFNpdGU6RDFFMERDNTJDRjFBNkEwNUMwQjU5QTYxQTgyMTcwMDU= D1E0DC52CF1A6A05C0B59A61A8217005
-2C4DB604B5B43CB9DF25FC16E38C1D2E Example NodeCluster/11 urn:base64:Tm9kZUNsdXN0ZXI6MkM0REI2MDRCNUI0M0NCOURGMjVGQzE2RTM4QzFEMkU6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QzA5MDM4MDgxREREOEIzNTNDQjJCRkY1NTQ1NDJENkY= C09038081DDD8B353CB2BFF554542D6F
-CB85F0EFBF093300F010C902394C46F8 Example NodeCluster/12 urn:base64:Tm9kZUNsdXN0ZXI6Q0I4NUYwRUZCRjA5MzMwMEYwMTBDOTAyMzk0QzQ2Rjg6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QzA5MDM4MDgxREREOEIzNTNDQjJCRkY1NTQ1NDJENkY= C09038081DDD8B353CB2BFF554542D6F
-12807C5AD5CB31F393B7C68649F0EF84 Example NodeCluster/13 urn:base64:Tm9kZUNsdXN0ZXI6MTI4MDdDNUFENUNCMzFGMzkzQjdDNjg2NDlGMEVGODQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QzA5MDM4MDgxREREOEIzNTNDQjJCRkY1NTQ1NDJENkY= C09038081DDD8B353CB2BFF554542D6F
-54EE0DE8C9D5E252D805255B0BF58E41 Example NodeCluster/14 urn:base64:Tm9kZUNsdXN0ZXI6NTRFRTBERThDOUQ1RTI1MkQ4MDUyNTVCMEJGNThFNDE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QzA5MDM4MDgxREREOEIzNTNDQjJCRkY1NTQ1NDJENkY= C09038081DDD8B353CB2BFF554542D6F
-7D2F0470FF10929C4B6D39DC6951DCB2 Example NodeCluster/15 urn:base64:Tm9kZUNsdXN0ZXI6N0QyRjA0NzBGRjEwOTI5QzRCNkQzOURDNjk1MURDQjI6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QzA5MDM4MDgxREREOEIzNTNDQjJCRkY1NTQ1NDJENkY= C09038081DDD8B353CB2BFF554542D6F
-74636E2CF21AF96670DE0DBB5E2B90F1 Example NodeCluster/16 urn:base64:Tm9kZUNsdXN0ZXI6NzQ2MzZFMkNGMjFBRjk2NjcwREUwREJCNUUyQjkwRjE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6NkIyNENFNzk3NjQxNEJCRjVDQzcxRDU0M0Y4QUQwREQ= 6B24CE7976414BBF5CC71D543F8AD0DD
-8B12422C6BB2F246C612BE17E0058736 Example NodeCluster/17 urn:base64:Tm9kZUNsdXN0ZXI6OEIxMjQyMkM2QkIyRjI0NkM2MTJCRTE3RTAwNTg3MzY6TE9DQVRFRF9BVDpDbG91ZFNpdGU6NkIyNENFNzk3NjQxNEJCRjVDQzcxRDU0M0Y4QUQwREQ= 6B24CE7976414BBF5CC71D543F8AD0DD
-991F7BF0D7D8DF69688B7350F7D9F2E1 Example NodeCluster/18 urn:base64:Tm9kZUNsdXN0ZXI6OTkxRjdCRjBEN0Q4REY2OTY4OEI3MzUwRjdEOUYyRTE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6NkIyNENFNzk3NjQxNEJCRjVDQzcxRDU0M0Y4QUQwREQ= 6B24CE7976414BBF5CC71D543F8AD0DD
-6573EA8ED582F620FAD70B281DC47478 Example NodeCluster/19 urn:base64:Tm9kZUNsdXN0ZXI6NjU3M0VBOEVENTgyRjYyMEZBRDcwQjI4MURDNDc0Nzg6TE9DQVRFRF9BVDpDbG91ZFNpdGU6NkIyNENFNzk3NjQxNEJCRjVDQzcxRDU0M0Y4QUQwREQ= 6B24CE7976414BBF5CC71D543F8AD0DD
-552617FC00CF6ECA407ECCC723D3B243 Example NodeCluster/20 urn:base64:Tm9kZUNsdXN0ZXI6NTUyNjE3RkMwMENGNkVDQTQwN0VDQ0M3MjNEM0IyNDM6TE9DQVRFRF9BVDpDbG91ZFNpdGU6NkIyNENFNzk3NjQxNEJCRjVDQzcxRDU0M0Y4QUQwREQ= 6B24CE7976414BBF5CC71D543F8AD0DD
-61DAD3343C482495F9CBF9A1EF2020EA Example NodeCluster/21 urn:base64:Tm9kZUNsdXN0ZXI6NjFEQUQzMzQzQzQ4MjQ5NUY5Q0JGOUExRUYyMDIwRUE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6Mjc4NzFENzVBNzFGRURCNDgzRjQ1Q0JEMTM4QTEzMjM= 27871D75A71FEDB483F45CBD138A1323
-207070CCC4BA41259CB15A6B0BB6F4F4 Example NodeCluster/22 urn:base64:Tm9kZUNsdXN0ZXI6MjA3MDcwQ0NDNEJBNDEyNTlDQjE1QTZCMEJCNkY0RjQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6Mjc4NzFENzVBNzFGRURCNDgzRjQ1Q0JEMTM4QTEzMjM= 27871D75A71FEDB483F45CBD138A1323
-5395111326D89044A150717321939D41 Example NodeCluster/23 urn:base64:Tm9kZUNsdXN0ZXI6NTM5NTExMTMyNkQ4OTA0NEExNTA3MTczMjE5MzlENDE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6Mjc4NzFENzVBNzFGRURCNDgzRjQ1Q0JEMTM4QTEzMjM= 27871D75A71FEDB483F45CBD138A1323
-084678E3BB0D6240078965404C74B6FF Example NodeCluster/24 urn:base64:Tm9kZUNsdXN0ZXI6MDg0Njc4RTNCQjBENjI0MDA3ODk2NTQwNEM3NEI2RkY6TE9DQVRFRF9BVDpDbG91ZFNpdGU6Mjc4NzFENzVBNzFGRURCNDgzRjQ1Q0JEMTM4QTEzMjM= 27871D75A71FEDB483F45CBD138A1323
-7244579FE2C5F8DDD4525AA6839917EA Example NodeCluster/25 urn:base64:Tm9kZUNsdXN0ZXI6NzI0NDU3OUZFMkM1RjhEREQ0NTI1QUE2ODM5OTE3RUE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6Mjc4NzFENzVBNzFGRURCNDgzRjQ1Q0JEMTM4QTEzMjM= 27871D75A71FEDB483F45CBD138A1323
-CD5E53D1750F210853FA38EE343B434C Example NodeCluster/26 urn:base64:Tm9kZUNsdXN0ZXI6Q0Q1RTUzRDE3NTBGMjEwODUzRkEzOEVFMzQzQjQzNEM6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjJFRDdCMTIzQjU3MzNFMkIwMzc0Mjk4OEE2NEZENkI= B2ED7B123B5733E2B03742988A64FD6B
-BB008AB249D485F90D558BEDFA7A6A29 Example NodeCluster/27 urn:base64:Tm9kZUNsdXN0ZXI6QkIwMDhBQjI0OUQ0ODVGOTBENTU4QkVERkE3QTZBMjk6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjJFRDdCMTIzQjU3MzNFMkIwMzc0Mjk4OEE2NEZENkI= B2ED7B123B5733E2B03742988A64FD6B
-9C83FE039C3D4B947150A8C7E50846E2 Example NodeCluster/28 urn:base64:Tm9kZUNsdXN0ZXI6OUM4M0ZFMDM5QzNENEI5NDcxNTBBOEM3RTUwODQ2RTI6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjJFRDdCMTIzQjU3MzNFMkIwMzc0Mjk4OEE2NEZENkI= B2ED7B123B5733E2B03742988A64FD6B
-180299E1533E0CB3B042512A96794E08 Example NodeCluster/29 urn:base64:Tm9kZUNsdXN0ZXI6MTgwMjk5RTE1MzNFMENCM0IwNDI1MTJBOTY3OTRFMDg6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjJFRDdCMTIzQjU3MzNFMkIwMzc0Mjk4OEE2NEZENkI= B2ED7B123B5733E2B03742988A64FD6B
-A69CE50897277B7DA8EF138A7F9D5FC9 Example NodeCluster/30 urn:base64:Tm9kZUNsdXN0ZXI6QTY5Q0U1MDg5NzI3N0I3REE4RUYxMzhBN0Y5RDVGQzk6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjJFRDdCMTIzQjU3MzNFMkIwMzc0Mjk4OEE2NEZENkI= B2ED7B123B5733E2B03742988A64FD6B
-38CE1C3DC2803C49DFDE0538CD645034 Example NodeCluster/31 urn:base64:Tm9kZUNsdXN0ZXI6MzhDRTFDM0RDMjgwM0M0OURGREUwNTM4Q0Q2NDUwMzQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjI0MEZFNjE0NTZCREE4Mzk4QzQ5RkQ4QjU2MjU0MUY= B240FE61456BDA8398C49FD8B562541F
-1AF73F476CA8B4E7AC219D8109121290 Example NodeCluster/32 urn:base64:Tm9kZUNsdXN0ZXI6MUFGNzNGNDc2Q0E4QjRFN0FDMjE5RDgxMDkxMjEyOTA6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjI0MEZFNjE0NTZCREE4Mzk4QzQ5RkQ4QjU2MjU0MUY= B240FE61456BDA8398C49FD8B562541F
-8D6BCDE855B4C31B5918FA7DFE26B34B Example NodeCluster/33 urn:base64:Tm9kZUNsdXN0ZXI6OEQ2QkNERTg1NUI0QzMxQjU5MThGQTdERkUyNkIzNEI6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjI0MEZFNjE0NTZCREE4Mzk4QzQ5RkQ4QjU2MjU0MUY= B240FE61456BDA8398C49FD8B562541F
-78E1E5E47D1B07B9E4DC0FB6A73BC572 Example NodeCluster/34 urn:base64:Tm9kZUNsdXN0ZXI6NzhFMUU1RTQ3RDFCMDdCOUU0REMwRkI2QTczQkM1NzI6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjI0MEZFNjE0NTZCREE4Mzk4QzQ5RkQ4QjU2MjU0MUY= B240FE61456BDA8398C49FD8B562541F
-8C4711B835D99C1E3AA64259E4AA06A9 Example NodeCluster/35 urn:base64:Tm9kZUNsdXN0ZXI6OEM0NzExQjgzNUQ5OUMxRTNBQTY0MjU5RTRBQTA2QTk6TE9DQVRFRF9BVDpDbG91ZFNpdGU6QjI0MEZFNjE0NTZCREE4Mzk4QzQ5RkQ4QjU2MjU0MUY= B240FE61456BDA8398C49FD8B562541F
-6EA78A3CAC43487D90F36348CD9C2178 Example NodeCluster/36 urn:base64:Tm9kZUNsdXN0ZXI6NkVBNzhBM0NBQzQzNDg3RDkwRjM2MzQ4Q0Q5QzIxNzg6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODYzNTNFNTE4Njg4RDNDQTRCQjMxNEJFRDAzMjQwMDM= 86353E518688D3CA4BB314BED0324003
-1EA071C4D492F58C098420D5B5893503 Example NodeCluster/37 urn:base64:Tm9kZUNsdXN0ZXI6MUVBMDcxQzRENDkyRjU4QzA5ODQyMEQ1QjU4OTM1MDM6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODYzNTNFNTE4Njg4RDNDQTRCQjMxNEJFRDAzMjQwMDM= 86353E518688D3CA4BB314BED0324003
-A72AFCF80A62839E814834BEB2DF3340 Example NodeCluster/38 urn:base64:Tm9kZUNsdXN0ZXI6QTcyQUZDRjgwQTYyODM5RTgxNDgzNEJFQjJERjMzNDA6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODYzNTNFNTE4Njg4RDNDQTRCQjMxNEJFRDAzMjQwMDM= 86353E518688D3CA4BB314BED0324003
-0E8B476E1A6445D91FC5C4BAB3A1B1AD Example NodeCluster/39 urn:base64:Tm9kZUNsdXN0ZXI6MEU4QjQ3NkUxQTY0NDVEOTFGQzVDNEJBQjNBMUIxQUQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODYzNTNFNTE4Njg4RDNDQTRCQjMxNEJFRDAzMjQwMDM= 86353E518688D3CA4BB314BED0324003
-41ED2035E0528C57D1BD4EA14B8E967A Example NodeCluster/40 urn:base64:Tm9kZUNsdXN0ZXI6NDFFRDIwMzVFMDUyOEM1N0QxQkQ0RUExNEI4RTk2N0E6TE9DQVRFRF9BVDpDbG91ZFNpdGU6ODYzNTNFNTE4Njg4RDNDQTRCQjMxNEJFRDAzMjQwMDM= 86353E518688D3CA4BB314BED0324003
-E5B6851160FD2CD82AC2192D4A52A19B Example NodeCluster/41 urn:base64:Tm9kZUNsdXN0ZXI6RTVCNjg1MTE2MEZEMkNEODJBQzIxOTJENEE1MkExOUI6TE9DQVRFRF9BVDpDbG91ZFNpdGU6MTZFRTE3QUU4OURGMTFCNjlFOTRCM0Y2ODI3QzJDMEU= 16EE17AE89DF11B69E94B3F6827C2C0E
-DB12707FF0A63962F755848557C4596B Example NodeCluster/42 urn:base64:Tm9kZUNsdXN0ZXI6REIxMjcwN0ZGMEE2Mzk2MkY3NTU4NDg1NTdDNDU5NkI6TE9DQVRFRF9BVDpDbG91ZFNpdGU6MTZFRTE3QUU4OURGMTFCNjlFOTRCM0Y2ODI3QzJDMEU= 16EE17AE89DF11B69E94B3F6827C2C0E
-5E2A9B569BE24D557067D21AE0849711 Example NodeCluster/43 urn:base64:Tm9kZUNsdXN0ZXI6NUUyQTlCNTY5QkUyNEQ1NTcwNjdEMjFBRTA4NDk3MTE6TE9DQVRFRF9BVDpDbG91ZFNpdGU6MTZFRTE3QUU4OURGMTFCNjlFOTRCM0Y2ODI3QzJDMEU= 16EE17AE89DF11B69E94B3F6827C2C0E
-E6CA370A107FF270A70C74FCEE6684B4 Example NodeCluster/44 urn:base64:Tm9kZUNsdXN0ZXI6RTZDQTM3MEExMDdGRjI3MEE3MEM3NEZDRUU2Njg0QjQ6TE9DQVRFRF9BVDpDbG91ZFNpdGU6MTZFRTE3QUU4OURGMTFCNjlFOTRCM0Y2ODI3QzJDMEU= 16EE17AE89DF11B69E94B3F6827C2C0E
-015C2DDBD7AC722B34ED6A20EDEEB9C3 Example NodeCluster/45 urn:base64:Tm9kZUNsdXN0ZXI6MDE1QzJEREJEN0FDNzIyQjM0RUQ2QTIwRURFRUI5QzM6TE9DQVRFRF9BVDpDbG91ZFNpdGU6MTZFRTE3QUU4OURGMTFCNjlFOTRCM0Y2ODI3QzJDMEU= 16EE17AE89DF11B69E94B3F6827C2C0E
-\.
-
-COPY ties_data."Namespace" (id, name, "REL_NAMESPACE_DEPLOYED_ON_NODECLUSTER_EIID", "REL_NAMESPACE_DEPLOYED_ON_NODECLUSTER") FROM stdin;
-1C02E96B2AAE036C7AE404BC38C308E0 Example Namespace/1 urn:base64:TmFtZXNwYWNlOjFDMDJFOTZCMkFBRTAzNkM3QUU0MDRCQzM4QzMwOEUwOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjNCRkEwREQ0QjFDOTkwRjlFNDlGQTREQjVDMjRGRUNE 3BFA0DD4B1C990F9E49FA4DB5C24FECD
-D6793A463BCA7441E9B10877E4C128C4 Example Namespace/2 urn:base64:TmFtZXNwYWNlOkQ2NzkzQTQ2M0JDQTc0NDFFOUIxMDg3N0U0QzEyOEM0OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjFDM0ZCMEE1NkUzRkZGRkVBQzVERTQwNzcxNUFEREU2 1C3FB0A56E3FFFFEAC5DE407715ADDE6
-7B123B5DBDD7765C3CA7538D1560E719 Example Namespace/3 urn:base64:TmFtZXNwYWNlOjdCMTIzQjVEQkRENzc2NUMzQ0E3NTM4RDE1NjBFNzE5OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjdGQ0Y5MkI5ODI3RDY3QkY1ODEzOEIxNkRCREM4MjQ5 7FCF92B9827D67BF58138B16DBDC8249
-C54B31AF0763C1B0EFB566092E8AAF87 Example Namespace/4 urn:base64:TmFtZXNwYWNlOkM1NEIzMUFGMDc2M0MxQjBFRkI1NjYwOTJFOEFBRjg3OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkY2QzBEOUUzQjJGRUExOTc5NTFENTQyMDQyNjY1QkZE F6C0D9E3B2FEA197951D542042665BFD
-E7F976985B600C2D3FDC03B081722302 Example Namespace/5 urn:base64:TmFtZXNwYWNlOkU3Rjk3Njk4NUI2MDBDMkQzRkRDMDNCMDgxNzIyMzAyOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjBDQTkxRjRGQTc3NjRBQTA1NkVBOEYyRjc1OUEzMzA1 0CA91F4FA7764AA056EA8F2F759A3305
-C301DBCF5A62CB67E0F62A2FB72344A2 Example Namespace/6 urn:base64:TmFtZXNwYWNlOkMzMDFEQkNGNUE2MkNCNjdFMEY2MkEyRkI3MjM0NEEyOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkI2RTg5NUUxMEM3RjFEOEVFQUU2ODA4QzdGQUVBQ0Yx B6E895E10C7F1D8EEAE6808C7FAEACF1
-6FDE215C3AB39D58BB5A537A04AC2797 Example Namespace/7 urn:base64:TmFtZXNwYWNlOjZGREUyMTVDM0FCMzlENThCQjVBNTM3QTA0QUMyNzk3OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjIwNDJGRjU0MDlDOUZBNjE1ODExRjkyQjFGMTQxNDlE 2042FF5409C9FA615811F92B1F14149D
-A825CC3BC40369FDBA3EA0F5B80841FF Example Namespace/8 urn:base64:TmFtZXNwYWNlOkE4MjVDQzNCQzQwMzY5RkRCQTNFQTBGNUI4MDg0MUZGOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkU5NjJBREI2MUM2OEZEMUFDRTA3RjgzRUEzMzRGNzhE E962ADB61C68FD1ACE07F83EA334F78D
-BF54B16C14A151E2A5E1445BFD892314 Example Namespace/9 urn:base64:TmFtZXNwYWNlOkJGNTRCMTZDMTRBMTUxRTJBNUUxNDQ1QkZEODkyMzE0OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjhBNjk3MTM3QjRDMjJDQzRFNjk1MzI4Q0Q2NUVCRDhF 8A697137B4C22CC4E695328CD65EBD8E
-9496E75F7F81F8C530FEC4D26480EAE8 Example Namespace/10 urn:base64:TmFtZXNwYWNlOjk0OTZFNzVGN0Y4MUY4QzUzMEZFQzREMjY0ODBFQUU4OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkFBMDQ2NDc2NjI2OUIwNzNBQkEzMDcxQzExQURBM0Y3 AA0464766269B073ABA3071C11ADA3F7
-7356625DD5EA8B67E356404E47DBF16C Example Namespace/11 urn:base64:TmFtZXNwYWNlOjczNTY2MjVERDVFQThCNjdFMzU2NDA0RTQ3REJGMTZDOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjJDNERCNjA0QjVCNDNDQjlERjI1RkMxNkUzOEMxRDJF 2C4DB604B5B43CB9DF25FC16E38C1D2E
-93EDFACF7A68994F570D179531475632 Example Namespace/12 urn:base64:TmFtZXNwYWNlOjkzRURGQUNGN0E2ODk5NEY1NzBEMTc5NTMxNDc1NjMyOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkNCODVGMEVGQkYwOTMzMDBGMDEwQzkwMjM5NEM0NkY4 CB85F0EFBF093300F010C902394C46F8
-D209029D9DE5877417CE68865DAEAD10 Example Namespace/13 urn:base64:TmFtZXNwYWNlOkQyMDkwMjlEOURFNTg3NzQxN0NFNjg4NjVEQUVBRDEwOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjEyODA3QzVBRDVDQjMxRjM5M0I3QzY4NjQ5RjBFRjg0 12807C5AD5CB31F393B7C68649F0EF84
-A2F83B34AC21F25ED7C36C791242DBAC Example Namespace/14 urn:base64:TmFtZXNwYWNlOkEyRjgzQjM0QUMyMUYyNUVEN0MzNkM3OTEyNDJEQkFDOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjU0RUUwREU4QzlENUUyNTJEODA1MjU1QjBCRjU4RTQx 54EE0DE8C9D5E252D805255B0BF58E41
-BD45F5227967629FACAF93AEB32B7AAA Example Namespace/15 urn:base64:TmFtZXNwYWNlOkJENDVGNTIyNzk2NzYyOUZBQ0FGOTNBRUIzMkI3QUFBOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjdEMkYwNDcwRkYxMDkyOUM0QjZEMzlEQzY5NTFEQ0Iy 7D2F0470FF10929C4B6D39DC6951DCB2
-77B84B77570AD583F3CF82DE06110D43 Example Namespace/16 urn:base64:TmFtZXNwYWNlOjc3Qjg0Qjc3NTcwQUQ1ODNGM0NGODJERTA2MTEwRDQzOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjc0NjM2RTJDRjIxQUY5NjY3MERFMERCQjVFMkI5MEYx 74636E2CF21AF96670DE0DBB5E2B90F1
-6CB8279BB6185B07910D3DCF733F835C Example Namespace/17 urn:base64:TmFtZXNwYWNlOjZDQjgyNzlCQjYxODVCMDc5MTBEM0RDRjczM0Y4MzVDOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjhCMTI0MjJDNkJCMkYyNDZDNjEyQkUxN0UwMDU4NzM2 8B12422C6BB2F246C612BE17E0058736
-99FF8A4C85B4D5BE0C655823110E2E62 Example Namespace/18 urn:base64:TmFtZXNwYWNlOjk5RkY4QTRDODVCNEQ1QkUwQzY1NTgyMzExMEUyRTYyOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjk5MUY3QkYwRDdEOERGNjk2ODhCNzM1MEY3RDlGMkUx 991F7BF0D7D8DF69688B7350F7D9F2E1
-B6C983B1A9FF9182F5C5127CF54E439A Example Namespace/19 urn:base64:TmFtZXNwYWNlOkI2Qzk4M0IxQTlGRjkxODJGNUM1MTI3Q0Y1NEU0MzlBOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjY1NzNFQThFRDU4MkY2MjBGQUQ3MEIyODFEQzQ3NDc4 6573EA8ED582F620FAD70B281DC47478
-68B28BB43280552647D1E5D6AA24F311 Example Namespace/20 urn:base64:TmFtZXNwYWNlOjY4QjI4QkI0MzI4MDU1MjY0N0QxRTVENkFBMjRGMzExOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjU1MjYxN0ZDMDBDRjZFQ0E0MDdFQ0NDNzIzRDNCMjQz 552617FC00CF6ECA407ECCC723D3B243
-237CF729D2AB78689BE74C573AB2B5B8 Example Namespace/21 urn:base64:TmFtZXNwYWNlOjIzN0NGNzI5RDJBQjc4Njg5QkU3NEM1NzNBQjJCNUI4OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjYxREFEMzM0M0M0ODI0OTVGOUNCRjlBMUVGMjAyMEVB 61DAD3343C482495F9CBF9A1EF2020EA
-3CEDADD22281B7EDA5409BE8480BFAF8 Example Namespace/22 urn:base64:TmFtZXNwYWNlOjNDRURBREQyMjI4MUI3RURBNTQwOUJFODQ4MEJGQUY4OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjIwNzA3MENDQzRCQTQxMjU5Q0IxNUE2QjBCQjZGNEY0 207070CCC4BA41259CB15A6B0BB6F4F4
-10EE338B3F5FB2BC8F6F0DCD36EA3636 Example Namespace/23 urn:base64:TmFtZXNwYWNlOjEwRUUzMzhCM0Y1RkIyQkM4RjZGMERDRDM2RUEzNjM2OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjUzOTUxMTEzMjZEODkwNDRBMTUwNzE3MzIxOTM5RDQx 5395111326D89044A150717321939D41
-3AF02CA25A9ABB1D9069CD55609D70CD Example Namespace/24 urn:base64:TmFtZXNwYWNlOjNBRjAyQ0EyNUE5QUJCMUQ5MDY5Q0Q1NTYwOUQ3MENEOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjA4NDY3OEUzQkIwRDYyNDAwNzg5NjU0MDRDNzRCNkZG 084678E3BB0D6240078965404C74B6FF
-463096647F96E6715E66B77C861E7228 Example Namespace/25 urn:base64:TmFtZXNwYWNlOjQ2MzA5NjY0N0Y5NkU2NzE1RTY2Qjc3Qzg2MUU3MjI4OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjcyNDQ1NzlGRTJDNUY4RERENDUyNUFBNjgzOTkxN0VB 7244579FE2C5F8DDD4525AA6839917EA
-89B40DF9B82BA836BB124B3031A0DEE7 Example Namespace/26 urn:base64:TmFtZXNwYWNlOjg5QjQwREY5QjgyQkE4MzZCQjEyNEIzMDMxQTBERUU3OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkNENUU1M0QxNzUwRjIxMDg1M0ZBMzhFRTM0M0I0MzRD CD5E53D1750F210853FA38EE343B434C
-B9DB1B8A51399D227D92CCF8D25D9ED8 Example Namespace/27 urn:base64:TmFtZXNwYWNlOkI5REIxQjhBNTEzOTlEMjI3RDkyQ0NGOEQyNUQ5RUQ4OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkJCMDA4QUIyNDlENDg1RjkwRDU1OEJFREZBN0E2QTI5 BB008AB249D485F90D558BEDFA7A6A29
-ABDE267D2832D00BD5B6F809A3F9AAD1 Example Namespace/28 urn:base64:TmFtZXNwYWNlOkFCREUyNjdEMjgzMkQwMEJENUI2RjgwOUEzRjlBQUQxOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjlDODNGRTAzOUMzRDRCOTQ3MTUwQThDN0U1MDg0NkUy 9C83FE039C3D4B947150A8C7E50846E2
-C0EA0E88845F50E0E10E321C5AE00F0D Example Namespace/29 urn:base64:TmFtZXNwYWNlOkMwRUEwRTg4ODQ1RjUwRTBFMTBFMzIxQzVBRTAwRjBEOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjE4MDI5OUUxNTMzRTBDQjNCMDQyNTEyQTk2Nzk0RTA4 180299E1533E0CB3B042512A96794E08
-E6B77CA230DEBFCB876A03109D1819A5 Example Namespace/30 urn:base64:TmFtZXNwYWNlOkU2Qjc3Q0EyMzBERUJGQ0I4NzZBMDMxMDlEMTgxOUE1OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkE2OUNFNTA4OTcyNzdCN0RBOEVGMTM4QTdGOUQ1RkM5 A69CE50897277B7DA8EF138A7F9D5FC9
-67FCEBFEB15DA38E662EA79B31BC2CD5 Example Namespace/31 urn:base64:TmFtZXNwYWNlOjY3RkNFQkZFQjE1REEzOEU2NjJFQTc5QjMxQkMyQ0Q1OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjM4Q0UxQzNEQzI4MDNDNDlERkRFMDUzOENENjQ1MDM0 38CE1C3DC2803C49DFDE0538CD645034
-0984650B561EF9BE8FEE1B33EDB7189E Example Namespace/32 urn:base64:TmFtZXNwYWNlOjA5ODQ2NTBCNTYxRUY5QkU4RkVFMUIzM0VEQjcxODlFOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjFBRjczRjQ3NkNBOEI0RTdBQzIxOUQ4MTA5MTIxMjkw 1AF73F476CA8B4E7AC219D8109121290
-E359C47090CB00D507049AD6BB3FDE97 Example Namespace/33 urn:base64:TmFtZXNwYWNlOkUzNTlDNDcwOTBDQjAwRDUwNzA0OUFENkJCM0ZERTk3OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjhENkJDREU4NTVCNEMzMUI1OTE4RkE3REZFMjZCMzRC 8D6BCDE855B4C31B5918FA7DFE26B34B
-24940564BAA7F334DB11E6E3DAAD755F Example Namespace/34 urn:base64:TmFtZXNwYWNlOjI0OTQwNTY0QkFBN0YzMzREQjExRTZFM0RBQUQ3NTVGOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjc4RTFFNUU0N0QxQjA3QjlFNERDMEZCNkE3M0JDNTcy 78E1E5E47D1B07B9E4DC0FB6A73BC572
-DD195B66C11B125675CD5EA66322C7CF Example Namespace/35 urn:base64:TmFtZXNwYWNlOkREMTk1QjY2QzExQjEyNTY3NUNENUVBNjYzMjJDN0NGOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjhDNDcxMUI4MzVEOTlDMUUzQUE2NDI1OUU0QUEwNkE5 8C4711B835D99C1E3AA64259E4AA06A9
-2EE8638B774A12E7916E5093ABCB6CCB Example Namespace/36 urn:base64:TmFtZXNwYWNlOjJFRTg2MzhCNzc0QTEyRTc5MTZFNTA5M0FCQ0I2Q0NCOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjZFQTc4QTNDQUM0MzQ4N0Q5MEYzNjM0OENEOUMyMTc4 6EA78A3CAC43487D90F36348CD9C2178
-09987E806682D5962E54216F9E34639A Example Namespace/37 urn:base64:TmFtZXNwYWNlOjA5OTg3RTgwNjY4MkQ1OTYyRTU0MjE2RjlFMzQ2MzlBOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjFFQTA3MUM0RDQ5MkY1OEMwOTg0MjBENUI1ODkzNTAz 1EA071C4D492F58C098420D5B5893503
-5144ADDAA56F7167E163213D4DF3AFB7 Example Namespace/38 urn:base64:TmFtZXNwYWNlOjUxNDRBRERBQTU2RjcxNjdFMTYzMjEzRDRERjNBRkI3OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkE3MkFGQ0Y4MEE2MjgzOUU4MTQ4MzRCRUIyREYzMzQw A72AFCF80A62839E814834BEB2DF3340
-EA83F8E7D1A61B9532686F560FD8052B Example Namespace/39 urn:base64:TmFtZXNwYWNlOkVBODNGOEU3RDFBNjFCOTUzMjY4NkY1NjBGRDgwNTJCOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjBFOEI0NzZFMUE2NDQ1RDkxRkM1QzRCQUIzQTFCMUFE 0E8B476E1A6445D91FC5C4BAB3A1B1AD
-970E5C8E5AED1F50439AA40CBD2929BA Example Namespace/40 urn:base64:TmFtZXNwYWNlOjk3MEU1QzhFNUFFRDFGNTA0MzlBQTQwQ0JEMjkyOUJBOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjQxRUQyMDM1RTA1MjhDNTdEMUJENEVBMTRCOEU5NjdB 41ED2035E0528C57D1BD4EA14B8E967A
-18A8EE78E6D774FE7A1D7E86A35436D4 Example Namespace/41 urn:base64:TmFtZXNwYWNlOjE4QThFRTc4RTZENzc0RkU3QTFEN0U4NkEzNTQzNkQ0OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkU1QjY4NTExNjBGRDJDRDgyQUMyMTkyRDRBNTJBMTlC E5B6851160FD2CD82AC2192D4A52A19B
-316C81D156DE5326C6C56B4399328391 Example Namespace/42 urn:base64:TmFtZXNwYWNlOjMxNkM4MUQxNTZERTUzMjZDNkM1NkI0Mzk5MzI4MzkxOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkRCMTI3MDdGRjBBNjM5NjJGNzU1ODQ4NTU3QzQ1OTZC DB12707FF0A63962F755848557C4596B
-9A74548A7CA0BA0973B994DBE28D5A17 Example Namespace/43 urn:base64:TmFtZXNwYWNlOjlBNzQ1NDhBN0NBMEJBMDk3M0I5OTREQkUyOEQ1QTE3OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjVFMkE5QjU2OUJFMjRENTU3MDY3RDIxQUUwODQ5NzEx 5E2A9B569BE24D557067D21AE0849711
-60AAC83B3405AED74F6451CC769293DF Example Namespace/44 urn:base64:TmFtZXNwYWNlOjYwQUFDODNCMzQwNUFFRDc0RjY0NTFDQzc2OTI5M0RGOkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOkU2Q0EzNzBBMTA3RkYyNzBBNzBDNzRGQ0VFNjY4NEI0 E6CA370A107FF270A70C74FCEE6684B4
-63E484676DB1A4FFA9E3386F3B7D95B6 Example Namespace/45 urn:base64:TmFtZXNwYWNlOjYzRTQ4NDY3NkRCMUE0RkZBOUUzMzg2RjNCN0Q5NUI2OkRFUExPWUVEX09OOk5vZGVDbHVzdGVyOjAxNUMyRERCRDdBQzcyMkIzNEVENkEyMEVERUVCOUMz 015C2DDBD7AC722B34ED6A20EDEEB9C3
-\.
-
-COPY ties_data."CloudNativeSystem" (id, name, "REL_MANAGEDELEMENT_DEPLOYED_AS_CLOUDNATIVESYSTEM", "REL_MANAGEDELEMENT_DEPLOYED_AS_CLOUDNATIVESYSTEM_EIID") FROM stdin;
-C4E311A55666726FD9FE25CA572AFAF9 Example Cloud Native System/1 45EF31D8A1FD624D7276390A1215BFC3 urn:base64:TWFuYWdlZEVsZW1lbnQ6NDVFRjMxRDhBMUZENjI0RDcyNzYzOTBBMTIxNUJGQzM6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06QzRFMzExQTU1NjY2NzI2RkQ5RkUyNUNBNTcyQUZBRjk=
-C79051FEBCA3BDB0B8D121931E443BD4 Example Cloud Native System/2 5BF1EECFD543243BE2C1BC52C7B484A0 urn:base64:TWFuYWdlZEVsZW1lbnQ6NUJGMUVFQ0ZENTQzMjQzQkUyQzFCQzUyQzdCNDg0QTA6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06Qzc5MDUxRkVCQ0EzQkRCMEI4RDEyMTkzMUU0NDNCRDQ=
-35FB71EBDD4D242270CC8C6A806BE701 Example Cloud Native System/3 23616B5A7FC56C146E3799DD7CA3B0C3 urn:base64:TWFuYWdlZEVsZW1lbnQ6MjM2MTZCNUE3RkM1NkMxNDZFMzc5OUREN0NBM0IwQzM6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06MzVGQjcxRUJERDREMjQyMjcwQ0M4QzZBODA2QkU3MDE=
-F5CE6D5CE4918294F900930501ED5390 Example Cloud Native System/4 09ADB418B558918F8E858ECA77CAF22B urn:base64:TWFuYWdlZEVsZW1lbnQ6MDlBREI0MThCNTU4OTE4RjhFODU4RUNBNzdDQUYyMkI6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06RjVDRTZENUNFNDkxODI5NEY5MDA5MzA1MDFFRDUzOTA=
-97DCC126365008869DFEB7EE6E0F5C1B Example Cloud Native System/5 5F404149FF9EDF096764B00CC8D052A3 urn:base64:TWFuYWdlZEVsZW1lbnQ6NUY0MDQxNDlGRjlFREYwOTY3NjRCMDBDQzhEMDUyQTM6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06OTdEQ0MxMjYzNjUwMDg4NjlERkVCN0VFNkUwRjVDMUI=
-201071BD2CED5D5E37E5C8AD9BDCC211 Example Cloud Native System/6 E1A1CA9D697DE4371C4014D587088498 urn:base64:TWFuYWdlZEVsZW1lbnQ6RTFBMUNBOUQ2OTdERTQzNzFDNDAxNEQ1ODcwODg0OTg6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06MjAxMDcxQkQyQ0VENUQ1RTM3RTVDOEFEOUJEQ0MyMTE=
-9B3DF0A93139581F46AD73129E4AA545 Example Cloud Native System/7 0DC59E39BAC5E54E5B646D346039C003 urn:base64:TWFuYWdlZEVsZW1lbnQ6MERDNTlFMzlCQUM1RTU0RTVCNjQ2RDM0NjAzOUMwMDM6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06OUIzREYwQTkzMTM5NTgxRjQ2QUQ3MzEyOUU0QUE1NDU=
-372D4EF30659770D7600CF5E37A26320 Example Cloud Native System/8 E07B72DA5F4CD284C9A9EB5A6AE0D5AC urn:base64:TWFuYWdlZEVsZW1lbnQ6RTA3QjcyREE1RjRDRDI4NEM5QTlFQjVBNkFFMEQ1QUM6REVQTE9ZRURfQVM6Q2xvdWROYXRpdmVTeXN0ZW06MzcyRDRFRjMwNjU5NzcwRDc2MDBDRjVFMzdBMjYzMjA=
-\.
-
-COPY ties_data."CloudNativeApplication" (id, name, "REL_CLOUDNATIVESYSTEM_COMPRISES_CLOUDNATIVEAPPLICATION_EIID", "REL_CLOUDNATIVEAPPLICATION_DEPLOYED_ON_NAMESPACE_EIID", "REL_MANAGEDELEMENT_REALISED_BY_CLOUDNATIVEAPPLICATION", "REL_MANAGEDELEMENT_REALISED_BY_CLOUDNATIVEAPPLICATION_EIID", "REL_CLOUDNATIVESYSTEM_COMPRISES_CLOUDNATIVEAPPLICATION", "REL_CLOUDNATIVEAPPLICATION_DEPLOYED_ON_NAMESPACE") FROM stdin;
-3256120E73ADD4026A43A971DCE5C151 Cloud Native CUCPApp/1 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06QzRFMzExQTU1NjY2NzI2RkQ5RkUyNUNBNTcyQUZBRjk6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246MzI1NjEyMEU3M0FERDQwMjZBNDNBOTcxRENFNUMxNTE= \N \N \N C4E311A55666726FD9FE25CA572AFAF9 \N
-EE2D4ADA10FF687FF6A865CC9E56A436 Cloud Native CUUPApp/2 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06Qzc5MDUxRkVCQ0EzQkRCMEI4RDEyMTkzMUU0NDNCRDQ6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246RUUyRDRBREExMEZGNjg3RkY2QTg2NUNDOUU1NkE0MzY= \N \N \N C79051FEBCA3BDB0B8D121931E443BD4 \N
-C4E28932357FA0076CA96CF7FF2C51BD Cloud Native CUUPApp/3 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06MzVGQjcxRUJERDREMjQyMjcwQ0M4QzZBODA2QkU3MDE6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246QzRFMjg5MzIzNTdGQTAwNzZDQTk2Q0Y3RkYyQzUxQkQ= \N \N \N 35FB71EBDD4D242270CC8C6A806BE701 \N
-41234DBD3CCEC010E2E9258527229950 Cloud Native CUUPApp/4 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06RjVDRTZENUNFNDkxODI5NEY5MDA5MzA1MDFFRDUzOTA6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246NDEyMzREQkQzQ0NFQzAxMEUyRTkyNTg1MjcyMjk5NTA= \N \N \N F5CE6D5CE4918294F900930501ED5390 \N
-E5E8A11419E09966604C14FDE5E09DF5 Cloud Native CUUPApp/5 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06OTdEQ0MxMjYzNjUwMDg4NjlERkVCN0VFNkUwRjVDMUI6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246RTVFOEExMTQxOUUwOTk2NjYwNEMxNEZERTVFMDlERjU= \N \N \N 97DCC126365008869DFEB7EE6E0F5C1B \N
-398DD19A5FD902C981E4D59F44E27F07 Cloud Native CUUPApp/6 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06MjAxMDcxQkQyQ0VENUQ1RTM3RTVDOEFEOUJEQ0MyMTE6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246Mzk4REQxOUE1RkQ5MDJDOTgxRTRENTlGNDRFMjdGMDc= \N \N \N 201071BD2CED5D5E37E5C8AD9BDCC211 \N
-9800D81C743BF4246FEB95063D6B0F6B Cloud Native CUUPApp/7 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06OUIzREYwQTkzMTM5NTgxRjQ2QUQ3MzEyOUU0QUE1NDU6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246OTgwMEQ4MUM3NDNCRjQyNDZGRUI5NTA2M0Q2QjBGNkI= \N \N \N 9B3DF0A93139581F46AD73129E4AA545 \N
-AD42D90497E93D276215DF6D3B899E17 Cloud Native CUUPApp/8 urn:base64:Q2xvdWROYXRpdmVTeXN0ZW06MzcyRDRFRjMwNjU5NzcwRDc2MDBDRjVFMzdBMjYzMjA6Q09NUFJJU0VTOkNsb3VkTmF0aXZlQXBwbGljYXRpb246QUQ0MkQ5MDQ5N0U5M0QyNzYyMTVERjZEM0I4OTlFMTc= \N \N \N 372D4EF30659770D7600CF5E37A26320 \N
-719BD5C7CD8A939D76A83DA95DA45C01 Example Cloud App/9 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo3MTlCRDVDN0NEOEE5MzlENzZBODNEQTk1REE0NUMwMTpERVBMT1lFRF9PTjpOYW1lc3BhY2U6MUMwMkU5NkIyQUFFMDM2QzdBRTQwNEJDMzhDMzA4RTA= DA1039E77700A9EEFFA280049ECE9227 urn:base64:TWFuYWdlZEVsZW1lbnQ6REExMDM5RTc3NzAwQTlFRUZGQTI4MDA0OUVDRTkyMjc6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo3MTlCRDVDN0NEOEE5MzlENzZBODNEQTk1REE0NUMwMQ== \N 1C02E96B2AAE036C7AE404BC38C308E0
-416F31E6EB09055326621F4919D35BFF Example Cloud App/10 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo0MTZGMzFFNkVCMDkwNTUzMjY2MjFGNDkxOUQzNUJGRjpERVBMT1lFRF9PTjpOYW1lc3BhY2U6RDY3OTNBNDYzQkNBNzQ0MUU5QjEwODc3RTRDMTI4QzQ= 6F02817AFE4D53237DB235EBE5378613 urn:base64:TWFuYWdlZEVsZW1lbnQ6NkYwMjgxN0FGRTRENTMyMzdEQjIzNUVCRTUzNzg2MTM6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo0MTZGMzFFNkVCMDkwNTUzMjY2MjFGNDkxOUQzNUJGRg== \N D6793A463BCA7441E9B10877E4C128C4
-072549B6F55210EA967D66FB38DF4D02 Example Cloud App/11 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjowNzI1NDlCNkY1NTIxMEVBOTY3RDY2RkIzOERGNEQwMjpERVBMT1lFRF9PTjpOYW1lc3BhY2U6N0IxMjNCNURCREQ3NzY1QzNDQTc1MzhEMTU2MEU3MTk= 0181BB891A56BBD886771EBA3A69F19A urn:base64:TWFuYWdlZEVsZW1lbnQ6MDE4MUJCODkxQTU2QkJEODg2NzcxRUJBM0E2OUYxOUE6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjowNzI1NDlCNkY1NTIxMEVBOTY3RDY2RkIzOERGNEQwMg== \N 7B123B5DBDD7765C3CA7538D1560E719
-60E685C53F4A1D700AA12499B8513700 Example Cloud App/12 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo2MEU2ODVDNTNGNEExRDcwMEFBMTI0OTlCODUxMzcwMDpERVBMT1lFRF9PTjpOYW1lc3BhY2U6QzU0QjMxQUYwNzYzQzFCMEVGQjU2NjA5MkU4QUFGODc= 1E113BF2E3ABD819E0FBC6C6128BEFE5 urn:base64:TWFuYWdlZEVsZW1lbnQ6MUUxMTNCRjJFM0FCRDgxOUUwRkJDNkM2MTI4QkVGRTU6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo2MEU2ODVDNTNGNEExRDcwMEFBMTI0OTlCODUxMzcwMA== \N C54B31AF0763C1B0EFB566092E8AAF87
-D80E092432EA673E6D26F833FD456DAB Example Cloud App/13 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjpEODBFMDkyNDMyRUE2NzNFNkQyNkY4MzNGRDQ1NkRBQjpERVBMT1lFRF9PTjpOYW1lc3BhY2U6RTdGOTc2OTg1QjYwMEMyRDNGREMwM0IwODE3MjIzMDI= 27500EB447000209EE6E3CA1B31FBA92 urn:base64:TWFuYWdlZEVsZW1lbnQ6Mjc1MDBFQjQ0NzAwMDIwOUVFNkUzQ0ExQjMxRkJBOTI6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjpEODBFMDkyNDMyRUE2NzNFNkQyNkY4MzNGRDQ1NkRBQg== \N E7F976985B600C2D3FDC03B081722302
-3F2580E9F469F9A3CD97B9FCF6CF4FB7 Example Cloud App/14 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjozRjI1ODBFOUY0NjlGOUEzQ0Q5N0I5RkNGNkNGNEZCNzpERVBMT1lFRF9PTjpOYW1lc3BhY2U6QzMwMURCQ0Y1QTYyQ0I2N0UwRjYyQTJGQjcyMzQ0QTI= 06222D277EE209CD8DCA1FE61CE752E6 urn:base64:TWFuYWdlZEVsZW1lbnQ6MDYyMjJEMjc3RUUyMDlDRDhEQ0ExRkU2MUNFNzUyRTY6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjozRjI1ODBFOUY0NjlGOUEzQ0Q5N0I5RkNGNkNGNEZCNw== \N C301DBCF5A62CB67E0F62A2FB72344A2
-0DBDAF357A69C373FC2A98B68485DDE3 Example Cloud App/15 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjowREJEQUYzNTdBNjlDMzczRkMyQTk4QjY4NDg1RERFMzpERVBMT1lFRF9PTjpOYW1lc3BhY2U6NkZERTIxNUMzQUIzOUQ1OEJCNUE1MzdBMDRBQzI3OTc= 436C59D4065E5222414DAD697C8842D2 urn:base64:TWFuYWdlZEVsZW1lbnQ6NDM2QzU5RDQwNjVFNTIyMjQxNERBRDY5N0M4ODQyRDI6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjowREJEQUYzNTdBNjlDMzczRkMyQTk4QjY4NDg1RERFMw== \N 6FDE215C3AB39D58BB5A537A04AC2797
-E128C30D7E2ADB7DEF904CE7E936A586 Example Cloud App/16 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjpFMTI4QzMwRDdFMkFEQjdERUY5MDRDRTdFOTM2QTU4NjpERVBMT1lFRF9PTjpOYW1lc3BhY2U6QTgyNUNDM0JDNDAzNjlGREJBM0VBMEY1QjgwODQxRkY= DC86CA7724113F4C0DF42BFEAA17FD53 urn:base64:TWFuYWdlZEVsZW1lbnQ6REM4NkNBNzcyNDExM0Y0QzBERjQyQkZFQUExN0ZENTM6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjpFMTI4QzMwRDdFMkFEQjdERUY5MDRDRTdFOTM2QTU4Ng== \N A825CC3BC40369FDBA3EA0F5B80841FF
-6B655971564C02F1FB7E5D7E84F9DDAF Example Cloud App/17 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo2QjY1NTk3MTU2NEMwMkYxRkI3RTVEN0U4NEY5RERBRjpERVBMT1lFRF9PTjpOYW1lc3BhY2U6QkY1NEIxNkMxNEExNTFFMkE1RTE0NDVCRkQ4OTIzMTQ= 1F0B4F7CEC39A09ADC16EB8D787978E6 urn:base64:TWFuYWdlZEVsZW1lbnQ6MUYwQjRGN0NFQzM5QTA5QURDMTZFQjhENzg3OTc4RTY6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo2QjY1NTk3MTU2NEMwMkYxRkI3RTVEN0U4NEY5RERBRg== \N BF54B16C14A151E2A5E1445BFD892314
-9E0291689435200AE1332FBBB992C151 Example Cloud App/18 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo5RTAyOTE2ODk0MzUyMDBBRTEzMzJGQkJCOTkyQzE1MTpERVBMT1lFRF9PTjpOYW1lc3BhY2U6OTQ5NkU3NUY3RjgxRjhDNTMwRkVDNEQyNjQ4MEVBRTg= AEAFE291F1DE32DEFFF0073D297B7693 urn:base64:TWFuYWdlZEVsZW1lbnQ6QUVBRkUyOTFGMURFMzJERUZGRjAwNzNEMjk3Qjc2OTM6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjo5RTAyOTE2ODk0MzUyMDBBRTEzMzJGQkJCOTkyQzE1MQ== \N 9496E75F7F81F8C530FEC4D26480EAE8
-C549905CF3CC890CE5746C5E10ACF00D Example Cloud App/19 \N urn:base64:Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjpDNTQ5OTA1Q0YzQ0M4OTBDRTU3NDZDNUUxMEFDRjAwRDpERVBMT1lFRF9PTjpOYW1lc3BhY2U6NzM1NjYyNURENUVBOEI2N0UzNTY0MDRFNDdEQkYxNkM= 8D51EFC759166044DACBCA63C4EDFC51 urn:base64:TWFuYWdlZEVsZW1lbnQ6OEQ1MUVGQzc1OTE2NjA0NERBQ0JDQTYzQzRFREZDNTE6UkVBTElTRURfQlk6Q2xvdWROYXRpdmVBcHBsaWNhdGlvbjpDNTQ5OTA1Q0YzQ0M4OTBDRTU3NDZDNUUxMEFDRjAwRA== \N 7356625DD5EA8B67E356404E47DBF16C
-\.
-
-COPY ties_data."ODUFunction" (id, fdn, "dUpLMNId", "gNBId", "gNBIdLength", "REL_MANAGEDELEMENT_MANAGES_ODUFUNCTION", "REL_MANAGEDELEMENT_MANAGES_ODUFUNCTION_EIID") FROM stdin;
-5A548EA9D166341776CA0695837E55D8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=16 {"mnc":"82","mcc":"456"} 16 2 DC86CA7724113F4C0DF42BFEAA17FD53 urn:base64:TWFuYWdlZEVsZW1lbnQ6REM4NkNBNzcyNDExM0Y0QzBERjQyQkZFQUExN0ZENTM6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOjVBNTQ4RUE5RDE2NjM0MTc3NkNBMDY5NTgzN0U1NUQ4
-7D80E5C6E0C9EC246370E86B7E524F8C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=17 {"mnc":"82","mcc":"456"} 17 2 1F0B4F7CEC39A09ADC16EB8D787978E6 urn:base64:TWFuYWdlZEVsZW1lbnQ6MUYwQjRGN0NFQzM5QTA5QURDMTZFQjhENzg3OTc4RTY6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOjdEODBFNUM2RTBDOUVDMjQ2MzcwRTg2QjdFNTI0RjhD
-BBB3C42A4F8AC94091B297DF708DD50B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=18 {"mnc":"82","mcc":"456"} 18 2 AEAFE291F1DE32DEFFF0073D297B7693 urn:base64:TWFuYWdlZEVsZW1lbnQ6QUVBRkUyOTFGMURFMzJERUZGRjAwNzNEMjk3Qjc2OTM6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOkJCQjNDNDJBNEY4QUM5NDA5MUIyOTdERjcwOERENTBC
-4CFF136200A2DE36205A13559C55DB2A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=19 {"mnc":"82","mcc":"456"} 19 2 8D51EFC759166044DACBCA63C4EDFC51 urn:base64:TWFuYWdlZEVsZW1lbnQ6OEQ1MUVGQzc1OTE2NjA0NERBQ0JDQTYzQzRFREZDNTE6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOjRDRkYxMzYyMDBBMkRFMzYyMDVBMTM1NTlDNTVEQjJB
-D3215E08570BE58339C7463626B50E37 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=9 {"mnc":"82","mcc":"456"} 9 1 DA1039E77700A9EEFFA280049ECE9227 urn:base64:TWFuYWdlZEVsZW1lbnQ6REExMDM5RTc3NzAwQTlFRUZGQTI4MDA0OUVDRTkyMjc6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOkQzMjE1RTA4NTcwQkU1ODMzOUM3NDYzNjI2QjUwRTM3
-1050570EBB1315E1AE7A9FD5E1400A00 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=10 {"mnc":"82","mcc":"456"} 10 2 6F02817AFE4D53237DB235EBE5378613 urn:base64:TWFuYWdlZEVsZW1lbnQ6NkYwMjgxN0FGRTRENTMyMzdEQjIzNUVCRTUzNzg2MTM6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOjEwNTA1NzBFQkIxMzE1RTFBRTdBOUZENUUxNDAwQTAw
-B6A6DE7D0965F02D48ECA86706A4454F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=11 {"mnc":"82","mcc":"456"} 11 2 0181BB891A56BBD886771EBA3A69F19A urn:base64:TWFuYWdlZEVsZW1lbnQ6MDE4MUJCODkxQTU2QkJEODg2NzcxRUJBM0E2OUYxOUE6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOkI2QTZERTdEMDk2NUYwMkQ0OEVDQTg2NzA2QTQ0NTRG
-E5FD5ACD55C553A92738477ECB0465B9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=12 {"mnc":"82","mcc":"456"} 12 2 1E113BF2E3ABD819E0FBC6C6128BEFE5 urn:base64:TWFuYWdlZEVsZW1lbnQ6MUUxMTNCRjJFM0FCRDgxOUUwRkJDNkM2MTI4QkVGRTU6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOkU1RkQ1QUNENTVDNTUzQTkyNzM4NDc3RUNCMDQ2NUI5
-25E690E22BDA90B9C4FEE1F083CBA597 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=13 {"mnc":"82","mcc":"456"} 13 2 27500EB447000209EE6E3CA1B31FBA92 urn:base64:TWFuYWdlZEVsZW1lbnQ6Mjc1MDBFQjQ0NzAwMDIwOUVFNkUzQ0ExQjMxRkJBOTI6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOjI1RTY5MEUyMkJEQTkwQjlDNEZFRTFGMDgzQ0JBNTk3
-5A3085C3400C3096E2ED2321452766B1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=14 {"mnc":"82","mcc":"456"} 14 2 06222D277EE209CD8DCA1FE61CE752E6 urn:base64:TWFuYWdlZEVsZW1lbnQ6MDYyMjJEMjc3RUUyMDlDRDhEQ0ExRkU2MUNFNzUyRTY6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOjVBMzA4NUMzNDAwQzMwOTZFMkVEMjMyMTQ1Mjc2NkIx
-7F16F93D8816D9EBC76E52BB44A3CFF5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ODUFunction=15 {"mnc":"82","mcc":"456"} 15 2 436C59D4065E5222414DAD697C8842D2 urn:base64:TWFuYWdlZEVsZW1lbnQ6NDM2QzU5RDQwNjVFNTIyMjQxNERBRDY5N0M4ODQyRDI6TUFOQUdFUzpHTkJEVUZ1bmN0aW9uOjdGMTZGOTNEODgxNkQ5RUJDNzZFNTJCQjQ0QTNDRkY1
-\.
-
-COPY ties_data."OCUCPFunction" (id, fdn, "gNBId", "gNBIdLength", "REL_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION", "REL_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION_EIID") FROM stdin;
-0525930249302B9649FC8F201EC4F7FC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUCPFunction=1 1 1 5BCC1BC502B66423981F90A6EA8D157E urn:base64:TWFuYWdlZEVsZW1lbnQ6NUJDQzFCQzUwMkI2NjQyMzk4MUY5MEE2RUE4RDE1N0U6TUFOQUdFUzpHTkJDVUNQRnVuY3Rpb246MDUyNTkzMDI0OTMwMkI5NjQ5RkM4RjIwMUVDNEY3RkM=
-\.
-
-COPY ties_data."OCUUPFunction" (id, fdn, "gNBId", "gNBIdLength", "REL_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION", "REL_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION_EIID") FROM stdin;
-9B007881A1B8DE33D1D3063BE601D4B6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUUPFunction=2 2 1 577CA8F71FFC2FC3C39D93D0F28E47EC urn:base64:TWFuYWdlZEVsZW1lbnQ6NTc3Q0E4RjcxRkZDMkZDM0MzOUQ5M0QwRjI4RTQ3RUM6TUFOQUdFUzpHTkJDVVVQRnVuY3Rpb246OUIwMDc4ODFBMUI4REUzM0QxRDMwNjNCRTYwMUQ0QjY=
-9806ABE2985BDD4FE6BD2B38549C973C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUUPFunction=3 3 1 E87AF3DB09EE273C6F153AA00D4D1171 urn:base64:TWFuYWdlZEVsZW1lbnQ6RTg3QUYzREIwOUVFMjczQzZGMTUzQUEwMEQ0RDExNzE6TUFOQUdFUzpHTkJDVVVQRnVuY3Rpb246OTgwNkFCRTI5ODVCREQ0RkU2QkQyQjM4NTQ5Qzk3M0M=
-99BBA3EC64BE596400B38FEBD9677FC6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUUPFunction=4 4 1 A73755B1422176B1169546D884BD9FCC urn:base64:TWFuYWdlZEVsZW1lbnQ6QTczNzU1QjE0MjIxNzZCMTE2OTU0NkQ4ODRCRDlGQ0M6TUFOQUdFUzpHTkJDVVVQRnVuY3Rpb246OTlCQkEzRUM2NEJFNTk2NDAwQjM4RkVCRDk2NzdGQzY=
-6B3E56B6C991F4E569115DE5633B0AA0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUUPFunction=5 5 1 D76CCB4E654B2CF5D248196E9B9524AD urn:base64:TWFuYWdlZEVsZW1lbnQ6RDc2Q0NCNEU2NTRCMkNGNUQyNDgxOTZFOUI5NTI0QUQ6TUFOQUdFUzpHTkJDVVVQRnVuY3Rpb246NkIzRTU2QjZDOTkxRjRFNTY5MTE1REU1NjMzQjBBQTA=
-A18F3452C918E8F2C54E600F42005DBD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUUPFunction=6 6 1 E7CEF72CB78163D1B26B8B2A7A39757A urn:base64:TWFuYWdlZEVsZW1lbnQ6RTdDRUY3MkNCNzgxNjNEMUIyNkI4QjJBN0EzOTc1N0E6TUFOQUdFUzpHTkJDVVVQRnVuY3Rpb246QTE4RjM0NTJDOTE4RThGMkM1NEU2MDBGNDIwMDVEQkQ=
-F1C32B9DECA2230D9765BE2F54F1EDFE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUUPFunction=7 7 1 E57C2A20E96A8C9E7099BAD60957B59A urn:base64:TWFuYWdlZEVsZW1lbnQ6RTU3QzJBMjBFOTZBOEM5RTcwOTlCQUQ2MDk1N0I1OUE6TUFOQUdFUzpHTkJDVVVQRnVuY3Rpb246RjFDMzJCOURFQ0EyMjMwRDk3NjVCRTJGNTRGMUVERkU=
-BFEEAC2CE60273CB0A78319CC201A7FE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/OCUUPFunction=8 8 1 E64371CD4D12ED0CED200DD3A7591784 urn:base64:TWFuYWdlZEVsZW1lbnQ6RTY0MzcxQ0Q0RDEyRUQwQ0VEMjAwREQzQTc1OTE3ODQ6TUFOQUdFUzpHTkJDVVVQRnVuY3Rpb246QkZFRUFDMkNFNjAyNzNDQjBBNzgzMTlDQzIwMUE3RkU=
-\.
-
-COPY ties_data."NRCellCU" (id, fdn, "cellLocalId", "plmnId", "nCI", "nRTAC", "REL_OCUCPFUNCTION_PROVIDES_NRCELLCU_EIID", "REL_OCUCPFUNCTION_PROVIDES_NRCELLCU") FROM stdin;
-ED15B5C47ACEB0B4975D7A7B6B9FD4F8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=1 1 {"mnc":"82","mcc":"456"} 1 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOkVEMTVCNUM0N0FDRUIwQjQ5NzVEN0E3QjZCOUZENEY4 0525930249302B9649FC8F201EC4F7FC
-C21ED6B73BFC01F0A98F1D492DFD7FBD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=2 2 {"mnc":"82","mcc":"456"} 2 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOkMyMUVENkI3M0JGQzAxRjBBOThGMUQ0OTJERkQ3RkJE 0525930249302B9649FC8F201EC4F7FC
-D1462F73968E5CC050AAD327331494D9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=3 3 {"mnc":"82","mcc":"456"} 3 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOkQxNDYyRjczOTY4RTVDQzA1MEFBRDMyNzMzMTQ5NEQ5 0525930249302B9649FC8F201EC4F7FC
-4B83304C790B86803348D83594CA8578 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=4 4 {"mnc":"82","mcc":"456"} 4 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOjRCODMzMDRDNzkwQjg2ODAzMzQ4RDgzNTk0Q0E4NTc4 0525930249302B9649FC8F201EC4F7FC
-DD35C095CD62BD45AA9B3E5DDAEDD638 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=5 5 {"mnc":"82","mcc":"456"} 5 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOkREMzVDMDk1Q0Q2MkJENDVBQTlCM0U1RERBRURENjM4 0525930249302B9649FC8F201EC4F7FC
-926C4E16A00453D7AF0BDC1B44956DEE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=6 6 {"mnc":"82","mcc":"456"} 6 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOjkyNkM0RTE2QTAwNDUzRDdBRjBCREMxQjQ0OTU2REVF 0525930249302B9649FC8F201EC4F7FC
-48CF862C4FBAC260A3A32C858BE8DCD8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=7 7 {"mnc":"82","mcc":"456"} 7 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOjQ4Q0Y4NjJDNEZCQUMyNjBBM0EzMkM4NThCRThEQ0Q4 0525930249302B9649FC8F201EC4F7FC
-EC3400C5121E6AACC4DA117C244C3661 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=8 8 {"mnc":"82","mcc":"456"} 8 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOkVDMzQwMEM1MTIxRTZBQUNDNERBMTE3QzI0NEMzNjYx 0525930249302B9649FC8F201EC4F7FC
-FFC97655D55AC9CC4FB8A7EC0C7941E8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=9 9 {"mnc":"82","mcc":"456"} 9 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOkZGQzk3NjU1RDU1QUM5Q0M0RkI4QTdFQzBDNzk0MUU4 0525930249302B9649FC8F201EC4F7FC
-2F1E5910D92D1C199360545C6A798E9C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=10 10 {"mnc":"82","mcc":"456"} 10 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOjJGMUU1OTEwRDkyRDFDMTk5MzYwNTQ1QzZBNzk4RTlD 0525930249302B9649FC8F201EC4F7FC
-A212C979D6E32F6021E7E05879C797F5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellCU=11 11 {"mnc":"82","mcc":"456"} 11 456 urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlBST1ZJREVTOk5SQ2VsbENVOkEyMTJDOTc5RDZFMzJGNjAyMUU3RTA1ODc5Qzc5N0Y1 0525930249302B9649FC8F201EC4F7FC
-\.
-
-COPY ties_data."Sector" (id, azimuth, "geo-location") FROM stdin;
-2F445AA5744FA3D230FD6838531F1407 1 POINT(59.4019881 17.9419888)
-F5128C172A70C4FCD4739650B06DE9E2 2 POINT(59.4019881 17.9419888)
-ADB1BAAC878C0BEEFE3175C60F44BB1D 3 POINT(59.4019881 17.9419888)
-\.
-
-COPY ties_data."AntennaCapability" (id, fdn, "eUtranFqBands", "geranFqBands", "nRFqBands") FROM stdin;
-5835F77BE9D4E102316BD59195F6370B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=1 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-04F39EBAB72454E4D3331D6C3367B45F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=2 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-A77B237A541B2D3225B4B61D3098E4AA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=3 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C30981A489A45BE4BF70667FC66992CF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=4 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-4A850F99EBA0935B7CDE6EF446C0499C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=5 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C83E08A53438EF9678D515E73DB667F7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=6 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-5E1C63A3F32A8625A5F282727D36B0C8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=7 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-1B338F478087F93C91E0287CC87CDC56 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=8 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-599313CDD35F498EE899CF51C9A09BF5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=9 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-B04E223337F275C0BF59B459A06EE6C3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=10 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-2D71F6CDCC5DFD1D712D9AB01BAA4706 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=11 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-D74172358AD4BA418E2423A3D54151ED SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=12 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-114BD7BD46D2EA6BF851251287F2CF95 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=13 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-B00699B5EA33C867EEE7E044EE844D34 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=14 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-A537D7A9EFDEE0C47B3FB4CF3B1F06A7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=15 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-E1C3E95944942F4AD1831719203A1672 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=16 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-9252E3CCA88AE559BCB1C838FFDA1C27 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=17 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-F283F19F4F0842E724BA72E9718EA5CB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=18 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-B74B892954E97112DD4B4E5AF9D3A4F7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=19 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-87CC4E7F74292FE85340F280A32EEB2D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=20 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-04273FC64436DA523865CF849E5F7CC9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=21 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-D5B9090E3B6A10DBDC243ED14EF294BF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=22 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-02443DE0807D801D661495D9EFB8D836 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=23 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C6823D2B7AFA064CE774795E01D6228B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=24 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-DF26AE442110DB0281DAD4545436B720 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=25 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-7A1C6FE9351008B3D539166D94222762 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=26 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-70A1F129E10EE7D31DFE1E1AA6C7437D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=27 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-7DE91C78F8DCE4292F2F0C3B34DEACAB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=28 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-145A1BF561DB297F25FD3F12417D2A50 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=29 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-9188D975D837A1E0397167A23E721B0C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=30 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-D314DADAFA3D896445E78EBCC15A16F7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=31 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-28AD3EE844766DF508F6287CD1CE18A4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=32 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C398D6C673267A081C781D84438F4B74 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=33 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-0BDAD5DDC19A696244536421E6D26FE3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=34 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-49205881C9121F208BD79149FA799877 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=35 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-A32DB9E278FC1DE41FB4A3B50F802650 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=36 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-BDE381BACC67290E447BC0177E038AEB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=37 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-B4BC4D1B13EB651690F3195E622CC4BD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=38 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-32EE385EACD26A0046BAD5CC84905ECB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=39 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-43B63106B27FB05C618400EE5AE91637 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=40 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C813E18657C2C5837A3F237BAD557944 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=41 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-462DCCDEA5A2892B8C8630724679B676 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=42 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-F6D0FF2069F038FF64D072C818DD9BFD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=43 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C5C598511C7514061E86DA24F8DB359D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=44 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-13876FECEEDF45AE4DCA8C393E478237 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=45 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-00833903891D07D0628E03FF4463A14A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=46 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C4A283EEFD5F1463B7EE0CA782409DFB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=47 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-AFFEAF1D0F2D30524C49BA86D52F39EE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=48 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-E2A13CF56C0E187C62FF9716BB0FCED6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=49 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-E3E1FB31FB5F4FB1CA808036474BDD95 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=50 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-5769C026D7993C666C45535EDD8C3EAD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=51 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-2A32475EF4F4AB41904B5AAAA8FF2CA1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=52 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-EB1301BA22E0691114A23445323B649B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=53 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-285A7590CEC0BC46F0C1A8A3D1AA2BA5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=54 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C606AF1A1AC5A96A43B0B8EBFC1B047C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=55 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-40FB5481402DCE8AD6B3B0357B00CF82 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=56 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-FD8F3DE8B8AF2FD102F39D0ED89B3714 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=57 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-5CEA2470D99A8A2BB3ED90BC15DB1140 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=58 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-6A23A8B8B5ACEA775D6E98BAC1534373 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=59 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-1D273FDD45618CBD438D0083873314D5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=60 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-E07F76EEFA3F6D1A5083C99F3D202CCD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=61 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-173388785CB4761B154F448AE6372ADC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=62 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-AA17CE1504CD4512121267C22034620A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=63 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-542D562E72C8025DD560D718FFDE1D45 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=64 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-E3C96BA5D7C0755A3011D12A32971BA1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=65 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-B4C333ECD92A7351A38EE3BC510B5DA7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=66 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-6F75116BB289ECD8EB1A96252FD8F7C0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=67 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-16B870511FAAF1183FC92E641B2C3804 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=68 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-2C7AA809CD1A92FD74EC4151D7C16A8D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=69 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-2C21D1069460F35FF38952F1050DF7CC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=70 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-AA3ED0C82A9FE6D7412B7C558A96CDA5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=71 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-B5D36905C87DA636611C137159727CEE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=72 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-3EF4C71354EC527AB033A3FB820F48E4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=73 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-0B3681F195584EF1051B914EB63EBBCB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=74 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-59A77FBBDC8E1819741E4728596C435C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=75 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-BDC8E4EAC53C9C39800B4BDC0309C8BB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=76 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-37332299BE1398193F7B7452C16521F8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=77 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-83B8FC3409E9E34F8D4B22CD514CC078 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=78 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-587ADBD46FA0A770E1C3ABA210DB57ED SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=79 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-604A22BFC72A960115D6B21C3F186841 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=80 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-1D4CBC43D62A01B27FA0C7442F9AD0D8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=81 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-892BAE0B45865D3F4DC776662BB37654 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=82 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-EE1EAAFDB85206259AA9D9D4BA01BDA2 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=83 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-111BD123DCA1B937F0E15E5BEFDE08E9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=84 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-DF7837EEAB65A06859110366E5F45297 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=85 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-D0AAE9631AF1554B8F390932E377EA19 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=86 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-89B9FE5D2D4A07CCD54E705BFE2D10F0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=87 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-A6E97BA30832C1B7AC36F4D79DD38B71 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=88 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-DFA6202FF96DD418EAD4C930F27F0C78 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=89 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-01945D7B7D2AFB0B3DFE23822D2C9CCB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=90 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-BE50AC57AB1FAE73531ADD181324067F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=91 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-82D055DE15B97CD866CF454A9688F4DB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=92 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-362EC3B7758D873DF98AE2A9EC2472B5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=93 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-DA5D8A3D1CDC3D55447F7C86EDD8FE50 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=94 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-6A39B151C50F73F029B5772299DCF289 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=95 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-B0FE880DF9474AA29C7A4BAAA946E55D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=96 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-C23D9D0807E45EF55DC6B7D35EEB08B1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=97 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-CF8EF723BB46C6170DB0490D1FA26B85 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=98 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-E1C340DF0FFA51211DDB5F829E2A27EE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=99 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-59E39AEB2CD8EC0018853D7EF75E4E77 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaCapability=100 ["123","4564","789"] ["123","456","789"] ["123","456","789"]
-\.
-
-COPY ties_data."Site" (id, name, "geo-location") FROM stdin;
-CF89C174D06854C0C41B74D2C46846DD ORAN Stockholm POINT(59.4019881 17.9419888)
-26874D3241CEFFF60E084FEFCC72B973 ORAN Stockholm POINT(59.4019881 17.9419888)
-0778A57645DE9D3E4B74D31F9F5CB858 ORAN Stockholm POINT(59.4019881 17.9419888)
-F4B3E6619BBD176B4F2DB754AF6524BC ORAN Stockholm POINT(59.4019881 17.9419888)
-08ECC9E4A381754174EC4B0045418F53 ORAN Stockholm POINT(59.4019881 17.9419888)
-12B7642C4550D657BE0D0F5FFB6975B4 ORAN Stockholm POINT(59.4019881 17.9419888)
-09C568700E28185534A836946A406656 ORAN Stockholm POINT(59.4019881 17.9419888)
-FEF2244182BB579F5D67C024ADBE8510 ORAN Stockholm POINT(59.4019881 17.9419888)
-8661AEDC92C7A428BBB5137150A84EFF ORAN Stockholm POINT(59.4019881 17.9419888)
-07674D494908D2B78DFD4A9555E8FEC7 ORAN Stockholm POINT(59.4019881 17.9419888)
-45125B217DEAE03E6FFE99E6410827CB ORAN Stockholm POINT(59.4019881 17.9419888)
-D6C8C26018EC6B009B466590E0E8CA89 ORAN Stockholm POINT(59.4019881 17.9419888)
-C30A8ED14ED558C42D40AB507E45A20B ORAN Stockholm POINT(59.4019881 17.9419888)
-AB78BB4CCABEBDA1FAF28B583FECE1F7 ORAN Stockholm POINT(59.4019881 17.9419888)
-0EF3B3C355A1B8229477C73003331ECE ORAN Stockholm POINT(59.4019881 17.9419888)
-547D71B43F80440CCCF5BBAA592F0BE9 ORAN Stockholm POINT(59.4019881 17.9419888)
-6DA0466361FC7FA801992523CEEBB708 ORAN Stockholm POINT(59.4019881 17.9419888)
-E62D579A6EE1200742024580932FCAB3 ORAN Stockholm POINT(59.4019881 17.9419888)
-DF8BC33203F929BA85E9CE51906C39E7 ORAN Stockholm POINT(59.4019881 17.9419888)
-77B0CCE60DA3CB1A6B7710356F98BF2D ORAN Stockholm POINT(59.4019881 17.9419888)
-BAE093E95F2AC5FF08C8830896F4074B ORAN Stockholm POINT(59.4019881 17.9419888)
-80E537AB048E79909DA40298E06B089D ORAN Stockholm POINT(59.4019881 17.9419888)
-E8BA1F7434A4842150FA259506A55435 ORAN Stockholm POINT(59.4019881 17.9419888)
-2DDD59CA2E860E28CB8DEB1FEAB3CAB4 ORAN Stockholm POINT(59.4019881 17.9419888)
-0B2DBD5B2C81D9283BB458A03ABC305C ORAN Stockholm POINT(59.4019881 17.9419888)
-EFE3F092FF55C768B4D1E459B2A93DD8 ORAN Stockholm POINT(59.4019881 17.9419888)
-\.
-
-COPY ties_data."AntennaModule" (id, fdn, "antennaModelNumber", "mechanicalAntennaBearing", "mechanicalAntennaTilt", "positionWithinSector", "totalTilt", "electricalAntennaTilt", "REL_ANTENNAMODULE_INSTALLED_AT_SITE_EIID", "REL_SECTOR_GROUPS_ANTENNAMODULE_EIID", "REL_ANTENNAMODULE_INSTALLED_AT_SITE", "REL_SECTOR_GROUPS_ANTENNAMODULE") FROM stdin;
-CBAB40BEF2646D20F66542E9D10D7FCA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=1 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpDQkFCNDBCRUYyNjQ2RDIwRjY2NTQyRTlEMTBEN0ZDQTpJTlNUQUxMRURfQVQ6U2l0ZToyNjg3NEQzMjQxQ0VGRkY2MEUwODRGRUZDQzcyQjk3Mw== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOkNCQUI0MEJFRjI2NDZEMjBGNjY1NDJFOUQxMEQ3RkNB 26874D3241CEFFF60E084FEFCC72B973 2F445AA5744FA3D230FD6838531F1407
-7ECED4BE8CF47661D5D3E8674586A9B1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=2 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTo3RUNFRDRCRThDRjQ3NjYxRDVEM0U4Njc0NTg2QTlCMTpJTlNUQUxMRURfQVQ6U2l0ZTowNzc4QTU3NjQ1REU5RDNFNEI3NEQzMUY5RjVDQjg1OA== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOjdFQ0VENEJFOENGNDc2NjFENUQzRTg2NzQ1ODZBOUIx 0778A57645DE9D3E4B74D31F9F5CB858 2F445AA5744FA3D230FD6838531F1407
-AA48999302DFC8EC8879572623C0085A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=3 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpBQTQ4OTk5MzAyREZDOEVDODg3OTU3MjYyM0MwMDg1QTpJTlNUQUxMRURfQVQ6U2l0ZTpGNEIzRTY2MTlCQkQxNzZCNEYyREI3NTRBRjY1MjRCQw== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOkFBNDg5OTkzMDJERkM4RUM4ODc5NTcyNjIzQzAwODVB F4B3E6619BBD176B4F2DB754AF6524BC 2F445AA5744FA3D230FD6838531F1407
-07C63BA08B0C43E18CC964F0B6F4E24D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=4 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTowN0M2M0JBMDhCMEM0M0UxOENDOTY0RjBCNkY0RTI0RDpJTlNUQUxMRURfQVQ6U2l0ZTowOEVDQzlFNEEzODE3NTQxNzRFQzRCMDA0NTQxOEY1Mw== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOjA3QzYzQkEwOEIwQzQzRTE4Q0M5NjRGMEI2RjRFMjRE 08ECC9E4A381754174EC4B0045418F53 2F445AA5744FA3D230FD6838531F1407
-FF21E2266B36E92F3C298C9C3497BDAD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=5 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpGRjIxRTIyNjZCMzZFOTJGM0MyOThDOUMzNDk3QkRBRDpJTlNUQUxMRURfQVQ6U2l0ZToxMkI3NjQyQzQ1NTBENjU3QkUwRDBGNUZGQjY5NzVCNA== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOkZGMjFFMjI2NkIzNkU5MkYzQzI5OEM5QzM0OTdCREFE 12B7642C4550D657BE0D0F5FFB6975B4 2F445AA5744FA3D230FD6838531F1407
-002B0219B739B88C8A813552EF1E8942 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=6 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTowMDJCMDIxOUI3MzlCODhDOEE4MTM1NTJFRjFFODk0MjpJTlNUQUxMRURfQVQ6U2l0ZTowOUM1Njg3MDBFMjgxODU1MzRBODM2OTQ2QTQwNjY1Ng== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOjAwMkIwMjE5QjczOUI4OEM4QTgxMzU1MkVGMUU4OTQy 09C568700E28185534A836946A406656 2F445AA5744FA3D230FD6838531F1407
-BEB01B90AC0099CA7C730D54C6A99F56 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=7 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpCRUIwMUI5MEFDMDA5OUNBN0M3MzBENTRDNkE5OUY1NjpJTlNUQUxMRURfQVQ6U2l0ZTpGRUYyMjQ0MTgyQkI1NzlGNUQ2N0MwMjRBREJFODUxMA== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOkJFQjAxQjkwQUMwMDk5Q0E3QzczMEQ1NEM2QTk5RjU2 FEF2244182BB579F5D67C024ADBE8510 2F445AA5744FA3D230FD6838531F1407
-1319EDC0A95609084682B331F0A05E82 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=8 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZToxMzE5RURDMEE5NTYwOTA4NDY4MkIzMzFGMEEwNUU4MjpJTlNUQUxMRURfQVQ6U2l0ZTo4NjYxQUVEQzkyQzdBNDI4QkJCNTEzNzE1MEE4NEVGRg== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpBbnRlbm5hTW9kdWxlOjEzMTlFREMwQTk1NjA5MDg0NjgyQjMzMUYwQTA1RTgy 8661AEDC92C7A428BBB5137150A84EFF 2F445AA5744FA3D230FD6838531F1407
-BD0E10BC55B7286F699DB340045053CA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=9 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpCRDBFMTBCQzU1QjcyODZGNjk5REIzNDAwNDUwNTNDQTpJTlNUQUxMRURfQVQ6U2l0ZTowNzY3NEQ0OTQ5MDhEMkI3OERGRDRBOTU1NUU4RkVDNw== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOkJEMEUxMEJDNTVCNzI4NkY2OTlEQjM0MDA0NTA1M0NB 07674D494908D2B78DFD4A9555E8FEC7 F5128C172A70C4FCD4739650B06DE9E2
-B4125EFB79D46BF9895709F985C92E99 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=10 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpCNDEyNUVGQjc5RDQ2QkY5ODk1NzA5Rjk4NUM5MkU5OTpJTlNUQUxMRURfQVQ6U2l0ZTo0NTEyNUIyMTdERUFFMDNFNkZGRTk5RTY0MTA4MjdDQg== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOkI0MTI1RUZCNzlENDZCRjk4OTU3MDlGOTg1QzkyRTk5 45125B217DEAE03E6FFE99E6410827CB F5128C172A70C4FCD4739650B06DE9E2
-72C76C03ED0B42FA3FE4F9D22C4AF9E1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=11 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTo3MkM3NkMwM0VEMEI0MkZBM0ZFNEY5RDIyQzRBRjlFMTpJTlNUQUxMRURfQVQ6U2l0ZTpENkM4QzI2MDE4RUM2QjAwOUI0NjY1OTBFMEU4Q0E4OQ== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOjcyQzc2QzAzRUQwQjQyRkEzRkU0RjlEMjJDNEFGOUUx D6C8C26018EC6B009B466590E0E8CA89 F5128C172A70C4FCD4739650B06DE9E2
-AD2DD15AC4E1DE0506843887B47C51A3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=12 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpBRDJERDE1QUM0RTFERTA1MDY4NDM4ODdCNDdDNTFBMzpJTlNUQUxMRURfQVQ6U2l0ZTpDMzBBOEVEMTRFRDU1OEM0MkQ0MEFCNTA3RTQ1QTIwQg== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOkFEMkREMTVBQzRFMURFMDUwNjg0Mzg4N0I0N0M1MUEz C30A8ED14ED558C42D40AB507E45A20B F5128C172A70C4FCD4739650B06DE9E2
-4C4E9998DAE30C954A93D78959FD511B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=13 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTo0QzRFOTk5OERBRTMwQzk1NEE5M0Q3ODk1OUZENTExQjpJTlNUQUxMRURfQVQ6U2l0ZTpBQjc4QkI0Q0NBQkVCREExRkFGMjhCNTgzRkVDRTFGNw== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOjRDNEU5OTk4REFFMzBDOTU0QTkzRDc4OTU5RkQ1MTFC AB78BB4CCABEBDA1FAF28B583FECE1F7 F5128C172A70C4FCD4739650B06DE9E2
-4ECA02165275FA17BE60AF1D27AAB529 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=14 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTo0RUNBMDIxNjUyNzVGQTE3QkU2MEFGMUQyN0FBQjUyOTpJTlNUQUxMRURfQVQ6U2l0ZTowRUYzQjNDMzU1QTFCODIyOTQ3N0M3MzAwMzMzMUVDRQ== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOjRFQ0EwMjE2NTI3NUZBMTdCRTYwQUYxRDI3QUFCNTI5 0EF3B3C355A1B8229477C73003331ECE F5128C172A70C4FCD4739650B06DE9E2
-AF388619F8517CBEAF23D06B4D3744FF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=15 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpBRjM4ODYxOUY4NTE3Q0JFQUYyM0QwNkI0RDM3NDRGRjpJTlNUQUxMRURfQVQ6U2l0ZTo1NDdENzFCNDNGODA0NDBDQ0NGNUJCQUE1OTJGMEJFOQ== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOkFGMzg4NjE5Rjg1MTdDQkVBRjIzRDA2QjREMzc0NEZG 547D71B43F80440CCCF5BBAA592F0BE9 F5128C172A70C4FCD4739650B06DE9E2
-42B4EEF09E97378B0E365F9BAAB50E1B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=16 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTo0MkI0RUVGMDlFOTczNzhCMEUzNjVGOUJBQUI1MEUxQjpJTlNUQUxMRURfQVQ6U2l0ZTo2REEwNDY2MzYxRkM3RkE4MDE5OTI1MjNDRUVCQjcwOA== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpBbnRlbm5hTW9kdWxlOjQyQjRFRUYwOUU5NzM3OEIwRTM2NUY5QkFBQjUwRTFC 6DA0466361FC7FA801992523CEEBB708 F5128C172A70C4FCD4739650B06DE9E2
-278A05C67D47D117C2DC5BDF5E00AE70 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=17 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZToyNzhBMDVDNjdENDdEMTE3QzJEQzVCREY1RTAwQUU3MDpJTlNUQUxMRURfQVQ6U2l0ZTpFNjJENTc5QTZFRTEyMDA3NDIwMjQ1ODA5MzJGQ0FCMw== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOjI3OEEwNUM2N0Q0N0QxMTdDMkRDNUJERjVFMDBBRTcw E62D579A6EE1200742024580932FCAB3 ADB1BAAC878C0BEEFE3175C60F44BB1D
-D52B212EDCBA464468608400BD348C29 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=18 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpENTJCMjEyRURDQkE0NjQ0Njg2MDg0MDBCRDM0OEMyOTpJTlNUQUxMRURfQVQ6U2l0ZTpERjhCQzMzMjAzRjkyOUJBODVFOUNFNTE5MDZDMzlFNw== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOkQ1MkIyMTJFRENCQTQ2NDQ2ODYwODQwMEJEMzQ4QzI5 DF8BC33203F929BA85E9CE51906C39E7 ADB1BAAC878C0BEEFE3175C60F44BB1D
-164612A68D6604469057C98DD4E4E3A5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=19 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZToxNjQ2MTJBNjhENjYwNDQ2OTA1N0M5OERENEU0RTNBNTpJTlNUQUxMRURfQVQ6U2l0ZTo3N0IwQ0NFNjBEQTNDQjFBNkI3NzEwMzU2Rjk4QkYyRA== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOjE2NDYxMkE2OEQ2NjA0NDY5MDU3Qzk4REQ0RTRFM0E1 77B0CCE60DA3CB1A6B7710356F98BF2D ADB1BAAC878C0BEEFE3175C60F44BB1D
-07608E09EFA9DDDAC261FFF29353EB7C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=20 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTowNzYwOEUwOUVGQTlERERBQzI2MUZGRjI5MzUzRUI3QzpJTlNUQUxMRURfQVQ6U2l0ZTpCQUUwOTNFOTVGMkFDNUZGMDhDODgzMDg5NkY0MDc0Qg== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOjA3NjA4RTA5RUZBOUREREFDMjYxRkZGMjkzNTNFQjdD BAE093E95F2AC5FF08C8830896F4074B ADB1BAAC878C0BEEFE3175C60F44BB1D
-D0D8E6F7F0C3E9A975C1A6EC002BB838 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=21 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpEMEQ4RTZGN0YwQzNFOUE5NzVDMUE2RUMwMDJCQjgzODpJTlNUQUxMRURfQVQ6U2l0ZTo4MEU1MzdBQjA0OEU3OTkwOURBNDAyOThFMDZCMDg5RA== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOkQwRDhFNkY3RjBDM0U5QTk3NUMxQTZFQzAwMkJCODM4 80E537AB048E79909DA40298E06B089D ADB1BAAC878C0BEEFE3175C60F44BB1D
-407B61608934EBEA646149D59327A8BA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=22 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTo0MDdCNjE2MDg5MzRFQkVBNjQ2MTQ5RDU5MzI3QThCQTpJTlNUQUxMRURfQVQ6U2l0ZTpFOEJBMUY3NDM0QTQ4NDIxNTBGQTI1OTUwNkE1NTQzNQ== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOjQwN0I2MTYwODkzNEVCRUE2NDYxNDlENTkzMjdBOEJB E8BA1F7434A4842150FA259506A55435 ADB1BAAC878C0BEEFE3175C60F44BB1D
-0582853FB1CB183BDCCFD5F309FE9BF4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=23 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTowNTgyODUzRkIxQ0IxODNCRENDRkQ1RjMwOUZFOUJGNDpJTlNUQUxMRURfQVQ6U2l0ZToyRERENTlDQTJFODYwRTI4Q0I4REVCMUZFQUIzQ0FCNA== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOjA1ODI4NTNGQjFDQjE4M0JEQ0NGRDVGMzA5RkU5QkY0 2DDD59CA2E860E28CB8DEB1FEAB3CAB4 ADB1BAAC878C0BEEFE3175C60F44BB1D
-D14658CD5DB0F54275424F619076E408 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=24 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTpEMTQ2NThDRDVEQjBGNTQyNzU0MjRGNjE5MDc2RTQwODpJTlNUQUxMRURfQVQ6U2l0ZTowQjJEQkQ1QjJDODFEOTI4M0JCNDU4QTAzQUJDMzA1Qw== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpBbnRlbm5hTW9kdWxlOkQxNDY1OENENURCMEY1NDI3NTQyNEY2MTkwNzZFNDA4 0B2DBD5B2C81D9283BB458A03ABC305C ADB1BAAC878C0BEEFE3175C60F44BB1D
-041E829548475CF0AAFC5D4F8F4AB0A3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/AntennaModule=25 ['123-abc'] 123 123 ['123', '456', '789'] 45 1 urn:base64:QW50ZW5uYU1vZHVsZTowNDFFODI5NTQ4NDc1Q0YwQUFGQzVENEY4RjRBQjBBMzpJTlNUQUxMRURfQVQ6U2l0ZTpFRkUzRjA5MkZGNTVDNzY4QjREMUU0NTlCMkE5M0REOA== \N EFE3F092FF55C768B4D1E459B2A93DD8 \N
-\.
-
-COPY ties_data."PhysicalNetworkAppliance" (id, name, type, "geo-location", "REL_PHYSICALNETWORKAPPLIANCE_INSTALLED_AT_SITE_EIID", "REL_PHYSICALNETWORKAPPLIANCE_INSTALLED_AT_SITE") FROM stdin;
-055A9686FA759CD56ADB783408497661 PhysicalNetworkAppliance=LTE00001234/1 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjA1NUE5Njg2RkE3NTlDRDU2QURCNzgzNDA4NDk3NjYxOklOU1RBTExFRF9BVDpTaXRlOkNGODlDMTc0RDA2ODU0QzBDNDFCNzREMkM0Njg0NkRE CF89C174D06854C0C41B74D2C46846DD
-D6158434F8DD2DC217EC2198636A5643 PhysicalNetworkAppliance=LTE00001234/2 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkQ2MTU4NDM0RjhERDJEQzIxN0VDMjE5ODYzNkE1NjQzOklOU1RBTExFRF9BVDpTaXRlOjI2ODc0RDMyNDFDRUZGRjYwRTA4NEZFRkNDNzJCOTcz 26874D3241CEFFF60E084FEFCC72B973
-B42BAF4C45D638133FEBDCC87E48866B PhysicalNetworkAppliance=LTE00001234/3 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkI0MkJBRjRDNDVENjM4MTMzRkVCRENDODdFNDg4NjZCOklOU1RBTExFRF9BVDpTaXRlOjA3NzhBNTc2NDVERTlEM0U0Qjc0RDMxRjlGNUNCODU4 0778A57645DE9D3E4B74D31F9F5CB858
-C29237C44DB2950D7A0AC8508B4B6B18 PhysicalNetworkAppliance=LTE00001234/4 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkMyOTIzN0M0NERCMjk1MEQ3QTBBQzg1MDhCNEI2QjE4OklOU1RBTExFRF9BVDpTaXRlOkY0QjNFNjYxOUJCRDE3NkI0RjJEQjc1NEFGNjUyNEJD F4B3E6619BBD176B4F2DB754AF6524BC
-E817613E06A4F215CDC8A67C1A0DD937 PhysicalNetworkAppliance=LTE00001234/5 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkU4MTc2MTNFMDZBNEYyMTVDREM4QTY3QzFBMEREOTM3OklOU1RBTExFRF9BVDpTaXRlOjA4RUNDOUU0QTM4MTc1NDE3NEVDNEIwMDQ1NDE4RjUz 08ECC9E4A381754174EC4B0045418F53
-13E106D008FBEED974FAB64773963AF9 PhysicalNetworkAppliance=LTE00001234/6 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjEzRTEwNkQwMDhGQkVFRDk3NEZBQjY0NzczOTYzQUY5OklOU1RBTExFRF9BVDpTaXRlOjEyQjc2NDJDNDU1MEQ2NTdCRTBEMEY1RkZCNjk3NUI0 12B7642C4550D657BE0D0F5FFB6975B4
-6AC6021909616829AD166CC7C924B638 PhysicalNetworkAppliance=LTE00001234/7 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjZBQzYwMjE5MDk2MTY4MjlBRDE2NkNDN0M5MjRCNjM4OklOU1RBTExFRF9BVDpTaXRlOjA5QzU2ODcwMEUyODE4NTUzNEE4MzY5NDZBNDA2NjU2 09C568700E28185534A836946A406656
-EE539591F77499CD48820297DC00441A PhysicalNetworkAppliance=LTE00001234/8 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkVFNTM5NTkxRjc3NDk5Q0Q0ODgyMDI5N0RDMDA0NDFBOklOU1RBTExFRF9BVDpTaXRlOkZFRjIyNDQxODJCQjU3OUY1RDY3QzAyNEFEQkU4NTEw FEF2244182BB579F5D67C024ADBE8510
-C9DD6DD96075F773CC2164519956D80A PhysicalNetworkAppliance=LTE00001234/9 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkM5REQ2REQ5NjA3NUY3NzNDQzIxNjQ1MTk5NTZEODBBOklOU1RBTExFRF9BVDpTaXRlOjg2NjFBRURDOTJDN0E0MjhCQkI1MTM3MTUwQTg0RUZG 8661AEDC92C7A428BBB5137150A84EFF
-1EBBE2C584784CF60E565DDC8D02B3C4 PhysicalNetworkAppliance=LTE00001234/10 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjFFQkJFMkM1ODQ3ODRDRjYwRTU2NUREQzhEMDJCM0M0OklOU1RBTExFRF9BVDpTaXRlOjA3Njc0RDQ5NDkwOEQyQjc4REZENEE5NTU1RThGRUM3 07674D494908D2B78DFD4A9555E8FEC7
-34B63E1FC50D1DA429CF5CA947157EFC PhysicalNetworkAppliance=LTE00001234/11 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjM0QjYzRTFGQzUwRDFEQTQyOUNGNUNBOTQ3MTU3RUZDOklOU1RBTExFRF9BVDpTaXRlOjQ1MTI1QjIxN0RFQUUwM0U2RkZFOTlFNjQxMDgyN0NC 45125B217DEAE03E6FFE99E6410827CB
-E23C9147FAD7958E85552A805D6DFCFF PhysicalNetworkAppliance=LTE00001234/12 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkUyM0M5MTQ3RkFENzk1OEU4NTU1MkE4MDVENkRGQ0ZGOklOU1RBTExFRF9BVDpTaXRlOkQ2QzhDMjYwMThFQzZCMDA5QjQ2NjU5MEUwRThDQTg5 D6C8C26018EC6B009B466590E0E8CA89
-EA2953CF0A080F10E6722AE92E858CBB PhysicalNetworkAppliance=LTE00001234/13 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkVBMjk1M0NGMEEwODBGMTBFNjcyMkFFOTJFODU4Q0JCOklOU1RBTExFRF9BVDpTaXRlOkMzMEE4RUQxNEVENTU4QzQyRDQwQUI1MDdFNDVBMjBC C30A8ED14ED558C42D40AB507E45A20B
-D92495521DCCC7DE492B5FEDC9D4A6E1 PhysicalNetworkAppliance=LTE00001234/14 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkQ5MjQ5NTUyMURDQ0M3REU0OTJCNUZFREM5RDRBNkUxOklOU1RBTExFRF9BVDpTaXRlOkFCNzhCQjRDQ0FCRUJEQTFGQUYyOEI1ODNGRUNFMUY3 AB78BB4CCABEBDA1FAF28B583FECE1F7
-B9B042D33BCC1CB074144DA3D5351DBF PhysicalNetworkAppliance=LTE00001234/15 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkI5QjA0MkQzM0JDQzFDQjA3NDE0NERBM0Q1MzUxREJGOklOU1RBTExFRF9BVDpTaXRlOjBFRjNCM0MzNTVBMUI4MjI5NDc3QzczMDAzMzMxRUNF 0EF3B3C355A1B8229477C73003331ECE
-2E27426BC7D0DC99770528300F2DC74C PhysicalNetworkAppliance=LTE00001234/16 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjJFMjc0MjZCQzdEMERDOTk3NzA1MjgzMDBGMkRDNzRDOklOU1RBTExFRF9BVDpTaXRlOjU0N0Q3MUI0M0Y4MDQ0MENDQ0Y1QkJBQTU5MkYwQkU5 547D71B43F80440CCCF5BBAA592F0BE9
-2312B923E694DBE508AC94E232D87CFF PhysicalNetworkAppliance=LTE00001234/17 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjIzMTJCOTIzRTY5NERCRTUwOEFDOTRFMjMyRDg3Q0ZGOklOU1RBTExFRF9BVDpTaXRlOjZEQTA0NjYzNjFGQzdGQTgwMTk5MjUyM0NFRUJCNzA4 6DA0466361FC7FA801992523CEEBB708
-041FA4CF0EE87A4C8F4D77C18A382819 PhysicalNetworkAppliance=LTE00001234/18 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjA0MUZBNENGMEVFODdBNEM4RjRENzdDMThBMzgyODE5OklOU1RBTExFRF9BVDpTaXRlOkU2MkQ1NzlBNkVFMTIwMDc0MjAyNDU4MDkzMkZDQUIz E62D579A6EE1200742024580932FCAB3
-268C22D2FBF9BFD9A46FCABD79E7423A PhysicalNetworkAppliance=LTE00001234/19 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjI2OEMyMkQyRkJGOUJGRDlBNDZGQ0FCRDc5RTc0MjNBOklOU1RBTExFRF9BVDpTaXRlOkRGOEJDMzMyMDNGOTI5QkE4NUU5Q0U1MTkwNkMzOUU3 DF8BC33203F929BA85E9CE51906C39E7
-3B02F5A1C69470E91834432761CAEBFB PhysicalNetworkAppliance=LTE00001234/20 ExampleType POINT(59.4019881 17.9419888) urn:base64:UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjNCMDJGNUExQzY5NDcwRTkxODM0NDMyNzYxQ0FFQkZCOklOU1RBTExFRF9BVDpTaXRlOjc3QjBDQ0U2MERBM0NCMUE2Qjc3MTAzNTZGOThCRjJE 77B0CCE60DA3CB1A6B7710356F98BF2D
-\.
-
-COPY ties_data."ENodeBFunction" (id, fdn, "eNBId", "eNodeBPlmnId", "REL_ENODEBFUNCTION_REALISED_BY_PHYSICALNETWORKAPPLIANCE_EIID", "REL_ENODEBFUNCTION_REALISED_BY_PHYSICALNETWORKAPPLIANCE") FROM stdin;
-8EFAD2F305499DCD360040BD6F57B54E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=1 1 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjA1NUE5Njg2RkE3NTlDRDU2QURCNzgzNDA4NDk3NjYx 055A9686FA759CD56ADB783408497661
-C6694F03768AF9EE83DC293C10473076 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=2 2 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkQ2MTU4NDM0RjhERDJEQzIxN0VDMjE5ODYzNkE1NjQz D6158434F8DD2DC217EC2198636A5643
-54D62577A2B3ED373FA47BBD89A67473 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=3 3 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkI0MkJBRjRDNDVENjM4MTMzRkVCRENDODdFNDg4NjZC B42BAF4C45D638133FEBDCC87E48866B
-3B603CD3E74F0F9053DEF063EFAF2012 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=4 4 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkMyOTIzN0M0NERCMjk1MEQ3QTBBQzg1MDhCNEI2QjE4 C29237C44DB2950D7A0AC8508B4B6B18
-1D9917590E5F75F44DF7EF626592C2C7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=5 5 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkU4MTc2MTNFMDZBNEYyMTVDREM4QTY3QzFBMEREOTM3 E817613E06A4F215CDC8A67C1A0DD937
-B3B3845E7D8910D6906B5EB41A8E0696 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=6 6 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjEzRTEwNkQwMDhGQkVFRDk3NEZBQjY0NzczOTYzQUY5 13E106D008FBEED974FAB64773963AF9
-4C8B24AC011A734A5FEBF321C77289AB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=7 7 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjZBQzYwMjE5MDk2MTY4MjlBRDE2NkNDN0M5MjRCNjM4 6AC6021909616829AD166CC7C924B638
-96220B64D4A4C6F6B17DF30B12B841D3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=8 8 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkVFNTM5NTkxRjc3NDk5Q0Q0ODgyMDI5N0RDMDA0NDFB EE539591F77499CD48820297DC00441A
-4FBA45FB12D28F9106A09E045DE90254 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=9 9 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkM5REQ2REQ5NjA3NUY3NzNDQzIxNjQ1MTk5NTZEODBB C9DD6DD96075F773CC2164519956D80A
-222B3B5942A23115B9C1AC2B94AF8548 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=10 10 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjFFQkJFMkM1ODQ3ODRDRjYwRTU2NUREQzhEMDJCM0M0 1EBBE2C584784CF60E565DDC8D02B3C4
-FDB1D1C7AC573BA174781DD2DD7359FE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=11 11 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjM0QjYzRTFGQzUwRDFEQTQyOUNGNUNBOTQ3MTU3RUZD 34B63E1FC50D1DA429CF5CA947157EFC
-FE3075645E2303A67B9D0BAD3CCB29BC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=12 12 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkUyM0M5MTQ3RkFENzk1OEU4NTU1MkE4MDVENkRGQ0ZG E23C9147FAD7958E85552A805D6DFCFF
-CF6B05084CD85A8C0943B77317510652 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=13 13 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkVBMjk1M0NGMEEwODBGMTBFNjcyMkFFOTJFODU4Q0JC EA2953CF0A080F10E6722AE92E858CBB
-8094F5C9E30C346536F0A08A851338F6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=14 14 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkQ5MjQ5NTUyMURDQ0M3REU0OTJCNUZFREM5RDRBNkUx D92495521DCCC7DE492B5FEDC9D4A6E1
-E87A72FDF835513E6BACBF730D5BA6C8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=15 15 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOkI5QjA0MkQzM0JDQzFDQjA3NDE0NERBM0Q1MzUxREJG B9B042D33BCC1CB074144DA3D5351DBF
-8E99154C3A70826BBD373F06BC1C752B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=16 16 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjJFMjc0MjZCQzdEMERDOTk3NzA1MjgzMDBGMkRDNzRD 2E27426BC7D0DC99770528300F2DC74C
-CEE5D7B02D903A316D0A017C50FC9993 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=17 17 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjIzMTJCOTIzRTY5NERCRTUwOEFDOTRFMjMyRDg3Q0ZG 2312B923E694DBE508AC94E232D87CFF
-E240B26BA8EE38087134B6D22E24BBDB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=18 18 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjA0MUZBNENGMEVFODdBNEM4RjRENzdDMThBMzgyODE5 041FA4CF0EE87A4C8F4D77C18A382819
-FC195225D4CD060E249281C9BBDAF964 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=19 19 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjI2OEMyMkQyRkJGOUJGRDlBNDZGQ0FCRDc5RTc0MjNB 268C22D2FBF9BFD9A46FCABD79E7423A
-0C2651AB5D430123729B336E8635E0E0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/ENodeBFunction=20 20 {"mcc": "02", "mnc": "456", "mncLength": "3"} urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UkVBTElTRURfQlk6UGh5c2ljYWxOZXR3b3JrQXBwbGlhbmNlOjNCMDJGNUExQzY5NDcwRTkxODM0NDMyNzYxQ0FFQkZC 3B02F5A1C69470E91834432761CAEBFB
-\.
-
-COPY ties_data."EUtranCell" (id, fdn, "cellId", earfcndl, earfcnul, earfcn, tac, "duplexType", "REL_ENODEBFUNCTION_PROVIDES_EUTRANCELL_EIID", "REL_SECTOR_GROUPS_EUTRANCELL_EIID", "REL_ENODEBFUNCTION_PROVIDES_EUTRANCELL", "REL_SECTOR_GROUPS_EUTRANCELL") FROM stdin;
-12AE3AAB332B7CBA75F5B61A3E11D9D7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=1 1 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6RVV0cmFuQ2VsbDoxMkFFM0FBQjMzMkI3Q0JBNzVGNUI2MUEzRTExRDlENw== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjEyQUUzQUFCMzMyQjdDQkE3NUY1QjYxQTNFMTFEOUQ3 8EFAD2F305499DCD360040BD6F57B54E 2F445AA5744FA3D230FD6838531F1407
-21212B52246A87F922337659491424E2 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=2 2 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6RVV0cmFuQ2VsbDoyMTIxMkI1MjI0NkE4N0Y5MjIzMzc2NTk0OTE0MjRFMg== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjIxMjEyQjUyMjQ2QTg3RjkyMjMzNzY1OTQ5MTQyNEUy 8EFAD2F305499DCD360040BD6F57B54E 2F445AA5744FA3D230FD6838531F1407
-C9DD733A18BC9CA66EAE0AA5688EE685 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=3 3 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6RVV0cmFuQ2VsbDpDOURENzMzQTE4QkM5Q0E2NkVBRTBBQTU2ODhFRTY4NQ== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOkM5REQ3MzNBMThCQzlDQTY2RUFFMEFBNTY4OEVFNjg1 8EFAD2F305499DCD360040BD6F57B54E 2F445AA5744FA3D230FD6838531F1407
-63E88935744D6C3EB59EFE02CDABC063 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=4 4 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6RVV0cmFuQ2VsbDo2M0U4ODkzNTc0NEQ2QzNFQjU5RUZFMDJDREFCQzA2Mw== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjYzRTg4OTM1NzQ0RDZDM0VCNTlFRkUwMkNEQUJDMDYz 8EFAD2F305499DCD360040BD6F57B54E 2F445AA5744FA3D230FD6838531F1407
-59A2204924C4C1601A19AC8847D302E8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=5 5 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6RVV0cmFuQ2VsbDo1OUEyMjA0OTI0QzRDMTYwMUExOUFDODg0N0QzMDJFOA== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjU5QTIyMDQ5MjRDNEMxNjAxQTE5QUM4ODQ3RDMwMkU4 C6694F03768AF9EE83DC293C10473076 2F445AA5744FA3D230FD6838531F1407
-8926691599892761C9FF8CF3F325068E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=6 6 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6RVV0cmFuQ2VsbDo4OTI2NjkxNTk5ODkyNzYxQzlGRjhDRjNGMzI1MDY4RQ== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjg5MjY2OTE1OTk4OTI3NjFDOUZGOENGM0YzMjUwNjhF C6694F03768AF9EE83DC293C10473076 2F445AA5744FA3D230FD6838531F1407
-689B6BBFDD5B426FEDA6B1CE46F8B893 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=7 7 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6RVV0cmFuQ2VsbDo2ODlCNkJCRkRENUI0MjZGRURBNkIxQ0U0NkY4Qjg5Mw== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjY4OUI2QkJGREQ1QjQyNkZFREE2QjFDRTQ2RjhCODkz C6694F03768AF9EE83DC293C10473076 2F445AA5744FA3D230FD6838531F1407
-A275D1706536A77D7ABA6BA2A3C56DFE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=8 8 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6RVV0cmFuQ2VsbDpBMjc1RDE3MDY1MzZBNzdEN0FCQTZCQTJBM0M1NkRGRQ== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOkEyNzVEMTcwNjUzNkE3N0Q3QUJBNkJBMkEzQzU2REZF C6694F03768AF9EE83DC293C10473076 2F445AA5744FA3D230FD6838531F1407
-08ABC73D86C5B8380BBC5B524CCEC862 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=9 9 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6RVV0cmFuQ2VsbDowOEFCQzczRDg2QzVCODM4MEJCQzVCNTI0Q0NFQzg2Mg== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjA4QUJDNzNEODZDNUI4MzgwQkJDNUI1MjRDQ0VDODYy 54D62577A2B3ED373FA47BBD89A67473 2F445AA5744FA3D230FD6838531F1407
-B611F63DE77FC5C333A17EC047E5EF43 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=10 10 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6RVV0cmFuQ2VsbDpCNjExRjYzREU3N0ZDNUMzMzNBMTdFQzA0N0U1RUY0Mw== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOkI2MTFGNjNERTc3RkM1QzMzM0ExN0VDMDQ3RTVFRjQz 54D62577A2B3ED373FA47BBD89A67473 2F445AA5744FA3D230FD6838531F1407
-CF8344F795B13350050E52C83B97DCB9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=11 11 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6RVV0cmFuQ2VsbDpDRjgzNDRGNzk1QjEzMzUwMDUwRTUyQzgzQjk3RENCOQ== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOkNGODM0NEY3OTVCMTMzNTAwNTBFNTJDODNCOTdEQ0I5 54D62577A2B3ED373FA47BBD89A67473 2F445AA5744FA3D230FD6838531F1407
-59A2E7E8504125EB8DF3765FAEBAA53B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=12 12 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6RVV0cmFuQ2VsbDo1OUEyRTdFODUwNDEyNUVCOERGMzc2NUZBRUJBQTUzQg== urn:base64:U2VjdG9yOjJGNDQ1QUE1NzQ0RkEzRDIzMEZENjgzODUzMUYxNDA3OkdST1VQUzpFVXRyYW5DZWxsOjU5QTJFN0U4NTA0MTI1RUI4REYzNzY1RkFFQkFBNTNC 54D62577A2B3ED373FA47BBD89A67473 2F445AA5744FA3D230FD6838531F1407
-DBA83230C0FA71993F8FDD836354223E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=13 13 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6RVV0cmFuQ2VsbDpEQkE4MzIzMEMwRkE3MTk5M0Y4RkREODM2MzU0MjIzRQ== \N 3B603CD3E74F0F9053DEF063EFAF2012 \N
-E0FECB6B51C69932562B6C194362CC8E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=14 14 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6RVV0cmFuQ2VsbDpFMEZFQ0I2QjUxQzY5OTMyNTYyQjZDMTk0MzYyQ0M4RQ== \N 3B603CD3E74F0F9053DEF063EFAF2012 \N
-227EC58BE9277A999B66B53E6C616CF8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=15 15 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6RVV0cmFuQ2VsbDoyMjdFQzU4QkU5Mjc3QTk5OUI2NkI1M0U2QzYxNkNGOA== \N 3B603CD3E74F0F9053DEF063EFAF2012 \N
-A5D220B1DFEA928C17B8BB92DF126488 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=16 16 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6RVV0cmFuQ2VsbDpBNUQyMjBCMURGRUE5MjhDMTdCOEJCOTJERjEyNjQ4OA== \N 3B603CD3E74F0F9053DEF063EFAF2012 \N
-67FFC7F75A2EF0CAAC8CE70AAF72B105 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=17 17 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6RVV0cmFuQ2VsbDo2N0ZGQzdGNzVBMkVGMENBQUM4Q0U3MEFBRjcyQjEwNQ== \N 1D9917590E5F75F44DF7EF626592C2C7 \N
-BB1843D2601AE705F34BF12D2A422033 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=18 18 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6RVV0cmFuQ2VsbDpCQjE4NDNEMjYwMUFFNzA1RjM0QkYxMkQyQTQyMjAzMw== \N 1D9917590E5F75F44DF7EF626592C2C7 \N
-8F6E230CF265F8C5A14792C09A668690 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=19 19 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6RVV0cmFuQ2VsbDo4RjZFMjMwQ0YyNjVGOEM1QTE0NzkyQzA5QTY2ODY5MA== \N 1D9917590E5F75F44DF7EF626592C2C7 \N
-65A7BB72ABC34E7D2C9D20BD22B03F60 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=20 20 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6RVV0cmFuQ2VsbDo2NUE3QkI3MkFCQzM0RTdEMkM5RDIwQkQyMkIwM0Y2MA== \N 1D9917590E5F75F44DF7EF626592C2C7 \N
-47518775399CE9F74BA299FC7C033732 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=21 21 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6RVV0cmFuQ2VsbDo0NzUxODc3NTM5OUNFOUY3NEJBMjk5RkM3QzAzMzczMg== \N B3B3845E7D8910D6906B5EB41A8E0696 \N
-F4C7D348240B9E2AE1C30DBA8A8225FC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=22 22 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6RVV0cmFuQ2VsbDpGNEM3RDM0ODI0MEI5RTJBRTFDMzBEQkE4QTgyMjVGQw== \N B3B3845E7D8910D6906B5EB41A8E0696 \N
-0157056AAD7D700AB74649AD23AB3516 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=23 23 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6RVV0cmFuQ2VsbDowMTU3MDU2QUFEN0Q3MDBBQjc0NjQ5QUQyM0FCMzUxNg== \N B3B3845E7D8910D6906B5EB41A8E0696 \N
-B4066E743DCF48F02433A30045B2BD67 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=24 24 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6RVV0cmFuQ2VsbDpCNDA2NkU3NDNEQ0Y0OEYwMjQzM0EzMDA0NUIyQkQ2Nw== \N B3B3845E7D8910D6906B5EB41A8E0696 \N
-9481FE5EE7027E8FFC5F6C5054E0458D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=25 25 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6RVV0cmFuQ2VsbDo5NDgxRkU1RUU3MDI3RThGRkM1RjZDNTA1NEUwNDU4RA== \N 4C8B24AC011A734A5FEBF321C77289AB \N
-642E1BBE8723AC9C4590F6703EDC44F1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=26 26 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6RVV0cmFuQ2VsbDo2NDJFMUJCRTg3MjNBQzlDNDU5MEY2NzAzRURDNDRGMQ== \N 4C8B24AC011A734A5FEBF321C77289AB \N
-123345DFD745627E51F8E140993329B1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=27 27 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6RVV0cmFuQ2VsbDoxMjMzNDVERkQ3NDU2MjdFNTFGOEUxNDA5OTMzMjlCMQ== \N 4C8B24AC011A734A5FEBF321C77289AB \N
-204DA5409FF80E9758648DB75A639FB3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=28 28 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6RVV0cmFuQ2VsbDoyMDREQTU0MDlGRjgwRTk3NTg2NDhEQjc1QTYzOUZCMw== \N 4C8B24AC011A734A5FEBF321C77289AB \N
-02D627EE69354C3244CF3CE887BE50F3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=29 29 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6RVV0cmFuQ2VsbDowMkQ2MjdFRTY5MzU0QzMyNDRDRjNDRTg4N0JFNTBGMw== \N 96220B64D4A4C6F6B17DF30B12B841D3 \N
-E7970AA806886DD3DD228D9AD939E8B5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=30 30 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6RVV0cmFuQ2VsbDpFNzk3MEFBODA2ODg2REQzREQyMjhEOUFEOTM5RThCNQ== \N 96220B64D4A4C6F6B17DF30B12B841D3 \N
-C677054B2AA8339E00BCD230E3785DA3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=31 31 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6RVV0cmFuQ2VsbDpDNjc3MDU0QjJBQTgzMzlFMDBCQ0QyMzBFMzc4NURBMw== \N 96220B64D4A4C6F6B17DF30B12B841D3 \N
-7FAE51F52ECAC791B2407BDB68B5A7F7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=32 32 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6RVV0cmFuQ2VsbDo3RkFFNTFGNTJFQ0FDNzkxQjI0MDdCREI2OEI1QTdGNw== \N 96220B64D4A4C6F6B17DF30B12B841D3 \N
-67D200D0CC216063129C7A9E844BF0F0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=33 33 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6RVV0cmFuQ2VsbDo2N0QyMDBEMENDMjE2MDYzMTI5QzdBOUU4NDRCRjBGMA== \N 4FBA45FB12D28F9106A09E045DE90254 \N
-30B303C19C0C8F057A1D2397105D346E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=34 34 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6RVV0cmFuQ2VsbDozMEIzMDNDMTlDMEM4RjA1N0ExRDIzOTcxMDVEMzQ2RQ== \N 4FBA45FB12D28F9106A09E045DE90254 \N
-98037769BA85EBE942522D5C4C6CB02F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=35 35 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6RVV0cmFuQ2VsbDo5ODAzNzc2OUJBODVFQkU5NDI1MjJENUM0QzZDQjAyRg== \N 4FBA45FB12D28F9106A09E045DE90254 \N
-B2C3516887144F66EF3F31F641737DA0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=36 36 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6RVV0cmFuQ2VsbDpCMkMzNTE2ODg3MTQ0RjY2RUYzRjMxRjY0MTczN0RBMA== \N 4FBA45FB12D28F9106A09E045DE90254 \N
-E312426E3CEA83823D343B265B38818A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=37 37 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6RVV0cmFuQ2VsbDpFMzEyNDI2RTNDRUE4MzgyM0QzNDNCMjY1QjM4ODE4QQ== \N 222B3B5942A23115B9C1AC2B94AF8548 \N
-A7925E8575009D0F16D185E257879770 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=38 38 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6RVV0cmFuQ2VsbDpBNzkyNUU4NTc1MDA5RDBGMTZEMTg1RTI1Nzg3OTc3MA== \N 222B3B5942A23115B9C1AC2B94AF8548 \N
-72BC25B5613B9BC530820958F393E90C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=39 39 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6RVV0cmFuQ2VsbDo3MkJDMjVCNTYxM0I5QkM1MzA4MjA5NThGMzkzRTkwQw== \N 222B3B5942A23115B9C1AC2B94AF8548 \N
-AAF63B5C5CE80B318F4452560C9B5E5B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=40 40 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6RVV0cmFuQ2VsbDpBQUY2M0I1QzVDRTgwQjMxOEY0NDUyNTYwQzlCNUU1Qg== \N 222B3B5942A23115B9C1AC2B94AF8548 \N
-E0F686B41ABE51CF5C009608A1BB984F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=41 41 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6RVV0cmFuQ2VsbDpFMEY2ODZCNDFBQkU1MUNGNUMwMDk2MDhBMUJCOTg0Rg== \N FDB1D1C7AC573BA174781DD2DD7359FE \N
-0AB0C425E937EE4E7B798798520F1CA3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=42 42 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6RVV0cmFuQ2VsbDowQUIwQzQyNUU5MzdFRTRFN0I3OTg3OTg1MjBGMUNBMw== \N FDB1D1C7AC573BA174781DD2DD7359FE \N
-ABAC1A34D71EAE18E71987C15DED1D71 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=43 43 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6RVV0cmFuQ2VsbDpBQkFDMUEzNEQ3MUVBRTE4RTcxOTg3QzE1REVEMUQ3MQ== \N FDB1D1C7AC573BA174781DD2DD7359FE \N
-BB47B85699CA2CACFF9F2011FA2D6CC2 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=44 44 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6RVV0cmFuQ2VsbDpCQjQ3Qjg1Njk5Q0EyQ0FDRkY5RjIwMTFGQTJENkNDMg== \N FDB1D1C7AC573BA174781DD2DD7359FE \N
-FB6CBB0CBBC6F11868B94ED977156677 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=45 45 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6RVV0cmFuQ2VsbDpGQjZDQkIwQ0JCQzZGMTE4NjhCOTRFRDk3NzE1NjY3Nw== \N FE3075645E2303A67B9D0BAD3CCB29BC \N
-04288A9A95188D1F1DD59C90A49D2649 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=46 46 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6RVV0cmFuQ2VsbDowNDI4OEE5QTk1MTg4RDFGMURENTlDOTBBNDlEMjY0OQ== \N FE3075645E2303A67B9D0BAD3CCB29BC \N
-2A6054CCCD7179F09BC118B2818B1ADE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=47 47 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6RVV0cmFuQ2VsbDoyQTYwNTRDQ0NENzE3OUYwOUJDMTE4QjI4MThCMUFERQ== \N FE3075645E2303A67B9D0BAD3CCB29BC \N
-51C5046896461BA89744F75384ABDB93 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=48 48 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6RVV0cmFuQ2VsbDo1MUM1MDQ2ODk2NDYxQkE4OTc0NEY3NTM4NEFCREI5Mw== \N FE3075645E2303A67B9D0BAD3CCB29BC \N
-7C9D2459365CC80BCEC84E4DB9713120 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=49 49 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6RVV0cmFuQ2VsbDo3QzlEMjQ1OTM2NUNDODBCQ0VDODRFNERCOTcxMzEyMA== \N CF6B05084CD85A8C0943B77317510652 \N
-9C4358CADC08E56A19E8FEE1C01A706F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=50 50 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6RVV0cmFuQ2VsbDo5QzQzNThDQURDMDhFNTZBMTlFOEZFRTFDMDFBNzA2Rg== \N CF6B05084CD85A8C0943B77317510652 \N
-F40242B0F0708E09BB07635BC7505776 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=51 51 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6RVV0cmFuQ2VsbDpGNDAyNDJCMEYwNzA4RTA5QkIwNzYzNUJDNzUwNTc3Ng== \N CF6B05084CD85A8C0943B77317510652 \N
-353E445EAFE3FA586D6768F72A2623A4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=52 52 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6RVV0cmFuQ2VsbDozNTNFNDQ1RUFGRTNGQTU4NkQ2NzY4RjcyQTI2MjNBNA== \N CF6B05084CD85A8C0943B77317510652 \N
-7DF9374EADA6885BF3CEF2318894608C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=53 53 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6RVV0cmFuQ2VsbDo3REY5Mzc0RUFEQTY4ODVCRjNDRUYyMzE4ODk0NjA4Qw== \N 8094F5C9E30C346536F0A08A851338F6 \N
-3DA35D49D1D9C51A234035AD3A3FD37E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=54 54 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6RVV0cmFuQ2VsbDozREEzNUQ0OUQxRDlDNTFBMjM0MDM1QUQzQTNGRDM3RQ== \N 8094F5C9E30C346536F0A08A851338F6 \N
-2A112353EC75F9AC2BA43EE708296A01 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=55 55 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6RVV0cmFuQ2VsbDoyQTExMjM1M0VDNzVGOUFDMkJBNDNFRTcwODI5NkEwMQ== \N 8094F5C9E30C346536F0A08A851338F6 \N
-139F0AD2D641D97177702FBF5EFF30FE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=56 56 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6RVV0cmFuQ2VsbDoxMzlGMEFEMkQ2NDFEOTcxNzc3MDJGQkY1RUZGMzBGRQ== \N 8094F5C9E30C346536F0A08A851338F6 \N
-8FF0611DA8F0CD68E3A215AA07CBB20D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=57 57 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6RVV0cmFuQ2VsbDo4RkYwNjExREE4RjBDRDY4RTNBMjE1QUEwN0NCQjIwRA== \N E87A72FDF835513E6BACBF730D5BA6C8 \N
-5CAC3487A85DDDD336B1F580FD5F72DD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=58 58 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6RVV0cmFuQ2VsbDo1Q0FDMzQ4N0E4NUREREQzMzZCMUY1ODBGRDVGNzJERA== \N E87A72FDF835513E6BACBF730D5BA6C8 \N
-73C0EC78E9DAEE5347D45F10570EC851 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=59 59 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6RVV0cmFuQ2VsbDo3M0MwRUM3OEU5REFFRTUzNDdENDVGMTA1NzBFQzg1MQ== \N E87A72FDF835513E6BACBF730D5BA6C8 \N
-98BDDA8B54B7B8927675E77C927D8283 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=60 60 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6RVV0cmFuQ2VsbDo5OEJEREE4QjU0QjdCODkyNzY3NUU3N0M5MjdEODI4Mw== \N E87A72FDF835513E6BACBF730D5BA6C8 \N
-71356FCE5C6358DAE8F8BF3F7C9BF014 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=61 61 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6RVV0cmFuQ2VsbDo3MTM1NkZDRTVDNjM1OERBRThGOEJGM0Y3QzlCRjAxNA== \N 8E99154C3A70826BBD373F06BC1C752B \N
-E5489E6D6CC07891F541BE41EF37AA63 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=62 62 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6RVV0cmFuQ2VsbDpFNTQ4OUU2RDZDQzA3ODkxRjU0MUJFNDFFRjM3QUE2Mw== \N 8E99154C3A70826BBD373F06BC1C752B \N
-D0EA58BE0AC1671B936F15C67DEA8892 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=63 63 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6RVV0cmFuQ2VsbDpEMEVBNThCRTBBQzE2NzFCOTM2RjE1QzY3REVBODg5Mg== \N 8E99154C3A70826BBD373F06BC1C752B \N
-9A030D9EDC0C8B04A0C5D24A3A223137 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=64 64 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6RVV0cmFuQ2VsbDo5QTAzMEQ5RURDMEM4QjA0QTBDNUQyNEEzQTIyMzEzNw== \N 8E99154C3A70826BBD373F06BC1C752B \N
-566B9566A40AB0CCF1684A8C75D6E8F0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=65 65 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6RVV0cmFuQ2VsbDo1NjZCOTU2NkE0MEFCMENDRjE2ODRBOEM3NUQ2RThGMA== \N CEE5D7B02D903A316D0A017C50FC9993 \N
-A5587D51DDB4D1AAF88075EFAFD3FF1A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=66 66 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6RVV0cmFuQ2VsbDpBNTU4N0Q1MUREQjREMUFBRjg4MDc1RUZBRkQzRkYxQQ== \N CEE5D7B02D903A316D0A017C50FC9993 \N
-792FC15FA3F55562373FF5B67C8979D9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=67 67 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6RVV0cmFuQ2VsbDo3OTJGQzE1RkEzRjU1NTYyMzczRkY1QjY3Qzg5NzlEOQ== \N CEE5D7B02D903A316D0A017C50FC9993 \N
-6FAAB53473F084DC886D1E04265EEAD1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=68 68 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6RVV0cmFuQ2VsbDo2RkFBQjUzNDczRjA4NERDODg2RDFFMDQyNjVFRUFEMQ== \N CEE5D7B02D903A316D0A017C50FC9993 \N
-07B3711677085E16F48AED99BEA40966 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=69 69 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6RVV0cmFuQ2VsbDowN0IzNzExNjc3MDg1RTE2RjQ4QUVEOTlCRUE0MDk2Ng== \N E240B26BA8EE38087134B6D22E24BBDB \N
-B95EBE4245801D7185E1D05E5BBDA3F3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=70 70 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6RVV0cmFuQ2VsbDpCOTVFQkU0MjQ1ODAxRDcxODVFMUQwNUU1QkJEQTNGMw== \N E240B26BA8EE38087134B6D22E24BBDB \N
-ABFBE9EA7673A191DB6A51439D5515D5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=71 71 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6RVV0cmFuQ2VsbDpBQkZCRTlFQTc2NzNBMTkxREI2QTUxNDM5RDU1MTVENQ== \N E240B26BA8EE38087134B6D22E24BBDB \N
-62EDC7D4D6A1D361E12FEB2688E43A89 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=72 72 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6RVV0cmFuQ2VsbDo2MkVEQzdENEQ2QTFEMzYxRTEyRkVCMjY4OEU0M0E4OQ== \N E240B26BA8EE38087134B6D22E24BBDB \N
-EE7B5EBAE21343E68AC197150FA2655E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=73 73 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6RVV0cmFuQ2VsbDpFRTdCNUVCQUUyMTM0M0U2OEFDMTk3MTUwRkEyNjU1RQ== \N FC195225D4CD060E249281C9BBDAF964 \N
-478CB1731C71BE849B0D82F3208F70CF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=74 74 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6RVV0cmFuQ2VsbDo0NzhDQjE3MzFDNzFCRTg0OUIwRDgyRjMyMDhGNzBDRg== \N FC195225D4CD060E249281C9BBDAF964 \N
-5D6F3B494FECE0D7BC46735D63ECA50B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=75 75 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6RVV0cmFuQ2VsbDo1RDZGM0I0OTRGRUNFMEQ3QkM0NjczNUQ2M0VDQTUwQg== \N FC195225D4CD060E249281C9BBDAF964 \N
-F818AA36B5E1456B32FB3B90157F15AD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=76 76 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6RVV0cmFuQ2VsbDpGODE4QUEzNkI1RTE0NTZCMzJGQjNCOTAxNTdGMTVBRA== \N FC195225D4CD060E249281C9BBDAF964 \N
-8EAABBB2C9D4996C8AD94154903052CC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=77 77 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6RVV0cmFuQ2VsbDo4RUFBQkJCMkM5RDQ5OTZDOEFEOTQxNTQ5MDMwNTJDQw== \N 0C2651AB5D430123729B336E8635E0E0 \N
-CAC6EF5CC954F7A7F5294A643CD7A160 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=78 78 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6RVV0cmFuQ2VsbDpDQUM2RUY1Q0M5NTRGN0E3RjUyOTRBNjQzQ0Q3QTE2MA== \N 0C2651AB5D430123729B336E8635E0E0 \N
-1053CE2AEBEE6B32C846C33B07E0B047 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=79 79 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6RVV0cmFuQ2VsbDoxMDUzQ0UyQUVCRUU2QjMyQzg0NkMzM0IwN0UwQjA0Nw== \N 0C2651AB5D430123729B336E8635E0E0 \N
-803132C8AC37DED60CB9CB9986D9BC3D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/EUtranCell=80 80 456 789 123 1 FDD urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6RVV0cmFuQ2VsbDo4MDMxMzJDOEFDMzdERUQ2MENCOUNCOTk4NkQ5QkMzRA== \N 0C2651AB5D430123729B336E8635E0E0 \N
-\.
-
-COPY ties_data."NRCellDU" (id, fdn, "cellLocalId", "nCI", "nRPCI", "nRTAC", "REL_ODUFUNCTION_PROVIDES_NRCELLDU_EIID", "REL_SECTOR_GROUPS_NRCELLDU_EIID", "REL_ODUFUNCTION_PROVIDES_NRCELLDU", "REL_SECTOR_GROUPS_NRCELLDU") FROM stdin;
-98C3A4591A37718E1330F0294E23B62A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=1 1 1 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTo5OEMzQTQ1OTFBMzc3MThFMTMzMEYwMjk0RTIzQjYyQQ== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTo5OEMzQTQ1OTFBMzc3MThFMTMzMEYwMjk0RTIzQjYyQQ== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-F9546E82313AC1D5E690DCD7BE55606F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=2 2 2 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTpGOTU0NkU4MjMxM0FDMUQ1RTY5MERDRDdCRTU1NjA2Rg== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTpGOTU0NkU4MjMxM0FDMUQ1RTY5MERDRDdCRTU1NjA2Rg== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-B480427E8A0C0B8D994E437784BB382F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=3 3 3 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTpCNDgwNDI3RThBMEMwQjhEOTk0RTQzNzc4NEJCMzgyRg== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTpCNDgwNDI3RThBMEMwQjhEOTk0RTQzNzc4NEJCMzgyRg== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-484B341310A36215155122DE74EAE16A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=4 4 4 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTo0ODRCMzQxMzEwQTM2MjE1MTU1MTIyREU3NEVBRTE2QQ== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTo0ODRCMzQxMzEwQTM2MjE1MTU1MTIyREU3NEVBRTE2QQ== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-377AA96B4B3A8FE106C9BAF63FE8460B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=5 5 5 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTozNzdBQTk2QjRCM0E4RkUxMDZDOUJBRjYzRkU4NDYwQg== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTozNzdBQTk2QjRCM0E4RkUxMDZDOUJBRjYzRkU4NDYwQg== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-3AF2208A5956F07644D8F3ED7C62BDCF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=6 6 6 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTozQUYyMjA4QTU5NTZGMDc2NDREOEYzRUQ3QzYyQkRDRg== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTozQUYyMjA4QTU5NTZGMDc2NDREOEYzRUQ3QzYyQkRDRg== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-44ABAEE2A77A5FC2C8121B95FFA5626D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=7 7 7 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTo0NEFCQUVFMkE3N0E1RkMyQzgxMjFCOTVGRkE1NjI2RA== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTo0NEFCQUVFMkE3N0E1RkMyQzgxMjFCOTVGRkE1NjI2RA== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-4E40B4CB518D7F6C4B0288A90DB81347 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=8 8 8 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTo0RTQwQjRDQjUxOEQ3RjZDNEIwMjg4QTkwREI4MTM0Nw== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTo0RTQwQjRDQjUxOEQ3RjZDNEIwMjg4QTkwREI4MTM0Nw== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-CF729A0BBC39E5077CB5674206A67359 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=9 9 9 789 456 urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUkNlbGxEVTpDRjcyOUEwQkJDMzlFNTA3N0NCNTY3NDIwNkE2NzM1OQ== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTpDRjcyOUEwQkJDMzlFNTA3N0NCNTY3NDIwNkE2NzM1OQ== D3215E08570BE58339C7463626B50E37 F5128C172A70C4FCD4739650B06DE9E2
-FB7A92ED495FE5B08EA1E32353F67608 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=10 10 10 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTpGQjdBOTJFRDQ5NUZFNUIwOEVBMUUzMjM1M0Y2NzYwOA== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTpGQjdBOTJFRDQ5NUZFNUIwOEVBMUUzMjM1M0Y2NzYwOA== 1050570EBB1315E1AE7A9FD5E1400A00 F5128C172A70C4FCD4739650B06DE9E2
-E8065644717ED15F3504B5EE71BB0894 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=11 11 11 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTpFODA2NTY0NDcxN0VEMTVGMzUwNEI1RUU3MUJCMDg5NA== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTpFODA2NTY0NDcxN0VEMTVGMzUwNEI1RUU3MUJCMDg5NA== 1050570EBB1315E1AE7A9FD5E1400A00 F5128C172A70C4FCD4739650B06DE9E2
-4463C3D2F7B388323A82105E854AEA1C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=12 12 12 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTo0NDYzQzNEMkY3QjM4ODMyM0E4MjEwNUU4NTRBRUExQw== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTo0NDYzQzNEMkY3QjM4ODMyM0E4MjEwNUU4NTRBRUExQw== 1050570EBB1315E1AE7A9FD5E1400A00 F5128C172A70C4FCD4739650B06DE9E2
-897C562A5D8EE22746AC4D4804505B69 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=13 13 13 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTo4OTdDNTYyQTVEOEVFMjI3NDZBQzRENDgwNDUwNUI2OQ== urn:base64:U2VjdG9yOkY1MTI4QzE3MkE3MEM0RkNENDczOTY1MEIwNkRFOUUyOkdST1VQUzpOUkNlbGxEVTo4OTdDNTYyQTVEOEVFMjI3NDZBQzRENDgwNDUwNUI2OQ== 1050570EBB1315E1AE7A9FD5E1400A00 F5128C172A70C4FCD4739650B06DE9E2
-84E7155DAD6793A5EBFFE72449F7749B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=14 14 14 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTo4NEU3MTU1REFENjc5M0E1RUJGRkU3MjQ0OUY3NzQ5Qg== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTo4NEU3MTU1REFENjc5M0E1RUJGRkU3MjQ0OUY3NzQ5Qg== 1050570EBB1315E1AE7A9FD5E1400A00 ADB1BAAC878C0BEEFE3175C60F44BB1D
-0646A41A30151B59BC1D91073C162257 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=15 15 15 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTowNjQ2QTQxQTMwMTUxQjU5QkMxRDkxMDczQzE2MjI1Nw== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTowNjQ2QTQxQTMwMTUxQjU5QkMxRDkxMDczQzE2MjI1Nw== 1050570EBB1315E1AE7A9FD5E1400A00 ADB1BAAC878C0BEEFE3175C60F44BB1D
-45627D636D7A45357F6F23661BA77C85 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=16 16 16 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTo0NTYyN0Q2MzZEN0E0NTM1N0Y2RjIzNjYxQkE3N0M4NQ== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTo0NTYyN0Q2MzZEN0E0NTM1N0Y2RjIzNjYxQkE3N0M4NQ== 1050570EBB1315E1AE7A9FD5E1400A00 ADB1BAAC878C0BEEFE3175C60F44BB1D
-D21CDF704760EE66CC67AC8C5585C4FC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=17 17 17 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTpEMjFDREY3MDQ3NjBFRTY2Q0M2N0FDOEM1NTg1QzRGQw== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTpEMjFDREY3MDQ3NjBFRTY2Q0M2N0FDOEM1NTg1QzRGQw== 1050570EBB1315E1AE7A9FD5E1400A00 ADB1BAAC878C0BEEFE3175C60F44BB1D
-8219CA8C4641376B06FE4067FEE8CDB4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=18 18 18 789 456 urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUkNlbGxEVTo4MjE5Q0E4QzQ2NDEzNzZCMDZGRTQwNjdGRUU4Q0RCNA== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTo4MjE5Q0E4QzQ2NDEzNzZCMDZGRTQwNjdGRUU4Q0RCNA== 1050570EBB1315E1AE7A9FD5E1400A00 ADB1BAAC878C0BEEFE3175C60F44BB1D
-5B3CC81B3284D3F665F03A477439FA98 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=19 19 19 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTo1QjNDQzgxQjMyODREM0Y2NjVGMDNBNDc3NDM5RkE5OA== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTo1QjNDQzgxQjMyODREM0Y2NjVGMDNBNDc3NDM5RkE5OA== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-C1944A262081F82A98CF050FEE41B8FF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=20 20 20 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTpDMTk0NEEyNjIwODFGODJBOThDRjA1MEZFRTQxQjhGRg== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTpDMTk0NEEyNjIwODFGODJBOThDRjA1MEZFRTQxQjhGRg== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-4BA799C33CDAA2C9F386060631E2FD2A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=21 21 21 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTo0QkE3OTlDMzNDREFBMkM5RjM4NjA2MDYzMUUyRkQyQQ== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTo0QkE3OTlDMzNDREFBMkM5RjM4NjA2MDYzMUUyRkQyQQ== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-F73AACF2BA432B687DFD62C47C9DFF1A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=22 22 22 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTpGNzNBQUNGMkJBNDMyQjY4N0RGRDYyQzQ3QzlERkYxQQ== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTpGNzNBQUNGMkJBNDMyQjY4N0RGRDYyQzQ3QzlERkYxQQ== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-51D49922CA6CCD2CE451D96BA224011F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=23 23 23 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTo1MUQ0OTkyMkNBNkNDRDJDRTQ1MUQ5NkJBMjI0MDExRg== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTo1MUQ0OTkyMkNBNkNDRDJDRTQ1MUQ5NkJBMjI0MDExRg== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-D042DE2D38F8FFE70D7387020215B254 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=24 24 24 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTpEMDQyREUyRDM4RjhGRkU3MEQ3Mzg3MDIwMjE1QjI1NA== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTpEMDQyREUyRDM4RjhGRkU3MEQ3Mzg3MDIwMjE1QjI1NA== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-15E91C33BA99354EDF0A667B5CAF81A5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=25 25 25 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVToxNUU5MUMzM0JBOTkzNTRFREYwQTY2N0I1Q0FGODFBNQ== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVToxNUU5MUMzM0JBOTkzNTRFREYwQTY2N0I1Q0FGODFBNQ== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-9ED010B29BD97379B4739B6C0F318874 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=26 26 26 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTo5RUQwMTBCMjlCRDk3Mzc5QjQ3MzlCNkMwRjMxODg3NA== urn:base64:U2VjdG9yOkFEQjFCQUFDODc4QzBCRUVGRTMxNzVDNjBGNDRCQjFEOkdST1VQUzpOUkNlbGxEVTo5RUQwMTBCMjlCRDk3Mzc5QjQ3MzlCNkMwRjMxODg3NA== B6A6DE7D0965F02D48ECA86706A4454F ADB1BAAC878C0BEEFE3175C60F44BB1D
-4D0F5CC361F2187DFBA4E243F489EC0E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=27 27 27 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUkNlbGxEVTo0RDBGNUNDMzYxRjIxODdERkJBNEUyNDNGNDg5RUMwRQ== \N B6A6DE7D0965F02D48ECA86706A4454F \N
-36C251FB23A570A67C499D28F87DA94F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=28 28 28 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTozNkMyNTFGQjIzQTU3MEE2N0M0OTlEMjhGODdEQTk0Rg== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-EC786A721A064FA26BE40BE173FB92E1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=29 29 29 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTpFQzc4NkE3MjFBMDY0RkEyNkJFNDBCRTE3M0ZCOTJFMQ== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-CC6ED6DFD42AEBDE8A1F805D307622A9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=30 30 30 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTpDQzZFRDZERkQ0MkFFQkRFOEExRjgwNUQzMDc2MjJBOQ== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-C35F4A46EDE95D1BC57919C1ABA0A150 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=31 31 31 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTpDMzVGNEE0NkVERTk1RDFCQzU3OTE5QzFBQkEwQTE1MA== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-BC62404392D968AEEAFA290B6E029596 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=32 32 32 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTpCQzYyNDA0MzkyRDk2OEFFRUFGQTI5MEI2RTAyOTU5Ng== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-549AE94A5E8B74CD745AEF5648B8C524 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=33 33 33 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTo1NDlBRTk0QTVFOEI3NENENzQ1QUVGNTY0OEI4QzUyNA== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-148EB92D8802E953FF26CFD174B6D804 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=34 34 34 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVToxNDhFQjkyRDg4MDJFOTUzRkYyNkNGRDE3NEI2RDgwNA== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-4B1EE73EBD46801582B2FFA52130524F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=35 35 35 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTo0QjFFRTczRUJENDY4MDE1ODJCMkZGQTUyMTMwNTI0Rg== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-7467CEF2AC0808F3595444C7D31A1710 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=36 36 36 789 456 urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUkNlbGxEVTo3NDY3Q0VGMkFDMDgwOEYzNTk1NDQ0QzdEMzFBMTcxMA== \N E5FD5ACD55C553A92738477ECB0465B9 \N
-49C8683059F38F7B681FF2730585F9A6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=37 37 37 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTo0OUM4NjgzMDU5RjM4RjdCNjgxRkYyNzMwNTg1RjlBNg== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-D3A0FDDC22E129C2EB7B0A5E7808CB7E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=38 38 38 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTpEM0EwRkREQzIyRTEyOUMyRUI3QjBBNUU3ODA4Q0I3RQ== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-EADFD2FF3B24BBA15103F3126C4E295D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=39 39 39 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTpFQURGRDJGRjNCMjRCQkExNTEwM0YzMTI2QzRFMjk1RA== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-72D427F5AFE7E0AB659128B4231319B4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=40 40 40 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTo3MkQ0MjdGNUFGRTdFMEFCNjU5MTI4QjQyMzEzMTlCNA== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-DE349A28FFB8BECC3957977273562130 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=41 41 41 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTpERTM0OUEyOEZGQjhCRUNDMzk1Nzk3NzI3MzU2MjEzMA== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-9A85559FD10DE19E39A83039C0AF12CD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=42 42 42 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTo5QTg1NTU5RkQxMERFMTlFMzlBODMwMzlDMEFGMTJDRA== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-476681437D680D90CF3B78E7114F7F21 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=43 43 43 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTo0NzY2ODE0MzdENjgwRDkwQ0YzQjc4RTcxMTRGN0YyMQ== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-1EF356E23A0069D6A97AD89E0D6C05F9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=44 44 44 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVToxRUYzNTZFMjNBMDA2OUQ2QTk3QUQ4OUUwRDZDMDVGOQ== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-60786DD5B89F405CA3F843E5DD2EACA6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=45 45 45 789 456 urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUkNlbGxEVTo2MDc4NkRENUI4OUY0MDVDQTNGODQzRTVERDJFQUNBNg== \N 25E690E22BDA90B9C4FEE1F083CBA597 \N
-F0F4E7335E15540F2784665D1A49AA6B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=46 46 46 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTpGMEY0RTczMzVFMTU1NDBGMjc4NDY2NUQxQTQ5QUE2Qg== \N 5A3085C3400C3096E2ED2321452766B1 \N
-58D99C6CAD0E027632C5CC2FA5C38DB4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=47 47 47 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTo1OEQ5OUM2Q0FEMEUwMjc2MzJDNUNDMkZBNUMzOERCNA== \N 5A3085C3400C3096E2ED2321452766B1 \N
-ECEC664641994704CE6A4222AA30EE78 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=48 48 48 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTpFQ0VDNjY0NjQxOTk0NzA0Q0U2QTQyMjJBQTMwRUU3OA== \N 5A3085C3400C3096E2ED2321452766B1 \N
-61C9A3B5E24424F3C21E7E702F81CC92 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=49 49 49 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTo2MUM5QTNCNUUyNDQyNEYzQzIxRTdFNzAyRjgxQ0M5Mg== \N 5A3085C3400C3096E2ED2321452766B1 \N
-340F170071D78ACA3F4E53ACEE1F2F49 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=50 50 50 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTozNDBGMTcwMDcxRDc4QUNBM0Y0RTUzQUNFRTFGMkY0OQ== \N 5A3085C3400C3096E2ED2321452766B1 \N
-32521953AA2555BCCF671FC6544F458A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=51 51 51 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTozMjUyMTk1M0FBMjU1NUJDQ0Y2NzFGQzY1NDRGNDU4QQ== \N 5A3085C3400C3096E2ED2321452766B1 \N
-7D6A4D058B4D77DA39FCDC2FC9A1B78A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=52 52 52 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTo3RDZBNEQwNThCNEQ3N0RBMzlGQ0RDMkZDOUExQjc4QQ== \N 5A3085C3400C3096E2ED2321452766B1 \N
-27F7577BCF08CE3B4F1A4011FCEE693C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=53 53 53 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVToyN0Y3NTc3QkNGMDhDRTNCNEYxQTQwMTFGQ0VFNjkzQw== \N 5A3085C3400C3096E2ED2321452766B1 \N
-0327C7F2BFB386B9C91C8F93C70F4B0F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=54 54 54 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUkNlbGxEVTowMzI3QzdGMkJGQjM4NkI5QzkxQzhGOTNDNzBGNEIwRg== \N 5A3085C3400C3096E2ED2321452766B1 \N
-4279A85A76CBB256E0E4C2BBCB78FBCB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=55 55 55 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTo0Mjc5QTg1QTc2Q0JCMjU2RTBFNEMyQkJDQjc4RkJDQg== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-22CC2F77BC0D1758E4AC90D0844EB0FA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=56 56 56 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVToyMkNDMkY3N0JDMEQxNzU4RTRBQzkwRDA4NDRFQjBGQQ== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-EBAE96C402742B4BCBA0608ADC23251A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=57 57 57 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTpFQkFFOTZDNDAyNzQyQjRCQ0JBMDYwOEFEQzIzMjUxQQ== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-B04ED4054FF124E46081CE5968B17CB9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=58 58 58 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTpCMDRFRDQwNTRGRjEyNEU0NjA4MUNFNTk2OEIxN0NCOQ== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-8EC217D228BA9175A2E73358665B5D3E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=59 59 59 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTo4RUMyMTdEMjI4QkE5MTc1QTJFNzMzNTg2NjVCNUQzRQ== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-7C9707B1EAD31687D56DFA08A7656386 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=60 60 60 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTo3Qzk3MDdCMUVBRDMxNjg3RDU2REZBMDhBNzY1NjM4Ng== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-023FC45AF540AFCA3205D846D07C048B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=61 61 61 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTowMjNGQzQ1QUY1NDBBRkNBMzIwNUQ4NDZEMDdDMDQ4Qg== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-B46558EDB1CB27186BE31D3FA54856F0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=62 62 62 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTpCNDY1NThFREIxQ0IyNzE4NkJFMzFEM0ZBNTQ4NTZGMA== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-C5CD42EF608CB93F4AEF0E47329DF417 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=63 63 63 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUkNlbGxEVTpDNUNENDJFRjYwOENCOTNGNEFFRjBFNDczMjlERjQxNw== \N 7F16F93D8816D9EBC76E52BB44A3CFF5 \N
-DA492DA1559FC7595D07DFF53ADD38AD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=64 64 64 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTpEQTQ5MkRBMTU1OUZDNzU5NUQwN0RGRjUzQUREMzhBRA== \N 5A548EA9D166341776CA0695837E55D8 \N
-8E794C3E1EEE6EF8B69C268E06553C91 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=65 65 65 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTo4RTc5NEMzRTFFRUU2RUY4QjY5QzI2OEUwNjU1M0M5MQ== \N 5A548EA9D166341776CA0695837E55D8 \N
-C2E0B9113CEAC91DF5E182B431D56788 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=66 66 66 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTpDMkUwQjkxMTNDRUFDOTFERjVFMTgyQjQzMUQ1Njc4OA== \N 5A548EA9D166341776CA0695837E55D8 \N
-8EB7BACB085F1AAC02E18EBA694AD9D9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=67 67 67 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTo4RUI3QkFDQjA4NUYxQUFDMDJFMThFQkE2OTRBRDlEOQ== \N 5A548EA9D166341776CA0695837E55D8 \N
-ECF0C7C7BDFFE39B32637C39924DA147 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=68 68 68 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTpFQ0YwQzdDN0JERkZFMzlCMzI2MzdDMzk5MjREQTE0Nw== \N 5A548EA9D166341776CA0695837E55D8 \N
-E3816013E378E928377433098CC4C49F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=69 69 69 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTpFMzgxNjAxM0UzNzhFOTI4Mzc3NDMzMDk4Q0M0QzQ5Rg== \N 5A548EA9D166341776CA0695837E55D8 \N
-CEC39AC620ED13978F78C8022E21CF9E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=70 70 70 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTpDRUMzOUFDNjIwRUQxMzk3OEY3OEM4MDIyRTIxQ0Y5RQ== \N 5A548EA9D166341776CA0695837E55D8 \N
-373721F85AC9339C517C8895C29FF62A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=71 71 71 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTozNzM3MjFGODVBQzkzMzlDNTE3Qzg4OTVDMjlGRjYyQQ== \N 5A548EA9D166341776CA0695837E55D8 \N
-07691B8D5DF7CB773B63599D118E3EFB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=72 72 72 789 456 urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUkNlbGxEVTowNzY5MUI4RDVERjdDQjc3M0I2MzU5OUQxMThFM0VGQg== \N 5A548EA9D166341776CA0695837E55D8 \N
-138CE3B21C8053675E0EBDC41C36E99D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=73 73 73 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVToxMzhDRTNCMjFDODA1MzY3NUUwRUJEQzQxQzM2RTk5RA== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-1F702800D1F7359958283DBCB45C0DD0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=74 74 74 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVToxRjcwMjgwMEQxRjczNTk5NTgyODNEQkNCNDVDMEREMA== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-0CE3320E6B41FC23B6B0FA4FD2103B2C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=75 75 75 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVTowQ0UzMzIwRTZCNDFGQzIzQjZCMEZBNEZEMjEwM0IyQw== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-92120D5EE5C0885D7E50860BD055A1EE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=76 76 76 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVTo5MjEyMEQ1RUU1QzA4ODVEN0U1MDg2MEJEMDU1QTFFRQ== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-D705554E98103411B005D2E3B4F42C87 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=77 77 77 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVTpENzA1NTU0RTk4MTAzNDExQjAwNUQyRTNCNEY0MkM4Nw== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-462EF46AA1C7641A8510C7C61D60C8B1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=78 78 78 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVTo0NjJFRjQ2QUExQzc2NDFBODUxMEM3QzYxRDYwQzhCMQ== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-26825D9CAA91BAC389DEBDF3572EF408 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=79 79 79 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVToyNjgyNUQ5Q0FBOTFCQUMzODlERUJERjM1NzJFRjQwOA== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-33F82DE9186F1539D2ED98818F41A0C2 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=80 80 80 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVTozM0Y4MkRFOTE4NkYxNTM5RDJFRDk4ODE4RjQxQTBDMg== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-40175AF00A522213BA60537519A71978 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=81 81 81 789 456 urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUkNlbGxEVTo0MDE3NUFGMDBBNTIyMjEzQkE2MDUzNzUxOUE3MTk3OA== \N 7D80E5C6E0C9EC246370E86B7E524F8C \N
-EA86088454B7491FB3BEFDDCA5FE097D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=82 82 82 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVTpFQTg2MDg4NDU0Qjc0OTFGQjNCRUZERENBNUZFMDk3RA== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-9BC6998B88BA4C1081CD5F211681C9CF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=83 83 83 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVTo5QkM2OTk4Qjg4QkE0QzEwODFDRDVGMjExNjgxQzlDRg== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-8377ECA137FF018C9716C0587F617182 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=84 84 84 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVTo4Mzc3RUNBMTM3RkYwMThDOTcxNkMwNTg3RjYxNzE4Mg== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-15890EF6D2196D9E21D70BDCE2AA3A77 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=85 85 85 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVToxNTg5MEVGNkQyMTk2RDlFMjFENzBCRENFMkFBM0E3Nw== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-F60F5BD54FA9842979790B4BBF80B8D9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=86 86 86 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVTpGNjBGNUJENTRGQTk4NDI5Nzk3OTBCNEJCRjgwQjhEOQ== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-2642586085120058DF59670F33FA5098 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=87 87 87 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVToyNjQyNTg2MDg1MTIwMDU4REY1OTY3MEYzM0ZBNTA5OA== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-A39C73D2879D86EF4184B605C0AE016F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=88 88 88 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVTpBMzlDNzNEMjg3OUQ4NkVGNDE4NEI2MDVDMEFFMDE2Rg== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-EEC85A7F76017260F9721B65A144D18E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=89 89 89 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVTpFRUM4NUE3Rjc2MDE3MjYwRjk3MjFCNjVBMTQ0RDE4RQ== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-1D825881F378E0735378D40BDECAC3EC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=90 90 90 789 456 urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUkNlbGxEVToxRDgyNTg4MUYzNzhFMDczNTM3OEQ0MEJERUNBQzNFQw== \N BBB3C42A4F8AC94091B297DF708DD50B \N
-76E9F605D4F37330BF0B505E94F64F11 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=91 91 91 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTo3NkU5RjYwNUQ0RjM3MzMwQkYwQjUwNUU5NEY2NEYxMQ== \N 4CFF136200A2DE36205A13559C55DB2A \N
-67A1BDA10B5AF43028D07C7BE5CB1AE2 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=92 92 92 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTo2N0ExQkRBMTBCNUFGNDMwMjhEMDdDN0JFNUNCMUFFMg== \N 4CFF136200A2DE36205A13559C55DB2A \N
-B3B0A1939EFCA654A37005B6A7F24BD7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=93 93 93 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTpCM0IwQTE5MzlFRkNBNjU0QTM3MDA1QjZBN0YyNEJENw== \N 4CFF136200A2DE36205A13559C55DB2A \N
-F26F279E91D0941DB4F646E707EA403A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=94 94 94 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTpGMjZGMjc5RTkxRDA5NDFEQjRGNjQ2RTcwN0VBNDAzQQ== \N 4CFF136200A2DE36205A13559C55DB2A \N
-24379146FE349FBF04BA3B3018077214 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=95 95 95 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVToyNDM3OTE0NkZFMzQ5RkJGMDRCQTNCMzAxODA3NzIxNA== \N 4CFF136200A2DE36205A13559C55DB2A \N
-5E7EA1D6380C21D2C024524C2A198A5A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=96 96 96 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTo1RTdFQTFENjM4MEMyMUQyQzAyNDUyNEMyQTE5OEE1QQ== \N 4CFF136200A2DE36205A13559C55DB2A \N
-5DC3A11A69D8CDB175FC9D49D9E0E720 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=97 97 97 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTo1REMzQTExQTY5RDhDREIxNzVGQzlENDlEOUUwRTcyMA== \N 4CFF136200A2DE36205A13559C55DB2A \N
-9840AC1566774545CBD7FD44015EFFA5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=98 98 98 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTo5ODQwQUMxNTY2Nzc0NTQ1Q0JEN0ZENDQwMTVFRkZBNQ== \N 4CFF136200A2DE36205A13559C55DB2A \N
-F4531C31205F28BC8830CAD7A7C2FDA1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRCellDU=99 99 99 789 456 urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUkNlbGxEVTpGNDUzMUMzMTIwNUYyOEJDODgzMENBRDdBN0MyRkRBMQ== \N 4CFF136200A2DE36205A13559C55DB2A \N
-\.
-
-COPY ties_data."LTESectorCarrier" (id, fdn, "essScLocalId", "sectorCarrierType", "REL_EUTRANCELL_USES_LTESECTORCARRIER_EIID", "REL_LTESECTORCARRIER_USES_ANTENNACAPABILITY_EIID", "REL_ENODEBFUNCTION_PROVIDES_LTESECTORCARRIER_EIID", "REL_EUTRANCELL_USES_LTESECTORCARRIER", "REL_LTESECTORCARRIER_USES_ANTENNACAPABILITY", "REL_ENODEBFUNCTION_PROVIDES_LTESECTORCARRIER") FROM stdin;
-6A71D2FA97A7798E13AE68DF144C18D2 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=1 1 MO urn:base64:RVV0cmFuQ2VsbDoxMkFFM0FBQjMzMkI3Q0JBNzVGNUI2MUEzRTExRDlENzpVU0VTOkxURVNlY3RvckNhcnJpZXI6NkE3MUQyRkE5N0E3Nzk4RTEzQUU2OERGMTQ0QzE4RDI= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo2QTcxRDJGQTk3QTc3OThFMTNBRTY4REYxNDRDMThEMjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjA0MjczRkM2NDQzNkRBNTIzODY1Q0Y4NDlFNUY3Q0M5 urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo2QTcxRDJGQTk3QTc3OThFMTNBRTY4REYxNDRDMThEMg== 12AE3AAB332B7CBA75F5B61A3E11D9D7 04273FC64436DA523865CF849E5F7CC9 8EFAD2F305499DCD360040BD6F57B54E
-96FEEADB8F638A1D4BE56258CBC7F670 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=2 2 MO urn:base64:RVV0cmFuQ2VsbDoyMTIxMkI1MjI0NkE4N0Y5MjIzMzc2NTk0OTE0MjRFMjpVU0VTOkxURVNlY3RvckNhcnJpZXI6OTZGRUVBREI4RjYzOEExRDRCRTU2MjU4Q0JDN0Y2NzA= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5NkZFRUFEQjhGNjM4QTFENEJFNTYyNThDQkM3RjY3MDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkQ1QjkwOTBFM0I2QTEwREJEQzI0M0VEMTRFRjI5NEJG urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5NkZFRUFEQjhGNjM4QTFENEJFNTYyNThDQkM3RjY3MA== 21212B52246A87F922337659491424E2 D5B9090E3B6A10DBDC243ED14EF294BF 8EFAD2F305499DCD360040BD6F57B54E
-78C2DACF26B995F7F6E14A1224A3814E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=3 3 MO urn:base64:RVV0cmFuQ2VsbDpDOURENzMzQTE4QkM5Q0E2NkVBRTBBQTU2ODhFRTY4NTpVU0VTOkxURVNlY3RvckNhcnJpZXI6NzhDMkRBQ0YyNkI5OTVGN0Y2RTE0QTEyMjRBMzgxNEU= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3OEMyREFDRjI2Qjk5NUY3RjZFMTRBMTIyNEEzODE0RTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjAyNDQzREUwODA3RDgwMUQ2NjE0OTVEOUVGQjhEODM2 urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3OEMyREFDRjI2Qjk5NUY3RjZFMTRBMTIyNEEzODE0RQ== C9DD733A18BC9CA66EAE0AA5688EE685 02443DE0807D801D661495D9EFB8D836 8EFAD2F305499DCD360040BD6F57B54E
-936106877FE31C47ACF2782952735A99 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=4 4 MO urn:base64:RVV0cmFuQ2VsbDo2M0U4ODkzNTc0NEQ2QzNFQjU5RUZFMDJDREFCQzA2MzpVU0VTOkxURVNlY3RvckNhcnJpZXI6OTM2MTA2ODc3RkUzMUM0N0FDRjI3ODI5NTI3MzVBOTk= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5MzYxMDY4NzdGRTMxQzQ3QUNGMjc4Mjk1MjczNUE5OTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkM2ODIzRDJCN0FGQTA2NENFNzc0Nzk1RTAxRDYyMjhC urn:base64:RU5vZGVCRnVuY3Rpb246OEVGQUQyRjMwNTQ5OURDRDM2MDA0MEJENkY1N0I1NEU6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5MzYxMDY4NzdGRTMxQzQ3QUNGMjc4Mjk1MjczNUE5OQ== 63E88935744D6C3EB59EFE02CDABC063 C6823D2B7AFA064CE774795E01D6228B 8EFAD2F305499DCD360040BD6F57B54E
-ED4FCDD3318288DDB2614193E2EDFE63 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=5 5 MO urn:base64:RVV0cmFuQ2VsbDo1OUEyMjA0OTI0QzRDMTYwMUExOUFDODg0N0QzMDJFODpVU0VTOkxURVNlY3RvckNhcnJpZXI6RUQ0RkNERDMzMTgyODhEREIyNjE0MTkzRTJFREZFNjM= urn:base64:TFRFU2VjdG9yQ2FycmllcjpFRDRGQ0REMzMxODI4OEREQjI2MTQxOTNFMkVERkU2MzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkRGMjZBRTQ0MjExMERCMDI4MURBRDQ1NDU0MzZCNzIw urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpFRDRGQ0REMzMxODI4OEREQjI2MTQxOTNFMkVERkU2Mw== 59A2204924C4C1601A19AC8847D302E8 DF26AE442110DB0281DAD4545436B720 C6694F03768AF9EE83DC293C10473076
-BED58D11C363D2CB5FD962657C57B202 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=6 6 MO urn:base64:RVV0cmFuQ2VsbDo4OTI2NjkxNTk5ODkyNzYxQzlGRjhDRjNGMzI1MDY4RTpVU0VTOkxURVNlY3RvckNhcnJpZXI6QkVENThEMTFDMzYzRDJDQjVGRDk2MjY1N0M1N0IyMDI= urn:base64:TFRFU2VjdG9yQ2FycmllcjpCRUQ1OEQxMUMzNjNEMkNCNUZEOTYyNjU3QzU3QjIwMjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjdBMUM2RkU5MzUxMDA4QjNENTM5MTY2RDk0MjIyNzYy urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpCRUQ1OEQxMUMzNjNEMkNCNUZEOTYyNjU3QzU3QjIwMg== 8926691599892761C9FF8CF3F325068E 7A1C6FE9351008B3D539166D94222762 C6694F03768AF9EE83DC293C10473076
-D3C3BA1DB89377D7662B27F6F9D2C882 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=7 7 MO urn:base64:RVV0cmFuQ2VsbDo2ODlCNkJCRkRENUI0MjZGRURBNkIxQ0U0NkY4Qjg5MzpVU0VTOkxURVNlY3RvckNhcnJpZXI6RDNDM0JBMURCODkzNzdENzY2MkIyN0Y2RjlEMkM4ODI= urn:base64:TFRFU2VjdG9yQ2FycmllcjpEM0MzQkExREI4OTM3N0Q3NjYyQjI3RjZGOUQyQzg4MjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjcwQTFGMTI5RTEwRUU3RDMxREZFMUUxQUE2Qzc0MzdE urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpEM0MzQkExREI4OTM3N0Q3NjYyQjI3RjZGOUQyQzg4Mg== 689B6BBFDD5B426FEDA6B1CE46F8B893 70A1F129E10EE7D31DFE1E1AA6C7437D C6694F03768AF9EE83DC293C10473076
-422374EAB41474FDE8CFB932B2422802 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=8 8 MO urn:base64:RVV0cmFuQ2VsbDpBMjc1RDE3MDY1MzZBNzdEN0FCQTZCQTJBM0M1NkRGRTpVU0VTOkxURVNlY3RvckNhcnJpZXI6NDIyMzc0RUFCNDE0NzRGREU4Q0ZCOTMyQjI0MjI4MDI= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo0MjIzNzRFQUI0MTQ3NEZERThDRkI5MzJCMjQyMjgwMjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjdERTkxQzc4RjhEQ0U0MjkyRjJGMEMzQjM0REVBQ0FC urn:base64:RU5vZGVCRnVuY3Rpb246QzY2OTRGMDM3NjhBRjlFRTgzREMyOTNDMTA0NzMwNzY6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo0MjIzNzRFQUI0MTQ3NEZERThDRkI5MzJCMjQyMjgwMg== A275D1706536A77D7ABA6BA2A3C56DFE 7DE91C78F8DCE4292F2F0C3B34DEACAB C6694F03768AF9EE83DC293C10473076
-DDB43D4A95BA11C5FDF3D19514F628BD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=9 9 MO urn:base64:RVV0cmFuQ2VsbDowOEFCQzczRDg2QzVCODM4MEJCQzVCNTI0Q0NFQzg2MjpVU0VTOkxURVNlY3RvckNhcnJpZXI6RERCNDNENEE5NUJBMTFDNUZERjNEMTk1MTRGNjI4QkQ= urn:base64:TFRFU2VjdG9yQ2FycmllcjpEREI0M0Q0QTk1QkExMUM1RkRGM0QxOTUxNEY2MjhCRDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjE0NUExQkY1NjFEQjI5N0YyNUZEM0YxMjQxN0QyQTUw urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpEREI0M0Q0QTk1QkExMUM1RkRGM0QxOTUxNEY2MjhCRA== 08ABC73D86C5B8380BBC5B524CCEC862 145A1BF561DB297F25FD3F12417D2A50 54D62577A2B3ED373FA47BBD89A67473
-BE8FD2B159EE7D5D47EFE8A2FD4313C8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=10 10 MO urn:base64:RVV0cmFuQ2VsbDpCNjExRjYzREU3N0ZDNUMzMzNBMTdFQzA0N0U1RUY0MzpVU0VTOkxURVNlY3RvckNhcnJpZXI6QkU4RkQyQjE1OUVFN0Q1RDQ3RUZFOEEyRkQ0MzEzQzg= urn:base64:TFRFU2VjdG9yQ2FycmllcjpCRThGRDJCMTU5RUU3RDVENDdFRkU4QTJGRDQzMTNDODpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjkxODhEOTc1RDgzN0ExRTAzOTcxNjdBMjNFNzIxQjBD urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpCRThGRDJCMTU5RUU3RDVENDdFRkU4QTJGRDQzMTNDOA== B611F63DE77FC5C333A17EC047E5EF43 9188D975D837A1E0397167A23E721B0C 54D62577A2B3ED373FA47BBD89A67473
-BAE5942A7A4B6C49AB04C0ABC064EB28 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=11 11 MO urn:base64:RVV0cmFuQ2VsbDpDRjgzNDRGNzk1QjEzMzUwMDUwRTUyQzgzQjk3RENCOTpVU0VTOkxURVNlY3RvckNhcnJpZXI6QkFFNTk0MkE3QTRCNkM0OUFCMDRDMEFCQzA2NEVCMjg= urn:base64:TFRFU2VjdG9yQ2FycmllcjpCQUU1OTQyQTdBNEI2QzQ5QUIwNEMwQUJDMDY0RUIyODpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkQzMTREQURBRkEzRDg5NjQ0NUU3OEVCQ0MxNUExNkY3 urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpCQUU1OTQyQTdBNEI2QzQ5QUIwNEMwQUJDMDY0RUIyOA== CF8344F795B13350050E52C83B97DCB9 D314DADAFA3D896445E78EBCC15A16F7 54D62577A2B3ED373FA47BBD89A67473
-7D75F65DCEE7745E5E89EA5CBC8A477D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=12 12 MO urn:base64:RVV0cmFuQ2VsbDo1OUEyRTdFODUwNDEyNUVCOERGMzc2NUZBRUJBQTUzQjpVU0VTOkxURVNlY3RvckNhcnJpZXI6N0Q3NUY2NURDRUU3NzQ1RTVFODlFQTVDQkM4QTQ3N0Q= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3RDc1RjY1RENFRTc3NDVFNUU4OUVBNUNCQzhBNDc3RDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjI4QUQzRUU4NDQ3NjZERjUwOEY2Mjg3Q0QxQ0UxOEE0 urn:base64:RU5vZGVCRnVuY3Rpb246NTRENjI1NzdBMkIzRUQzNzNGQTQ3QkJEODlBNjc0NzM6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3RDc1RjY1RENFRTc3NDVFNUU4OUVBNUNCQzhBNDc3RA== 59A2E7E8504125EB8DF3765FAEBAA53B 28AD3EE844766DF508F6287CD1CE18A4 54D62577A2B3ED373FA47BBD89A67473
-E8BF5D975B6ECED3AC3C1E7DFAF569D6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=13 13 MO urn:base64:RVV0cmFuQ2VsbDpEQkE4MzIzMEMwRkE3MTk5M0Y4RkREODM2MzU0MjIzRTpVU0VTOkxURVNlY3RvckNhcnJpZXI6RThCRjVEOTc1QjZFQ0VEM0FDM0MxRTdERkFGNTY5RDY= urn:base64:TFRFU2VjdG9yQ2FycmllcjpFOEJGNUQ5NzVCNkVDRUQzQUMzQzFFN0RGQUY1NjlENjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkMzOThENkM2NzMyNjdBMDgxQzc4MUQ4NDQzOEY0Qjc0 urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpFOEJGNUQ5NzVCNkVDRUQzQUMzQzFFN0RGQUY1NjlENg== DBA83230C0FA71993F8FDD836354223E C398D6C673267A081C781D84438F4B74 3B603CD3E74F0F9053DEF063EFAF2012
-72AF5544AF527B2DADD2BCE04BF7504C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=14 14 MO urn:base64:RVV0cmFuQ2VsbDpFMEZFQ0I2QjUxQzY5OTMyNTYyQjZDMTk0MzYyQ0M4RTpVU0VTOkxURVNlY3RvckNhcnJpZXI6NzJBRjU1NDRBRjUyN0IyREFERDJCQ0UwNEJGNzUwNEM= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3MkFGNTU0NEFGNTI3QjJEQUREMkJDRTA0QkY3NTA0QzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjBCREFENUREQzE5QTY5NjI0NDUzNjQyMUU2RDI2RkUz urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3MkFGNTU0NEFGNTI3QjJEQUREMkJDRTA0QkY3NTA0Qw== E0FECB6B51C69932562B6C194362CC8E 0BDAD5DDC19A696244536421E6D26FE3 3B603CD3E74F0F9053DEF063EFAF2012
-7A84CA220F5912B668B9902A82422847 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=15 15 MO urn:base64:RVV0cmFuQ2VsbDoyMjdFQzU4QkU5Mjc3QTk5OUI2NkI1M0U2QzYxNkNGODpVU0VTOkxURVNlY3RvckNhcnJpZXI6N0E4NENBMjIwRjU5MTJCNjY4Qjk5MDJBODI0MjI4NDc= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3QTg0Q0EyMjBGNTkxMkI2NjhCOTkwMkE4MjQyMjg0NzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjQ5MjA1ODgxQzkxMjFGMjA4QkQ3OTE0OUZBNzk5ODc3 urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3QTg0Q0EyMjBGNTkxMkI2NjhCOTkwMkE4MjQyMjg0Nw== 227EC58BE9277A999B66B53E6C616CF8 49205881C9121F208BD79149FA799877 3B603CD3E74F0F9053DEF063EFAF2012
-11DE95BBE63D51804C165BE428C562FC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=16 16 MO urn:base64:RVV0cmFuQ2VsbDpBNUQyMjBCMURGRUE5MjhDMTdCOEJCOTJERjEyNjQ4ODpVU0VTOkxURVNlY3RvckNhcnJpZXI6MTFERTk1QkJFNjNENTE4MDRDMTY1QkU0MjhDNTYyRkM= urn:base64:TFRFU2VjdG9yQ2FycmllcjoxMURFOTVCQkU2M0Q1MTgwNEMxNjVCRTQyOEM1NjJGQzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkEzMkRCOUUyNzhGQzFERTQxRkI0QTNCNTBGODAyNjUw urn:base64:RU5vZGVCRnVuY3Rpb246M0I2MDNDRDNFNzRGMEY5MDUzREVGMDYzRUZBRjIwMTI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjoxMURFOTVCQkU2M0Q1MTgwNEMxNjVCRTQyOEM1NjJGQw== A5D220B1DFEA928C17B8BB92DF126488 A32DB9E278FC1DE41FB4A3B50F802650 3B603CD3E74F0F9053DEF063EFAF2012
-40B28B706B0288149A3366C8EA774C41 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=17 17 MO urn:base64:RVV0cmFuQ2VsbDo2N0ZGQzdGNzVBMkVGMENBQUM4Q0U3MEFBRjcyQjEwNTpVU0VTOkxURVNlY3RvckNhcnJpZXI6NDBCMjhCNzA2QjAyODgxNDlBMzM2NkM4RUE3NzRDNDE= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo0MEIyOEI3MDZCMDI4ODE0OUEzMzY2QzhFQTc3NEM0MTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkJERTM4MUJBQ0M2NzI5MEU0NDdCQzAxNzdFMDM4QUVC urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo0MEIyOEI3MDZCMDI4ODE0OUEzMzY2QzhFQTc3NEM0MQ== 67FFC7F75A2EF0CAAC8CE70AAF72B105 BDE381BACC67290E447BC0177E038AEB 1D9917590E5F75F44DF7EF626592C2C7
-CA4AFE762559AE791A12FDC893E9AE9C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=18 18 MO urn:base64:RVV0cmFuQ2VsbDpCQjE4NDNEMjYwMUFFNzA1RjM0QkYxMkQyQTQyMjAzMzpVU0VTOkxURVNlY3RvckNhcnJpZXI6Q0E0QUZFNzYyNTU5QUU3OTFBMTJGREM4OTNFOUFFOUM= urn:base64:TFRFU2VjdG9yQ2FycmllcjpDQTRBRkU3NjI1NTlBRTc5MUExMkZEQzg5M0U5QUU5QzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkI0QkM0RDFCMTNFQjY1MTY5MEYzMTk1RTYyMkNDNEJE urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpDQTRBRkU3NjI1NTlBRTc5MUExMkZEQzg5M0U5QUU5Qw== BB1843D2601AE705F34BF12D2A422033 B4BC4D1B13EB651690F3195E622CC4BD 1D9917590E5F75F44DF7EF626592C2C7
-7F10AA7C396CDE4F86B47D48B2E13D72 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=19 19 MO urn:base64:RVV0cmFuQ2VsbDo4RjZFMjMwQ0YyNjVGOEM1QTE0NzkyQzA5QTY2ODY5MDpVU0VTOkxURVNlY3RvckNhcnJpZXI6N0YxMEFBN0MzOTZDREU0Rjg2QjQ3RDQ4QjJFMTNENzI= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3RjEwQUE3QzM5NkNERTRGODZCNDdENDhCMkUxM0Q3MjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjMyRUUzODVFQUNEMjZBMDA0NkJBRDVDQzg0OTA1RUNC urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3RjEwQUE3QzM5NkNERTRGODZCNDdENDhCMkUxM0Q3Mg== 8F6E230CF265F8C5A14792C09A668690 32EE385EACD26A0046BAD5CC84905ECB 1D9917590E5F75F44DF7EF626592C2C7
-88572A3196793B103445E4ACE68AEA49 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=20 20 MO urn:base64:RVV0cmFuQ2VsbDo2NUE3QkI3MkFCQzM0RTdEMkM5RDIwQkQyMkIwM0Y2MDpVU0VTOkxURVNlY3RvckNhcnJpZXI6ODg1NzJBMzE5Njc5M0IxMDM0NDVFNEFDRTY4QUVBNDk= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo4ODU3MkEzMTk2NzkzQjEwMzQ0NUU0QUNFNjhBRUE0OTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjQzQjYzMTA2QjI3RkIwNUM2MTg0MDBFRTVBRTkxNjM3 urn:base64:RU5vZGVCRnVuY3Rpb246MUQ5OTE3NTkwRTVGNzVGNDRERjdFRjYyNjU5MkMyQzc6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo4ODU3MkEzMTk2NzkzQjEwMzQ0NUU0QUNFNjhBRUE0OQ== 65A7BB72ABC34E7D2C9D20BD22B03F60 43B63106B27FB05C618400EE5AE91637 1D9917590E5F75F44DF7EF626592C2C7
-CEE3234BB6A7A468B503C964448FD72B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=21 21 MO urn:base64:RVV0cmFuQ2VsbDo0NzUxODc3NTM5OUNFOUY3NEJBMjk5RkM3QzAzMzczMjpVU0VTOkxURVNlY3RvckNhcnJpZXI6Q0VFMzIzNEJCNkE3QTQ2OEI1MDNDOTY0NDQ4RkQ3MkI= urn:base64:TFRFU2VjdG9yQ2FycmllcjpDRUUzMjM0QkI2QTdBNDY4QjUwM0M5NjQ0NDhGRDcyQjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkM4MTNFMTg2NTdDMkM1ODM3QTNGMjM3QkFENTU3OTQ0 urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpDRUUzMjM0QkI2QTdBNDY4QjUwM0M5NjQ0NDhGRDcyQg== 47518775399CE9F74BA299FC7C033732 C813E18657C2C5837A3F237BAD557944 B3B3845E7D8910D6906B5EB41A8E0696
-77671BA896E46F12644F64A3696AACED SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=22 22 MO urn:base64:RVV0cmFuQ2VsbDpGNEM3RDM0ODI0MEI5RTJBRTFDMzBEQkE4QTgyMjVGQzpVU0VTOkxURVNlY3RvckNhcnJpZXI6Nzc2NzFCQTg5NkU0NkYxMjY0NEY2NEEzNjk2QUFDRUQ= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3NzY3MUJBODk2RTQ2RjEyNjQ0RjY0QTM2OTZBQUNFRDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjQ2MkRDQ0RFQTVBMjg5MkI4Qzg2MzA3MjQ2NzlCNjc2 urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3NzY3MUJBODk2RTQ2RjEyNjQ0RjY0QTM2OTZBQUNFRA== F4C7D348240B9E2AE1C30DBA8A8225FC 462DCCDEA5A2892B8C8630724679B676 B3B3845E7D8910D6906B5EB41A8E0696
-D5ECCA0DC8E6539EEF5E3E80F2440FF8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=23 23 MO urn:base64:RVV0cmFuQ2VsbDowMTU3MDU2QUFEN0Q3MDBBQjc0NjQ5QUQyM0FCMzUxNjpVU0VTOkxURVNlY3RvckNhcnJpZXI6RDVFQ0NBMERDOEU2NTM5RUVGNUUzRTgwRjI0NDBGRjg= urn:base64:TFRFU2VjdG9yQ2FycmllcjpENUVDQ0EwREM4RTY1MzlFRUY1RTNFODBGMjQ0MEZGODpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkY2RDBGRjIwNjlGMDM4RkY2NEQwNzJDODE4REQ5QkZE urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpENUVDQ0EwREM4RTY1MzlFRUY1RTNFODBGMjQ0MEZGOA== 0157056AAD7D700AB74649AD23AB3516 F6D0FF2069F038FF64D072C818DD9BFD B3B3845E7D8910D6906B5EB41A8E0696
-F909E803B0F36A260820BDB8F9DED641 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=24 24 MO urn:base64:RVV0cmFuQ2VsbDpCNDA2NkU3NDNEQ0Y0OEYwMjQzM0EzMDA0NUIyQkQ2NzpVU0VTOkxURVNlY3RvckNhcnJpZXI6RjkwOUU4MDNCMEYzNkEyNjA4MjBCREI4RjlERUQ2NDE= urn:base64:TFRFU2VjdG9yQ2FycmllcjpGOTA5RTgwM0IwRjM2QTI2MDgyMEJEQjhGOURFRDY0MTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkM1QzU5ODUxMUM3NTE0MDYxRTg2REEyNEY4REIzNTlE urn:base64:RU5vZGVCRnVuY3Rpb246QjNCMzg0NUU3RDg5MTBENjkwNkI1RUI0MUE4RTA2OTY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpGOTA5RTgwM0IwRjM2QTI2MDgyMEJEQjhGOURFRDY0MQ== B4066E743DCF48F02433A30045B2BD67 C5C598511C7514061E86DA24F8DB359D B3B3845E7D8910D6906B5EB41A8E0696
-7B6CED12C445EBC5402060C76AABD35E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=25 25 MO urn:base64:RVV0cmFuQ2VsbDo5NDgxRkU1RUU3MDI3RThGRkM1RjZDNTA1NEUwNDU4RDpVU0VTOkxURVNlY3RvckNhcnJpZXI6N0I2Q0VEMTJDNDQ1RUJDNTQwMjA2MEM3NkFBQkQzNUU= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3QjZDRUQxMkM0NDVFQkM1NDAyMDYwQzc2QUFCRDM1RTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjEzODc2RkVDRUVERjQ1QUU0RENBOEMzOTNFNDc4MjM3 urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3QjZDRUQxMkM0NDVFQkM1NDAyMDYwQzc2QUFCRDM1RQ== 9481FE5EE7027E8FFC5F6C5054E0458D 13876FECEEDF45AE4DCA8C393E478237 4C8B24AC011A734A5FEBF321C77289AB
-A7755961EE174E532DDBEA5572858CDA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=26 26 MO urn:base64:RVV0cmFuQ2VsbDo2NDJFMUJCRTg3MjNBQzlDNDU5MEY2NzAzRURDNDRGMTpVU0VTOkxURVNlY3RvckNhcnJpZXI6QTc3NTU5NjFFRTE3NEU1MzJEREJFQTU1NzI4NThDREE= urn:base64:TFRFU2VjdG9yQ2FycmllcjpBNzc1NTk2MUVFMTc0RTUzMkREQkVBNTU3Mjg1OENEQTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjAwODMzOTAzODkxRDA3RDA2MjhFMDNGRjQ0NjNBMTRB urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpBNzc1NTk2MUVFMTc0RTUzMkREQkVBNTU3Mjg1OENEQQ== 642E1BBE8723AC9C4590F6703EDC44F1 00833903891D07D0628E03FF4463A14A 4C8B24AC011A734A5FEBF321C77289AB
-F4A7A456CCCA0DEF8CB045E219B5AE17 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=27 27 MO urn:base64:RVV0cmFuQ2VsbDoxMjMzNDVERkQ3NDU2MjdFNTFGOEUxNDA5OTMzMjlCMTpVU0VTOkxURVNlY3RvckNhcnJpZXI6RjRBN0E0NTZDQ0NBMERFRjhDQjA0NUUyMTlCNUFFMTc= urn:base64:TFRFU2VjdG9yQ2FycmllcjpGNEE3QTQ1NkNDQ0EwREVGOENCMDQ1RTIxOUI1QUUxNzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkM0QTI4M0VFRkQ1RjE0NjNCN0VFMENBNzgyNDA5REZC urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpGNEE3QTQ1NkNDQ0EwREVGOENCMDQ1RTIxOUI1QUUxNw== 123345DFD745627E51F8E140993329B1 C4A283EEFD5F1463B7EE0CA782409DFB 4C8B24AC011A734A5FEBF321C77289AB
-186269ADB75707F93FD6960BB47E8B52 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=28 28 MO urn:base64:RVV0cmFuQ2VsbDoyMDREQTU0MDlGRjgwRTk3NTg2NDhEQjc1QTYzOUZCMzpVU0VTOkxURVNlY3RvckNhcnJpZXI6MTg2MjY5QURCNzU3MDdGOTNGRDY5NjBCQjQ3RThCNTI= urn:base64:TFRFU2VjdG9yQ2FycmllcjoxODYyNjlBREI3NTcwN0Y5M0ZENjk2MEJCNDdFOEI1MjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkFGRkVBRjFEMEYyRDMwNTI0QzQ5QkE4NkQ1MkYzOUVF urn:base64:RU5vZGVCRnVuY3Rpb246NEM4QjI0QUMwMTFBNzM0QTVGRUJGMzIxQzc3Mjg5QUI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjoxODYyNjlBREI3NTcwN0Y5M0ZENjk2MEJCNDdFOEI1Mg== 204DA5409FF80E9758648DB75A639FB3 AFFEAF1D0F2D30524C49BA86D52F39EE 4C8B24AC011A734A5FEBF321C77289AB
-51FACE199A356B553FD949E28EA80899 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=29 29 MO urn:base64:RVV0cmFuQ2VsbDowMkQ2MjdFRTY5MzU0QzMyNDRDRjNDRTg4N0JFNTBGMzpVU0VTOkxURVNlY3RvckNhcnJpZXI6NTFGQUNFMTk5QTM1NkI1NTNGRDk0OUUyOEVBODA4OTk= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo1MUZBQ0UxOTlBMzU2QjU1M0ZEOTQ5RTI4RUE4MDg5OTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkUyQTEzQ0Y1NkMwRTE4N0M2MkZGOTcxNkJCMEZDRUQ2 urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo1MUZBQ0UxOTlBMzU2QjU1M0ZEOTQ5RTI4RUE4MDg5OQ== 02D627EE69354C3244CF3CE887BE50F3 E2A13CF56C0E187C62FF9716BB0FCED6 96220B64D4A4C6F6B17DF30B12B841D3
-0A70F059568E5C79D8476781A019354F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=30 30 MO urn:base64:RVV0cmFuQ2VsbDpFNzk3MEFBODA2ODg2REQzREQyMjhEOUFEOTM5RThCNTpVU0VTOkxURVNlY3RvckNhcnJpZXI6MEE3MEYwNTk1NjhFNUM3OUQ4NDc2NzgxQTAxOTM1NEY= urn:base64:TFRFU2VjdG9yQ2FycmllcjowQTcwRjA1OTU2OEU1Qzc5RDg0NzY3ODFBMDE5MzU0RjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkUzRTFGQjMxRkI1RjRGQjFDQTgwODAzNjQ3NEJERDk1 urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjowQTcwRjA1OTU2OEU1Qzc5RDg0NzY3ODFBMDE5MzU0Rg== E7970AA806886DD3DD228D9AD939E8B5 E3E1FB31FB5F4FB1CA808036474BDD95 96220B64D4A4C6F6B17DF30B12B841D3
-D9DF1EDA6D0EB2BED37D785171CB5BBA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=31 31 MO urn:base64:RVV0cmFuQ2VsbDpDNjc3MDU0QjJBQTgzMzlFMDBCQ0QyMzBFMzc4NURBMzpVU0VTOkxURVNlY3RvckNhcnJpZXI6RDlERjFFREE2RDBFQjJCRUQzN0Q3ODUxNzFDQjVCQkE= urn:base64:TFRFU2VjdG9yQ2FycmllcjpEOURGMUVEQTZEMEVCMkJFRDM3RDc4NTE3MUNCNUJCQTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjU3NjlDMDI2RDc5OTNDNjY2QzQ1NTM1RUREOEMzRUFE urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpEOURGMUVEQTZEMEVCMkJFRDM3RDc4NTE3MUNCNUJCQQ== C677054B2AA8339E00BCD230E3785DA3 5769C026D7993C666C45535EDD8C3EAD 96220B64D4A4C6F6B17DF30B12B841D3
-9E8083A413565C5DE5B5535AA31B085C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=32 32 MO urn:base64:RVV0cmFuQ2VsbDo3RkFFNTFGNTJFQ0FDNzkxQjI0MDdCREI2OEI1QTdGNzpVU0VTOkxURVNlY3RvckNhcnJpZXI6OUU4MDgzQTQxMzU2NUM1REU1QjU1MzVBQTMxQjA4NUM= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5RTgwODNBNDEzNTY1QzVERTVCNTUzNUFBMzFCMDg1QzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjJBMzI0NzVFRjRGNEFCNDE5MDRCNUFBQUE4RkYyQ0Ex urn:base64:RU5vZGVCRnVuY3Rpb246OTYyMjBCNjRENEE0QzZGNkIxN0RGMzBCMTJCODQxRDM6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5RTgwODNBNDEzNTY1QzVERTVCNTUzNUFBMzFCMDg1Qw== 7FAE51F52ECAC791B2407BDB68B5A7F7 2A32475EF4F4AB41904B5AAAA8FF2CA1 96220B64D4A4C6F6B17DF30B12B841D3
-6B521DED56A52F90CFF76052044EC486 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=33 33 MO urn:base64:RVV0cmFuQ2VsbDo2N0QyMDBEMENDMjE2MDYzMTI5QzdBOUU4NDRCRjBGMDpVU0VTOkxURVNlY3RvckNhcnJpZXI6NkI1MjFERUQ1NkE1MkY5MENGRjc2MDUyMDQ0RUM0ODY= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo2QjUyMURFRDU2QTUyRjkwQ0ZGNzYwNTIwNDRFQzQ4NjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkVCMTMwMUJBMjJFMDY5MTExNEEyMzQ0NTMyM0I2NDlC urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo2QjUyMURFRDU2QTUyRjkwQ0ZGNzYwNTIwNDRFQzQ4Ng== 67D200D0CC216063129C7A9E844BF0F0 EB1301BA22E0691114A23445323B649B 4FBA45FB12D28F9106A09E045DE90254
-97BEC990400A914D9032932447582A39 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=34 34 MO urn:base64:RVV0cmFuQ2VsbDozMEIzMDNDMTlDMEM4RjA1N0ExRDIzOTcxMDVEMzQ2RTpVU0VTOkxURVNlY3RvckNhcnJpZXI6OTdCRUM5OTA0MDBBOTE0RDkwMzI5MzI0NDc1ODJBMzk= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5N0JFQzk5MDQwMEE5MTREOTAzMjkzMjQ0NzU4MkEzOTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjI4NUE3NTkwQ0VDMEJDNDZGMEMxQThBM0QxQUEyQkE1 urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5N0JFQzk5MDQwMEE5MTREOTAzMjkzMjQ0NzU4MkEzOQ== 30B303C19C0C8F057A1D2397105D346E 285A7590CEC0BC46F0C1A8A3D1AA2BA5 4FBA45FB12D28F9106A09E045DE90254
-EB4BBFA85B1D9A9EE8F7D406FC8BD444 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=35 35 MO urn:base64:RVV0cmFuQ2VsbDo5ODAzNzc2OUJBODVFQkU5NDI1MjJENUM0QzZDQjAyRjpVU0VTOkxURVNlY3RvckNhcnJpZXI6RUI0QkJGQTg1QjFEOUE5RUU4RjdENDA2RkM4QkQ0NDQ= urn:base64:TFRFU2VjdG9yQ2FycmllcjpFQjRCQkZBODVCMUQ5QTlFRThGN0Q0MDZGQzhCRDQ0NDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkM2MDZBRjFBMUFDNUE5NkE0M0IwQjhFQkZDMUIwNDdD urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpFQjRCQkZBODVCMUQ5QTlFRThGN0Q0MDZGQzhCRDQ0NA== 98037769BA85EBE942522D5C4C6CB02F C606AF1A1AC5A96A43B0B8EBFC1B047C 4FBA45FB12D28F9106A09E045DE90254
-7C0D0AF440C912BE5BD10DE4F5587270 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=36 36 MO urn:base64:RVV0cmFuQ2VsbDpCMkMzNTE2ODg3MTQ0RjY2RUYzRjMxRjY0MTczN0RBMDpVU0VTOkxURVNlY3RvckNhcnJpZXI6N0MwRDBBRjQ0MEM5MTJCRTVCRDEwREU0RjU1ODcyNzA= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3QzBEMEFGNDQwQzkxMkJFNUJEMTBERTRGNTU4NzI3MDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjQwRkI1NDgxNDAyRENFOEFENkIzQjAzNTdCMDBDRjgy urn:base64:RU5vZGVCRnVuY3Rpb246NEZCQTQ1RkIxMkQyOEY5MTA2QTA5RTA0NURFOTAyNTQ6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3QzBEMEFGNDQwQzkxMkJFNUJEMTBERTRGNTU4NzI3MA== B2C3516887144F66EF3F31F641737DA0 40FB5481402DCE8AD6B3B0357B00CF82 4FBA45FB12D28F9106A09E045DE90254
-E024800BB0240D7DB418E03DAF763FC9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=37 37 MO urn:base64:RVV0cmFuQ2VsbDpFMzEyNDI2RTNDRUE4MzgyM0QzNDNCMjY1QjM4ODE4QTpVU0VTOkxURVNlY3RvckNhcnJpZXI6RTAyNDgwMEJCMDI0MEQ3REI0MThFMDNEQUY3NjNGQzk= urn:base64:TFRFU2VjdG9yQ2FycmllcjpFMDI0ODAwQkIwMjQwRDdEQjQxOEUwM0RBRjc2M0ZDOTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkZEOEYzREU4QjhBRjJGRDEwMkYzOUQwRUQ4OUIzNzE0 urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpFMDI0ODAwQkIwMjQwRDdEQjQxOEUwM0RBRjc2M0ZDOQ== E312426E3CEA83823D343B265B38818A FD8F3DE8B8AF2FD102F39D0ED89B3714 222B3B5942A23115B9C1AC2B94AF8548
-3D9825BBFDDA56F41FA800A56C052E2E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=38 38 MO urn:base64:RVV0cmFuQ2VsbDpBNzkyNUU4NTc1MDA5RDBGMTZEMTg1RTI1Nzg3OTc3MDpVU0VTOkxURVNlY3RvckNhcnJpZXI6M0Q5ODI1QkJGRERBNTZGNDFGQTgwMEE1NkMwNTJFMkU= urn:base64:TFRFU2VjdG9yQ2FycmllcjozRDk4MjVCQkZEREE1NkY0MUZBODAwQTU2QzA1MkUyRTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjVDRUEyNDcwRDk5QThBMkJCM0VEOTBCQzE1REIxMTQw urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjozRDk4MjVCQkZEREE1NkY0MUZBODAwQTU2QzA1MkUyRQ== A7925E8575009D0F16D185E257879770 5CEA2470D99A8A2BB3ED90BC15DB1140 222B3B5942A23115B9C1AC2B94AF8548
-8B44859EE12633357CA3E9A5C8395FF0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=39 39 MO urn:base64:RVV0cmFuQ2VsbDo3MkJDMjVCNTYxM0I5QkM1MzA4MjA5NThGMzkzRTkwQzpVU0VTOkxURVNlY3RvckNhcnJpZXI6OEI0NDg1OUVFMTI2MzMzNTdDQTNFOUE1QzgzOTVGRjA= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo4QjQ0ODU5RUUxMjYzMzM1N0NBM0U5QTVDODM5NUZGMDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjZBMjNBOEI4QjVBQ0VBNzc1RDZFOThCQUMxNTM0Mzcz urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo4QjQ0ODU5RUUxMjYzMzM1N0NBM0U5QTVDODM5NUZGMA== 72BC25B5613B9BC530820958F393E90C 6A23A8B8B5ACEA775D6E98BAC1534373 222B3B5942A23115B9C1AC2B94AF8548
-B73523501090D7CE4D8EF71252D4F52D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=40 40 MO urn:base64:RVV0cmFuQ2VsbDpBQUY2M0I1QzVDRTgwQjMxOEY0NDUyNTYwQzlCNUU1QjpVU0VTOkxURVNlY3RvckNhcnJpZXI6QjczNTIzNTAxMDkwRDdDRTREOEVGNzEyNTJENEY1MkQ= urn:base64:TFRFU2VjdG9yQ2FycmllcjpCNzM1MjM1MDEwOTBEN0NFNEQ4RUY3MTI1MkQ0RjUyRDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjFEMjczRkRENDU2MThDQkQ0MzhEMDA4Mzg3MzMxNEQ1 urn:base64:RU5vZGVCRnVuY3Rpb246MjIyQjNCNTk0MkEyMzExNUI5QzFBQzJCOTRBRjg1NDg6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpCNzM1MjM1MDEwOTBEN0NFNEQ4RUY3MTI1MkQ0RjUyRA== AAF63B5C5CE80B318F4452560C9B5E5B 1D273FDD45618CBD438D0083873314D5 222B3B5942A23115B9C1AC2B94AF8548
-FE5BB2828B02BDC7FC82D2F0738F5CE5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=41 41 MO urn:base64:RVV0cmFuQ2VsbDpFMEY2ODZCNDFBQkU1MUNGNUMwMDk2MDhBMUJCOTg0RjpVU0VTOkxURVNlY3RvckNhcnJpZXI6RkU1QkIyODI4QjAyQkRDN0ZDODJEMkYwNzM4RjVDRTU= urn:base64:TFRFU2VjdG9yQ2FycmllcjpGRTVCQjI4MjhCMDJCREM3RkM4MkQyRjA3MzhGNUNFNTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkUwN0Y3NkVFRkEzRjZEMUE1MDgzQzk5RjNEMjAyQ0NE urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpGRTVCQjI4MjhCMDJCREM3RkM4MkQyRjA3MzhGNUNFNQ== E0F686B41ABE51CF5C009608A1BB984F E07F76EEFA3F6D1A5083C99F3D202CCD FDB1D1C7AC573BA174781DD2DD7359FE
-0D019FB9076AA61D73956DAF4D98913F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=42 42 MO urn:base64:RVV0cmFuQ2VsbDowQUIwQzQyNUU5MzdFRTRFN0I3OTg3OTg1MjBGMUNBMzpVU0VTOkxURVNlY3RvckNhcnJpZXI6MEQwMTlGQjkwNzZBQTYxRDczOTU2REFGNEQ5ODkxM0Y= urn:base64:TFRFU2VjdG9yQ2FycmllcjowRDAxOUZCOTA3NkFBNjFENzM5NTZEQUY0RDk4OTEzRjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjE3MzM4ODc4NUNCNDc2MUIxNTRGNDQ4QUU2MzcyQURD urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjowRDAxOUZCOTA3NkFBNjFENzM5NTZEQUY0RDk4OTEzRg== 0AB0C425E937EE4E7B798798520F1CA3 173388785CB4761B154F448AE6372ADC FDB1D1C7AC573BA174781DD2DD7359FE
-DAA8B97101D41F3E9D8BF8977250625D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=43 43 MO urn:base64:RVV0cmFuQ2VsbDpBQkFDMUEzNEQ3MUVBRTE4RTcxOTg3QzE1REVEMUQ3MTpVU0VTOkxURVNlY3RvckNhcnJpZXI6REFBOEI5NzEwMUQ0MUYzRTlEOEJGODk3NzI1MDYyNUQ= urn:base64:TFRFU2VjdG9yQ2FycmllcjpEQUE4Qjk3MTAxRDQxRjNFOUQ4QkY4OTc3MjUwNjI1RDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkFBMTdDRTE1MDRDRDQ1MTIxMjEyNjdDMjIwMzQ2MjBB urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpEQUE4Qjk3MTAxRDQxRjNFOUQ4QkY4OTc3MjUwNjI1RA== ABAC1A34D71EAE18E71987C15DED1D71 AA17CE1504CD4512121267C22034620A FDB1D1C7AC573BA174781DD2DD7359FE
-1A777650C4E9B8075977354FDE860824 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=44 44 MO urn:base64:RVV0cmFuQ2VsbDpCQjQ3Qjg1Njk5Q0EyQ0FDRkY5RjIwMTFGQTJENkNDMjpVU0VTOkxURVNlY3RvckNhcnJpZXI6MUE3Nzc2NTBDNEU5QjgwNzU5NzczNTRGREU4NjA4MjQ= urn:base64:TFRFU2VjdG9yQ2FycmllcjoxQTc3NzY1MEM0RTlCODA3NTk3NzM1NEZERTg2MDgyNDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjU0MkQ1NjJFNzJDODAyNURENTYwRDcxOEZGREUxRDQ1 urn:base64:RU5vZGVCRnVuY3Rpb246RkRCMUQxQzdBQzU3M0JBMTc0NzgxREQyREQ3MzU5RkU6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjoxQTc3NzY1MEM0RTlCODA3NTk3NzM1NEZERTg2MDgyNA== BB47B85699CA2CACFF9F2011FA2D6CC2 542D562E72C8025DD560D718FFDE1D45 FDB1D1C7AC573BA174781DD2DD7359FE
-CA63AD754710B31CCE770A71BBAFA823 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=45 45 MO urn:base64:RVV0cmFuQ2VsbDpGQjZDQkIwQ0JCQzZGMTE4NjhCOTRFRDk3NzE1NjY3NzpVU0VTOkxURVNlY3RvckNhcnJpZXI6Q0E2M0FENzU0NzEwQjMxQ0NFNzcwQTcxQkJBRkE4MjM= urn:base64:TFRFU2VjdG9yQ2FycmllcjpDQTYzQUQ3NTQ3MTBCMzFDQ0U3NzBBNzFCQkFGQTgyMzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkUzQzk2QkE1RDdDMDc1NUEzMDExRDEyQTMyOTcxQkEx urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpDQTYzQUQ3NTQ3MTBCMzFDQ0U3NzBBNzFCQkFGQTgyMw== FB6CBB0CBBC6F11868B94ED977156677 E3C96BA5D7C0755A3011D12A32971BA1 FE3075645E2303A67B9D0BAD3CCB29BC
-D686F8AE6CC4C8A588400AB752322CCA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=46 46 MO urn:base64:RVV0cmFuQ2VsbDowNDI4OEE5QTk1MTg4RDFGMURENTlDOTBBNDlEMjY0OTpVU0VTOkxURVNlY3RvckNhcnJpZXI6RDY4NkY4QUU2Q0M0QzhBNTg4NDAwQUI3NTIzMjJDQ0E= urn:base64:TFRFU2VjdG9yQ2FycmllcjpENjg2RjhBRTZDQzRDOEE1ODg0MDBBQjc1MjMyMkNDQTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkI0QzMzM0VDRDkyQTczNTFBMzhFRTNCQzUxMEI1REE3 urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpENjg2RjhBRTZDQzRDOEE1ODg0MDBBQjc1MjMyMkNDQQ== 04288A9A95188D1F1DD59C90A49D2649 B4C333ECD92A7351A38EE3BC510B5DA7 FE3075645E2303A67B9D0BAD3CCB29BC
-DFE953449C7E184AC614BB9B2625997F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=47 47 MO urn:base64:RVV0cmFuQ2VsbDoyQTYwNTRDQ0NENzE3OUYwOUJDMTE4QjI4MThCMUFERTpVU0VTOkxURVNlY3RvckNhcnJpZXI6REZFOTUzNDQ5QzdFMTg0QUM2MTRCQjlCMjYyNTk5N0Y= urn:base64:TFRFU2VjdG9yQ2FycmllcjpERkU5NTM0NDlDN0UxODRBQzYxNEJCOUIyNjI1OTk3RjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjZGNzUxMTZCQjI4OUVDRDhFQjFBOTYyNTJGRDhGN0Mw urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpERkU5NTM0NDlDN0UxODRBQzYxNEJCOUIyNjI1OTk3Rg== 2A6054CCCD7179F09BC118B2818B1ADE 6F75116BB289ECD8EB1A96252FD8F7C0 FE3075645E2303A67B9D0BAD3CCB29BC
-89E516889722A65325C1E5428EEC167C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=48 48 MO urn:base64:RVV0cmFuQ2VsbDo1MUM1MDQ2ODk2NDYxQkE4OTc0NEY3NTM4NEFCREI5MzpVU0VTOkxURVNlY3RvckNhcnJpZXI6ODlFNTE2ODg5NzIyQTY1MzI1QzFFNTQyOEVFQzE2N0M= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo4OUU1MTY4ODk3MjJBNjUzMjVDMUU1NDI4RUVDMTY3QzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjE2Qjg3MDUxMUZBQUYxMTgzRkM5MkU2NDFCMkMzODA0 urn:base64:RU5vZGVCRnVuY3Rpb246RkUzMDc1NjQ1RTIzMDNBNjdCOUQwQkFEM0NDQjI5QkM6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo4OUU1MTY4ODk3MjJBNjUzMjVDMUU1NDI4RUVDMTY3Qw== 51C5046896461BA89744F75384ABDB93 16B870511FAAF1183FC92E641B2C3804 FE3075645E2303A67B9D0BAD3CCB29BC
-A7650696F038E8A8D20654C1E88BF765 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=49 49 MO urn:base64:RVV0cmFuQ2VsbDo3QzlEMjQ1OTM2NUNDODBCQ0VDODRFNERCOTcxMzEyMDpVU0VTOkxURVNlY3RvckNhcnJpZXI6QTc2NTA2OTZGMDM4RThBOEQyMDY1NEMxRTg4QkY3NjU= urn:base64:TFRFU2VjdG9yQ2FycmllcjpBNzY1MDY5NkYwMzhFOEE4RDIwNjU0QzFFODhCRjc2NTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjJDN0FBODA5Q0QxQTkyRkQ3NEVDNDE1MUQ3QzE2QThE urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpBNzY1MDY5NkYwMzhFOEE4RDIwNjU0QzFFODhCRjc2NQ== 7C9D2459365CC80BCEC84E4DB9713120 2C7AA809CD1A92FD74EC4151D7C16A8D CF6B05084CD85A8C0943B77317510652
-2AAB010B2406F422886BA8BD080DE1F3 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=50 50 MO urn:base64:RVV0cmFuQ2VsbDo5QzQzNThDQURDMDhFNTZBMTlFOEZFRTFDMDFBNzA2RjpVU0VTOkxURVNlY3RvckNhcnJpZXI6MkFBQjAxMEIyNDA2RjQyMjg4NkJBOEJEMDgwREUxRjM= urn:base64:TFRFU2VjdG9yQ2FycmllcjoyQUFCMDEwQjI0MDZGNDIyODg2QkE4QkQwODBERTFGMzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjJDMjFEMTA2OTQ2MEYzNUZGMzg5NTJGMTA1MERGN0ND urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjoyQUFCMDEwQjI0MDZGNDIyODg2QkE4QkQwODBERTFGMw== 9C4358CADC08E56A19E8FEE1C01A706F 2C21D1069460F35FF38952F1050DF7CC CF6B05084CD85A8C0943B77317510652
-6AB2E20188362ADB23025E6F882690EC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=51 51 MO urn:base64:RVV0cmFuQ2VsbDpGNDAyNDJCMEYwNzA4RTA5QkIwNzYzNUJDNzUwNTc3NjpVU0VTOkxURVNlY3RvckNhcnJpZXI6NkFCMkUyMDE4ODM2MkFEQjIzMDI1RTZGODgyNjkwRUM= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo2QUIyRTIwMTg4MzYyQURCMjMwMjVFNkY4ODI2OTBFQzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkFBM0VEMEM4MkE5RkU2RDc0MTJCN0M1NThBOTZDREE1 urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo2QUIyRTIwMTg4MzYyQURCMjMwMjVFNkY4ODI2OTBFQw== F40242B0F0708E09BB07635BC7505776 AA3ED0C82A9FE6D7412B7C558A96CDA5 CF6B05084CD85A8C0943B77317510652
-86CCA39D5D6AD1E1A8FB05ED06738695 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=52 52 MO urn:base64:RVV0cmFuQ2VsbDozNTNFNDQ1RUFGRTNGQTU4NkQ2NzY4RjcyQTI2MjNBNDpVU0VTOkxURVNlY3RvckNhcnJpZXI6ODZDQ0EzOUQ1RDZBRDFFMUE4RkIwNUVEMDY3Mzg2OTU= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo4NkNDQTM5RDVENkFEMUUxQThGQjA1RUQwNjczODY5NTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkI1RDM2OTA1Qzg3REE2MzY2MTFDMTM3MTU5NzI3Q0VF urn:base64:RU5vZGVCRnVuY3Rpb246Q0Y2QjA1MDg0Q0Q4NUE4QzA5NDNCNzczMTc1MTA2NTI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo4NkNDQTM5RDVENkFEMUUxQThGQjA1RUQwNjczODY5NQ== 353E445EAFE3FA586D6768F72A2623A4 B5D36905C87DA636611C137159727CEE CF6B05084CD85A8C0943B77317510652
-4FB92C02ABE546943360E18F5447919F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=53 53 MO urn:base64:RVV0cmFuQ2VsbDo3REY5Mzc0RUFEQTY4ODVCRjNDRUYyMzE4ODk0NjA4QzpVU0VTOkxURVNlY3RvckNhcnJpZXI6NEZCOTJDMDJBQkU1NDY5NDMzNjBFMThGNTQ0NzkxOUY= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo0RkI5MkMwMkFCRTU0Njk0MzM2MEUxOEY1NDQ3OTE5RjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjNFRjRDNzEzNTRFQzUyN0FCMDMzQTNGQjgyMEY0OEU0 urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo0RkI5MkMwMkFCRTU0Njk0MzM2MEUxOEY1NDQ3OTE5Rg== 7DF9374EADA6885BF3CEF2318894608C 3EF4C71354EC527AB033A3FB820F48E4 8094F5C9E30C346536F0A08A851338F6
-A35530885A44AFFD76DDA542C2F47228 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=54 54 MO urn:base64:RVV0cmFuQ2VsbDozREEzNUQ0OUQxRDlDNTFBMjM0MDM1QUQzQTNGRDM3RTpVU0VTOkxURVNlY3RvckNhcnJpZXI6QTM1NTMwODg1QTQ0QUZGRDc2RERBNTQyQzJGNDcyMjg= urn:base64:TFRFU2VjdG9yQ2FycmllcjpBMzU1MzA4ODVBNDRBRkZENzZEREE1NDJDMkY0NzIyODpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjBCMzY4MUYxOTU1ODRFRjEwNTFCOTE0RUI2M0VCQkNC urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpBMzU1MzA4ODVBNDRBRkZENzZEREE1NDJDMkY0NzIyOA== 3DA35D49D1D9C51A234035AD3A3FD37E 0B3681F195584EF1051B914EB63EBBCB 8094F5C9E30C346536F0A08A851338F6
-5707466E24D325B597E24A3AB3A8A02E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=55 55 MO urn:base64:RVV0cmFuQ2VsbDoyQTExMjM1M0VDNzVGOUFDMkJBNDNFRTcwODI5NkEwMTpVU0VTOkxURVNlY3RvckNhcnJpZXI6NTcwNzQ2NkUyNEQzMjVCNTk3RTI0QTNBQjNBOEEwMkU= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo1NzA3NDY2RTI0RDMyNUI1OTdFMjRBM0FCM0E4QTAyRTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjU5QTc3RkJCREM4RTE4MTk3NDFFNDcyODU5NkM0MzVD urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo1NzA3NDY2RTI0RDMyNUI1OTdFMjRBM0FCM0E4QTAyRQ== 2A112353EC75F9AC2BA43EE708296A01 59A77FBBDC8E1819741E4728596C435C 8094F5C9E30C346536F0A08A851338F6
-069EBFDB8A379462AC82DA1958706C4F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=56 56 MO urn:base64:RVV0cmFuQ2VsbDoxMzlGMEFEMkQ2NDFEOTcxNzc3MDJGQkY1RUZGMzBGRTpVU0VTOkxURVNlY3RvckNhcnJpZXI6MDY5RUJGREI4QTM3OTQ2MkFDODJEQTE5NTg3MDZDNEY= urn:base64:TFRFU2VjdG9yQ2FycmllcjowNjlFQkZEQjhBMzc5NDYyQUM4MkRBMTk1ODcwNkM0RjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkJEQzhFNEVBQzUzQzlDMzk4MDBCNEJEQzAzMDlDOEJC urn:base64:RU5vZGVCRnVuY3Rpb246ODA5NEY1QzlFMzBDMzQ2NTM2RjBBMDhBODUxMzM4RjY6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjowNjlFQkZEQjhBMzc5NDYyQUM4MkRBMTk1ODcwNkM0Rg== 139F0AD2D641D97177702FBF5EFF30FE BDC8E4EAC53C9C39800B4BDC0309C8BB 8094F5C9E30C346536F0A08A851338F6
-DDA0517CB1E49F2ED5D60534F073D8A6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=57 57 MO urn:base64:RVV0cmFuQ2VsbDo4RkYwNjExREE4RjBDRDY4RTNBMjE1QUEwN0NCQjIwRDpVU0VTOkxURVNlY3RvckNhcnJpZXI6RERBMDUxN0NCMUU0OUYyRUQ1RDYwNTM0RjA3M0Q4QTY= urn:base64:TFRFU2VjdG9yQ2FycmllcjpEREEwNTE3Q0IxRTQ5RjJFRDVENjA1MzRGMDczRDhBNjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjM3MzMyMjk5QkUxMzk4MTkzRjdCNzQ1MkMxNjUyMUY4 urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpEREEwNTE3Q0IxRTQ5RjJFRDVENjA1MzRGMDczRDhBNg== 8FF0611DA8F0CD68E3A215AA07CBB20D 37332299BE1398193F7B7452C16521F8 E87A72FDF835513E6BACBF730D5BA6C8
-95F1D3E029E2573B6506E0C492AE9494 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=58 58 MO urn:base64:RVV0cmFuQ2VsbDo1Q0FDMzQ4N0E4NUREREQzMzZCMUY1ODBGRDVGNzJERDpVU0VTOkxURVNlY3RvckNhcnJpZXI6OTVGMUQzRTAyOUUyNTczQjY1MDZFMEM0OTJBRTk0OTQ= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5NUYxRDNFMDI5RTI1NzNCNjUwNkUwQzQ5MkFFOTQ5NDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjgzQjhGQzM0MDlFOUUzNEY4RDRCMjJDRDUxNENDMDc4 urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5NUYxRDNFMDI5RTI1NzNCNjUwNkUwQzQ5MkFFOTQ5NA== 5CAC3487A85DDDD336B1F580FD5F72DD 83B8FC3409E9E34F8D4B22CD514CC078 E87A72FDF835513E6BACBF730D5BA6C8
-C897D4111ADAF80E4B37B1EE0B2C3E46 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=59 59 MO urn:base64:RVV0cmFuQ2VsbDo3M0MwRUM3OEU5REFFRTUzNDdENDVGMTA1NzBFQzg1MTpVU0VTOkxURVNlY3RvckNhcnJpZXI6Qzg5N0Q0MTExQURBRjgwRTRCMzdCMUVFMEIyQzNFNDY= urn:base64:TFRFU2VjdG9yQ2FycmllcjpDODk3RDQxMTFBREFGODBFNEIzN0IxRUUwQjJDM0U0NjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjU4N0FEQkQ0NkZBMEE3NzBFMUMzQUJBMjEwREI1N0VE urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpDODk3RDQxMTFBREFGODBFNEIzN0IxRUUwQjJDM0U0Ng== 73C0EC78E9DAEE5347D45F10570EC851 587ADBD46FA0A770E1C3ABA210DB57ED E87A72FDF835513E6BACBF730D5BA6C8
-9131BBD1EB82C0D91E0988B1C7C7F067 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=60 60 MO urn:base64:RVV0cmFuQ2VsbDo5OEJEREE4QjU0QjdCODkyNzY3NUU3N0M5MjdEODI4MzpVU0VTOkxURVNlY3RvckNhcnJpZXI6OTEzMUJCRDFFQjgyQzBEOTFFMDk4OEIxQzdDN0YwNjc= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5MTMxQkJEMUVCODJDMEQ5MUUwOTg4QjFDN0M3RjA2NzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjYwNEEyMkJGQzcyQTk2MDExNUQ2QjIxQzNGMTg2ODQx urn:base64:RU5vZGVCRnVuY3Rpb246RTg3QTcyRkRGODM1NTEzRTZCQUNCRjczMEQ1QkE2Qzg6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5MTMxQkJEMUVCODJDMEQ5MUUwOTg4QjFDN0M3RjA2Nw== 98BDDA8B54B7B8927675E77C927D8283 604A22BFC72A960115D6B21C3F186841 E87A72FDF835513E6BACBF730D5BA6C8
-6001993A468525D8F81744175E1DFD84 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=61 61 MO urn:base64:RVV0cmFuQ2VsbDo3MTM1NkZDRTVDNjM1OERBRThGOEJGM0Y3QzlCRjAxNDpVU0VTOkxURVNlY3RvckNhcnJpZXI6NjAwMTk5M0E0Njg1MjVEOEY4MTc0NDE3NUUxREZEODQ= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo2MDAxOTkzQTQ2ODUyNUQ4RjgxNzQ0MTc1RTFERkQ4NDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjFENENCQzQzRDYyQTAxQjI3RkEwQzc0NDJGOUFEMEQ4 urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo2MDAxOTkzQTQ2ODUyNUQ4RjgxNzQ0MTc1RTFERkQ4NA== 71356FCE5C6358DAE8F8BF3F7C9BF014 1D4CBC43D62A01B27FA0C7442F9AD0D8 8E99154C3A70826BBD373F06BC1C752B
-157FC984BC10AE290A8EF99151B03354 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=62 62 MO urn:base64:RVV0cmFuQ2VsbDpFNTQ4OUU2RDZDQzA3ODkxRjU0MUJFNDFFRjM3QUE2MzpVU0VTOkxURVNlY3RvckNhcnJpZXI6MTU3RkM5ODRCQzEwQUUyOTBBOEVGOTkxNTFCMDMzNTQ= urn:base64:TFRFU2VjdG9yQ2FycmllcjoxNTdGQzk4NEJDMTBBRTI5MEE4RUY5OTE1MUIwMzM1NDpVU0VTOkFudGVubmFDYXBhYmlsaXR5Ojg5MkJBRTBCNDU4NjVEM0Y0REM3NzY2NjJCQjM3NjU0 urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjoxNTdGQzk4NEJDMTBBRTI5MEE4RUY5OTE1MUIwMzM1NA== E5489E6D6CC07891F541BE41EF37AA63 892BAE0B45865D3F4DC776662BB37654 8E99154C3A70826BBD373F06BC1C752B
-BAED17ED9DE215B3A977B4A40C471498 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=63 63 MO urn:base64:RVV0cmFuQ2VsbDpEMEVBNThCRTBBQzE2NzFCOTM2RjE1QzY3REVBODg5MjpVU0VTOkxURVNlY3RvckNhcnJpZXI6QkFFRDE3RUQ5REUyMTVCM0E5NzdCNEE0MEM0NzE0OTg= urn:base64:TFRFU2VjdG9yQ2FycmllcjpCQUVEMTdFRDlERTIxNUIzQTk3N0I0QTQwQzQ3MTQ5ODpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkVFMUVBQUZEQjg1MjA2MjU5QUE5RDlENEJBMDFCREEy urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpCQUVEMTdFRDlERTIxNUIzQTk3N0I0QTQwQzQ3MTQ5OA== D0EA58BE0AC1671B936F15C67DEA8892 EE1EAAFDB85206259AA9D9D4BA01BDA2 8E99154C3A70826BBD373F06BC1C752B
-5A6A2B3D21767F1BF0F2405AC06D01B0 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=64 64 MO urn:base64:RVV0cmFuQ2VsbDo5QTAzMEQ5RURDMEM4QjA0QTBDNUQyNEEzQTIyMzEzNzpVU0VTOkxURVNlY3RvckNhcnJpZXI6NUE2QTJCM0QyMTc2N0YxQkYwRjI0MDVBQzA2RDAxQjA= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo1QTZBMkIzRDIxNzY3RjFCRjBGMjQwNUFDMDZEMDFCMDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjExMUJEMTIzRENBMUI5MzdGMEUxNUU1QkVGREUwOEU5 urn:base64:RU5vZGVCRnVuY3Rpb246OEU5OTE1NEMzQTcwODI2QkJEMzczRjA2QkMxQzc1MkI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo1QTZBMkIzRDIxNzY3RjFCRjBGMjQwNUFDMDZEMDFCMA== 9A030D9EDC0C8B04A0C5D24A3A223137 111BD123DCA1B937F0E15E5BEFDE08E9 8E99154C3A70826BBD373F06BC1C752B
-5155EA305406300383C95C1D8F59C43C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=65 65 MO urn:base64:RVV0cmFuQ2VsbDo1NjZCOTU2NkE0MEFCMENDRjE2ODRBOEM3NUQ2RThGMDpVU0VTOkxURVNlY3RvckNhcnJpZXI6NTE1NUVBMzA1NDA2MzAwMzgzQzk1QzFEOEY1OUM0M0M= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo1MTU1RUEzMDU0MDYzMDAzODNDOTVDMUQ4RjU5QzQzQzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkRGNzgzN0VFQUI2NUEwNjg1OTExMDM2NkU1RjQ1Mjk3 urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo1MTU1RUEzMDU0MDYzMDAzODNDOTVDMUQ4RjU5QzQzQw== 566B9566A40AB0CCF1684A8C75D6E8F0 DF7837EEAB65A06859110366E5F45297 CEE5D7B02D903A316D0A017C50FC9993
-536765CD4046DCD78CF3933FB856E77C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=66 66 MO urn:base64:RVV0cmFuQ2VsbDpBNTU4N0Q1MUREQjREMUFBRjg4MDc1RUZBRkQzRkYxQTpVU0VTOkxURVNlY3RvckNhcnJpZXI6NTM2NzY1Q0Q0MDQ2RENENzhDRjM5MzNGQjg1NkU3N0M= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo1MzY3NjVDRDQwNDZEQ0Q3OENGMzkzM0ZCODU2RTc3QzpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkQwQUFFOTYzMUFGMTU1NEI4RjM5MDkzMkUzNzdFQTE5 urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo1MzY3NjVDRDQwNDZEQ0Q3OENGMzkzM0ZCODU2RTc3Qw== A5587D51DDB4D1AAF88075EFAFD3FF1A D0AAE9631AF1554B8F390932E377EA19 CEE5D7B02D903A316D0A017C50FC9993
-3C04934E350AF691DFD0E93E9C43B9AB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=67 67 MO urn:base64:RVV0cmFuQ2VsbDo3OTJGQzE1RkEzRjU1NTYyMzczRkY1QjY3Qzg5NzlEOTpVU0VTOkxURVNlY3RvckNhcnJpZXI6M0MwNDkzNEUzNTBBRjY5MURGRDBFOTNFOUM0M0I5QUI= urn:base64:TFRFU2VjdG9yQ2FycmllcjozQzA0OTM0RTM1MEFGNjkxREZEMEU5M0U5QzQzQjlBQjpVU0VTOkFudGVubmFDYXBhYmlsaXR5Ojg5QjlGRTVEMkQ0QTA3Q0NENTRFNzA1QkZFMkQxMEYw urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjozQzA0OTM0RTM1MEFGNjkxREZEMEU5M0U5QzQzQjlBQg== 792FC15FA3F55562373FF5B67C8979D9 89B9FE5D2D4A07CCD54E705BFE2D10F0 CEE5D7B02D903A316D0A017C50FC9993
-6828F136D4173CB3409095959B5C8B8B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=68 68 MO urn:base64:RVV0cmFuQ2VsbDo2RkFBQjUzNDczRjA4NERDODg2RDFFMDQyNjVFRUFEMTpVU0VTOkxURVNlY3RvckNhcnJpZXI6NjgyOEYxMzZENDE3M0NCMzQwOTA5NTk1OUI1QzhCOEI= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo2ODI4RjEzNkQ0MTczQ0IzNDA5MDk1OTU5QjVDOEI4QjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkE2RTk3QkEzMDgzMkMxQjdBQzM2RjRENzlERDM4Qjcx urn:base64:RU5vZGVCRnVuY3Rpb246Q0VFNUQ3QjAyRDkwM0EzMTZEMEEwMTdDNTBGQzk5OTM6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo2ODI4RjEzNkQ0MTczQ0IzNDA5MDk1OTU5QjVDOEI4Qg== 6FAAB53473F084DC886D1E04265EEAD1 A6E97BA30832C1B7AC36F4D79DD38B71 CEE5D7B02D903A316D0A017C50FC9993
-9E6667504F7CBDD9D2AE117219A1F501 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=69 69 MO urn:base64:RVV0cmFuQ2VsbDowN0IzNzExNjc3MDg1RTE2RjQ4QUVEOTlCRUE0MDk2NjpVU0VTOkxURVNlY3RvckNhcnJpZXI6OUU2NjY3NTA0RjdDQkREOUQyQUUxMTcyMTlBMUY1MDE= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5RTY2Njc1MDRGN0NCREQ5RDJBRTExNzIxOUExRjUwMTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkRGQTYyMDJGRjk2REQ0MThFQUQ0QzkzMEYyN0YwQzc4 urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5RTY2Njc1MDRGN0NCREQ5RDJBRTExNzIxOUExRjUwMQ== 07B3711677085E16F48AED99BEA40966 DFA6202FF96DD418EAD4C930F27F0C78 E240B26BA8EE38087134B6D22E24BBDB
-A7C40C6432DB775E67780AA0060CA7DB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=70 70 MO urn:base64:RVV0cmFuQ2VsbDpCOTVFQkU0MjQ1ODAxRDcxODVFMUQwNUU1QkJEQTNGMzpVU0VTOkxURVNlY3RvckNhcnJpZXI6QTdDNDBDNjQzMkRCNzc1RTY3NzgwQUEwMDYwQ0E3REI= urn:base64:TFRFU2VjdG9yQ2FycmllcjpBN0M0MEM2NDMyREI3NzVFNjc3ODBBQTAwNjBDQTdEQjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjAxOTQ1RDdCN0QyQUZCMEIzREZFMjM4MjJEMkM5Q0NC urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpBN0M0MEM2NDMyREI3NzVFNjc3ODBBQTAwNjBDQTdEQg== B95EBE4245801D7185E1D05E5BBDA3F3 01945D7B7D2AFB0B3DFE23822D2C9CCB E240B26BA8EE38087134B6D22E24BBDB
-CF0284C3C21BEFE7AB248D65680A80EA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=71 71 MO urn:base64:RVV0cmFuQ2VsbDpBQkZCRTlFQTc2NzNBMTkxREI2QTUxNDM5RDU1MTVENTpVU0VTOkxURVNlY3RvckNhcnJpZXI6Q0YwMjg0QzNDMjFCRUZFN0FCMjQ4RDY1NjgwQTgwRUE= urn:base64:TFRFU2VjdG9yQ2FycmllcjpDRjAyODRDM0MyMUJFRkU3QUIyNDhENjU2ODBBODBFQTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkJFNTBBQzU3QUIxRkFFNzM1MzFBREQxODEzMjQwNjdG urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpDRjAyODRDM0MyMUJFRkU3QUIyNDhENjU2ODBBODBFQQ== ABFBE9EA7673A191DB6A51439D5515D5 BE50AC57AB1FAE73531ADD181324067F E240B26BA8EE38087134B6D22E24BBDB
-15DF19B0C1FAE1610E970C154A10B219 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=72 72 MO urn:base64:RVV0cmFuQ2VsbDo2MkVEQzdENEQ2QTFEMzYxRTEyRkVCMjY4OEU0M0E4OTpVU0VTOkxURVNlY3RvckNhcnJpZXI6MTVERjE5QjBDMUZBRTE2MTBFOTcwQzE1NEExMEIyMTk= urn:base64:TFRFU2VjdG9yQ2FycmllcjoxNURGMTlCMEMxRkFFMTYxMEU5NzBDMTU0QTEwQjIxOTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjgyRDA1NURFMTVCOTdDRDg2NkNGNDU0QTk2ODhGNERC urn:base64:RU5vZGVCRnVuY3Rpb246RTI0MEIyNkJBOEVFMzgwODcxMzRCNkQyMkUyNEJCREI6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjoxNURGMTlCMEMxRkFFMTYxMEU5NzBDMTU0QTEwQjIxOQ== 62EDC7D4D6A1D361E12FEB2688E43A89 82D055DE15B97CD866CF454A9688F4DB E240B26BA8EE38087134B6D22E24BBDB
-8D65835759F555E8B99E68767BB35ACA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=73 73 MO urn:base64:RVV0cmFuQ2VsbDpFRTdCNUVCQUUyMTM0M0U2OEFDMTk3MTUwRkEyNjU1RTpVU0VTOkxURVNlY3RvckNhcnJpZXI6OEQ2NTgzNTc1OUY1NTVFOEI5OUU2ODc2N0JCMzVBQ0E= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo4RDY1ODM1NzU5RjU1NUU4Qjk5RTY4NzY3QkIzNUFDQTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjM2MkVDM0I3NzU4RDg3M0RGOThBRTJBOUVDMjQ3MkI1 urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo4RDY1ODM1NzU5RjU1NUU4Qjk5RTY4NzY3QkIzNUFDQQ== EE7B5EBAE21343E68AC197150FA2655E 362EC3B7758D873DF98AE2A9EC2472B5 FC195225D4CD060E249281C9BBDAF964
-22CC8313F3514E848D51B40B889B3752 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=74 74 MO urn:base64:RVV0cmFuQ2VsbDo0NzhDQjE3MzFDNzFCRTg0OUIwRDgyRjMyMDhGNzBDRjpVU0VTOkxURVNlY3RvckNhcnJpZXI6MjJDQzgzMTNGMzUxNEU4NDhENTFCNDBCODg5QjM3NTI= urn:base64:TFRFU2VjdG9yQ2FycmllcjoyMkNDODMxM0YzNTE0RTg0OEQ1MUI0MEI4ODlCMzc1MjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkRBNUQ4QTNEMUNEQzNENTU0NDdGN0M4NkVERDhGRTUw urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjoyMkNDODMxM0YzNTE0RTg0OEQ1MUI0MEI4ODlCMzc1Mg== 478CB1731C71BE849B0D82F3208F70CF DA5D8A3D1CDC3D55447F7C86EDD8FE50 FC195225D4CD060E249281C9BBDAF964
-6031B371CA7E568237A3DFA04A80FE4B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=75 75 MO urn:base64:RVV0cmFuQ2VsbDo1RDZGM0I0OTRGRUNFMEQ3QkM0NjczNUQ2M0VDQTUwQjpVU0VTOkxURVNlY3RvckNhcnJpZXI6NjAzMUIzNzFDQTdFNTY4MjM3QTNERkEwNEE4MEZFNEI= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo2MDMxQjM3MUNBN0U1NjgyMzdBM0RGQTA0QTgwRkU0QjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjZBMzlCMTUxQzUwRjczRjAyOUI1NzcyMjk5RENGMjg5 urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo2MDMxQjM3MUNBN0U1NjgyMzdBM0RGQTA0QTgwRkU0Qg== 5D6F3B494FECE0D7BC46735D63ECA50B 6A39B151C50F73F029B5772299DCF289 FC195225D4CD060E249281C9BBDAF964
-BF6A9895F0DA4A0328FAA8E33F372D3F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=76 76 MO urn:base64:RVV0cmFuQ2VsbDpGODE4QUEzNkI1RTE0NTZCMzJGQjNCOTAxNTdGMTVBRDpVU0VTOkxURVNlY3RvckNhcnJpZXI6QkY2QTk4OTVGMERBNEEwMzI4RkFBOEUzM0YzNzJEM0Y= urn:base64:TFRFU2VjdG9yQ2FycmllcjpCRjZBOTg5NUYwREE0QTAzMjhGQUE4RTMzRjM3MkQzRjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkIwRkU4ODBERjk0NzRBQTI5QzdBNEJBQUE5NDZFNTVE urn:base64:RU5vZGVCRnVuY3Rpb246RkMxOTUyMjVENENEMDYwRTI0OTI4MUM5QkJEQUY5NjQ6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjpCRjZBOTg5NUYwREE0QTAzMjhGQUE4RTMzRjM3MkQzRg== F818AA36B5E1456B32FB3B90157F15AD B0FE880DF9474AA29C7A4BAAA946E55D FC195225D4CD060E249281C9BBDAF964
-7E4545AFAD3F792814FB8F010D5CF9FD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=77 77 MO urn:base64:RVV0cmFuQ2VsbDo4RUFBQkJCMkM5RDQ5OTZDOEFEOTQxNTQ5MDMwNTJDQzpVU0VTOkxURVNlY3RvckNhcnJpZXI6N0U0NTQ1QUZBRDNGNzkyODE0RkI4RjAxMEQ1Q0Y5RkQ= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo3RTQ1NDVBRkFEM0Y3OTI4MTRGQjhGMDEwRDVDRjlGRDpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkMyM0Q5RDA4MDdFNDVFRjU1REM2QjdEMzVFRUIwOEIx urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo3RTQ1NDVBRkFEM0Y3OTI4MTRGQjhGMDEwRDVDRjlGRA== 8EAABBB2C9D4996C8AD94154903052CC C23D9D0807E45EF55DC6B7D35EEB08B1 0C2651AB5D430123729B336E8635E0E0
-938CE5FDE447302290320C8C01424B05 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=78 78 MO urn:base64:RVV0cmFuQ2VsbDpDQUM2RUY1Q0M5NTRGN0E3RjUyOTRBNjQzQ0Q3QTE2MDpVU0VTOkxURVNlY3RvckNhcnJpZXI6OTM4Q0U1RkRFNDQ3MzAyMjkwMzIwQzhDMDE0MjRCMDU= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo5MzhDRTVGREU0NDczMDIyOTAzMjBDOEMwMTQyNEIwNTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkNGOEVGNzIzQkI0NkM2MTcwREIwNDkwRDFGQTI2Qjg1 urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo5MzhDRTVGREU0NDczMDIyOTAzMjBDOEMwMTQyNEIwNQ== CAC6EF5CC954F7A7F5294A643CD7A160 CF8EF723BB46C6170DB0490D1FA26B85 0C2651AB5D430123729B336E8635E0E0
-329617C4BD9599181D6F7FE06C40C1FF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=79 79 MO urn:base64:RVV0cmFuQ2VsbDoxMDUzQ0UyQUVCRUU2QjMyQzg0NkMzM0IwN0UwQjA0NzpVU0VTOkxURVNlY3RvckNhcnJpZXI6MzI5NjE3QzRCRDk1OTkxODFENkY3RkUwNkM0MEMxRkY= urn:base64:TFRFU2VjdG9yQ2FycmllcjozMjk2MTdDNEJEOTU5OTE4MUQ2RjdGRTA2QzQwQzFGRjpVU0VTOkFudGVubmFDYXBhYmlsaXR5OkUxQzM0MERGMEZGQTUxMjExRERCNUY4MjlFMkEyN0VF urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6TFRFU2VjdG9yQ2FycmllcjozMjk2MTdDNEJEOTU5OTE4MUQ2RjdGRTA2QzQwQzFGRg== 1053CE2AEBEE6B32C846C33B07E0B047 E1C340DF0FFA51211DDB5F829E2A27EE 0C2651AB5D430123729B336E8635E0E0
-5C2B860A2AE8149A46531B69F2252301 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/LTESectorCarrier=80 80 MO urn:base64:RVV0cmFuQ2VsbDo4MDMxMzJDOEFDMzdERUQ2MENCOUNCOTk4NkQ5QkMzRDpVU0VTOkxURVNlY3RvckNhcnJpZXI6NUMyQjg2MEEyQUU4MTQ5QTQ2NTMxQjY5RjIyNTIzMDE= urn:base64:TFRFU2VjdG9yQ2Fycmllcjo1QzJCODYwQTJBRTgxNDlBNDY1MzFCNjlGMjI1MjMwMTpVU0VTOkFudGVubmFDYXBhYmlsaXR5OjU5RTM5QUVCMkNEOEVDMDAxODg1M0Q3RUY3NUU0RTc3 urn:base64:RU5vZGVCRnVuY3Rpb246MEMyNjUxQUI1RDQzMDEyMzcyOUIzMzZFODYzNUUwRTA6UFJPVklERVM6TFRFU2VjdG9yQ2Fycmllcjo1QzJCODYwQTJBRTgxNDlBNDY1MzFCNjlGMjI1MjMwMQ== 803132C8AC37DED60CB9CB9986D9BC3D 59E39AEB2CD8EC0018853D7EF75E4E77 0C2651AB5D430123729B336E8635E0E0
-\.
-
-COPY ties_data."NRSectorCarrier" (id, fdn, "arfcnDL", "arfcnUL", "essScLocalId", "frequencyDL", "frequencyUL", "REL_NRCELLDU_USES_NRSECTORCARRIER_EIID", "REL_NRSECTORCARRIER_USES_ANTENNACAPABILITY_EIID", "REL_ODUFUNCTION_PROVIDES_NRSECTORCARRIER_EIID", "REL_NRCELLDU_USES_NRSECTORCARRIER", "REL_NRSECTORCARRIER_USES_ANTENNACAPABILITY", "REL_ODUFUNCTION_PROVIDES_NRSECTORCARRIER") FROM stdin;
-280DC38868CEE3ED4A6BA9149ABE7A6C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=1 1000 20 1 20 20 urn:base64:TlJDZWxsRFU6OThDM0E0NTkxQTM3NzE4RTEzMzBGMDI5NEUyM0I2MkE6VVNFUzpOUlNlY3RvckNhcnJpZXI6MjgwREMzODg2OENFRTNFRDRBNkJBOTE0OUFCRTdBNkM= urn:base64:TlJTZWN0b3JDYXJyaWVyOjI4MERDMzg4NjhDRUUzRUQ0QTZCQTkxNDlBQkU3QTZDOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NTgzNUY3N0JFOUQ0RTEwMjMxNkJENTkxOTVGNjM3MEI= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MjgwREMzODg2OENFRTNFRDRBNkJBOTE0OUFCRTdBNkM= 98C3A4591A37718E1330F0294E23B62A 5835F77BE9D4E102316BD59195F6370B D3215E08570BE58339C7463626B50E37
-5C5B83AAB9E669D3138091E9AAC19405 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=2 1000 20 2 20 20 urn:base64:TlJDZWxsRFU6Rjk1NDZFODIzMTNBQzFENUU2OTBEQ0Q3QkU1NTYwNkY6VVNFUzpOUlNlY3RvckNhcnJpZXI6NUM1QjgzQUFCOUU2NjlEMzEzODA5MUU5QUFDMTk0MDU= urn:base64:TlJTZWN0b3JDYXJyaWVyOjVDNUI4M0FBQjlFNjY5RDMxMzgwOTFFOUFBQzE5NDA1OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MDRGMzlFQkFCNzI0NTRFNEQzMzMxRDZDMzM2N0I0NUY= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NUM1QjgzQUFCOUU2NjlEMzEzODA5MUU5QUFDMTk0MDU= F9546E82313AC1D5E690DCD7BE55606F 04F39EBAB72454E4D3331D6C3367B45F D3215E08570BE58339C7463626B50E37
-E49D942C16E0364E1E0788138916D70C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=3 1000 20 3 20 20 urn:base64:TlJDZWxsRFU6QjQ4MDQyN0U4QTBDMEI4RDk5NEU0Mzc3ODRCQjM4MkY6VVNFUzpOUlNlY3RvckNhcnJpZXI6RTQ5RDk0MkMxNkUwMzY0RTFFMDc4ODEzODkxNkQ3MEM= urn:base64:TlJTZWN0b3JDYXJyaWVyOkU0OUQ5NDJDMTZFMDM2NEUxRTA3ODgxMzg5MTZENzBDOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QTc3QjIzN0E1NDFCMkQzMjI1QjRCNjFEMzA5OEU0QUE= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RTQ5RDk0MkMxNkUwMzY0RTFFMDc4ODEzODkxNkQ3MEM= B480427E8A0C0B8D994E437784BB382F A77B237A541B2D3225B4B61D3098E4AA D3215E08570BE58339C7463626B50E37
-2A6FF9967B960E0238CD1C402A352ADF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=4 1000 20 4 20 20 urn:base64:TlJDZWxsRFU6NDg0QjM0MTMxMEEzNjIxNTE1NTEyMkRFNzRFQUUxNkE6VVNFUzpOUlNlY3RvckNhcnJpZXI6MkE2RkY5OTY3Qjk2MEUwMjM4Q0QxQzQwMkEzNTJBREY= urn:base64:TlJTZWN0b3JDYXJyaWVyOjJBNkZGOTk2N0I5NjBFMDIzOENEMUM0MDJBMzUyQURGOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzMwOTgxQTQ4OUE0NUJFNEJGNzA2NjdGQzY2OTkyQ0Y= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MkE2RkY5OTY3Qjk2MEUwMjM4Q0QxQzQwMkEzNTJBREY= 484B341310A36215155122DE74EAE16A C30981A489A45BE4BF70667FC66992CF D3215E08570BE58339C7463626B50E37
-7E0CE0F2BA06341920140FB7DF29CF6A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=5 1000 20 5 20 20 urn:base64:TlJDZWxsRFU6Mzc3QUE5NkI0QjNBOEZFMTA2QzlCQUY2M0ZFODQ2MEI6VVNFUzpOUlNlY3RvckNhcnJpZXI6N0UwQ0UwRjJCQTA2MzQxOTIwMTQwRkI3REYyOUNGNkE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjdFMENFMEYyQkEwNjM0MTkyMDE0MEZCN0RGMjlDRjZBOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NEE4NTBGOTlFQkEwOTM1QjdDREU2RUY0NDZDMDQ5OUM= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6N0UwQ0UwRjJCQTA2MzQxOTIwMTQwRkI3REYyOUNGNkE= 377AA96B4B3A8FE106C9BAF63FE8460B 4A850F99EBA0935B7CDE6EF446C0499C D3215E08570BE58339C7463626B50E37
-B4EDE862A525DCA5BC9ED5B22CC3721B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=6 1000 20 6 20 20 urn:base64:TlJDZWxsRFU6M0FGMjIwOEE1OTU2RjA3NjQ0RDhGM0VEN0M2MkJEQ0Y6VVNFUzpOUlNlY3RvckNhcnJpZXI6QjRFREU4NjJBNTI1RENBNUJDOUVENUIyMkNDMzcyMUI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkI0RURFODYyQTUyNURDQTVCQzlFRDVCMjJDQzM3MjFCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzgzRTA4QTUzNDM4RUY5Njc4RDUxNUU3M0RCNjY3Rjc= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QjRFREU4NjJBNTI1RENBNUJDOUVENUIyMkNDMzcyMUI= 3AF2208A5956F07644D8F3ED7C62BDCF C83E08A53438EF9678D515E73DB667F7 D3215E08570BE58339C7463626B50E37
-D89136FB5F8E6E485B94C21660C259A8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=7 1000 20 7 20 20 urn:base64:TlJDZWxsRFU6NDRBQkFFRTJBNzdBNUZDMkM4MTIxQjk1RkZBNTYyNkQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6RDg5MTM2RkI1RjhFNkU0ODVCOTRDMjE2NjBDMjU5QTg= urn:base64:TlJTZWN0b3JDYXJyaWVyOkQ4OTEzNkZCNUY4RTZFNDg1Qjk0QzIxNjYwQzI1OUE4OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NUUxQzYzQTNGMzJBODYyNUE1RjI4MjcyN0QzNkIwQzg= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RDg5MTM2RkI1RjhFNkU0ODVCOTRDMjE2NjBDMjU5QTg= 44ABAEE2A77A5FC2C8121B95FFA5626D 5E1C63A3F32A8625A5F282727D36B0C8 D3215E08570BE58339C7463626B50E37
-3F31CBFD6B09D4DA17907FEB840F4AE4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=8 1000 20 8 20 20 urn:base64:TlJDZWxsRFU6NEU0MEI0Q0I1MThEN0Y2QzRCMDI4OEE5MERCODEzNDc6VVNFUzpOUlNlY3RvckNhcnJpZXI6M0YzMUNCRkQ2QjA5RDREQTE3OTA3RkVCODQwRjRBRTQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjNGMzFDQkZENkIwOUQ0REExNzkwN0ZFQjg0MEY0QUU0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MUIzMzhGNDc4MDg3RjkzQzkxRTAyODdDQzg3Q0RDNTY= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6M0YzMUNCRkQ2QjA5RDREQTE3OTA3RkVCODQwRjRBRTQ= 4E40B4CB518D7F6C4B0288A90DB81347 1B338F478087F93C91E0287CC87CDC56 D3215E08570BE58339C7463626B50E37
-0D8E5CF2A936251A352A26590109C2C7 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=9 1000 20 9 20 20 urn:base64:TlJDZWxsRFU6Q0Y3MjlBMEJCQzM5RTUwNzdDQjU2NzQyMDZBNjczNTk6VVNFUzpOUlNlY3RvckNhcnJpZXI6MEQ4RTVDRjJBOTM2MjUxQTM1MkEyNjU5MDEwOUMyQzc= urn:base64:TlJTZWN0b3JDYXJyaWVyOjBEOEU1Q0YyQTkzNjI1MUEzNTJBMjY1OTAxMDlDMkM3OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NTk5MzEzQ0REMzVGNDk4RUU4OTlDRjUxQzlBMDlCRjU= urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MEQ4RTVDRjJBOTM2MjUxQTM1MkEyNjU5MDEwOUMyQzc= CF729A0BBC39E5077CB5674206A67359 599313CDD35F498EE899CF51C9A09BF5 D3215E08570BE58339C7463626B50E37
-EFD2B059FAA79B1CFAA94D5A06AC952D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=10 1000 20 10 20 20 urn:base64:TlJDZWxsRFU6RkI3QTkyRUQ0OTVGRTVCMDhFQTFFMzIzNTNGNjc2MDg6VVNFUzpOUlNlY3RvckNhcnJpZXI6RUZEMkIwNTlGQUE3OUIxQ0ZBQTk0RDVBMDZBQzk1MkQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOkVGRDJCMDU5RkFBNzlCMUNGQUE5NEQ1QTA2QUM5NTJEOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QjA0RTIyMzMzN0YyNzVDMEJGNTlCNDU5QTA2RUU2QzM= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RUZEMkIwNTlGQUE3OUIxQ0ZBQTk0RDVBMDZBQzk1MkQ= FB7A92ED495FE5B08EA1E32353F67608 B04E223337F275C0BF59B459A06EE6C3 1050570EBB1315E1AE7A9FD5E1400A00
-C9FB21B897B6308924C000940A6B6256 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=11 1000 20 11 20 20 urn:base64:TlJDZWxsRFU6RTgwNjU2NDQ3MTdFRDE1RjM1MDRCNUVFNzFCQjA4OTQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6QzlGQjIxQjg5N0I2MzA4OTI0QzAwMDk0MEE2QjYyNTY= urn:base64:TlJTZWN0b3JDYXJyaWVyOkM5RkIyMUI4OTdCNjMwODkyNEMwMDA5NDBBNkI2MjU2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MkQ3MUY2Q0RDQzVERkQxRDcxMkQ5QUIwMUJBQTQ3MDY= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QzlGQjIxQjg5N0I2MzA4OTI0QzAwMDk0MEE2QjYyNTY= E8065644717ED15F3504B5EE71BB0894 2D71F6CDCC5DFD1D712D9AB01BAA4706 1050570EBB1315E1AE7A9FD5E1400A00
-95970B1B7C1EF775A24D900B84653AD1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=12 1000 20 12 20 20 urn:base64:TlJDZWxsRFU6NDQ2M0MzRDJGN0IzODgzMjNBODIxMDVFODU0QUVBMUM6VVNFUzpOUlNlY3RvckNhcnJpZXI6OTU5NzBCMUI3QzFFRjc3NUEyNEQ5MDBCODQ2NTNBRDE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjk1OTcwQjFCN0MxRUY3NzVBMjREOTAwQjg0NjUzQUQxOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RDc0MTcyMzU4QUQ0QkE0MThFMjQyM0EzRDU0MTUxRUQ= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OTU5NzBCMUI3QzFFRjc3NUEyNEQ5MDBCODQ2NTNBRDE= 4463C3D2F7B388323A82105E854AEA1C D74172358AD4BA418E2423A3D54151ED 1050570EBB1315E1AE7A9FD5E1400A00
-B77E2DCF02094E0D4F400FFB1F915CA6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=13 1000 20 13 20 20 urn:base64:TlJDZWxsRFU6ODk3QzU2MkE1RDhFRTIyNzQ2QUM0RDQ4MDQ1MDVCNjk6VVNFUzpOUlNlY3RvckNhcnJpZXI6Qjc3RTJEQ0YwMjA5NEUwRDRGNDAwRkZCMUY5MTVDQTY= urn:base64:TlJTZWN0b3JDYXJyaWVyOkI3N0UyRENGMDIwOTRFMEQ0RjQwMEZGQjFGOTE1Q0E2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MTE0QkQ3QkQ0NkQyRUE2QkY4NTEyNTEyODdGMkNGOTU= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6Qjc3RTJEQ0YwMjA5NEUwRDRGNDAwRkZCMUY5MTVDQTY= 897C562A5D8EE22746AC4D4804505B69 114BD7BD46D2EA6BF851251287F2CF95 1050570EBB1315E1AE7A9FD5E1400A00
-82D362D75CFF3D3222298BC197EBBECD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=14 1000 20 14 20 20 urn:base64:TlJDZWxsRFU6ODRFNzE1NURBRDY3OTNBNUVCRkZFNzI0NDlGNzc0OUI6VVNFUzpOUlNlY3RvckNhcnJpZXI6ODJEMzYyRDc1Q0ZGM0QzMjIyMjk4QkMxOTdFQkJFQ0Q= urn:base64:TlJTZWN0b3JDYXJyaWVyOjgyRDM2MkQ3NUNGRjNEMzIyMjI5OEJDMTk3RUJCRUNEOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QjAwNjk5QjVFQTMzQzg2N0VFRTdFMDQ0RUU4NDREMzQ= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6ODJEMzYyRDc1Q0ZGM0QzMjIyMjk4QkMxOTdFQkJFQ0Q= 84E7155DAD6793A5EBFFE72449F7749B B00699B5EA33C867EEE7E044EE844D34 1050570EBB1315E1AE7A9FD5E1400A00
-529F6B2AC76DE9E8775BAEBA97890201 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=15 1000 20 15 20 20 urn:base64:TlJDZWxsRFU6MDY0NkE0MUEzMDE1MUI1OUJDMUQ5MTA3M0MxNjIyNTc6VVNFUzpOUlNlY3RvckNhcnJpZXI6NTI5RjZCMkFDNzZERTlFODc3NUJBRUJBOTc4OTAyMDE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjUyOUY2QjJBQzc2REU5RTg3NzVCQUVCQTk3ODkwMjAxOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QTUzN0Q3QTlFRkRFRTBDNDdCM0ZCNENGM0IxRjA2QTc= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NTI5RjZCMkFDNzZERTlFODc3NUJBRUJBOTc4OTAyMDE= 0646A41A30151B59BC1D91073C162257 A537D7A9EFDEE0C47B3FB4CF3B1F06A7 1050570EBB1315E1AE7A9FD5E1400A00
-62B1A8C49EC219C2F0F3D56F495EC4CC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=16 1000 20 16 20 20 urn:base64:TlJDZWxsRFU6NDU2MjdENjM2RDdBNDUzNTdGNkYyMzY2MUJBNzdDODU6VVNFUzpOUlNlY3RvckNhcnJpZXI6NjJCMUE4QzQ5RUMyMTlDMkYwRjNENTZGNDk1RUM0Q0M= urn:base64:TlJTZWN0b3JDYXJyaWVyOjYyQjFBOEM0OUVDMjE5QzJGMEYzRDU2RjQ5NUVDNENDOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RTFDM0U5NTk0NDk0MkY0QUQxODMxNzE5MjAzQTE2NzI= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NjJCMUE4QzQ5RUMyMTlDMkYwRjNENTZGNDk1RUM0Q0M= 45627D636D7A45357F6F23661BA77C85 E1C3E95944942F4AD1831719203A1672 1050570EBB1315E1AE7A9FD5E1400A00
-DC88BC70E9A8DC86D8315C794215E2AD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=17 1000 20 17 20 20 urn:base64:TlJDZWxsRFU6RDIxQ0RGNzA0NzYwRUU2NkNDNjdBQzhDNTU4NUM0RkM6VVNFUzpOUlNlY3RvckNhcnJpZXI6REM4OEJDNzBFOUE4REM4NkQ4MzE1Qzc5NDIxNUUyQUQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOkRDODhCQzcwRTlBOERDODZEODMxNUM3OTQyMTVFMkFEOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6OTI1MkUzQ0NBODhBRTU1OUJDQjFDODM4RkZEQTFDMjc= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6REM4OEJDNzBFOUE4REM4NkQ4MzE1Qzc5NDIxNUUyQUQ= D21CDF704760EE66CC67AC8C5585C4FC 9252E3CCA88AE559BCB1C838FFDA1C27 1050570EBB1315E1AE7A9FD5E1400A00
-5BDCDFC664C467684309134FD386F182 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=18 1000 20 18 20 20 urn:base64:TlJDZWxsRFU6ODIxOUNBOEM0NjQxMzc2QjA2RkU0MDY3RkVFOENEQjQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6NUJEQ0RGQzY2NEM0Njc2ODQzMDkxMzRGRDM4NkYxODI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjVCRENERkM2NjRDNDY3Njg0MzA5MTM0RkQzODZGMTgyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RjI4M0YxOUY0RjA4NDJFNzI0QkE3MkU5NzE4RUE1Q0I= urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NUJEQ0RGQzY2NEM0Njc2ODQzMDkxMzRGRDM4NkYxODI= 8219CA8C4641376B06FE4067FEE8CDB4 F283F19F4F0842E724BA72E9718EA5CB 1050570EBB1315E1AE7A9FD5E1400A00
-969DF432ED7F9A9E6607D475D11E6863 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=19 1000 20 19 20 20 urn:base64:TlJDZWxsRFU6NUIzQ0M4MUIzMjg0RDNGNjY1RjAzQTQ3NzQzOUZBOTg6VVNFUzpOUlNlY3RvckNhcnJpZXI6OTY5REY0MzJFRDdGOUE5RTY2MDdENDc1RDExRTY4NjM= urn:base64:TlJTZWN0b3JDYXJyaWVyOjk2OURGNDMyRUQ3RjlBOUU2NjA3RDQ3NUQxMUU2ODYzOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6Qjc0Qjg5Mjk1NEU5NzExMkRENEI0RTVBRjlEM0E0Rjc= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OTY5REY0MzJFRDdGOUE5RTY2MDdENDc1RDExRTY4NjM= 5B3CC81B3284D3F665F03A477439FA98 B74B892954E97112DD4B4E5AF9D3A4F7 B6A6DE7D0965F02D48ECA86706A4454F
-8242C20440EEE441ABA2DE3F143845DE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=20 1000 20 20 20 20 urn:base64:TlJDZWxsRFU6QzE5NDRBMjYyMDgxRjgyQTk4Q0YwNTBGRUU0MUI4RkY6VVNFUzpOUlNlY3RvckNhcnJpZXI6ODI0MkMyMDQ0MEVFRTQ0MUFCQTJERTNGMTQzODQ1REU= urn:base64:TlJTZWN0b3JDYXJyaWVyOjgyNDJDMjA0NDBFRUU0NDFBQkEyREUzRjE0Mzg0NURFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6ODdDQzRFN0Y3NDI5MkZFODUzNDBGMjgwQTMyRUVCMkQ= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6ODI0MkMyMDQ0MEVFRTQ0MUFCQTJERTNGMTQzODQ1REU= C1944A262081F82A98CF050FEE41B8FF 87CC4E7F74292FE85340F280A32EEB2D B6A6DE7D0965F02D48ECA86706A4454F
-725257083C17CB17DF38C4961FC55C54 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=21 1000 20 21 20 20 urn:base64:TlJDZWxsRFU6NEJBNzk5QzMzQ0RBQTJDOUYzODYwNjA2MzFFMkZEMkE6VVNFUzpOUlNlY3RvckNhcnJpZXI6NzI1MjU3MDgzQzE3Q0IxN0RGMzhDNDk2MUZDNTVDNTQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjcyNTI1NzA4M0MxN0NCMTdERjM4QzQ5NjFGQzU1QzU0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MDQyNzNGQzY0NDM2REE1MjM4NjVDRjg0OUU1RjdDQzk= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NzI1MjU3MDgzQzE3Q0IxN0RGMzhDNDk2MUZDNTVDNTQ= 4BA799C33CDAA2C9F386060631E2FD2A 04273FC64436DA523865CF849E5F7CC9 B6A6DE7D0965F02D48ECA86706A4454F
-92000BD14FF2FCAABF9F4565B22488A5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=22 1000 20 22 20 20 urn:base64:TlJDZWxsRFU6RjczQUFDRjJCQTQzMkI2ODdERkQ2MkM0N0M5REZGMUE6VVNFUzpOUlNlY3RvckNhcnJpZXI6OTIwMDBCRDE0RkYyRkNBQUJGOUY0NTY1QjIyNDg4QTU= urn:base64:TlJTZWN0b3JDYXJyaWVyOjkyMDAwQkQxNEZGMkZDQUFCRjlGNDU2NUIyMjQ4OEE1OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RDVCOTA5MEUzQjZBMTBEQkRDMjQzRUQxNEVGMjk0QkY= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OTIwMDBCRDE0RkYyRkNBQUJGOUY0NTY1QjIyNDg4QTU= F73AACF2BA432B687DFD62C47C9DFF1A D5B9090E3B6A10DBDC243ED14EF294BF B6A6DE7D0965F02D48ECA86706A4454F
-3A79CB3F5B4CCD179A08DC196CC2FC91 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=23 1000 20 23 20 20 urn:base64:TlJDZWxsRFU6NTFENDk5MjJDQTZDQ0QyQ0U0NTFEOTZCQTIyNDAxMUY6VVNFUzpOUlNlY3RvckNhcnJpZXI6M0E3OUNCM0Y1QjRDQ0QxNzlBMDhEQzE5NkNDMkZDOTE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjNBNzlDQjNGNUI0Q0NEMTc5QTA4REMxOTZDQzJGQzkxOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MDI0NDNERTA4MDdEODAxRDY2MTQ5NUQ5RUZCOEQ4MzY= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6M0E3OUNCM0Y1QjRDQ0QxNzlBMDhEQzE5NkNDMkZDOTE= 51D49922CA6CCD2CE451D96BA224011F 02443DE0807D801D661495D9EFB8D836 B6A6DE7D0965F02D48ECA86706A4454F
-0BFA280C5BA850500084E30B612A3753 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=24 1000 20 24 20 20 urn:base64:TlJDZWxsRFU6RDA0MkRFMkQzOEY4RkZFNzBENzM4NzAyMDIxNUIyNTQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6MEJGQTI4MEM1QkE4NTA1MDAwODRFMzBCNjEyQTM3NTM= urn:base64:TlJTZWN0b3JDYXJyaWVyOjBCRkEyODBDNUJBODUwNTAwMDg0RTMwQjYxMkEzNzUzOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzY4MjNEMkI3QUZBMDY0Q0U3NzQ3OTVFMDFENjIyOEI= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MEJGQTI4MEM1QkE4NTA1MDAwODRFMzBCNjEyQTM3NTM= D042DE2D38F8FFE70D7387020215B254 C6823D2B7AFA064CE774795E01D6228B B6A6DE7D0965F02D48ECA86706A4454F
-04186460C606475B2535287BC9CD5EDA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=25 1000 20 25 20 20 urn:base64:TlJDZWxsRFU6MTVFOTFDMzNCQTk5MzU0RURGMEE2NjdCNUNBRjgxQTU6VVNFUzpOUlNlY3RvckNhcnJpZXI6MDQxODY0NjBDNjA2NDc1QjI1MzUyODdCQzlDRDVFREE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjA0MTg2NDYwQzYwNjQ3NUIyNTM1Mjg3QkM5Q0Q1RURBOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6REYyNkFFNDQyMTEwREIwMjgxREFENDU0NTQzNkI3MjA= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MDQxODY0NjBDNjA2NDc1QjI1MzUyODdCQzlDRDVFREE= 15E91C33BA99354EDF0A667B5CAF81A5 DF26AE442110DB0281DAD4545436B720 B6A6DE7D0965F02D48ECA86706A4454F
-640837A9312B9168202E457BDA67E3AB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=26 1000 20 26 20 20 urn:base64:TlJDZWxsRFU6OUVEMDEwQjI5QkQ5NzM3OUI0NzM5QjZDMEYzMTg4NzQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6NjQwODM3QTkzMTJCOTE2ODIwMkU0NTdCREE2N0UzQUI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjY0MDgzN0E5MzEyQjkxNjgyMDJFNDU3QkRBNjdFM0FCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6N0ExQzZGRTkzNTEwMDhCM0Q1MzkxNjZEOTQyMjI3NjI= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NjQwODM3QTkzMTJCOTE2ODIwMkU0NTdCREE2N0UzQUI= 9ED010B29BD97379B4739B6C0F318874 7A1C6FE9351008B3D539166D94222762 B6A6DE7D0965F02D48ECA86706A4454F
-CC7F67B0939882240419A867FB75BD5B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=27 1000 20 27 20 20 urn:base64:TlJDZWxsRFU6NEQwRjVDQzM2MUYyMTg3REZCQTRFMjQzRjQ4OUVDMEU6VVNFUzpOUlNlY3RvckNhcnJpZXI6Q0M3RjY3QjA5Mzk4ODIyNDA0MTlBODY3RkI3NUJENUI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkNDN0Y2N0IwOTM5ODgyMjQwNDE5QTg2N0ZCNzVCRDVCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NzBBMUYxMjlFMTBFRTdEMzFERkUxRTFBQTZDNzQzN0Q= urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6Q0M3RjY3QjA5Mzk4ODIyNDA0MTlBODY3RkI3NUJENUI= 4D0F5CC361F2187DFBA4E243F489EC0E 70A1F129E10EE7D31DFE1E1AA6C7437D B6A6DE7D0965F02D48ECA86706A4454F
-9C1FC1BA3A08D95288448538CABB2FED SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=28 1000 20 28 20 20 urn:base64:TlJDZWxsRFU6MzZDMjUxRkIyM0E1NzBBNjdDNDk5RDI4Rjg3REE5NEY6VVNFUzpOUlNlY3RvckNhcnJpZXI6OUMxRkMxQkEzQTA4RDk1Mjg4NDQ4NTM4Q0FCQjJGRUQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjlDMUZDMUJBM0EwOEQ5NTI4ODQ0ODUzOENBQkIyRkVEOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6N0RFOTFDNzhGOERDRTQyOTJGMkYwQzNCMzRERUFDQUI= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OUMxRkMxQkEzQTA4RDk1Mjg4NDQ4NTM4Q0FCQjJGRUQ= 36C251FB23A570A67C499D28F87DA94F 7DE91C78F8DCE4292F2F0C3B34DEACAB E5FD5ACD55C553A92738477ECB0465B9
-1636D2C97404CC1951A26B242280992E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=29 1000 20 29 20 20 urn:base64:TlJDZWxsRFU6RUM3ODZBNzIxQTA2NEZBMjZCRTQwQkUxNzNGQjkyRTE6VVNFUzpOUlNlY3RvckNhcnJpZXI6MTYzNkQyQzk3NDA0Q0MxOTUxQTI2QjI0MjI4MDk5MkU= urn:base64:TlJTZWN0b3JDYXJyaWVyOjE2MzZEMkM5NzQwNENDMTk1MUEyNkIyNDIyODA5OTJFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MTQ1QTFCRjU2MURCMjk3RjI1RkQzRjEyNDE3RDJBNTA= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MTYzNkQyQzk3NDA0Q0MxOTUxQTI2QjI0MjI4MDk5MkU= EC786A721A064FA26BE40BE173FB92E1 145A1BF561DB297F25FD3F12417D2A50 E5FD5ACD55C553A92738477ECB0465B9
-E2BE0197590AA8391179A2A78F8B7B3E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=30 1000 20 30 20 20 urn:base64:TlJDZWxsRFU6Q0M2RUQ2REZENDJBRUJERThBMUY4MDVEMzA3NjIyQTk6VVNFUzpOUlNlY3RvckNhcnJpZXI6RTJCRTAxOTc1OTBBQTgzOTExNzlBMkE3OEY4QjdCM0U= urn:base64:TlJTZWN0b3JDYXJyaWVyOkUyQkUwMTk3NTkwQUE4MzkxMTc5QTJBNzhGOEI3QjNFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6OTE4OEQ5NzVEODM3QTFFMDM5NzE2N0EyM0U3MjFCMEM= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RTJCRTAxOTc1OTBBQTgzOTExNzlBMkE3OEY4QjdCM0U= CC6ED6DFD42AEBDE8A1F805D307622A9 9188D975D837A1E0397167A23E721B0C E5FD5ACD55C553A92738477ECB0465B9
-8BB9FC8DC8AF2821CF0AFF8E31520862 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=31 1000 20 31 20 20 urn:base64:TlJDZWxsRFU6QzM1RjRBNDZFREU5NUQxQkM1NzkxOUMxQUJBMEExNTA6VVNFUzpOUlNlY3RvckNhcnJpZXI6OEJCOUZDOERDOEFGMjgyMUNGMEFGRjhFMzE1MjA4NjI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjhCQjlGQzhEQzhBRjI4MjFDRjBBRkY4RTMxNTIwODYyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RDMxNERBREFGQTNEODk2NDQ1RTc4RUJDQzE1QTE2Rjc= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OEJCOUZDOERDOEFGMjgyMUNGMEFGRjhFMzE1MjA4NjI= C35F4A46EDE95D1BC57919C1ABA0A150 D314DADAFA3D896445E78EBCC15A16F7 E5FD5ACD55C553A92738477ECB0465B9
-C0FE68D810F57154B913E056BC1B4305 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=32 1000 20 32 20 20 urn:base64:TlJDZWxsRFU6QkM2MjQwNDM5MkQ5NjhBRUVBRkEyOTBCNkUwMjk1OTY6VVNFUzpOUlNlY3RvckNhcnJpZXI6QzBGRTY4RDgxMEY1NzE1NEI5MTNFMDU2QkMxQjQzMDU= urn:base64:TlJTZWN0b3JDYXJyaWVyOkMwRkU2OEQ4MTBGNTcxNTRCOTEzRTA1NkJDMUI0MzA1OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MjhBRDNFRTg0NDc2NkRGNTA4RjYyODdDRDFDRTE4QTQ= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QzBGRTY4RDgxMEY1NzE1NEI5MTNFMDU2QkMxQjQzMDU= BC62404392D968AEEAFA290B6E029596 28AD3EE844766DF508F6287CD1CE18A4 E5FD5ACD55C553A92738477ECB0465B9
-2548E12457EDEFCD4119460CFD302977 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=33 1000 20 33 20 20 urn:base64:TlJDZWxsRFU6NTQ5QUU5NEE1RThCNzRDRDc0NUFFRjU2NDhCOEM1MjQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6MjU0OEUxMjQ1N0VERUZDRDQxMTk0NjBDRkQzMDI5Nzc= urn:base64:TlJTZWN0b3JDYXJyaWVyOjI1NDhFMTI0NTdFREVGQ0Q0MTE5NDYwQ0ZEMzAyOTc3OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzM5OEQ2QzY3MzI2N0EwODFDNzgxRDg0NDM4RjRCNzQ= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MjU0OEUxMjQ1N0VERUZDRDQxMTk0NjBDRkQzMDI5Nzc= 549AE94A5E8B74CD745AEF5648B8C524 C398D6C673267A081C781D84438F4B74 E5FD5ACD55C553A92738477ECB0465B9
-6DF1BB3C1B04A2AFF8FCFAE6B9E6C059 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=34 1000 20 34 20 20 urn:base64:TlJDZWxsRFU6MTQ4RUI5MkQ4ODAyRTk1M0ZGMjZDRkQxNzRCNkQ4MDQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6NkRGMUJCM0MxQjA0QTJBRkY4RkNGQUU2QjlFNkMwNTk= urn:base64:TlJTZWN0b3JDYXJyaWVyOjZERjFCQjNDMUIwNEEyQUZGOEZDRkFFNkI5RTZDMDU5OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MEJEQUQ1RERDMTlBNjk2MjQ0NTM2NDIxRTZEMjZGRTM= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NkRGMUJCM0MxQjA0QTJBRkY4RkNGQUU2QjlFNkMwNTk= 148EB92D8802E953FF26CFD174B6D804 0BDAD5DDC19A696244536421E6D26FE3 E5FD5ACD55C553A92738477ECB0465B9
-49C7F3D0A74534A1DD284353BA721340 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=35 1000 20 35 20 20 urn:base64:TlJDZWxsRFU6NEIxRUU3M0VCRDQ2ODAxNTgyQjJGRkE1MjEzMDUyNEY6VVNFUzpOUlNlY3RvckNhcnJpZXI6NDlDN0YzRDBBNzQ1MzRBMUREMjg0MzUzQkE3MjEzNDA= urn:base64:TlJTZWN0b3JDYXJyaWVyOjQ5QzdGM0QwQTc0NTM0QTFERDI4NDM1M0JBNzIxMzQwOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NDkyMDU4ODFDOTEyMUYyMDhCRDc5MTQ5RkE3OTk4Nzc= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NDlDN0YzRDBBNzQ1MzRBMUREMjg0MzUzQkE3MjEzNDA= 4B1EE73EBD46801582B2FFA52130524F 49205881C9121F208BD79149FA799877 E5FD5ACD55C553A92738477ECB0465B9
-AA66002C42C823375606A6793855D3FC SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=36 1000 20 36 20 20 urn:base64:TlJDZWxsRFU6NzQ2N0NFRjJBQzA4MDhGMzU5NTQ0NEM3RDMxQTE3MTA6VVNFUzpOUlNlY3RvckNhcnJpZXI6QUE2NjAwMkM0MkM4MjMzNzU2MDZBNjc5Mzg1NUQzRkM= urn:base64:TlJTZWN0b3JDYXJyaWVyOkFBNjYwMDJDNDJDODIzMzc1NjA2QTY3OTM4NTVEM0ZDOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QTMyREI5RTI3OEZDMURFNDFGQjRBM0I1MEY4MDI2NTA= urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QUE2NjAwMkM0MkM4MjMzNzU2MDZBNjc5Mzg1NUQzRkM= 7467CEF2AC0808F3595444C7D31A1710 A32DB9E278FC1DE41FB4A3B50F802650 E5FD5ACD55C553A92738477ECB0465B9
-1C8C22D9065F1139C7CCA45EEF8C61EF SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=37 1000 20 37 20 20 urn:base64:TlJDZWxsRFU6NDlDODY4MzA1OUYzOEY3QjY4MUZGMjczMDU4NUY5QTY6VVNFUzpOUlNlY3RvckNhcnJpZXI6MUM4QzIyRDkwNjVGMTEzOUM3Q0NBNDVFRUY4QzYxRUY= urn:base64:TlJTZWN0b3JDYXJyaWVyOjFDOEMyMkQ5MDY1RjExMzlDN0NDQTQ1RUVGOEM2MUVGOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QkRFMzgxQkFDQzY3MjkwRTQ0N0JDMDE3N0UwMzhBRUI= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MUM4QzIyRDkwNjVGMTEzOUM3Q0NBNDVFRUY4QzYxRUY= 49C8683059F38F7B681FF2730585F9A6 BDE381BACC67290E447BC0177E038AEB 25E690E22BDA90B9C4FEE1F083CBA597
-D266E324A64EC29530E026DD07A50720 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=38 1000 20 38 20 20 urn:base64:TlJDZWxsRFU6RDNBMEZEREMyMkUxMjlDMkVCN0IwQTVFNzgwOENCN0U6VVNFUzpOUlNlY3RvckNhcnJpZXI6RDI2NkUzMjRBNjRFQzI5NTMwRTAyNkREMDdBNTA3MjA= urn:base64:TlJTZWN0b3JDYXJyaWVyOkQyNjZFMzI0QTY0RUMyOTUzMEUwMjZERDA3QTUwNzIwOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QjRCQzREMUIxM0VCNjUxNjkwRjMxOTVFNjIyQ0M0QkQ= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RDI2NkUzMjRBNjRFQzI5NTMwRTAyNkREMDdBNTA3MjA= D3A0FDDC22E129C2EB7B0A5E7808CB7E B4BC4D1B13EB651690F3195E622CC4BD 25E690E22BDA90B9C4FEE1F083CBA597
-875DAAED20D2AC563357371DFFCDC86D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=39 1000 20 39 20 20 urn:base64:TlJDZWxsRFU6RUFERkQyRkYzQjI0QkJBMTUxMDNGMzEyNkM0RTI5NUQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6ODc1REFBRUQyMEQyQUM1NjMzNTczNzFERkZDREM4NkQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjg3NURBQUVEMjBEMkFDNTYzMzU3MzcxREZGQ0RDODZEOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MzJFRTM4NUVBQ0QyNkEwMDQ2QkFENUNDODQ5MDVFQ0I= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6ODc1REFBRUQyMEQyQUM1NjMzNTczNzFERkZDREM4NkQ= EADFD2FF3B24BBA15103F3126C4E295D 32EE385EACD26A0046BAD5CC84905ECB 25E690E22BDA90B9C4FEE1F083CBA597
-E073BB0603BCA819D7537384AB62B902 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=40 1000 20 40 20 20 urn:base64:TlJDZWxsRFU6NzJENDI3RjVBRkU3RTBBQjY1OTEyOEI0MjMxMzE5QjQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6RTA3M0JCMDYwM0JDQTgxOUQ3NTM3Mzg0QUI2MkI5MDI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkUwNzNCQjA2MDNCQ0E4MTlENzUzNzM4NEFCNjJCOTAyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NDNCNjMxMDZCMjdGQjA1QzYxODQwMEVFNUFFOTE2Mzc= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RTA3M0JCMDYwM0JDQTgxOUQ3NTM3Mzg0QUI2MkI5MDI= 72D427F5AFE7E0AB659128B4231319B4 43B63106B27FB05C618400EE5AE91637 25E690E22BDA90B9C4FEE1F083CBA597
-F0C1F478850C438AE4A55B916706D319 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=41 1000 20 41 20 20 urn:base64:TlJDZWxsRFU6REUzNDlBMjhGRkI4QkVDQzM5NTc5NzcyNzM1NjIxMzA6VVNFUzpOUlNlY3RvckNhcnJpZXI6RjBDMUY0Nzg4NTBDNDM4QUU0QTU1QjkxNjcwNkQzMTk= urn:base64:TlJTZWN0b3JDYXJyaWVyOkYwQzFGNDc4ODUwQzQzOEFFNEE1NUI5MTY3MDZEMzE5OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzgxM0UxODY1N0MyQzU4MzdBM0YyMzdCQUQ1NTc5NDQ= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RjBDMUY0Nzg4NTBDNDM4QUU0QTU1QjkxNjcwNkQzMTk= DE349A28FFB8BECC3957977273562130 C813E18657C2C5837A3F237BAD557944 25E690E22BDA90B9C4FEE1F083CBA597
-6459BBB9E31E42DD1BA64F183EE6D4D1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=42 1000 20 42 20 20 urn:base64:TlJDZWxsRFU6OUE4NTU1OUZEMTBERTE5RTM5QTgzMDM5QzBBRjEyQ0Q6VVNFUzpOUlNlY3RvckNhcnJpZXI6NjQ1OUJCQjlFMzFFNDJERDFCQTY0RjE4M0VFNkQ0RDE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjY0NTlCQkI5RTMxRTQyREQxQkE2NEYxODNFRTZENEQxOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NDYyRENDREVBNUEyODkyQjhDODYzMDcyNDY3OUI2NzY= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NjQ1OUJCQjlFMzFFNDJERDFCQTY0RjE4M0VFNkQ0RDE= 9A85559FD10DE19E39A83039C0AF12CD 462DCCDEA5A2892B8C8630724679B676 25E690E22BDA90B9C4FEE1F083CBA597
-B0A6F73C534723853CBDF21B0CFA2642 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=43 1000 20 43 20 20 urn:base64:TlJDZWxsRFU6NDc2NjgxNDM3RDY4MEQ5MENGM0I3OEU3MTE0RjdGMjE6VVNFUzpOUlNlY3RvckNhcnJpZXI6QjBBNkY3M0M1MzQ3MjM4NTNDQkRGMjFCMENGQTI2NDI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkIwQTZGNzNDNTM0NzIzODUzQ0JERjIxQjBDRkEyNjQyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RjZEMEZGMjA2OUYwMzhGRjY0RDA3MkM4MThERDlCRkQ= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QjBBNkY3M0M1MzQ3MjM4NTNDQkRGMjFCMENGQTI2NDI= 476681437D680D90CF3B78E7114F7F21 F6D0FF2069F038FF64D072C818DD9BFD 25E690E22BDA90B9C4FEE1F083CBA597
-BCC9DC05304B61096FEDEB9C0FCDBF32 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=44 1000 20 44 20 20 urn:base64:TlJDZWxsRFU6MUVGMzU2RTIzQTAwNjlENkE5N0FEODlFMEQ2QzA1Rjk6VVNFUzpOUlNlY3RvckNhcnJpZXI6QkNDOURDMDUzMDRCNjEwOTZGRURFQjlDMEZDREJGMzI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkJDQzlEQzA1MzA0QjYxMDk2RkVERUI5QzBGQ0RCRjMyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzVDNTk4NTExQzc1MTQwNjFFODZEQTI0RjhEQjM1OUQ= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QkNDOURDMDUzMDRCNjEwOTZGRURFQjlDMEZDREJGMzI= 1EF356E23A0069D6A97AD89E0D6C05F9 C5C598511C7514061E86DA24F8DB359D 25E690E22BDA90B9C4FEE1F083CBA597
-85207C734C32180D07026CD931FDB7F6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=45 1000 20 45 20 20 urn:base64:TlJDZWxsRFU6NjA3ODZERDVCODlGNDA1Q0EzRjg0M0U1REQyRUFDQTY6VVNFUzpOUlNlY3RvckNhcnJpZXI6ODUyMDdDNzM0QzMyMTgwRDA3MDI2Q0Q5MzFGREI3RjY= urn:base64:TlJTZWN0b3JDYXJyaWVyOjg1MjA3QzczNEMzMjE4MEQwNzAyNkNEOTMxRkRCN0Y2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MTM4NzZGRUNFRURGNDVBRTREQ0E4QzM5M0U0NzgyMzc= urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6ODUyMDdDNzM0QzMyMTgwRDA3MDI2Q0Q5MzFGREI3RjY= 60786DD5B89F405CA3F843E5DD2EACA6 13876FECEEDF45AE4DCA8C393E478237 25E690E22BDA90B9C4FEE1F083CBA597
-038A46775C277265E4EACF0E7790F7B4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=46 1000 20 46 20 20 urn:base64:TlJDZWxsRFU6RjBGNEU3MzM1RTE1NTQwRjI3ODQ2NjVEMUE0OUFBNkI6VVNFUzpOUlNlY3RvckNhcnJpZXI6MDM4QTQ2Nzc1QzI3NzI2NUU0RUFDRjBFNzc5MEY3QjQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjAzOEE0Njc3NUMyNzcyNjVFNEVBQ0YwRTc3OTBGN0I0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MDA4MzM5MDM4OTFEMDdEMDYyOEUwM0ZGNDQ2M0ExNEE= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MDM4QTQ2Nzc1QzI3NzI2NUU0RUFDRjBFNzc5MEY3QjQ= F0F4E7335E15540F2784665D1A49AA6B 00833903891D07D0628E03FF4463A14A 5A3085C3400C3096E2ED2321452766B1
-C28615FC40FD89A29BC257C53846EC1B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=47 1000 20 47 20 20 urn:base64:TlJDZWxsRFU6NThEOTlDNkNBRDBFMDI3NjMyQzVDQzJGQTVDMzhEQjQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6QzI4NjE1RkM0MEZEODlBMjlCQzI1N0M1Mzg0NkVDMUI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkMyODYxNUZDNDBGRDg5QTI5QkMyNTdDNTM4NDZFQzFCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzRBMjgzRUVGRDVGMTQ2M0I3RUUwQ0E3ODI0MDlERkI= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QzI4NjE1RkM0MEZEODlBMjlCQzI1N0M1Mzg0NkVDMUI= 58D99C6CAD0E027632C5CC2FA5C38DB4 C4A283EEFD5F1463B7EE0CA782409DFB 5A3085C3400C3096E2ED2321452766B1
-BF3233CB2F106EC2E4C25BDCFB30D7EE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=48 1000 20 48 20 20 urn:base64:TlJDZWxsRFU6RUNFQzY2NDY0MTk5NDcwNENFNkE0MjIyQUEzMEVFNzg6VVNFUzpOUlNlY3RvckNhcnJpZXI6QkYzMjMzQ0IyRjEwNkVDMkU0QzI1QkRDRkIzMEQ3RUU= urn:base64:TlJTZWN0b3JDYXJyaWVyOkJGMzIzM0NCMkYxMDZFQzJFNEMyNUJEQ0ZCMzBEN0VFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QUZGRUFGMUQwRjJEMzA1MjRDNDlCQTg2RDUyRjM5RUU= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QkYzMjMzQ0IyRjEwNkVDMkU0QzI1QkRDRkIzMEQ3RUU= ECEC664641994704CE6A4222AA30EE78 AFFEAF1D0F2D30524C49BA86D52F39EE 5A3085C3400C3096E2ED2321452766B1
-22361310BFA331208A86E1F995A14DA8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=49 1000 20 49 20 20 urn:base64:TlJDZWxsRFU6NjFDOUEzQjVFMjQ0MjRGM0MyMUU3RTcwMkY4MUNDOTI6VVNFUzpOUlNlY3RvckNhcnJpZXI6MjIzNjEzMTBCRkEzMzEyMDhBODZFMUY5OTVBMTREQTg= urn:base64:TlJTZWN0b3JDYXJyaWVyOjIyMzYxMzEwQkZBMzMxMjA4QTg2RTFGOTk1QTE0REE4OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RTJBMTNDRjU2QzBFMTg3QzYyRkY5NzE2QkIwRkNFRDY= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MjIzNjEzMTBCRkEzMzEyMDhBODZFMUY5OTVBMTREQTg= 61C9A3B5E24424F3C21E7E702F81CC92 E2A13CF56C0E187C62FF9716BB0FCED6 5A3085C3400C3096E2ED2321452766B1
-93F359E5525EC94925936A3E372E7D9B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=50 1000 20 50 20 20 urn:base64:TlJDZWxsRFU6MzQwRjE3MDA3MUQ3OEFDQTNGNEU1M0FDRUUxRjJGNDk6VVNFUzpOUlNlY3RvckNhcnJpZXI6OTNGMzU5RTU1MjVFQzk0OTI1OTM2QTNFMzcyRTdEOUI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjkzRjM1OUU1NTI1RUM5NDkyNTkzNkEzRTM3MkU3RDlCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RTNFMUZCMzFGQjVGNEZCMUNBODA4MDM2NDc0QkREOTU= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OTNGMzU5RTU1MjVFQzk0OTI1OTM2QTNFMzcyRTdEOUI= 340F170071D78ACA3F4E53ACEE1F2F49 E3E1FB31FB5F4FB1CA808036474BDD95 5A3085C3400C3096E2ED2321452766B1
-95C1DFA87C196F8C4DD47D0F3EFF53CA SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=51 1000 20 51 20 20 urn:base64:TlJDZWxsRFU6MzI1MjE5NTNBQTI1NTVCQ0NGNjcxRkM2NTQ0RjQ1OEE6VVNFUzpOUlNlY3RvckNhcnJpZXI6OTVDMURGQTg3QzE5NkY4QzRERDQ3RDBGM0VGRjUzQ0E= urn:base64:TlJTZWN0b3JDYXJyaWVyOjk1QzFERkE4N0MxOTZGOEM0REQ0N0QwRjNFRkY1M0NBOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NTc2OUMwMjZENzk5M0M2NjZDNDU1MzVFREQ4QzNFQUQ= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OTVDMURGQTg3QzE5NkY4QzRERDQ3RDBGM0VGRjUzQ0E= 32521953AA2555BCCF671FC6544F458A 5769C026D7993C666C45535EDD8C3EAD 5A3085C3400C3096E2ED2321452766B1
-3FF49FD0BB880CA73E8C9116E3B61EE6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=52 1000 20 52 20 20 urn:base64:TlJDZWxsRFU6N0Q2QTREMDU4QjRENzdEQTM5RkNEQzJGQzlBMUI3OEE6VVNFUzpOUlNlY3RvckNhcnJpZXI6M0ZGNDlGRDBCQjg4MENBNzNFOEM5MTE2RTNCNjFFRTY= urn:base64:TlJTZWN0b3JDYXJyaWVyOjNGRjQ5RkQwQkI4ODBDQTczRThDOTExNkUzQjYxRUU2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MkEzMjQ3NUVGNEY0QUI0MTkwNEI1QUFBQThGRjJDQTE= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6M0ZGNDlGRDBCQjg4MENBNzNFOEM5MTE2RTNCNjFFRTY= 7D6A4D058B4D77DA39FCDC2FC9A1B78A 2A32475EF4F4AB41904B5AAAA8FF2CA1 5A3085C3400C3096E2ED2321452766B1
-762BE1E7378F160158F6FF5D7052BAB4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=53 1000 20 53 20 20 urn:base64:TlJDZWxsRFU6MjdGNzU3N0JDRjA4Q0UzQjRGMUE0MDExRkNFRTY5M0M6VVNFUzpOUlNlY3RvckNhcnJpZXI6NzYyQkUxRTczNzhGMTYwMTU4RjZGRjVENzA1MkJBQjQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjc2MkJFMUU3Mzc4RjE2MDE1OEY2RkY1RDcwNTJCQUI0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RUIxMzAxQkEyMkUwNjkxMTE0QTIzNDQ1MzIzQjY0OUI= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NzYyQkUxRTczNzhGMTYwMTU4RjZGRjVENzA1MkJBQjQ= 27F7577BCF08CE3B4F1A4011FCEE693C EB1301BA22E0691114A23445323B649B 5A3085C3400C3096E2ED2321452766B1
-60B08A9ECA8793B724689C58B535A512 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=54 1000 20 54 20 20 urn:base64:TlJDZWxsRFU6MDMyN0M3RjJCRkIzODZCOUM5MUM4RjkzQzcwRjRCMEY6VVNFUzpOUlNlY3RvckNhcnJpZXI6NjBCMDhBOUVDQTg3OTNCNzI0Njg5QzU4QjUzNUE1MTI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjYwQjA4QTlFQ0E4NzkzQjcyNDY4OUM1OEI1MzVBNTEyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6Mjg1QTc1OTBDRUMwQkM0NkYwQzFBOEEzRDFBQTJCQTU= urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NjBCMDhBOUVDQTg3OTNCNzI0Njg5QzU4QjUzNUE1MTI= 0327C7F2BFB386B9C91C8F93C70F4B0F 285A7590CEC0BC46F0C1A8A3D1AA2BA5 5A3085C3400C3096E2ED2321452766B1
-9EBF76D73DA1DBD1A03B2767260AFB68 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=55 1000 20 55 20 20 urn:base64:TlJDZWxsRFU6NDI3OUE4NUE3NkNCQjI1NkUwRTRDMkJCQ0I3OEZCQ0I6VVNFUzpOUlNlY3RvckNhcnJpZXI6OUVCRjc2RDczREExREJEMUEwM0IyNzY3MjYwQUZCNjg= urn:base64:TlJTZWN0b3JDYXJyaWVyOjlFQkY3NkQ3M0RBMURCRDFBMDNCMjc2NzI2MEFGQjY4OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzYwNkFGMUExQUM1QTk2QTQzQjBCOEVCRkMxQjA0N0M= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OUVCRjc2RDczREExREJEMUEwM0IyNzY3MjYwQUZCNjg= 4279A85A76CBB256E0E4C2BBCB78FBCB C606AF1A1AC5A96A43B0B8EBFC1B047C 7F16F93D8816D9EBC76E52BB44A3CFF5
-C8642E19317492BB0B99A217414605BE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=56 1000 20 56 20 20 urn:base64:TlJDZWxsRFU6MjJDQzJGNzdCQzBEMTc1OEU0QUM5MEQwODQ0RUIwRkE6VVNFUzpOUlNlY3RvckNhcnJpZXI6Qzg2NDJFMTkzMTc0OTJCQjBCOTlBMjE3NDE0NjA1QkU= urn:base64:TlJTZWN0b3JDYXJyaWVyOkM4NjQyRTE5MzE3NDkyQkIwQjk5QTIxNzQxNDYwNUJFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NDBGQjU0ODE0MDJEQ0U4QUQ2QjNCMDM1N0IwMENGODI= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6Qzg2NDJFMTkzMTc0OTJCQjBCOTlBMjE3NDE0NjA1QkU= 22CC2F77BC0D1758E4AC90D0844EB0FA 40FB5481402DCE8AD6B3B0357B00CF82 7F16F93D8816D9EBC76E52BB44A3CFF5
-002FF41FF01735718EFB3F7171B39D81 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=57 1000 20 57 20 20 urn:base64:TlJDZWxsRFU6RUJBRTk2QzQwMjc0MkI0QkNCQTA2MDhBREMyMzI1MUE6VVNFUzpOUlNlY3RvckNhcnJpZXI6MDAyRkY0MUZGMDE3MzU3MThFRkIzRjcxNzFCMzlEODE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjAwMkZGNDFGRjAxNzM1NzE4RUZCM0Y3MTcxQjM5RDgxOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RkQ4RjNERThCOEFGMkZEMTAyRjM5RDBFRDg5QjM3MTQ= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MDAyRkY0MUZGMDE3MzU3MThFRkIzRjcxNzFCMzlEODE= EBAE96C402742B4BCBA0608ADC23251A FD8F3DE8B8AF2FD102F39D0ED89B3714 7F16F93D8816D9EBC76E52BB44A3CFF5
-CB9E427C06705864073AA7D78A7A3B02 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=58 1000 20 58 20 20 urn:base64:TlJDZWxsRFU6QjA0RUQ0MDU0RkYxMjRFNDYwODFDRTU5NjhCMTdDQjk6VVNFUzpOUlNlY3RvckNhcnJpZXI6Q0I5RTQyN0MwNjcwNTg2NDA3M0FBN0Q3OEE3QTNCMDI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkNCOUU0MjdDMDY3MDU4NjQwNzNBQTdENzhBN0EzQjAyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NUNFQTI0NzBEOTlBOEEyQkIzRUQ5MEJDMTVEQjExNDA= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6Q0I5RTQyN0MwNjcwNTg2NDA3M0FBN0Q3OEE3QTNCMDI= B04ED4054FF124E46081CE5968B17CB9 5CEA2470D99A8A2BB3ED90BC15DB1140 7F16F93D8816D9EBC76E52BB44A3CFF5
-60EA4CECF73A4A866DDD77235AA9D79C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=59 1000 20 59 20 20 urn:base64:TlJDZWxsRFU6OEVDMjE3RDIyOEJBOTE3NUEyRTczMzU4NjY1QjVEM0U6VVNFUzpOUlNlY3RvckNhcnJpZXI6NjBFQTRDRUNGNzNBNEE4NjZEREQ3NzIzNUFBOUQ3OUM= urn:base64:TlJTZWN0b3JDYXJyaWVyOjYwRUE0Q0VDRjczQTRBODY2RERENzcyMzVBQTlENzlDOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NkEyM0E4QjhCNUFDRUE3NzVENkU5OEJBQzE1MzQzNzM= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NjBFQTRDRUNGNzNBNEE4NjZEREQ3NzIzNUFBOUQ3OUM= 8EC217D228BA9175A2E73358665B5D3E 6A23A8B8B5ACEA775D6E98BAC1534373 7F16F93D8816D9EBC76E52BB44A3CFF5
-D79B52CD8D1C0534158B2DF8C68D25D4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=60 1000 20 60 20 20 urn:base64:TlJDZWxsRFU6N0M5NzA3QjFFQUQzMTY4N0Q1NkRGQTA4QTc2NTYzODY6VVNFUzpOUlNlY3RvckNhcnJpZXI6RDc5QjUyQ0Q4RDFDMDUzNDE1OEIyREY4QzY4RDI1RDQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOkQ3OUI1MkNEOEQxQzA1MzQxNThCMkRGOEM2OEQyNUQ0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MUQyNzNGREQ0NTYxOENCRDQzOEQwMDgzODczMzE0RDU= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RDc5QjUyQ0Q4RDFDMDUzNDE1OEIyREY4QzY4RDI1RDQ= 7C9707B1EAD31687D56DFA08A7656386 1D273FDD45618CBD438D0083873314D5 7F16F93D8816D9EBC76E52BB44A3CFF5
-9504ECC61014E4CC3B7D59B2419EC7F5 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=61 1000 20 61 20 20 urn:base64:TlJDZWxsRFU6MDIzRkM0NUFGNTQwQUZDQTMyMDVEODQ2RDA3QzA0OEI6VVNFUzpOUlNlY3RvckNhcnJpZXI6OTUwNEVDQzYxMDE0RTRDQzNCN0Q1OUIyNDE5RUM3RjU= urn:base64:TlJTZWN0b3JDYXJyaWVyOjk1MDRFQ0M2MTAxNEU0Q0MzQjdENTlCMjQxOUVDN0Y1OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RTA3Rjc2RUVGQTNGNkQxQTUwODNDOTlGM0QyMDJDQ0Q= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OTUwNEVDQzYxMDE0RTRDQzNCN0Q1OUIyNDE5RUM3RjU= 023FC45AF540AFCA3205D846D07C048B E07F76EEFA3F6D1A5083C99F3D202CCD 7F16F93D8816D9EBC76E52BB44A3CFF5
-C118C7F37F4D6DD5269518496F58278B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=62 1000 20 62 20 20 urn:base64:TlJDZWxsRFU6QjQ2NTU4RURCMUNCMjcxODZCRTMxRDNGQTU0ODU2RjA6VVNFUzpOUlNlY3RvckNhcnJpZXI6QzExOEM3RjM3RjRENkRENTI2OTUxODQ5NkY1ODI3OEI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkMxMThDN0YzN0Y0RDZERDUyNjk1MTg0OTZGNTgyNzhCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MTczMzg4Nzg1Q0I0NzYxQjE1NEY0NDhBRTYzNzJBREM= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QzExOEM3RjM3RjRENkRENTI2OTUxODQ5NkY1ODI3OEI= B46558EDB1CB27186BE31D3FA54856F0 173388785CB4761B154F448AE6372ADC 7F16F93D8816D9EBC76E52BB44A3CFF5
-F50176FD7602FBD61BB1783C39F32337 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=63 1000 20 63 20 20 urn:base64:TlJDZWxsRFU6QzVDRDQyRUY2MDhDQjkzRjRBRUYwRTQ3MzI5REY0MTc6VVNFUzpOUlNlY3RvckNhcnJpZXI6RjUwMTc2RkQ3NjAyRkJENjFCQjE3ODNDMzlGMzIzMzc= urn:base64:TlJTZWN0b3JDYXJyaWVyOkY1MDE3NkZENzYwMkZCRDYxQkIxNzgzQzM5RjMyMzM3OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QUExN0NFMTUwNENENDUxMjEyMTI2N0MyMjAzNDYyMEE= urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RjUwMTc2RkQ3NjAyRkJENjFCQjE3ODNDMzlGMzIzMzc= C5CD42EF608CB93F4AEF0E47329DF417 AA17CE1504CD4512121267C22034620A 7F16F93D8816D9EBC76E52BB44A3CFF5
-5A4EEB021CBB4A07BBE87E795CF81B7A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=64 1000 20 64 20 20 urn:base64:TlJDZWxsRFU6REE0OTJEQTE1NTlGQzc1OTVEMDdERkY1M0FERDM4QUQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6NUE0RUVCMDIxQ0JCNEEwN0JCRTg3RTc5NUNGODFCN0E= urn:base64:TlJTZWN0b3JDYXJyaWVyOjVBNEVFQjAyMUNCQjRBMDdCQkU4N0U3OTVDRjgxQjdBOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NTQyRDU2MkU3MkM4MDI1REQ1NjBENzE4RkZERTFENDU= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NUE0RUVCMDIxQ0JCNEEwN0JCRTg3RTc5NUNGODFCN0E= DA492DA1559FC7595D07DFF53ADD38AD 542D562E72C8025DD560D718FFDE1D45 5A548EA9D166341776CA0695837E55D8
-E27E9E45BDB39E54A28C868A0A5ACD09 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=65 1000 20 65 20 20 urn:base64:TlJDZWxsRFU6OEU3OTRDM0UxRUVFNkVGOEI2OUMyNjhFMDY1NTNDOTE6VVNFUzpOUlNlY3RvckNhcnJpZXI6RTI3RTlFNDVCREIzOUU1NEEyOEM4NjhBMEE1QUNEMDk= urn:base64:TlJTZWN0b3JDYXJyaWVyOkUyN0U5RTQ1QkRCMzlFNTRBMjhDODY4QTBBNUFDRDA5OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RTNDOTZCQTVEN0MwNzU1QTMwMTFEMTJBMzI5NzFCQTE= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RTI3RTlFNDVCREIzOUU1NEEyOEM4NjhBMEE1QUNEMDk= 8E794C3E1EEE6EF8B69C268E06553C91 E3C96BA5D7C0755A3011D12A32971BA1 5A548EA9D166341776CA0695837E55D8
-115E21696AADCAA2F2B2E30861861796 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=66 1000 20 66 20 20 urn:base64:TlJDZWxsRFU6QzJFMEI5MTEzQ0VBQzkxREY1RTE4MkI0MzFENTY3ODg6VVNFUzpOUlNlY3RvckNhcnJpZXI6MTE1RTIxNjk2QUFEQ0FBMkYyQjJFMzA4NjE4NjE3OTY= urn:base64:TlJTZWN0b3JDYXJyaWVyOjExNUUyMTY5NkFBRENBQTJGMkIyRTMwODYxODYxNzk2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QjRDMzMzRUNEOTJBNzM1MUEzOEVFM0JDNTEwQjVEQTc= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MTE1RTIxNjk2QUFEQ0FBMkYyQjJFMzA4NjE4NjE3OTY= C2E0B9113CEAC91DF5E182B431D56788 B4C333ECD92A7351A38EE3BC510B5DA7 5A548EA9D166341776CA0695837E55D8
-8D48BFDE1001B30AE5DBD567A0977E28 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=67 1000 20 67 20 20 urn:base64:TlJDZWxsRFU6OEVCN0JBQ0IwODVGMUFBQzAyRTE4RUJBNjk0QUQ5RDk6VVNFUzpOUlNlY3RvckNhcnJpZXI6OEQ0OEJGREUxMDAxQjMwQUU1REJENTY3QTA5NzdFMjg= urn:base64:TlJTZWN0b3JDYXJyaWVyOjhENDhCRkRFMTAwMUIzMEFFNURCRDU2N0EwOTc3RTI4OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NkY3NTExNkJCMjg5RUNEOEVCMUE5NjI1MkZEOEY3QzA= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OEQ0OEJGREUxMDAxQjMwQUU1REJENTY3QTA5NzdFMjg= 8EB7BACB085F1AAC02E18EBA694AD9D9 6F75116BB289ECD8EB1A96252FD8F7C0 5A548EA9D166341776CA0695837E55D8
-1C1B57F8771B4B4ABA9BB6AE99D3432A SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=68 1000 20 68 20 20 urn:base64:TlJDZWxsRFU6RUNGMEM3QzdCREZGRTM5QjMyNjM3QzM5OTI0REExNDc6VVNFUzpOUlNlY3RvckNhcnJpZXI6MUMxQjU3Rjg3NzFCNEI0QUJBOUJCNkFFOTlEMzQzMkE= urn:base64:TlJTZWN0b3JDYXJyaWVyOjFDMUI1N0Y4NzcxQjRCNEFCQTlCQjZBRTk5RDM0MzJBOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MTZCODcwNTExRkFBRjExODNGQzkyRTY0MUIyQzM4MDQ= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MUMxQjU3Rjg3NzFCNEI0QUJBOUJCNkFFOTlEMzQzMkE= ECF0C7C7BDFFE39B32637C39924DA147 16B870511FAAF1183FC92E641B2C3804 5A548EA9D166341776CA0695837E55D8
-EE48951D6D57E40EF435A9768D332F90 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=69 1000 20 69 20 20 urn:base64:TlJDZWxsRFU6RTM4MTYwMTNFMzc4RTkyODM3NzQzMzA5OENDNEM0OUY6VVNFUzpOUlNlY3RvckNhcnJpZXI6RUU0ODk1MUQ2RDU3RTQwRUY0MzVBOTc2OEQzMzJGOTA= urn:base64:TlJTZWN0b3JDYXJyaWVyOkVFNDg5NTFENkQ1N0U0MEVGNDM1QTk3NjhEMzMyRjkwOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MkM3QUE4MDlDRDFBOTJGRDc0RUM0MTUxRDdDMTZBOEQ= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RUU0ODk1MUQ2RDU3RTQwRUY0MzVBOTc2OEQzMzJGOTA= E3816013E378E928377433098CC4C49F 2C7AA809CD1A92FD74EC4151D7C16A8D 5A548EA9D166341776CA0695837E55D8
-C28F7CEE3CB0BBFBF0C6F719FEC211BB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=70 1000 20 70 20 20 urn:base64:TlJDZWxsRFU6Q0VDMzlBQzYyMEVEMTM5NzhGNzhDODAyMkUyMUNGOUU6VVNFUzpOUlNlY3RvckNhcnJpZXI6QzI4RjdDRUUzQ0IwQkJGQkYwQzZGNzE5RkVDMjExQkI= urn:base64:TlJTZWN0b3JDYXJyaWVyOkMyOEY3Q0VFM0NCMEJCRkJGMEM2RjcxOUZFQzIxMUJCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MkMyMUQxMDY5NDYwRjM1RkYzODk1MkYxMDUwREY3Q0M= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QzI4RjdDRUUzQ0IwQkJGQkYwQzZGNzE5RkVDMjExQkI= CEC39AC620ED13978F78C8022E21CF9E 2C21D1069460F35FF38952F1050DF7CC 5A548EA9D166341776CA0695837E55D8
-C5CF3C623988E715923D7886CB2466A6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=71 1000 20 71 20 20 urn:base64:TlJDZWxsRFU6MzczNzIxRjg1QUM5MzM5QzUxN0M4ODk1QzI5RkY2MkE6VVNFUzpOUlNlY3RvckNhcnJpZXI6QzVDRjNDNjIzOTg4RTcxNTkyM0Q3ODg2Q0IyNDY2QTY= urn:base64:TlJTZWN0b3JDYXJyaWVyOkM1Q0YzQzYyMzk4OEU3MTU5MjNENzg4NkNCMjQ2NkE2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QUEzRUQwQzgyQTlGRTZENzQxMkI3QzU1OEE5NkNEQTU= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QzVDRjNDNjIzOTg4RTcxNTkyM0Q3ODg2Q0IyNDY2QTY= 373721F85AC9339C517C8895C29FF62A AA3ED0C82A9FE6D7412B7C558A96CDA5 5A548EA9D166341776CA0695837E55D8
-6F3BF87603496381A0AA401D9AC6B915 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=72 1000 20 72 20 20 urn:base64:TlJDZWxsRFU6MDc2OTFCOEQ1REY3Q0I3NzNCNjM1OTlEMTE4RTNFRkI6VVNFUzpOUlNlY3RvckNhcnJpZXI6NkYzQkY4NzYwMzQ5NjM4MUEwQUE0MDFEOUFDNkI5MTU= urn:base64:TlJTZWN0b3JDYXJyaWVyOjZGM0JGODc2MDM0OTYzODFBMEFBNDAxRDlBQzZCOTE1OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QjVEMzY5MDVDODdEQTYzNjYxMUMxMzcxNTk3MjdDRUU= urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NkYzQkY4NzYwMzQ5NjM4MUEwQUE0MDFEOUFDNkI5MTU= 07691B8D5DF7CB773B63599D118E3EFB B5D36905C87DA636611C137159727CEE 5A548EA9D166341776CA0695837E55D8
-5ECA43F7689D63684649BD90D40B79DD SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=73 1000 20 73 20 20 urn:base64:TlJDZWxsRFU6MTM4Q0UzQjIxQzgwNTM2NzVFMEVCREM0MUMzNkU5OUQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6NUVDQTQzRjc2ODlENjM2ODQ2NDlCRDkwRDQwQjc5REQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjVFQ0E0M0Y3Njg5RDYzNjg0NjQ5QkQ5MEQ0MEI3OUREOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6M0VGNEM3MTM1NEVDNTI3QUIwMzNBM0ZCODIwRjQ4RTQ= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NUVDQTQzRjc2ODlENjM2ODQ2NDlCRDkwRDQwQjc5REQ= 138CE3B21C8053675E0EBDC41C36E99D 3EF4C71354EC527AB033A3FB820F48E4 7D80E5C6E0C9EC246370E86B7E524F8C
-FF661FEC250A16BBE36D49880E4C2429 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=74 1000 20 74 20 20 urn:base64:TlJDZWxsRFU6MUY3MDI4MDBEMUY3MzU5OTU4MjgzREJDQjQ1QzBERDA6VVNFUzpOUlNlY3RvckNhcnJpZXI6RkY2NjFGRUMyNTBBMTZCQkUzNkQ0OTg4MEU0QzI0Mjk= urn:base64:TlJTZWN0b3JDYXJyaWVyOkZGNjYxRkVDMjUwQTE2QkJFMzZENDk4ODBFNEMyNDI5OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MEIzNjgxRjE5NTU4NEVGMTA1MUI5MTRFQjYzRUJCQ0I= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RkY2NjFGRUMyNTBBMTZCQkUzNkQ0OTg4MEU0QzI0Mjk= 1F702800D1F7359958283DBCB45C0DD0 0B3681F195584EF1051B914EB63EBBCB 7D80E5C6E0C9EC246370E86B7E524F8C
-B6372CE9CE6325BA1ADBDD0500C73B8E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=75 1000 20 75 20 20 urn:base64:TlJDZWxsRFU6MENFMzMyMEU2QjQxRkMyM0I2QjBGQTRGRDIxMDNCMkM6VVNFUzpOUlNlY3RvckNhcnJpZXI6QjYzNzJDRTlDRTYzMjVCQTFBREJERDA1MDBDNzNCOEU= urn:base64:TlJTZWN0b3JDYXJyaWVyOkI2MzcyQ0U5Q0U2MzI1QkExQURCREQwNTAwQzczQjhFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NTlBNzdGQkJEQzhFMTgxOTc0MUU0NzI4NTk2QzQzNUM= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QjYzNzJDRTlDRTYzMjVCQTFBREJERDA1MDBDNzNCOEU= 0CE3320E6B41FC23B6B0FA4FD2103B2C 59A77FBBDC8E1819741E4728596C435C 7D80E5C6E0C9EC246370E86B7E524F8C
-7F4FDA4338069682CC88AD745CB6C63D SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=76 1000 20 76 20 20 urn:base64:TlJDZWxsRFU6OTIxMjBENUVFNUMwODg1RDdFNTA4NjBCRDA1NUExRUU6VVNFUzpOUlNlY3RvckNhcnJpZXI6N0Y0RkRBNDMzODA2OTY4MkNDODhBRDc0NUNCNkM2M0Q= urn:base64:TlJTZWN0b3JDYXJyaWVyOjdGNEZEQTQzMzgwNjk2ODJDQzg4QUQ3NDVDQjZDNjNEOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QkRDOEU0RUFDNTNDOUMzOTgwMEI0QkRDMDMwOUM4QkI= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6N0Y0RkRBNDMzODA2OTY4MkNDODhBRDc0NUNCNkM2M0Q= 92120D5EE5C0885D7E50860BD055A1EE BDC8E4EAC53C9C39800B4BDC0309C8BB 7D80E5C6E0C9EC246370E86B7E524F8C
-E9D5351FA08CF470205691591A57971C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=77 1000 20 77 20 20 urn:base64:TlJDZWxsRFU6RDcwNTU1NEU5ODEwMzQxMUIwMDVEMkUzQjRGNDJDODc6VVNFUzpOUlNlY3RvckNhcnJpZXI6RTlENTM1MUZBMDhDRjQ3MDIwNTY5MTU5MUE1Nzk3MUM= urn:base64:TlJTZWN0b3JDYXJyaWVyOkU5RDUzNTFGQTA4Q0Y0NzAyMDU2OTE1OTFBNTc5NzFDOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MzczMzIyOTlCRTEzOTgxOTNGN0I3NDUyQzE2NTIxRjg= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RTlENTM1MUZBMDhDRjQ3MDIwNTY5MTU5MUE1Nzk3MUM= D705554E98103411B005D2E3B4F42C87 37332299BE1398193F7B7452C16521F8 7D80E5C6E0C9EC246370E86B7E524F8C
-84C3806E28DDA395FB657466730E553F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=78 1000 20 78 20 20 urn:base64:TlJDZWxsRFU6NDYyRUY0NkFBMUM3NjQxQTg1MTBDN0M2MUQ2MEM4QjE6VVNFUzpOUlNlY3RvckNhcnJpZXI6ODRDMzgwNkUyOEREQTM5NUZCNjU3NDY2NzMwRTU1M0Y= urn:base64:TlJTZWN0b3JDYXJyaWVyOjg0QzM4MDZFMjhEREEzOTVGQjY1NzQ2NjczMEU1NTNGOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6ODNCOEZDMzQwOUU5RTM0RjhENEIyMkNENTE0Q0MwNzg= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6ODRDMzgwNkUyOEREQTM5NUZCNjU3NDY2NzMwRTU1M0Y= 462EF46AA1C7641A8510C7C61D60C8B1 83B8FC3409E9E34F8D4B22CD514CC078 7D80E5C6E0C9EC246370E86B7E524F8C
-245B2FAC3BB11B00FAE447CABE698904 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=79 1000 20 79 20 20 urn:base64:TlJDZWxsRFU6MjY4MjVEOUNBQTkxQkFDMzg5REVCREYzNTcyRUY0MDg6VVNFUzpOUlNlY3RvckNhcnJpZXI6MjQ1QjJGQUMzQkIxMUIwMEZBRTQ0N0NBQkU2OTg5MDQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjI0NUIyRkFDM0JCMTFCMDBGQUU0NDdDQUJFNjk4OTA0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NTg3QURCRDQ2RkEwQTc3MEUxQzNBQkEyMTBEQjU3RUQ= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MjQ1QjJGQUMzQkIxMUIwMEZBRTQ0N0NBQkU2OTg5MDQ= 26825D9CAA91BAC389DEBDF3572EF408 587ADBD46FA0A770E1C3ABA210DB57ED 7D80E5C6E0C9EC246370E86B7E524F8C
-42855D46C847C3A8495357891130264E SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=80 1000 20 80 20 20 urn:base64:TlJDZWxsRFU6MzNGODJERTkxODZGMTUzOUQyRUQ5ODgxOEY0MUEwQzI6VVNFUzpOUlNlY3RvckNhcnJpZXI6NDI4NTVENDZDODQ3QzNBODQ5NTM1Nzg5MTEzMDI2NEU= urn:base64:TlJTZWN0b3JDYXJyaWVyOjQyODU1RDQ2Qzg0N0MzQTg0OTUzNTc4OTExMzAyNjRFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NjA0QTIyQkZDNzJBOTYwMTE1RDZCMjFDM0YxODY4NDE= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NDI4NTVENDZDODQ3QzNBODQ5NTM1Nzg5MTEzMDI2NEU= 33F82DE9186F1539D2ED98818F41A0C2 604A22BFC72A960115D6B21C3F186841 7D80E5C6E0C9EC246370E86B7E524F8C
-03A4F1EB4E6F1981AA02DCD9A8433C93 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=81 1000 20 81 20 20 urn:base64:TlJDZWxsRFU6NDAxNzVBRjAwQTUyMjIxM0JBNjA1Mzc1MTlBNzE5Nzg6VVNFUzpOUlNlY3RvckNhcnJpZXI6MDNBNEYxRUI0RTZGMTk4MUFBMDJEQ0Q5QTg0MzNDOTM= urn:base64:TlJTZWN0b3JDYXJyaWVyOjAzQTRGMUVCNEU2RjE5ODFBQTAyRENEOUE4NDMzQzkzOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MUQ0Q0JDNDNENjJBMDFCMjdGQTBDNzQ0MkY5QUQwRDg= urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MDNBNEYxRUI0RTZGMTk4MUFBMDJEQ0Q5QTg0MzNDOTM= 40175AF00A522213BA60537519A71978 1D4CBC43D62A01B27FA0C7442F9AD0D8 7D80E5C6E0C9EC246370E86B7E524F8C
-BF8B10BD381DFC02FF35CAEF21FF8BF9 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=82 1000 20 82 20 20 urn:base64:TlJDZWxsRFU6RUE4NjA4ODQ1NEI3NDkxRkIzQkVGRERDQTVGRTA5N0Q6VVNFUzpOUlNlY3RvckNhcnJpZXI6QkY4QjEwQkQzODFERkMwMkZGMzVDQUVGMjFGRjhCRjk= urn:base64:TlJTZWN0b3JDYXJyaWVyOkJGOEIxMEJEMzgxREZDMDJGRjM1Q0FFRjIxRkY4QkY5OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6ODkyQkFFMEI0NTg2NUQzRjREQzc3NjY2MkJCMzc2NTQ= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QkY4QjEwQkQzODFERkMwMkZGMzVDQUVGMjFGRjhCRjk= EA86088454B7491FB3BEFDDCA5FE097D 892BAE0B45865D3F4DC776662BB37654 BBB3C42A4F8AC94091B297DF708DD50B
-6D969214659F2A2CA9650AC208FBF457 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=83 1000 20 83 20 20 urn:base64:TlJDZWxsRFU6OUJDNjk5OEI4OEJBNEMxMDgxQ0Q1RjIxMTY4MUM5Q0Y6VVNFUzpOUlNlY3RvckNhcnJpZXI6NkQ5NjkyMTQ2NTlGMkEyQ0E5NjUwQUMyMDhGQkY0NTc= urn:base64:TlJTZWN0b3JDYXJyaWVyOjZEOTY5MjE0NjU5RjJBMkNBOTY1MEFDMjA4RkJGNDU3OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RUUxRUFBRkRCODUyMDYyNTlBQTlEOUQ0QkEwMUJEQTI= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NkQ5NjkyMTQ2NTlGMkEyQ0E5NjUwQUMyMDhGQkY0NTc= 9BC6998B88BA4C1081CD5F211681C9CF EE1EAAFDB85206259AA9D9D4BA01BDA2 BBB3C42A4F8AC94091B297DF708DD50B
-365071A0DFF5B78304D2FA88D0843FBB SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=84 1000 20 84 20 20 urn:base64:TlJDZWxsRFU6ODM3N0VDQTEzN0ZGMDE4Qzk3MTZDMDU4N0Y2MTcxODI6VVNFUzpOUlNlY3RvckNhcnJpZXI6MzY1MDcxQTBERkY1Qjc4MzA0RDJGQTg4RDA4NDNGQkI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjM2NTA3MUEwREZGNUI3ODMwNEQyRkE4OEQwODQzRkJCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MTExQkQxMjNEQ0ExQjkzN0YwRTE1RTVCRUZERTA4RTk= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MzY1MDcxQTBERkY1Qjc4MzA0RDJGQTg4RDA4NDNGQkI= 8377ECA137FF018C9716C0587F617182 111BD123DCA1B937F0E15E5BEFDE08E9 BBB3C42A4F8AC94091B297DF708DD50B
-8307402BF7B31AF8574188E04561D3C8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=85 1000 20 85 20 20 urn:base64:TlJDZWxsRFU6MTU4OTBFRjZEMjE5NkQ5RTIxRDcwQkRDRTJBQTNBNzc6VVNFUzpOUlNlY3RvckNhcnJpZXI6ODMwNzQwMkJGN0IzMUFGODU3NDE4OEUwNDU2MUQzQzg= urn:base64:TlJTZWN0b3JDYXJyaWVyOjgzMDc0MDJCRjdCMzFBRjg1NzQxODhFMDQ1NjFEM0M4OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6REY3ODM3RUVBQjY1QTA2ODU5MTEwMzY2RTVGNDUyOTc= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6ODMwNzQwMkJGN0IzMUFGODU3NDE4OEUwNDU2MUQzQzg= 15890EF6D2196D9E21D70BDCE2AA3A77 DF7837EEAB65A06859110366E5F45297 BBB3C42A4F8AC94091B297DF708DD50B
-9815C219A506825B396777C746C32CE8 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=86 1000 20 86 20 20 urn:base64:TlJDZWxsRFU6RjYwRjVCRDU0RkE5ODQyOTc5NzkwQjRCQkY4MEI4RDk6VVNFUzpOUlNlY3RvckNhcnJpZXI6OTgxNUMyMTlBNTA2ODI1QjM5Njc3N0M3NDZDMzJDRTg= urn:base64:TlJTZWN0b3JDYXJyaWVyOjk4MTVDMjE5QTUwNjgyNUIzOTY3NzdDNzQ2QzMyQ0U4OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RDBBQUU5NjMxQUYxNTU0QjhGMzkwOTMyRTM3N0VBMTk= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6OTgxNUMyMTlBNTA2ODI1QjM5Njc3N0M3NDZDMzJDRTg= F60F5BD54FA9842979790B4BBF80B8D9 D0AAE9631AF1554B8F390932E377EA19 BBB3C42A4F8AC94091B297DF708DD50B
-E04502AA9180D9BFE2BF1D3C7A9BC168 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=87 1000 20 87 20 20 urn:base64:TlJDZWxsRFU6MjY0MjU4NjA4NTEyMDA1OERGNTk2NzBGMzNGQTUwOTg6VVNFUzpOUlNlY3RvckNhcnJpZXI6RTA0NTAyQUE5MTgwRDlCRkUyQkYxRDNDN0E5QkMxNjg= urn:base64:TlJTZWN0b3JDYXJyaWVyOkUwNDUwMkFBOTE4MEQ5QkZFMkJGMUQzQzdBOUJDMTY4OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6ODlCOUZFNUQyRDRBMDdDQ0Q1NEU3MDVCRkUyRDEwRjA= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RTA0NTAyQUE5MTgwRDlCRkUyQkYxRDNDN0E5QkMxNjg= 2642586085120058DF59670F33FA5098 89B9FE5D2D4A07CCD54E705BFE2D10F0 BBB3C42A4F8AC94091B297DF708DD50B
-102AB1BB98BDBA7E7ED16D3D3CFFB6D4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=88 1000 20 88 20 20 urn:base64:TlJDZWxsRFU6QTM5QzczRDI4NzlEODZFRjQxODRCNjA1QzBBRTAxNkY6VVNFUzpOUlNlY3RvckNhcnJpZXI6MTAyQUIxQkI5OEJEQkE3RTdFRDE2RDNEM0NGRkI2RDQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjEwMkFCMUJCOThCREJBN0U3RUQxNkQzRDNDRkZCNkQ0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QTZFOTdCQTMwODMyQzFCN0FDMzZGNEQ3OUREMzhCNzE= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MTAyQUIxQkI5OEJEQkE3RTdFRDE2RDNEM0NGRkI2RDQ= A39C73D2879D86EF4184B605C0AE016F A6E97BA30832C1B7AC36F4D79DD38B71 BBB3C42A4F8AC94091B297DF708DD50B
-DB5F86A12F44A382347C1FB4893ED9A6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=89 1000 20 89 20 20 urn:base64:TlJDZWxsRFU6RUVDODVBN0Y3NjAxNzI2MEY5NzIxQjY1QTE0NEQxOEU6VVNFUzpOUlNlY3RvckNhcnJpZXI6REI1Rjg2QTEyRjQ0QTM4MjM0N0MxRkI0ODkzRUQ5QTY= urn:base64:TlJTZWN0b3JDYXJyaWVyOkRCNUY4NkExMkY0NEEzODIzNDdDMUZCNDg5M0VEOUE2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6REZBNjIwMkZGOTZERDQxOEVBRDRDOTMwRjI3RjBDNzg= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6REI1Rjg2QTEyRjQ0QTM4MjM0N0MxRkI0ODkzRUQ5QTY= EEC85A7F76017260F9721B65A144D18E DFA6202FF96DD418EAD4C930F27F0C78 BBB3C42A4F8AC94091B297DF708DD50B
-5C2AD66A4AB041C406D723CBAE50A132 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=90 1000 20 90 20 20 urn:base64:TlJDZWxsRFU6MUQ4MjU4ODFGMzc4RTA3MzUzNzhENDBCREVDQUMzRUM6VVNFUzpOUlNlY3RvckNhcnJpZXI6NUMyQUQ2NkE0QUIwNDFDNDA2RDcyM0NCQUU1MEExMzI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjVDMkFENjZBNEFCMDQxQzQwNkQ3MjNDQkFFNTBBMTMyOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MDE5NDVEN0I3RDJBRkIwQjNERkUyMzgyMkQyQzlDQ0I= urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NUMyQUQ2NkE0QUIwNDFDNDA2RDcyM0NCQUU1MEExMzI= 1D825881F378E0735378D40BDECAC3EC 01945D7B7D2AFB0B3DFE23822D2C9CCB BBB3C42A4F8AC94091B297DF708DD50B
-A93CCC56481697761027BCDE211E1C60 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=91 1000 20 91 20 20 urn:base64:TlJDZWxsRFU6NzZFOUY2MDVENEYzNzMzMEJGMEI1MDVFOTRGNjRGMTE6VVNFUzpOUlNlY3RvckNhcnJpZXI6QTkzQ0NDNTY0ODE2OTc3NjEwMjdCQ0RFMjExRTFDNjA= urn:base64:TlJTZWN0b3JDYXJyaWVyOkE5M0NDQzU2NDgxNjk3NzYxMDI3QkNERTIxMUUxQzYwOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QkU1MEFDNTdBQjFGQUU3MzUzMUFERDE4MTMyNDA2N0Y= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QTkzQ0NDNTY0ODE2OTc3NjEwMjdCQ0RFMjExRTFDNjA= 76E9F605D4F37330BF0B505E94F64F11 BE50AC57AB1FAE73531ADD181324067F 4CFF136200A2DE36205A13559C55DB2A
-0BF78ED8A5CC93E9A94D0C26EE06E82C SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=92 1000 20 92 20 20 urn:base64:TlJDZWxsRFU6NjdBMUJEQTEwQjVBRjQzMDI4RDA3QzdCRTVDQjFBRTI6VVNFUzpOUlNlY3RvckNhcnJpZXI6MEJGNzhFRDhBNUNDOTNFOUE5NEQwQzI2RUUwNkU4MkM= urn:base64:TlJTZWN0b3JDYXJyaWVyOjBCRjc4RUQ4QTVDQzkzRTlBOTREMEMyNkVFMDZFODJDOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6ODJEMDU1REUxNUI5N0NEODY2Q0Y0NTRBOTY4OEY0REI= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MEJGNzhFRDhBNUNDOTNFOUE5NEQwQzI2RUUwNkU4MkM= 67A1BDA10B5AF43028D07C7BE5CB1AE2 82D055DE15B97CD866CF454A9688F4DB 4CFF136200A2DE36205A13559C55DB2A
-3A03407819295DB521A1E8B0FBCCE4A6 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=93 1000 20 93 20 20 urn:base64:TlJDZWxsRFU6QjNCMEExOTM5RUZDQTY1NEEzNzAwNUI2QTdGMjRCRDc6VVNFUzpOUlNlY3RvckNhcnJpZXI6M0EwMzQwNzgxOTI5NURCNTIxQTFFOEIwRkJDQ0U0QTY= urn:base64:TlJTZWN0b3JDYXJyaWVyOjNBMDM0MDc4MTkyOTVEQjUyMUExRThCMEZCQ0NFNEE2OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6MzYyRUMzQjc3NThEODczREY5OEFFMkE5RUMyNDcyQjU= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6M0EwMzQwNzgxOTI5NURCNTIxQTFFOEIwRkJDQ0U0QTY= B3B0A1939EFCA654A37005B6A7F24BD7 362EC3B7758D873DF98AE2A9EC2472B5 4CFF136200A2DE36205A13559C55DB2A
-50CD521E55D12209A175020974A24AB4 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=94 1000 20 94 20 20 urn:base64:TlJDZWxsRFU6RjI2RjI3OUU5MUQwOTQxREI0RjY0NkU3MDdFQTQwM0E6VVNFUzpOUlNlY3RvckNhcnJpZXI6NTBDRDUyMUU1NUQxMjIwOUExNzUwMjA5NzRBMjRBQjQ= urn:base64:TlJTZWN0b3JDYXJyaWVyOjUwQ0Q1MjFFNTVEMTIyMDlBMTc1MDIwOTc0QTI0QUI0OlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6REE1RDhBM0QxQ0RDM0Q1NTQ0N0Y3Qzg2RUREOEZFNTA= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6NTBDRDUyMUU1NUQxMjIwOUExNzUwMjA5NzRBMjRBQjQ= F26F279E91D0941DB4F646E707EA403A DA5D8A3D1CDC3D55447F7C86EDD8FE50 4CFF136200A2DE36205A13559C55DB2A
-EBF6DFD0DE8908C4CF01E834A5B7EFB1 SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=95 1000 20 95 20 20 urn:base64:TlJDZWxsRFU6MjQzNzkxNDZGRTM0OUZCRjA0QkEzQjMwMTgwNzcyMTQ6VVNFUzpOUlNlY3RvckNhcnJpZXI6RUJGNkRGRDBERTg5MDhDNENGMDFFODM0QTVCN0VGQjE= urn:base64:TlJTZWN0b3JDYXJyaWVyOkVCRjZERkQwREU4OTA4QzRDRjAxRTgzNEE1QjdFRkIxOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6NkEzOUIxNTFDNTBGNzNGMDI5QjU3NzIyOTlEQ0YyODk= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6RUJGNkRGRDBERTg5MDhDNENGMDFFODM0QTVCN0VGQjE= 24379146FE349FBF04BA3B3018077214 6A39B151C50F73F029B5772299DCF289 4CFF136200A2DE36205A13559C55DB2A
-DA2FC8B45D346CFD1C9BB7F074CCA32F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=96 1000 20 96 20 20 urn:base64:TlJDZWxsRFU6NUU3RUExRDYzODBDMjFEMkMwMjQ1MjRDMkExOThBNUE6VVNFUzpOUlNlY3RvckNhcnJpZXI6REEyRkM4QjQ1RDM0NkNGRDFDOUJCN0YwNzRDQ0EzMkY= urn:base64:TlJTZWN0b3JDYXJyaWVyOkRBMkZDOEI0NUQzNDZDRkQxQzlCQjdGMDc0Q0NBMzJGOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QjBGRTg4MERGOTQ3NEFBMjlDN0E0QkFBQTk0NkU1NUQ= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6REEyRkM4QjQ1RDM0NkNGRDFDOUJCN0YwNzRDQ0EzMkY= 5E7EA1D6380C21D2C024524C2A198A5A B0FE880DF9474AA29C7A4BAAA946E55D 4CFF136200A2DE36205A13559C55DB2A
-1E0B268A6D8C40331AACEBED444FCC1F SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=97 1000 20 97 20 20 urn:base64:TlJDZWxsRFU6NURDM0ExMUE2OUQ4Q0RCMTc1RkM5RDQ5RDlFMEU3MjA6VVNFUzpOUlNlY3RvckNhcnJpZXI6MUUwQjI2OEE2RDhDNDAzMzFBQUNFQkVENDQ0RkNDMUY= urn:base64:TlJTZWN0b3JDYXJyaWVyOjFFMEIyNjhBNkQ4QzQwMzMxQUFDRUJFRDQ0NEZDQzFGOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6QzIzRDlEMDgwN0U0NUVGNTVEQzZCN0QzNUVFQjA4QjE= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6MUUwQjI2OEE2RDhDNDAzMzFBQUNFQkVENDQ0RkNDMUY= 5DC3A11A69D8CDB175FC9D49D9E0E720 C23D9D0807E45EF55DC6B7D35EEB08B1 4CFF136200A2DE36205A13559C55DB2A
-87670506C58610E1888B5BEBE2C9B21B SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=98 1000 20 98 20 20 urn:base64:TlJDZWxsRFU6OTg0MEFDMTU2Njc3NDU0NUNCRDdGRDQ0MDE1RUZGQTU6VVNFUzpOUlNlY3RvckNhcnJpZXI6ODc2NzA1MDZDNTg2MTBFMTg4OEI1QkVCRTJDOUIyMUI= urn:base64:TlJTZWN0b3JDYXJyaWVyOjg3NjcwNTA2QzU4NjEwRTE4ODhCNUJFQkUyQzlCMjFCOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6Q0Y4RUY3MjNCQjQ2QzYxNzBEQjA0OTBEMUZBMjZCODU= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6ODc2NzA1MDZDNTg2MTBFMTg4OEI1QkVCRTJDOUIyMUI= 9840AC1566774545CBD7FD44015EFFA5 CF8EF723BB46C6170DB0490D1FA26B85 4CFF136200A2DE36205A13559C55DB2A
-A00B93EACEE32A938CD9A83446E1B3AE SubNetwork=SolarSystem/SubNetwork=Earth/SubNetwork=Europe/SubNetwork=Hungary/NRSectorCarrier=99 1000 20 99 20 20 urn:base64:TlJDZWxsRFU6RjQ1MzFDMzEyMDVGMjhCQzg4MzBDQUQ3QTdDMkZEQTE6VVNFUzpOUlNlY3RvckNhcnJpZXI6QTAwQjkzRUFDRUUzMkE5MzhDRDlBODM0NDZFMUIzQUU= urn:base64:TlJTZWN0b3JDYXJyaWVyOkEwMEI5M0VBQ0VFMzJBOTM4Q0Q5QTgzNDQ2RTFCM0FFOlVTRVM6QW50ZW5uYUNhcGFiaWxpdHk6RTFDMzQwREYwRkZBNTEyMTFEREI1RjgyOUUyQTI3RUU= urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpQUk9WSURFUzpOUlNlY3RvckNhcnJpZXI6QTAwQjkzRUFDRUUzMkE5MzhDRDlBODM0NDZFMUIzQUU= F4531C31205F28BC8830CAD7A7C2FDA1 E1C340DF0FFA51211DDB5F829E2A27EE 4CFF136200A2DE36205A13559C55DB2A
-\.
-
-COPY ties_data."OCUCPFUNCTION_REALISED_BY_CLOUDNATIVEAPPLICATION" (id, "OCUCPFunction", "CloudNativeApplication") FROM stdin;
-urn:base64:R05CQ1VDUEZ1bmN0aW9uOjA1MjU5MzAyNDkzMDJCOTY0OUZDOEYyMDFFQzRGN0ZDOlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246MzI1NjEyMEU3M0FERDQwMjZBNDNBOTcxRENFNUMxNTE= 0525930249302B9649FC8F201EC4F7FC 3256120E73ADD4026A43A971DCE5C151
-\.
-
-COPY ties_data."OCUUPFUNCTION_REALISED_BY_CLOUDNATIVEAPPLICATION" (id, "OCUUPFunction", "CloudNativeApplication") FROM stdin;
-urn:base64:R05CQ1VVUEZ1bmN0aW9uOkJGRUVBQzJDRTYwMjczQ0IwQTc4MzE5Q0MyMDFBN0ZFOlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246QUQ0MkQ5MDQ5N0U5M0QyNzYyMTVERjZEM0I4OTlFMTc= BFEEAC2CE60273CB0A78319CC201A7FE AD42D90497E93D276215DF6D3B899E17
-urn:base64:R05CQ1VVUEZ1bmN0aW9uOkYxQzMyQjlERUNBMjIzMEQ5NzY1QkUyRjU0RjFFREZFOlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246OTgwMEQ4MUM3NDNCRjQyNDZGRUI5NTA2M0Q2QjBGNkI= F1C32B9DECA2230D9765BE2F54F1EDFE 9800D81C743BF4246FEB95063D6B0F6B
-urn:base64:R05CQ1VVUEZ1bmN0aW9uOkExOEYzNDUyQzkxOEU4RjJDNTRFNjAwRjQyMDA1REJEOlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246Mzk4REQxOUE1RkQ5MDJDOTgxRTRENTlGNDRFMjdGMDc= A18F3452C918E8F2C54E600F42005DBD 398DD19A5FD902C981E4D59F44E27F07
-urn:base64:R05CQ1VVUEZ1bmN0aW9uOjZCM0U1NkI2Qzk5MUY0RTU2OTExNURFNTYzM0IwQUEwOlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246RTVFOEExMTQxOUUwOTk2NjYwNEMxNEZERTVFMDlERjU= 6B3E56B6C991F4E569115DE5633B0AA0 E5E8A11419E09966604C14FDE5E09DF5
-urn:base64:R05CQ1VVUEZ1bmN0aW9uOjk5QkJBM0VDNjRCRTU5NjQwMEIzOEZFQkQ5Njc3RkM2OlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246NDEyMzREQkQzQ0NFQzAxMEUyRTkyNTg1MjcyMjk5NTA= 99BBA3EC64BE596400B38FEBD9677FC6 41234DBD3CCEC010E2E9258527229950
-urn:base64:R05CQ1VVUEZ1bmN0aW9uOjk4MDZBQkUyOTg1QkRENEZFNkJEMkIzODU0OUM5NzNDOlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246QzRFMjg5MzIzNTdGQTAwNzZDQTk2Q0Y3RkYyQzUxQkQ= 9806ABE2985BDD4FE6BD2B38549C973C C4E28932357FA0076CA96CF7FF2C51BD
-urn:base64:R05CQ1VVUEZ1bmN0aW9uOjlCMDA3ODgxQTFCOERFMzNEMUQzMDYzQkU2MDFENEI2OlJFQUxJU0VEX0JZOkNsb3VkTmF0aXZlQXBwbGljYXRpb246RUUyRDRBREExMEZGNjg3RkY2QTg2NUNDOUU1NkE0MzY= 9B007881A1B8DE33D1D3063BE601D4B6 EE2D4ADA10FF687FF6A865CC9E56A436
-\.
-
-COPY ties_data."ODUFUNCTION_REALISED_BY_CLOUDNATIVEAPPLICATION" (id, "ODUFunction", "CloudNativeApplication") FROM stdin;
-urn:base64:R05CRFVGdW5jdGlvbjo0Q0ZGMTM2MjAwQTJERTM2MjA1QTEzNTU5QzU1REIyQTpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOkM1NDk5MDVDRjNDQzg5MENFNTc0NkM1RTEwQUNGMDBE 4CFF136200A2DE36205A13559C55DB2A C549905CF3CC890CE5746C5E10ACF00D
-urn:base64:R05CRFVGdW5jdGlvbjpCQkIzQzQyQTRGOEFDOTQwOTFCMjk3REY3MDhERDUwQjpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjlFMDI5MTY4OTQzNTIwMEFFMTMzMkZCQkI5OTJDMTUx BBB3C42A4F8AC94091B297DF708DD50B 9E0291689435200AE1332FBBB992C151
-urn:base64:R05CRFVGdW5jdGlvbjo3RDgwRTVDNkUwQzlFQzI0NjM3MEU4NkI3RTUyNEY4QzpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjZCNjU1OTcxNTY0QzAyRjFGQjdFNUQ3RTg0RjlEREFG 7D80E5C6E0C9EC246370E86B7E524F8C 6B655971564C02F1FB7E5D7E84F9DDAF
-urn:base64:R05CRFVGdW5jdGlvbjo1QTU0OEVBOUQxNjYzNDE3NzZDQTA2OTU4MzdFNTVEODpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOkUxMjhDMzBEN0UyQURCN0RFRjkwNENFN0U5MzZBNTg2 5A548EA9D166341776CA0695837E55D8 E128C30D7E2ADB7DEF904CE7E936A586
-urn:base64:R05CRFVGdW5jdGlvbjo3RjE2RjkzRDg4MTZEOUVCQzc2RTUyQkI0NEEzQ0ZGNTpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjBEQkRBRjM1N0E2OUMzNzNGQzJBOThCNjg0ODVEREUz 7F16F93D8816D9EBC76E52BB44A3CFF5 0DBDAF357A69C373FC2A98B68485DDE3
-urn:base64:R05CRFVGdW5jdGlvbjo1QTMwODVDMzQwMEMzMDk2RTJFRDIzMjE0NTI3NjZCMTpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjNGMjU4MEU5RjQ2OUY5QTNDRDk3QjlGQ0Y2Q0Y0RkI3 5A3085C3400C3096E2ED2321452766B1 3F2580E9F469F9A3CD97B9FCF6CF4FB7
-urn:base64:R05CRFVGdW5jdGlvbjoyNUU2OTBFMjJCREE5MEI5QzRGRUUxRjA4M0NCQTU5NzpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOkQ4MEUwOTI0MzJFQTY3M0U2RDI2RjgzM0ZENDU2REFC 25E690E22BDA90B9C4FEE1F083CBA597 D80E092432EA673E6D26F833FD456DAB
-urn:base64:R05CRFVGdW5jdGlvbjpFNUZENUFDRDU1QzU1M0E5MjczODQ3N0VDQjA0NjVCOTpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjYwRTY4NUM1M0Y0QTFENzAwQUExMjQ5OUI4NTEzNzAw E5FD5ACD55C553A92738477ECB0465B9 60E685C53F4A1D700AA12499B8513700
-urn:base64:R05CRFVGdW5jdGlvbjpCNkE2REU3RDA5NjVGMDJENDhFQ0E4NjcwNkE0NDU0RjpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjA3MjU0OUI2RjU1MjEwRUE5NjdENjZGQjM4REY0RDAy B6A6DE7D0965F02D48ECA86706A4454F 072549B6F55210EA967D66FB38DF4D02
-urn:base64:R05CRFVGdW5jdGlvbjoxMDUwNTcwRUJCMTMxNUUxQUU3QTlGRDVFMTQwMEEwMDpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjQxNkYzMUU2RUIwOTA1NTMyNjYyMUY0OTE5RDM1QkZG 1050570EBB1315E1AE7A9FD5E1400A00 416F31E6EB09055326621F4919D35BFF
-urn:base64:R05CRFVGdW5jdGlvbjpEMzIxNUUwODU3MEJFNTgzMzlDNzQ2MzYyNkI1MEUzNzpSRUFMSVNFRF9CWTpDbG91ZE5hdGl2ZUFwcGxpY2F0aW9uOjcxOUJENUM3Q0Q4QTkzOUQ3NkE4M0RBOTVEQTQ1QzAx D3215E08570BE58339C7463626B50E37 719BD5C7CD8A939D76A83DA95DA45C01
-\.
-
-COPY ties_data."ANTENNACAPABILITY_REALISED_BY_ANTENNAMODULE" (id, "AntennaCapability", "AntennaModule") FROM stdin;
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6QTMyREI5RTI3OEZDMURFNDFGQjRBM0I1MEY4MDI2NTA6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTo0MkI0RUVGMDlFOTczNzhCMEUzNjVGOUJBQUI1MEUxQg== A32DB9E278FC1DE41FB4A3B50F802650 42B4EEF09E97378B0E365F9BAAB50E1B
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6NDkyMDU4ODFDOTEyMUYyMDhCRDc5MTQ5RkE3OTk4Nzc6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpBRjM4ODYxOUY4NTE3Q0JFQUYyM0QwNkI0RDM3NDRGRg== 49205881C9121F208BD79149FA799877 AF388619F8517CBEAF23D06B4D3744FF
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6MEJEQUQ1RERDMTlBNjk2MjQ0NTM2NDIxRTZEMjZGRTM6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTo0RUNBMDIxNjUyNzVGQTE3QkU2MEFGMUQyN0FBQjUyOQ== 0BDAD5DDC19A696244536421E6D26FE3 4ECA02165275FA17BE60AF1D27AAB529
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6QzM5OEQ2QzY3MzI2N0EwODFDNzgxRDg0NDM4RjRCNzQ6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTo0QzRFOTk5OERBRTMwQzk1NEE5M0Q3ODk1OUZENTExQg== C398D6C673267A081C781D84438F4B74 4C4E9998DAE30C954A93D78959FD511B
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6MjhBRDNFRTg0NDc2NkRGNTA4RjYyODdDRDFDRTE4QTQ6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpBRDJERDE1QUM0RTFERTA1MDY4NDM4ODdCNDdDNTFBMw== 28AD3EE844766DF508F6287CD1CE18A4 AD2DD15AC4E1DE0506843887B47C51A3
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6RDMxNERBREFGQTNEODk2NDQ1RTc4RUJDQzE1QTE2Rjc6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTo3MkM3NkMwM0VEMEI0MkZBM0ZFNEY5RDIyQzRBRjlFMQ== D314DADAFA3D896445E78EBCC15A16F7 72C76C03ED0B42FA3FE4F9D22C4AF9E1
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6OTE4OEQ5NzVEODM3QTFFMDM5NzE2N0EyM0U3MjFCMEM6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpCNDEyNUVGQjc5RDQ2QkY5ODk1NzA5Rjk4NUM5MkU5OQ== 9188D975D837A1E0397167A23E721B0C B4125EFB79D46BF9895709F985C92E99
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6MTQ1QTFCRjU2MURCMjk3RjI1RkQzRjEyNDE3RDJBNTA6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpCRDBFMTBCQzU1QjcyODZGNjk5REIzNDAwNDUwNTNDQQ== 145A1BF561DB297F25FD3F12417D2A50 BD0E10BC55B7286F699DB340045053CA
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6N0RFOTFDNzhGOERDRTQyOTJGMkYwQzNCMzRERUFDQUI6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZToxMzE5RURDMEE5NTYwOTA4NDY4MkIzMzFGMEEwNUU4Mg== 7DE91C78F8DCE4292F2F0C3B34DEACAB 1319EDC0A95609084682B331F0A05E82
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6NzBBMUYxMjlFMTBFRTdEMzFERkUxRTFBQTZDNzQzN0Q6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpCRUIwMUI5MEFDMDA5OUNBN0M3MzBENTRDNkE5OUY1Ng== 70A1F129E10EE7D31DFE1E1AA6C7437D BEB01B90AC0099CA7C730D54C6A99F56
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6N0ExQzZGRTkzNTEwMDhCM0Q1MzkxNjZEOTQyMjI3NjI6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTowMDJCMDIxOUI3MzlCODhDOEE4MTM1NTJFRjFFODk0Mg== 7A1C6FE9351008B3D539166D94222762 002B0219B739B88C8A813552EF1E8942
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6REYyNkFFNDQyMTEwREIwMjgxREFENDU0NTQzNkI3MjA6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpGRjIxRTIyNjZCMzZFOTJGM0MyOThDOUMzNDk3QkRBRA== DF26AE442110DB0281DAD4545436B720 FF21E2266B36E92F3C298C9C3497BDAD
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6QzY4MjNEMkI3QUZBMDY0Q0U3NzQ3OTVFMDFENjIyOEI6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTowN0M2M0JBMDhCMEM0M0UxOENDOTY0RjBCNkY0RTI0RA== C6823D2B7AFA064CE774795E01D6228B 07C63BA08B0C43E18CC964F0B6F4E24D
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6MDI0NDNERTA4MDdEODAxRDY2MTQ5NUQ5RUZCOEQ4MzY6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpBQTQ4OTk5MzAyREZDOEVDODg3OTU3MjYyM0MwMDg1QQ== 02443DE0807D801D661495D9EFB8D836 AA48999302DFC8EC8879572623C0085A
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6RDVCOTA5MEUzQjZBMTBEQkRDMjQzRUQxNEVGMjk0QkY6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTo3RUNFRDRCRThDRjQ3NjYxRDVEM0U4Njc0NTg2QTlCMQ== D5B9090E3B6A10DBDC243ED14EF294BF 7ECED4BE8CF47661D5D3E8674586A9B1
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6MDQyNzNGQzY0NDM2REE1MjM4NjVDRjg0OUU1RjdDQzk6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpDQkFCNDBCRUYyNjQ2RDIwRjY2NTQyRTlEMTBEN0ZDQQ== 04273FC64436DA523865CF849E5F7CC9 CBAB40BEF2646D20F66542E9D10D7FCA
-urn:base64:QW50ZW5uYUNhcGFiaWxpdHk6NTgzNUY3N0JFOUQ0RTEwMjMxNkJENTkxOTVGNjM3MEI6UkVBTElTRURfQlk6QW50ZW5uYU1vZHVsZTpDQkFCNDBCRUYyNjQ2RDIwRjY2NTQyRTlEMTBEN0ZDQQ== 5835F77BE9D4E102316BD59195F6370B CBAB40BEF2646D20F66542E9D10D7FCA
-\.
-
+++ /dev/null
---
--- ============LICENSE_START=======================================================
--- Copyright (C) 2024 Ericsson
--- Modifications Copyright (C) 2024 OpenInfra Foundation Europe
--- ================================================================================
--- Licensed under the Apache License, Version 2.0 (the "License");
--- you may not use this file except in compliance with the License.
--- You may obtain a copy of the License at
---
--- http://www.apache.org/licenses/LICENSE-2.0
---
--- Unless required by applicable law or agreed to in writing, software
--- distributed under the License is distributed on an "AS IS" BASIS,
--- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
--- See the License for the specific language governing permissions and
--- limitations under the License.
---
--- SPDX-License-Identifier: Apache-2.0
--- ============LICENSE_END=========================================================
---
-
-BEGIN;
-
-COPY ties_data."o-ran-smo-teiv-oam_ManagedElement" ("id", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10", "urn:cmHandle:72FDA73D085F138FECC974CB91F1450E"] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13", "urn:cmHandle:E5196035D0B49A65B00EAA392B4EE155"] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14", "urn:cmHandle:D67C0BD04FA613BBFD176B24B68FD6A4"] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16", "urn:cmHandle:453431CC154F900606657D584700827A"] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28", "urn:cmHandle:30C68865AF2F353F202056CB1921D418"] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_Sector" ("id", "geo-location", "sectorId", "azimuth", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-Sector=1 POINT(59.4019881 17.9419888) 1 1.1 [] [] {}
-Sector=2 POINT(60.4019881 18.9419888) 2 2.2 [] [] {}
-Sector=3 POINT(61.4019881 19.9419888) 3 3.3 [] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_AntennaCapability" ("id", "eUtranFqBands", "geranFqBands", "nRFqBands", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1 ["123","456","789"] ["123","4564","789"] ["123","456","789"] ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1 ["123","456","789"] ["123","4564","789"] ["123","456","789"] ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-equipment_AntennaModule" ("id", "antennaBeamWidth", "antennaModelNumber", "electricalAntennaTilt", "geo-location", "mechanicalAntennaBearing", "mechanicalAntennaTilt", "positionWithinSector", "totalTilt", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_installed-at-site", "REL_ID_ANTENNAMODULE_INSTALLED_AT_SITE", "REL_CD_sourceIds_ANTENNAMODULE_INSTALLED_AT_SITE", "REL_CD_classifiers_ANTENNAMODULE_INSTALLED_AT_SITE", "REL_CD_decorators_ANTENNAMODULE_INSTALLED_AT_SITE", "REL_FK_grouped-by-sector", "REL_ID_SECTOR_GROUPS_ANTENNAMODULE", "REL_CD_sourceIds_SECTOR_GROUPS_ANTENNAMODULE", "REL_CD_classifiers_SECTOR_GROUPS_ANTENNAMODULE", "REL_CD_decorators_SECTOR_GROUPS_ANTENNAMODULE") FROM stdin;
-urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A \N 5 11 POINT(39.4019881 67.9419888) 6 0 7 -900 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} \N \N [] [] {} Sector=2 urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=44F4F4FC906E9A7525065E4565246F7469CBD11FC7752C61EA6D74776845900AFF472DCAACA1F66443490B6CE0DD9AC9A5E1467022118599F6B4C6EC63400512 [] [] {}
-urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7 \N 5 11 POINT(49.4019881 68.9419888) 6 0 7 -900 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {} \N \N [] [] {} Sector=2 urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_ANTENNAMODULE=CEEC51BE136D671D2101C09FEDD8A1D95E1E177A4818E9FC0D6E63E610BC8FE26FC9C729A1E58AD43D70472F4CD54403E25CB1E5D2BBA66966625C21435C4A78 [] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_OCUCPFunction" ("id", "gNBCUName", "gNBId", "gNBIdLength", "pLMNId", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_managed-by-managedElement", "REL_ID_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION", "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION", "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION", "REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUCPFUNCTION") FROM stdin;
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUCPFunction=9 ocucp-9 9 1 {"mcc":"123","mnc":"82"} ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUCPFunction=9", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUCPFUNCTION=0F7F3F3CEC7B3CDA05A7B7D2874D1EF39EBDAA18AD7D6F43CF219C087510114C59C6B78EC21F8E9C6F19B5F1999FBBA2DF8C3DDF76F416C874508303F0DA4AB4 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUCPFunction=10 ocucp-10 10 2 {"mcc":"456","mnc":"83"} ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUCPFunction=10", "urn:cmHandle:72FDA73D085F138FECC974CB91F1450E"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUCPFUNCTION=7053BF6EEB9769084BB91850C356BF20E3C9D6AD8F0D7212911DC827AD1B4D42AEDA0C43FD5715C94E14334EF49FA09405A976451B777B442BBF397DE89528A4 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,OCUCPFunction=13 ocucp-13 13 2 {"mcc":"789","mnc":"84"} ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,OCUCPFunction=13", "urn:cmHandle:E5196035D0B49A65B00EAA392B4EE155"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUCPFUNCTION=C88ACE9CD7BA7E56FD059C027DA8E4D0ED0A3E13F9E358D5F4A66EE004FC3767A9D20B0512661B6D2F5F82F106725C04C5DC8826D990DECB4D5AD571BE402BE0 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,OCUCPFunction=14 ocucp-14 14 2 {"mcc":"123","mnc":"85"} ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,OCUCPFunction=14", "urn:cmHandle:D67C0BD04FA613BBFD176B24B68FD6A4"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUCPFUNCTION=F23FADEDC45AE38DBC567C57FC4DD5D61D239B0BEF3C93DD54DF85545E6D0C8B9B26A1D3911B56A3F8C2EB148A4F276D1EBAF7EE2D2E35C8B37F008F572DF7B6 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUCPFunction=16 ocucp-16 16 2 {"mcc":"456","mnc":"86"} ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUCPFunction=16", "urn:cmHandle:453431CC154F900606657D584700827A"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUCPFUNCTION=5ECE0941DDBC9B4DEE8492333129A0AB80720CB6005A80B54C4D9247029A41FA42DB6D2C709F71D7ED5D82F5EA90CE2C0B553AC1BD860D8A6DFA218E2E790F1C [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,OCUCPFunction=19 ocucp-19 19 2 {"mcc":"789","mnc":"87"} ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,OCUCPFunction=19", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUCPFUNCTION=63EA5A9F77FE5DED61CF6DC30233AB17A57D6E04283365D7C1976FF646961FAAF1889BBA618029EA10DA8761F8DAA643B707B602D4E61898A2B5259AA0118887 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,OCUCPFunction=28 ocucp-28 28 2 {"mcc":"123","mnc":"88"} ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,OCUCPFunction=28", "urn:cmHandle:30C68865AF2F353F202056CB1921D418"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUCPFUNCTION=CD564BF182FD6DE77816BA69F25B664374AD02D642DF05FF8991E1009E7E09C50E92F6858A1E1B025CFDA933AB769B8C68FBAE0DBBAA140AE321DC55AED6C2A3 [] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_OCUUPFunction" ("id", "gNBId", "gNBIdLength", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_managed-by-managedElement", "REL_ID_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION", "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION", "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION", "REL_CD_decorators_MANAGEDELEMENT_MANAGES_OCUUPFUNCTION") FROM stdin;
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9 9 1 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,OCUUPFunction=9", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUUPFUNCTION=5255F37093F8EB3763CE5F017DFC1E162B44FC9DF6E13744C04DC1832C5E754AB7BE440DBE1187EE8EEE42FD04E652BB8148655C6F977B1FFDDA54FE87C6411A [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUUPFunction=10 10 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,OCUUPFunction=10", "urn:cmHandle:72FDA73D085F138FECC974CB91F1450E"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUUPFUNCTION=80D3B4C44B4F0BEFC7660AF0A4E91F89C8108DA814B09728F848C0C5C10E2D956A73FBC85EB2AE0A7EA4D95308A606856603B53C8C2669A50BCB58B9FC87D7F2 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,OCUUPFunction=13 13 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,OCUUPFunction=13", "urn:cmHandle:E5196035D0B49A65B00EAA392B4EE155"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUUPFUNCTION=29DE1D3B8DA9C9FA1201C36F74FEBE14493F7C674E47E1FFCB6AADEED8EABB0460770EC21E7AC8EEBBB057ABC0E31269AB5C92D941E9BA53877164918C6EFB30 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,OCUUPFunction=14 14 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,OCUUPFunction=14", "urn:cmHandle:D67C0BD04FA613BBFD176B24B68FD6A4"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUUPFUNCTION=4C571BDD5DF9B297C1B249D0242EB9DDC77052BB0A33E62DB851809A075259EE3A0C354FA3978276BD5EE0BBB8CFDBF19F7C3C7017F828B9A2EBAD020E7FDF98 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUUPFunction=16 16 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,OCUUPFunction=16", "urn:cmHandle:453431CC154F900606657D584700827A"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUUPFUNCTION=DD5E12CB8D14C89E1C199BDABBCC71908F76AB04FE8FD7F7334A9A403B5BE0D8BB5DA69B4258C7AF4834BF2D3E00B6D5C263AD38A83A22E7EC673ACE1CAF0CF2 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,OCUUPFunction=19 19 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,OCUUPFunction=19", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUUPFUNCTION=2AF48E294918A4EE0E3E7C783A70841E1DEEF72CDD43FE3CD1DF6531CCA06203B574BE02553254220A637632AECB719951DAE2A3D0487D24EA1A090843563603 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,OCUUPFunction=28 28 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,OCUUPFunction=28", "urn:cmHandle:30C68865AF2F353F202056CB1921D418"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_OCUUPFUNCTION=140E8C8C56B1E717CD992D3FF0C61C04C1633E1FEF17ABB92A9A17C53E18CFAF5D72C4C71415E0026C99671657FB3EC1BD394174DD306261ADA8A6CDF4D42748 [] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_ODUFunction" ("id", "gNBDUId", "gNBId", "gNBIdLength", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_managed-by-managedElement", "REL_ID_MANAGEDELEMENT_MANAGES_ODUFUNCTION", "REL_CD_sourceIds_MANAGEDELEMENT_MANAGES_ODUFUNCTION", "REL_CD_classifiers_MANAGEDELEMENT_MANAGES_ODUFUNCTION", "REL_CD_decorators_MANAGEDELEMENT_MANAGES_ODUFUNCTION") FROM stdin;
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9 \N 9 1 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] ["test-app-module:Indoor","test-app-module:Weekend"] {"test-app-module:textdata":"ORAN"} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=9243B48F7D6A6CF471226915C74CF5FE4BDA6FA3CF7D897473007B46DF7FC50230BD6B8B4256116A6AFBF4D822CF9379EB56DE9490C1C0B54238263F2574B426 [] ["test-app-module:Indoor","test-app-module:Weekend"] {"test-app-module:textdata":"ORAN"}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10 \N 10 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10,ODUFunction=10", "urn:cmHandle:72FDA73D085F138FECC974CB91F1450E"] [] {"test-app-module:textdata":"Budapest","test-app-module:intdata":123} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=10 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=661A89AD3C2702233CD9E96E97E738C05C35EC5FDF32DC78D149B773726350067315B72448D004C938BCD0263F0C4BCCC8A5F9CDD145B9B740983D1523664328 [] ["test-app-module:Rural","test-app-module:Weekend"] {"test-app-module:textdata":"Budapest","test-app-module:intdata":123}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13 \N 13 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13,ODUFunction=13", "urn:cmHandle:E5196035D0B49A65B00EAA392B4EE155"] ["test-app-module:Indoor"] {"test-app-module:textdata":"Stockholm","test-app-module:intdata":456} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=13 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=DD9259A1B57FF2BB9DEC77C29DBFA4A5C49960D80622F603809ACA47E786DDD5C7ABD267D554A7C796477A9B2E02E072A8E682E4ED38F331BFB6DC3827CE4DB7 [] [] {"test-app-module:textdata":"Stockholm","test-app-module:intdata":456}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14 \N 14 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14,ODUFunction=14", "urn:cmHandle:D67C0BD04FA613BBFD176B24B68FD6A4"] ["test-app-module:Rural","test-app-module:Weekend"] {"test-app-module:textdata":"Stockholm","test-app-module:intdata":123} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=14 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6F7BFBD3DA2A9A592084C75242210A33C9DCF10CFCD53B761A6ACCD385132921679EC3C16394A4DEEE5883712C9719511388230151BA84FBF209DFCFB639E2EA [] [] {"test-app-module:textdata":"Stockholm","test-app-module:intdata":123}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16 16 16 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16,ODUFunction=16", "urn:cmHandle:453431CC154F900606657D584700827A"] ["test-app-module:Indoor","test-app-module:Rural","test-app-module:Weekend"] {"test-app-module:textdata":"Stockholm","test-app-module:intdata":123} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=16 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=D67357F682531C7B068486313B0FDAC3E719A166229520196FB9CE917E0236754226A5BCBF7BB7240E516D7ED3FEA852855EC3F121DD4BAFEC5646F2A37F57EE [] ["test-app-module:Indoor","test-app-module:Rural","test-app-module:Weekend"] {"test-app-module:textdata":"Stockholm","test-app-module:intdata":123}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19 \N 19 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=6BD25E5C8FB7842F69010736253CC47F43535D7238E9E9A03E8092E8C019C83270DE47C96EF1049C40B83A130F9F129AE93B9C8538B6B004AE89BD0A098E48DD [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,ODUFunction=28 \N 28 2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28,ODUFunction=28", "urn:cmHandle:30C68865AF2F353F202056CB1921D418"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=28 urn:o-ran:smo:teiv:sha512:MANAGEDELEMENT_MANAGES_ODUFUNCTION=ADD4A82DFBAF0409FA9D3C929A09314088627B447C733429D4EE7AAE2FFAEE4894F90826B6814B63431EC07140783C7861E463C5AF8330E29469D704675EAB43 [] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_NRCellDU" ("id", "cellLocalId", "nCI", "nRPCI", "nRTAC", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_provided-by-oduFunction", "REL_ID_ODUFUNCTION_PROVIDES_NRCELLDU", "REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRCELLDU", "REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRCELLDU", "REL_CD_decorators_ODUFUNCTION_PROVIDES_NRCELLDU", "REL_FK_grouped-by-sector", "REL_ID_SECTOR_GROUPS_NRCELLDU", "REL_CD_sourceIds_SECTOR_GROUPS_NRCELLDU", "REL_CD_classifiers_SECTOR_GROUPS_NRCELLDU", "REL_CD_decorators_SECTOR_GROUPS_NRCELLDU") FROM stdin;
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1 1 1 789 456 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=4E40BE000AFEA418CE1B9ED9E21D38DA51772175BD498BE825D9EA362F9B7393C36AB72F6FDEE702439143D578268A2E84719A9352C8EA70F847B7B7664E047C [] [] {} Sector=2 urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=4BBE73F685A98EF799968ACFE76F376D795F4CC3B56A6B867642048CDF4C1B8E323430EA7C6C38E4031FB891158763CC5459A8704E1A9FBFBD53CE8AD23BF463 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2 2 2 789 456 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=78ECC09D4832328976EF0F9C19699EE05D98E3837368D386AE39AD027543494AC620086BD2A7403DACFAA7B474B3DEBD313E0906F1EDE7FA2B584E16542A706A [] [] {} Sector=2 urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=46AAB2CC5388BECD7B2180C89EEFA64B9A3BC197B614B57FD4BD9ADACE2475A89E16BA04291DE1674FAF2925483E23B8EDCAD4EE98759A9C08E2677CD88F4C43 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3 3 3 789 456 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=714C1B73945C298CAA03FE0D800053CDD1C571BBF375DC647B9F23FDA861CEB369832A3593BB1AA4B8A7245AD187ED24ADDF6FB147130827CDC17BA8370C4838 [] [] {} Sector=2 urn:o-ran:smo:teiv:sha512:SECTOR_GROUPS_NRCELLDU=F892571703F0E20A37F3950818DEFA9991ACF35828EEEBD3E43404218F947E1F522258A1F31F4C82A53E7E60D9E1A7AC7AC4219A0D9DD0D8FD192BC73BBB5101 [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91 91 91 789 456 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=91", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {} \N \N [] [] {} \N \N [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=92 92 92 789 456 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=92", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=DDECCEFB8831FA4EB21B121BA35EAB07ED8D841B5A38580C5F3AD11E66FE73D2FC42E823C6C73288860C7562B610C3D07B6C39FD386171A3BE622096F4B3D006 [] [] {} \N \N [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=93 93 93 789 456 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19,NRCellDU=93", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] ["test-app-module:Rural"] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,ODUFunction=19 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRCELLDU=7723E5D5B3332E0890EAA620C77A6A47065E15A2EA28AD83F3B3CFEA5A7E3BB5965AE78890F1BF000EAA89BF8DE209E506192BF5EA6871426603ED76CBFAF088 [] [] {} \N \N [] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_NRSectorCarrier" ("id", "arfcnDL", "arfcnUL", "bSChannelBwDL", "frequencyDL", "frequencyUL", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_provided-by-oduFunction", "REL_ID_ODUFUNCTION_PROVIDES_NRSECTORCARRIER", "REL_CD_sourceIds_ODUFUNCTION_PROVIDES_NRSECTORCARRIER", "REL_CD_classifiers_ODUFUNCTION_PROVIDES_NRSECTORCARRIER", "REL_CD_decorators_ODUFUNCTION_PROVIDES_NRSECTORCARRIER", "REL_FK_used-by-nrCellDu", "REL_ID_NRCELLDU_USES_NRSECTORCARRIER", "REL_CD_sourceIds_NRCELLDU_USES_NRSECTORCARRIER", "REL_CD_classifiers_NRCELLDU_USES_NRSECTORCARRIER", "REL_CD_decorators_NRCELLDU_USES_NRSECTORCARRIER", "REL_FK_used-antennaCapability", "REL_ID_NRSECTORCARRIER_USES_ANTENNACAPABILITY", "REL_CD_sourceIds_NRSECTORCARRIER_USES_ANTENNACAPABILITY", "REL_CD_classifiers_NRSECTORCARRIER_USES_ANTENNACAPABILITY", "REL_CD_decorators_NRSECTORCARRIER_USES_ANTENNACAPABILITY") FROM stdin;
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=1 507000 507000 10000 2535000 2535000 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=1", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRSECTORCARRIER=BE61426CAEA457C85D8B551A1A75BFA157BBCE6F143110661C4C9D406A7AAF22D8522515CE924CFB3A9E54E68588A45D3A51065BD24ADBA62CC0FDA761AEE2FC [] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1 urn:o-ran:smo:teiv:sha512:NRCELLDU_USES_NRSECTORCARRIER=7B9425BBD6977FEA6C180F6078CFBAEBE65400223B29E0EFA4F38424FAD66C690806778909177ECF1457CAC18E5BCF6FA4F24E3ECE524C89DE68108708D6D876 [] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1 urn:o-ran:smo:teiv:sha512:NRSECTORCARRIER_USES_ANTENNACAPABILITY=11EDFC31E2BE240D3CB15DB1A3FA3B78C828524BC8FCA3365A615129A61A627C21DA8EBF6DD788CDBDEC668344D1F79A371749083D6AE04DDDD57CB4FA8C3ECB [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=2 507000 507000 10000 2535000 2535000 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=2", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRSECTORCARRIER=C0E73797DB4599AB9ECACFC1FFE3543C92926070ECFBE77E7C15BA99DAFBB1D69352533D3DE5EB2D3D3CC84DAD51B242CB0FC594FF9E8B73C3B42106B0F9AF46 [] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2 urn:o-ran:smo:teiv:sha512:NRCELLDU_USES_NRSECTORCARRIER=2F87CE31F38D38B993786E3D75D253984DA2842F71504958AAF052D0728B309C73BB3132D6BEA011748BB0B94F489725DB5765AB5366702B812D5C76A772BD9C [] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1 urn:o-ran:smo:teiv:sha512:NRSECTORCARRIER_USES_ANTENNACAPABILITY=27DF07D016FE349EC565DE2FB09303EE7D8700346624046F79D8DAC176E7FA221E918E3030758B51931C430919E14FD7D16720460F6E1585000C72874A1641DA [] [] {}
-urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=3 507000 507000 10000 2535000 2535000 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRSectorCarrier=3", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9 urn:o-ran:smo:teiv:sha512:ODUFUNCTION_PROVIDES_NRSECTORCARRIER=BD87BC547A6731B2905A989EBA493810C74258337C49BBB288F4F55734D28B4E40D9C719EC3564348253905BD93EC78EB7C88F2297FF20778911635E94800F74 [] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=3 urn:o-ran:smo:teiv:sha512:NRCELLDU_USES_NRSECTORCARRIER=950ED4540349F9859CEA9E47884A28CD567BDD2505A3C5335C8851A7AADF2AF65542157BB42D607EE3847E4223D76DE88B90762D0590E48693822FD6DCAE60CD [] [] {} urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1 urn:o-ran:smo:teiv:sha512:NRSECTORCARRIER_USES_ANTENNACAPABILITY=1B891FCC4F5479BC71127ED2EB43EA26AC3452F8C47792786373442C10BBC408FE5B779BF1CF732C81220803342F4FB969E348F9C5CEEDEC78F9764E186C633F [] [] {}
-\.
-
-COPY ties_data."CFC235E0404703D1E4454647DF8AAE2C193DB402" ("id", "aSide_AntennaModule", "bSide_AntennaCapability", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-urn:o-ran:smo:teiv:sha512:ANTENNAMODULE_SERVES_ANTENNACAPABILITY=ABD52B030DF1169F9F41C898913EF30F7BB5741F53352F482310B280C90AC569B7D31D52A2BB41F1F0099AE1EDD56CACF0B285D145A5584D376DD45DED1E2D65 urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1 [] [] {}
-urn:o-ran:smo:teiv:sha512:ANTENNAMODULE_SERVES_ANTENNACAPABILITY=8940999E2069725B463052BC35572FDB888C7B734459EE78A01B9F91E2607D87356425BC8EFF0B1C9057D852A4D3F9E1B09479D32FEE68C65EF2821B65F7BD80 urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7 urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1 [] [] {}
-\.
-
-COPY ties_data."o-ran-smo-teiv-ran_NRCellCU" ("id", "cellLocalId", "nCI", "nRTAC", "plmnId", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_provided-by-ocucpFunction", "REL_ID_OCUCPFUNCTION_PROVIDES_NRCELLCU", "REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU", "REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU", "REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU") FROM stdin;
-\.
-
-COPY ties_data."o-ran-smo-teiv-equipment_Site" ("id", "geo-location", "name", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-\.
-
--- Test specific entries --
-
-CREATE TABLE IF NOT EXISTS ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" (
- "id" TEXT,
- "6446B2D4BE5E367FB0396383C4BDEF42D51CF74F" TEXT,
- "F03B534AFF0872651FED60C54AB56BEDADAB94B5" BIGINT,
- "333177AA699C0DE6399503171DCF48FB396322B0" INTEGER,
- "027B1A8019C6DEF04558B90D9D8B52253B82FEC6" BIGINT,
- "478D043D81678134EF1C8BFB073A70F882C4AF12" DECIMAL,
- "8252D18D44F633831557076D827993C45278024D" jsonb,
- "68C48305AB6C3A30DD927F5D38562379374A4B31" jsonb,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "REL_FK_provided-by-entityTypeA" TEXT,
- "REL_ID_F64052A4F8BB3CC533EC15BBFB5E224F600735B0" TEXT,
- "REL_CD_F26C39EC1F710F3096BE0588F6783A03A378516A" jsonb,
- "REL_CD_E2C3D598A06EA38133E23C1756ED58A66FE21386" jsonb,
- "REL_CD_92559ED73C761B860682582A040E745ECEC194D5" jsonb
-);
-
-ALTER TABLE ONLY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ALTER COLUMN "REL_CD_F26C39EC1F710F3096BE0588F6783A03A378516A" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ALTER COLUMN "REL_CD_E2C3D598A06EA38133E23C1756ED58A66FE21386" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ALTER COLUMN "REL_CD_92559ED73C761B860682582A040E745ECEC194D5" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" (
- "id" TEXT,
- "aSide_EntityTypeA" TEXT,
- "bSide_A85CE100A012A71EF2ABA306BABE484AC2AAE515" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb
-);
-
-ALTER TABLE ONLY ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."FB1E124031A12CD85D3335194B39B193723A0490" (
- "id" TEXT,
- "aSide_C812C285BEFA4EC42026AB075D9C65200A00F815" TEXT,
- "bSide_A85CE100A012A71EF2ABA306BABE484AC2AAE515" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb
-);
-
-ALTER TABLE ONLY ties_data."FB1E124031A12CD85D3335194B39B193723A0490" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."FB1E124031A12CD85D3335194B39B193723A0490" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."FB1E124031A12CD85D3335194B39B193723A0490" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-CREATE TABLE IF NOT EXISTS ties_data."test-built-in-module_EntityTypeA" (
- "id" TEXT,
- "CD_sourceIds" jsonb,
- "CD_classifiers" jsonb,
- "CD_decorators" jsonb,
- "REL_FK_B7E43411C5C5079D49856E74A9FA63BD20C522C5" TEXT,
- "REL_ID_31A5B55158140557F09AE15589A8B8038416689B" TEXT,
- "REL_CD_AB6BDADE3F6C750C9FDB6CAD6059C4CBCE67236C" jsonb,
- "REL_CD_75B161E740A96ADBAE6F08D4F85684ECC29049B9" jsonb,
- "REL_CD_6F7211CAF505AECF9A565BC7A4AF56E7032CCC54" jsonb,
- "REL_FK_A86937FEBD025CFDF6EE5BC386B4C569EB2652DA" TEXT,
- "REL_ID_A974AD6DD8C4CA281D45693D3A61AE98FEE82845" TEXT,
- "REL_CD_3B43F80D423BF8F96A2906643B7B4712604FC28B" jsonb,
- "REL_CD_74A44B167FDF37D6C8E79B5033FEF8BC384C881A" jsonb,
- "REL_CD_F5B24D9A7273119D4D1519473D9EC88CB407E5CA" jsonb
-);
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "CD_sourceIds" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "CD_classifiers" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "CD_decorators" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "REL_CD_AB6BDADE3F6C750C9FDB6CAD6059C4CBCE67236C" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "REL_CD_75B161E740A96ADBAE6F08D4F85684ECC29049B9" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "REL_CD_6F7211CAF505AECF9A565BC7A4AF56E7032CCC54" SET DEFAULT '{}';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "REL_CD_3B43F80D423BF8F96A2906643B7B4712604FC28B" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "REL_CD_74A44B167FDF37D6C8E79B5033FEF8BC384C881A" SET DEFAULT '[]';
-
-ALTER TABLE ONLY ties_data."test-built-in-module_EntityTypeA" ALTER COLUMN "REL_CD_F5B24D9A7273119D4D1519473D9EC88CB407E5CA" SET DEFAULT '{}';
-
-SELECT ties_data.create_constraint_if_not_exists(
- '10B9F515756871D3EF6558FAF1F112BAE207945D',
- 'PK_7A421D526B36AA9EEF17964BC27011A12FF80DBB',
- 'ALTER TABLE ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ADD CONSTRAINT "PK_7A421D526B36AA9EEF17964BC27011A12FF80DBB" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- '54110F8D085BBBA7BB6DE5CE71B511562090F7EE',
- 'PK_4C48AAFA2160D74F9D13364AA2BE4FDB8A60689D',
- 'ALTER TABLE ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" ADD CONSTRAINT "PK_4C48AAFA2160D74F9D13364AA2BE4FDB8A60689D" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'FB1E124031A12CD85D3335194B39B193723A0490',
- 'PK_020B03AED5787D1B43ABBD9F2C26B494ADDBC7CD',
- 'ALTER TABLE ties_data."FB1E124031A12CD85D3335194B39B193723A0490" ADD CONSTRAINT "PK_020B03AED5787D1B43ABBD9F2C26B494ADDBC7CD" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'test-built-in-module_EntityTypeA',
- 'PK_test-built-in-module_EntityTypeA_id',
- 'ALTER TABLE ties_data."test-built-in-module_EntityTypeA" ADD CONSTRAINT "PK_test-built-in-module_EntityTypeA_id" PRIMARY KEY ("id");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- '10B9F515756871D3EF6558FAF1F112BAE207945D',
- 'FK_B0923C0CCED6CF47CFF759FFE1B810D6CA10D228',
- 'ALTER TABLE ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ADD CONSTRAINT "FK_B0923C0CCED6CF47CFF759FFE1B810D6CA10D228" FOREIGN KEY ("REL_FK_provided-by-entityTypeA") REFERENCES ties_data."test-built-in-module_EntityTypeA" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- '10B9F515756871D3EF6558FAF1F112BAE207945D',
- 'UNIQUE_B1C2FC9A96300B2BE45785DE60E152D8E85FBE14',
- 'ALTER TABLE ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ADD CONSTRAINT "UNIQUE_B1C2FC9A96300B2BE45785DE60E152D8E85FBE14" UNIQUE ("REL_ID_F64052A4F8BB3CC533EC15BBFB5E224F600735B0");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- '54110F8D085BBBA7BB6DE5CE71B511562090F7EE',
- 'FK_2839E6FFDF7F3DF2687DAC3E57082AD6B22E9B30',
- 'ALTER TABLE ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" ADD CONSTRAINT "FK_2839E6FFDF7F3DF2687DAC3E57082AD6B22E9B30" FOREIGN KEY ("aSide_EntityTypeA") REFERENCES ties_data."test-built-in-module_EntityTypeA" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- '54110F8D085BBBA7BB6DE5CE71B511562090F7EE',
- 'FK_33B5669A341584011D9A73FB491FF2242A158057',
- 'ALTER TABLE ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" ADD CONSTRAINT "FK_33B5669A341584011D9A73FB491FF2242A158057" FOREIGN KEY ("bSide_A85CE100A012A71EF2ABA306BABE484AC2AAE515") REFERENCES ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" (id) ON DELETE CASCADE;'
-);
-
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'FB1E124031A12CD85D3335194B39B193723A0490',
- 'FK_2A5C84A2226EE0FCAAA513CC5AF4CD78DDDAF49F',
- 'ALTER TABLE ties_data."FB1E124031A12CD85D3335194B39B193723A0490" ADD CONSTRAINT "FK_2A5C84A2226EE0FCAAA513CC5AF4CD78DDDAF49F" FOREIGN KEY ("aSide_C812C285BEFA4EC42026AB075D9C65200A00F815") REFERENCES ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'FB1E124031A12CD85D3335194B39B193723A0490',
- 'FK_FBFE10B6F165A8EC2086B8DEAFA238E0DD6643F5',
- 'ALTER TABLE ties_data."FB1E124031A12CD85D3335194B39B193723A0490" ADD CONSTRAINT "FK_FBFE10B6F165A8EC2086B8DEAFA238E0DD6643F5" FOREIGN KEY ("bSide_A85CE100A012A71EF2ABA306BABE484AC2AAE515") REFERENCES ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'test-built-in-module_EntityTypeA',
- 'FK_02592FFA6AFD7EAC7AFAD936E3CD50708E4533E0',
- 'ALTER TABLE ties_data."test-built-in-module_EntityTypeA" ADD CONSTRAINT "FK_02592FFA6AFD7EAC7AFAD936E3CD50708E4533E0" FOREIGN KEY ("REL_FK_B7E43411C5C5079D49856E74A9FA63BD20C522C5") REFERENCES ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'test-built-in-module_EntityTypeA',
- 'UNIQUE_7715FF94E14F99CE4994ABBD8C2583CBA9EAE5BD',
- 'ALTER TABLE ties_data."test-built-in-module_EntityTypeA" ADD CONSTRAINT "UNIQUE_7715FF94E14F99CE4994ABBD8C2583CBA9EAE5BD" UNIQUE ("REL_ID_31A5B55158140557F09AE15589A8B8038416689B");'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'test-built-in-module_EntityTypeA',
- 'FK_5CD9BCFA08278DA0BF902BAFBCFCDFCE4FF25FEF',
- 'ALTER TABLE ties_data."test-built-in-module_EntityTypeA" ADD CONSTRAINT "FK_5CD9BCFA08278DA0BF902BAFBCFCDFCE4FF25FEF" FOREIGN KEY ("REL_FK_A86937FEBD025CFDF6EE5BC386B4C569EB2652DA") REFERENCES ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" (id) ON DELETE CASCADE;'
-);
-
-SELECT ties_data.create_constraint_if_not_exists(
- 'test-built-in-module_EntityTypeA',
- 'UNIQUE_67DB5E4BC34AB83BDC069A5CAF73B57967D5C2D9',
- 'ALTER TABLE ties_data."test-built-in-module_EntityTypeA" ADD CONSTRAINT "UNIQUE_67DB5E4BC34AB83BDC069A5CAF73B57967D5C2D9" UNIQUE ("REL_ID_A974AD6DD8C4CA281D45693D3A61AE98FEE82845");'
-);
-
-COPY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ("id", "6446B2D4BE5E367FB0396383C4BDEF42D51CF74F", "F03B534AFF0872651FED60C54AB56BEDADAB94B5", "333177AA699C0DE6399503171DCF48FB396322B0", "027B1A8019C6DEF04558B90D9D8B52253B82FEC6", "478D043D81678134EF1C8BFB073A70F882C4AF12", "8252D18D44F633831557076D827993C45278024D", "68C48305AB6C3A30DD927F5D38562379374A4B31", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-LongEntityType1 someStringValue 9223372036854775807 2147483647 -9223372036854775807 1.1 ["1000", "2000"] {"mcc":"01","mnc":"234"} [] [] {}
-\.
-
-COPY ties_data."test-built-in-module_EntityTypeA" ("id", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_B7E43411C5C5079D49856E74A9FA63BD20C522C5", "REL_ID_31A5B55158140557F09AE15589A8B8038416689B", "REL_CD_AB6BDADE3F6C750C9FDB6CAD6059C4CBCE67236C", "REL_CD_75B161E740A96ADBAE6F08D4F85684ECC29049B9", "REL_CD_6F7211CAF505AECF9A565BC7A4AF56E7032CCC54", "REL_FK_A86937FEBD025CFDF6EE5BC386B4C569EB2652DA", "REL_ID_A974AD6DD8C4CA281D45693D3A61AE98FEE82845", "REL_CD_3B43F80D423BF8F96A2906643B7B4712604FC28B", "REL_CD_74A44B167FDF37D6C8E79B5033FEF8BC384C881A", "REL_CD_F5B24D9A7273119D4D1519473D9EC88CB407E5CA") FROM stdin;
-EntityType1 [] [] {} \N \N [] [] {} LongEntityType1 RelId_OneToOne_EntityType1_LongEntityType1 [] [] {}
-EntityType2 [] [] {} LongEntityType1 Rel_ManyToOne_EntityType2_LongEntityType1 [] [] {} \N \N [] [] {}
-\.
-
-COPY ties_data."10B9F515756871D3EF6558FAF1F112BAE207945D" ("id", "6446B2D4BE5E367FB0396383C4BDEF42D51CF74F", "F03B534AFF0872651FED60C54AB56BEDADAB94B5", "333177AA699C0DE6399503171DCF48FB396322B0", "027B1A8019C6DEF04558B90D9D8B52253B82FEC6", "478D043D81678134EF1C8BFB073A70F882C4AF12", "8252D18D44F633831557076D827993C45278024D", "68C48305AB6C3A30DD927F5D38562379374A4B31", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_provided-by-entityTypeA", "REL_ID_F64052A4F8BB3CC533EC15BBFB5E224F600735B0", "REL_CD_F26C39EC1F710F3096BE0588F6783A03A378516A", "REL_CD_E2C3D598A06EA38133E23C1756ED58A66FE21386", "REL_CD_92559ED73C761B860682582A040E745ECEC194D5") FROM stdin;
-LongEntityType2 \N \N \N \N \N \N \N [] [] {} EntityType2 Rel_OneToMany_EntityType2_LongEntityType2 [] [] {}
-LongEntityType3 \N \N \N \N \N \N \N [] [] {} \N \N [] [] {}
-\.
-
-COPY ties_data."54110F8D085BBBA7BB6DE5CE71B511562090F7EE" ("id", "aSide_EntityTypeA", "bSide_A85CE100A012A71EF2ABA306BABE484AC2AAE515", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-Rel_ManyToMany_EntityType1_LongEntityType1 EntityType1 LongEntityType1 [] [] {}
-\.
-
-COPY ties_data."FB1E124031A12CD85D3335194B39B193723A0490" ("id", "aSide_C812C285BEFA4EC42026AB075D9C65200A00F815", "bSide_A85CE100A012A71EF2ABA306BABE484AC2AAE515", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
-Rel_OneToOne_SameEntity_LongEntityType1_LongEntityType2 LongEntityType1 LongEntityType2 ["urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] ["test-app-module:Weekday"] {"test-app-module:textdata":"ORAN","test-app-module:intdata":123}
-Rel_OneToOne_SameEntity_LongEntityType2_LongEntityType3 LongEntityType2 LongEntityType3 ["urn:cmHandle:C4388D6BB970EC663F88B46CC14F8617"] ["test-app-module:Weekend"] {"test-app-module:textdata":"ORAN","test-app-module:intdata":234}
-\.
-
-COMMIT;
-
BEGIN;
COPY ties_data."responsible_adapter" ("id", "hashed_id") FROM stdin;
-namespace-ran-topology-adapter
-namespace:ran-topology-adapter \\xe7ed2726d18e3eb3c36fd1b932ab7b9a1def21ec
-test-namespace:test-adapter-id \\x866db960e7d78018cbdf401ff8c0db523f0e27bb
+orannamespace-ran-topology-adapter \\xff10444ea1540885f3e34b3670be8bbfd6a780c6
+namespace-ran-topology-adapter \\x5f270b1ee231080eb5ffd2e04077cdcfe60e018a
+test-namespace-test-adapter-id \\x41131feea09d9620d911657a710803ea92414059
ran-topology-adapter \\x5b35d8c6c5f8e8acb48912b8f328ebc9b6924e03
\.
urn:o-ran:smo:teiv:sha512:ANTENNAMODULE_SERVES_ANTENNACAPABILITY=8940999E2069725B463052BC35572FDB888C7B734459EE78A01B9F91E2607D87356425BC8EFF0B1C9057D852A4D3F9E1B09479D32FEE68C65EF2821B65F7BD80 urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7 urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {} {"reliabilityIndicator":"OK"}
\.
+COPY ties_data."o-ran-smo-teiv-rel-equipment-ran_ANTENNAMODULE_SERVES_NRCELLDU" ("id", "aSide_AntennaModule", "bSide_NRCellDU", "CD_sourceIds", "CD_classifiers", "CD_decorators") FROM stdin;
+urn:o-ran:smo:teiv:sha512:ANTENNAMODULE_SERVES_NRCELLDU=ABD52B030DF1169F9F41C898913EF30F7BB5741F53352F482310B280C90AC569B7D31D52A2BB41F1F0099AE1EDD56CACF0B285D145A5584D376DD45DED1E2D65 urn:o-ran:smo:teiv:sha512:AntennaModule=308D6602D2FE1C923DF176A0F30688B1810DFA7BC4AD5B8050BF9E27361ECA86E86B47B8582DC28E8CE92EB81822DE248845E87094557A953FD9F15BA508B03A urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=1 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,NodeSupport=1,SectorEquipmentFunction=1", "urn:cmHandle:C4388D6BB970EC663F88B46CC14F8616"] ["gnbcucp-gnbcuup-model:Weekend"] {"gnbcucp-gnbcuup-model:metadata":"value1"}
+urn:o-ran:smo:teiv:sha512:ANTENNAMODULE_SERVES_NRCELLDU=8940999E2069725B463052BC35572FDB888C7B734459EE78A01B9F91E2607D87356425BC8EFF0B1C9057D852A4D3F9E1B09479D32FEE68C65EF2821B65F7BD80 urn:o-ran:smo:teiv:sha512:AntennaModule=971FCD28D02B78DDD982611639A0957140339C5522EAAF3FBACA1B8308CF7B0A870CFA80AE04E259805B2A2CB95E263261309883B4D4BF50183FA17AFBA47EA7 urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=9,ODUFunction=9,NRCellDU=2 ["urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaUnit=1,AntennaSubunit=1", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,Equipment=1,AntennaUnitGroup=1,AntennaNearUnit=1,RetSubUnit=1", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC", "urn:3gpp:dn:SubNetwork=Europe,SubNetwork=Hungary,MeContext=1,ManagedElement=19,NodeSupport=1,SectorEquipmentFunction=1", "urn:cmHandle:03661FA2E41EF3D12CAAD5954CD985AC"] [] {}
+\.
+
COPY ties_data."o-ran-smo-teiv-ran_NRCellCU" ("id", "cellLocalId", "nCI", "nRTAC", "plmnId", "CD_sourceIds", "CD_classifiers", "CD_decorators", "REL_FK_provided-by-ocucpFunction", "REL_ID_OCUCPFUNCTION_PROVIDES_NRCELLCU", "REL_CD_sourceIds_OCUCPFUNCTION_PROVIDES_NRCELLCU", "REL_CD_classifiers_OCUCPFUNCTION_PROVIDES_NRCELLCU", "REL_CD_decorators_OCUCPFUNCTION_PROVIDES_NRCELLCU") FROM stdin;
\.