ar_redadeg/scripts/phase_3_crea_pk_auto.fmw
MaelReboux 425bac18c4 traitement phase 3
first shot
2019-10-13 14:30:09 +02:00

6412 lines
366 KiB
XML

#! <?xml version="1.0" encoding="UTF-8" ?>
#! <WORKSPACE
# Command-line to run this workspace:
# /Library/FME/2018.1/fme /Users/mael/Documents/Projets/osm-br/github/ar_redadeg/scripts/phase_3_crea_pk_auto.fmw
#
#! ATTR_TYPE_ENCODING="SDF"
#! BEGIN_PYTHON=""
#! BEGIN_TCL=""
#! CATEGORY=""
#! DESCRIPTION=""
#! DESTINATION="NONE"
#! DESTINATION_ROUTING_FILE=""
#! DOC_EXTENTS="20352.5 5068.14"
#! DOC_TOP_LEFT="-884.94 -5797.88"
#! END_PYTHON=""
#! END_TCL=""
#! EXPLICIT_BOOKMARK_ORDER="false"
#! FME_BUILD_NUM="18592"
#! FME_DOCUMENT_GUID="00bed0b1-fca5-4fcc-99dc-38c81c44c83d"
#! FME_DOCUMENT_PRIORGUID="ec48362c-d521-47d4-940c-d9501b244329,f59eeb9d-9e2e-4d0f-a58d-ec36bc84549d,2d964e41-f289-429b-ad23-e76694afd136,fa267cff-6542-464f-b818-7383bf82218b,c5393078-3bfe-435c-871d-8c0cd85ad320,3671863a-0eef-457e-b791-f72d539427ee,7a946f52-0947-47a5-ae43-82ec7f322a14,3085a070-9212-46fa-ab13-aa63ad2522b9,199dc742-91b7-476d-b40d-e28dc2109970,ccfd3317-e976-4fda-9a2f-f0f23014cffd"
#! FME_GEOMETRY_HANDLING="Enhanced"
#! FME_IMPLICIT_CSMAP_REPROJECTION_MODE="Auto"
#! FME_REPROJECTION_ENGINE="FME"
#! FME_SERVER_SERVICES=""
#! FME_STROKE_MAX_DEVIATION="0"
#! HISTORY=""
#! IGNORE_READER_FAILURE="No"
#! LAST_SAVE_BUILD="FME(R) 2018.1.2.1 (20190319 - Build 18592 - macosx)"
#! LAST_SAVE_DATE="2019-10-13T14:24:26"
#! LOG_FILE=""
#! LOG_MAX_RECORDED_FEATURES="200"
#! MARKDOWN_DESCRIPTION=""
#! MARKDOWN_USAGE=""
#! MAX_LOG_FEATURES="200"
#! MULTI_WRITER_DATASET_ORDER="BY_ID"
#! PASSWORD=""
#! PYTHON_COMPATIBILITY="36"
#! REDIRECT_TERMINATORS="NONE"
#! SHOW_ANNOTATIONS="true"
#! SHOW_INFO_NODES="true"
#! SOURCE="NONE"
#! SOURCE_ROUTING_FILE=""
#! TERMINATE_REJECTED="NO"
#! TITLE=""
#! USAGE=""
#! USE_MARKDOWN=""
#! VIEW_POSITION="9287.05 -2788.07"
#! WARN_INVALID_XFORM_PARAM="Yes"
#! WORKSPACE_VERSION="1"
#! ZOOM_SCALE="92"
#! >
#! <DATASETS>
#! <DATASET
#! IS_SOURCE="true"
#! ROLE="READER"
#! FORMAT="POSTGIS"
#! DATASET="$(SourceDataset_POSTGIS_3)"
#! KEYWORD="POSTGIS_1"
#! MULTI_GEOM_ALLOWED="false"
#! ATTR_MAX_LENGTH="0"
#! ATTR_CASE="ANY"
#! ALLOWED_FEAT_TYPES=""
#! WRITE_DEFS="true"
#! DEFLINE_TEMPLATE="postgis_sql_where_clause &quot;&quot; postgis_sql_statement &quot;&quot;"
#! DEFLINE_ATTRS="true"
#! EXPOSABLE_ATTRS="fme_color char(50) postgis_collection_id int4 fme_geometry char(50) multi_reader_id int4 fme_basename char(50) fme_text_size float8 fme_start_angle float8 multi_reader_keyword char(50) multi_reader_type char(50) fme_text_string char(50) fme_sweep_angle float8 fme_secondary_axis float8 fme_type char(50) multi_reader_full_id int4 fme_primary_axis float8 fme_dataset char(50) postgis_collection_part_id int4 postgis_type char(50) fme_feature_type char(50) fme_rotation float8 postgres_oid int4 fme_fill_color char(50)"
#! DEFLINE_PARMS="&quot;GUI OPTIONAL NAMEDGROUP postgis_query_settings_group postgis_sql_where_clause%postgis_sql_statement Table&quot; &quot;&quot; &quot;GUI OPTIONAL TEXT_EDIT_SQL_CFG postgis_sql_where_clause MODE,WHERE;FORMAT,POSTGIS WHERE Clause&quot; &quot;&quot; &quot;GUI OPTIONAL TEXT_EDIT_SQL_CFG postgis_sql_statement MODE,SQL;FORMAT,POSTGIS SELECT Statement&quot; &quot;&quot; "
#! ATTR_INDEX_TYPES="BTree RTree Hash PrimaryKey"
#! ATTR_NAME_INVALID_CHARS=""
#! SUPPORTS_FEATURE_TYPE_FANOUT="true"
#! ENABLED="true"
#! DYNAMIC_FEATURE_TYPES_LIST_ON_MERGE="true"
#! DATASET_TYPE="DATABASE"
#! GENERATE_FME_BUILD_NUM="18592"
#! COORDSYS=""
#! FEATURE_TYPES=""
#! MAX_FEATURES=""
#! MAX_FEATURES_PER_FEATURE_TYPE=""
#! MIN_FEATURES=""
#! START_FEATURE=""
#! >
#! <METAFILE_PARAMETER
#! NAME="ADVANCED_PARMS"
#! VALUE="POSTGIS_IN_FEATURES_PER_FETCH POSTGIS_IN_BEGIN_SQL POSTGIS_IN_END_SQL POSTGIS_IN_SEARCH_METHOD POSTGIS_OUT_BULK_COPY POSTGIS_OUT_INSERT_TEXT_GEOMETRY POSTGIS_OUT_TRANSACTION_INTERVAL POSTGIS_OUT_BEGIN_SQL POSTGIS_OUT_END_SQL"
#! />
#! <METAFILE_PARAMETER
#! NAME="ATTRIBUTE_READING"
#! VALUE="DEFLINE_ATTRS"
#! />
#! <METAFILE_PARAMETER
#! NAME="ATTRIBUTE_READING_HISTORIC"
#! VALUE="ALL"
#! />
#! <METAFILE_PARAMETER
#! NAME="DATASET_NAME"
#! VALUE="Database"
#! />
#! <METAFILE_PARAMETER
#! NAME="FEATURE_TYPE_DEFAULT_NAME"
#! VALUE="Table1"
#! />
#! <METAFILE_PARAMETER
#! NAME="FEATURE_TYPE_NAME"
#! VALUE="Table"
#! />
#! <METAFILE_PARAMETER
#! NAME="NETWORK_AUTHENTICATION"
#! VALUE="NO"
#! />
#! <METAFILE_PARAMETER
#! NAME="NETWORK_PROXY"
#! VALUE="NO"
#! />
#! <METAFILE_PARAMETER
#! NAME="SUPPORTS_SCHEMA_IN_FEATURE_TYPE_NAME"
#! VALUE="YES"
#! />
#! </DATASET>
#! <DATASET
#! IS_SOURCE="true"
#! ROLE="READER"
#! FORMAT="POSTGRES"
#! DATASET="$(SourceDataset_POSTGRES)"
#! KEYWORD="POSTGRES_1"
#! MULTI_GEOM_ALLOWED="false"
#! ATTR_MAX_LENGTH="0"
#! ATTR_CASE="ANY"
#! ALLOWED_FEAT_TYPES=""
#! WRITE_DEFS="true"
#! DEFLINE_TEMPLATE="postgres_type {FME_GEN_GEOMETRY} postgres_sql_where_clause &quot;&quot; postgres_sql_statement &quot;&quot;"
#! DEFLINE_ATTRS="true"
#! EXPOSABLE_ATTRS="fme_color char(50) fme_geometry char(50) multi_reader_id int4 fme_basename char(50) fme_text_size float8 fme_start_angle float8 multi_reader_keyword char(50) multi_reader_type char(50) fme_text_string char(50) fme_sweep_angle float8 fme_secondary_axis float8 fme_type char(50) postgres_type char(50) multi_reader_full_id int4 fme_primary_axis float8 fme_dataset char(50) fme_feature_type char(50) fme_rotation float8 postgres_oid int4 fme_fill_color char(50)"
#! DEFLINE_PARMS="&quot;GUI OPTIONAL NAMEDGROUP postgres_query_settings_group postgres_sql_where_clause%postgres_sql_statement Table&quot; &quot;&quot; &quot;GUI OPTIONAL TEXT_EDIT_SQL_CFG postgres_sql_where_clause MODE,WHERE;FORMAT,POSTGRES WHERE Clause&quot; &quot;&quot; &quot;GUI OPTIONAL TEXT_EDIT_SQL_CFG postgres_sql_statement MODE,SQL;FORMAT,POSTGRES SELECT Statement&quot; &quot;&quot; "
#! ATTR_INDEX_TYPES="BTree RTree Hash PrimaryKey"
#! ATTR_NAME_INVALID_CHARS=""
#! SUPPORTS_FEATURE_TYPE_FANOUT="true"
#! ENABLED="true"
#! DYNAMIC_FEATURE_TYPES_LIST_ON_MERGE="true"
#! DATASET_TYPE="DATABASE"
#! GENERATE_FME_BUILD_NUM="18592"
#! COORDSYS=""
#! FEATURE_TYPES=""
#! MAX_FEATURES=""
#! MAX_FEATURES_PER_FEATURE_TYPE=""
#! MIN_FEATURES=""
#! START_FEATURE=""
#! >
#! <METAFILE_PARAMETER
#! NAME="ADVANCED_PARMS"
#! VALUE="POSTGRES_IN_FEATURES_PER_FETCH POSTGRES_IN_BEGIN_SQL POSTGRES_IN_END_SQL POSTGRES_OUT_BULK_COPY POSTGRES_OUT_TRANSACTION_INTERVAL POSTGRES_OUT_BEGIN_SQL POSTGRES_OUT_END_SQL"
#! />
#! <METAFILE_PARAMETER
#! NAME="ATTRIBUTE_READING"
#! VALUE="DEFLINE_ATTRS"
#! />
#! <METAFILE_PARAMETER
#! NAME="ATTRIBUTE_READING_HISTORIC"
#! VALUE="ALL"
#! />
#! <METAFILE_PARAMETER
#! NAME="DATASET_NAME"
#! VALUE="Database"
#! />
#! <METAFILE_PARAMETER
#! NAME="FEATURE_TYPE_DEFAULT_NAME"
#! VALUE="Table1"
#! />
#! <METAFILE_PARAMETER
#! NAME="FEATURE_TYPE_NAME"
#! VALUE="Table"
#! />
#! <METAFILE_PARAMETER
#! NAME="NETWORK_AUTHENTICATION"
#! VALUE="NO"
#! />
#! <METAFILE_PARAMETER
#! NAME="NETWORK_PROXY"
#! VALUE="NO"
#! />
#! <METAFILE_PARAMETER
#! NAME="PARAMS_TO_NOT_PROPAGATE_ON_INSPECT"
#! VALUE="BEGIN_SQL{0} END_SQL{0}"
#! />
#! <METAFILE_PARAMETER
#! NAME="SUPPORTS_SCHEMA_IN_FEATURE_TYPE_NAME"
#! VALUE="YES"
#! />
#! </DATASET>
#! <DATASET
#! IS_SOURCE="false"
#! ROLE="WRITER"
#! FORMAT="GEOJSON"
#! DATASET="$(DestDataset_GEOJSON)"
#! KEYWORD="GEOJSON_1"
#! MULTI_GEOM_ALLOWED="true"
#! ATTR_MAX_LENGTH="600"
#! ATTR_CASE="ANY"
#! ALLOWED_FEAT_TYPES=""
#! WRITE_DEFS="true"
#! DEFLINE_TEMPLATE=""
#! DEFLINE_ATTRS="true"
#! EXPOSABLE_ATTRS="fme_feature_type string fme_basename string fme_type string fme_geometry string fme_fill_color string fme_rotation float fme_text_size float fme_dataset string fme_text_string string fme_sweep_angle float fme_start_angle float fme_color string fme_secondary_axis float fme_primary_axis float"
#! DEFLINE_PARMS=""
#! ATTR_INDEX_TYPES=""
#! ATTR_NAME_INVALID_CHARS=""
#! SUPPORTS_FEATURE_TYPE_FANOUT="true"
#! ENABLED="true"
#! DYNAMIC_FEATURE_TYPES_LIST_ON_MERGE="true"
#! DATASET_TYPE="FILE"
#! GENERATE_FME_BUILD_NUM="18578"
#! COORDSYS="EPSG:2154"
#! FANOUT_EXPRESSION="&lt;Unused&gt;"
#! FANOUT_GROUP="NO"
#! >
#! <METAFILE_PARAMETER
#! NAME="DATASET_NAME"
#! VALUE="json file"
#! />
#! <METAFILE_PARAMETER
#! NAME="MIME_TYPE"
#! VALUE="application/geo+json ADD_DISPOSITION"
#! />
#! <METAFILE_PARAMETER
#! NAME="READER_DATASET_HINT"
#! VALUE="Select the GeoJSON file(s) or type the GeoJSON URL"
#! />
#! <METAFILE_PARAMETER
#! NAME="WRITER_DATASET_HINT"
#! VALUE="Specify a name for the GeoJSON file"
#! />
#! </DATASET>
#! <DATASET
#! IS_SOURCE="false"
#! ROLE="WRITER"
#! FORMAT="GEOJSON"
#! DATASET="$(DestDataset_GEOJSON_4)"
#! KEYWORD="GEOJSON_2"
#! MULTI_GEOM_ALLOWED="true"
#! ATTR_MAX_LENGTH="600"
#! ATTR_CASE="ANY"
#! ALLOWED_FEAT_TYPES=""
#! WRITE_DEFS="true"
#! DEFLINE_TEMPLATE=""
#! DEFLINE_ATTRS="true"
#! EXPOSABLE_ATTRS="fme_feature_type string fme_basename string fme_type string fme_geometry string fme_fill_color string fme_rotation float fme_text_size float fme_dataset string fme_text_string string fme_sweep_angle float fme_start_angle float fme_color string fme_secondary_axis float fme_primary_axis float"
#! DEFLINE_PARMS=""
#! ATTR_INDEX_TYPES=""
#! ATTR_NAME_INVALID_CHARS=""
#! SUPPORTS_FEATURE_TYPE_FANOUT="true"
#! ENABLED="true"
#! DYNAMIC_FEATURE_TYPES_LIST_ON_MERGE="true"
#! DATASET_TYPE="FILE"
#! GENERATE_FME_BUILD_NUM="18578"
#! COORDSYS="EPSG:2154"
#! FANOUT_EXPRESSION="&lt;Unused&gt;"
#! FANOUT_GROUP="NO"
#! >
#! <METAFILE_PARAMETER
#! NAME="DATASET_NAME"
#! VALUE="json file"
#! />
#! <METAFILE_PARAMETER
#! NAME="MIME_TYPE"
#! VALUE="application/geo+json ADD_DISPOSITION"
#! />
#! <METAFILE_PARAMETER
#! NAME="READER_DATASET_HINT"
#! VALUE="Select the GeoJSON file(s) or type the GeoJSON URL"
#! />
#! <METAFILE_PARAMETER
#! NAME="WRITER_DATASET_HINT"
#! VALUE="Specify a name for the GeoJSON file"
#! />
#! </DATASET>
#! <DATASET
#! IS_SOURCE="false"
#! ROLE="WRITER"
#! FORMAT="POSTGIS"
#! DATASET="$(DestDataset_POSTGIS)"
#! KEYWORD="POSTGIS_2"
#! MULTI_GEOM_ALLOWED="true"
#! ATTR_MAX_LENGTH="63"
#! ATTR_CASE="LOWER"
#! ALLOWED_FEAT_TYPES=""
#! WRITE_DEFS="true"
#! DEFLINE_TEMPLATE="postgis_type postgis_geometry postgis_mode &quot;&quot; postgis_sql_key_columns &quot;&quot; postgis_drop_table &quot;&quot; postgis_truncate_table &quot;&quot; fme_feature_operation INSERT fme_table_handling CREATE_IF_MISSING fme_selection_method MATCH_COLUMNS fme_match_columns &quot;&quot; fme_where_builder_clause &quot;&quot; fme_update_geometry YES postgis_create_with_oids NO postgis_create_gist_index YES postgis_spatial_column_type geometry postgis_spatial_column geom postgis_srid &quot;&quot; postgis_vacuum_analyze no postgis_allow_serial_writing NO"
#! DEFLINE_ATTRS="true"
#! EXPOSABLE_ATTRS="fme_color char(50) postgis_collection_id int4 fme_geometry char(50) fme_db_operation char(8) fme_basename char(50) fme_text_size float8 fme_start_angle float8 fme_text_string char(50) fme_sweep_angle float8 fme_secondary_axis float8 fme_type char(50) fme_primary_axis float8 fme_dataset char(50) postgis_collection_part_id int4 postgis_type char(50) fme_feature_type char(50) fme_rotation float8 fme_fill_color char(50)"
#! DEFLINE_PARMS="&quot;GUI OPTIONAL NAMEDGROUP fme_configuration_group fme_configuration_common_group%fme_spatial_group%fme_advanced_group%oracle_advanced_group Table&quot; &quot;&quot; &quot;GUI OPTIONAL NAMEDGROUP fme_configuration_common_group fme_feature_operation%fme_table_handling%oracle_model%fme_update_geometry%fme_selection_group%fme_table_creation_group General&quot; &quot;&quot; &quot;GUI ACTIVECHOICE_LOOKUP fme_feature_operation Insert,INSERT,fme_update_geometry,fme_selection_group%Update,UPDATE,++fme_table_handling+USE_EXISTING,++fme_selection_group+FME_DISCLOSURE_OPEN%Delete,DELETE,++fme_table_handling+USE_EXISTING,fme_update_geometry,++fme_selection_group+FME_DISCLOSURE_OPEN,fme_spatial_group,fme_advanced_group,oracle_sequenced_cols%&lt;at&gt;Value&lt;openparen&gt;fme_db_operation&lt;closeparen&gt;,MULTIPLE,++fme_table_handling+USE_EXISTING,++fme_selection_group+FME_DISCLOSURE_OPEN Feature Operation&quot; INSERT &quot;GUI ACTIVECHOICE_LOOKUP fme_table_handling Use&lt;space&gt;Existing,USE_EXISTING,fme_table_creation_group%Create&lt;space&gt;If&lt;space&gt;Needed,CREATE_IF_MISSING%Drop&lt;space&gt;and&lt;space&gt;Create,DROP_CREATE%Truncate&lt;space&gt;Existing,TRUNCATE_EXISTING,fme_table_creation_group Table Handling&quot; CREATE_IF_MISSING &quot;GUI WHOLE_LINE LOOKUP_CHOICE fme_update_geometry Yes,YES%No,NO Update Spatial Column(s)&quot; YES &quot;GUI OPTIONAL DISCLOSUREGROUP fme_selection_group fme_selection_method Row Selection&quot; &quot;&quot; &quot;GUI OPTIONAL WHOLE_LINE RADIOPARAMETERGROUP fme_selection_method fme_match_columns,MATCH_COLUMNS%fme_where_builder_clause,BUILDER Row Selection Method&quot; MATCH_COLUMNS &quot;GUI WHOLE_LINE ATTRLIST_COMMAS fme_match_columns \&quot; \&quot; Match Columns&quot; &quot;&quot; &quot;GUI WHOLE_LINE TEXT_EDIT_SQL_CFG_OR_ATTR fme_where_builder_clause MODE,WHERE WHERE Clause&quot; &quot;&quot; &quot;GUI OPTIONAL DISCLOSUREGROUP fme_table_creation_group postgis_create_with_oids%postgis_create_gist_index Table Creation Parameters&quot; &quot;&quot; &quot;GUI CHOICE postgis_create_with_oids YES%NO Create With OIDs&quot; NO &quot;GUI CHOICE postgis_create_gist_index YES%NO Create GiST Index&quot; YES &quot;GUI OPTIONAL NAMEDGROUP fme_spatial_group postgis_spatial_column_type%postgis_spatial_column%postgis_srid Spatial&quot; &quot;&quot; &quot;GUI LOOKUP_CHOICE postgis_spatial_column_type Geometry,geometry%Geography,geography Spatial Type&quot; geometry &quot;GUI OPTIONAL WHOLE_LINE TEXT postgis_spatial_column Spatial Column&quot; geom &quot;GUI OPTIONAL FLOAT postgis_srid Spatial Column SRID&quot; &quot;&quot; &quot;GUI OPTIONAL DISCLOSUREGROUP fme_advanced_group postgis_vacuum_analyze%postgis_allow_serial_writing Advanced&quot; &quot;&quot; &quot;GUI CHOICE postgis_vacuum_analyze YES%NO Vacuum Analyze Table&quot; NO &quot;GUI CHOICE postgis_allow_serial_writing YES%NO Allow Serial Column Writing&quot; NO "
#! ATTR_INDEX_TYPES="BTree RTree Hash PrimaryKey"
#! ATTR_NAME_INVALID_CHARS=". %-#[]&quot;()!?*&apos;&amp;+\/"
#! SUPPORTS_FEATURE_TYPE_FANOUT="true"
#! ENABLED="true"
#! DYNAMIC_FEATURE_TYPES_LIST_ON_MERGE="true"
#! DATASET_TYPE="DATABASE"
#! GENERATE_FME_BUILD_NUM="18592"
#! COORDSYS="EPSG:2154"
#! >
#! <METAFILE_PARAMETER
#! NAME="ADVANCED_PARMS"
#! VALUE="POSTGIS_IN_FEATURES_PER_FETCH POSTGIS_IN_BEGIN_SQL POSTGIS_IN_END_SQL POSTGIS_IN_SEARCH_METHOD POSTGIS_OUT_BULK_COPY POSTGIS_OUT_INSERT_TEXT_GEOMETRY POSTGIS_OUT_TRANSACTION_INTERVAL POSTGIS_OUT_BEGIN_SQL POSTGIS_OUT_END_SQL"
#! />
#! <METAFILE_PARAMETER
#! NAME="ATTRIBUTE_READING"
#! VALUE="DEFLINE_ATTRS"
#! />
#! <METAFILE_PARAMETER
#! NAME="ATTRIBUTE_READING_HISTORIC"
#! VALUE="ALL"
#! />
#! <METAFILE_PARAMETER
#! NAME="DATASET_NAME"
#! VALUE="Database"
#! />
#! <METAFILE_PARAMETER
#! NAME="FEATURE_TYPE_DEFAULT_NAME"
#! VALUE="Table1"
#! />
#! <METAFILE_PARAMETER
#! NAME="FEATURE_TYPE_NAME"
#! VALUE="Table"
#! />
#! <METAFILE_PARAMETER
#! NAME="NETWORK_AUTHENTICATION"
#! VALUE="NO"
#! />
#! <METAFILE_PARAMETER
#! NAME="NETWORK_PROXY"
#! VALUE="NO"
#! />
#! <METAFILE_PARAMETER
#! NAME="SUPPORTS_SCHEMA_IN_FEATURE_TYPE_NAME"
#! VALUE="YES"
#! />
#! </DATASET>
#! </DATASETS>
#! <DATA_TYPES>
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bool"
#! FME_TYPE="fme_boolean"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="char(width)"
#! FME_TYPE="fme_char(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="varchar(width)"
#! FME_TYPE="fme_varchar(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="text"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="xml"
#! FME_TYPE="fme_xml"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="json"
#! FME_TYPE="fme_json"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="jsonb"
#! FME_TYPE="fme_json"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_binarybuffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_varbinary(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_binary(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_int16"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_int8"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_uint8"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int4"
#! FME_TYPE="fme_int32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int4"
#! FME_TYPE="fme_uint16"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int8"
#! FME_TYPE="fme_int64"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int8"
#! FME_TYPE="fme_uint32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="numeric(width,decimal)"
#! FME_TYPE="fme_decimal(width,decimal)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="numeric(20,0)"
#! FME_TYPE="fme_uint64"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="oid"
#! FME_TYPE="fme_uint32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="serial"
#! FME_TYPE="fme_int32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="float4"
#! FME_TYPE="fme_real32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="money"
#! FME_TYPE="fme_real32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="float8"
#! FME_TYPE="fme_real64"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="date"
#! FME_TYPE="fme_date"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="time"
#! FME_TYPE="fme_time"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="timetz"
#! FME_TYPE="fme_time"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="timestamp"
#! FME_TYPE="fme_datetime"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="timestamptz"
#! FME_TYPE="fme_datetime"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="uuid"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bit(width)"
#! FME_TYPE="fme_char(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="varbit"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="varbit(width)"
#! FME_TYPE="fme_varchar(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bool"
#! FME_TYPE="fme_boolean"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="char(width)"
#! FME_TYPE="fme_char(width)"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="varchar(width)"
#! FME_TYPE="fme_varchar(width)"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="text"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="xml"
#! FME_TYPE="fme_xml"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="json"
#! FME_TYPE="fme_json"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="jsonb"
#! FME_TYPE="fme_json"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_binarybuffer"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_varbinary(width)"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_binary(width)"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_int16"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_int8"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_uint8"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int4"
#! FME_TYPE="fme_int32"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int4"
#! FME_TYPE="fme_uint16"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int8"
#! FME_TYPE="fme_int64"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="int8"
#! FME_TYPE="fme_uint32"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="numeric(width,decimal)"
#! FME_TYPE="fme_decimal(width,decimal)"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="numeric(20,0)"
#! FME_TYPE="fme_uint64"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="oid"
#! FME_TYPE="fme_uint32"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="serial"
#! FME_TYPE="fme_int32"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="float4"
#! FME_TYPE="fme_real32"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="money"
#! FME_TYPE="fme_real32"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="float8"
#! FME_TYPE="fme_real64"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="date"
#! FME_TYPE="fme_date"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="time"
#! FME_TYPE="fme_time"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="timetz"
#! FME_TYPE="fme_time"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="timestamp"
#! FME_TYPE="fme_datetime"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="timestamptz"
#! FME_TYPE="fme_datetime"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="uuid"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="bit(width)"
#! FME_TYPE="fme_char(width)"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="varbit"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="varbit(width)"
#! FME_TYPE="fme_varchar(width)"
#! FORMAT="POSTGRES"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="bool"
#! FME_TYPE="fme_boolean"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="char(width)"
#! FME_TYPE="fme_char(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="varchar(width)"
#! FME_TYPE="fme_varchar(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="text"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="xml"
#! FME_TYPE="fme_xml"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json"
#! FME_TYPE="fme_json"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="jsonb"
#! FME_TYPE="fme_json"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_binarybuffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_varbinary(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="bytea"
#! FME_TYPE="fme_binary(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_int16"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_int8"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int2"
#! FME_TYPE="fme_uint8"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int4"
#! FME_TYPE="fme_int32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int4"
#! FME_TYPE="fme_uint16"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int8"
#! FME_TYPE="fme_int64"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int8"
#! FME_TYPE="fme_uint32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="numeric(width,decimal)"
#! FME_TYPE="fme_decimal(width,decimal)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="numeric(20,0)"
#! FME_TYPE="fme_uint64"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="oid"
#! FME_TYPE="fme_uint32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="serial"
#! FME_TYPE="fme_int32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="float4"
#! FME_TYPE="fme_real32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="money"
#! FME_TYPE="fme_real32"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="float8"
#! FME_TYPE="fme_real64"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="date"
#! FME_TYPE="fme_date"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="time"
#! FME_TYPE="fme_time"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="timetz"
#! FME_TYPE="fme_time"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="timestamp"
#! FME_TYPE="fme_datetime"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="timestamptz"
#! FME_TYPE="fme_datetime"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="uuid"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="bit(width)"
#! FME_TYPE="fme_char(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="varbit"
#! FME_TYPE="fme_buffer"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="varbit(width)"
#! FME_TYPE="fme_varchar(width)"
#! FORMAT="POSTGIS"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_buffer"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_binarybuffer"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_xml"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_varchar(width)"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_varbinary(width)"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="boolean"
#! FME_TYPE="fme_boolean"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_char(width)"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_binary(width)"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_datetime"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_time"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_date"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="float"
#! FME_TYPE="fme_real64"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="float"
#! FME_TYPE="fme_real32"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int"
#! FME_TYPE="fme_int64"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_uint64"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int"
#! FME_TYPE="fme_int32"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int"
#! FME_TYPE="fme_uint32"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int"
#! FME_TYPE="fme_int16"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int"
#! FME_TYPE="fme_uint16"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int"
#! FME_TYPE="fme_int8"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="int"
#! FME_TYPE="fme_uint8"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="string"
#! FME_TYPE="fme_decimal(width,decimal)"
#! FORMAT="GEOJSON"
#! />
#! <DATA_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json"
#! FME_TYPE="fme_json"
#! FORMAT="GEOJSON"
#! />
#! </DATA_TYPES>
#! <GEOM_TYPES>
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipoint"
#! FME_TYPE="fme_point"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_point"
#! FME_TYPE="fme_point"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multilinestring"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multicurve"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_linestring"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_circularstring"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_compoundcurve"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multisurface"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_polygon"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_curvepolygon"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_rectangle"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_rounded_rectangle"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipoint"
#! FME_TYPE="fme_text"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_ellipse"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multilinestring"
#! FME_TYPE="fme_arc"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_triangle"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_polyhedralsurface"
#! FME_TYPE="fme_surface"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_polyhedralsurface"
#! FME_TYPE="fme_solid"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_tin"
#! FME_TYPE="fme_surface"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_none"
#! FME_TYPE="fme_no_geom"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_geometry"
#! FME_TYPE="fme_no_geom"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_geometrycollection"
#! FME_TYPE="fme_collection"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_raster"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_point_cloud"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgis_none"
#! FME_TYPE="fme_feature_table"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_no_geom"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_point"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_rectangle"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_rounded_rectangle"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_text"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_ellipse"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_arc"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_collection"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_raster"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_surface"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_solid"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_point_cloud"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="true"
#! FORMAT_TYPE="postgres_none"
#! FME_TYPE="fme_feature_table"
#! FORMAT="POSTGRES"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipoint"
#! FME_TYPE="fme_point"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_point"
#! FME_TYPE="fme_point"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multilinestring"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multicurve"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_linestring"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_circularstring"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_compoundcurve"
#! FME_TYPE="fme_line"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multisurface"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_polygon"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_curvepolygon"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_rectangle"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_rounded_rectangle"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipoint"
#! FME_TYPE="fme_text"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_ellipse"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multilinestring"
#! FME_TYPE="fme_arc"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_triangle"
#! FME_TYPE="fme_area"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_polyhedralsurface"
#! FME_TYPE="fme_surface"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_polyhedralsurface"
#! FME_TYPE="fme_solid"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_tin"
#! FME_TYPE="fme_surface"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_none"
#! FME_TYPE="fme_no_geom"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_geometry"
#! FME_TYPE="fme_no_geom"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_geometrycollection"
#! FME_TYPE="fme_collection"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_raster"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_multipolygon"
#! FME_TYPE="fme_point_cloud"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="postgis_none"
#! FME_TYPE="fme_feature_table"
#! FORMAT="POSTGIS"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_point"
#! FME_TYPE="fme_point"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_line"
#! FME_TYPE="fme_line"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_polygon"
#! FME_TYPE="fme_area"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_text"
#! FME_TYPE="fme_text"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_ellipse"
#! FME_TYPE="fme_ellipse"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_arc"
#! FME_TYPE="fme_arc"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_rectangle"
#! FME_TYPE="fme_rectangle"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_rounded_rectangle"
#! FME_TYPE="fme_rounded_rectangle"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_raster"
#! FME_TYPE="fme_raster"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_no_geom"
#! FME_TYPE="fme_no_geom"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_collection"
#! FME_TYPE="fme_collection"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_line"
#! FME_TYPE="fme_surface"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_line"
#! FME_TYPE="fme_solid"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_polygon"
#! FME_TYPE="fme_point_cloud"
#! FORMAT="GEOJSON"
#! />
#! <GEOM_TYPE
#! IS_SOURCE="false"
#! FORMAT_TYPE="json_no_geom"
#! FME_TYPE="fme_feature_table"
#! FORMAT="GEOJSON"
#! />
#! </GEOM_TYPES>
#! <FEATURE_TYPES>
#! <FEATURE_TYPE
#! IS_SOURCE="false"
#! NODE_NAME="phase_2_trace_pgr"
#! FEATURE_TYPE_NAME=""
#! FEATURE_TYPE_NAME_QUALIFIER=""
#! IS_EDITABLE="true"
#! IDENTIFIER="86"
#! FEAT_GEOMTYPE="All"
#! POSITION="4600.5477432552107 -1107.2309445316673"
#! BOUNDING_RECT="4600.5477432552107 -1107.2309445316673 -1 -1"
#! ORDER="500000000000066"
#! COLLAPSED="false"
#! KEYWORD="GEOJSON_1"
#! PARMS_EDITED="true"
#! ENABLED="false"
#! SCHEMA_ATTRIBUTE_SOURCE="1"
#! >
#! <FEAT_ATTRIBUTE ATTR_NAME="troncon_id" ATTR_TYPE="int" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="secteur_id" ATTR_TYPE="int" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="path_seq" ATTR_TYPE="int" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="node" ATTR_TYPE="int" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="cost" ATTR_TYPE="float" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="agg_cost" ATTR_TYPE="float" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="osm_id" ATTR_TYPE="int" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="highway" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="type" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="oneway" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="ref" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="name_fr" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="name_br" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! </FEATURE_TYPE>
#! <FEATURE_TYPE
#! IS_SOURCE="false"
#! NODE_NAME="phase_3_pk_auto"
#! FEATURE_TYPE_NAME=""
#! FEATURE_TYPE_NAME_QUALIFIER=""
#! IS_EDITABLE="true"
#! IDENTIFIER="88"
#! FEAT_GEOMTYPE="All"
#! POSITION="18133.124231616159 -3709.0505183219498"
#! BOUNDING_RECT="18133.124231616159 -3709.0505183219498 -1 -1"
#! ORDER="500000000000067"
#! COLLAPSED="false"
#! KEYWORD="GEOJSON_2"
#! PARMS_EDITED="true"
#! ENABLED="false"
#! SCHEMA_ATTRIBUTE_SOURCE="1"
#! >
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_id" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_x" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_y" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_long" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_lat" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="length_real" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="length_theorical" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="secteur_id" ATTR_TYPE="int" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_admincode" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_postcode" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_name_fr" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_name_br" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_osm_id" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_highway" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_type" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_oneway" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_ref" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_name_fr" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_name_br" ATTR_TYPE="string" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! </FEATURE_TYPE>
#! <FEATURE_TYPE
#! IS_SOURCE="true"
#! NODE_NAME="phase_2_trace_pgr"
#! FEATURE_TYPE_NAME=""
#! FEATURE_TYPE_NAME_QUALIFIER="public"
#! IS_EDITABLE="false"
#! IDENTIFIER="131"
#! FEAT_GEOMTYPE="postgis_linestring"
#! POSITION="-884.94040495960496 -729.74686246862461"
#! BOUNDING_RECT="-884.94040495960496 -729.74686246862461 -1 -1"
#! ORDER="500000000000097"
#! COLLAPSED="true"
#! KEYWORD="POSTGIS_1"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! HIDDEN_USER_ATTRS=""
#! READ_SELECT_ATTRS="true"
#! MERGE_FILTER=""
#! MERGE_FILTER_TYPE="FILTER_TYPE_GLOB"
#! MERGE_FILTER_CASE_SENSITIVE="false"
#! DYNAMIC_SCHEMA="false"
#! >
#! <FEAT_ATTRIBUTE ATTR_NAME="secteur_id" ATTR_TYPE="int4" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="path_seq" ATTR_TYPE="int8" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="node" ATTR_TYPE="int8" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="cost" ATTR_TYPE="float8" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="agg_cost" ATTR_TYPE="float8" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="osm_id" ATTR_TYPE="int8" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="highway" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="type" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="oneway" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="ref" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="name_fr" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="name_br" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgis_query_settings_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgis_sql_statement" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgis_sql_where_clause" PARM_VALUE=""/>
#! </FEATURE_TYPE>
#! <FEATURE_TYPE
#! IS_SOURCE="true"
#! NODE_NAME="secteur"
#! FEATURE_TYPE_NAME=""
#! FEATURE_TYPE_NAME_QUALIFIER="public"
#! IS_EDITABLE="false"
#! IDENTIFIER="146"
#! FEAT_GEOMTYPE="postgres_none"
#! POSITION="-823.89812787016763 -1705.2551875518759"
#! BOUNDING_RECT="-823.89812787016763 -1705.2551875518759 -1 -1"
#! ORDER="500000000000098"
#! COLLAPSED="false"
#! KEYWORD="POSTGRES_1"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! HIDDEN_USER_ATTRS=""
#! READ_SELECT_ATTRS="true"
#! MERGE_FILTER=""
#! MERGE_FILTER_TYPE="FILTER_TYPE_GLOB"
#! MERGE_FILTER_CASE_SENSITIVE="true"
#! DYNAMIC_SCHEMA="false"
#! >
#! <FEAT_ATTRIBUTE ATTR_NAME="id" ATTR_TYPE="int4" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="nom_br" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="nom_fr" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="objectif_km" ATTR_TYPE="int4" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="km_redadeg" ATTR_TYPE="int4" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgres_query_settings_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgres_sql_statement" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgres_sql_where_clause" PARM_VALUE=""/>
#! </FEATURE_TYPE>
#! <FEATURE_TYPE
#! IS_SOURCE="true"
#! NODE_NAME="v_osm_municipalities"
#! FEATURE_TYPE_NAME=""
#! FEATURE_TYPE_NAME_QUALIFIER="public"
#! IS_EDITABLE="true"
#! IDENTIFIER="125"
#! FEAT_GEOMTYPE="postgis_none postgis_point postgis_multipoint postgis_linestring postgis_multilinestring postgis_circularstring postgis_compoundcurve postgis_multicurve postgis_polygon postgis_multipolygon postgis_curvepolygon postgis_multisurface postgis_triangle postgis_polyhedralsurface postgis_tin postgis_geometrycollection"
#! POSITION="10588.712482061524 -4062.3578612074771"
#! BOUNDING_RECT="10588.712482061524 -4062.3578612074771 -1 -1"
#! ORDER="500000000000100"
#! COLLAPSED="false"
#! KEYWORD="POSTGIS_1"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! HIDDEN_USER_ATTRS=""
#! READ_SELECT_ATTRS="true"
#! MERGE_FILTER=""
#! MERGE_FILTER_TYPE="FILTER_TYPE_GLOB"
#! MERGE_FILTER_CASE_SENSITIVE="false"
#! DYNAMIC_SCHEMA="false"
#! >
#! <FEAT_ATTRIBUTE ATTR_NAME="nom" ATTR_TYPE="varchar(80)" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="name_br" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="admincode" ATTR_TYPE="varchar(80)" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="postcode" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgis_query_settings_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgis_sql_statement" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="postgis_sql_where_clause" PARM_VALUE=""/>
#! </FEATURE_TYPE>
#! <FEATURE_TYPE
#! IS_SOURCE="false"
#! NODE_NAME="phase_3_pk_auto"
#! FEATURE_TYPE_NAME=""
#! FEATURE_TYPE_NAME_QUALIFIER=""
#! IS_EDITABLE="true"
#! IDENTIFIER="136"
#! FEAT_GEOMTYPE="All"
#! POSITION="18705.426837053175 -3585.3905995130954"
#! BOUNDING_RECT="18705.426837053175 -3585.3905995130954 -1 -1"
#! ORDER="500000000000101"
#! COLLAPSED="false"
#! KEYWORD="POSTGIS_2"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! SCHEMA_ATTRIBUTE_SOURCE="1"
#! >
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_id" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_x" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_y" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_long" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="pk_lat" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="length_real" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="length_theorical" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="secteur_id" ATTR_TYPE="int8" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_admincode" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_postcode" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_name_fr" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="municipality_name_br" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_osm_id" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_highway" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_type" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_oneway" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_ref" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_name_fr" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <FEAT_ATTRIBUTE ATTR_NAME="way_name_br" ATTR_TYPE="text" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_advanced_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_configuration_common_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_configuration_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_feature_operation" PARM_VALUE="INSERT"/>
#! <DEFLINE_PARM PARM_NAME="fme_match_columns" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="fme_selection_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_selection_method" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="fme_spatial_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_table_creation_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_table_handling" PARM_VALUE="TRUNCATE_EXISTING"/>
#! <DEFLINE_PARM PARM_NAME="fme_update_geometry" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="fme_where_builder_clause" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="postgis_allow_serial_writing" PARM_VALUE="NO"/>
#! <DEFLINE_PARM PARM_NAME="postgis_create_gist_index" PARM_VALUE="YES"/>
#! <DEFLINE_PARM PARM_NAME="postgis_create_with_oids" PARM_VALUE="NO"/>
#! <DEFLINE_PARM PARM_NAME="postgis_spatial_column" PARM_VALUE="the_geom"/>
#! <DEFLINE_PARM PARM_NAME="postgis_spatial_column_type" PARM_VALUE="geometry"/>
#! <DEFLINE_PARM PARM_NAME="postgis_srid" PARM_VALUE="2154"/>
#! <DEFLINE_PARM PARM_NAME="postgis_vacuum_analyze" PARM_VALUE="NO"/>
#! </FEATURE_TYPE>
#! <FEATURE_TYPE
#! IS_SOURCE="false"
#! NODE_NAME="phase_3_pk_sens_verif"
#! FEATURE_TYPE_NAME=""
#! FEATURE_TYPE_NAME_QUALIFIER=""
#! IS_EDITABLE="true"
#! IDENTIFIER="156"
#! FEAT_GEOMTYPE="All"
#! POSITION="18885.684555975989 -5413.0976092369619"
#! BOUNDING_RECT="18885.684555975989 -5413.0976092369619 -1 -1"
#! ORDER="500000000000104"
#! COLLAPSED="false"
#! KEYWORD="POSTGIS_2"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! SCHEMA_ATTRIBUTE_SOURCE="1"
#! >
#! <FEAT_ATTRIBUTE ATTR_NAME="secteur_id" ATTR_TYPE="int4" ATTR_HAS_PORT="true" ATTR_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_advanced_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_configuration_common_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_configuration_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_feature_operation" PARM_VALUE="INSERT"/>
#! <DEFLINE_PARM PARM_NAME="fme_match_columns" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="fme_selection_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_selection_method" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="fme_spatial_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_table_creation_group" PARM_VALUE=""/>
#! <DEFLINE_PARM PARM_NAME="fme_table_handling" PARM_VALUE="TRUNCATE_EXISTING"/>
#! <DEFLINE_PARM PARM_NAME="fme_update_geometry" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="fme_where_builder_clause" PARM_VALUE="&lt;Unused&gt;"/>
#! <DEFLINE_PARM PARM_NAME="postgis_allow_serial_writing" PARM_VALUE="NO"/>
#! <DEFLINE_PARM PARM_NAME="postgis_create_gist_index" PARM_VALUE="YES"/>
#! <DEFLINE_PARM PARM_NAME="postgis_create_with_oids" PARM_VALUE="NO"/>
#! <DEFLINE_PARM PARM_NAME="postgis_spatial_column" PARM_VALUE="the_geom"/>
#! <DEFLINE_PARM PARM_NAME="postgis_spatial_column_type" PARM_VALUE="geometry"/>
#! <DEFLINE_PARM PARM_NAME="postgis_srid" PARM_VALUE="2154"/>
#! <DEFLINE_PARM PARM_NAME="postgis_vacuum_analyze" PARM_VALUE="NO"/>
#! </FEATURE_TYPE>
#! </FEATURE_TYPES>
#! <FMESERVER>
#! <WRITER_DATASETS>
#! <DATASET
#! NAME="GEOJSON_2"
#! OVERRIDE="-GEOJSON_2_DATASET"
#! DATASET="GEOJSON_2/phase_3_pk.geojson"
#! />
#! <DATASET
#! NAME="GEOJSON_1"
#! OVERRIDE="-GEOJSON_1_DATASET"
#! DATASET="GEOJSON_1/phase_3_troncons.geojson"
#! />
#! </WRITER_DATASETS>
#! </FMESERVER>
#! <GLOBAL_PARAMETERS>
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI IGNORE FILENAME DestDataset_GEOJSON GeoJSON_Files(*.json)|*.json|All_Files|* Destination GeoJSON File:"
#! DEFAULT_VALUE="$(FME_MF_DIR)data/phase_3_troncons.geojson"
#! IS_STAND_ALONE="false"
#! />
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI IGNORE FILENAME DestDataset_GEOJSON_4 GeoJSON_Files(*.json)|*.json|All_Files|* Destination GeoJSON File:"
#! DEFAULT_VALUE="$(FME_MF_DIR)data/phase_3_pk.geojson"
#! IS_STAND_ALONE="false"
#! />
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI IGNORE TEXT SourceDataset_POSTGIS_3 Database:"
#! DEFAULT_VALUE="redadeg"
#! IS_STAND_ALONE="false"
#! />
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI IGNORE TEXT SourceDataset_POSTGRES Database:"
#! DEFAULT_VALUE="redadeg"
#! IS_STAND_ALONE="false"
#! />
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI IGNORE INT_OR_ATTR START Count Start:"
#! DEFAULT_VALUE="13"
#! IS_STAND_ALONE="false"
#! />
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI IGNORE NAMED_DB_CONNECTION_ENCODED DestDataset_POSTGIS FMT:POSTGIS%FAMILY:PostgreSQL Connection:"
#! DEFAULT_VALUE="redadeg&lt;at&gt;pgrouting"
#! IS_STAND_ALONE="false"
#! />
#! </GLOBAL_PARAMETERS>
#! <COMMENTS>
#! <COMMENT
#! IDENTIFIER="108"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;MS Shell Dlg 2&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;ici on recroise avec le tracé pour récupérer le noms des voies&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="12412.423666046509 -3046.8223553369535"
#! TOP_LEFT="12412.423666046509 -3046.8223553369535"
#! BOTTOM_RIGHT="12876.423666046509 -3045.8223553369535"
#! BOUNDING_RECT="12412.423666046509 -3046.8223553369535 464 -1"
#! ORDER="500000000000077"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19607843137254902"
#! SIZE_POLICY="10"
#! ANCHORED_NODE="107"
#! />
#! <COMMENT
#! IDENTIFIER="114"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;MS Shell Dlg 2&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;on croise avec les communes pour récupérer leur noms&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="13015.594073466506 -3721.9040757417879"
#! TOP_LEFT="13015.594073466506 -3721.9040757417879"
#! BOTTOM_RIGHT="13487.594073466506 -3720.9040757417879"
#! BOUNDING_RECT="13015.594073466506 -3721.9040757417879 472 -1"
#! ORDER="500000000000080"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19607843137254902"
#! SIZE_POLICY="10"
#! ANCHORED_NODE="115"
#! />
#! </COMMENTS>
#! <CONSTANTS>
#! </CONSTANTS>
#! <BOOKMARKS>
#! <BOOKMARK
#! IDENTIFIER="50"
#! NAME="et oncrée le point"
#! DESCRIPTION="&lt;html&gt;&lt;body&gt;&lt;/body&gt;&lt;/html&gt;"
#! TOP_LEFT="9394.8462394131366 -2019.5648691882111"
#! ORDER="500000000000049"
#! BOTTOM_RIGHT="10774.305910298506 -2464.1569439749383"
#! BOUNDING_RECT="9394.8462394131366 -2019.5648691882111 1379.4596708853696 444.59207478672715"
#! STICKY="true"
#! COLOUR="0.72156862745098038,0.23529411764705882,0.40392156862745099"
#! CONTENTS="46 94 96 40 93 "
#! >
#! </BOOKMARK>
#! <BOOKMARK
#! IDENTIFIER="51"
#! NAME="on extrait les coordonnées du premier vertex"
#! DESCRIPTION="&lt;html&gt;&lt;body&gt;&lt;/body&gt;&lt;/html&gt;"
#! TOP_LEFT="5896.1985908747965 -2006.6781423827988"
#! ORDER="500000000000051"
#! BOTTOM_RIGHT="9305.2190544814948 -2464.1569439749383"
#! BOUNDING_RECT="5896.1985908747965 -2006.6781423827988 3409.0204636066978 457.47880159213946"
#! STICKY="true"
#! COLOUR="0.76470588235294112,0.035294117647058823,0.18431372549019609"
#! CONTENTS="38 79 45 37 43 42 32 47 44 "
#! >
#! </BOOKMARK>
#! <BOOKMARK
#! IDENTIFIER="72"
#! NAME="et oncrée le point"
#! DESCRIPTION="&lt;html&gt;&lt;body&gt;&lt;/body&gt;&lt;/html&gt;"
#! TOP_LEFT="9394.8462394131366 -2596.244810823513"
#! ORDER="500000000000049"
#! BOTTOM_RIGHT="10774.305910298506 -3040.8368856102402"
#! BOUNDING_RECT="9394.8462394131366 -2596.244810823513 1379.4596708853696 444.59207478672715"
#! STICKY="true"
#! COLOUR="0.72156862745098038,0.23529411764705882,0.40392156862745099"
#! CONTENTS="98 97 81 70 69 "
#! >
#! </BOOKMARK>
#! <BOOKMARK
#! IDENTIFIER="104"
#! NAME="final"
#! DESCRIPTION="&lt;html&gt;&lt;body&gt;&lt;/body&gt;&lt;/html&gt;"
#! TOP_LEFT="16165.786657866574 -3252.5848008995536"
#! ORDER="500000000000072"
#! BOTTOM_RIGHT="19467.585980207627 -5797.8840657971796"
#! BOUNDING_RECT="16165.786657866574 -3252.5848008995536 3301.7993223410522 2545.299264897626"
#! STICKY="true"
#! COLOUR="0.61568627450980395,0.4392156862745098,0.34509803921568627"
#! CONTENTS="151 157 152 153 82 105 106 76 120 102 89 136 156 122 88 "
#! >
#! </BOOKMARK>
#! <BOOKMARK
#! IDENTIFIER="91"
#! NAME="on extrait les coordonnées du deuxième vertex"
#! DESCRIPTION="&lt;html&gt;&lt;body&gt;&lt;/body&gt;&lt;/html&gt;"
#! TOP_LEFT="5866.4403839764454 -2529.0172685847988"
#! ORDER="500000000000051"
#! BOTTOM_RIGHT="9275.4608475831428 -2986.4960701769382"
#! BOUNDING_RECT="5866.4403839764454 -2529.0172685847988 3409.0204636066978 457.47880159213946"
#! STICKY="true"
#! COLOUR="0.76470588235294112,0.035294117647058823,0.18431372549019609"
#! CONTENTS="62 59 63 61 57 54 80 58 55 "
#! >
#! </BOOKMARK>
#! <BOOKMARK
#! IDENTIFIER="133"
#! NAME="calcul coordonnées"
#! DESCRIPTION="&lt;html&gt;&lt;body&gt;&lt;/body&gt;&lt;/html&gt;"
#! TOP_LEFT="13875.138751387512 -3196.9069690696901"
#! ORDER="500000000000093"
#! BOTTOM_RIGHT="15193.901939019388 -4356.2935629356289"
#! BOUNDING_RECT="13875.138751387512 -3196.9069690696901 1318.7631876318756 1159.3865938659383"
#! STICKY="true"
#! COLOUR="0.066666666666666666,0.63921568627450975,0.49411764705882355"
#! CONTENTS="128 134 132 109 137 127 140 139 141 "
#! >
#! </BOOKMARK>
#! </BOOKMARKS>
#! <TRANSFORMERS>
#! <TRANSFORMER
#! IDENTIFIER="7"
#! TYPE="SubDocumentTransformer"
#! VERSION="1"
#! POSITION="2131.1921751290829 -1791.267312673127"
#! BOUNDING_RECT="2131.1921751290829 -1791.267312673127 -1 -1"
#! ORDER="500000000000009"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! LAST_PARM_EDIT="18592"
#! >
#! <OUTPUT_FEAT NAME="Output"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;Rejected&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="SNIPMODE" PARM_VALUE="ToLength"/>
#! <XFORM_PARM PARM_NAME="SUB_DOC_NAME" PARM_VALUE="IterativeSnipper"/>
#! <XFORM_PARM PARM_NAME="SnipLength" PARM_VALUE="@Value(longueur_km)"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="IterativeSnipper"/>
#! <XFORM_PARM PARM_NAME="__COMPOUND_PARAMETERS" PARM_VALUE=""/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="10"
#! TYPE="LineCombiner"
#! VERSION="10"
#! POSITION="1427.0983607273452 -1364.4280209468757"
#! BOUNDING_RECT="1427.0983607273452 -1364.4280209468757 -1 -1"
#! ORDER="500000000000016"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="LINE"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="ACCUM_ATTRS_NAME" PARM_VALUE="Use Attributes From One Feature"/>
#! <XFORM_PARM PARM_NAME="ADVANCED_PARAMETERS_GROUP" PARM_VALUE="FME_DISCLOSURE_OPEN"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP" PARM_VALUE="FME_DISCLOSURE_OPEN"/>
#! <XFORM_PARM PARM_NAME="BREAK" PARM_VALUE="no"/>
#! <XFORM_PARM PARM_NAME="BREAK_CONNECTION_ACROSS_SETS" PARM_VALUE="Yes"/>
#! <XFORM_PARM PARM_NAME="BREAK_CONNECTION_ATTRIBUTES" PARM_VALUE="secteur_id"/>
#! <XFORM_PARM PARM_NAME="CONNECT_Z_MODE" PARM_VALUE="First Wins"/>
#! <XFORM_PARM PARM_NAME="CONSIDER_NODE_ELEVATION" PARM_VALUE="no"/>
#! <XFORM_PARM PARM_NAME="DEAGGREGATE_GEOMETRY" PARM_VALUE="Deaggregate"/>
#! <XFORM_PARM PARM_NAME="DIRECTION_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="FME_PROCESS_COUNTDISP" PARM_VALUE="No Parallelism"/>
#! <XFORM_PARM PARM_NAME="FME_PROCESS_GROUPS_ORDERED" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="GENERATE_LIST_GROUP" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="GROUP_BY" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="LINES_AS_SEGMENTS" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PRESERVE" PARM_VALUE="no"/>
#! <XFORM_PARM PARM_NAME="TOPOLOGY" PARM_VALUE="End noded"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="LineCombiner"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="15"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="2504.0195001950024 -1315.3879688796887"
#! BOUNDING_RECT="2504.0195001950024 -1315.3879688796887 -1 -1"
#! ORDER="500000000000018"
#! PARMS_EDITED="false"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="LineCombiner_Line"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="20"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="3743.0929864854188 -1107.2309445316673"
#! BOUNDING_RECT="3743.0929864854188 -1107.2309445316673 -1 -1"
#! ORDER="500000000000022"
#! PARMS_EDITED="false"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="tronçons"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="22"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="2758.0165001650016 -2017.7685626856264"
#! BOUNDING_RECT="2758.0165001650016 -2017.7685626856264 -1 -1"
#! ORDER="500000000000023"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="IterativeSnipper__Rejected_"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="24"
#! TYPE="LengthCalculator"
#! VERSION="0"
#! POSITION="2928.4582345823455 -1731.267312673127"
#! BOUNDING_RECT="2928.4582345823455 -1731.267312673127 -1 -1"
#! ORDER="500000000000026"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="DIM" PARM_VALUE="2"/>
#! <XFORM_PARM PARM_NAME="LEN_ATTR" PARM_VALUE="longueur"/>
#! <XFORM_PARM PARM_NAME="MULT" PARM_VALUE="1"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="LengthCalculator"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="21"
#! TYPE="CoordinateConcatenator"
#! VERSION="4"
#! POSITION="3456.2845628456284 -2287.2726877268778"
#! BOUNDING_RECT="3456.2845628456284 -2287.2726877268778 -1 -1"
#! ORDER="500000000000037"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="COORDINATES_TO_INCLUDE_DIS" PARM_VALUE="Y X"/>
#! <XFORM_PARM PARM_NAME="COORD_ATTR" PARM_VALUE="_coordinates"/>
#! <XFORM_PARM PARM_NAME="COORD_DELIM" PARM_VALUE="|"/>
#! <XFORM_PARM PARM_NAME="ELEMENT_DELIM" PARM_VALUE="&lt;comma&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="CoordinateConcatenator"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="30"
#! TYPE="AttributeSplitter"
#! VERSION="3"
#! POSITION="3974.4742347423471 -2287.2726877268778"
#! BOUNDING_RECT="3974.4742347423471 -2287.2726877268778 -1 -1"
#! ORDER="500000000000039"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTR_NAME" PARM_VALUE="_coordinates"/>
#! <XFORM_PARM PARM_NAME="DELIMITER" PARM_VALUE="|"/>
#! <XFORM_PARM PARM_NAME="DROP_EMPTY_PARTS" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="_coords"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRIM_OPTION" PARM_VALUE="Both"/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeSplitter"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="29"
#! TYPE="ListElementCounter"
#! VERSION="1"
#! POSITION="4533.5720707207065 -2287.2726877268778"
#! BOUNDING_RECT="4533.5720707207065 -2287.2726877268778 -1 -1"
#! ORDER="500000000000040"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="CNT_ATTR" PARM_VALUE="_vertex_count"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="_coords&lt;opencurly&gt;&lt;closecurly&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ListElementCounter"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="32"
#! TYPE="ListIndexer"
#! VERSION="2"
#! POSITION="5970.1985908747965 -2170.3546668800032"
#! BOUNDING_RECT="5970.1985908747965 -2170.3546668800032 -1 -1"
#! ORDER="500000000000041"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="0"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTR" PARM_VALUE="_coords{}"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PREFIX" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ListIndexer"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="36"
#! TYPE="GeometryRemover"
#! VERSION="0"
#! POSITION="5098.4008460445439 -2287.2726877268778"
#! BOUNDING_RECT="5098.4008460445439 -2287.2726877268778 -1 -1"
#! ORDER="500000000000042"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="GeometryRemover"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="40"
#! TYPE="VertexCreator"
#! VERSION="2"
#! POSITION="9551.6446024483139 -2170.3546668800032"
#! BOUNDING_RECT="9551.6446024483139 -2170.3546668800032 -1 -1"
#! ORDER="500000000000043"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="MODE_NAME" PARM_VALUE="Add Point"/>
#! <XFORM_PARM PARM_NAME="PARAMETER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="VertexCreator"/>
#! <XFORM_PARM PARM_NAME="XVAL" PARM_VALUE="@Value(x_coords_vertex)"/>
#! <XFORM_PARM PARM_NAME="YVAL" PARM_VALUE="@Value(y_coords_vertex)"/>
#! <XFORM_PARM PARM_NAME="ZVAL" PARM_VALUE=""/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="37"
#! TYPE="AttributeSplitter"
#! VERSION="3"
#! POSITION="6525.888637775266 -2177.3546668800032"
#! BOUNDING_RECT="6525.888637775266 -2177.3546668800032 -1 -1"
#! ORDER="500000000000046"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTR_NAME" PARM_VALUE="_coords"/>
#! <XFORM_PARM PARM_NAME="DELIMITER" PARM_VALUE="&lt;comma&gt;"/>
#! <XFORM_PARM PARM_NAME="DROP_EMPTY_PARTS" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="_coords_vertex"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRIM_OPTION" PARM_VALUE="Both"/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeSplitter_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="43"
#! TYPE="ListIndexer"
#! VERSION="2"
#! POSITION="7083.423958128471 -2170.3546668800032"
#! BOUNDING_RECT="7083.423958128471 -2170.3546668800032 -1 -1"
#! ORDER="500000000000047"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="0"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTR" PARM_VALUE="_coords_vertex{}"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PREFIX" PARM_VALUE="x"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ListIndexer_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="44"
#! TYPE="ListIndexer"
#! VERSION="2"
#! POSITION="7604.5948253234765 -2170.3546668800032"
#! BOUNDING_RECT="7604.5948253234765 -2170.3546668800032 -1 -1"
#! ORDER="500000000000047"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="1"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTR" PARM_VALUE="_coords_vertex{}"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PREFIX" PARM_VALUE="y"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ListIndexer_3"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="46"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="10704.984788290032 -2219.9378960456279"
#! BOUNDING_RECT="10704.984788290032 -2219.9378960456279 -1 -1"
#! ORDER="500000000000048"
#! PARMS_EDITED="true"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Vertex_debut"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="42"
#! TYPE="AttributeRemover"
#! VERSION="1"
#! POSITION="8238.6906208049986 -2177.3546668800032"
#! BOUNDING_RECT="8238.6906208049986 -2177.3546668800032 -1 -1"
#! ORDER="500000000000053"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="LIST_ATTRS" PARM_VALUE="_coords_vertex&lt;opencurly&gt;&lt;closecurly&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="REMOVE_ATTRS" PARM_VALUE="_coords_vertex&lt;opencurly&gt;0&lt;closecurly&gt;,_coords&lt;opencurly&gt;0&lt;closecurly&gt;,_coordinates"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRemover"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="54"
#! TYPE="ListIndexer"
#! VERSION="2"
#! POSITION="5970.1985908747965 -2641.3461635199865"
#! BOUNDING_RECT="5970.1985908747965 -2641.3461635199865 -1 -1"
#! ORDER="500000000000041"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="@Value(_vertex_count)-1"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTR" PARM_VALUE="_coords{}"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PREFIX" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ListIndexer_4"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="55"
#! TYPE="AttributeSplitter"
#! VERSION="3"
#! POSITION="6551.3060344412679 -2667.3979354362482"
#! BOUNDING_RECT="6551.3060344412679 -2667.3979354362482 -1 -1"
#! ORDER="500000000000046"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTR_NAME" PARM_VALUE="_coords"/>
#! <XFORM_PARM PARM_NAME="DELIMITER" PARM_VALUE="&lt;comma&gt;"/>
#! <XFORM_PARM PARM_NAME="DROP_EMPTY_PARTS" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="_coords_vertex"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRIM_OPTION" PARM_VALUE="Both"/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeSplitter_3"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="58"
#! TYPE="ListIndexer"
#! VERSION="2"
#! POSITION="7108.8413547944729 -2660.3979354362482"
#! BOUNDING_RECT="7108.8413547944729 -2660.3979354362482 -1 -1"
#! ORDER="500000000000047"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="0"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTR" PARM_VALUE="_coords_vertex{}"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PREFIX" PARM_VALUE="x"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ListIndexer_5"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="59"
#! TYPE="ListIndexer"
#! VERSION="2"
#! POSITION="7630.0122219894783 -2660.3979354362482"
#! BOUNDING_RECT="7630.0122219894783 -2660.3979354362482 -1 -1"
#! ORDER="500000000000047"
#! PARMS_EDITED="false"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords_vertex{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="1"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTR" PARM_VALUE="_coords_vertex{}"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PREFIX" PARM_VALUE="y"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ListIndexer_6"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="61"
#! TYPE="AttributeRemover"
#! VERSION="1"
#! POSITION="8238.6906208049986 -2720.3979354362482"
#! BOUNDING_RECT="8238.6906208049986 -2720.3979354362482 -1 -1"
#! ORDER="500000000000053"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="LIST_ATTRS" PARM_VALUE="_coords_vertex&lt;opencurly&gt;&lt;closecurly&gt; _coords&lt;opencurly&gt;&lt;closecurly&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="REMOVE_ATTRS" PARM_VALUE="_coords_vertex&lt;opencurly&gt;0&lt;closecurly&gt;,_coords,_coords&lt;opencurly&gt;0&lt;closecurly&gt;"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRemover_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="69"
#! TYPE="VertexCreator"
#! VERSION="2"
#! POSITION="9551.6446024483139 -2747.0346085153051"
#! BOUNDING_RECT="9551.6446024483139 -2747.0346085153051 -1 -1"
#! ORDER="500000000000043"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INDEX" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="MODE_NAME" PARM_VALUE="Add Point"/>
#! <XFORM_PARM PARM_NAME="PARAMETER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="VertexCreator_2"/>
#! <XFORM_PARM PARM_NAME="XVAL" PARM_VALUE="@Value(x_coords_vertex)"/>
#! <XFORM_PARM PARM_NAME="YVAL" PARM_VALUE="@Value(y_coords_vertex)"/>
#! <XFORM_PARM PARM_NAME="ZVAL" PARM_VALUE=""/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="70"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="10761.077846356924 -2796.6178376809307"
#! BOUNDING_RECT="10761.077846356924 -2796.6178376809307 -1 -1"
#! ORDER="500000000000048"
#! PARMS_EDITED="false"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Vertex_fin"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="64"
#! TYPE="DuplicateFilter"
#! VERSION="5"
#! POSITION="11225.806702511467 -2419.5229958065484"
#! BOUNDING_RECT="11225.806702511467 -2419.5229958065484 -1 -1"
#! ORDER="500000000000057"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="UNIQUE"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="DUPLICATE"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="INPUT_ORDERED_CHOICE" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="KEYATTR" PARM_VALUE="y_coords_vertex x_coords_vertex"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="DuplicateFilter"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="82"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="18072.364130344264 -3407.3053256150547"
#! BOUNDING_RECT="18072.364130344264 -3407.3053256150547 -1 -1"
#! ORDER="500000000000058"
#! PARMS_EDITED="false"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="pk"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="74"
#! TYPE="AttributeRemover"
#! VERSION="1"
#! POSITION="11910.491094910954 -2419.5229958065484"
#! BOUNDING_RECT="11910.491094910954 -2419.5229958065484 -1 -1"
#! ORDER="500000000000062"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="LIST_ATTRS" PARM_VALUE="_coords&lt;opencurly&gt;&lt;closecurly&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="REMOVE_ATTRS" PARM_VALUE="_coords,path_seq,_vertex_count,_coordinates"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRemover_3"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="78"
#! TYPE="FeatureMerger"
#! VERSION="17"
#! POSITION="587.08052691638034 -1181.5692197199751"
#! BOUNDING_RECT="587.08052691638034 -1181.5692197199751 -1 -1"
#! ORDER="500000000000063"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="MERGED"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="UNMERGED_REQUESTOR"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <OUTPUT_FEAT NAME="USED_SUPPLIER"/>
#! <FEAT_COLLAPSED COLLAPSED="2"/>
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="numReferences" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <OUTPUT_FEAT NAME="UNUSED_SUPPLIER"/>
#! <FEAT_COLLAPSED COLLAPSED="3"/>
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="4"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="node" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="cost" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="agg_cost" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="osm_id" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="highway" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="type" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="oneway" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="ref" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="name_fr" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="name_br" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="4" />
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_MODE" PARM_VALUE="Merge Supplier"/>
#! <XFORM_PARM PARM_NAME="ATTR_CONFLICT_RES" PARM_VALUE="Use Requestor"/>
#! <XFORM_PARM PARM_NAME="CLEANING_TOLERANCE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="CONNECT_Z_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="GENERATE_LIST_GROUP" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="GEOM_TYPE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="GROUP_BY" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="IGNORE_NULLS" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="JOIN_ATTRIBUTES_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="JOIN_KEYS" PARM_VALUE="&lt;at&gt;Value&lt;openparen&gt;secteur_id&lt;closeparen&gt; &lt;at&gt;Value&lt;openparen&gt;secteur_id&lt;closeparen&gt; AUTO"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="MERGE_COUNT_ATTR" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="MERGE_TYPE" PARM_VALUE="Attributes Only"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PROCESS_DUPS" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="REJECT_NULL_MISSING_KEYS" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="SUPPLIERS_FIRST" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="SUPPLIER_PREFIX" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="FeatureMerger"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="84"
#! TYPE="Sorter"
#! VERSION="2"
#! POSITION="1388.545792733333 -2017.7685626856264"
#! BOUNDING_RECT="1388.545792733333 -2017.7685626856264 -1 -1"
#! ORDER="500000000000017"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="SORTED"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="SORT_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="SORT_PARM" PARM_VALUE="secteur_id NUMERIC ASCENDING path_seq NUMERIC ASCENDING"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Sorter"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="93"
#! TYPE="AttributeCreator"
#! VERSION="9"
#! POSITION="10133.20896842416 -2170.3546668800032"
#! BOUNDING_RECT="10133.20896842416 -2170.3546668800032 -1 -1"
#! ORDER="500000000000068"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords{}" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coords" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_HANDLING" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTR_TABLE" PARM_VALUE="&quot;&quot; position_vertex SET_TO debut"/>
#! <XFORM_PARM PARM_NAME="MULTI_FEATURE_MODE" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_MODE_DISPLAY" PARM_VALUE="No Substitution"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_VALUE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="NUM_PRIOR_FEATURES" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="NUM_SUBSEQUENT_FEATURES" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeCreator"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="97"
#! TYPE="AttributeCreator"
#! VERSION="9"
#! POSITION="10133.20896842416 -2747.0346085153051"
#! BOUNDING_RECT="10133.20896842416 -2747.0346085153051 -1 -1"
#! ORDER="500000000000068"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_coordinates" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_vertex_count" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_HANDLING" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTR_TABLE" PARM_VALUE="&quot;&quot; position_vertex SET_TO fin"/>
#! <XFORM_PARM PARM_NAME="MULTI_FEATURE_MODE" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_MODE_DISPLAY" PARM_VALUE="No Substitution"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_VALUE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="NUM_PRIOR_FEATURES" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="NUM_SUBSEQUENT_FEATURES" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeCreator_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="100"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="11385.3569775904 -2796.6178376809307"
#! BOUNDING_RECT="11385.3569775904 -2796.6178376809307 -1 -1"
#! ORDER="500000000000069"
#! PARMS_EDITED="false"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="DuplicateFilter_Duplicate"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="102"
#! TYPE="Sorter"
#! VERSION="2"
#! POSITION="16822.072990294073 -3465.3905995130954"
#! BOUNDING_RECT="16822.072990294073 -3465.3905995130954 -1 -1"
#! ORDER="500000000000070"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="SORTED"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="SORT_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="SORT_PARM" PARM_VALUE="secteur_id NUMERIC ASCENDING troncon_id NUMERIC ASCENDING"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Sorter_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="89"
#! TYPE="Counter"
#! VERSION="2"
#! POSITION="17365.228947071977 -3465.3905995130954"
#! BOUNDING_RECT="17365.228947071977 -3465.3905995130954 -1 -1"
#! ORDER="500000000000071"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18592"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="CNT_ATTR" PARM_VALUE="pk_id"/>
#! <XFORM_PARM PARM_NAME="DOMAIN" PARM_VALUE="pk_id"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="SCOPE" PARM_VALUE="Global"/>
#! <XFORM_PARM PARM_NAME="START" PARM_VALUE="$(START)"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Counter"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="107"
#! TYPE="PointOnLineOverlayer"
#! VERSION="7"
#! POSITION="12412.423666046509 -3280.9606446579915"
#! BOUNDING_RECT="12412.423666046509 -3280.9606446579915 -1 -1"
#! ORDER="500000000000073"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="POINT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="LINE"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="2"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP" PARM_VALUE="YES"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP1" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP_CANDIDATE" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_MODE" PARM_VALUE="Merge Incoming"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_SUPER_GROUP" PARM_VALUE="FME_DISCLOSURE_OPEN"/>
#! <XFORM_PARM PARM_NAME="ATTR_CONFLICT_RES" PARM_VALUE="Use Original"/>
#! <XFORM_PARM PARM_NAME="CANDIDATE_LIST_ATTRS_TO_INCLUDE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="CANDIDATE_LIST_ATTRS_TO_INCLUDE_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="CANDIDATE_LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="DEAGGREGATE_INPUT" PARM_VALUE="Yes"/>
#! <XFORM_PARM PARM_NAME="FME_PROCESS_COUNTDISP" PARM_VALUE="No Parallelism"/>
#! <XFORM_PARM PARM_NAME="FME_PROCESS_GROUPS_ORDERED" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="GROUP_BY" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="INCOMING_PREFIX" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="OV_ATTR" PARM_VALUE="_overlaps"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TOLERANCE" PARM_VALUE="1"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="PointOnLineOverlayer"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="110"
#! TYPE="AttributeRemover"
#! VERSION="1"
#! POSITION="1388.545792733333 -1791.267312673127"
#! BOUNDING_RECT="1388.545792733333 -1791.267312673127 -1 -1"
#! ORDER="500000000000074"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="LIST_ATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="REMOVE_ATTRS" PARM_VALUE="node,cost,ref,name_br,highway,type,osm_id,name_fr,agg_cost,oneway"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRemover_4"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="115"
#! TYPE="PointOnAreaOverlayer"
#! VERSION="8"
#! POSITION="13015.594073466506 -3943.1556382574131"
#! BOUNDING_RECT="13015.594073466506 -3943.1556382574131 -1 -1"
#! ORDER="500000000000079"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="POINT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="AREA"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="2"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP" PARM_VALUE="YES"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP1" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_GROUP_CANDIDATE" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_MODE" PARM_VALUE="Merge Incoming"/>
#! <XFORM_PARM PARM_NAME="ATTR_ACCUM_SUPER_GROUP" PARM_VALUE="FME_DISCLOSURE_OPEN"/>
#! <XFORM_PARM PARM_NAME="ATTR_CONFLICT_RES" PARM_VALUE="Use Original"/>
#! <XFORM_PARM PARM_NAME="CANDIDATE_LIST_ATTRS_TO_INCLUDE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="CANDIDATE_LIST_ATTRS_TO_INCLUDE_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="CANDIDATE_LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="DEAGGREGATE_INPUT" PARM_VALUE="Yes"/>
#! <XFORM_PARM PARM_NAME="FME_PROCESS_COUNTDISP" PARM_VALUE="No Parallelism"/>
#! <XFORM_PARM PARM_NAME="FME_PROCESS_GROUPS_ORDERED" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="GROUP_BY" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="INCOMING_PREFIX" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="OV_ATTR" PARM_VALUE="_overlaps"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POLYS_FIRST" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="PointOnAreaOverlayer"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="120"
#! TYPE="AttributeRenamer"
#! VERSION="4"
#! POSITION="16245.832058364293 -3465.3905995130954"
#! BOUNDING_RECT="16245.832058364293 -3465.3905995130954 -1 -1"
#! ORDER="500000000000081"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTR_TABLE" PARM_VALUE="municipality_nom municipality_name_fr RENAME_SET_DEFAULT longueur length_real RENAME_SET_DEFAULT longueur_km length_theorical RENAME_SET_DEFAULT municipality_admincode municipality_admincode RENAME_SET_DEFAULT "/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRenamer"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="118"
#! TYPE="BulkAttributeRenamer"
#! VERSION="4"
#! POSITION="12124.031752992107 -4062.3578612074771"
#! BOUNDING_RECT="12124.031752992107 -4062.3578612074771 -1 -1"
#! ORDER="500000000000082"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRCHOICE" PARM_VALUE="All Attributes"/>
#! <XFORM_PARM PARM_NAME="ATTRLIST" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="ATTRS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="CASE_CHANGE_TYPE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="CASE_DISP" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="MODE_CHOICE" PARM_VALUE="RENAME"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PATTERN_ACTION_DISP" PARM_VALUE="ADDPREFIX"/>
#! <XFORM_PARM PARM_NAME="REPLACE_PATTERN" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="REPLACE_STR" PARM_VALUE="municipality_"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="BulkAttributeRenamer"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="119"
#! TYPE="BulkAttributeRenamer"
#! VERSION="4"
#! POSITION="11687.706635023946 -3424.3718683115644"
#! BOUNDING_RECT="11687.706635023946 -3424.3718683115644 -1 -1"
#! ORDER="500000000000082"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRCHOICE" PARM_VALUE="All Attributes"/>
#! <XFORM_PARM PARM_NAME="ATTRLIST" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="ATTRS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="CASE_CHANGE_TYPE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="CASE_DISP" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="MODE_CHOICE" PARM_VALUE="RENAME"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PATTERN_ACTION_DISP" PARM_VALUE="ADDPREFIX"/>
#! <XFORM_PARM PARM_NAME="REPLACE_PATTERN" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="REPLACE_STR" PARM_VALUE="way_"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="BulkAttributeRenamer_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="109"
#! TYPE="CoordinateExtractor"
#! VERSION="2"
#! POSITION="14536.692094728629 -3377.4500116135155"
#! BOUNDING_RECT="14536.692094728629 -3377.4500116135155 -1 -1"
#! ORDER="500000000000084"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ALL_ATTRIBUTES_GROUP" PARM_VALUE="FME_DISCLOSURE_CLOSED"/>
#! <XFORM_PARM PARM_NAME="IND" PARM_VALUE="0"/>
#! <XFORM_PARM PARM_NAME="INDEX_ATTRIBUTES_GROUP" PARM_VALUE="FME_DISCLOSURE_OPEN"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="MODE" PARM_VALUE="Specify Coordinate"/>
#! <XFORM_PARM PARM_NAME="MODE_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="CoordinateExtractor"/>
#! <XFORM_PARM PARM_NAME="X_ATTR" PARM_VALUE="pk_x"/>
#! <XFORM_PARM PARM_NAME="Y_ATTR" PARM_VALUE="pk_y"/>
#! <XFORM_PARM PARM_NAME="Z_ATTR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="Z_DEFAULT" PARM_VALUE=""/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="128"
#! TYPE="AttributeReprojector"
#! VERSION="0"
#! POSITION="14536.692094728629 -4096.3466031567514"
#! BOUNDING_RECT="14536.692094728629 -4096.3466031567514 -1 -1"
#! ORDER="500000000000086"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="DEST" PARM_VALUE="LL-WGS84"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="SOURCE" PARM_VALUE="EPSG:2154"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XATTR" PARM_VALUE="pk_long"/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeReprojector"/>
#! <XFORM_PARM PARM_NAME="YATTR" PARM_VALUE="pk_lat"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="132"
#! TYPE="AttributeCopier"
#! VERSION="6"
#! POSITION="14536.692094728629 -3890.4165864664142"
#! BOUNDING_RECT="14536.692094728629 -3890.4165864664142 -1 -1"
#! ORDER="500000000000087"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTR_TABLE" PARM_VALUE="pk_y pk_lat COPY pk_x pk_long COPY "/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeCopier"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="121"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="13901.834237973413 -4421.2017099091236"
#! BOUNDING_RECT="13901.834237973413 -4421.2017099091236 -1 -1"
#! ORDER="500000000000088"
#! PARMS_EDITED="false"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="PointOnAreaOverlayer_Point"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="130"
#! TYPE="Inspector"
#! VERSION="5"
#! POSITION="11199.852326808681 -3837.1556382574131"
#! BOUNDING_RECT="11199.852326808681 -3837.1556382574131 -1 -1"
#! ORDER="500000000000089"
#! PARMS_EDITED="false"
#! ENABLED="false"
#! LAST_PARM_EDIT="18578"
#! >
#! <XFORM_PARM PARM_NAME="AREA_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PEN_COLOR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="POINTCLOUD_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_COLS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_NUM_ROWS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_COL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_START_ROW" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="RASTER_VISUALIZATION_OPTION" PARM_VALUE="No Reduction"/>
#! <XFORM_PARM PARM_NAME="TACKATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="THINNER_INTERVAL" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_MAX_NUM_POINTS" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="THINNER_TYPE_DISPLAY" PARM_VALUE="No Thinning"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VECTOR_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="public.v_osm_municipalities"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="137"
#! TYPE="CoordinateSystemSetter"
#! VERSION="0"
#! POSITION="13966.459144222474 -3377.4500116135155"
#! BOUNDING_RECT="13966.459144222474 -3377.4500116135155 -1 -1"
#! ORDER="500000000000091"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="COORDSYS" PARM_VALUE="EPSG:2154"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="CoordinateSystemSetter"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="127"
#! TYPE="AttributeRounder"
#! VERSION="3"
#! POSITION="14536.692094728629 -3574.5577052840272"
#! BOUNDING_RECT="14536.692094728629 -3574.5577052840272 -1 -1"
#! ORDER="500000000000092"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PLACES" PARM_VALUE="2"/>
#! <XFORM_PARM PARM_NAME="ROUND_TYPE" PARM_VALUE="Nearest"/>
#! <XFORM_PARM PARM_NAME="SRC_ATTRS" PARM_VALUE="pk_y pk_x"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRounder"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="142"
#! TYPE="AttributeRounder"
#! VERSION="3"
#! POSITION="15444.94987342443 -3402.2655682627828"
#! BOUNDING_RECT="15444.94987342443 -3402.2655682627828 -1 -1"
#! ORDER="500000000000094"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18578"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="longueur" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_nom" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PLACES" PARM_VALUE="0"/>
#! <XFORM_PARM PARM_NAME="ROUND_TYPE" PARM_VALUE="Nearest"/>
#! <XFORM_PARM PARM_NAME="SRC_ATTRS" PARM_VALUE="longueur"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRounder_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="148"
#! TYPE="AttributeRenamer"
#! VERSION="4"
#! POSITION="-233.18966745222988 -1705.2551875518759"
#! BOUNDING_RECT="-233.18966745222988 -1705.2551875518759 -1 -1"
#! ORDER="500000000000099"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18592"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <XFORM_ATTR ATTR_NAME="longueur_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTR_TABLE" PARM_VALUE="km_redadeg longueur_km RENAME_SET_DEFAULT id secteur_id RENAME_SET_DEFAULT "/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRenamer_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="152"
#! TYPE="LineBuilder"
#! VERSION="6"
#! POSITION="18094.74616485295 -5413.0976092369619"
#! BOUNDING_RECT="18094.74616485295 -5413.0976092369619 -1 -1"
#! ORDER="500000000000102"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="18592"
#! >
#! <OUTPUT_FEAT NAME="POINT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="pk_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="LINE"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="pk_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <OUTPUT_FEAT NAME="POLYGON"/>
#! <FEAT_COLLAPSED COLLAPSED="2"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="pk_id" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="3"/>
#! <XFORM_ATTR ATTR_NAME="municipality_name_fr" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="length_real" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="length_theorical" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="municipality_admincode" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="pk_y" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="pk_lat" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="pk_x" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="pk_long" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="position_vertex" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="secteur_id" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="nom_br" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="nom_fr" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="objectif_km" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="x_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="y_coords_vertex" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_secteur_id" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_path_seq" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_node" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_cost" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_agg_cost" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_osm_id" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_highway" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_type" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_oneway" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_ref" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_name_fr" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="way_name_br" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="_overlaps" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="municipality_name_br" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="municipality_postcode" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="pk_id" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="3" />
#! <XFORM_PARM PARM_NAME="ACCUM_INPUT_ATTRS" PARM_VALUE="Use Attributes From One Feature"/>
#! <XFORM_PARM PARM_NAME="BREAKATTR" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="GENERATE_LIST_GROUP" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS_TO_INCLUDE_MODE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="LIST_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="REMOVE_DUPLICATES" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="LineBuilder"/>
#! </TRANSFORMER>
#! </TRANSFORMERS>
#! <FEAT_LINKS>
#! <FEAT_LINK
#! IDENTIFIER="123"
#! SOURCE_NODE="125"
#! TARGET_NODE="118"
#! SOURCE_PORT_DESC="-1"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="135"
#! SOURCE_NODE="125"
#! TARGET_NODE="130"
#! SOURCE_PORT_DESC="-1"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="145"
#! SOURCE_NODE="131"
#! TARGET_NODE="78"
#! SOURCE_PORT_DESC="-1"
#! TARGET_PORT_DESC="fi 0 REQUESTOR"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="147"
#! SOURCE_NODE="131"
#! TARGET_NODE="119"
#! SOURCE_PORT_DESC="-1"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS="660 -3300"
#! />
#! <FEAT_LINK
#! IDENTIFIER="149"
#! SOURCE_NODE="146"
#! TARGET_NODE="148"
#! SOURCE_PORT_DESC="-1"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="25"
#! SOURCE_NODE="7"
#! TARGET_NODE="24"
#! SOURCE_PORT_DESC="fo 0 Output"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="19"
#! SOURCE_NODE="10"
#! TARGET_NODE="15"
#! SOURCE_PORT_DESC="fo 0 LINE"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="111"
#! SOURCE_NODE="10"
#! TARGET_NODE="110"
#! SOURCE_PORT_DESC="fo 0 LINE"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="31"
#! SOURCE_NODE="21"
#! TARGET_NODE="30"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="26"
#! SOURCE_NODE="24"
#! TARGET_NODE="20"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="27"
#! SOURCE_NODE="24"
#! TARGET_NODE="21"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="87"
#! SOURCE_NODE="24"
#! TARGET_NODE="86"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="-1"
#! ENABLED="true"
#! EXECUTION_IDX="2"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="113"
#! SOURCE_NODE="29"
#! TARGET_NODE="36"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="33"
#! SOURCE_NODE="30"
#! TARGET_NODE="29"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="38"
#! SOURCE_NODE="32"
#! TARGET_NODE="37"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="67"
#! SOURCE_NODE="36"
#! TARGET_NODE="32"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="56"
#! SOURCE_NODE="36"
#! TARGET_NODE="54"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="45"
#! SOURCE_NODE="37"
#! TARGET_NODE="43"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="94"
#! SOURCE_NODE="40"
#! TARGET_NODE="93"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="68"
#! SOURCE_NODE="42"
#! TARGET_NODE="40"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="47"
#! SOURCE_NODE="43"
#! TARGET_NODE="44"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="79"
#! SOURCE_NODE="44"
#! TARGET_NODE="42"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="57"
#! SOURCE_NODE="54"
#! TARGET_NODE="55"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="62"
#! SOURCE_NODE="55"
#! TARGET_NODE="58"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="63"
#! SOURCE_NODE="58"
#! TARGET_NODE="59"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="80"
#! SOURCE_NODE="59"
#! TARGET_NODE="61"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="73"
#! SOURCE_NODE="61"
#! TARGET_NODE="69"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="75"
#! SOURCE_NODE="64"
#! TARGET_NODE="74"
#! SOURCE_PORT_DESC="fo 0 UNIQUE"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="98"
#! SOURCE_NODE="69"
#! TARGET_NODE="97"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="117"
#! SOURCE_NODE="74"
#! TARGET_NODE="107"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 POINT"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="90"
#! SOURCE_NODE="78"
#! TARGET_NODE="10"
#! SOURCE_PORT_DESC="fo 0 MERGED"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="92"
#! SOURCE_NODE="84"
#! TARGET_NODE="7"
#! SOURCE_PORT_DESC="fo 0 SORTED"
#! TARGET_PORT_DESC="fi 0 Input"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="106"
#! SOURCE_NODE="89"
#! TARGET_NODE="88"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="-1"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="76"
#! SOURCE_NODE="89"
#! TARGET_NODE="82"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="151"
#! SOURCE_NODE="89"
#! TARGET_NODE="136"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="-1"
#! ENABLED="true"
#! EXECUTION_IDX="2"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="153"
#! SOURCE_NODE="89"
#! TARGET_NODE="152"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="3"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="95"
#! SOURCE_NODE="93"
#! TARGET_NODE="64"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="96"
#! SOURCE_NODE="93"
#! TARGET_NODE="46"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="81"
#! SOURCE_NODE="97"
#! TARGET_NODE="70"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="99"
#! SOURCE_NODE="97"
#! TARGET_NODE="64"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="105"
#! SOURCE_NODE="102"
#! TARGET_NODE="89"
#! SOURCE_PORT_DESC="fo 0 SORTED"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="116"
#! SOURCE_NODE="107"
#! TARGET_NODE="115"
#! SOURCE_PORT_DESC="fo 0 POINT"
#! TARGET_PORT_DESC="fi 0 POINT"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="140"
#! SOURCE_NODE="109"
#! TARGET_NODE="127"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="112"
#! SOURCE_NODE="110"
#! TARGET_NODE="84"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="138"
#! SOURCE_NODE="115"
#! TARGET_NODE="137"
#! SOURCE_PORT_DESC="fo 0 POINT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="129"
#! SOURCE_NODE="115"
#! TARGET_NODE="121"
#! SOURCE_PORT_DESC="fo 0 POINT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="124"
#! SOURCE_NODE="118"
#! TARGET_NODE="115"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 1 AREA"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="126"
#! SOURCE_NODE="119"
#! TARGET_NODE="107"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 1 LINE"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="122"
#! SOURCE_NODE="120"
#! TARGET_NODE="102"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="141"
#! SOURCE_NODE="127"
#! TARGET_NODE="132"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="143"
#! SOURCE_NODE="128"
#! TARGET_NODE="142"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="134"
#! SOURCE_NODE="132"
#! TARGET_NODE="128"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="139"
#! SOURCE_NODE="137"
#! TARGET_NODE="109"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="144"
#! SOURCE_NODE="142"
#! TARGET_NODE="120"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="150"
#! SOURCE_NODE="148"
#! TARGET_NODE="78"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 1 SUPPLIER"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="23"
#! SOURCE_NODE="7"
#! TARGET_NODE="22"
#! SOURCE_PORT_DESC="fo 1 &lt;lt&gt;Rejected&lt;gt&gt;"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="101"
#! SOURCE_NODE="64"
#! TARGET_NODE="100"
#! SOURCE_PORT_DESC="fo 1 DUPLICATE"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="157"
#! SOURCE_NODE="152"
#! TARGET_NODE="156"
#! SOURCE_PORT_DESC="fo 1 LINE"
#! TARGET_PORT_DESC="-1"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! </FEAT_LINKS>
#! <BREAKPOINTS>
#! </BREAKPOINTS>
#! <ATTR_LINKS>
#! </ATTR_LINKS>
#! <SUBDOCUMENTS>
#! <SUBDOCUMENT
#! NAME="IterativeSnipper"
#! CATEGORY="Geometries"
#! DESCRIPTION="&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;This transformer can be used to snip a line into shorter lines by specifying a segment length or number of output lines. &lt;/p&gt;&#10;"
#! DOC_DYNAMIC_INPUT_ATTRS="0"
#! DOC_EXTENTS="6959.03 1291.8"
#! DOC_TOP_LEFT="-817.59 -1200"
#! FME_DOCUMENT_GUID="e9d28b16-0b53-11e7-afc5-acbc32bf8df9"
#! FME_DOCUMENT_PRIORGUID=""
#! FME_PROCESS_COUNT="NO_PARALLELISM"
#! FME_PROCESS_GROUPS_ORDERED="No"
#! FME_PROCESS_GROUP_BY=""
#! FMX_ATTRIBUTE_PROPOGATION_MODE="AUTO"
#! GUID="e9d28b16-0b53-11e7-afc5-acbc32bf8df9"
#! HISTORY="2012-03-16,Arash&lt;space&gt;Ouji,Added&lt;space&gt;a&lt;space&gt;new&lt;space&gt;mode&lt;space&gt;and&lt;space&gt;uploaded&lt;space&gt;to&lt;space&gt;FME&lt;space&gt;Store,2012-09-25,Dan&lt;space&gt;Iseminger,Fixed&lt;space&gt;order&lt;space&gt;of&lt;space&gt;output&lt;space&gt;features&lt;space&gt;with&lt;space&gt;update&lt;space&gt;to&lt;space&gt;&lt;openbracket&gt;Snipper:1&lt;closebracket&gt;,2016-02-23,Rylan&lt;space&gt;Maschak,Updated&lt;space&gt;for&lt;space&gt;FME&lt;space&gt;Hub.&lt;space&gt;Renamed&lt;space&gt;from&lt;space&gt;IterativeSnipper_2013.,2017-03-17,Rylan&lt;space&gt;Maschak,Fixed&lt;space&gt;naming&lt;space&gt;issue&lt;space&gt;for&lt;space&gt;Version&lt;space&gt;1"
#! IS_VISIBLE="true"
#! LAST_SAVE_BUILD="FME(R) 2016.1.3.2 (20170214 - Build 16717 - macosx)"
#! LAST_SAVE_DATE="2017-03-17T13:54:29"
#! MARKDOWN_DESCRIPTION=""
#! MARKDOWN_USAGE=""
#! PYTHON_COMPATIBILITY=""
#! SUPPRESS_UPGRADE="false"
#! TITLE="IterativeSnipper"
#! USAGE="&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;span style=&quot; font-weight:600;&quot;&gt;Input Ports&lt;/span&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;span style=&quot; text-decoration: underline;&quot;&gt;Input&lt;/span&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Any feature with line geometry.&lt;/p&gt;&#10;&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;br/&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;span style=&quot; font-weight:600;&quot;&gt;Output Ports&lt;/span&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;span style=&quot; text-decoration: underline;&quot;&gt;Output&lt;/span&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Line features are output. Number of features depends on User Parameters.&lt;/p&gt;&#10;&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;br/&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;span style=&quot; text-decoration: underline;&quot;&gt;&amp;lt;Rejected&amp;gt;&lt;/span&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Features are rejected if they do not have line geometry. The value INVALID_GEOMETRY_TYPE is stored in the fme_rejection_code attribute.&lt;/p&gt;&#10;&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;br/&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;span style=&quot; font-weight:600;&quot;&gt;Parameters&lt;/span&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;span style=&quot; text-decoration: underline;&quot;&gt;Snipping Mode&lt;/span&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Shorten to Length: Input line will be iteratively cut into lines of desired length. In this mode, a line will be cut into shorter lines until the length becomes smaller than desired length. The short segment will also be output.&lt;/p&gt;&#10;&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&#10; &lt;br/&gt;&#10;&lt;/p&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Divide into Number of Lines: Input line will be snipped into a desired number of lines with equal lengths. &lt;/p&gt;&#10;"
#! USE_MARKDOWN=""
#! VIEW_POSITION="2386.98 286.959"
#! XFORM_DEPRECATED="No"
#! ZOOM_SCALE="92"
#! >
#! <GLOBAL_PARAMETERS>
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI LOOKUP_CHOICE_OR_ATTR SNIPMODE Shorten&lt;space&gt;to&lt;space&gt;Length,ToLength%Divide&lt;space&gt;into&lt;space&gt;Number&lt;space&gt;of&lt;space&gt;Lines,ToNumber Snipping Mode:"
#! DEFAULT_VALUE="ToLength"
#! IS_STAND_ALONE="false"
#! />
#! <GLOBAL_PARAMETER
#! GUI_LINE="GUI FLOAT_OR_ATTR SnipLength Value:"
#! DEFAULT_VALUE="20"
#! IS_STAND_ALONE="false"
#! />
#! </GLOBAL_PARAMETERS>
#! <COMMENTS>
#! <COMMENT
#! IDENTIFIER="33"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;helvetica neue&apos;; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Filter out all geometries &lt;br /&gt;except lines.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="630.27300000000002 -88.998800000000003"
#! TOP_LEFT="630.27300000000002 -88.998800000000003"
#! BOTTOM_RIGHT="630.27300000000002 -88.998800000000003"
#! BOUNDING_RECT="630.27300000000002 -88.998800000000003 0 0"
#! ORDER="29"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19215686274509805"
#! SIZE_POLICY="8"
#! ANCHORED_NODE="11"
#! />
#! <COMMENT
#! IDENTIFIER="34"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;helvetica neue&apos;; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Calculate length &lt;br /&gt;of input line.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="1281 -88.998800000000003"
#! TOP_LEFT="1281 -88.998800000000003"
#! BOTTOM_RIGHT="1281 -88.998800000000003"
#! BOUNDING_RECT="1281 -88.998800000000003 0 0"
#! ORDER="30"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19215686274509805"
#! SIZE_POLICY="8"
#! ANCHORED_NODE="7"
#! />
#! <COMMENT
#! IDENTIFIER="35"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;helvetica neue&apos;; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Determine Snipping Mode&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="1223.5799999999999 -727.774"
#! TOP_LEFT="1223.5799999999999 -727.774"
#! BOTTOM_RIGHT="1223.5799999999999 -727.774"
#! BOUNDING_RECT="1223.5799999999999 -727.774 0 0"
#! ORDER="34"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19215686274509805"
#! SIZE_POLICY="8"
#! ANCHORED_NODE="8"
#! />
#! <COMMENT
#! IDENTIFIER="36"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;helvetica neue&apos;; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;If line&apos;s length is less than &lt;br /&gt;or equal to Snipping Distance, &lt;br /&gt;send to Output. If not, snip it.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="2531.2399999999998 -8.6903000000000006"
#! TOP_LEFT="2531.2399999999998 -8.6903000000000006"
#! BOTTOM_RIGHT="2531.2399999999998 -8.6903000000000006"
#! BOUNDING_RECT="2531.2399999999998 -8.6903000000000006 0 0"
#! ORDER="35"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19215686274509805"
#! SIZE_POLICY="8"
#! ANCHORED_NODE="9"
#! />
#! <COMMENT
#! IDENTIFIER="37"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;helvetica neue&apos;; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Cut a segment with length &lt;br /&gt;of snipping distance from &lt;br /&gt;the beginning of the line, &lt;br /&gt;output the segment to the &lt;br /&gt;output port, send the rest of the &lt;br /&gt;line to the looping Output port.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="2663.5599999999999 -584.69600000000003"
#! TOP_LEFT="2663.5599999999999 -584.69600000000003"
#! BOTTOM_RIGHT="2663.5599999999999 -584.69600000000003"
#! BOUNDING_RECT="2663.5599999999999 -584.69600000000003 0 0"
#! ORDER="37"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19215686274509805"
#! SIZE_POLICY="8"
#! ANCHORED_NODE="14"
#! />
#! <COMMENT
#! IDENTIFIER="38"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;helvetica neue&apos;; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Clean up attributes&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="4126.0699999999997 -104.691"
#! TOP_LEFT="4126.0699999999997 -104.691"
#! BOTTOM_RIGHT="4126.0699999999997 -104.691"
#! BOUNDING_RECT="4126.0699999999997 -104.691 0 0"
#! ORDER="38"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19215686274509805"
#! SIZE_POLICY="8"
#! ANCHORED_NODE="13"
#! />
#! <COMMENT
#! IDENTIFIER="39"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;helvetica neue&apos;; font-size:13pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Calculate length &lt;br /&gt;of input line segment.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="1899.23 -749.44399999999996"
#! TOP_LEFT="1899.23 -749.44399999999996"
#! BOTTOM_RIGHT="1899.23 -749.44399999999996"
#! BOUNDING_RECT="1899.23 -749.44399999999996 0 0"
#! ORDER="39"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19215686274509805"
#! SIZE_POLICY="8"
#! ANCHORED_NODE="10"
#! />
#! <COMMENT
#! IDENTIFIER="44"
#! COMMENT_VALUE="&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;&#10;&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;&#10;p, li { white-space: pre-wrap; }&#10;&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:&apos;MS Shell Dlg 2&apos;; font-size:9pt; font-weight:400; font-style:normal;&quot;&gt;&#10;&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;Counter&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;"
#! POSITION="5386.8800754942358 91.796546226331827"
#! TOP_LEFT="5386.8800754942358 91.796546226331827"
#! BOTTOM_RIGHT="5816.8800754942358 92.796546226331827"
#! BOUNDING_RECT="5386.8800754942358 91.796546226331827 430 -1"
#! ORDER="500000000000002"
#! FOLLOW_ANCHOR="true"
#! INFO_NODE="false"
#! COLOUR="1,1,0.78431372549019607,0.19607843137254902"
#! SIZE_POLICY="10"
#! ANCHORED_NODE="41"
#! />
#! </COMMENTS>
#! <CONSTANTS>
#! </CONSTANTS>
#! <BOOKMARKS>
#! <BOOKMARK
#! IDENTIFIER="40"
#! NAME="Determine Snipping Distance"
#! DESCRIPTION="&lt;html&gt;&lt;body&gt;&lt;/body&gt;&lt;/html&gt;"
#! TOP_LEFT="1809.25 -180.00200000000001"
#! ORDER="500000000000000"
#! BOTTOM_RIGHT="2427.828 -606.25099999999998"
#! BOUNDING_RECT="1809.25 -180.00200000000001 618.57799999999997 426.24900000000002"
#! STICKY="true"
#! COLOUR="0.81960784313725488,0.26666666666666666,0.81960784313725488"
#! CONTENTS="15 12 "
#! >
#! </BOOKMARK>
#! </BOOKMARKS>
#! <TRANSFORMERS>
#! <TRANSFORMER
#! IDENTIFIER="7"
#! TYPE="LengthCalculator"
#! VERSION="0"
#! POSITION="1281 -280"
#! BOUNDING_RECT="1281 -280 0 0"
#! ORDER="27"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="13450"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="DIM" PARM_VALUE="3"/>
#! <XFORM_PARM PARM_NAME="LEN_ATTR" PARM_VALUE="Iterative_Snipper_length"/>
#! <XFORM_PARM PARM_NAME="MULT" PARM_VALUE="1"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="LengthCalculator"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="8"
#! TYPE="Tester"
#! VERSION="2"
#! POSITION="1281 -496.92500000000001"
#! BOUNDING_RECT="1281 -496.92500000000001 0 0"
#! ORDER="26"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="16174"
#! >
#! <OUTPUT_FEAT NAME="PASSED"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="FAILED"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="BOOL_OP" PARM_VALUE="OR"/>
#! <XFORM_PARM PARM_NAME="COMPOSITE_TEST" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="TEST_CLAUSE" PARM_VALUE="TEST $(SNIPMODE) = ToNumber"/>
#! <XFORM_PARM PARM_NAME="TEST_CLAUSE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Snip_Mode"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="9"
#! TYPE="Tester"
#! VERSION="2"
#! POSITION="2605.4099999999999 -247.69200000000001"
#! BOUNDING_RECT="2605.4099999999999 -247.69200000000001 0 0"
#! ORDER="31"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="16174"
#! >
#! <OUTPUT_FEAT NAME="PASSED"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="FAILED"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="BOOL_OP" PARM_VALUE="OR"/>
#! <XFORM_PARM PARM_NAME="COMPOSITE_TEST" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="TEST_CLAUSE" PARM_VALUE="TEST &lt;at&gt;Value&lt;openparen&gt;Iterative_Snipper_length&lt;closeparen&gt; &lt;= &lt;at&gt;Value&lt;openparen&gt;Iterative_Snipper_maxLength&lt;closeparen&gt;"/>
#! <XFORM_PARM PARM_NAME="TEST_CLAUSE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Tester"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="10"
#! TYPE="LengthCalculator"
#! VERSION="0"
#! POSITION="1907.5899999999999 -945.97400000000005"
#! BOUNDING_RECT="1907.5899999999999 -945.97400000000005 0 0"
#! ORDER="40"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="13450"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="DIM" PARM_VALUE="3"/>
#! <XFORM_PARM PARM_NAME="LEN_ATTR" PARM_VALUE="Iterative_Snipper_length"/>
#! <XFORM_PARM PARM_NAME="MULT" PARM_VALUE="1"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="LengthCalculator_2"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="11"
#! TYPE="GeometryFilter"
#! VERSION="7"
#! POSITION="681.05899999999997 -280"
#! BOUNDING_RECT="681.05899999999997 -280 0 0"
#! ORDER="28"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="16174"
#! >
#! <OUTPUT_FEAT NAME="LINE"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <OUTPUT_FEAT NAME="&lt;UNFILTERED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_PARM PARM_NAME="BREAK_AGG" PARM_VALUE="No"/>
#! <XFORM_PARM PARM_NAME="GEOM_PORT_NAMES" PARM_VALUE="Line"/>
#! <XFORM_PARM PARM_NAME="INSTANTIATE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="GeometryFilter"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="12"
#! TYPE="ExpressionEvaluator"
#! VERSION="3"
#! POSITION="1907.5899999999999 -280"
#! BOUNDING_RECT="1907.5899999999999 -280 0 0"
#! ORDER="33"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="16174"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ACTION" PARM_VALUE="Create New Attribute"/>
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_HANDLING" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTRLIST" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="EXPRESSION" PARM_VALUE="@Value(Iterative_Snipper_length)/@double($(SnipLength))"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_MODE_DISPLAY" PARM_VALUE="No Substitution"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_VALUE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="PARAM_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="VAL_ATTR" PARM_VALUE="Iterative_Snipper_maxLength"/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ExpressionEvaluator"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="13"
#! TYPE="AttributeRemover"
#! VERSION="1"
#! POSITION="4126.0699999999997 -280"
#! BOUNDING_RECT="4126.0699999999997 -280 0 0"
#! ORDER="36"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="16174"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_PARM PARM_NAME="LIST_ATTRS" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="REMOVE_ATTRS" PARM_VALUE="Iterative_Snipper_length,Iterative_Snipper_maxLength"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeRemover"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="14"
#! TYPE="Snipper"
#! VERSION="1"
#! POSITION="3424.1500000000001 -593.05999999999995"
#! BOUNDING_RECT="3424.1500000000001 -593.05999999999995 0 0"
#! ORDER="41"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="13450"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="REMNANTS"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="2"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="2" />
#! <XFORM_PARM PARM_NAME="ENDLOCATIONATTR" PARM_VALUE="@Value(Iterative_Snipper_maxLength)"/>
#! <XFORM_PARM PARM_NAME="ENDVERTEXATTR" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="INDEX_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="MEASUREMENTTYPE" PARM_VALUE="3D"/>
#! <XFORM_PARM PARM_NAME="MEASUREMENT_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="MEASURE_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="MEASURE_NAME" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="SNIPMODE" PARM_VALUE="Distance (Value)"/>
#! <XFORM_PARM PARM_NAME="SNIP_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="STARTLOCATIONATTR" PARM_VALUE="0"/>
#! <XFORM_PARM PARM_NAME="STARTVERTEXATTR" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="Values_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Snipper_3"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="15"
#! TYPE="ParameterFetcher"
#! VERSION="4"
#! POSITION="1907.5899999999999 -446.52999999999997"
#! BOUNDING_RECT="1907.5899999999999 -446.52999999999997 0 0"
#! ORDER="32"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="13450"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_length" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_ATTR ATTR_NAME="Iterative_Snipper_maxLength" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTR_LIST" PARM_VALUE="Iterative_Snipper_maxLength {$(SnipLength)}"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="ParameterFetcher"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="16"
#! TYPE="AttributeCreator"
#! VERSION="8"
#! POSITION="4164.2700000000004 -1172.54"
#! BOUNDING_RECT="4164.2700000000004 -1172.54 -1 -1"
#! ORDER="500000000000000"
#! PARMS_EDITED="true"
#! ENABLED="true"
#! LAST_PARM_EDIT="16174"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_GRP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTRIBUTE_HANDLING" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="ATTR_TABLE" PARM_VALUE="&quot;&quot; fme_rejection_code SET_TO INVALID_GEOMETRY_TYPE"/>
#! <XFORM_PARM PARM_NAME="MULTI_FEATURE_MODE" PARM_VALUE="NO"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_MODE_DISPLAY" PARM_VALUE="No Substitution"/>
#! <XFORM_PARM PARM_NAME="NULL_ATTR_VALUE" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="NUM_PRIOR_FEATURES" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="NUM_SUBSEQUENT_FEATURES" PARM_VALUE="&lt;Unused&gt;"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="AttributeCreator"/>
#! </TRANSFORMER>
#! <TRANSFORMER
#! IDENTIFIER="41"
#! TYPE="Counter"
#! VERSION="2"
#! POSITION="5410.8800754942358 -41.95414128054324"
#! BOUNDING_RECT="5410.8800754942358 -41.95414128054324 -1 -1"
#! ORDER="500000000000001"
#! PARMS_EDITED="true"
#! ENABLED="false"
#! LAST_PARM_EDIT="18592"
#! >
#! <OUTPUT_FEAT NAME="OUTPUT"/>
#! <FEAT_COLLAPSED COLLAPSED="0"/>
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="0" />
#! <OUTPUT_FEAT NAME="&lt;REJECTED&gt;"/>
#! <FEAT_COLLAPSED COLLAPSED="1"/>
#! <XFORM_ATTR ATTR_NAME="fme_rejection_code" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_ATTR ATTR_NAME="troncon_id" IS_USER_CREATED="false" FEAT_INDEX="1" />
#! <XFORM_PARM PARM_NAME="CNT_ATTR" PARM_VALUE="troncon_id"/>
#! <XFORM_PARM PARM_NAME="DOMAIN" PARM_VALUE="counter"/>
#! <XFORM_PARM PARM_NAME="PARAMETERS_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="SCOPE" PARM_VALUE="Global"/>
#! <XFORM_PARM PARM_NAME="START" PARM_VALUE="13"/>
#! <XFORM_PARM PARM_NAME="TRANSFORMER_GROUP" PARM_VALUE=""/>
#! <XFORM_PARM PARM_NAME="XFORMER_NAME" PARM_VALUE="Counter"/>
#! </TRANSFORMER>
#! </TRANSFORMERS>
#! <SUBDOCUMENT_IOS>
#! <SUBDOCUMENT_IO
#! IDENTIFIER="2"
#! NAME="Input"
#! POSITION="-817.59004763960661 -280"
#! BOUNDING_RECT="-817.59004763960661 -280 0 0"
#! COLLAPSED="false"
#! PUBLISHED="true"
#! IS_SOURCE="true"
#! ATTR_MODE="0"
#! >
#! </SUBDOCUMENT_IO>
#! <SUBDOCUMENT_IO
#! IDENTIFIER="3"
#! NAME="LoopINPUT"
#! POSITION="4126.0699999999997 -839.81899999999996"
#! BOUNDING_RECT="4126.0699999999997 -839.81899999999996 0 0"
#! COLLAPSED="false"
#! IS_SOURCE="loop"
#! ATTR_MODE="0"
#! >
#! </SUBDOCUMENT_IO>
#! <SUBDOCUMENT_IO
#! IDENTIFIER="4"
#! NAME="Output"
#! POSITION="6141.43508843784 -279.60322690183426"
#! BOUNDING_RECT="6141.43508843784 -279.60322690183426 0 0"
#! COLLAPSED="false"
#! IS_SOURCE="false"
#! ATTR_MODE="0"
#! >
#! </SUBDOCUMENT_IO>
#! <SUBDOCUMENT_IO
#! IDENTIFIER="5"
#! NAME="LoopINPUT"
#! POSITION="1281 -945.97400000000005"
#! BOUNDING_RECT="1281 -945.97400000000005 0 0"
#! COLLAPSED="false"
#! PUBLISHED="false"
#! IS_SOURCE="true"
#! ATTR_MODE="0"
#! >
#! </SUBDOCUMENT_IO>
#! <SUBDOCUMENT_IO
#! IDENTIFIER="6"
#! NAME="&lt;Rejected&gt;"
#! POSITION="4915.1999999999998 -1172.54"
#! BOUNDING_RECT="4915.1999999999998 -1172.54 0 0"
#! COLLAPSED="false"
#! IS_SOURCE="false"
#! ATTR_MODE="0"
#! >
#! </SUBDOCUMENT_IO>
#! </SUBDOCUMENT_IOS>
#! <FEAT_LINKS>
#! <FEAT_LINK
#! IDENTIFIER="17"
#! SOURCE_NODE="2"
#! TARGET_NODE="11"
#! SOURCE_PORT_DESC="0"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="18"
#! SOURCE_NODE="5"
#! TARGET_NODE="10"
#! SOURCE_PORT_DESC="0"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="19"
#! SOURCE_NODE="7"
#! TARGET_NODE="8"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="20"
#! SOURCE_NODE="8"
#! TARGET_NODE="12"
#! SOURCE_PORT_DESC="fo 0 PASSED"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="21"
#! SOURCE_NODE="9"
#! TARGET_NODE="13"
#! SOURCE_PORT_DESC="fo 0 PASSED"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="22"
#! SOURCE_NODE="10"
#! TARGET_NODE="9"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="23"
#! SOURCE_NODE="11"
#! TARGET_NODE="7"
#! SOURCE_PORT_DESC="fo 0 LINE"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="24"
#! SOURCE_NODE="12"
#! TARGET_NODE="9"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="42"
#! SOURCE_NODE="13"
#! TARGET_NODE="41"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="45"
#! SOURCE_NODE="13"
#! TARGET_NODE="4"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="0"
#! ENABLED="true"
#! EXECUTION_IDX="1"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="27"
#! SOURCE_NODE="14"
#! TARGET_NODE="13"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="28"
#! SOURCE_NODE="15"
#! TARGET_NODE="9"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="26"
#! SOURCE_NODE="16"
#! TARGET_NODE="6"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="0"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="43"
#! SOURCE_NODE="41"
#! TARGET_NODE="4"
#! SOURCE_PORT_DESC="fo 0 OUTPUT"
#! TARGET_PORT_DESC="0"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="29"
#! SOURCE_NODE="8"
#! TARGET_NODE="15"
#! SOURCE_PORT_DESC="fo 1 FAILED"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="30"
#! SOURCE_NODE="9"
#! TARGET_NODE="14"
#! SOURCE_PORT_DESC="fo 1 FAILED"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! <FEAT_LINK
#! IDENTIFIER="31"
#! SOURCE_NODE="11"
#! TARGET_NODE="16"
#! SOURCE_PORT_DESC="fo 1 &lt;lt&gt;UNFILTERED&lt;gt&gt;"
#! TARGET_PORT_DESC="fi 0 "
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS="1112 -1200"
#! />
#! <FEAT_LINK
#! IDENTIFIER="32"
#! SOURCE_NODE="14"
#! TARGET_NODE="3"
#! SOURCE_PORT_DESC="fo 1 REMNANTS"
#! TARGET_PORT_DESC="0"
#! ENABLED="true"
#! EXECUTION_IDX="0"
#! HIDDEN="false"
#! EXTRA_POINTS=""
#! />
#! </FEAT_LINKS>
#! <BREAKPOINTS>
#! </BREAKPOINTS>
#! <ATTR_LINKS>
#! </ATTR_LINKS>
#! </SUBDOCUMENT>
#! </SUBDOCUMENTS>
#! <LOOKUP_TABLES>
#! </LOOKUP_TABLES>
#! </WORKSPACE>
FME_PYTHON_VERSION 36
GUI IGNORE SourceDataset_POSTGIS_1,POSTGIS_IN_FME_CONNECTION_GROUP_POSTGIS_1,POSTGIS_IN_HOST_POSTGIS_1,POSTGIS_IN_PORT_POSTGIS_1,POSTGIS_IN_USER_NAME_POSTGIS_1,POSTGIS_IN_PASSWORD_POSTGIS_1,POSTGIS_IN_FME_GROUP_NAMED1_POSTGIS_1,POSTGIS_IN_WHERE_CLAUSE_POSTGIS_1,POSTGIS_IN_USE_SEARCH_ENVELOPE_POSTGIS_1,POSTGIS_IN_SEARCH_ENVELOPE_MINX_POSTGIS_1,POSTGIS_IN_SEARCH_ENVELOPE_MINY_POSTGIS_1,POSTGIS_IN_SEARCH_ENVELOPE_MAXX_POSTGIS_1,POSTGIS_IN_SEARCH_ENVELOPE_MAXY_POSTGIS_1,POSTGIS_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_POSTGIS_1,POSTGIS_IN_CLIP_TO_ENVELOPE_POSTGIS_1,POSTGIS_IN_SEARCH_METHOD_POSTGIS_1,POSTGIS_IN_ADVANCED_POSTGIS_1,POSTGIS_IN_FEATURES_PER_FETCH_POSTGIS_1,POSTGIS_IN_BEGIN_SQL_POSTGIS_1,POSTGIS_IN_END_SQL_POSTGIS_1,POSTGIS_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGIS_1,SourceDataset_POSTGRES_1,POSTGRES_IN_FME_CONNECTION_GROUP_POSTGRES_1,POSTGRES_IN_HOST_POSTGRES_1,POSTGRES_IN_PORT_POSTGRES_1,POSTGRES_IN_USER_NAME_POSTGRES_1,POSTGRES_IN_PASSWORD_POSTGRES_1,POSTGRES_IN_FME_GROUP_NAMED1_POSTGRES_1,POSTGRES_IN_WHERE_CLAUSE_POSTGRES_1,POSTGRES_IN_ADVANCED_POSTGRES_1,POSTGRES_IN_FEATURES_PER_FETCH_POSTGRES_1,POSTGRES_IN_BEGIN_SQL_POSTGRES_1,POSTGRES_IN_END_SQL_POSTGRES_1,POSTGRES_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGRES_1,DestDataset_GEOJSON_1,GEOJSON_OUT_FME_GROUP_NAMED1_GEOJSON_1,GEOJSON_OUT_WRITER_CHARSET_GEOJSON_1,GEOJSON_OUT_WRITE_BOM_GEOJSON_1,GEOJSON_OUT_STRICT_SPEC_GEOJSON_1,GEOJSON_OUT_FME_GROUP_NAMED2_GEOJSON_1,GEOJSON_OUT_PRETTY_PRINT_GEOJSON_1,GEOJSON_OUT_INDENT_SIZE_GEOJSON_1,GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_1,GEOJSON_OUT_FME_GROUP_NAMED3_GEOJSON_1,GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_1,GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_1,GEOJSON_OUT_FME_GROUP_NAMED4_GEOJSON_1,GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_1,DestDataset_GEOJSON_2,GEOJSON_OUT_FME_GROUP_NAMED1_GEOJSON_2,GEOJSON_OUT_WRITER_CHARSET_GEOJSON_2,GEOJSON_OUT_WRITE_BOM_GEOJSON_2,GEOJSON_OUT_STRICT_SPEC_GEOJSON_2,GEOJSON_OUT_FME_GROUP_NAMED2_GEOJSON_2,GEOJSON_OUT_PRETTY_PRINT_GEOJSON_2,GEOJSON_OUT_INDENT_SIZE_GEOJSON_2,GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_2,GEOJSON_OUT_FME_GROUP_NAMED3_GEOJSON_2,GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_2,GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_2,GEOJSON_OUT_FME_GROUP_NAMED4_GEOJSON_2,GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_2,DestDataset_POSTGIS_2,POSTGIS_OUT_FME_CONNECTION_GROUP_POSTGIS_2,POSTGIS_OUT_ADVANCED_POSTGIS_2,POSTGIS_OUT_BULK_COPY_POSTGIS_2,POSTGIS_OUT_START_TRANSACTION_POSTGIS_2,POSTGIS_OUT_TRANSACTION_INTERVAL_POSTGIS_2,POSTGIS_OUT_INSERT_TEXT_GEOMETRY_POSTGIS_2,POSTGIS_OUT_BEGIN_SQL_POSTGIS_2,POSTGIS_OUT_END_SQL_POSTGIS_2
DEFAULT_MACRO DestDataset_GEOJSON $(FME_MF_DIR)data/phase_3_troncons.geojson
GUI IGNORE FILENAME DestDataset_GEOJSON GeoJSON_Files(*.json)|*.json|All_Files|* Destination GeoJSON File:
DEFAULT_MACRO DestDataset_GEOJSON_4 $(FME_MF_DIR)data/phase_3_pk.geojson
GUI IGNORE FILENAME DestDataset_GEOJSON_4 GeoJSON_Files(*.json)|*.json|All_Files|* Destination GeoJSON File:
DEFAULT_MACRO SourceDataset_POSTGIS_3 redadeg
GUI IGNORE TEXT SourceDataset_POSTGIS_3 Database:
DEFAULT_MACRO SourceDataset_POSTGRES redadeg
GUI IGNORE TEXT SourceDataset_POSTGRES Database:
DEFAULT_MACRO START 13
GUI IGNORE INT START Count Start:
DEFAULT_MACRO DestDataset_POSTGIS redadeg<at>pgrouting
GUI IGNORE NAMED_DB_CONNECTION_ENCODED DestDataset_POSTGIS FMT:POSTGIS%FAMILY:PostgreSQL Connection:
INCLUDE [ if {{$(DestDataset_GEOJSON)} == {}} { puts_real {Parameter 'DestDataset_GEOJSON' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(DestDataset_GEOJSON_4)} == {}} { puts_real {Parameter 'DestDataset_GEOJSON_4' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(SourceDataset_POSTGIS_3)} == {}} { puts_real {Parameter 'SourceDataset_POSTGIS_3' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(SourceDataset_POSTGRES)} == {}} { puts_real {Parameter 'SourceDataset_POSTGRES' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(START)} == {}} { puts_real {Parameter 'START' must be given a value.}; exit 1; }; ]
INCLUDE [ if {{$(DestDataset_POSTGIS)} == {}} { puts_real {Parameter 'DestDataset_POSTGIS' must be given a value.}; exit 1; }; ]
#! START_HEADER
#! START_WB_HEADER
READER_TYPE MULTI_READER
MULTI_READER_TYPE{0} POSTGIS
MULTI_READER_KEYWORD{0} POSTGIS_1
MULTI_READER_GEN_DIRECTIVES{0} CLIP_TO_ENVELOPE,NO,QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS,Yes,SEARCH_ENVELOPE_MINX,0,SEARCH_ENVELOPE_MAXY,0,SEARCH_ENVELOPE_MINY,0,SEARCH_METHOD,MBR_OVERLAPS,SCHEMAS_FOR_TABLE_LISTING,public,EXPOSE_ATTRS_GROUP,,ADVANCED,,FEATURES_PER_FETCH,10000,USER_NAME,redadeg,WHERE_CLAUSE,,USE_SEARCH_ENVELOPE,NO,USE_TRUE_POSTGIS_TYPES,yes,SEARCH_ENVELOPE_COORDINATE_SYSTEM,,HOST,192.168.56.131,PORT,5432,BEGIN_SQL,,DISABLE_COLLECTION_SPLITTING,yes,READ_TIME_WITH_TIMEZONE,Yes,POSTGIS_EXPOSE_FORMAT_ATTRS,,SEARCH_ENVELOPE_MAXX,0,END_SQL,,_MERGE_SCHEMAS,YES,TABLELIST,public.phase_2_trace_pgr
MULTI_READER_TYPE{1} POSTGRES
MULTI_READER_KEYWORD{1} POSTGRES_1
MULTI_READER_GEN_DIRECTIVES{1} EXPOSE_ATTRS_GROUP,,POSTGRES_EXPOSE_FORMAT_ATTRS,,TABLELIST,public.secteur,WHERE_CLAUSE,,_MERGE_SCHEMAS,YES,SCHEMAS_FOR_TABLE_LISTING,public,HOST,192.168.56.131,FEATURES_PER_FETCH,10000,READ_TIME_WITH_TIMEZONE,Yes,ADVANCED,,END_SQL,,QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS,Yes,BEGIN_SQL,,PORT,5432,USER_NAME,redadeg
WRITER_TYPE MULTI_WRITER
MULTI_WRITER_DATASET_ORDER BY_ID
MULTI_WRITER_FIRST_WRITER_ID 0
MULTI_WRITER_TYPE{0} GEOJSON
MULTI_WRITER_KEYWORD{0} GEOJSON_1
MULTI_WRITER_TYPE{1} GEOJSON
MULTI_WRITER_KEYWORD{1} GEOJSON_2
MULTI_WRITER_TYPE{2} POSTGIS
MULTI_WRITER_KEYWORD{2} POSTGIS_2
#! END_WB_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "POSTGIS_1"
#! END_WB_HEADER
#! START_SOURCE_HEADER POSTGIS POSTGIS_1
# The dataset this mapping file was generated from was:
#! END_SOURCE_HEADER
#! START_WB_HEADER
DEFAULT_MACRO SourceDataset
INCLUDE [ if {{$(SourceDataset)} != ""} { \
puts {DEFAULT_MACRO SourceDataset_POSTGIS_1 $(SourceDataset)} \
} ]
#! END_WB_HEADER
#! START_SOURCE_HEADER POSTGIS POSTGIS_1
DEFAULT_MACRO SourceDataset_POSTGIS_1 $(SourceDataset_POSTGIS_3)
GUI TEXT SourceDataset_POSTGIS_1 Database:
DEFAULT_MACRO POSTGIS_IN_QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS_POSTGIS_1 Yes
POSTGIS_1_QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS "$(POSTGIS_IN_QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS_POSTGIS_1)"
DEFAULT_MACRO POSTGIS_IN_READ_TIME_WITH_TIMEZONE_POSTGIS_1 Yes
POSTGIS_1_READ_TIME_WITH_TIMEZONE "$(POSTGIS_IN_READ_TIME_WITH_TIMEZONE_POSTGIS_1)"
DEFAULT_MACRO POSTGIS_IN_DISABLE_COLLECTION_SPLITTING_POSTGIS_1 yes
POSTGIS_1_DISABLE_COLLECTION_SPLITTING "$(POSTGIS_IN_DISABLE_COLLECTION_SPLITTING_POSTGIS_1)"
DEFAULT_MACRO POSTGIS_IN_USE_TRUE_POSTGIS_TYPES_POSTGIS_1 yes
POSTGIS_1_USE_TRUE_POSTGIS_TYPES "$(POSTGIS_IN_USE_TRUE_POSTGIS_TYPES_POSTGIS_1)"
DEFAULT_MACRO POSTGIS_IN_FME_CONNECTION_GROUP_POSTGIS_1
GUI OPTIONAL DISCLOSUREGROUP POSTGIS_IN_FME_CONNECTION_GROUP_POSTGIS_1 POSTGIS_IN_NAMED_CONNECTION%POSTGIS_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGIS_1 Database Connection
DEFAULT_MACRO POSTGIS_IN_HOST_POSTGIS_1 192.168.56.131
POSTGIS_1_HOST "$(POSTGIS_IN_HOST_POSTGIS_1)"
GUI TEXT POSTGIS_IN_HOST_POSTGIS_1 Host:
DEFAULT_MACRO POSTGIS_IN_PORT_POSTGIS_1 5432
POSTGIS_1_PORT "$(POSTGIS_IN_PORT_POSTGIS_1)"
GUI INTEGER POSTGIS_IN_PORT_POSTGIS_1 Port:
DEFAULT_MACRO POSTGIS_IN_USER_NAME_POSTGIS_1 redadeg
POSTGIS_1_USER_NAME "$(POSTGIS_IN_USER_NAME_POSTGIS_1)"
GUI TEXT POSTGIS_IN_USER_NAME_POSTGIS_1 Username:
DEFAULT_MACRO POSTGIS_IN_PASSWORD_POSTGIS_1 fme_decrypt(MDowfCN8I3xcG3GQ/TeRRUJUZ5LDPtdvpscbh7Nj9gG/INBkAGA+fkaDrNbhZtfa3rmkUUrCxKWaAFwiYsKgWJNl/0mRpxUuP+IT2c+Qhh26JEZtUWAmpuoaQCdQ3ykKWm2zaoAM5MBCGaGEuYe+6AS07/nLNRJwqp1jdwP1FgVCbXRvZtWfKjEZlNJYQ+EicVc6cv2DxCYJyTljvXwF8mKxenML6FKJiHARQCO8OMJidKKZQJP1SeYIhqB0YrtGw4cGV2ZquQKifvRjB2Tl6wBAWDmeCg+R1jvft1tR17SISyTDv77K+mV80w2aaUSgybbF7coM0BrQPcpehfjlW+YxV73+9mPMFXKQeznZ22T8MJor57O44p8U2NQCw35HiFBs0oVP9VkkY0D/WzGRevseyX1pIEWJSQSFwkJVhiyXavMDz5E5SEYgTZHfVeGBXCDuIEEbfRRkPU5yD2nw2ZAVimDRD7UQhEEY6PosGqU17He4y35WEfAggQ40+EKuupOQSZRsKotTTqlYGHJtX49ymuKqfyZzOAUSUzDMcj8gfDgzOCcuhw2sK3fJaMszj/DLU/E7u56X3TJH2TCl3R7o1BsmeMpmgTXrl7OHNVsoDdyHTIp0QqTUSsYWxfZRN+zu72sZw6UY0XRp2lD4wPPyzLmPvgzktHbXLI/X8sm03GjRPTMTKvRYcjHvY0fblJ3blr6YgGKadQf5zvzPu84ddbsxGM9ySTf9xDxg+biPBHL/uL8uhIu9aTI/z8paL9i0mDLAJtNSSB5/q/VwHqGtH6vaKxmfaxlWZvKxdTmgQUPZKVUKLvEep2uAumU+555P3W/3BKNpEAxTeJ+JDrFzei42FvmWx+9mr6pz1+V/Rx6xLvCbxrd0rAzl/VaTRL1LbX1UOtzFBYZpQnojInKm/XlWgjRO)
POSTGIS_1_PASSWORD "$(POSTGIS_IN_PASSWORD_POSTGIS_1)"
GUI OPTIONAL PASSWORD_ENCODED POSTGIS_IN_PASSWORD_POSTGIS_1 Password:
DEFAULT_MACRO POSTGIS_IN_FME_GROUP_NAMED1_POSTGIS_1
GUI OPTIONAL DISCLOSUREGROUP POSTGIS_IN_FME_GROUP_NAMED1_POSTGIS_1 POSTGIS_IN_TABLELIST%POSTGIS_IN_WHERE_CLAUSE_POSTGIS_1 Constraints
DEFAULT_MACRO POSTGIS_IN_WHERE_CLAUSE_POSTGIS_1
POSTGIS_1_WHERE_CLAUSE "$(POSTGIS_IN_WHERE_CLAUSE_POSTGIS_1)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGIS_IN_WHERE_CLAUSE_POSTGIS_1 MODE,WHERE;FORMAT,POSTGIS WHERE Clause:
DEFAULT_MACRO POSTGIS_IN_EXPOSE_ATTRS_GROUP_POSTGIS_1
POSTGIS_1_EXPOSE_ATTRS_GROUP "$(POSTGIS_IN_EXPOSE_ATTRS_GROUP_POSTGIS_1)"
# Include this file in source setting section to add native search envelope processing
# Zero as a default means we don't do any search -- this makes workbench happier
DEFAULT_MACRO POSTGIS_IN_USE_SEARCH_ENVELOPE_POSTGIS_1 NO
POSTGIS_1_USE_SEARCH_ENVELOPE "$(POSTGIS_IN_USE_SEARCH_ENVELOPE_POSTGIS_1)"
GUI ACTIVEDISCLOSUREGROUP POSTGIS_IN_USE_SEARCH_ENVELOPE_POSTGIS_1 POSTGIS_IN_SEARCH_ENVELOPE_MINX_POSTGIS_1%POSTGIS_IN_SEARCH_ENVELOPE_MINY_POSTGIS_1%POSTGIS_IN_SEARCH_ENVELOPE_MAXX_POSTGIS_1%POSTGIS_IN_SEARCH_ENVELOPE_MAXY_POSTGIS_1%POSTGIS_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_POSTGIS_1%POSTGIS_IN_CLIP_TO_ENVELOPE_POSTGIS_1%POSTGIS_IN_SEARCH_METHOD_POSTGIS_1%POSTGIS_IN_SEARCH_METHOD_FILTER%POSTGIS_IN_SEARCH_ORDER%POSTGIS_IN_SEARCH_FEATURE%POSTGIS_IN_DUMMY_SEARCH_ENVELOPE_PARAMETER Use Search Envelope
# ===========================================================================
GUI LOOKUP POSTGIS_IN_SEARCH_ENVELOPE_MINX_POSTGIS_1 <Unused>,0
DEFAULT_MACRO POSTGIS_IN_SEARCH_ENVELOPE_MINX_POSTGIS_1 0
POSTGIS_1_SEARCH_ENVELOPE "$(POSTGIS_IN_SEARCH_ENVELOPE_MINX_POSTGIS_1)"
GUI OPTIONAL FLOAT POSTGIS_IN_SEARCH_ENVELOPE_MINX_POSTGIS_1 Minimum X:
# ===========================================================================
GUI LOOKUP POSTGIS_IN_SEARCH_ENVELOPE_MINY_POSTGIS_1 <Unused>,0
DEFAULT_MACRO POSTGIS_IN_SEARCH_ENVELOPE_MINY_POSTGIS_1 0
POSTGIS_1_SEARCH_ENVELOPE "$(POSTGIS_IN_SEARCH_ENVELOPE_MINY_POSTGIS_1)"
GUI OPTIONAL FLOAT POSTGIS_IN_SEARCH_ENVELOPE_MINY_POSTGIS_1 Minimum Y:
# ===========================================================================
GUI LOOKUP POSTGIS_IN_SEARCH_ENVELOPE_MAXX_POSTGIS_1 <Unused>,0
DEFAULT_MACRO POSTGIS_IN_SEARCH_ENVELOPE_MAXX_POSTGIS_1 0
POSTGIS_1_SEARCH_ENVELOPE "$(POSTGIS_IN_SEARCH_ENVELOPE_MAXX_POSTGIS_1)"
GUI OPTIONAL FLOAT POSTGIS_IN_SEARCH_ENVELOPE_MAXX_POSTGIS_1 Maximum X:
# ===========================================================================
GUI LOOKUP POSTGIS_IN_SEARCH_ENVELOPE_MAXY_POSTGIS_1 <Unused>,0
DEFAULT_MACRO POSTGIS_IN_SEARCH_ENVELOPE_MAXY_POSTGIS_1 0
POSTGIS_1_SEARCH_ENVELOPE "$(POSTGIS_IN_SEARCH_ENVELOPE_MAXY_POSTGIS_1)"
GUI OPTIONAL FLOAT POSTGIS_IN_SEARCH_ENVELOPE_MAXY_POSTGIS_1 Maximum Y:
# ===========================================================================
GUI LOOKUP POSTGIS_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_POSTGIS_1 <Unused>,
DEFAULT_MACRO POSTGIS_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_POSTGIS_1
POSTGIS_1_SEARCH_ENVELOPE "$(POSTGIS_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_POSTGIS_1)"
GUI OPTIONAL COORDSYS POSTGIS_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_POSTGIS_1 Search Envelope Coordinate System:
# ===========================================================================
GUI LOOKUP POSTGIS_IN_CLIP_TO_ENVELOPE_POSTGIS_1 <Unused>,NO
DEFAULT_MACRO POSTGIS_IN_CLIP_TO_ENVELOPE_POSTGIS_1 NO
POSTGIS_1_CLIP_TO_ENVELOPE "$(POSTGIS_IN_CLIP_TO_ENVELOPE_POSTGIS_1)"
GUI OPTIONAL CHECKBOX POSTGIS_IN_CLIP_TO_ENVELOPE_POSTGIS_1 YES%NO Clip to Search Envelope
DEFAULT_MACRO POSTGIS_IN_SEARCH_METHOD_POSTGIS_1 MBR_OVERLAPS
POSTGIS_1_SEARCH_METHOD "$(POSTGIS_IN_SEARCH_METHOD_POSTGIS_1)"
GUI LOOKUP_CHOICE POSTGIS_IN_SEARCH_METHOD_POSTGIS_1 MBR<space>Overlaps,MBR_OVERLAPS%Contains,CONTAINS%Disjoint,DISJOINT%Equals,EQUALS%Intersects,INTERSECTS%Overlaps,OVERLAPS%Touches,TOUCHES%Within,WITHIN Search Method:
GUI LOOKUP POSTGIS_IN_SEARCH_METHOD_POSTGIS_1 <Unused>,MBR_OVERLAPS
DEFAULT_MACRO POSTGIS_IN_ADVANCED_POSTGIS_1
GUI OPTIONAL DISCLOSUREGROUP POSTGIS_IN_ADVANCED_POSTGIS_1 POSTGIS_IN_FEATURES_PER_FETCH_POSTGIS_1%POSTGIS_IN_BEGIN_SQL_POSTGIS_1%POSTGIS_IN_END_SQL_POSTGIS_1 Advanced
DEFAULT_MACRO POSTGIS_IN_FEATURES_PER_FETCH_POSTGIS_1 10000
POSTGIS_1_FEATURES_PER_FETCH "$(POSTGIS_IN_FEATURES_PER_FETCH_POSTGIS_1)"
GUI FLOAT POSTGIS_IN_FEATURES_PER_FETCH_POSTGIS_1 Number Of Records To Fetch At A Time
DEFAULT_MACRO POSTGIS_IN_BEGIN_SQL_POSTGIS_1
POSTGIS_1_BEGIN_SQL "$(POSTGIS_IN_BEGIN_SQL_POSTGIS_1)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGIS_IN_BEGIN_SQL_POSTGIS_1 MODE,SQL;FORMAT,POSTGIS SQL To Run Before Read
DEFAULT_MACRO POSTGIS_IN_END_SQL_POSTGIS_1
POSTGIS_1_END_SQL "$(POSTGIS_IN_END_SQL_POSTGIS_1)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGIS_IN_END_SQL_POSTGIS_1 MODE,SQL;FORMAT,POSTGIS SQL To Run After Read
# ============================================================================
DEFAULT_MACRO POSTGIS_IN_ATTRIBUTE_READING_POSTGIS_1 DEFLINE_ATTRS
POSTGIS_1_ATTRIBUTE_READING "$(POSTGIS_IN_ATTRIBUTE_READING_POSTGIS_1)"
# ============================================================================
POSTGIS_1_GENERATE_FME_BUILD_NUM 18592
DEFAULT_MACRO POSTGIS_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGIS_1 public
GUI OPTIONAL TEXT POSTGIS_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGIS_1 Schemas for Table Listing:
POSTGIS_1_SCHEMAS_FOR_TABLE_LISTING $(POSTGIS_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGIS_1)
POSTGIS_1_DATASET "$(SourceDataset_POSTGIS_1)"
#! END_SOURCE_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "POSTGRES_1"
#! END_WB_HEADER
#! START_SOURCE_HEADER POSTGRES POSTGRES_1
# The dataset this mapping file was generated from was:
#! END_SOURCE_HEADER
#! START_WB_HEADER
DEFAULT_MACRO SourceDataset
INCLUDE [ if {{$(SourceDataset)} != ""} { \
puts {DEFAULT_MACRO SourceDataset_POSTGRES_1 $(SourceDataset)} \
} ]
#! END_WB_HEADER
#! START_SOURCE_HEADER POSTGRES POSTGRES_1
DEFAULT_MACRO SourceDataset_POSTGRES_1 $(SourceDataset_POSTGRES)
GUI TEXT SourceDataset_POSTGRES_1 Database:
DEFAULT_MACRO POSTGRES_IN_QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS_POSTGRES_1 Yes
POSTGRES_1_QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS "$(POSTGRES_IN_QUERY_FEATURE_TYPES_FOR_MERGE_FILTERS_POSTGRES_1)"
DEFAULT_MACRO POSTGRES_IN_READ_TIME_WITH_TIMEZONE_POSTGRES_1 Yes
POSTGRES_1_READ_TIME_WITH_TIMEZONE "$(POSTGRES_IN_READ_TIME_WITH_TIMEZONE_POSTGRES_1)"
DEFAULT_MACRO POSTGRES_IN_FME_CONNECTION_GROUP_POSTGRES_1
GUI OPTIONAL DISCLOSUREGROUP POSTGRES_IN_FME_CONNECTION_GROUP_POSTGRES_1 POSTGRES_IN_NAMED_CONNECTION%POSTGRES_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGRES_1 Database Connection
DEFAULT_MACRO POSTGRES_IN_HOST_POSTGRES_1 192.168.56.131
POSTGRES_1_HOST "$(POSTGRES_IN_HOST_POSTGRES_1)"
GUI TEXT POSTGRES_IN_HOST_POSTGRES_1 Host:
DEFAULT_MACRO POSTGRES_IN_PORT_POSTGRES_1 5432
POSTGRES_1_PORT "$(POSTGRES_IN_PORT_POSTGRES_1)"
GUI INTEGER POSTGRES_IN_PORT_POSTGRES_1 Port:
DEFAULT_MACRO POSTGRES_IN_USER_NAME_POSTGRES_1 redadeg
POSTGRES_1_USER_NAME "$(POSTGRES_IN_USER_NAME_POSTGRES_1)"
GUI TEXT POSTGRES_IN_USER_NAME_POSTGRES_1 Username:
DEFAULT_MACRO POSTGRES_IN_PASSWORD_POSTGRES_1 fme_decrypt(MDowfCN8I3xcG3GQ/TeRRUJUZ5LDPtdvpscbh7Nj9gG/INBkAGA+fkaDrNbhZtfa3rmkUUrCxKWaAFwiYsKgWJNl/0mRpxUuP+IT2c+Qhh26JEZtUWAmpuoaQCdQ3ykKWm2zaoAM5MBCGaGEuYe+6AS07/nLNRJwqp1jdwP1FgVCbXRvZtWfKjEZlNJYQ+EicVc6cv2DxCYJyTljvXwF8mKxenML6FKJiHARQCO8OMJidKKZQJP1SeYIhqB0YrtGw4cGV2ZquQKifvRjB2Tl6wBAWDmeCg+R1jvft1tR17SISyTDv77K+mV80w2aaUSgybbF7coM0BrQPcpehfjlW+YxV73+9mPMFXKQeznZ22T8MJor57O44p8U2NQCw35HiFBs0oVP9VkkY0D/WzGRevseyX1pIEWJSQSFwkJVhiyXavMDz5E5SEYgTZHfVeGBXCDuIEEbfRRkPU5yD2nw2ZAVimDRD7UQhEEY6PosGqU17He4y35WEfAggQ40+EKuupOQSZRsKotTTqlYGHJtX49ymuKqfyZzOAUSUzDMcj8gfDgzOCcuhw2sK3fJaMszat4XLJZQHEiy+GaUmjNfyMGyfs9U4CnZ0/x0DZyYd1pE/y2TMeZuAD9qzQvwhgjicFysyeCbeZeaVz/1jbucC5nkXjKEIKNMvoMltPKCC5C+2gA/CTLf737Cdm8MqpnUP8iT4vSJoDHDpajs2gHKINhL3QXrLiX3fErG/013ndkGZYJ6/DB77zcXsZ55NdH1V1WljfmqB03wL2ZyW3IklIm4R0z5tDuCZLSZSZKUS/Ur/SGBjyv+w3dOQ4ZBwFDapzR1PoKpqLTN+hYLBMmFTwT4N1LUkGKLaGfaRfDSWsHL4li+VUWVk35LiDf+J5Q5nOF5g2X4rtil+4wUHNbAMmnltkgw+fQS)
POSTGRES_1_PASSWORD "$(POSTGRES_IN_PASSWORD_POSTGRES_1)"
GUI OPTIONAL PASSWORD_ENCODED POSTGRES_IN_PASSWORD_POSTGRES_1 Password:
DEFAULT_MACRO POSTGRES_IN_FME_GROUP_NAMED1_POSTGRES_1
GUI OPTIONAL DISCLOSUREGROUP POSTGRES_IN_FME_GROUP_NAMED1_POSTGRES_1 POSTGRES_IN_TABLELIST%POSTGRES_IN_WHERE_CLAUSE_POSTGRES_1 Constraints
DEFAULT_MACRO POSTGRES_IN_WHERE_CLAUSE_POSTGRES_1
POSTGRES_1_WHERE_CLAUSE "$(POSTGRES_IN_WHERE_CLAUSE_POSTGRES_1)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGRES_IN_WHERE_CLAUSE_POSTGRES_1 MODE,WHERE;FORMAT,POSTGRES WHERE Clause:
DEFAULT_MACRO POSTGRES_IN_EXPOSE_ATTRS_GROUP_POSTGRES_1
POSTGRES_1_EXPOSE_ATTRS_GROUP "$(POSTGRES_IN_EXPOSE_ATTRS_GROUP_POSTGRES_1)"
DEFAULT_MACRO POSTGRES_IN_ADVANCED_POSTGRES_1
GUI OPTIONAL DISCLOSUREGROUP POSTGRES_IN_ADVANCED_POSTGRES_1 POSTGRES_IN_FEATURES_PER_FETCH_POSTGRES_1%POSTGRES_IN_BEGIN_SQL_POSTGRES_1%POSTGRES_IN_END_SQL_POSTGRES_1 Advanced
DEFAULT_MACRO POSTGRES_IN_FEATURES_PER_FETCH_POSTGRES_1 10000
POSTGRES_1_FEATURES_PER_FETCH "$(POSTGRES_IN_FEATURES_PER_FETCH_POSTGRES_1)"
GUI FLOAT POSTGRES_IN_FEATURES_PER_FETCH_POSTGRES_1 Number Of Records To Fetch At A Time
DEFAULT_MACRO POSTGRES_IN_BEGIN_SQL_POSTGRES_1
POSTGRES_1_BEGIN_SQL "$(POSTGRES_IN_BEGIN_SQL_POSTGRES_1)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGRES_IN_BEGIN_SQL_POSTGRES_1 MODE,SQL;FORMAT,POSTGRES SQL To Run Before Read
DEFAULT_MACRO POSTGRES_IN_END_SQL_POSTGRES_1
POSTGRES_1_END_SQL "$(POSTGRES_IN_END_SQL_POSTGRES_1)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGRES_IN_END_SQL_POSTGRES_1 MODE,SQL;FORMAT,POSTGRES SQL To Run After Read
# ============================================================================
DEFAULT_MACRO POSTGRES_IN_ATTRIBUTE_READING_POSTGRES_1 DEFLINE_ATTRS
POSTGRES_1_ATTRIBUTE_READING "$(POSTGRES_IN_ATTRIBUTE_READING_POSTGRES_1)"
# ============================================================================
POSTGRES_1_GENERATE_FME_BUILD_NUM 18592
DEFAULT_MACRO POSTGRES_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGRES_1 public
GUI OPTIONAL TEXT POSTGRES_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGRES_1 Schemas for Table Listing:
POSTGRES_1_SCHEMAS_FOR_TABLE_LISTING $(POSTGRES_IN_SCHEMAS_FOR_TABLE_LISTING_POSTGRES_1)
POSTGRES_1_DATASET "$(SourceDataset_POSTGRES_1)"
#! END_SOURCE_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "GEOJSON_1"
#! END_WB_HEADER
#! START_DEST_HEADER GEOJSON GEOJSON_1
#! END_DEST_HEADER
#! START_WB_HEADER
DEFAULT_MACRO DestDataset
INCLUDE [ if {"$(DestDataset)" != ""} { \
puts {DEFAULT_MACRO DestDataset_GEOJSON_1 $(DestDataset)} \
} ]
#! END_WB_HEADER
#! START_DEST_HEADER GEOJSON GEOJSON_1
DEFAULT_MACRO DestDataset_GEOJSON_1 $(DestDataset_GEOJSON)
GUI FILENAME DestDataset_GEOJSON_1 GeoJSON_Files(*.json)|*.json|All_Files|* Destination GeoJSON File:
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED1_GEOJSON_1
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED1_GEOJSON_1 GEOJSON_OUT_WRITER_CHARSET_GEOJSON_1%GEOJSON_OUT_WRITE_BOM_GEOJSON_1%GEOJSON_OUT_STRICT_SPEC_GEOJSON_1 Writer Parameters
DEFAULT_MACRO GEOJSON_OUT_WRITER_CHARSET_GEOJSON_1 UTF-8
GEOJSON_1_WRITER_CHARSET "$(GEOJSON_OUT_WRITER_CHARSET_GEOJSON_1)"
GUI LOOKUP_CHOICE GEOJSON_OUT_WRITER_CHARSET_GEOJSON_1 UTF-8,UTF-8%UTF-16,UTF-16%UTF-16BE,UTF-16BE%UTF-16LE,UTF-16LE%UTF-32,UTF-32%UTF-32BE,UTF-32BE%UTF-32LE,UTF-32LE Output Character Set:
DEFAULT_MACRO GEOJSON_OUT_WRITE_BOM_GEOJSON_1 No
GEOJSON_1_WRITE_BOM "$(GEOJSON_OUT_WRITE_BOM_GEOJSON_1)"
GUI LOOKUP_CHOICE GEOJSON_OUT_WRITE_BOM_GEOJSON_1 Yes,Yes%No,No Byte Order Marker:
DEFAULT_MACRO GEOJSON_OUT_STRICT_SPEC_GEOJSON_1 Yes
GEOJSON_1_STRICT_SPEC "$(GEOJSON_OUT_STRICT_SPEC_GEOJSON_1)"
GUI LOOKUP_CHOICE GEOJSON_OUT_STRICT_SPEC_GEOJSON_1 Yes,Yes%No,No Fully Conform to the GeoJSON Grammar:
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED2_GEOJSON_1
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED2_GEOJSON_1 GEOJSON_OUT_PRETTY_PRINT_GEOJSON_1%GEOJSON_OUT_INDENT_SIZE_GEOJSON_1%GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_1 Formatting Parameters
DEFAULT_MACRO GEOJSON_OUT_PRETTY_PRINT_GEOJSON_1 YES
GEOJSON_1_PRETTY_PRINT "$(GEOJSON_OUT_PRETTY_PRINT_GEOJSON_1)"
GUI ACTIVECHOICE_LOOKUP GEOJSON_OUT_PRETTY_PRINT_GEOJSON_1 Pretty<space>Print,YES%Linear,NO,GEOJSON_OUT_INDENT_SIZE_GEOJSON_1 Formatting Type:
DEFAULT_MACRO GEOJSON_OUT_INDENT_SIZE_GEOJSON_1 0
GEOJSON_1_INDENT_SIZE "$(GEOJSON_OUT_INDENT_SIZE_GEOJSON_1)"
GUI LOOKUP_CHOICE GEOJSON_OUT_INDENT_SIZE_GEOJSON_1 Tabs,0%1<space>space,1%2<space>spaces,2%3<space>spaces,3%4<space>spaces,4%5<space>spaces,5%6<space>spaces,6%7<space>spaces,7%8<space>spaces,8 Indent Size:
DEFAULT_MACRO GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_1 10
GEOJSON_1_MAX_COORDINATE_PRECISION "$(GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_1)"
GUI RANGE_SLIDER GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_1 1%15%0%ON Coordinate Precision (Maximum Number of Fractional Digits):
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED3_GEOJSON_1
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED3_GEOJSON_1 GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_1%GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_1 Geometry
DEFAULT_MACRO GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_1 Yes
GEOJSON_1_COUNTER_CLOCKWISE_AREAS "$(GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_1)"
GUI LOOKUP_CHOICE GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_1 Yes,Yes%No,No Convert Areas to Counterclockwise:
DEFAULT_MACRO GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_1 Yes
GEOJSON_1_WGS84_REPROJECTION "$(GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_1)"
GUI LOOKUP_CHOICE GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_1 Yes,Yes%No,No Reproject to WGS84:
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED4_GEOJSON_1
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED4_GEOJSON_1 GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_1 JSONP
DEFAULT_MACRO GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_1
GEOJSON_1_JSONP_FUNC_NAME "$(GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_1)"
GUI OPTIONAL TEXT GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_1 JSONP Function Name:
# ============================================================================
# Opt in for destination dataset type vs format type validation
DEFAULT_MACRO GEOJSON_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOJSON_1 Yes
GEOJSON_1_DESTINATION_DATASETTYPE_VALIDATION "$(GEOJSON_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOJSON_1)"
# ============================================================================
GEOJSON_1_GENERATE_FME_BUILD_NUM 18578
GEOJSON_1_DATASET "$(DestDataset_GEOJSON_1)"
#! END_DEST_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "GEOJSON_2"
#! END_WB_HEADER
#! START_DEST_HEADER GEOJSON GEOJSON_2
#! END_DEST_HEADER
#! START_WB_HEADER
DEFAULT_MACRO DestDataset
INCLUDE [ if {"$(DestDataset)" != ""} { \
puts {DEFAULT_MACRO DestDataset_GEOJSON_2 $(DestDataset)} \
} ]
#! END_WB_HEADER
#! START_DEST_HEADER GEOJSON GEOJSON_2
DEFAULT_MACRO DestDataset_GEOJSON_2 $(DestDataset_GEOJSON_4)
GUI FILENAME DestDataset_GEOJSON_2 GeoJSON_Files(*.json)|*.json|All_Files|* Destination GeoJSON File:
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED1_GEOJSON_2
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED1_GEOJSON_2 GEOJSON_OUT_WRITER_CHARSET_GEOJSON_2%GEOJSON_OUT_WRITE_BOM_GEOJSON_2%GEOJSON_OUT_STRICT_SPEC_GEOJSON_2 Writer Parameters
DEFAULT_MACRO GEOJSON_OUT_WRITER_CHARSET_GEOJSON_2 UTF-8
GEOJSON_2_WRITER_CHARSET "$(GEOJSON_OUT_WRITER_CHARSET_GEOJSON_2)"
GUI LOOKUP_CHOICE GEOJSON_OUT_WRITER_CHARSET_GEOJSON_2 UTF-8,UTF-8%UTF-16,UTF-16%UTF-16BE,UTF-16BE%UTF-16LE,UTF-16LE%UTF-32,UTF-32%UTF-32BE,UTF-32BE%UTF-32LE,UTF-32LE Output Character Set:
DEFAULT_MACRO GEOJSON_OUT_WRITE_BOM_GEOJSON_2 No
GEOJSON_2_WRITE_BOM "$(GEOJSON_OUT_WRITE_BOM_GEOJSON_2)"
GUI LOOKUP_CHOICE GEOJSON_OUT_WRITE_BOM_GEOJSON_2 Yes,Yes%No,No Byte Order Marker:
DEFAULT_MACRO GEOJSON_OUT_STRICT_SPEC_GEOJSON_2 Yes
GEOJSON_2_STRICT_SPEC "$(GEOJSON_OUT_STRICT_SPEC_GEOJSON_2)"
GUI LOOKUP_CHOICE GEOJSON_OUT_STRICT_SPEC_GEOJSON_2 Yes,Yes%No,No Fully Conform to the GeoJSON Grammar:
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED2_GEOJSON_2
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED2_GEOJSON_2 GEOJSON_OUT_PRETTY_PRINT_GEOJSON_2%GEOJSON_OUT_INDENT_SIZE_GEOJSON_2%GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_2 Formatting Parameters
DEFAULT_MACRO GEOJSON_OUT_PRETTY_PRINT_GEOJSON_2 YES
GEOJSON_2_PRETTY_PRINT "$(GEOJSON_OUT_PRETTY_PRINT_GEOJSON_2)"
GUI ACTIVECHOICE_LOOKUP GEOJSON_OUT_PRETTY_PRINT_GEOJSON_2 Pretty<space>Print,YES%Linear,NO,GEOJSON_OUT_INDENT_SIZE_GEOJSON_2 Formatting Type:
DEFAULT_MACRO GEOJSON_OUT_INDENT_SIZE_GEOJSON_2 0
GEOJSON_2_INDENT_SIZE "$(GEOJSON_OUT_INDENT_SIZE_GEOJSON_2)"
GUI LOOKUP_CHOICE GEOJSON_OUT_INDENT_SIZE_GEOJSON_2 Tabs,0%1<space>space,1%2<space>spaces,2%3<space>spaces,3%4<space>spaces,4%5<space>spaces,5%6<space>spaces,6%7<space>spaces,7%8<space>spaces,8 Indent Size:
DEFAULT_MACRO GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_2 10
GEOJSON_2_MAX_COORDINATE_PRECISION "$(GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_2)"
GUI RANGE_SLIDER GEOJSON_OUT_MAX_COORDINATE_PRECISION_GEOJSON_2 1%15%0%ON Coordinate Precision (Maximum Number of Fractional Digits):
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED3_GEOJSON_2
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED3_GEOJSON_2 GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_2%GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_2 Geometry
DEFAULT_MACRO GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_2 Yes
GEOJSON_2_COUNTER_CLOCKWISE_AREAS "$(GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_2)"
GUI LOOKUP_CHOICE GEOJSON_OUT_COUNTER_CLOCKWISE_AREAS_GEOJSON_2 Yes,Yes%No,No Convert Areas to Counterclockwise:
DEFAULT_MACRO GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_2 Yes
GEOJSON_2_WGS84_REPROJECTION "$(GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_2)"
GUI LOOKUP_CHOICE GEOJSON_OUT_WGS84_REPROJECTION_GEOJSON_2 Yes,Yes%No,No Reproject to WGS84:
DEFAULT_MACRO GEOJSON_OUT_FME_GROUP_NAMED4_GEOJSON_2
GUI OPTIONAL DISCLOSUREGROUP GEOJSON_OUT_FME_GROUP_NAMED4_GEOJSON_2 GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_2 JSONP
DEFAULT_MACRO GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_2
GEOJSON_2_JSONP_FUNC_NAME "$(GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_2)"
GUI OPTIONAL TEXT GEOJSON_OUT_JSONP_FUNC_NAME_GEOJSON_2 JSONP Function Name:
# ============================================================================
# Opt in for destination dataset type vs format type validation
DEFAULT_MACRO GEOJSON_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOJSON_2 Yes
GEOJSON_2_DESTINATION_DATASETTYPE_VALIDATION "$(GEOJSON_OUT_DESTINATION_DATASETTYPE_VALIDATION_GEOJSON_2)"
# ============================================================================
GEOJSON_2_GENERATE_FME_BUILD_NUM 18578
GEOJSON_2_DATASET "$(DestDataset_GEOJSON_2)"
#! END_DEST_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "POSTGIS_2"
#! END_WB_HEADER
#! START_DEST_HEADER POSTGIS POSTGIS_2
#! END_DEST_HEADER
#! START_WB_HEADER
DEFAULT_MACRO DestDataset
INCLUDE [ if {"$(DestDataset)" != ""} { \
puts {DEFAULT_MACRO DestDataset_POSTGIS_2 $(DestDataset)} \
} ]
#! END_WB_HEADER
#! START_DEST_HEADER POSTGIS POSTGIS_2
DEFAULT_MACRO DestDataset_POSTGIS_2 $(DestDataset_POSTGIS)
GUI NAMED_DB_CONNECTION_ENCODED DestDataset_POSTGIS_2 FMT:POSTGIS Connection:
POSTGIS_2_PLUGIN_MAX_CHANNELS 1
DEFAULT_MACRO POSTGIS_OUT_STRICT_TEMPORAL_TYPE_HANDLING_POSTGIS_2 Yes
POSTGIS_2_STRICT_TEMPORAL_TYPE_HANDLING "$(POSTGIS_OUT_STRICT_TEMPORAL_TYPE_HANDLING_POSTGIS_2)"
DEFAULT_MACRO POSTGIS_OUT_FME_CONNECTION_GROUP_POSTGIS_2
GUI OPTIONAL DISCLOSUREGROUP POSTGIS_OUT_FME_CONNECTION_GROUP_POSTGIS_2 POSTGIS_OUT_NAMED_CONNECTION Database Connection
# ============================================================================
# Write geometry (planar) or geography (geodetic) column
DEFAULT_MACRO POSTGIS_OUT_SPATIAL_COLUMN_TYPE_POSTGIS_2 geometry
POSTGIS_2_SPATIAL_COLUMN_TYPE "$(POSTGIS_OUT_SPATIAL_COLUMN_TYPE_POSTGIS_2)"
# ============================================================================
# Default spatial column name
DEFAULT_MACRO POSTGIS_OUT_SPATIAL_COLUMN_NAME_POSTGIS_2 geom
POSTGIS_2_SPATIAL_COLUMN_NAME "$(POSTGIS_OUT_SPATIAL_COLUMN_NAME_POSTGIS_2)"
DEFAULT_MACRO POSTGIS_OUT_GENERIC_GEOMETRY_POSTGIS_2 yes
POSTGIS_2_GENERIC_GEOMETRY "$(POSTGIS_OUT_GENERIC_GEOMETRY_POSTGIS_2)"
DEFAULT_MACRO POSTGIS_OUT_COORDINATE_SYSTEM_GRANULARITY_POSTGIS_2 FEATURE_TYPE
POSTGIS_2_COORDINATE_SYSTEM_GRANULARITY "$(POSTGIS_OUT_COORDINATE_SYSTEM_GRANULARITY_POSTGIS_2)"
DEFAULT_MACRO POSTGIS_OUT_ADVANCED_POSTGIS_2
GUI OPTIONAL DISCLOSUREGROUP POSTGIS_OUT_ADVANCED_POSTGIS_2 POSTGIS_OUT_BULK_COPY_POSTGIS_2%POSTGIS_OUT_INSERT_TEXT_GEOMETRY_POSTGIS_2%POSTGIS_OUT_START_TRANSACTION_POSTGIS_2%POSTGIS_OUT_TRANSACTION_INTERVAL_POSTGIS_2%POSTGIS_OUT_BEGIN_SQL_POSTGIS_2%POSTGIS_OUT_END_SQL_POSTGIS_2 Advanced
DEFAULT_MACRO POSTGIS_OUT_BULK_COPY_POSTGIS_2 YES
POSTGIS_2_BULK_COPY "$(POSTGIS_OUT_BULK_COPY_POSTGIS_2)"
GUI CHOICE POSTGIS_OUT_BULK_COPY_POSTGIS_2 YES%NO Bulk Insert
DEFAULT_MACRO POSTGIS_OUT_START_TRANSACTION_POSTGIS_2 0
POSTGIS_2_START_TRANSACTION "$(POSTGIS_OUT_START_TRANSACTION_POSTGIS_2)"
GUI TEXT POSTGIS_OUT_START_TRANSACTION_POSTGIS_2 Starting Feature:
DEFAULT_MACRO POSTGIS_OUT_TRANSACTION_INTERVAL_POSTGIS_2 1000
POSTGIS_2_TRANSACTION_INTERVAL "$(POSTGIS_OUT_TRANSACTION_INTERVAL_POSTGIS_2)"
GUI TEXT POSTGIS_OUT_TRANSACTION_INTERVAL_POSTGIS_2 Features Per Transaction
DEFAULT_MACRO POSTGIS_OUT_INSERT_TEXT_GEOMETRY_POSTGIS_2 NO
POSTGIS_2_INSERT_TEXT_GEOMETRY "$(POSTGIS_OUT_INSERT_TEXT_GEOMETRY_POSTGIS_2)"
GUI CHOICE POSTGIS_OUT_INSERT_TEXT_GEOMETRY_POSTGIS_2 YES%NO Insert WKT
DEFAULT_MACRO POSTGIS_OUT_BEGIN_SQL_POSTGIS_2
POSTGIS_2_BEGIN_SQL "$(POSTGIS_OUT_BEGIN_SQL_POSTGIS_2)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGIS_OUT_BEGIN_SQL_POSTGIS_2 MODE,SQL;FORMAT,POSTGIS SQL To Run Before Write
DEFAULT_MACRO POSTGIS_OUT_END_SQL_POSTGIS_2
POSTGIS_2_END_SQL "$(POSTGIS_OUT_END_SQL_POSTGIS_2)"
GUI OPTIONAL TEXT_EDIT_SQL_CFG POSTGIS_OUT_END_SQL_POSTGIS_2 MODE,SQL;FORMAT,POSTGIS SQL To Run After Write
# ============================================================================
POSTGIS_2_GENERATE_FME_BUILD_NUM 18592
POSTGIS_2_DATASET "$(DestDataset_POSTGIS_2)"
#! END_DEST_HEADER
#! START_WB_HEADER
#! END_WB_HEADER
#! END_HEADER
LOG_FILENAME "$(FME_MF_DIR)phase_3_crea_pk_auto.log"
LOG_APPEND NO
LOG_FILTER_MASK -1
LOG_MAX_FEATURES 200
LOG_MAX_RECORDED_FEATURES 200
FME_REPROJECTION_ENGINE FME
FME_IMPLICIT_CSMAP_REPROJECTION_MODE Auto
FME_GEOMETRY_HANDLING Enhanced
FME_STROKE_MAX_DEVIATION 0
DEFAULT_MACRO DATASET_KEYWORD_POSTGIS_1 POSTGIS_1
DEFAULT_MACRO DATASET_KEYWORD_POSTGRES_1 POSTGRES_1
DEFAULT_MACRO DATASET_KEYWORD_GEOJSON_1 GEOJSON_1
DEFAULT_MACRO DATASET_KEYWORD_GEOJSON_2 GEOJSON_2
DEFAULT_MACRO DATASET_KEYWORD_POSTGIS_2 POSTGIS_2
# -------------------------------------------------------------------------
POSTGIS_1_READER_META_ATTRIBUTES fme_feature_type
# -------------------------------------------------------------------------
POSTGRES_1_READER_META_ATTRIBUTES fme_feature_type
# -------------------------------------------------------------------------
GEOJSON_1_COORDINATE_SYSTEM EPSG:2154
GEOJSON_2_COORDINATE_SYSTEM EPSG:2154
POSTGIS_2_COORDINATE_SYSTEM EPSG:2154
MULTI_READER_CONTINUE_ON_READER_FAILURE No
# -------------------------------------------------------------------------
MACRO WORKSPACE_NAME phase_3_crea_pk_auto
MACRO FME_VIEWER_APP fmedatainspector
# -------------------------------------------------------------------------
INCLUDE [ if {[info exists env(FME_TEMP)] && [file isdirectory $env(FME_TEMP)]} {set gVisualizerTemp $env(FME_TEMP)} elseif {[info exists env(TEMP)] && [file isdirectory $env(TEMP)]} {set gVisualizerTemp $env(TEMP)} elseif { $tcl_platform(platform) == "unix" } {set gVisualizerTemp "/tmp"} else {set gVisualizerTemp c:}; regsub -all {[ ,&]} {$(WORKSPACE_NAME)} {_} wsname; set gVisualizerTemp $gVisualizerTemp/${wsname}_[clock format [clock seconds] -format %H%M%S]; puts "MACRO WORKSPACE_TEMP_DIR $gVisualizerTemp";
MACRO VISUALIZER_FEATURE_FILE $(WORKSPACE_TEMP_DIR)/inspector.ffs
MACRO VISUALIZER_SCHEMA_FILE $(WORKSPACE_TEMP_DIR)/inspector.fsc
MACRO VISUALIZER_CREATE_SPATIAL_INDEX YES
# -------------------------------------------------------------------------
FACTORY_DEF * RoutingFactory FACTORY_NAME "Router and Unexpected Input Remover" COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE * ROUTE POSTGIS POSTGIS_1::public.phase_2_trace_pgr multi_reader_keyword,$(DATASET_KEYWORD_POSTGIS_1) TO FME_GENERIC ::public.phase_2_trace_pgr ALIAS_GEOMETRY ROUTE POSTGIS POSTGIS_1::public.v_osm_municipalities multi_reader_keyword,$(DATASET_KEYWORD_POSTGIS_1) TO FME_GENERIC ::public.v_osm_municipalities ALIAS_GEOMETRY ROUTE POSTGRES POSTGRES_1::public.secteur multi_reader_keyword,$(DATASET_KEYWORD_POSTGRES_1) TO FME_GENERIC ::public.secteur ALIAS_GEOMETRY MERGE_INPUT Yes OUTPUT ROUTED FEATURE_TYPE *
POSTGIS_1_MERGE_DEF POSTGIS_1::public.phase_2_trace_pgr EXACT public.phase_2_trace_pgr DEFLINE postgis_sql_where_clause,,postgis_sql_statement,,secteur_id,int4,path_seq,int8,node,int8,cost,float8,agg_cost,float8,osm_id,int8,highway,text,type,text,oneway,text,ref,text,name_fr,text,name_br,text
POSTGIS_1_MERGE_DEF POSTGIS_1::public.v_osm_municipalities EXACT public.v_osm_municipalities DEFLINE postgis_sql_where_clause,,postgis_sql_statement,,nom,varchar<openparen>80<closeparen>,name_br,text,admincode,varchar<openparen>80<closeparen>,postcode,text
POSTGRES_1_MERGE_DEF POSTGRES_1::public.secteur EXACT public.secteur DEFLINE postgres_type,postgres_none,postgres_sql_where_clause,,postgres_sql_statement,,id,int4,nom_br,text,nom_fr,text,objectif_km,int4,km_redadeg,int4
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "public.phase_2_trace_pgr (POSTGIS_1) Splitter" INPUT FEATURE_TYPE public.phase_2_trace_pgr OUTPUT FEATURE_TYPE public.phase_2_trace_pgr_POSTGIS_1_0_lZ0XqLzCYmQ= OUTPUT FEATURE_TYPE public.phase_2_trace_pgr_POSTGIS_1_1_dRsdNGVAD0c=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "public.v_osm_municipalities (POSTGIS_1) Splitter" INPUT FEATURE_TYPE public.v_osm_municipalities OUTPUT FEATURE_TYPE public.v_osm_municipalities_POSTGIS_1_0_7fbaUlQ+SwI= OUTPUT FEATURE_TYPE public.v_osm_municipalities_POSTGIS_1_1_RFUJ57Nvhpc=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "public.secteur (POSTGRES_1) Splitter" INPUT FEATURE_TYPE public.secteur OUTPUT FEATURE_TYPE public.secteur_POSTGRES_1
DEFAULT_MACRO WB_CURRENT_CONTEXT
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "public.v_osm_municipalities (Disabled) Nuker" INPUT FEATURE_TYPE public.v_osm_municipalities_POSTGIS_1_1_RFUJ57Nvhpc=
# -------------------------------------------------------------------------
FACTORY_DEF {*} TeeFactory FACTORY_NAME BulkAttributeRenamer INPUT FEATURE_TYPE public.v_osm_municipalities_POSTGIS_1_0_7fbaUlQ+SwI= OUTPUT { FEATURE_TYPE BulkAttributeRenamer_OUTPUT @RenameAttributes(PATTERN_REPLACE, ADDPREFIX, <Unused>, "<Unused>", "municipality_", "<Unused>", "<Unused>", "-_", "RENAME", "NONFME") }
# -------------------------------------------------------------------------
FACTORY_DEF {*} AttrSetFactory COMMAND_PARM_EVALUATION SINGLE_PASS FACTORY_NAME AttributeRenamer_2 INPUT FEATURE_TYPE public.secteur_POSTGRES_1 ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "km_redadeg" "longueur_km" "RENAME_SET_DEFAULT" "" } ATTR_ACTION { "id" "secteur_id" "RENAME_SET_DEFAULT" "" } OUTPUT OUTPUT FEATURE_TYPE AttributeRenamer_2_OUTPUT
# -------------------------------------------------------------------------
FACTORY_DEF {*} TeeFactory FACTORY_NAME BulkAttributeRenamer_2 INPUT FEATURE_TYPE public.phase_2_trace_pgr_POSTGIS_1_1_dRsdNGVAD0c= OUTPUT { FEATURE_TYPE BulkAttributeRenamer_2_OUTPUT @RenameAttributes(PATTERN_REPLACE, ADDPREFIX, <Unused>, "<Unused>", "way_", "<Unused>", "<Unused>", "-_", "RENAME", "NONFME") }
# -------------------------------------------------------------------------
INCLUDE [if { {ATTRIBUTES} == {ATTRIBUTES} } { puts "MACRO FeatureMerger_REFERENCE_INFO ATTRIBUTES"; } elseif { {ATTRIBUTES} == {GEOM_BUILD} && {<Unused>} == {POLYGONS}} { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_BUILD_POLYS"; } elseif { {ATTRIBUTES} == {GEOM_BUILD} && {<Unused>} == {AGGREGATES}} { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_BUILD_AGGREGATES"; } elseif { {ATTRIBUTES} == {GEOM_BUILD} && {<Unused>} == {LINESFROMPOINTS}} { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_BUILD_LINES_FROM_POINTS"; } elseif { {ATTRIBUTES} == {GEOM_AND_ATTRS} && {<Unused>} == {POLYGONS}} { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_AND_ATTR_BUILD_POLYS"; } elseif { {ATTRIBUTES} == {GEOM_AND_ATTRS} && {<Unused>} == {AGGREGATES}} { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_AND_ATTR_BUILD_AGGREGATES"; } elseif { {ATTRIBUTES} == {GEOM_AND_ATTRS} && {<Unused>} == {LINESFROMPOINTS}} { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_AND_ATTR_BUILD_LINES_FROM_POINTS"; } elseif { {ATTRIBUTES} == {GEOM_BUILD} } { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_BUILD_AGGREGATES"; } elseif { {ATTRIBUTES} == {GEOM_AND_ATTRS} } { puts "MACRO FeatureMerger_REFERENCE_INFO GEOM_AND_ATTR_BUILD_AGGREGATES"; } else {}; ]
FACTORY_DEF {*} ReferenceFactory FACTORY_NAME FeatureMerger INPUT REFERENCER FEATURE_TYPE public.phase_2_trace_pgr_POSTGIS_1_0_lZ0XqLzCYmQ= INPUT REFERENCEE FEATURE_TYPE AttributeRenamer_2_OUTPUT REFERENCE_INFO $(FeatureMerger_REFERENCE_INFO) REFERENCE_TABLE @EvaluateExpression(FDIV,STRING_ENCODED,<at>Value<openparen>secteur_id<closeparen>,FeatureMerger) @EvaluateExpression(FDIV,STRING_ENCODED,<at>Value<openparen>secteur_id<closeparen>,FeatureMerger) AUTO ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "REQUESTOR_IF_CONFLICT" IGNORE_NULLS "No" HANDLE_NULL_MISSING_KEYS_LIKE_FME2013 No LIST_ATTRS_TO_INCLUDE { <Unused> } LIST_ATTRS_TO_INCLUDE_MODE <Unused> MERGE_ATTRIBUTES Yes MANAGE_FME_TYPE Yes MODE COMPLETE PROCESS_DUPLICATE_REFERENCEES NO REFERENCEES_FIRST No REJECT_INVALID_GEOM YES CLEANING_TOLERANCE <Unused> OUTPUT COMPLETE FEATURE_TYPE FeatureMerger_MERGED
# -------------------------------------------------------------------------
FACTORY_DEF {*} ArcFactory FACTORY_NAME LineCombiner INPUT FEATURE_TYPE FeatureMerger_MERGED END_NODED PRESERVE_ORIENTATION no DEAGGREGATE_GEOMETRY Deaggregate CLOSE_LOOPS yes ACCUMULATE_ATTRIBUTES ONE LIST_ATTRS_TO_INCLUDE { <Unused> } LIST_ATTRS_TO_INCLUDE_MODE <Unused> DIRECTION_NAME "<Unused>" LINES_AS_SEGMENTS No CONSIDER_NODE_ELEVATION NO CONNECT_Z_MODE FIRST_WINS BREAK_CONNECTION_ATTRIBUTES { secteur_id } BREAK_CONNECTION_ACROSS_SETS Yes OUTPUT LINE FEATURE_TYPE LineCombiner_LINE
FACTORY_DEF * TeeFactory FACTORY_NAME "LineCombiner LINE Splitter" INPUT FEATURE_TYPE LineCombiner_LINE OUTPUT FEATURE_TYPE LineCombiner_LINE_0_OyNlA2VcNkc= OUTPUT FEATURE_TYPE LineCombiner_LINE_1_HTtTHgBPWGw=
# -------------------------------------------------------------------------
INCLUDE [ set macroLine "MACRO AttributeRemover_4_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "\\{\[0-9\]+\\}"]; append macroLine ",^$attr$"; }; puts $macroLine; ]
FACTORY_DEF {*} TeeFactory FACTORY_NAME AttributeRemover_4 INPUT FEATURE_TYPE LineCombiner_LINE_1_HTtTHgBPWGw= OUTPUT { FEATURE_TYPE AttributeRemover_4_OUTPUT @RemoveAttributes(fme_encoded,node,cost,ref,name_br,highway,type,osm_id,name_fr,agg_cost,oneway) @RemoveAttributes(fme_pcre_match"$(AttributeRemover_4_LIST_EXP)") }
# -------------------------------------------------------------------------
FACTORY_DEF * SortFactory FACTORY_NAME Sorter INPUT FEATURE_TYPE AttributeRemover_4_OUTPUT SORT_BY secteur_id NUMERIC ASCENDING path_seq NUMERIC ASCENDING OUTPUT SORTED FEATURE_TYPE Sorter_SORTED
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "IterativeSnipper Input Input Collector" INPUT FEATURE_TYPE Sorter_SORTED OUTPUT FEATURE_TYPE IterativeSnipper_Input
MACRO IterativeSnipper_WORKSPACE_NAME IterativeSnipper
MACRO $(IterativeSnipper_WORKSPACE_NAME)_XFORMER_NAME IterativeSnipper
MACRO $(IterativeSnipper_WORKSPACE_NAME)_TRANSFORMER_GROUP
MACRO $(IterativeSnipper_WORKSPACE_NAME)___COMPOUND_PARAMETERS
MACRO $(IterativeSnipper_WORKSPACE_NAME)_SUB_DOC_NAME IterativeSnipper
MACRO $(IterativeSnipper_WORKSPACE_NAME)_SNIPMODE ToLength
MACRO $(IterativeSnipper_WORKSPACE_NAME)_SnipLength @Value(longueur_km)
DEFAULT_MACRO IterativeSnipper_WORKSPACE_NAME ""
INCLUDE [puts {MACRO WB_OLD_CONTEXT_$(IterativeSnipper_WORKSPACE_NAME) $(WB_CURRENT_CONTEXT)}; puts {MACRO WB_CURRENT_CONTEXT $(IterativeSnipper_WORKSPACE_NAME)}]
FACTORY_DEF * TeeFactory FACTORY_NAME "$(IterativeSnipper_WORKSPACE_NAME)_Input1570969466 Input Splitter" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Input" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Input"
FACTORY_DEF * TeeFactory FACTORY_NAME "$(IterativeSnipper_WORKSPACE_NAME)_LoopINPUT1570969466 Input Splitter" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LoopINPUT" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LoopINPUT"
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_2_LengthCalculatorInput INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LoopINPUT" OUTPUT FEATURE_TYPE ___TOLENGTHCALCULATOR___
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_2_LengthCalculator INPUT FEATURE_TYPE ___TOLENGTHCALCULATOR___ @RenameAttributes(FME_STRICT,___fme_rejection_code___,fme_rejection_code) OUTPUT FEATURE_TYPE ___TOREJECTOR___ "Iterative_Snipper_length" @Length(REJECTABLE,3,"1")
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_2_Rejector INPUT FEATURE_TYPE ___TOREJECTOR___ TEST @Value(fme_rejection_code) != "" OUTPUT FAILED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_2_OUTPUT" @RenameAttributes(FME_STRICT,fme_rejection_code,___fme_rejection_code___)
# -------------------------------------------------------------------------
MACRO OUTPUT_LINE_FTYPE not_selected
MACRO OUTPUT_LINE_FTYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_LINE
MACRO OUTPUT_INSTANCE_FTYPE not_selected
Lookup $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_RouterTable "" "not_selected" fme_line $(OUTPUT_LINE_FTYPE)
MACRO COLLECTION_HANDLING NOT_THIS_TIME
MACRO INSTANCE_FILTERING *
INCLUDE [ if 0 { puts "MACRO COLLECTION_HANDLING *"; if <Unused> { puts "MACRO INSTANCE_FILTERING NOT_THIS_TIME"; }; }; if {{$(OUTPUT_INSTANCE_FTYPE)} == "not_selected"} { puts "MACRO INSTANCE_FILTERING NOT_THIS_TIME"; }; ]
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_InputPassThrough INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Input" OUTPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Input___ @Geometry(FIX_FMETYPE_FMEGEOMETRY)
FACTORY_DEF $(INSTANCE_FILTERING) TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_InstanceTest INPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Input___ TEST @Geometry(IS_GEOMETRY_INSTANCE) == 1 OUTPUT PASSED FEATURE_TYPE $(OUTPUT_INSTANCE_FTYPE) OUTPUT FAILED FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Input___
FACTORY_DEF $(COLLECTION_HANDLING) TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_CollectionTest INPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Input___ TEST &fme_type == "fme_collection" OUTPUT FAILED FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ OUTPUT PASSED FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Collection___
FACTORY_DEF $(COLLECTION_HANDLING) DeaggregateFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_Deagg INPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Collection___ HOMOGENIZE_COLLECTIONS YES RECURSIVE YES SET_FME_TYPE YES INSTANTIATE_GEOMETRY_INSTANCES_NEW <Unused> OUTPUT POINT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT LINE FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT POLYGON FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT DONUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ OUTPUT AGGREGATE FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_RouterPrepper INPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___HomogeneousAggregate___ INPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Not_Collection___ INPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Input___ OUTPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Prepped___ $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_a734a6e5_351b_4dc6_b5fc_25ea741bf62710_targetFeatureType @Lookup($(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_RouterTable,&fme_type)
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_Router INPUT FEATURE_TYPE $(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter___Prepped___ TEST @Value($(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_a734a6e5_351b_4dc6_b5fc_25ea741bf62710_targetFeatureType) != "not_selected" OUTPUT PASSED FEATURE_TYPE * @FeatureType(@Value($(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_a734a6e5_351b_4dc6_b5fc_25ea741bf62710_targetFeatureType)) @RemoveAttributes($(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_a734a6e5_351b_4dc6_b5fc_25ea741bf62710_targetFeatureType) OUTPUT FAILED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_<UNFILTERED>" @RemoveAttributes($(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_a734a6e5_351b_4dc6_b5fc_25ea741bf62710_targetFeatureType)
# -------------------------------------------------------------------------
FACTORY_DEF {*} AttrSetFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_AttributeCreator INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_<UNFILTERED>" MULTI_FEATURE_MODE NO NULL_ATTR_MODE NO_OP ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "" "fme_rejection_code" "SET_TO" "INVALID_GEOMETRY_TYPE" } OUTPUT OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeCreator_OUTPUT"
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_LengthCalculatorInput INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_GeometryFilter_LINE" OUTPUT FEATURE_TYPE ___TOLENGTHCALCULATOR___
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_LengthCalculator INPUT FEATURE_TYPE ___TOLENGTHCALCULATOR___ @RenameAttributes(FME_STRICT,___fme_rejection_code___,fme_rejection_code) OUTPUT FEATURE_TYPE ___TOREJECTOR___ "Iterative_Snipper_length" @Length(REJECTABLE,3,"1")
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_Rejector INPUT FEATURE_TYPE ___TOREJECTOR___ TEST @Value(fme_rejection_code) != "" OUTPUT FAILED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_OUTPUT" @RenameAttributes(FME_STRICT,fme_rejection_code,___fme_rejection_code___)
# -------------------------------------------------------------------------
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Snip_Mode INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_OUTPUT" TEST @EvaluateExpression(FDIV,STRING_ENCODED,$($(IterativeSnipper_WORKSPACE_NAME)_SNIPMODE),$(IterativeSnipper_WORKSPACE_NAME)_Snip_Mode) = ToNumber ENCODED BOOLEAN_OPERATOR OR OUTPUT PASSED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snip_Mode_PASSED" OUTPUT FAILED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snip_Mode_FAILED"
# -------------------------------------------------------------------------
Tcl2 proc $(IterativeSnipper_WORKSPACE_NAME)_ParameterFetcher_doFetch {} { foreach {name val} {"Iterative_Snipper_maxLength {$($(IterativeSnipper_WORKSPACE_NAME)_SnipLength$encode)}"} { if { [string match {*<at>*} $val] == 1 } { set val [FME_Execute EvaluateExpression {STRING} $val {$(IterativeSnipper_WORKSPACE_NAME)_ParameterFetcher}]; } elseif {[string match {*FME_CONDITIONAL*} $val] == 1} { set val [FME_Execute EvaluateExpression {STRING} $val {$(IterativeSnipper_WORKSPACE_NAME)_ParameterFetcher}]; } else { set val [FME_DecodeTextOrAttr $val]; }; FME_SetAttribute [FME_DecodeText $name] $val } }
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_ParameterFetcher INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snip_Mode_FAILED" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_ParameterFetcher_OUTPUT" @Tcl2($(IterativeSnipper_WORKSPACE_NAME)_ParameterFetcher_doFetch)
# -------------------------------------------------------------------------
INCLUDE TCL
if {{OUTGOING} == {OUTGOING}} { set attrs [list {Iterative_Snipper_maxLength}]; } else { set attrAll {<Unused>}; if {[string length $attrAll] == 0} { return; }; set attrs [split {<Unused>} { }]; }; if {{NO_OP} == {NO_OP}} { set parmList ATTR_CREATE_EXPR_PROPAGATE_MISSING_TYPED_FDIV; } else { set parmList ATTR_CREATE_EXPR_PROPAGATE_MISSING_TYPED_FDIV_MULTI_FEATURE; }; foreach attr $attrs { lappend parmList $attr; lappend parmList {<at>Value<openparen>Iterative_Snipper_length<closeparen><solidus><at>double<openparen>$($(IterativeSnipper_WORKSPACE_NAME)_SnipLength$encode)<closeparen>}; lappend parmList {FLOAT}; }; lappend parmList {$(IterativeSnipper_WORKSPACE_NAME)_ExpressionEvaluator}; if {{NO_OP} == {OTHER_NULL_VALUE_2}} { lappend parmList {NO_OP}; lappend parmList {<Unused>}; lappend parmList {0}; }; puts "MACRO __fme_expressionevaluator_evaluateArgs__ [join $parmList ,]";
END_INCLUDE
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_ExpressionEvaluator INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snip_Mode_PASSED" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_ExpressionEvaluator_OUTPUT" @EvaluateExpression($(__fme_expressionevaluator_evaluateArgs__))
MACRO __fme_expressionevaluator_evaluateArgs__
# -------------------------------------------------------------------------
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Tester INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LengthCalculator_2_OUTPUT" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_ExpressionEvaluator_OUTPUT" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_ParameterFetcher_OUTPUT" TEST @EvaluateExpression(FDIV,STRING_ENCODED,<at>Value<openparen>Iterative_Snipper_length<closeparen>,$(IterativeSnipper_WORKSPACE_NAME)_Tester) <= @EvaluateExpression(FDIV,STRING_ENCODED,<at>Value<openparen>Iterative_Snipper_maxLength<closeparen>,$(IterativeSnipper_WORKSPACE_NAME)_Tester) ENCODED BOOLEAN_OPERATOR OR OUTPUT PASSED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Tester_PASSED" OUTPUT FAILED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Tester_FAILED"
# -------------------------------------------------------------------------
# The Snipper takes the constant "end" to mean the last vertex of the line,
# but Workbench won't let us put an alpha string into the "last vertex" textfield.
# We'll interpret an ending vertex of -1 as being the same as "end".
# This is used only in the distance and percentage.
Tcl2 proc $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_fixIndex {numIndex} { if {$numIndex < 0} { return "end"; } else { return $numIndex; } }
INCLUDE [ if { ({DISTANCE} == {DISTANCE} || {DISTANCE} == {PERCENTAGE}) } { puts {MACRO $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_snipFunc @Snip(@Tcl2("$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_fixIndex 0"),@Tcl2("$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_fixIndex @EvaluateExpression(FLOAT,<at>Value<openparen>Iterative_Snipper_maxLength<closeparen>,$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3)"),DISTANCE,3D,OUTPUT_REMNANT)}; } elseif { ({DISTANCE} == {MEASURE_RELATIVE_FROM_START} || {DISTANCE} == {MEASURE_REAL_VALUES}) } { puts {MACRO $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_snipFunc @Snip("0", "@EvaluateExpression(FLOAT,<at>Value<openparen>Iterative_Snipper_maxLength<closeparen>,$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3)", "<Unused>", DISTANCE,OUTPUT_REMNANT)}; } elseif { ({DISTANCE} == {VERTEX}) } { puts {MACRO $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_snipFunc @Snip("<Unused>","<Unused>",VERTEX,OUTPUT_REMNANT)}; } ]
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_Aggfilter INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Tester_FAILED" TEST @Value(fme_geometry) != "fme_aggregate" OUTPUT PASSED FEATURE_TYPE ___TO_TYPEFILTER___
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_Typefilter INPUT FEATURE_TYPE ___TO_TYPEFILTER___ TEST @Value(fme_type) == "fme_line" TEST @Value(fme_type) == "fme_arc" TEST @Value(fme_geometry) == "fme_polygon" BOOLEAN_OPERATOR OR OUTPUT PASSED FEATURE_TYPE ___TO_INPUT___
FACTORY_DEF * TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_Input INPUT FEATURE_TYPE ___TO_INPUT___ OUTPUT FEATURE_TYPE ____TO_DEAGGREGATOR____ $($(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_snipFunc)
FACTORY_DEF * DeaggregateFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_SplitRemnants INPUT FEATURE_TYPE ____TO_DEAGGREGATOR____ RECURSIVE No SPLIT_COMPOSITES No SET_FME_TYPE Yes PART_NUMBER_FIELD _part_number GEOMETRY_NAME_FIELD _geometry_name OUTPUT POINT FEATURE_TYPE ___TO_NULLNUKER___ OUTPUT LINE FEATURE_TYPE ___TO_NULLNUKER___ OUTPUT POLYGON FEATURE_TYPE ___TO_NULLNUKER___ OUTPUT DONUT FEATURE_TYPE ___TO_NULLNUKER___ OUTPUT AGGREGATE FEATURE_TYPE ___TO_NULLNUKER___
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_NullNuker INPUT FEATURE_TYPE ___TO_NULLNUKER___ TEST @Value(_part_number) == 0 TEST @NumCoords() == 0 BOOLEAN_OPERATOR AND OUTPUT FAILED FEATURE_TYPE ___TO_OUTPUTTER___
FACTORY_DEF * TestFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_Outputter INPUT FEATURE_TYPE ___TO_OUTPUTTER___ TEST @Value(_part_number) == 0 TEST @Tcl2("FME_AttributeExists _part_number") == 0 BOOLEAN_OPERATOR OR OUTPUT PASSED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_OUTPUT" @RemoveAttributes(_part_number) OUTPUT FAILED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_REMNANTS" @RemoveAttributes(_part_number)
# -------------------------------------------------------------------------
INCLUDE [ set macroLine "MACRO $(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_LIST_EXP "; foreach attr [split ""] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "\\{\[0-9\]+\\}"]; append macroLine ",^$attr$"; }; puts $macroLine; ]
FACTORY_DEF {*} TeeFactory FACTORY_NAME $(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Tester_PASSED" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_OUTPUT" OUTPUT { FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_OUTPUT" @RemoveAttributes(fme_encoded,Iterative_Snipper_length,Iterative_Snipper_maxLength) @RemoveAttributes(fme_pcre_match"$($(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_LIST_EXP)") }
FACTORY_DEF * TeeFactory FACTORY_NAME "$(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover OUTPUT Splitter" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_OUTPUT" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_OUTPUT_0_Qm2dMgLpIbU=" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_OUTPUT_1_wE8adFtviSk="
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "$(IterativeSnipper_WORKSPACE_NAME)_Counter (Disabled) Nuker" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_OUTPUT_0_Qm2dMgLpIbU="
FACTORY_DEF * BranchingFactory TARGET_FACTORY "$(IterativeSnipper_WORKSPACE_NAME)_LoopINPUT1570969466 Input Splitter" FACTORY_NAME "Loop to $(IterativeSnipper_WORKSPACE_NAME)_LoopINPUT1570969466 Input Splitter" MAXIMUM_COUNT -1 INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Snipper_3_REMNANTS" OUTPUT PASSED FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_LoopINPUT"
FACTORY_DEF * TeeFactory FACTORY_NAME "$(IterativeSnipper_WORKSPACE_NAME)_Output1570969466 Output Collector" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeRemover_OUTPUT_1_wE8adFtviSk=" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Counter_OUTPUT" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_Output"
FACTORY_DEF * TeeFactory FACTORY_NAME "$(IterativeSnipper_WORKSPACE_NAME)_<Rejected>1570969466 Output Collector" INPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_AttributeCreator_OUTPUT" OUTPUT FEATURE_TYPE "$(IterativeSnipper_WORKSPACE_NAME)_<Rejected>"
INCLUDE [puts {MACRO WB_CURRENT_CONTEXT $(WB_OLD_CONTEXT_$(IterativeSnipper_WORKSPACE_NAME))}]
FACTORY_DEF * TeeFactory FACTORY_NAME "IterativeSnipper Output Output Renamer/Nuker" INPUT FEATURE_TYPE IterativeSnipper_Output OUTPUT FEATURE_TYPE IterativeSnipper_Output
FACTORY_DEF * TeeFactory FACTORY_NAME "IterativeSnipper <Rejected> Output Renamer/Nuker" INPUT FEATURE_TYPE IterativeSnipper_<Rejected> OUTPUT FEATURE_TYPE IterativeSnipper_<Rejected>
# -------------------------------------------------------------------------
# Assumption is that the workspace temp dir has been already set and created. See controldefs.cpp - ControlDefs::writeVisualizerTempDir
DEFAULT_MACRO WORKSPACE_TEMP_DIR
INCLUDE [ set safeName "[regsub -all {[^a-zA-Z0-9]} {IterativeSnipper__Rejected_} _]_[expr round(rand() * 1000000)]_[clock clicks -milliseconds]"; puts "MACRO SAFE_FFS_NAME $safeName"; ]
FACTORY_DEF {*} InspectorFactory FACTORY_NAME IterativeSnipper__Rejected__Prepper COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE IterativeSnipper_<Rejected> GROUP_ATTRIBUTE __inspector_feature_type_attr__ GROUP_BY { } GROUP_ATTRIBUTE_PREFIX { IterativeSnipper__Rejected_ } RASTER_REDUCTION NoReduction POINT_CLOUD_REDUCTION NO_THINNING OUTPUT RESULT FEATURE_TYPE __viewme__
# Now route all the features into the recorder, changing their
# feature type to the transformer name so that they view nicely
DEFAULT_MACRO VISUALIZER_FEATURE_FILE $(WORKSPACE_TEMP_DIR)/$(SAFE_FFS_NAME).ffs
DEFAULT_MACRO VISUALIZER_CREATE_SPATIAL_INDEX NO
# [PR#45549] The Data Inspector will limit the maximum number of features
# it reads on WIN32, so we will correspondingly limit the number of
# features we record here using the MAX_FEATURES_TO_RECORD directive.
FACTORY_DEF * RecorderFactory FACTORY_NAME IterativeSnipper__Rejected__Recorder COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE __viewme__ _wb_termination_feature Yes @FeatureType(TERMINATOR_@Value(_wb_termination_xformer)) INPUT FEATURE_TYPE __viewme__ @FeatureType(@Value(__inspector_feature_type_attr__)) @RemoveAttributes(__inspector_feature_type_attr__) FEATURE_FILE "$(VISUALIZER_FEATURE_FILE)" STORE_SCANNED_SCHEMA YES CREATE_SPATIAL_INDEX "$(VISUALIZER_CREATE_SPATIAL_INDEX)" INSPECTOR "$(VISUALIZER_CREATE_SPATIAL_INDEX)" FSC_SCHEMA fme_rejection_code,varchar<openparen>255<closeparen>,secteur_id,varchar<openparen>255<closeparen>,path_seq,varchar<openparen>255<closeparen>,longueur_km,varchar<openparen>255<closeparen>,nom_br,varchar<openparen>255<closeparen>,nom_fr,varchar<openparen>255<closeparen>,objectif_km,varchar<openparen>255<closeparen> MODE RECORD STORE_SCANNED_METADATA RECORD_DIRECTLY_TO_DISK YES MAX_FEATURES_TO_RECORD WIN32 2000000
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME LengthCalculator_LengthCalculatorInput INPUT FEATURE_TYPE IterativeSnipper_Output OUTPUT FEATURE_TYPE ___TOLENGTHCALCULATOR___
FACTORY_DEF * TeeFactory FACTORY_NAME LengthCalculator_LengthCalculator INPUT FEATURE_TYPE ___TOLENGTHCALCULATOR___ @RenameAttributes(FME_STRICT,___fme_rejection_code___,fme_rejection_code) OUTPUT FEATURE_TYPE ___TOREJECTOR___ "longueur" @Length(REJECTABLE,2,"1")
FACTORY_DEF * TestFactory FACTORY_NAME LengthCalculator_Rejector INPUT FEATURE_TYPE ___TOREJECTOR___ TEST @Value(fme_rejection_code) != "" OUTPUT FAILED FEATURE_TYPE LengthCalculator_OUTPUT @RenameAttributes(FME_STRICT,fme_rejection_code,___fme_rejection_code___)
FACTORY_DEF * TeeFactory FACTORY_NAME "LengthCalculator OUTPUT Splitter" INPUT FEATURE_TYPE LengthCalculator_OUTPUT OUTPUT FEATURE_TYPE LengthCalculator_OUTPUT_0_mOViq6QLaFg= OUTPUT FEATURE_TYPE LengthCalculator_OUTPUT_1_zC1I4Ymc4xc= OUTPUT FEATURE_TYPE LengthCalculator_OUTPUT_2_Fc3qYUDsB4Q=
# -------------------------------------------------------------------------
Tcl2 set {CoordinateConcatenator_coordDelim} [FME_DecodeText {|}];
Tcl2 set {CoordinateConcatenator_elementDelim} [FME_DecodeText {<comma>}];
Tcl2 proc CoordinateConcatenator_coord_list {DIM} { global {CoordinateConcatenator_coordDelim}; global {CoordinateConcatenator_elementDelim}; set numCoords [FME_Coordinates numCoords]; set output {}; set includeX [string first {X} {Y X} ]; set includeY [string first {Y} {Y X} ]; set includeZ [string first {Z} {Y X} ]; if { $includeX == -1 && $includeY == -1 && $includeZ == -1 } { FME_SetAttribute _coordinates $output; return; }; for {set i 0} {$i < $numCoords} {incr i} { if {$includeX != -1} { append output [FME_Coordinates getCoord x $i]; }; if {$includeY != -1} { if {$includeX != -1} { append output [set {CoordinateConcatenator_elementDelim}] [FME_Coordinates getCoord y $i]; } else { append output [FME_Coordinates getCoord y $i]; }; }; if { $DIM == 3 && $includeZ != -1 } { if { $includeX != -1 || $includeY != -1 } { append output [set {CoordinateConcatenator_elementDelim}] [FME_Coordinates getCoord z $i]; } else { append output [FME_Coordinates getCoord z $i]; }; }; if {$i < ($numCoords - 1)} { append output [set {CoordinateConcatenator_coordDelim}] }; }; FME_SetAttribute _coordinates $output; }
FACTORY_DEF * TeeFactory FACTORY_NAME CoordinateConcatenator INPUT FEATURE_TYPE LengthCalculator_OUTPUT_1_zC1I4Ymc4xc= OUTPUT FEATURE_TYPE CoordinateConcatenator_OUTPUT @Tcl2("CoordinateConcatenator_coord_list @Dimension()")
# -------------------------------------------------------------------------
Tcl2 set AttributeSplitter_5e12a1f5_98a6_4f69_b0b5_41f09fff7c6310_splitDelim [FME_DecodeText {|}]; if { [regexp {^([1-9][0-9]*s)+$} [set AttributeSplitter_5e12a1f5_98a6_4f69_b0b5_41f09fff7c6310_splitDelim]] } { set AttributeSplitter_5e12a1f5_98a6_4f69_b0b5_41f09fff7c6310_splitWidths [split [regsub -all {s$} {|} {}] s]; proc AttributeSplitter_doSplit {} { global AttributeSplitter_5e12a1f5_98a6_4f69_b0b5_41f09fff7c6310_splitWidths; set source [FME_GetAttribute [FME_DecodeText {_coordinates}]]; set attrNum 0; set listName [FME_DecodeText {_coords}]; set attrPos 0; set keepEmptyParts [string equal {No} {No}]; foreach width [set AttributeSplitter_5e12a1f5_98a6_4f69_b0b5_41f09fff7c6310_splitWidths] { set endPos [expr $attrPos + $width - 1]; set bit [string range $source $attrPos $endPos]; set part [string trim $bit]; if { $keepEmptyParts || $part != \"\" } { FME_SetAttribute "$listName{$attrNum}" $part; incr attrNum; }; incr attrPos $width; }; }; } else { proc AttributeSplitter_doSplit {} { global AttributeSplitter_5e12a1f5_98a6_4f69_b0b5_41f09fff7c6310_splitDelim; set delim [set AttributeSplitter_5e12a1f5_98a6_4f69_b0b5_41f09fff7c6310_splitDelim]; set delimLength [string length $delim]; set source [FME_GetAttribute [FME_DecodeText {_coordinates}]]; set keepEmptyParts [string equal {No} {No}]; set bits {}; set startIndex 0; set nextIndex [string first $delim $source $startIndex]; while {$nextIndex >= 0} { lappend bits [string range $source $startIndex [expr $nextIndex-1]]; set startIndex [expr $nextIndex + $delimLength]; set nextIndex [string first $delim $source $startIndex]; }; lappend bits [string range $source $startIndex end]; set listName [FME_DecodeText {_coords}]; set attrNum 0; foreach bit $bits { set trimmedPart [string trim $bit]; if { $keepEmptyParts || $trimmedPart != \"\" } { FME_SetAttribute "$listName{$attrNum}" $trimmedPart; incr attrNum; }; } } }
FACTORY_DEF * TeeFactory FACTORY_NAME AttributeSplitter INPUT FEATURE_TYPE CoordinateConcatenator_OUTPUT OUTPUT FEATURE_TYPE AttributeSplitter_OUTPUT @Tcl2(AttributeSplitter_doSplit)
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME ListElementCounter INPUT FEATURE_TYPE AttributeSplitter_OUTPUT OUTPUT FEATURE_TYPE ListElementCounter_OUTPUT "_vertex_count" @NumElements("_coords<opencurly><closecurly>",ENCODED)
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME GeometryRemover INPUT FEATURE_TYPE ListElementCounter_OUTPUT OUTPUT FEATURE_TYPE GeometryRemover_OUTPUT @RemoveGeometry()
FACTORY_DEF * TeeFactory FACTORY_NAME "GeometryRemover OUTPUT Splitter" INPUT FEATURE_TYPE GeometryRemover_OUTPUT OUTPUT FEATURE_TYPE GeometryRemover_OUTPUT_0_lyMsYNg46jM= OUTPUT FEATURE_TYPE GeometryRemover_OUTPUT_1_OUiOuQAK2cA=
# -------------------------------------------------------------------------
Tcl2 proc ListIndexer_4_indexer {index numElements prefix} { if {$index < 0 } { set index [expr $numElements + $index]; }; regsub \"{}\" {_coords{}} \"{$index}\" listWithIndex; regsub \"{}\" {_coords{}} {} listBase; set complexListExp "$listWithIndex\."; set prefixLength [expr [string length $complexListExp]-1]; set prefix [FME_DecodeText $prefix]; foreach attr [FME_AttributeNames] { set newAttr {}; if {$attr == $listWithIndex} { set newAttr $listBase; } elseif {[string first $complexListExp $attr] == 0} { set newAttr [string replace $attr 0 $prefixLength]; }; if {$newAttr != {}} { if {$prefix != {} } { set newAttr $prefix$newAttr; }; if {[string first {fme_} $newAttr] != 0} { set first [string first {fme_} $newAttr]; lappend attrsToCopy $newAttr $attr; }; }; }; if {[info exists attrsToCopy] && [llength $attrsToCopy] > 0} { eval FME_Execute CopyAttributes $attrsToCopy; }; }
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_4_IntTester INPUT FEATURE_TYPE GeometryRemover_OUTPUT_1_OUiOuQAK2cA= TEST "@EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>_vertex_count<closeparen>-1,ListIndexer_4)" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_4_ListIndexer INPUT FEATURE_TYPE __toOutput__ TEST "@EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>_vertex_count<closeparen>-1,ListIndexer_4)" >= 0 OUTPUT PASSED FEATURE_TYPE ListIndexer_4_OUTPUT @Tcl2("ListIndexer_4_indexer @EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>_vertex_count<closeparen>-1,ListIndexer_4) 0 {}") OUTPUT FAILED FEATURE_TYPE ListIndexer_4_OUTPUT @Tcl2("ListIndexer_4_indexer @EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>_vertex_count<closeparen>-1,ListIndexer_4) @NumElements(_coords{}) {}")
# -------------------------------------------------------------------------
Tcl2 set AttributeSplitter_3_2df82bc3_e6e8_41bc_9f93_995a8ce0619010_splitDelim [FME_DecodeText {<comma>}]; if { [regexp {^([1-9][0-9]*s)+$} [set AttributeSplitter_3_2df82bc3_e6e8_41bc_9f93_995a8ce0619010_splitDelim]] } { set AttributeSplitter_3_2df82bc3_e6e8_41bc_9f93_995a8ce0619010_splitWidths [split [regsub -all {s$} {<comma>} {}] s]; proc AttributeSplitter_3_doSplit {} { global AttributeSplitter_3_2df82bc3_e6e8_41bc_9f93_995a8ce0619010_splitWidths; set source [FME_GetAttribute [FME_DecodeText {_coords}]]; set attrNum 0; set listName [FME_DecodeText {_coords_vertex}]; set attrPos 0; set keepEmptyParts [string equal {No} {No}]; foreach width [set AttributeSplitter_3_2df82bc3_e6e8_41bc_9f93_995a8ce0619010_splitWidths] { set endPos [expr $attrPos + $width - 1]; set bit [string range $source $attrPos $endPos]; set part [string trim $bit]; if { $keepEmptyParts || $part != \"\" } { FME_SetAttribute "$listName{$attrNum}" $part; incr attrNum; }; incr attrPos $width; }; }; } else { proc AttributeSplitter_3_doSplit {} { global AttributeSplitter_3_2df82bc3_e6e8_41bc_9f93_995a8ce0619010_splitDelim; set delim [set AttributeSplitter_3_2df82bc3_e6e8_41bc_9f93_995a8ce0619010_splitDelim]; set delimLength [string length $delim]; set source [FME_GetAttribute [FME_DecodeText {_coords}]]; set keepEmptyParts [string equal {No} {No}]; set bits {}; set startIndex 0; set nextIndex [string first $delim $source $startIndex]; while {$nextIndex >= 0} { lappend bits [string range $source $startIndex [expr $nextIndex-1]]; set startIndex [expr $nextIndex + $delimLength]; set nextIndex [string first $delim $source $startIndex]; }; lappend bits [string range $source $startIndex end]; set listName [FME_DecodeText {_coords_vertex}]; set attrNum 0; foreach bit $bits { set trimmedPart [string trim $bit]; if { $keepEmptyParts || $trimmedPart != \"\" } { FME_SetAttribute "$listName{$attrNum}" $trimmedPart; incr attrNum; }; } } }
FACTORY_DEF * TeeFactory FACTORY_NAME AttributeSplitter_3 INPUT FEATURE_TYPE ListIndexer_4_OUTPUT OUTPUT FEATURE_TYPE AttributeSplitter_3_OUTPUT @Tcl2(AttributeSplitter_3_doSplit)
# -------------------------------------------------------------------------
Tcl2 proc ListIndexer_5_indexer {index numElements prefix} { if {$index < 0 } { set index [expr $numElements + $index]; }; regsub \"{}\" {_coords_vertex{}} \"{$index}\" listWithIndex; regsub \"{}\" {_coords_vertex{}} {} listBase; set complexListExp "$listWithIndex\."; set prefixLength [expr [string length $complexListExp]-1]; set prefix [FME_DecodeText $prefix]; foreach attr [FME_AttributeNames] { set newAttr {}; if {$attr == $listWithIndex} { set newAttr $listBase; } elseif {[string first $complexListExp $attr] == 0} { set newAttr [string replace $attr 0 $prefixLength]; }; if {$newAttr != {}} { if {$prefix != {} } { set newAttr $prefix$newAttr; }; if {[string first {fme_} $newAttr] != 0} { set first [string first {fme_} $newAttr]; lappend attrsToCopy $newAttr $attr; }; }; }; if {[info exists attrsToCopy] && [llength $attrsToCopy] > 0} { eval FME_Execute CopyAttributes $attrsToCopy; }; }
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_5_IntTester INPUT FEATURE_TYPE AttributeSplitter_3_OUTPUT TEST "0" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_5_ListIndexer INPUT FEATURE_TYPE __toOutput__ TEST "0" >= 0 OUTPUT PASSED FEATURE_TYPE ListIndexer_5_OUTPUT @Tcl2("ListIndexer_5_indexer 0 0 {x}") OUTPUT FAILED FEATURE_TYPE ListIndexer_5_OUTPUT @Tcl2("ListIndexer_5_indexer 0 @NumElements(_coords_vertex{}) {x}")
# -------------------------------------------------------------------------
Tcl2 proc ListIndexer_6_indexer {index numElements prefix} { if {$index < 0 } { set index [expr $numElements + $index]; }; regsub \"{}\" {_coords_vertex{}} \"{$index}\" listWithIndex; regsub \"{}\" {_coords_vertex{}} {} listBase; set complexListExp "$listWithIndex\."; set prefixLength [expr [string length $complexListExp]-1]; set prefix [FME_DecodeText $prefix]; foreach attr [FME_AttributeNames] { set newAttr {}; if {$attr == $listWithIndex} { set newAttr $listBase; } elseif {[string first $complexListExp $attr] == 0} { set newAttr [string replace $attr 0 $prefixLength]; }; if {$newAttr != {}} { if {$prefix != {} } { set newAttr $prefix$newAttr; }; if {[string first {fme_} $newAttr] != 0} { set first [string first {fme_} $newAttr]; lappend attrsToCopy $newAttr $attr; }; }; }; if {[info exists attrsToCopy] && [llength $attrsToCopy] > 0} { eval FME_Execute CopyAttributes $attrsToCopy; }; }
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_6_IntTester INPUT FEATURE_TYPE ListIndexer_5_OUTPUT TEST "1" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_6_ListIndexer INPUT FEATURE_TYPE __toOutput__ TEST "1" >= 0 OUTPUT PASSED FEATURE_TYPE ListIndexer_6_OUTPUT @Tcl2("ListIndexer_6_indexer 1 0 {y}") OUTPUT FAILED FEATURE_TYPE ListIndexer_6_OUTPUT @Tcl2("ListIndexer_6_indexer 1 @NumElements(_coords_vertex{}) {y}")
# -------------------------------------------------------------------------
INCLUDE [ set macroLine "MACRO AttributeRemover_2_LIST_EXP "; foreach attr [split "_coords_vertex<opencurly><closecurly> _coords<opencurly><closecurly>"] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "\\{\[0-9\]+\\}"]; append macroLine ",^$attr$"; }; puts $macroLine; ]
FACTORY_DEF {*} TeeFactory FACTORY_NAME AttributeRemover_2 INPUT FEATURE_TYPE ListIndexer_6_OUTPUT OUTPUT { FEATURE_TYPE AttributeRemover_2_OUTPUT @RemoveAttributes(fme_encoded,_coords_vertex<opencurly>0<closecurly>,_coords,_coords<opencurly>0<closecurly>) @RemoveAttributes(fme_pcre_match"$(AttributeRemover_2_LIST_EXP)") }
# -------------------------------------------------------------------------
FACTORY_DEF * VertexCreatorFactory FACTORY_NAME VertexCreator_2 INPUT FEATURE_TYPE AttributeRemover_2_OUTPUT MODE ADD INDEX "<Unused>" CONTINUE_ON_ERROR YES XVAL "@EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>x_coords_vertex<closeparen>,VertexCreator_2)" YVAL "@EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>y_coords_vertex<closeparen>,VertexCreator_2)" OUTPUT OUTPUT FEATURE_TYPE VertexCreator_2_OUTPUT
# -------------------------------------------------------------------------
FACTORY_DEF {*} AttrSetFactory FACTORY_NAME AttributeCreator_2 COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE VertexCreator_2_OUTPUT MULTI_FEATURE_MODE NO NULL_ATTR_MODE NO_OP ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "" "position_vertex" "SET_TO" "fin" } OUTPUT OUTPUT FEATURE_TYPE AttributeCreator_2_OUTPUT
FACTORY_DEF * TeeFactory FACTORY_NAME "AttributeCreator_2 OUTPUT Splitter" INPUT FEATURE_TYPE AttributeCreator_2_OUTPUT OUTPUT FEATURE_TYPE AttributeCreator_2_OUTPUT_0_j0uI5yR3ojs= OUTPUT FEATURE_TYPE AttributeCreator_2_OUTPUT_1_RySErNGX5NA=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Vertex_fin (Disabled) Nuker" INPUT FEATURE_TYPE AttributeCreator_2_OUTPUT_0_j0uI5yR3ojs=
# -------------------------------------------------------------------------
Tcl2 proc ListIndexer_indexer {index numElements prefix} { if {$index < 0 } { set index [expr $numElements + $index]; }; regsub \"{}\" {_coords{}} \"{$index}\" listWithIndex; regsub \"{}\" {_coords{}} {} listBase; set complexListExp "$listWithIndex\."; set prefixLength [expr [string length $complexListExp]-1]; set prefix [FME_DecodeText $prefix]; foreach attr [FME_AttributeNames] { set newAttr {}; if {$attr == $listWithIndex} { set newAttr $listBase; } elseif {[string first $complexListExp $attr] == 0} { set newAttr [string replace $attr 0 $prefixLength]; }; if {$newAttr != {}} { if {$prefix != {} } { set newAttr $prefix$newAttr; }; if {[string first {fme_} $newAttr] != 0} { set first [string first {fme_} $newAttr]; lappend attrsToCopy $newAttr $attr; }; }; }; if {[info exists attrsToCopy] && [llength $attrsToCopy] > 0} { eval FME_Execute CopyAttributes $attrsToCopy; }; }
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_IntTester INPUT FEATURE_TYPE GeometryRemover_OUTPUT_0_lyMsYNg46jM= TEST "0" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_ListIndexer INPUT FEATURE_TYPE __toOutput__ TEST "0" >= 0 OUTPUT PASSED FEATURE_TYPE ListIndexer_OUTPUT @Tcl2("ListIndexer_indexer 0 0 {}") OUTPUT FAILED FEATURE_TYPE ListIndexer_OUTPUT @Tcl2("ListIndexer_indexer 0 @NumElements(_coords{}) {}")
# -------------------------------------------------------------------------
Tcl2 set AttributeSplitter_2_18d447e0_88de_4963_bffd_4caf8dc13fb710_splitDelim [FME_DecodeText {<comma>}]; if { [regexp {^([1-9][0-9]*s)+$} [set AttributeSplitter_2_18d447e0_88de_4963_bffd_4caf8dc13fb710_splitDelim]] } { set AttributeSplitter_2_18d447e0_88de_4963_bffd_4caf8dc13fb710_splitWidths [split [regsub -all {s$} {<comma>} {}] s]; proc AttributeSplitter_2_doSplit {} { global AttributeSplitter_2_18d447e0_88de_4963_bffd_4caf8dc13fb710_splitWidths; set source [FME_GetAttribute [FME_DecodeText {_coords}]]; set attrNum 0; set listName [FME_DecodeText {_coords_vertex}]; set attrPos 0; set keepEmptyParts [string equal {No} {No}]; foreach width [set AttributeSplitter_2_18d447e0_88de_4963_bffd_4caf8dc13fb710_splitWidths] { set endPos [expr $attrPos + $width - 1]; set bit [string range $source $attrPos $endPos]; set part [string trim $bit]; if { $keepEmptyParts || $part != \"\" } { FME_SetAttribute "$listName{$attrNum}" $part; incr attrNum; }; incr attrPos $width; }; }; } else { proc AttributeSplitter_2_doSplit {} { global AttributeSplitter_2_18d447e0_88de_4963_bffd_4caf8dc13fb710_splitDelim; set delim [set AttributeSplitter_2_18d447e0_88de_4963_bffd_4caf8dc13fb710_splitDelim]; set delimLength [string length $delim]; set source [FME_GetAttribute [FME_DecodeText {_coords}]]; set keepEmptyParts [string equal {No} {No}]; set bits {}; set startIndex 0; set nextIndex [string first $delim $source $startIndex]; while {$nextIndex >= 0} { lappend bits [string range $source $startIndex [expr $nextIndex-1]]; set startIndex [expr $nextIndex + $delimLength]; set nextIndex [string first $delim $source $startIndex]; }; lappend bits [string range $source $startIndex end]; set listName [FME_DecodeText {_coords_vertex}]; set attrNum 0; foreach bit $bits { set trimmedPart [string trim $bit]; if { $keepEmptyParts || $trimmedPart != \"\" } { FME_SetAttribute "$listName{$attrNum}" $trimmedPart; incr attrNum; }; } } }
FACTORY_DEF * TeeFactory FACTORY_NAME AttributeSplitter_2 INPUT FEATURE_TYPE ListIndexer_OUTPUT OUTPUT FEATURE_TYPE AttributeSplitter_2_OUTPUT @Tcl2(AttributeSplitter_2_doSplit)
# -------------------------------------------------------------------------
Tcl2 proc ListIndexer_2_indexer {index numElements prefix} { if {$index < 0 } { set index [expr $numElements + $index]; }; regsub \"{}\" {_coords_vertex{}} \"{$index}\" listWithIndex; regsub \"{}\" {_coords_vertex{}} {} listBase; set complexListExp "$listWithIndex\."; set prefixLength [expr [string length $complexListExp]-1]; set prefix [FME_DecodeText $prefix]; foreach attr [FME_AttributeNames] { set newAttr {}; if {$attr == $listWithIndex} { set newAttr $listBase; } elseif {[string first $complexListExp $attr] == 0} { set newAttr [string replace $attr 0 $prefixLength]; }; if {$newAttr != {}} { if {$prefix != {} } { set newAttr $prefix$newAttr; }; if {[string first {fme_} $newAttr] != 0} { set first [string first {fme_} $newAttr]; lappend attrsToCopy $newAttr $attr; }; }; }; if {[info exists attrsToCopy] && [llength $attrsToCopy] > 0} { eval FME_Execute CopyAttributes $attrsToCopy; }; }
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_2_IntTester INPUT FEATURE_TYPE AttributeSplitter_2_OUTPUT TEST "0" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_2_ListIndexer INPUT FEATURE_TYPE __toOutput__ TEST "0" >= 0 OUTPUT PASSED FEATURE_TYPE ListIndexer_2_OUTPUT @Tcl2("ListIndexer_2_indexer 0 0 {x}") OUTPUT FAILED FEATURE_TYPE ListIndexer_2_OUTPUT @Tcl2("ListIndexer_2_indexer 0 @NumElements(_coords_vertex{}) {x}")
# -------------------------------------------------------------------------
Tcl2 proc ListIndexer_3_indexer {index numElements prefix} { if {$index < 0 } { set index [expr $numElements + $index]; }; regsub \"{}\" {_coords_vertex{}} \"{$index}\" listWithIndex; regsub \"{}\" {_coords_vertex{}} {} listBase; set complexListExp "$listWithIndex\."; set prefixLength [expr [string length $complexListExp]-1]; set prefix [FME_DecodeText $prefix]; foreach attr [FME_AttributeNames] { set newAttr {}; if {$attr == $listWithIndex} { set newAttr $listBase; } elseif {[string first $complexListExp $attr] == 0} { set newAttr [string replace $attr 0 $prefixLength]; }; if {$newAttr != {}} { if {$prefix != {} } { set newAttr $prefix$newAttr; }; if {[string first {fme_} $newAttr] != 0} { set first [string first {fme_} $newAttr]; lappend attrsToCopy $newAttr $attr; }; }; }; if {[info exists attrsToCopy] && [llength $attrsToCopy] > 0} { eval FME_Execute CopyAttributes $attrsToCopy; }; }
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_3_IntTester INPUT FEATURE_TYPE ListIndexer_2_OUTPUT TEST "1" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TestFactory FACTORY_NAME ListIndexer_3_ListIndexer INPUT FEATURE_TYPE __toOutput__ TEST "1" >= 0 OUTPUT PASSED FEATURE_TYPE ListIndexer_3_OUTPUT @Tcl2("ListIndexer_3_indexer 1 0 {y}") OUTPUT FAILED FEATURE_TYPE ListIndexer_3_OUTPUT @Tcl2("ListIndexer_3_indexer 1 @NumElements(_coords_vertex{}) {y}")
# -------------------------------------------------------------------------
INCLUDE [ set macroLine "MACRO AttributeRemover_LIST_EXP "; foreach attr [split "_coords_vertex<opencurly><closecurly>"] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "\\{\[0-9\]+\\}"]; append macroLine ",^$attr$"; }; puts $macroLine; ]
FACTORY_DEF {*} TeeFactory FACTORY_NAME AttributeRemover INPUT FEATURE_TYPE ListIndexer_3_OUTPUT OUTPUT { FEATURE_TYPE AttributeRemover_OUTPUT @RemoveAttributes(fme_encoded,_coords_vertex<opencurly>0<closecurly>,_coords<opencurly>0<closecurly>,_coordinates) @RemoveAttributes(fme_pcre_match"$(AttributeRemover_LIST_EXP)") }
# -------------------------------------------------------------------------
FACTORY_DEF * VertexCreatorFactory FACTORY_NAME VertexCreator INPUT FEATURE_TYPE AttributeRemover_OUTPUT MODE ADD INDEX "<Unused>" CONTINUE_ON_ERROR YES XVAL "@EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>x_coords_vertex<closeparen>,VertexCreator)" YVAL "@EvaluateExpression(FDIV,FLOAT,<at>Value<openparen>y_coords_vertex<closeparen>,VertexCreator)" OUTPUT OUTPUT FEATURE_TYPE VertexCreator_OUTPUT
# -------------------------------------------------------------------------
FACTORY_DEF {*} AttrSetFactory FACTORY_NAME AttributeCreator COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE VertexCreator_OUTPUT MULTI_FEATURE_MODE NO NULL_ATTR_MODE NO_OP ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "" "position_vertex" "SET_TO" "debut" } OUTPUT OUTPUT FEATURE_TYPE AttributeCreator_OUTPUT
FACTORY_DEF * TeeFactory FACTORY_NAME "AttributeCreator OUTPUT Splitter" INPUT FEATURE_TYPE AttributeCreator_OUTPUT OUTPUT FEATURE_TYPE AttributeCreator_OUTPUT_0_lQ+3mj5tm0E= OUTPUT FEATURE_TYPE AttributeCreator_OUTPUT_1_Et/p63Aqn4M=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Vertex_debut (Disabled) Nuker" INPUT FEATURE_TYPE AttributeCreator_OUTPUT_1_Et/p63Aqn4M=
# -------------------------------------------------------------------------
FACTORY_DEF {*} DuplicateRemoverFactory FACTORY_NAME DuplicateFilter COMMAND_PARM_EVALUATION SINGLE_PASS SUPPORTS_FEATURE_TABLES INPUT FEATURE_TYPE AttributeCreator_OUTPUT_0_lQ+3mj5tm0E= INPUT FEATURE_TYPE AttributeCreator_2_OUTPUT_1_RySErNGX5NA= KEY_ATTRIBUTES { y_coords_vertex x_coords_vertex } INPUT_IS_ORDERED NO OUTPUT DUPLICATE FEATURE_TYPE DuplicateFilter_DUPLICATE OUTPUT UNIQUE FEATURE_TYPE DuplicateFilter_UNIQUE
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "DuplicateFilter_Duplicate (Disabled) Nuker" INPUT FEATURE_TYPE DuplicateFilter_DUPLICATE
# -------------------------------------------------------------------------
INCLUDE [ set macroLine "MACRO AttributeRemover_3_LIST_EXP "; foreach attr [split "_coords<opencurly><closecurly>"] { set attr [FME_DecodeText $attr]; set attr [regsub "{}$" $attr "{}.*"]; set attr [regsub -all "{}" $attr "\\{\[0-9\]+\\}"]; append macroLine ",^$attr$"; }; puts $macroLine; ]
FACTORY_DEF {*} TeeFactory FACTORY_NAME AttributeRemover_3 INPUT FEATURE_TYPE DuplicateFilter_UNIQUE OUTPUT { FEATURE_TYPE AttributeRemover_3_OUTPUT @RemoveAttributes(fme_encoded,_coords,path_seq,_vertex_count,_coordinates) @RemoveAttributes(fme_pcre_match"$(AttributeRemover_3_LIST_EXP)") }
# -------------------------------------------------------------------------
FACTORY_DEF {*} OverlayFactory FACTORY_NAME PointOnLineOverlayer INPUT LINE FEATURE_TYPE BulkAttributeRenamer_2_OUTPUT INPUT POINT FEATURE_TYPE AttributeRemover_3_OUTPUT TOLERANCE 1 OVERLAP_COUNT_ATTRIBUTE "_overlaps" DEAGGREGATE_INPUT Yes MERGE_ATTRS "YES" ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "ORIGINAL_IF_CONFLICT" INCOMING_PREFIX "<Unused>" LIST_NAME "<Unused>" LIST_ATTRS_TO_INCLUDE { <Unused> } LIST_ATTRS_TO_INCLUDE_MODE <Unused> CANDIDATE_LIST_NAME "<Unused>" CANDIDATE_LIST_ATTRS_TO_INCLUDE { <Unused> } CANDIDATE_LIST_ATTRS_TO_INCLUDE_MODE <Unused> MODE COMPLETE OVERLAY_TYPE POINT_ON_LINE OUTPUT POINT FEATURE_TYPE PointOnLineOverlayer_POINT
# -------------------------------------------------------------------------
FACTORY_DEF {*} OverlayFactory FACTORY_NAME PointOnAreaOverlayer INPUT POINT FEATURE_TYPE PointOnLineOverlayer_POINT INPUT POLYGON FEATURE_TYPE BulkAttributeRenamer_OUTPUT OVERLAP_COUNT_ATTRIBUTE "_overlaps" DEAGGREGATE_INPUT Yes MERGE_ATTRS "YES" ATTR_ACCUM_MODE "HANDLE_CONFLICT" ATTR_CONFLICT_RES "ORIGINAL_IF_CONFLICT" INCOMING_PREFIX "<Unused>" LIST_NAME "<Unused>" LIST_ATTRS_TO_INCLUDE { <Unused> } LIST_ATTRS_TO_INCLUDE_MODE <Unused> CANDIDATE_LIST_NAME "<Unused>" CANDIDATE_LIST_ATTRS_TO_INCLUDE { <Unused> } CANDIDATE_LIST_ATTRS_TO_INCLUDE_MODE <Unused> MODE COMPLETE OVERLAY_TYPE POINT_ON_AREA POLYS_FIRST "NO" REJECT_INVALID_GEOM YES OUTPUT POINT FEATURE_TYPE PointOnAreaOverlayer_POINT
FACTORY_DEF * TeeFactory FACTORY_NAME "PointOnAreaOverlayer POINT Splitter" INPUT FEATURE_TYPE PointOnAreaOverlayer_POINT OUTPUT FEATURE_TYPE PointOnAreaOverlayer_POINT_0_ZK7VGYHSo24= OUTPUT FEATURE_TYPE PointOnAreaOverlayer_POINT_1_x2WusK23Nmo=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "PointOnAreaOverlayer_Point (Disabled) Nuker" INPUT FEATURE_TYPE PointOnAreaOverlayer_POINT_1_x2WusK23Nmo=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME CoordinateSystemSetter INPUT FEATURE_TYPE PointOnAreaOverlayer_POINT_0_ZK7VGYHSo24= OUTPUT FEATURE_TYPE CoordinateSystemSetter_OUTPUT @CoordSys("EPSG:2154")
# -------------------------------------------------------------------------
FACTORY_DEF * TestFactory INPUT FEATURE_TYPE CoordinateSystemSetter_OUTPUT TEST "Specify Coordinate" == "All Coordinates" OUTPUT PASSED FEATURE_TYPE CoordinateExtractor_PASSED OUTPUT FAILED FEATURE_TYPE CoordinateExtractor_FAILED
FACTORY_DEF * TestFactory FACTORY_NAME CoordinateExtractor_PASSED INPUT FEATURE_TYPE CoordinateExtractor_PASSED TEST @Dimension() == 2 OUTPUT PASSED FEATURE_TYPE CoordinateExtractor_OUTPUT @ZValue("") @Coordinate(x,ALL,"<Unused>"{}.x,FLATTEN_AGGREGATE,YES) @Coordinate(y,ALL,"<Unused>"{}.y,FLATTEN_AGGREGATE,NO) @Coordinate(z,ALL,"<Unused>"{}.z,FLATTEN_AGGREGATE,NO) @Dimension(2) OUTPUT FAILED FEATURE_TYPE CoordinateExtractor_OUTPUT @Coordinate(x,ALL,"<Unused>"{}.x,FLATTEN_AGGREGATE,YES) @Coordinate(y,ALL,"<Unused>"{}.y,FLATTEN_AGGREGATE,NO) @Coordinate(z,ALL,"<Unused>"{}.z,FLATTEN_AGGREGATE,NO)
FACTORY_DEF * TestFactory FACTORY_NAME CoordinateExtractor_FAILED INPUT FEATURE_TYPE CoordinateExtractor_FAILED TEST @Dimension() == 2 OUTPUT PASSED FEATURE_TYPE CoordinateExtractor_FAILED_PASSED OUTPUT FAILED FEATURE_TYPE CoordinateExtractor_OUTPUT "pk_x" @Coordinate(x,"0",FLATTEN_AGGREGATE,YES) "pk_y" @Coordinate(y,"0",FLATTEN_AGGREGATE,NO)
FACTORY_DEF * TestFactory FACTORY_NAME CoordinateExtractor_FAILED_PASSED INPUT FEATURE_TYPE CoordinateExtractor_FAILED_PASSED TEST "" == "" OUTPUT PASSED FEATURE_TYPE CoordinateExtractor_OUTPUT "pk_x" @Coordinate(x,"0",FLATTEN_AGGREGATE,YES) "pk_y" @Coordinate(y,"0",FLATTEN_AGGREGATE,NO) OUTPUT FAILED FEATURE_TYPE CoordinateExtractor_OUTPUT "pk_x" @Coordinate(x,"0",FLATTEN_AGGREGATE,YES) "pk_y" @Coordinate(y,"0",FLATTEN_AGGREGATE,NO)
# -------------------------------------------------------------------------
Tcl2 proc AttributeRounder_round {places} { set attrs [split {pk_y pk_x} { }]; foreach attr $attrs { set attr [FME_DecodeText $attr]; set original [FME_GetAttribute $attr]; if {$original == {} || [FME_IsAttributeNull $attr]} { FME_LogMessage fme_warn 917357 {AttributeRounder} $attr; continue; }; set comment {"do not attempt rounding if not a number"}; if {[string is double $original] == 0} {continue}; if { [catch { set multiplier [expr pow(10,$places)]; set result [expr "round($original * $multiplier) / $multiplier"]; set comment {"when rounding integers, chop trailing .0 from the value"}; if {$places == 0 || [string is wideinteger $original] == 1} { set result [regsub {[.]0*$} $result {}]; }; };] == 0 } { FME_SetAttribute $attr $result; } else { FME_LogMessage fme_warn 917350 {AttributeRounder} $attr; }; }; }
FACTORY_DEF * TestFactory FACTORY_NAME AttributeRounder INPUT FEATURE_TYPE CoordinateExtractor_OUTPUT TEST "2" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TeeFactory FACTORY_NAME AttributeRounder_AttributeRounder INPUT FEATURE_TYPE __toOutput__ OUTPUT FEATURE_TYPE AttributeRounder_OUTPUT @Tcl2("AttributeRounder_round 2")
# -------------------------------------------------------------------------
FACTORY_DEF {*} AttrSetFactory COMMAND_PARM_EVALUATION SINGLE_PASS FACTORY_NAME AttributeCopier INPUT FEATURE_TYPE AttributeRounder_OUTPUT ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "pk_y" "pk_lat" "COPY" "" } ATTR_ACTION { "pk_x" "pk_long" "COPY" "" } OUTPUT OUTPUT FEATURE_TYPE AttributeCopier_OUTPUT
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME AttributeReprojector INPUT FEATURE_TYPE AttributeCopier_OUTPUT OUTPUT FEATURE_TYPE AttributeReprojector_OUTPUT @Reproject("EPSG:2154","LL-WGS84","pk_long","pk_lat")
# -------------------------------------------------------------------------
Tcl2 proc AttributeRounder_2_round {places} { set attrs [split {longueur} { }]; foreach attr $attrs { set attr [FME_DecodeText $attr]; set original [FME_GetAttribute $attr]; if {$original == {} || [FME_IsAttributeNull $attr]} { FME_LogMessage fme_warn 917357 {AttributeRounder_2} $attr; continue; }; set comment {"do not attempt rounding if not a number"}; if {[string is double $original] == 0} {continue}; if { [catch { set multiplier [expr pow(10,$places)]; set result [expr "round($original * $multiplier) / $multiplier"]; set comment {"when rounding integers, chop trailing .0 from the value"}; if {$places == 0 || [string is wideinteger $original] == 1} { set result [regsub {[.]0*$} $result {}]; }; };] == 0 } { FME_SetAttribute $attr $result; } else { FME_LogMessage fme_warn 917350 {AttributeRounder_2} $attr; }; }; }
FACTORY_DEF * TestFactory FACTORY_NAME AttributeRounder_2 INPUT FEATURE_TYPE AttributeReprojector_OUTPUT TEST "0" TYPE INT ENCODED OUTPUT PASSED FEATURE_TYPE __toOutput__
FACTORY_DEF * TeeFactory FACTORY_NAME AttributeRounder_2_AttributeRounder INPUT FEATURE_TYPE __toOutput__ OUTPUT FEATURE_TYPE AttributeRounder_2_OUTPUT @Tcl2("AttributeRounder_2_round 0")
# -------------------------------------------------------------------------
FACTORY_DEF {*} AttrSetFactory COMMAND_PARM_EVALUATION SINGLE_PASS FACTORY_NAME AttributeRenamer INPUT FEATURE_TYPE AttributeRounder_2_OUTPUT ATTRSET_CREATE_DIRECTIVES _PROPAGATE_MISSING_FDIV ATTR_ACTION { "municipality_nom" "municipality_name_fr" "RENAME_SET_DEFAULT" "" } ATTR_ACTION { "longueur" "length_real" "RENAME_SET_DEFAULT" "" } ATTR_ACTION { "longueur_km" "length_theorical" "RENAME_SET_DEFAULT" "" } ATTR_ACTION { "municipality_admincode" "municipality_admincode" "RENAME_SET_DEFAULT" "" } OUTPUT OUTPUT FEATURE_TYPE AttributeRenamer_OUTPUT
# -------------------------------------------------------------------------
FACTORY_DEF * SortFactory FACTORY_NAME Sorter_2 INPUT FEATURE_TYPE AttributeRenamer_OUTPUT SORT_BY secteur_id NUMERIC ASCENDING troncon_id NUMERIC ASCENDING OUTPUT SORTED FEATURE_TYPE Sorter_2_SORTED
# -------------------------------------------------------------------------
# Create the DomainName that this transformer will use.
# Because @Count itself will evalute the expression to calculate the
# domain, we don't need to do anything in Tcl per feature going by
INCLUDE [ set domainPrefix {}; if { {Global} == {Local} } { set domainPrefix [FME_EncodeText {Counter_}]; }; puts "MACRO Counter_FULL_DOMAIN ${domainPrefix}pk_id"; ]
FACTORY_DEF * ExecuteFunctionFactory FACTORY_NAME Counter_Rejector COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE Sorter_2_SORTED FUNCTION_DEFINITION @Count(REJECTABLE_WITH_FLAG,fme_encoded,$(Counter_FULL_DOMAIN),"@EvaluateExpression(FDIV,FLOAT,$(START$encode),Counter)") RESULT_ATTRIBUTE "pk_id" OUTPUT COMPLETE FEATURE_TYPE Counter_OUTPUT OUTPUT REJECTED FEATURE_TYPE Counter_<REJECTED>
FACTORY_DEF * TeeFactory FACTORY_NAME "Counter OUTPUT Splitter" INPUT FEATURE_TYPE Counter_OUTPUT OUTPUT FEATURE_TYPE Counter_OUTPUT_0_/sTFA1dnbN8= OUTPUT FEATURE_TYPE Counter_OUTPUT_1_bU15iCfwGHA= OUTPUT FEATURE_TYPE Counter_OUTPUT_2_pA+nVUfM3k0= OUTPUT FEATURE_TYPE Counter_OUTPUT_3_WeyqcBK0djk=
FACTORY_DEF * TeeFactory FACTORY_NAME "Counter <REJECTED> Transformer Output Nuker" INPUT FEATURE_TYPE Counter_<REJECTED>
# -------------------------------------------------------------------------
FACTORY_DEF {*} ConnectionFactory FACTORY_NAME LineBuilder INPUT FEATURE_TYPE Counter_OUTPUT_3_WeyqcBK0djk= ACCUM_INPUT_ATTRS One LIST_ATTRS_TO_INCLUDE { <Unused> } LIST_ATTRS_TO_INCLUDE_MODE <Unused> REMOVE_DUPLICATES NO OUTPUT LINE FEATURE_TYPE LineBuilder_LINE
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "pk (Disabled) Nuker" INPUT FEATURE_TYPE Counter_OUTPUT_1_bU15iCfwGHA=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "tronçons (Disabled) Nuker" INPUT FEATURE_TYPE LengthCalculator_OUTPUT_0_mOViq6QLaFg=
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "LineCombiner_Line (Disabled) Nuker" INPUT FEATURE_TYPE LineCombiner_LINE_0_OyNlA2VcNkc=
# -------------------------------------------------------------------------
FACTORY_DEF * RoutingFactory FACTORY_NAME "Destination Feature Type Routing Correlator" COMMAND_PARM_EVALUATION SINGLE_PASS INPUT FEATURE_TYPE * ROUTE FME_GENERIC Counter_OUTPUT_0_/sTFA1dnbN8= TO GEOJSON __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id,1,__wb_out_feat_type__,__nuke_me__ COORDINATE_SYSTEM EPSG:2154 GEOMETRY ROUTE FME_GENERIC LengthCalculator_OUTPUT_2_Fc3qYUDsB4Q= TO GEOJSON __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id,0,__wb_out_feat_type__,__nuke_me__ COORDINATE_SYSTEM EPSG:2154 GEOMETRY ROUTE FME_GENERIC Counter_OUTPUT_2_pA+nVUfM3k0= TO POSTGIS __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id,2,<at>SupplyAttributes<openparen>ENCODED<comma>__wb_out_feat_type__<comma>phase_3_pk_auto<closeparen> COORDINATE_SYSTEM EPSG:2154 GEOMETRY ROUTE FME_GENERIC LineBuilder_LINE TO POSTGIS __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id,2,<at>SupplyAttributes<openparen>ENCODED<comma>__wb_out_feat_type__<comma>phase_3_pk_sens_verif<closeparen> COORDINATE_SYSTEM EPSG:2154 GEOMETRY FEATURE_TYPE_ATTRIBUTE __wb_out_feat_type__ OUTPUT ROUTED FEATURE_TYPE * OUTPUT NOT_ROUTED FEATURE_TYPE __nuke_me__ @Tcl2("FME_StatMessage 818059 [FME_GetAttribute fme_template_feature_type] 818060 818061 fme_warn")
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Final Output Nuker" INPUT FEATURE_TYPE __nuke_me__
# -------------------------------------------------------------------------
FACTORY_DEF * CreationFactory FACTORY_NAME VisualizerProcessor CREATE_AT_END OUTPUT FEATURE_TYPE __NUKEME__ @TCL("if [file exists {$(WORKSPACE_TEMP_DIR)}] {set files [glob -nocomplain -directory {$(WORKSPACE_TEMP_DIR)} -tails *.ffs]; if {[llength $files] == 1} { set theFile {$(WORKSPACE_TEMP_DIR)/}; append theFile [lindex $files 0]; eval FME_Execute System \173\042$(FME_HOME_UNIX)/fmedatainspector\042 --visualizer --single-application --delete-on-close --no-source-prompt -f FFS \042$theFile\042 & \175; } elseif { [llength $files] == 0 } { catch { file delete -force {$(WORKSPACE_TEMP_DIR)} }; } else { set filesNoExt {}; set lastfile {}; foreach {fileName} [lsort $files] { set fileNoExt [string trimright $fileName {.ffs}]; if [regexp {(.*)_[0-9]*$} $fileNoExt wholething fileNoExtBase] { if { $fileNoExtBase == $lastfile } { continue } }; set lastfile $fileNoExt; lappend filesNoExt $fileNoExt }; eval FME_Execute System \173\042$(FME_HOME_UNIX)/fmedatainspector\042 --visualizer --single-application --delete-on-close --no-source-prompt -d {$(WORKSPACE_TEMP_DIR)} -a ffs -f FFS $filesNoExt & \175; }; }; ")
FACTORY_DEF * TeeFactory FACTORY_NAME VisualizerCleaner INPUT FEATURE_TYPE __NUKEME__
# -------------------------------------------------------------------------
POSTGIS_2_DEF phase_3_pk_auto postgis_type postgis_geometry postgis_mode "" postgis_sql_key_columns "" postgis_drop_table "" postgis_truncate_table "" fme_feature_operation INSERT fme_table_handling TRUNCATE_EXISTING postgis_create_with_oids NO postgis_create_gist_index YES postgis_spatial_column_type geometry postgis_spatial_column the_geom postgis_srid 2154 postgis_vacuum_analyze NO postgis_allow_serial_writing NO pk_id text pk_x text pk_y text pk_long text pk_lat text length_real text length_theorical text secteur_id int8 municipality_admincode text municipality_postcode text municipality_name_fr text municipality_name_br text way_osm_id text way_highway text way_type text way_oneway text way_ref text way_name_fr text way_name_br text
# -------------------------------------------------------------------------
POSTGIS_2_DEF phase_3_pk_sens_verif postgis_type postgis_geometry postgis_mode "" postgis_sql_key_columns "" postgis_drop_table "" postgis_truncate_table "" fme_feature_operation INSERT fme_table_handling TRUNCATE_EXISTING postgis_create_with_oids NO postgis_create_gist_index YES postgis_spatial_column_type geometry postgis_spatial_column the_geom postgis_srid 2154 postgis_vacuum_analyze NO postgis_allow_serial_writing NO secteur_id int4