diff --git a/.env.dev b/.env.dev index f216c37..103485f 100644 --- a/.env.dev +++ b/.env.dev @@ -3,4 +3,13 @@ DEBUG=True DJANGO_SERVE_STATIC=True LOG_LEVEL=DEBUG CREATE_SUPERUSER=True -RUN_MIGRATIONS=True \ No newline at end of file +RUN_MIGRATIONS=True + +# MQTT Configuration +MQTT_HOST=telemetry-broker +MQTT_PORT=1883 + +# ETA model registry (dev default; seed once with seed_baseline_model) +MODEL_REGISTRY_DIR=eta_models +ETA_MAX_STOPS=10 +ETA_DEFAULT_UNCERTAINTY_S=120 \ No newline at end of file diff --git a/.env.example b/.env.example index c14044e..23c41e2 100644 --- a/.env.example +++ b/.env.example @@ -25,6 +25,10 @@ REDIS_PASSWORD=redispassword # Google Maps API Key API_TOKEN= +# MQTT Configuration +MQTT_HOST=telemetry-broker +MQTT_PORT=1883 + # HiveMQ Configuration HIVEMQ_LOG_LEVEL=INFO @@ -54,4 +58,10 @@ FLOWER_DOMAIN=tasks.databus.simovilab.com DOCS_DOMAIN=docs.databus.simovilab.com # Certificate in production -CERT_RESOLVER=letsencrypt \ No newline at end of file +CERT_RESOLVER=letsencrypt + +# ETA model registry (used by gtfs_eta; set to a writable directory) +# Seed the baseline model once: MODEL_REGISTRY_DIR=eta_models ./.venv/bin/python -m gtfs_eta.seed_baseline_model +MODEL_REGISTRY_DIR=eta_models +ETA_MAX_STOPS=3 +ETA_DEFAULT_UNCERTAINTY_S=120 \ No newline at end of file diff --git a/.gitignore b/.gitignore index be484db..69df8a4 100644 --- a/.gitignore +++ b/.gitignore @@ -197,3 +197,12 @@ cython_debug/ # and can be added to the global gitignore or merged into this file. For a more nuclear # option (not recommended) you can uncomment the following to ignore the entire idea folder. #.idea/ + +# AI tooling artifacts (local only) +graphify-out/ +llms.txt +llms-full.txt +CONTEXT_SYNC_NOTES.md + +# Published GTFS-RT / Schedule output (runtime artifacts) +backend/feed/files/ diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..ef08f6e --- /dev/null +++ b/Makefile @@ -0,0 +1,17 @@ +.PHONY: lint typecheck test + +# ruff needs no Django settings (no settings import), so it runs locally +# against the backend project without going through Docker. +lint: + cd backend && uv run ruff check . + +# mypy loads the django-stubs plugin, which imports databus.settings; that +# module reads env vars via python-decouple and fails to import outside the +# dev container, so mypy must run inside it. +typecheck: + docker compose -f compose.dev.yml run --rm orchestrator uv run mypy . + +# pytest-django also needs the real settings/DB, so it runs inside the dev +# container too. +test: + docker compose -f compose.dev.yml run --rm orchestrator uv run pytest -q diff --git a/backend/README.md b/backend/README.md index 40c2bb3..093fe78 100644 --- a/backend/README.md +++ b/backend/README.md @@ -9,3 +9,61 @@ Django apps: - `runs`: Run data (_anima machinae_) - `website`: Miscellaneous website features (e.g., admin interface, users, etc.) - `feed`: GTFS data handling and processing + +## Workspace layout (uv) + +This project is a `uv` workspace (see `pyproject.toml` `[tool.uv.workspace]`): + +- `gtfs-django`, `gtfs-io` — workspace members, editable installs from the + local `backend/gtfs-django/` and `backend/gtfs-io/` directories. +- `gtfs-eta` — **not** a workspace member. It's an editable *path* dependency + (`[tool.uv.sources]`) pointing at `backend/gtfs-eta`, which is a symlink + (`gtfs-eta -> ../../gtfs-eta`) to the sibling `simovilab/gtfs-eta` repo + checked out next to `databus/`. `compose.dev.yml` bind-mounts + `../gtfs-eta:/gtfs-eta` read-write so the OS-resolved symlink target exists + inside the container too. `gtfs-eta` is excluded from ruff/mypy/pytest here + — it's a separately-maintained codebase with its own lint baseline and test + suite. + +## Celery services + +Four services share this codebase (see `Dockerfile` build targets and +`compose.dev.yml`): + +| Service | Build target | Role | Queue | +|---|---|---|---| +| `orchestrator` | `dev` | Django HTTP + admin + REST API | — (not a worker) | +| `realtime-engine` | `realtime-engine` | Celery worker: MQTT ingestion bootstep, lifecycle events, HTTP polling, staleness scan | `realtime_engine` | +| `schedule-engine` | `schedule-engine` | Celery worker: builds the two GTFS-RT feeds + the daily GTFS Schedule zip | `schedule_engine` | +| `scheduler` | `scheduler` | Celery Beat (`databus/celery.py` `beat_schedule`) | — | + +Queues are assigned per-task via `@shared_task(queue=...)`, not Celery +`task_routes`; each worker is started with a matching `-Q ` flag. + +## Code quality + +Root `Makefile` targets: + +```bash +make lint # cd backend && uv run ruff check . — runs locally, no Docker needed +make typecheck # docker compose -f compose.dev.yml run --rm orchestrator uv run mypy . +make test # docker compose -f compose.dev.yml run --rm orchestrator uv run pytest -q +``` + +`typecheck` and `test` run inside the dev container because Django settings +read env vars via `python-decouple`, which fails outside the container. +`lint` needs no Django settings import, so it runs locally against the +backend project. + +Ruff enforces missing-docstring rules (`D1`, i.e. `D100`-`D107`) in addition +to its default `E`/`F` rules. Mypy runs with the `django-stubs` plugin +(`mypy_django_plugin.main`). Both exclude `migrations/`, `gtfs-eta/`, and +`.venv/`. + +## Tests + +445 tests (`pytest --collect-only`, `backend/`): + +```bash +docker compose -f compose.dev.yml run --rm orchestrator uv run pytest -q +``` diff --git a/backend/api/README.md b/backend/api/README.md new file mode 100644 index 0000000..5a46036 --- /dev/null +++ b/backend/api/README.md @@ -0,0 +1,72 @@ +# API · public REST layer (DRF) + +- **Purpose**: the orchestrator's control plane. Exposes run registration and lifecycle + transitions, read-only GTFS Schedule resources, two lookup endpoints that back the + run-registration UI cascade, and the static realtime OpenAPI schema. Django models: none — + `api` is a REST layer over `runs`, `operations`, and `feed` models. +- **Key modules**: + - `views.py` — all ViewSets/APIViews (operations, runs, GTFS Schedule, auxiliary GTFS) + - `serializers.py` — DRF serializers, including `CreateRunSerializer` / `RunUpdateSerializer` + - `urls.py` — router registrations + custom paths + - `realtime.yml` — static GTFS Realtime/MQTT OpenAPI/AsyncAPI schema, served as a file download + +## Run registration & lifecycle + +- `POST /api/create-run/` (`CreateRunViewSet`) — validates the payload, resolves + `vehicle_id`/`operator_id`, creates the `Run` row (implicit `RUN_REQUESTED`), then drives it + through `RunLifecycleEvents.VALIDATE_RUN` → `RunLifecycleEvents.INITIALIZE_RUN` via + `RunLifecycleService`. Any failed step returns the failing stage (`serialization`, + `operational_validation`, `registration`, `gtfs_validation`, `initialization`) with a matching + HTTP status (`api/views.py:199-279`). +- `GET /api/runs//state/` — current `run_lifecycle_state`. +- `POST /api/runs//update/` (`RunUpdateViewSet`) — advances a run's FSM. The `event` + field takes the **lowercase** `RunLifecycleEvents` value (e.g. `run_confirmed_by_operator`, not + the enum member name); `RunUpdateSerializer` validates against `RunLifecycleEvents` and any + extra `details` are flattened into the payload before `process_event` (`api/views.py:303-366`). +- `GET /api/runs//history/` — ordered `RunLifecycleTransition` audit log. + +## GTFS Schedule + registration-UI lookups + +- Router-registered read/write resources for `agency`, `stops`/`geo-stops`, `shapes`/`geo-shapes`, + `routes`, `calendars`, `calendar-dates`, `trips`, `stop-times`, `fare-attributes`, `fare-rules`, + `feed-info` (all backed by `feed.models`, unauthenticated). +- `GET /api/service-today/?date=YYYY-MM-DD` — active GTFS `service_id`s for a date. +- `GET /api/which-shapes/?route_id=` — step 1 of the registration cascade: distinct + `GeoShape`s used by a route's stops in the current (`is_current=True`) feed. +- `GET /api/find-trips/?route_id=&service_id=&shape_id=` — step 2: candidate trips, each tagged + with its matching `Run`'s lifecycle state (or `"UNKNOWN"`). + +## Operations resources + +Router-registered ViewSets over `operations.models`: `company`, `operator`, `data-provider`, +`vehicle` (filterable by `company`), `equipment`, `equipment-log` (filterable by `equipment`, +`data_provider`, `vehicle`), plus `position`, `stop-status`, `occupancy`, `congestion` from +`runs.models`. All except `CompanyViewSet` use `TokenAuthentication`. + +## Auth & docs + +- `POST /api/login/` — username/password → DRF auth `Token` + operator basic info. +- Global default authentication is `TokenAuthentication` (`databus/settings.py` `REST_FRAMEWORK`). +- `GET /api/docs/schema/` — serves the **static** file `api/realtime.yml` as a download + (`api/views.py:89-94`); this is a hand-maintained schema, not the dynamic drf-spectacular route. +- `GET /api/docs/` — ReDoc page (`SpectacularRedocView`, clickjacking-exempt so it can be + embedded). Note `drf_spectacular`'s dynamic OpenAPI generation is installed (`SPECTACULAR_SETTINGS` + in `databus/settings.py`) but the `docs/schema/` route intentionally serves the static YAML + instead of the generated schema — the dynamic route is unfinished. + +## Configuration + +No app-specific env vars; auth/schema settings come from `databus/settings.py` +(`REST_FRAMEWORK`, `SPECTACULAR_SETTINGS`). + +## Tests + +``` +docker compose -f compose.dev.yml run --rm orchestrator uv run pytest api/ -q +``` +`api/tests/` covers `company`, `find-trips`, and `which-shapes`; `make test` runs the full suite. + +## Docs + +- [REST API](../../docs/content/interfaces/rest-api.md) +- [Run lifecycle states](../../docs/content/runs/lifecycle-states.md) diff --git a/backend/api/__init__.py b/backend/api/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/api/admin.py b/backend/api/admin.py index 8c38f3f..95ce3c8 100644 --- a/backend/api/admin.py +++ b/backend/api/admin.py @@ -1,3 +1,3 @@ -from django.contrib import admin +"""Django admin registrations for the api app (none; api has no models of its own).""" # Register your models here. diff --git a/backend/api/apps.py b/backend/api/apps.py index 878e7d5..7f9f5c3 100644 --- a/backend/api/apps.py +++ b/backend/api/apps.py @@ -1,6 +1,10 @@ +"""Django app configuration for the api app.""" + from django.apps import AppConfig class ApiConfig(AppConfig): + """Configure the api app (DRF ViewSets/serializers exposing GTFS and run data).""" + default_auto_field = "django.db.models.BigAutoField" name = "api" diff --git a/backend/api/models.py b/backend/api/models.py index 71a8362..00fef9d 100644 --- a/backend/api/models.py +++ b/backend/api/models.py @@ -1,3 +1,3 @@ -from django.db import models +"""Django models for the api app (none; api is a REST layer over feed/runs/operations models).""" # Create your models here. diff --git a/backend/api/serializers.py b/backend/api/serializers.py index a9e2f9f..264f189 100644 --- a/backend/api/serializers.py +++ b/backend/api/serializers.py @@ -1,3 +1,5 @@ +"""DRF serializers for the operations, runs, and GTFS Schedule domains exposed by the api app.""" + from operations.models import ( Company, Operator, @@ -7,45 +9,47 @@ EquipmentLog, ) from runs.models import ( - Run, Position, VehicleStopStatus, CongestionLevel, OccupancyStatus, ) from runs.domain.lifecycle import RunLifecycleEvents -from feed.models import * +from feed.models import ( + Agency, + Stop, + Route, + Calendar, + CalendarDate, + Shape, + GeoShape, + Trip, + StopTime, + FareAttribute, + FareRule, + FeedInfo, +) from django.contrib.auth.models import User from rest_framework import serializers -from django.contrib.gis.geos import Point from rest_framework_gis.serializers import GeoFeatureModelSerializer, GeometryField -# -------------- -# Login data -# -------------- - - -class LoginSerializer(serializers.Serializer): - token = serializers.CharField() - operator_id = serializers.CharField() - - # -------------- # Telemetry data # -------------- class CompanySerializer(serializers.HyperlinkedModelSerializer): - agency = serializers.PrimaryKeyRelatedField(queryset=Agency.objects.all()) + """Serialize a Company, the legal entity operating vehicles under one or more GTFS Agencies.""" class Meta: - model = Company model = Company fields = "__all__" ordering = ["id"] class OperatorSerializer(serializers.HyperlinkedModelSerializer): + """Serialize an Operator (driver, dispatcher, or administrator) and their companies.""" + user = serializers.PrimaryKeyRelatedField(queryset=User.objects.all()) company = serializers.PrimaryKeyRelatedField( queryset=Company.objects.all(), many=True @@ -58,6 +62,8 @@ class Meta: class DataProviderSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a DataProvider, the owner of the telemetry equipment for a company.""" + company = serializers.PrimaryKeyRelatedField( queryset=Company.objects.all(), many=True ) @@ -69,6 +75,8 @@ class Meta: class VehicleSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a Vehicle and its owning Company.""" + company = serializers.PrimaryKeyRelatedField(queryset=Company.objects.all()) class Meta: @@ -78,6 +86,8 @@ class Meta: class EquipmentSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a telemetry Equipment unit and its owning provider/vehicle.""" + data_provider = serializers.PrimaryKeyRelatedField( queryset=DataProvider.objects.all() ) @@ -90,6 +100,8 @@ class Meta: class EquipmentLogSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a historical snapshot of an Equipment unit's identity and status.""" + equipment = serializers.PrimaryKeyRelatedField(queryset=Equipment.objects.all()) data_provider = serializers.PrimaryKeyRelatedField( queryset=DataProvider.objects.all() @@ -102,17 +114,9 @@ class Meta: ordering = ["id"] -class RunSerializer(serializers.HyperlinkedModelSerializer): - vehicle = serializers.PrimaryKeyRelatedField(queryset=Vehicle.objects.all()) - operator = serializers.PrimaryKeyRelatedField(queryset=Operator.objects.all()) - - class Meta: - model = Run - fields = "__all__" - ordering = ["id"] - - class CreateRunSerializer(serializers.Serializer): + """Validate the payload for requesting a new run (vehicle, operator, and GTFS trip identifiers).""" + vehicle_id = serializers.CharField(max_length=100) operator_id = serializers.CharField(max_length=100) route_id = serializers.CharField(max_length=100) @@ -132,12 +136,15 @@ class CreateRunSerializer(serializers.Serializer): class RunUpdateSerializer(serializers.Serializer): + """Validate a run lifecycle update request: a lowercase `RunLifecycleEvents` value plus optional details.""" + event = serializers.ChoiceField(choices=RunLifecycleEvents) details = serializers.JSONField(required=False, default=dict) class PositionSerializer(serializers.HyperlinkedModelSerializer): - vehicle = serializers.PrimaryKeyRelatedField(queryset=Vehicle.objects.all()) + """Serialize a vehicle Position sample, exposing latitude/longitude alongside the raw point.""" + vehicle = serializers.PrimaryKeyRelatedField(queryset=Vehicle.objects.all()) latitude = serializers.SerializerMethodField() longitude = serializers.SerializerMethodField() @@ -147,7 +154,6 @@ class Meta: fields = [ "url", "vehicle", - "vehicle", "timestamp", "point", "latitude", @@ -158,50 +164,49 @@ class Meta: ] ordering = ["id"] - def get_latitude(self, obj): + def get_latitude(self, obj: Position) -> float | None: + """Return the position's latitude (point.y), or None if no point is set.""" if obj.point: return obj.point.y return None - def get_longitude(self, obj): + def get_longitude(self, obj: Position) -> float | None: + """Return the position's longitude (point.x), or None if no point is set.""" if obj.point: return obj.point.x return None - # def create(self, validated_data): - # latitude = validated_data.pop("latitude") - # longitude = validated_data.pop("longitude") - # point = Point(longitude, latitude) - # return Position.objects.create(point=point, **validated_data) - class VehicleStopStatusSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a vehicle's relationship to its current/next stop (GTFS-RT VehicleStopStatus).""" + vehicle = serializers.PrimaryKeyRelatedField(queryset=Vehicle.objects.all()) class Meta: model = VehicleStopStatus fields = "__all__" - fields = "__all__" ordering = ["id"] class CongestionLevelSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a vehicle's congestion level (GTFS-RT CongestionLevel).""" + vehicle = serializers.PrimaryKeyRelatedField(queryset=Vehicle.objects.all()) class Meta: model = CongestionLevel fields = "__all__" - fields = "__all__" ordering = ["id"] class OccupancyStatusSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a vehicle's passenger occupancy (GTFS-RT OccupancyStatus).""" + vehicle = serializers.PrimaryKeyRelatedField(queryset=Vehicle.objects.all()) class Meta: model = OccupancyStatus fields = "__all__" - fields = "__all__" ordering = ["id"] @@ -211,6 +216,8 @@ class Meta: class AgencySerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS Agency (agency.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -219,6 +226,8 @@ class Meta: class StopSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS Stop (stops.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -227,6 +236,8 @@ class Meta: class GeoStopSerializer(GeoFeatureModelSerializer): + """Serialize GTFS Stops as GeoJSON features keyed on their point geometry.""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) stop_point = GeometryField() @@ -237,6 +248,8 @@ class Meta: class RouteSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS Route (routes.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -245,6 +258,8 @@ class Meta: class CalendarSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS weekly service Calendar (calendar.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -253,6 +268,8 @@ class Meta: class CalendarDateSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS CalendarDate service exception (calendar_dates.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -261,6 +278,8 @@ class Meta: class ShapeSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS Shape point (shapes.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -269,6 +288,8 @@ class Meta: class GeoShapeSerializer(GeoFeatureModelSerializer): + """Serialize GTFS Shapes as GeoJSON LineString features.""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) geometry = GeometryField() @@ -279,6 +300,8 @@ class Meta: class TripSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS Trip (trips.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -287,6 +310,8 @@ class Meta: class StopTimeSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS StopTime (stop_times.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -295,6 +320,8 @@ class Meta: class FareAttributeSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS FareAttribute (fare_attributes.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -303,6 +330,8 @@ class Meta: class FareRuleSerializer(serializers.HyperlinkedModelSerializer): + """Serialize a GTFS FareRule (fare_rules.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -311,6 +340,8 @@ class Meta: class FeedInfoSerializer(serializers.HyperlinkedModelSerializer): + """Serialize GTFS FeedInfo (feed_info.txt).""" + feed = serializers.PrimaryKeyRelatedField(read_only=True) class Meta: @@ -324,19 +355,24 @@ class Meta: class ServiceTodaySerializer(serializers.Serializer): + """Serialize a GTFS service ID active on a given date.""" + service_id = serializers.CharField() class WhichShapesSerializer(serializers.Serializer): + """Serialize the shape metadata for one of the distinct GeoShapes used by a route's stop sequence.""" + shape_id = serializers.CharField() - direction_id = serializers.IntegerField() - shape_name = serializers.CharField() - shape_desc = serializers.CharField() - shape_from = serializers.CharField() - shape_to = serializers.CharField() + shape_name = serializers.CharField(allow_null=True, required=False) + shape_desc = serializers.CharField(allow_null=True, required=False) + shape_from = serializers.CharField(allow_null=True, required=False) + shape_to = serializers.CharField(allow_null=True, required=False) class FindTripsSerializer(serializers.Serializer): + """Serialize a scheduled trip alongside its run's current lifecycle state, if any.""" + trip_id = serializers.CharField() trip_time = serializers.TimeField() run_lifecycle_state = serializers.CharField() diff --git a/backend/api/tests.py b/backend/api/tests.py deleted file mode 100644 index 8c2af81..0000000 --- a/backend/api/tests.py +++ /dev/null @@ -1,10 +0,0 @@ -from django.test import TestCase -from django.urls import reverse - - -class RunsViewSetTests(TestCase): - def test_runs_get_returns_200(self): - response = self.client.get(reverse("runs")) - - self.assertEqual(response.status_code, 200) - self.assertEqual(response.json(), {"message": "Hello world!"}) diff --git a/backend/api/tests/__init__.py b/backend/api/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/api/tests/conftest.py b/backend/api/tests/conftest.py new file mode 100644 index 0000000..e1caf71 --- /dev/null +++ b/backend/api/tests/conftest.py @@ -0,0 +1,126 @@ +"""Shared fixtures for api app tests: a minimal GTFS feed with one route, shape, and stop. + +Built imperatively via the ORM (small, in-code fixture data) rather than the +large `feed/fixtures/gtfs.json` bundle, so each test only pulls in the rows +it actually needs. +""" + +from datetime import date + +import pytest +from django.contrib.gis.geos import LineString +from rest_framework.test import APIClient + +from feed.models import Agency, Calendar, Feed, GeoShape, Route, RouteStop, Stop, Trip + + +@pytest.fixture +def api_client() -> APIClient: + """Return an unauthenticated DRF test client.""" + return APIClient() + + +@pytest.fixture +def current_feed(db) -> Feed: + """Create and return a Feed marked as the current GTFS feed.""" + return Feed.objects.create(feed_id="feed-1", is_current=True) + + +@pytest.fixture +def agency(current_feed: Feed) -> Agency: + """Create an Agency in the current feed.""" + return Agency.objects.create( + feed=current_feed, + agency_id="agency-1", + agency_name="Test Agency", + agency_url="https://example.com", + agency_timezone="America/Costa_Rica", + ) + + +@pytest.fixture +def route(current_feed: Feed, agency: Agency) -> Route: + """Create a Route in the current feed, linked to `agency`.""" + return Route.objects.create( + feed=current_feed, + route_id="route-1", + agency_id=agency.agency_id, + route_short_name="1", + route_long_name="Test Route", + ) + + +@pytest.fixture +def geo_shape(current_feed: Feed) -> GeoShape: + """Create a GeoShape in the current feed with a two-point LineString.""" + return GeoShape.objects.create( + feed=current_feed, + shape_id="shape-1", + geometry=LineString((-84.1, 9.9), (-84.0, 9.95)), + shape_name="Test Shape", + shape_desc="A shape for tests", + shape_from="Origin", + shape_to="Destination", + ) + + +@pytest.fixture +def stop(current_feed: Feed) -> Stop: + """Create a Stop in the current feed.""" + return Stop.objects.create( + feed=current_feed, + stop_id="stop-1", + stop_name="Test Stop", + stop_lat=9.9, + stop_lon=-84.1, + ) + + +@pytest.fixture +def route_stop( + current_feed: Feed, route: Route, geo_shape: GeoShape, stop: Stop +) -> RouteStop: + """Create a RouteStop tying `route` to `geo_shape` via `stop`.""" + return RouteStop.objects.create( + feed=current_feed, + route_id=route.route_id, + shape_id=geo_shape.shape_id, + direction_id=0, + stop_id=stop.stop_id, + stop_sequence=1, + timepoint=True, + ) + + +@pytest.fixture +def calendar(current_feed: Feed) -> Calendar: + """Create a Calendar (service) in the current feed, valid all of 2026.""" + return Calendar.objects.create( + feed=current_feed, + service_id="service-1", + monday=True, + tuesday=True, + wednesday=True, + thursday=True, + friday=True, + saturday=False, + sunday=False, + start_date=date(2026, 1, 1), + end_date=date(2026, 12, 31), + ) + + +@pytest.fixture +def trip(current_feed: Feed, route: Route, calendar: Calendar, geo_shape: GeoShape) -> Trip: + """Create a Trip in the current feed for `route`/`calendar`/`geo_shape`.""" + return Trip.objects.create( + feed=current_feed, + route_id=route.route_id, + service_id=calendar.service_id, + trip_id="trip-1", + direction_id=0, + shape_id=geo_shape.shape_id, + trip_headsign="Test Headsign", + wheelchair_accessible=0, + bikes_allowed=0, + ) diff --git a/backend/api/tests/test_company.py b/backend/api/tests/test_company.py new file mode 100644 index 0000000..12101ca --- /dev/null +++ b/backend/api/tests/test_company.py @@ -0,0 +1,45 @@ +"""API tests for the live CompanyViewSet (`GET /api/company/`). + +CompanySerializer previously declared a PrimaryKeyRelatedField for a +non-existent `agency` attribute (the Company model's field is the M2M +`linked_agency`); these tests exercise the real field end to end. +""" + +import pytest + +from feed.models import Agency +from operations.models import Company + + +@pytest.mark.django_db +def test_list_serializes_linked_agency(api_client, agency: Agency): + """Listing a Company with a linked agency serializes linked_agency as a list of agency PKs.""" + company = Company.objects.create(id="company-1", name="Test Transit Co.") + company.linked_agency.set([agency]) + + response = api_client.get("/api/company/") + + assert response.status_code == 200 + body = response.json() + assert len(body) == 1 + # HyperlinkedModelSerializer swaps the pk for a `url` field rather than + # exposing `id` directly, so identify the row by name and check the URL + # embeds the pk instead. + assert body[0]["name"] == "Test Transit Co." + assert "company-1" in body[0]["url"] + # HyperlinkedModelSerializer represents the M2M as hyperlinks too, one per + # linked agency. + assert len(body[0]["linked_agency"]) == 1 + assert f"/api/agency/{agency.pk}/" in body[0]["linked_agency"][0] + + +@pytest.mark.django_db +def test_list_serializes_company_with_no_linked_agency(api_client, db): + """A Company with no linked agencies still serializes, with an empty linked_agency list.""" + Company.objects.create(id="company-2", name="Agency-less Co.") + + response = api_client.get("/api/company/") + + assert response.status_code == 200 + body = response.json() + assert body[0]["linked_agency"] == [] diff --git a/backend/api/tests/test_find_trips.py b/backend/api/tests/test_find_trips.py new file mode 100644 index 0000000..e3a1faf --- /dev/null +++ b/backend/api/tests/test_find_trips.py @@ -0,0 +1,90 @@ +"""API tests for FindTripsView (`GET /api/find-trips/`). + +Second step of the run-registration UI cascade: given a route/service/shape +selection, return candidate trips each tagged with the current lifecycle +state of any run for that trip today. +""" + +from datetime import date, time + +import pytest + +from feed.models import Stop, Trip, TripTime +from runs.domain.lifecycle import RunLifecycleStates +from runs.models import Run + + +@pytest.fixture +def trip_time(trip: Trip, stop: Stop) -> TripTime: + """Create a TripTime departure for `trip` at `stop`.""" + return TripTime.objects.create( + feed=trip.feed, + trip_id=trip.trip_id, + stop_id=stop.stop_id, + stop_sequence=1, + departure_time=time(7, 0, 0), + ) + + +@pytest.mark.django_db +def test_returns_trip_tagged_unknown_when_no_run_exists( + api_client, trip, trip_time, route +): + """A matching trip with no Run today is tagged run_lifecycle_state=UNKNOWN.""" + response = api_client.get( + "/api/find-trips/", + { + "route_id": trip.route_id, + "service_id": trip.service_id, + "shape_id": trip.shape_id, + }, + ) + + assert response.status_code == 200 + body = response.json() + assert body == [ + { + "trip_id": trip.trip_id, + "trip_time": "07:00:00", + "run_lifecycle_state": "UNKNOWN", + "direction_id": trip.direction_id, + "trip_headsign": trip.trip_headsign, + } + ] + + +@pytest.mark.django_db +def test_returns_trip_tagged_with_its_run_lifecycle_state( + api_client, trip, trip_time +): + """A matching trip with a Run today is tagged with that run's actual lifecycle state.""" + Run.objects.create( + trip_id=trip.trip_id, + route_id=trip.route_id, + direction_id=trip.direction_id, + shape_id=trip.shape_id, + start_date=date.today(), + run_lifecycle_state=RunLifecycleStates.IN_PROGRESS, + ) + + response = api_client.get( + "/api/find-trips/", + { + "route_id": trip.route_id, + "service_id": trip.service_id, + "shape_id": trip.shape_id, + }, + ) + + assert response.status_code == 200 + body = response.json() + assert body[0]["run_lifecycle_state"] == RunLifecycleStates.IN_PROGRESS.value + + +@pytest.mark.django_db +def test_missing_params_returns_400(api_client, current_feed): + """Omitting any of route_id/service_id/shape_id returns a 400.""" + response = api_client.get("/api/find-trips/", {"route_id": "route-1"}) + + assert response.status_code == 400 + assert "error" in response.json() diff --git a/backend/api/tests/test_which_shapes.py b/backend/api/tests/test_which_shapes.py new file mode 100644 index 0000000..0ebc3d1 --- /dev/null +++ b/backend/api/tests/test_which_shapes.py @@ -0,0 +1,34 @@ +"""API tests for WhichShapesView (`GET /api/which-shapes/`). + +First step of the run-registration UI cascade: given a route, return the +distinct GeoShapes used by its stop sequence in the current feed. +""" + +import pytest + + +@pytest.mark.django_db +def test_returns_shape_metadata_for_route(api_client, route, route_stop, geo_shape): + """A route with one RouteStop returns its linked GeoShape's metadata.""" + response = api_client.get("/api/which-shapes/", {"route_id": route.route_id}) + + assert response.status_code == 200 + body = response.json() + assert body == [ + { + "shape_id": geo_shape.shape_id, + "shape_name": geo_shape.shape_name, + "shape_desc": geo_shape.shape_desc, + "shape_from": geo_shape.shape_from, + "shape_to": geo_shape.shape_to, + } + ] + + +@pytest.mark.django_db +def test_returns_empty_list_for_unknown_route(api_client, current_feed): + """An unresolvable route_id returns an empty list rather than erroring.""" + response = api_client.get("/api/which-shapes/", {"route_id": "ghost-route"}) + + assert response.status_code == 200 + assert response.json() == [] diff --git a/backend/api/urls.py b/backend/api/urls.py index 845eae4..a2ffefa 100644 --- a/backend/api/urls.py +++ b/backend/api/urls.py @@ -1,7 +1,7 @@ +"""URL routing for the api app: DRF router-registered resources plus custom run/GTFS endpoints.""" + from django.urls import include, path from rest_framework import routers -from rest_framework.authtoken.views import obtain_auth_token -from drf_spectacular.views import SpectacularAPIView, SpectacularRedocView from . import views diff --git a/backend/api/views.py b/backend/api/views.py index d75ad01..b554301 100644 --- a/backend/api/views.py +++ b/backend/api/views.py @@ -1,8 +1,11 @@ +"""DRF views for the api app: operations/run resources, GTFS Schedule resources, and run lifecycle endpoints.""" + from django.conf import settings -from django.http import FileResponse +from django.http import FileResponse, HttpRequest from django.contrib.auth import authenticate from rest_framework import viewsets, status from rest_framework.views import APIView +from rest_framework.request import Request from rest_framework.response import Response from rest_framework.exceptions import ValidationError from rest_framework.authentication import TokenAuthentication @@ -11,7 +14,6 @@ from drf_spectacular.views import SpectacularRedocView from django.views.decorators.clickjacking import xframe_options_exempt from django.utils.decorators import method_decorator -from realtime_engine.tasks import run_lifecycle_event from runs.services.exceptions import RunLifecycleError from runs.services.lifecycle import RunLifecycleService from runs.domain.lifecycle import RunLifecycleEvents @@ -80,9 +82,12 @@ FindTripsSerializer, ) from datetime import datetime +from datetime import date as DateType +from uuid import UUID -def get_schema(request): +def get_schema(request: HttpRequest) -> FileResponse: + """Serve the static GTFS Realtime OpenAPI schema (docs/schema/realtime.yml) as a file download.""" file_path = settings.BASE_DIR / "api" / "realtime.yml" return FileResponse( open(file_path, "rb"), as_attachment=True, filename="realtime.yml" @@ -91,7 +96,7 @@ def get_schema(request): @method_decorator(xframe_options_exempt, name="dispatch") class RedocView(SpectacularRedocView): - pass + """Render the ReDoc API docs page, exempted from clickjacking protection so it can be embedded.""" # ------------- @@ -100,7 +105,10 @@ class RedocView(SpectacularRedocView): class LoginView(APIView): - def post(self, request): + """Authenticate an operator by username/password and issue a DRF auth token.""" + + def post(self, request: Request) -> Response: + """Validate credentials and return an auth token with the operator's basic info.""" username = request.data.get("username") password = request.data.get("password") user = authenticate(username=username, password=password) @@ -120,18 +128,24 @@ def post(self, request): class CompanyViewSet(viewsets.ModelViewSet): + """REST resource for Company records (the legal entities operating vehicles).""" + queryset = Company.objects.all() serializer_class = CompanySerializer # authentication_classes = [TokenAuthentication] class DataProviderViewSet(viewsets.ModelViewSet): + """REST resource for DataProvider records (owners of telemetry equipment).""" + queryset = DataProvider.objects.all() serializer_class = DataProviderSerializer authentication_classes = [TokenAuthentication] class VehicleViewSet(viewsets.ModelViewSet): + """REST resource for Vehicle records, filterable by company.""" + queryset = Vehicle.objects.all() serializer_class = VehicleSerializer filter_backends = [DjangoFilterBackend] @@ -140,11 +154,14 @@ class VehicleViewSet(viewsets.ModelViewSet): class EquipmentViewSet(viewsets.ModelViewSet): + """REST resource for telemetry Equipment records.""" + queryset = Equipment.objects.all() serializer_class = EquipmentSerializer authentication_classes = [TokenAuthentication] - def create(self, request): + def create(self, request: Request) -> Response: + """Create an Equipment record and return only its ID.""" serializer = self.get_serializer(data=request.data) serializer.is_valid(raise_exception=True) self.perform_create(serializer) @@ -156,6 +173,8 @@ def create(self, request): class EquipmentLogViewSet(viewsets.ModelViewSet): + """REST resource for EquipmentLog records, the historical audit trail of Equipment changes.""" + queryset = EquipmentLog.objects.all() serializer_class = EquipmentLogSerializer filter_backends = [DjangoFilterBackend] @@ -165,6 +184,8 @@ class EquipmentLogViewSet(viewsets.ModelViewSet): class OperatorViewSet(viewsets.ModelViewSet): + """REST resource for Operator records (drivers, dispatchers, administrators).""" + queryset = Operator.objects.all() serializer_class = OperatorSerializer authentication_classes = [TokenAuthentication] @@ -182,7 +203,8 @@ class CreateRunViewSet(APIView): It only allows the POST method with the new run data. """ - def post(self, request): + def post(self, request: Request) -> Response: + """Register a run and drive it REQUESTED -> VALIDATED -> INITIALIZED, or report the failing step.""" service = RunLifecycleService() # Serialization and validation of the input data try: @@ -211,6 +233,10 @@ def post(self, request): ) # Record creation puts the run in REQUESTED state (run_requested event) try: + # vehicle/operator_obj are guaranteed non-None here: the `if errors` + # check above already returned when either lookup came back empty. + assert vehicle is not None + assert operator_obj is not None run = Run.objects.create(**payload) run.vehicle.set([vehicle]) run.operator.set([operator_obj]) @@ -260,7 +286,8 @@ class RunStateViewSet(APIView): It only allows the GET method with the run_id as path parameter. """ - def get(self, request, run_id): + def get(self, request: Request, run_id: UUID) -> Response: + """Return the run's current lifecycle state, or 404 if the run does not exist.""" run = Run.objects.filter(id=run_id).first() if not run: return Response( @@ -280,7 +307,8 @@ class RunUpdateViewSet(APIView): It only allows the POST method with the event to process. """ - def post(self, request, run_id): + def post(self, request: Request, run_id: UUID) -> Response: + """Process a lowercase run lifecycle event against the run's FSM and return the new state.""" service = RunLifecycleService() serializer = RunUpdateSerializer(data=request.data) if not serializer.is_valid(): @@ -320,8 +348,12 @@ def post(self, request, run_id): ) payload["event"] = event_value try: + # event_value was just checked against every RunLifecycleEvents + # value, so this reconstruction cannot raise; process_event wants + # the enum member itself (same convention as + # realtime_engine/tasks.py's run_lifecycle_event task). new_run_lifecycle_state, _guards, _actions = service.process_event( - event_value, payload + RunLifecycleEvents(event_value), payload ) except RunLifecycleError as e: return Response( @@ -343,7 +375,8 @@ class RunHistoryView(APIView): is authoritative even if a downstream action later fails). """ - def get(self, request, run_id): + def get(self, request: Request, run_id: UUID) -> Response: + """Return the run's FSM transitions ordered by timestamp, or 404 if the run does not exist.""" if not Run.objects.filter(id=run_id).exists(): return Response( {"status": "error", "errors": {"detail": f"run {run_id} not found"}}, @@ -372,24 +405,32 @@ def get(self, request, run_id): class PositionViewSet(viewsets.ModelViewSet): + """REST resource for vehicle Position samples (GPS/motion telemetry).""" + queryset = Position.objects.all() serializer_class = PositionSerializer authentication_classes = [TokenAuthentication] class VehicleStopStatusViewSet(viewsets.ModelViewSet): + """REST resource for vehicle stop-status snapshots (GTFS-RT VehicleStopStatus).""" + queryset = VehicleStopStatus.objects.all() serializer_class = VehicleStopStatusSerializer authentication_classes = [TokenAuthentication] class CongestionLevelViewSet(viewsets.ModelViewSet): + """REST resource for vehicle congestion-level snapshots (GTFS-RT CongestionLevel).""" + queryset = CongestionLevel.objects.all() serializer_class = CongestionLevelSerializer authentication_classes = [TokenAuthentication] class OccupancyViewSet(viewsets.ModelViewSet): + """REST resource for vehicle occupancy snapshots (GTFS-RT OccupancyStatus).""" + queryset = OccupancyStatus.objects.all() serializer_class = OccupancyStatusSerializer authentication_classes = [TokenAuthentication] @@ -591,7 +632,13 @@ class FeedInfoViewSet(viewsets.ModelViewSet): class ServiceTodayView(APIView): - def get(self, request): + """Endpoint returning the GTFS service IDs active on a given (or today's) date.""" + + def get(self, request: Request) -> Response: + """Return service IDs active on `?date=YYYY-MM-DD` (default today), from exceptions or the weekly calendar.""" + # `date` holds a full `datetime` when parsed from the query param, or a + # bare `date` when defaulted to today; both work as GTFS date filters. + date: datetime | DateType if request.query_params.get("date"): date = datetime.strptime(request.query_params.get("date"), "%Y-%m-%d") else: @@ -623,34 +670,42 @@ def get(self, request): class WhichShapesView(APIView): - def get(self, request): + """First step of the run-registration UI cascade: given a route, return the distinct shapes used by its stops.""" + + def get(self, request: Request) -> Response: + """Return shape metadata (shape_id, name, desc, from/to) for the distinct GeoShapes used by `?route_id=` in the current feed, or an empty list if the route/feed can't be resolved.""" route_id = request.query_params.get("route_id") feed = Feed.objects.filter(is_current=True).first() - route = Route.objects.filter(feed=feed, route_id=route_id).first() - shapes = RouteStop.objects.filter(route=route) - shapes = shapes.values("shape").distinct() - geo_shapes = [] - for shape in shapes: - geo_shape = ( - GeoShape.objects.filter(id=shape["shape"]) - .values( - "shape_id", - "direction_id", - "shape_name", - "shape_desc", - "shape_from", - "shape_to", - ) - .first() - ) - geo_shapes.append(geo_shape) + route = ( + Route.objects.filter(feed=feed, route_id=route_id).first() + if route_id + else None + ) + if not route: + return Response([]) + + shape_pks = ( + RouteStop.objects.filter(linked_route=route) + .values_list("linked_shape", flat=True) + .distinct() + ) + geo_shapes = GeoShape.objects.filter(id__in=shape_pks).values( + "shape_id", + "shape_name", + "shape_desc", + "shape_from", + "shape_to", + ) serializer = WhichShapesSerializer(geo_shapes, many=True) return Response(serializer.data) class FindTripsView(APIView): - def get(self, request): + """Second step of the run-registration UI cascade: given a route/service/shape selection, return candidate trips.""" + + def get(self, request: Request) -> Response: + """Return trips for `?route_id=&service_id=&shape_id=`, each tagged with its run's lifecycle state, or 400 if any parameter is missing.""" # Get the query parameters route_id = request.query_params.get("route_id") service_id = request.query_params.get("service_id") @@ -674,10 +729,13 @@ def get(self, request): selected_trips = [] for trip in trips: + # TripTime relates to Trip via the `linked_trip` FK (resolved on + # save from feed+trip_id) rather than the bare trip_id string, so + # this can't cross-match a same-numbered trip from another feed. this_trip = ( - TripTime.objects.filter(trip_id=trip.trip_id) - .order_by("trip_time") - .values("trip_id", "trip_time") + TripTime.objects.filter(linked_trip=trip) + .order_by("departure_time") + .values("trip_id", "departure_time") .first() ) if this_trip: @@ -699,7 +757,7 @@ def get(self, request): selected_trips.append( { "trip_id": this_trip["trip_id"], - "trip_time": this_trip["trip_time"], + "trip_time": this_trip["departure_time"], "run_lifecycle_state": run_lifecycle_state, "direction_id": trip.direction_id, "trip_headsign": trip.trip_headsign, diff --git a/backend/databus/README.md b/backend/databus/README.md new file mode 100644 index 0000000..a108c38 --- /dev/null +++ b/backend/databus/README.md @@ -0,0 +1,78 @@ +# Databús · Django project package + +- **Purpose**: the Django project itself — settings, the Celery app (task discovery, MQTT + consumer bootstep registration, beat schedule), ASGI/WSGI entry points, and root URL + configuration. Every other app under `backend/` is `INSTALLED_APPS`-registered here. +- **Key modules**: + - `settings.py` — all Django/Celery/Channels/DRF configuration, env-driven via `python-decouple` + - `celery.py` — the `Celery("databus")` app, MQTT consumer bootstep registration, `beat_schedule` + - `urls.py` — root URLconf (`admin/`, `website.urls` at `/`, `api.urls` at `/api/`, + `feed.urls` at `/feed/`) + - `asgi.py` / `wsgi.py` — ASGI (Daphne, for Channels/WebSocket) and WSGI entry points + +## Settings — required env vars (`decouple.config`) + +| Variable | Notes | +| --- | --- | +| `SECRET_KEY` | required, no default | +| `DEBUG` | required, cast `bool` | +| `ALLOWED_HOSTS` | required, cast `Csv()` | +| `DB_NAME`, `DB_USER`, `DB_PASSWORD`, `DB_HOST`, `DB_PORT` | required, PostGIS connection | +| `GDAL_LIBRARY_PATH`, `GEOS_LIBRARY_PATH` | required only on macOS (`platform.system() == "Darwin"`) | +| `REDIS_HOST`, `REDIS_PORT` | required — used for `CHANNEL_LAYERS` (`channels_redis`) | +| `RABBITMQ_HOST`, `RABBITMQ_PORT` | required — compose `CELERY_BROKER_URL` | +| `RABBITMQ_USER`, `RABBITMQ_PASS` | optional, default `guest`/`guest` | +| `STATIC_URL` | optional, default `/static/` | +| `MEDIA_URL` | optional, default `/media/` | + +`CELERY_BROKER_URL` is derived, not read directly: `amqp://{RABBITMQ_USER}:{RABBITMQ_PASS}@{RABBITMQ_HOST}:{RABBITMQ_PORT}//` +(`settings.py:146-148`). `CELERY_RESULT_BACKEND = "django-db"`, results are extended +(`CELERY_RESULTS_EXTENDED = True`), and `django_celery_beat`/`django_celery_results` are both +installed apps. `DJANGO_SERVE_STATIC` (plain `os.environ`, not decouple) additionally toggles +serving static/media through Django outside `DEBUG` (`urls.py:33-42`). + +## Celery app (`celery.py`) + +- Discovers tasks from every installed app (`app.autodiscover_tasks()`). +- Registers `realtime_engine.mqtt.MQTTConsumerStep` as a worker bootstep + (`app.steps["worker"].add(MQTTConsumerStep)`); the step itself no-ops unless + `MQTT_CONSUMER_ENABLED` is set, so only the `realtime-engine` container actually starts an MQTT + connection. +- `debug_task` — prints the current task's request context, for sanity-checking worker + connectivity. + +### Beat schedule (`app.conf.beat_schedule`, `celery.py:47-74`) + +| Name | Task | Interval | Notes | +| --- | --- | --- | --- | +| `fetch-positions` | `realtime_engine.tasks.fetch_positions` | every 10s | `options: {"expires": 10}` — a task that hasn't started within its own cycle is revoked rather than queued behind a slow HTTP source | +| `build-vehicle-positions-every-15s` | `schedule_engine.tasks.build_vehicle_positions` | every 15s | | +| `build-trip-updates-every-15s` | `schedule_engine.tasks.build_trip_updates` | every 15s | | +| `scan-stale-runs-every-30s` | `realtime_engine.tasks.scan_stale_runs` | every 30s | | +| `build-schedule-daily` | `schedule_engine.tasks.build_schedule` | every 1 day | rebuilds `feed/files/gtfs.zip` | + +This is the beat schedule as actually configured in code — it lives in `app.conf.beat_schedule` +here, not in Django admin. + +## ASGI / WSGI / URLs + +- `ASGI_APPLICATION = "databus.asgi.application"` — served by Daphne (`daphne` + `channels` apps + installed) to support the Channels layer (`CHANNEL_LAYERS` → `channels_redis`, keyed off + `REDIS_HOST`/`REDIS_PORT`). +- `WSGI_APPLICATION = "databus.wsgi.application"`. +- Root URLconf mounts: `admin/` (Django admin), `""` (`website.urls`), `api/` (`api.urls`), + `feed/` (`feed.urls`); media/static are served through Django when `DEBUG` or + `DJANGO_SERVE_STATIC` is set. + +## Tests + +``` +docker compose -f compose.dev.yml run --rm orchestrator uv run pytest -q +``` +No `databus/tests.py` of its own — this package is exercised indirectly by every other app's test +suite. `make test` runs the full suite. + +## Docs + +- [Celery workers, queues & beat](../../docs/content/operations/celery.md) +- [Configuration & environment variables](../../docs/content/operations/configuration.md) diff --git a/backend/databus/celery.py b/backend/databus/celery.py index 9cd91fb..ec08bc6 100644 --- a/backend/databus/celery.py +++ b/backend/databus/celery.py @@ -1,7 +1,20 @@ +"""Celery app for databus: task discovery, the MQTT consumer bootstep, and the beat schedule. + +Beat schedule entries: `fetch-positions` polls HTTP telemetry sources every 10s (a run +that hasn't started within its own cycle is revoked via `expires=10` rather than queuing +up behind a slow source); `build-vehicle-positions-every-15s` and +`build-trip-updates-every-15s` rebuild the two GTFS-RT feeds every 15s; +`scan-stale-runs-every-30s` sweeps for runs that have gone quiet; +`build-schedule-daily` rebuilds the GTFS Schedule zip once a day; and +`fetch-schedule-hourly-at-30` HEAD-checks each active FeedPublisher's schedule_url ETag +every hour at :30 and imports the GTFS Schedule when it changed. +""" + from datetime import timedelta import os from celery import Celery +from celery.schedules import crontab # Set the default Django settings module for the 'celery' program. os.environ.setdefault("DJANGO_SETTINGS_MODULE", "databus.settings") @@ -26,6 +39,7 @@ @app.task(bind=True, ignore_result=True) def debug_task(self): + """Print the current task's request context; used to sanity-check worker connectivity.""" print(f"Celery request: {self.request!r}") @@ -42,12 +56,26 @@ def debug_task(self): "task": "schedule_engine.tasks.build_trip_updates", "schedule": timedelta(seconds=15), }, - "build-alerts-every-10s": { - "task": "schedule_engine.tasks.build_alerts", - "schedule": timedelta(seconds=10), - }, "scan-stale-runs-every-30s": { "task": "realtime_engine.tasks.scan_stale_runs", "schedule": timedelta(seconds=30), }, + "fetch-positions": { + "task": "realtime_engine.tasks.fetch_positions", + "schedule": timedelta(seconds=10), + # A task that couldn't even start within its own 10s cycle is stale + # by the time a worker slot frees up -- revoke it instead of letting + # queued fetch_positions runs pile up behind a slow/unreachable + # source (see fetch_positions' soft_time_limit for the in-flight + # bound on runs that DO start). + "options": {"expires": 10}, + }, + "build-schedule-daily": { + "task": "schedule_engine.tasks.build_schedule", + "schedule": timedelta(days=1), + }, + "fetch-schedule-hourly-at-30": { + "task": "schedule_engine.tasks.fetch_schedule", + "schedule": crontab(minute=30), + }, } diff --git a/backend/databus/redis_client.py b/backend/databus/redis_client.py new file mode 100644 index 0000000..68c4c5e --- /dev/null +++ b/backend/databus/redis_client.py @@ -0,0 +1,30 @@ +"""Shared Redis client factory. + +Every Redis client in this codebase is built from the same three environment +variables (``REDIS_HOST``, ``REDIS_PORT``, ``REDIS_PASSWORD``) so that a +single place honors ``REDIS_PASSWORD`` — required by ``compose.prod.yml``, +which starts the ``state`` service with ``--requirepass ${REDIS_PASSWORD}``. + +Deliberately dependency-light: only ``os.getenv``, no Django imports, so +non-Django contexts (standalone scripts, management commands run outside the +app) can import this module too. +""" + +import os + +import redis + + +def create_redis_client(db: int = 0, decode_responses: bool = True) -> redis.Redis: + """Build a Redis client from REDIS_HOST/REDIS_PORT/REDIS_PASSWORD env vars. + + ``REDIS_PASSWORD`` is treated as unset when empty, so dev environments + without Redis auth keep working unauthenticated. + """ + return redis.Redis( + host=os.getenv("REDIS_HOST", "state"), + port=int(os.getenv("REDIS_PORT", "6379")), + db=db, + password=os.getenv("REDIS_PASSWORD") or None, + decode_responses=decode_responses, + ) diff --git a/backend/databus/settings.py b/backend/databus/settings.py index 1f43616..39ba373 100644 --- a/backend/databus/settings.py +++ b/backend/databus/settings.py @@ -11,6 +11,7 @@ """ from pathlib import Path +from urllib.parse import quote from decouple import config, Csv import platform import os @@ -35,6 +36,7 @@ INSTALLED_APPS = [ "gtfs", + "corsheaders", "feed.apps.FeedConfig", "schedule_engine.apps.ScheduleEngineConfig", "realtime_engine.apps.RealtimeEngineConfig", @@ -61,6 +63,7 @@ MIDDLEWARE = [ "django.middleware.security.SecurityMiddleware", + "corsheaders.middleware.CorsMiddleware", "django.contrib.sessions.middleware.SessionMiddleware", "django.middleware.common.CommonMiddleware", "django.middleware.csrf.CsrfViewMiddleware", @@ -133,6 +136,12 @@ REDIS_HOST = config("REDIS_HOST") REDIS_PORT = config("REDIS_PORT") +REDIS_PASSWORD = config("REDIS_PASSWORD", default="") + +# Browser origins permitted to call the API from separate frontend dev servers. +CORS_ALLOWED_ORIGINS = config( + "CORS_ALLOWED_ORIGINS", cast=Csv(), default="http://localhost:5173" +) # RabbitMQ settings @@ -167,11 +176,17 @@ # Channels settings +_CHANNEL_LAYER_HOSTS: list[str | tuple[str, str]] = ( + [f"redis://:{quote(REDIS_PASSWORD, safe='')}@{REDIS_HOST}:{REDIS_PORT}/0"] + if REDIS_PASSWORD + else [(REDIS_HOST, REDIS_PORT)] +) + CHANNEL_LAYERS = { "default": { "BACKEND": "channels_redis.core.RedisChannelLayer", "CONFIG": { - "hosts": [(REDIS_HOST, REDIS_PORT)], + "hosts": _CHANNEL_LAYER_HOSTS, }, }, } diff --git a/backend/databus/urls.py b/backend/databus/urls.py index b62a65d..c1c26fa 100644 --- a/backend/databus/urls.py +++ b/backend/databus/urls.py @@ -16,12 +16,14 @@ """ from django.contrib import admin -from django.urls import path, include +from django.urls import URLPattern, URLResolver, path, include from django.conf import settings from django.conf.urls.static import static import os -urlpatterns = [ +# static() below returns list[URLPattern], while the path(..., include(...)) entries +# above are list[URLResolver] -- the explicit union lets both be appended in place. +urlpatterns: list[URLPattern | URLResolver] = [ path("admin/", admin.site.urls), path("", include("website.urls")), path("api/", include("api.urls")), diff --git a/backend/docker-entrypoint.sh b/backend/docker-entrypoint.sh index fb5f203..9302c75 100755 --- a/backend/docker-entrypoint.sh +++ b/backend/docker-entrypoint.sh @@ -196,7 +196,7 @@ wait_for_database() { run_makemigrations() { if is_true "${DEBUG:-False}"; then - APPS_TO_MIGRATE=("feed" "schedule_engine" "realtime_engine") + APPS_TO_MIGRATE=("feed" "schedule_engine" "realtime_engine" "operations") log "Creating migrations for: ${APPS_TO_MIGRATE[*]}" uv run python manage.py makemigrations "${APPS_TO_MIGRATE[@]}" || warn "No changes detected for migrations" else @@ -237,6 +237,12 @@ load_initial_data() { if [ -f feed/fixtures/gtfs.json ]; then log "Loading initial data fixture gtfs.json" uv run python manage.py loaddata gtfs.json || warn "Initial data load failed" + if [ -f feed/files/gtfs.zip ]; then + log "GTFS Schedule zip already present; skipping export (daily task or 'manage.py export_gtfs' will refresh it)" + else + log "Exporting GTFS Schedule zip" + uv run python manage.py export_gtfs || warn "GTFS Schedule zip export skipped" + fi else log "No optional initial data fixture gtfs.json present" fi diff --git a/backend/eta_models/README.md b/backend/eta_models/README.md new file mode 100644 index 0000000..f3c2aad --- /dev/null +++ b/backend/eta_models/README.md @@ -0,0 +1,78 @@ +# ETA Models · committed baseline model registry + +- **Purpose**: the committed, on-disk model registry consumed by the ETA estimator + (`gtfs-eta`, the sibling `simovilab/gtfs-eta` repo, vendored via `uv` editable install — see + `backend/pyproject.toml`). Ships one baseline model so a fresh checkout has a working estimator + without training anything. +- **Contents**: + - `registry.json` — the registry index: one entry per model key, with **relative** paths + - `polyreg_distance_global_baseline_v0.pkl` — the fitted model artifact + - `polyreg_distance_global_baseline_v0_meta.json` — its metadata (metrics, training params) + +## Registry format + +`registry.json` maps a model key to its metadata: + +```json +{ + "polyreg_distance_global_baseline_v0": { + "model_path": "polyreg_distance_global_baseline_v0.pkl", + "meta_path": "polyreg_distance_global_baseline_v0_meta.json", + "saved_at": "2026-08-19T00:41:44.406894", + "model_type": "polyreg_distance", + "route_id": null, + "dataset": "synthetic_constant_speed" + } +} +``` + +`model_path`/`meta_path` are stored **relative to the registry directory** — `gtfs-eta`'s +`ModelRegistry` joins them onto `base_dir` when loading, and falls back to matching by basename if +a stored path doesn't resolve directly, so the registry directory can be relocated wholesale +without editing `registry.json`. `route_id: null` marks a model as the **global** fallback (as +opposed to route-specific). + +The shipped model is a synthetic baseline: `PolyRegDistanceModel(degree=1, alpha=1.0, +route_specific=False)` fit on 1000 synthetic constant-speed samples (~4.5 m/s, an urban bus +average) — not trained on real telemetry. It exists so `estimate_stop_times` always has *some* +model to fall back to. + +## Seeding + +This directory is seeded (and can be re-seeded) by the sibling `gtfs-eta` repo's script: + +``` +export MODEL_REGISTRY_DIR=backend/eta_models +python -m gtfs_eta.seed_baseline_model +``` + +(`gtfs-eta/gtfs_eta/seed_baseline_model.py`) — fits the model above and calls +`registry.save_model(MODEL_KEY, model, metadata, overwrite=True)`, which writes the `.pkl` + +`_meta.json` pair and updates `registry.json`. + +## Consumer: the lazy-import seam + +`runs/domain/progression/stop_times.py` is the only consumer in this codebase. It imports +`gtfs_eta.feature_engineering.spatial.ShapePolyline` and +`gtfs_eta.eta_service.estimator` **lazily**, inside `produce_stop_times`, specifically to keep +Django startup clean when the model registry / `gtfs-eta` extras aren't needed +(`runs/domain/progression/stop_times.py:182-193`). It's called by `realtime_engine/tasks.py` after +every successful position write, populating `run::stop_time_updates` in Redis for the +GTFS-RT builder. + +## Configuration + +- `MODEL_REGISTRY_DIR` — directory the registry loads from, read by `gtfs_eta`'s registry + singleton itself (`os.getenv("MODEL_REGISTRY_DIR")`, falling back to `gtfs_eta`'s own config + default) — not by Django settings. Point it at this directory (`backend/eta_models`) to use the + committed baseline. Not currently set in `compose.dev.yml`; must be set explicitly wherever the + worker that calls `produce_stop_times` runs. +- `ETA_MAX_STOPS` (default `3`) and `ETA_DEFAULT_UNCERTAINTY_S` (default `120`) — read directly by + `runs/domain/progression/stop_times.py`, not by this directory, but they shape how the models + here get used. + +## Tests + +No tests live in this directory (it is data, not code). The consumer seam is covered by +`runs/domain/progression/tests/test_stop_times_producer.py`, which points `MODEL_REGISTRY_DIR` at +a temp directory rather than this one. diff --git a/backend/eta_models/polyreg_distance_global_baseline_v0.pkl b/backend/eta_models/polyreg_distance_global_baseline_v0.pkl new file mode 100644 index 0000000..0d51760 Binary files /dev/null and b/backend/eta_models/polyreg_distance_global_baseline_v0.pkl differ diff --git a/backend/eta_models/polyreg_distance_global_baseline_v0_meta.json b/backend/eta_models/polyreg_distance_global_baseline_v0_meta.json new file mode 100644 index 0000000..1af93f2 --- /dev/null +++ b/backend/eta_models/polyreg_distance_global_baseline_v0_meta.json @@ -0,0 +1,16 @@ +{ + "model_type": "polyreg_distance", + "route_id": null, + "route_specific": false, + "degree": 1, + "alpha": 1.0, + "dataset": "synthetic_constant_speed", + "n_samples": 1000, + "metrics": { + "test_mae_seconds": 30.0, + "test_mae_minutes": 0.5 + }, + "model_key": "polyreg_distance_global_baseline_v0", + "saved_at": "2026-08-19T00:41:44.406894", + "model_path": "polyreg_distance_global_baseline_v0.pkl" +} \ No newline at end of file diff --git a/backend/eta_models/registry.json b/backend/eta_models/registry.json new file mode 100644 index 0000000..d156542 --- /dev/null +++ b/backend/eta_models/registry.json @@ -0,0 +1,10 @@ +{ + "polyreg_distance_global_baseline_v0": { + "model_path": "polyreg_distance_global_baseline_v0.pkl", + "meta_path": "polyreg_distance_global_baseline_v0_meta.json", + "saved_at": "2026-08-19T00:41:44.406894", + "model_type": "polyreg_distance", + "route_id": null, + "dataset": "synthetic_constant_speed" + } +} \ No newline at end of file diff --git a/backend/feed/README.md b/backend/feed/README.md new file mode 100644 index 0000000..5be69e0 --- /dev/null +++ b/backend/feed/README.md @@ -0,0 +1,65 @@ +# Feed · GTFS Schedule domain + published feed files + +- **Purpose**: owns the GTFS Schedule domain models, feed versioning (`FeedPublisher`/`Feed`), the + Schedule zip exporter, and the HTTP endpoints that serve published GTFS Schedule and GTFS + Realtime files from disk. Not to be confused with `schedule_engine`, which _builds_ the GTFS-RT + protobufs consumed here. +- **Key modules**: + - `models.py` — `FeedPublisher`, `Feed`, and one concrete model per GTFS Schedule table + - `schedule/exporter.py` — `build_gtfs_zip` / `publish_gtfs_zip` + - `management/commands/export_gtfs.py` — `manage.py export_gtfs` + - `views.py` / `urls.py` — file-serving endpoints + +## Domain models + +Every GTFS Schedule table (`Agency`, `Stop`, `Route`, `Calendar`, `CalendarDate`, `Shape`, `Trip`, +`StopTime`, `FareAttribute`, `FareRule`, `FeedInfo`) subclasses an abstract `Base*` model imported +from the `gtfs-django` workspace package (`feed/models.py:10-22`), then adds a `feed` FK, a +per-feed uniqueness constraint, and (for most) a `linked_*` FK resolved on `save()` for fast joins +(e.g. `Trip.linked_route`, `StopTime.linked_trip`/`linked_stop`). `GeoShape`, `RouteStop`, +`TripDuration`, and `TripTime` are app-specific auxiliary models (not from `gtfs-django`) used by +the registration-UI lookups in `api`. `FeedMessage`/`TripUpdate`/`StopTimeUpdate`/`VehiclePosition` +model the normalized GTFS-RT entities for persisted blobs; `Alert` is a placeholder (TODO in +source, not fed by any current pipeline). + +`FeedPublisher` is the org that supplies a feed (may serve multiple agencies); `Feed` is one +retrieved version, marked `is_current=True` to select the active feed. `is_current` is read +directly by `api`'s `WhichShapesView`/`FindTripsView` and by the exporter — there is no automatic +supersession logic in this app; whichever `Feed` is flagged is authoritative. + +## Schedule exporter + +`feed/schedule/exporter.py` reads the ORM for one `Feed` and serializes it into a GTFS-compliant +`.zip` in memory (`build_gtfs_zip`), excluding internal-only columns (`id`, `feed`, `geoshape`, +`stop_point`, `stop_heading`, `holiday_name`, any `linked_*`). `publish_gtfs_zip` writes it +atomically (`.tmp` + `Path.replace`) to `feed/files/gtfs.zip` by default. Invoked by +`manage.py export_gtfs` (requires a `Feed` with `is_current=True`) and by the daily +`build-schedule` Celery beat entry in `schedule_engine` (see `backend/databus/README.md`). + +## Data in / data out + +- **Reads**: PostgreSQL, via the models above (no Redis, no queues). +- **Serves** (via `feed/urls.py`, mounted at `/feed/`): + - `GET /feed/schedule/feed.zip` → `feed/files/gtfs.zip` (404 with a helpful message if not yet + exported) + - `GET /feed/realtime/vehicle_positions.json` / `.pb` → `feed/files/vehicle_positions.{json,pb}` + - `GET /feed/realtime/trip_updates.json` / `.pb` → `feed/files/trip_updates.{json,pb}` + - `GET /feed/` → status page (`feed/views.py:status`) + - These realtime files are written by `schedule_engine`, not by this app. + +## Configuration + +No app-specific env vars. + +## Tests + +``` +docker compose -f compose.dev.yml run --rm orchestrator uv run pytest feed/ -q +``` + +`make test` runs the full suite. + +## Docs + +- [Django Models](../../docs/content/data-model/django-models.md) +- [GTFS-RT publishing](../../docs/content/data-flow/gtfs-rt-publishing.md) diff --git a/backend/feed/admin.py b/backend/feed/admin.py index f15a86c..dc192c0 100644 --- a/backend/feed/admin.py +++ b/backend/feed/admin.py @@ -1,15 +1,43 @@ +"""Django admin registrations for the feed app's GTFS Schedule and Realtime models.""" + from django.contrib.gis import admin -from .models import * +from .models import ( + TransitSystem, + Agency, + Calendar, + CalendarDate, + FareAttribute, + FareRule, + Feed, + FeedInfo, + FeedMessage, + GeoShape, + FeedPublisher, + Route, + RouteStop, + Shape, + Stop, + StopTime, + StopTimeUpdate, + Trip, + TripDuration, + TripTime, + TripUpdate, + VehiclePosition, +) # Register your models here. class StopAdmin(admin.GISModelAdmin): + """Admin form for Stop that hides the raw lat/lon fields in favor of stop_point.""" + exclude = ["stop_lat", "stop_lon"] -admin.site.register(GTFSProvider) +admin.site.register(TransitSystem) +admin.site.register(FeedPublisher) admin.site.register(Feed) admin.site.register(Agency) admin.site.register(Stop, StopAdmin) diff --git a/backend/feed/apps.py b/backend/feed/apps.py index 8f0ead5..983ab94 100644 --- a/backend/feed/apps.py +++ b/backend/feed/apps.py @@ -1,5 +1,9 @@ +"""Django app config for the feed app.""" + from django.apps import AppConfig class FeedConfig(AppConfig): + """App config for the GTFS Schedule data app.""" + name = "feed" diff --git a/backend/feed/fixtures/create_fixture.py b/backend/feed/fixtures/create_fixture.py deleted file mode 100644 index 6666905..0000000 --- a/backend/feed/fixtures/create_fixture.py +++ /dev/null @@ -1,257 +0,0 @@ -import pandas as pd -import json -import sys -import os -import django - -# Set the DJANGO_SETTINGS_MODULE environment variable -os.environ.setdefault("DJANGO_SETTINGS_MODULE", "datahub.settings") - -# Add the project directory to the sys.path -sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "../../"))) - -# Setup Django -django.setup() - -from datetime import datetime -from django.db.models import ( - DateField, - IntegerField, - FloatField, - DecimalField, - ForeignKey, -) -from django.apps import apps -from feed.models import * - -# Initialize a dictionary to hold the model field mappings -model_field_mapping = {} - -# Get all models from the 'gtfs' app -gtfs_models = apps.get_app_config("gtfs").get_models() - -# Iterate over each model and retrieve its field names -for model in gtfs_models: - model_name = model._meta.model_name - field_names = [ - field.name - for field in model._meta.get_fields() - if field.concrete and not field.many_to_many and field.name != "id" - ] - model_field_mapping[model_name] = field_names - -# Print the model field mappings (used for debugging) -# print(model_field_mapping["agency"]) - -# Path to your Excel file -script_dir = os.path.dirname(os.path.abspath(__file__)) -excel_file_path = os.path.join(script_dir, "UCR_bus_GTFS_v2024_2.xlsx") - -# Mapping of Excel tab names to Django model names and their fields in ../../models.py -# The mapping is: 'excel_tab': (app_name.model_name, model_field_mapping["model_name"]) -tab_to_model_mapping = { - "agency": ("gtfs.agency", model_field_mapping["agency"]), - "routes": ("gtfs.route", model_field_mapping["route"]), - "calendar": ("gtfs.calendar", model_field_mapping["calendar"]), - "calendar_dates": ("gtfs.calendardate", model_field_mapping["calendardate"]), - "stops": ("gtfs.stop", model_field_mapping["stop"]), - "stop_times": ("gtfs.stoptime", model_field_mapping["stoptime"]), - "fare_attributes": ("gtfs.fareattribute", model_field_mapping["fareattribute"]), - "fare_rules": ("gtfs.farerule", model_field_mapping["farerule"]), - "shapes": ("gtfs.shape", model_field_mapping["shape"]), - "trips": ("gtfs.trip", model_field_mapping["trip"]), - "GEOSHAPES": ("gtfs.geoshape", model_field_mapping["geoshape"]), -} - - -# Read the Excel file -xls = pd.ExcelFile(excel_file_path) - -# Maximum number of rows to process from each sheet -# Set to None to process all rows (used for debugging) -max_rows_per_sheet = "" - -# Initialize an empty list for fixtures -fixtures = [] - -# Initialize a counter for primary keys -# pk_counter = 2 # Start at 2 to avoid conflicts with the existing fixtures - -# Process each sheet in the Excel file -for sheet_name in xls.sheet_names: - pk_counter = 1 # Start at 2 to avoid conflicts with the existing fixtures - df = pd.read_excel(xls, sheet_name) - - # Limit the number of rows if max_rows_per_sheet is set - if isinstance(max_rows_per_sheet, (int)) and max_rows_per_sheet != 0: - df = df.head(max_rows_per_sheet) - - model_info = tab_to_model_mapping.get(sheet_name) - - if model_info: - model_name, model_fields = model_info - custom_model_name = model_name.split(".")[1] - model_class = apps.get_model(app_label="gtfs", model_name=custom_model_name) - - # Print model fields for debugging - print(f"Model fields for {model_name}: {model_fields}") - - for index, row in df.iterrows(): - fields_data = {} - # Managing some field format exeptions - for field in model_fields: - # Set the field type - field_type = model_class._meta.get_field(field) - field_value = row.get(field, None) - - # Convert NaN to None - if pd.isna(field_value) or field_value == "": - field_value = None - - if isinstance(field_type, DateField): - # Convert the string to a date object - field_value = ( - datetime.strptime(str(field_value), "%Y%m%d").date().isoformat() - if field_value or field_value != "" - else None - ) - fields_data[field] = field_value - elif field_type.get_internal_type() == "PointField": - # Convert the string to a Point object - if field_value or field_value != "": - # point_str = field_value.split('POINT (')[1].strip(')') - # longitude, latitude = map(float, point_str.split()) - # fields_data[field] = (longitude,latitude) - fields_data[field] = field_value - else: - fields_data[field] = None - elif field_type.get_internal_type() == "IntegerField": - # Convert the string to an integer - fields_data[field] = ( - int(field_value) if field_value is not None else None - ) - elif field_type.get_internal_type() == "FloatField": - # Convert the string to a float - fields_data[field] = float(field_value) if field_value else None - elif field_type.get_internal_type() == "CharField": - # Convert the string to a char - fields_data[field] = str(field_value) if field_value else None - elif field_type.get_internal_type() == "TextField": - # Convert the string to a text - fields_data[field] = str(field_value) if field_value else None - elif field_type.get_internal_type() == "TimeField": - # Convert the string to a time object - if field_value: - try: - fields_data[field] = ( - datetime.strptime(str(field_value), "%H:%M:%S") - .time() - .isoformat() - ) - except ValueError: - fields_data[field] = ( - datetime.strptime(str(field_value), "%H:%M:%S.%f") - .time() - .isoformat() - ) - else: - fields_data[field] = None - elif isinstance(field_type, ForeignKey): - # Handle ForeignKey fields - related_model_name = field_type.related_model._meta.model_name - related_pk = row.get(f"{field}_id", None) - fields_data[field] = ( - related_pk if related_pk else 1 - ) # Default to 1 if no related_pk - # elif field_type.get_internal_type() == "ForeignKey": - # Get the related model name - # related_model_name = field_type.related_model._meta.model_name - # Get the related model's primary key - # related_pk = row.get(f"{field}_id", None) - # Set the field value to the related model's primary key - # fields_data[field] = related_pk - else: - # Set the field value to the row's value - fields_data[field] = field_value - - # Add a fixed field 'feed' with a value of "1" for 'gtfs.stop' and 'gtfs.route' - if "feed" in model_fields: - fields_data["feed"] = "1" - if "pickup_type" in model_fields: - fields_data["pickup_type"] = 0 - if "drop_off_type" in model_fields: - fields_data["drop_off_type"] = 0 - - # Assign geoshape based on shape_id - if "geoshape" in model_fields and "shape_id" in row: - shape_id = row["shape_id"] - if shape_id == "desde_educacion_sin_milla": - fields_data["geoshape"] = 1 - elif shape_id == "desde_educacion_con_milla": - fields_data["geoshape"] = 2 - elif shape_id == "desde_artes_sin_milla": - fields_data["geoshape"] = 3 - elif shape_id == "desde_artes_con_milla": - fields_data["geoshape"] = 4 - elif shape_id == "hacia_artes": - fields_data["geoshape"] = 5 - elif shape_id == "hacia_educacion": - fields_data["geoshape"] = 6 - - # if "parent_station" in model_fields and fields_data.get("parent_station") is None: - # fields_data["parent_station"] = "Estacion Principal" # or some default value - # if "stop_timezone" in model_fields and fields_data.get("stop_timezone") is None: - # fields_data["stop_timezone"] = "" # or some default value - - # Ensure all other fields are not null - for key in fields_data: - if ( - fields_data[key] is None - and not isinstance(model_class._meta.get_field(key), IntegerField) - and not isinstance(model_class._meta.get_field(key), FloatField) - and not isinstance(model_class._meta.get_field(key), DecimalField) - ): - fields_data[key] = "" - - fixture = {"model": model_name, "pk": pk_counter, "fields": fields_data} - fixtures.append(fixture) - pk_counter += 1 # Increment the pk counter for the next fixture - -# Additional data to be added. These are not part of the Excel file but needed for other models to work -additional_data = [ - { - "model": "gtfs.gtfsprovider", - "pk": 1, - "fields": { - "code": "bUCR", - "name": "bUCR", - "description": "Bus de la UCR", - "website": "https://bucr.digital", - "schedule_url": None, - "trip_updates_url": None, - "vehicle_positions_url": None, - "service_alerts_url": None, - "timezone": "America/costa_rica", - "is_active": True, - }, - }, - { - "model": "gtfs.feed", - "pk": 1, - "fields": { - "provider": 1, - "http_etag": None, - "http_last_modified": "2024-07-11T00:00:00Z", - "is_current": True, - "retrieved_at": "2024-07-11T04:28:41.332Z", - }, - }, -] - -# Append the additional data to the fixtures list -fixtures.extend(additional_data) - -# Write fixtures to a file -json_file_path = os.path.join(script_dir, "gtfs.json") -with open(json_file_path, "w") as f: - json.dump(fixtures, f, ensure_ascii=False, indent=4) diff --git a/backend/feed/fixtures/gtfs.json b/backend/feed/fixtures/gtfs.json index d1248cf..0171472 100644 --- a/backend/feed/fixtures/gtfs.json +++ b/backend/feed/fixtures/gtfs.json @@ -1,32749 +1,32749 @@ [ - { - "model": "feed.agency", - "pk": 1, - "fields": { - "feed": "1", - "agency_id": "bUCR", - "agency_name": "Buses de la Universidad de Costa Rica", - "agency_url": "https://bus.ucr.ac.cr/", - "agency_timezone": "America/Costa_Rica", - "agency_lang": "es", - "agency_phone": "25112919", - "agency_fare_url": "https://bus.ucr.ac.cr/#tarifas", - "agency_email": "bus@ucr.ac.cr" - } - }, - { - "model": "feed.route", - "pk": 1, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "agency_id": "bUCR", - "route_short_name": "bUCR L1", - "route_long_name": "Bus interno UCR sin milla", - "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, y no incluye la vuelta por la milla universitaria.", - "route_type": 3, - "route_url": "https://bus.ucr.ac.cr/#L1", - "route_color": "00C0F3", - "route_text_color": "FFFFFF", - "route_sort_order": null - } - }, - { - "model": "feed.route", - "pk": 2, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "agency_id": "bUCR", - "route_short_name": "bUCR L2", - "route_long_name": "Bus interno UCR con milla", - "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, e incluye la vuelta por la milla universitaria.", - "route_type": 3, - "route_url": "https://bus.ucr.ac.cr/#L2", - "route_color": "005DA4", - "route_text_color": "FFFFFF", - "route_sort_order": null - } - }, - { - "model": "feed.stop", - "pk": 1, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_01", - "stop_code": "", - "stop_name": "Facultad de Educación", - "stop_desc": "Frente al jardín de la Facultad de Educación (FE)", - "stop_lat": 9.935610136323218, - "stop_lon": -84.04899295728595, - "stop_point": "SRID=4326;POINT (-84.04899295728595 9.935610136323218)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 2, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_02", - "stop_code": "", - "stop_name": "Escuela de Artes Plásticas", - "stop_desc": "Nuevo edificio de la Escuela de Artes Plásticas (EAP)", - "stop_lat": 9.935501598287884, - "stop_lon": -84.05217559901489, - "stop_point": "SRID=4326;POINT (-84.05217559901489 9.935501598287884)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 3, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_03", - "stop_code": "", - "stop_name": "Biblioteca de Ciencias de la Salud", - "stop_desc": "Frente al antiguo edificio de la Facultad de Odontología (FOd), diagonal al parqueo de la Biblioteca de Ciencias de la Salud", - "stop_lat": 9.93860832346218, - "stop_lon": -84.0517499001992, - "stop_point": "SRID=4326;POINT (-84.0517499001992 9.93860832346218)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 4, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_04", - "stop_code": "", - "stop_name": "Facultad de Microbiología", - "stop_desc": "Esquina noreste del parqueo de las Escuelas de Artes Musicales (EAM), Química (EQ) y Biología (EB) y la Facultad de Microbiología (FMic)", - "stop_lat": 9.93832361909286, - "stop_lon": -84.04876049840074, - "stop_point": "SRID=4326;POINT (-84.04876049840074 9.93832361909286 )", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 5, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_05", - "stop_code": "", - "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME)", - "stop_lat": 9.935903915437937, - "stop_lon": -84.04537504744147, - "stop_point": "SRID=4326;POINT (-84.04537504744147 9.935903915437937)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_LA", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 6, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_06", - "stop_code": "", - "stop_name": "Facultad de Ingeniería", - "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI)", - "stop_lat": 9.937467311441509, - "stop_lon": -84.04467644300775, - "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_FI", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 7, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_07", - "stop_code": "", - "stop_name": "Facultad de Ciencias Sociales", - "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", - "stop_lat": 9.938029607676915, - "stop_lon": -84.04237892478906, - "stop_point": "SRID=4326;POINT (-84.04237892478906 9.938029607676915)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_CS", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 8, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_08", - "stop_code": "", - "stop_name": "Instituto de Investigación en Educación (INIE)", - "stop_desc": "Costado sur del edificio del Instituto de Investigación en Educación (INIE)", - "stop_lat": 9.939451647823136, - "stop_lon": -84.04307776266035, - "stop_point": "SRID=4326;POINT (-84.04307776266035 9.939451647823137)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 9, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_09", - "stop_code": "", - "stop_name": "Centro de Investigación en Cirugía y Cáncer (CICICA)", - "stop_desc": "Costado sur del edificio del Centro de Investigación en Cirugía y Cáncer (CICICA)", - "stop_lat": 9.940155168862551, - "stop_lon": -84.04450675690296, - "stop_point": "SRID=4326;POINT (-84.04450675690296 9.940155168862551)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 10, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_10", - "stop_code": "", - "stop_name": "Oficina de Bienestar y Salud (OBS)", - "stop_desc": "Entre el nuevo edificio de la Oficina de Bienestar y Salud (OBS) y el Estadio Ecológico", - "stop_lat": 9.943761220391433, - "stop_lon": -84.04468346245407, - "stop_point": "SRID=4326;POINT (-84.04468346245408 9.943761220391434)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 11, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_11", - "stop_code": "", - "stop_name": "Facultad de Odontología", - "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", - "stop_lat": 9.946441050827923, - "stop_lon": -84.0451915613564, - "stop_point": "SRID=4326;POINT (-84.0451915613564 9.946441050827925)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 12, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_01", - "stop_code": "", - "stop_name": "Facultad de Odontología", - "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", - "stop_lat": 9.946529500847424, - "stop_lon": -84.04535458313804, - "stop_point": "SRID=4326;POINT (-84.04535458313804 9.946529500847424)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 13, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_02", - "stop_code": "", - "stop_name": "Escuela de Educación Física y Deportes (EDUFI)", - "stop_desc": "Costado este de las canchas multiuso y de la Escuela de Educación Física y Deportes (EDUFI)", - "stop_lat": 9.943381444081362, - "stop_lon": -84.04495180739714, - "stop_point": "SRID=4326;POINT (-84.04495180739714 9.943381444081362)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 14, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_03", - "stop_code": "", - "stop_name": "Escuela de Nutrición", - "stop_desc": "Esquina noreste del edificio de la Escuela de Nutrición (ENu)", - "stop_lat": 9.939134591559856, - "stop_lon": -84.04468654565294, - "stop_point": "SRID=4326;POINT (-84.04468654565294 9.939134591559855)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 15, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_04", - "stop_code": "", - "stop_name": "Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", - "stop_desc": "Entre el edificio de parqueos y el Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", - "stop_lat": 9.938980381389706, - "stop_lon": -84.0436758508172, - "stop_point": "SRID=4326;POINT (-84.0436758508172 9.938980381389706)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 16, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_05", - "stop_code": "", - "stop_name": "Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", - "stop_desc": "Frente al edificio del Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", - "stop_lat": 9.939472792042086, - "stop_lon": -84.042189216776, - "stop_point": "SRID=4326;POINT (-84.042189216776 9.939472792042086)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 17, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_06", - "stop_code": "", - "stop_name": "Facultad de Ciencias Sociales", - "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", - "stop_lat": 9.93813052902614, - "stop_lon": -84.04229551510366, - "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_CS", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 18, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_07", - "stop_code": "", - "stop_name": "Facultad de Ingeniería", - "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI), al otro lado de la calle", - "stop_lat": 9.937468669419962, - "stop_lon": -84.04501822768842, - "stop_point": "SRID=4326;POINT (-84.04501822768842 9.937468669419962)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_FI", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 19, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_08", - "stop_code": "", - "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME), al otro lado de la calle", - "stop_lat": 9.93589305371453, - "stop_lon": -84.04546950911886, - "stop_point": "SRID=4326;POINT (-84.04546950911886 9.93589305371453)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_LA", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 20, - "fields": { - "feed": "1", - "stop_id": "bUCR_FI", - "stop_code": "", - "stop_name": "Facultad de Ingeniería", - "stop_desc": "En las inmediaciones del edificio de la Facultad de Ingeniería", - "stop_lat": 9.937467311441509, - "stop_lon": -84.04467644300775, - "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", - "zone_id": "", - "stop_url": "", - "location_type": 1, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 21, - "fields": { - "feed": "1", - "stop_id": "bUCR_CS", - "stop_code": "", - "stop_name": "Facultad de Ciencias Sociales", - "stop_desc": "En las inmediaciones del edificio de la Facultad de Ciencias Sociales", - "stop_lat": 9.93813052902614, - "stop_lon": -84.04229551510366, - "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", - "zone_id": "", - "stop_url": "", - "location_type": 1, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.stop", - "pk": 22, - "fields": { - "feed": "1", - "stop_id": "bUCR_LA", - "stop_code": "", - "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_desc": "En las inmediaciones del Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_lat": 9.935785141707278, - "stop_lon": -84.04544067497328, - "stop_point": "SRID=4326;POINT (-84.04544067497328 9.935785141707278)", - "zone_id": "", - "stop_url": "", - "location_type": 1, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "feed.trip", - "pk": 1, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 2, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 3, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 4, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 5, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 6, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 7, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 8, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 9, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 10, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 11, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 12, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 13, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 14, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 15, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 16, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 17, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 18, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 19, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 20, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 21, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 22, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 23, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 24, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 25, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 26, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 27, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 28, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 29, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 30, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 31, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 32, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 33, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 34, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 35, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 36, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 37, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 38, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 39, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 40, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 41, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 42, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 43, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 44, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 45, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 46, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 47, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 48, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 49, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 50, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 51, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 52, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 53, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 54, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 55, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 56, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 57, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 58, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 59, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 60, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 61, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 62, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 63, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 64, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 65, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 66, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_con_milla", - "geoshape": 4, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 67, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_con_milla", - "geoshape": 4, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 68, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_06:20", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 69, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_06:40", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 70, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_06:50", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 71, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_07:00", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 72, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_07:10", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 73, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_07:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 74, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_07:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 75, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_07:50", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 76, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_08:00", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 77, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_08:35", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 78, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_08:45", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 79, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_08:55", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 80, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_09:05", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 81, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_09:25", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 82, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_09:35", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 83, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_09:45", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 84, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_09:55", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 85, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_10:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 86, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_10:25", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 87, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_10:35", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 88, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_10:45", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 89, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_11:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 90, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_11:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 91, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_11:20", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 92, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_11:30", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 93, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_11:40", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 94, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_11:50", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 95, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_12:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 96, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_12:10", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 97, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_12:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 98, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_12:25", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 99, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_12:50", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 100, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_13:00", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 101, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_13:25", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 102, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_13:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 103, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_13:50", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 104, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_14:00", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 105, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_14:10", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 106, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_14:25", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 107, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_14:35", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 108, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_14:45", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 109, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_14:55", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 110, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_15:10", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 111, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_15:20", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 112, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_15:30", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 113, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_16:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 114, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_16:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 115, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_16:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 116, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_16:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 117, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_17:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 118, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_17:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 119, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_17:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 120, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_17:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 121, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_18:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 122, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_18:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 123, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_18:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 124, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_18:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 125, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_18:55", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 126, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_19:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 127, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_19:50", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 128, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_20:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 129, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_20:40", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.trip", - "pk": 130, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_21:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "feed.stoptime", - "pk": 1, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:10:00", - "departure_time": "06:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 2, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:18:28.582000", - "departure_time": "06:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 3, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:19:45.164000", - "departure_time": "06:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 4, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:21:14.182000", - "departure_time": "06:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 5, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:24:18.764000", - "departure_time": "06:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 6, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:25:23.564000", - "departure_time": "06:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 7, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:28:20.291000", - "departure_time": "06:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 8, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:30:34.145000", - "departure_time": "06:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 9, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:30:00", - "departure_time": "06:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 10, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:38:28.582000", - "departure_time": "06:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 11, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:39:45.164000", - "departure_time": "06:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 12, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:41:14.182000", - "departure_time": "06:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 13, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:44:18.764000", - "departure_time": "06:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 14, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:45:23.564000", - "departure_time": "06:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 15, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:48:20.291000", - "departure_time": "06:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 16, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:50:34.145000", - "departure_time": "06:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 17, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:00:00", - "departure_time": "07:00:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 18, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:08:28.582000", - "departure_time": "07:08:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 19, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:09:45.164000", - "departure_time": "07:09:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 20, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:11:14.182000", - "departure_time": "07:11:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 21, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:14:18.764000", - "departure_time": "07:14:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 22, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:15:23.564000", - "departure_time": "07:15:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 23, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:18:20.291000", - "departure_time": "07:18:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 24, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:20:34.145000", - "departure_time": "07:20:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 25, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:20:00", - "departure_time": "07:20:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 26, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:28:28.582000", - "departure_time": "07:28:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 27, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:29:45.164000", - "departure_time": "07:29:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 28, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:31:14.182000", - "departure_time": "07:31:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 29, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:34:18.764000", - "departure_time": "07:34:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 30, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:35:23.564000", - "departure_time": "07:35:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 31, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:38:20.291000", - "departure_time": "07:38:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 32, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:40:34.145000", - "departure_time": "07:40:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 33, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "07:50:00", - "departure_time": "07:50:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 34, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "07:58:28.582000", - "departure_time": "07:58:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 35, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "07:59:45.164000", - "departure_time": "07:59:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 36, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:01:14.182000", - "departure_time": "08:01:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 37, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:04:18.764000", - "departure_time": "08:04:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 38, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:05:23.564000", - "departure_time": "08:05:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 39, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:08:20.291000", - "departure_time": "08:08:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 40, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:10:34.145000", - "departure_time": "08:10:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 41, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:10:00", - "departure_time": "08:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 42, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:18:28.582000", - "departure_time": "08:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 43, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:19:45.164000", - "departure_time": "08:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 44, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:21:14.182000", - "departure_time": "08:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 45, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:24:18.764000", - "departure_time": "08:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 46, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:25:23.564000", - "departure_time": "08:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 47, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:28:20.291000", - "departure_time": "08:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 48, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:30:34.145000", - "departure_time": "08:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 49, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "08:55:00", - "departure_time": "08:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 50, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:03:28.582000", - "departure_time": "09:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 51, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:04:45.164000", - "departure_time": "09:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 52, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:06:14.182000", - "departure_time": "09:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 53, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:09:18.764000", - "departure_time": "09:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 54, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:10:23.564000", - "departure_time": "09:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 55, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:13:20.291000", - "departure_time": "09:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 56, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:15:34.145000", - "departure_time": "09:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 57, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:15:00", - "departure_time": "09:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 58, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:23:28.582000", - "departure_time": "09:23:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 59, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:24:45.164000", - "departure_time": "09:24:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 60, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:26:14.182000", - "departure_time": "09:26:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 61, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:29:18.764000", - "departure_time": "09:29:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 62, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:30:23.564000", - "departure_time": "09:30:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 63, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:33:20.291000", - "departure_time": "09:33:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 64, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:35:34.145000", - "departure_time": "09:35:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 65, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:45:00", - "departure_time": "09:45:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 66, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:53:28.582000", - "departure_time": "09:53:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 67, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:54:45.164000", - "departure_time": "09:54:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 68, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:56:14.182000", - "departure_time": "09:56:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 69, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:59:18.764000", - "departure_time": "09:59:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 70, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "10:00:23.564000", - "departure_time": "10:00:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 71, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "10:03:20.291000", - "departure_time": "10:03:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 72, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "10:05:34.145000", - "departure_time": "10:05:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 73, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:05:00", - "departure_time": "10:05:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 74, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:13:28.582000", - "departure_time": "10:13:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 75, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:14:45.164000", - "departure_time": "10:14:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 76, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:16:14.182000", - "departure_time": "10:16:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 77, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:19:18.764000", - "departure_time": "10:19:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 78, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:20:23.564000", - "departure_time": "10:20:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 79, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:23:20.291000", - "departure_time": "10:23:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 80, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:25:34.145000", - "departure_time": "10:25:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 81, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:35:00", - "departure_time": "10:35:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 82, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:43:28.582000", - "departure_time": "10:43:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 83, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:44:45.164000", - "departure_time": "10:44:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 84, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:46:14.182000", - "departure_time": "10:46:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 85, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:49:18.764000", - "departure_time": "10:49:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 86, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:50:23.564000", - "departure_time": "10:50:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 87, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:53:20.291000", - "departure_time": "10:53:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 88, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:55:34.145000", - "departure_time": "10:55:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 89, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "10:55:00", - "departure_time": "10:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 90, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:03:28.582000", - "departure_time": "11:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 91, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:04:45.164000", - "departure_time": "11:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 92, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:06:14.182000", - "departure_time": "11:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 93, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:09:18.764000", - "departure_time": "11:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 94, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:10:23.564000", - "departure_time": "11:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 95, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:13:20.291000", - "departure_time": "11:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 96, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:15:34.145000", - "departure_time": "11:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 97, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:15:00", - "departure_time": "11:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 98, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:23:28.582000", - "departure_time": "11:23:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 99, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:24:45.164000", - "departure_time": "11:24:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 100, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:26:14.182000", - "departure_time": "11:26:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 101, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:29:18.764000", - "departure_time": "11:29:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 102, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:30:23.564000", - "departure_time": "11:30:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 103, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:33:20.291000", - "departure_time": "11:33:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 104, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:35:34.145000", - "departure_time": "11:35:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 105, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:25:00", - "departure_time": "11:25:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 106, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:33:28.582000", - "departure_time": "11:33:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 107, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:34:45.164000", - "departure_time": "11:34:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 108, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:36:14.182000", - "departure_time": "11:36:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 109, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:39:18.764000", - "departure_time": "11:39:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 110, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:40:23.564000", - "departure_time": "11:40:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 111, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:43:20.291000", - "departure_time": "11:43:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 112, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:45:34.145000", - "departure_time": "11:45:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 113, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:40:00", - "departure_time": "11:40:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 114, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:48:28.582000", - "departure_time": "11:48:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 115, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:49:45.164000", - "departure_time": "11:49:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 116, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:51:14.182000", - "departure_time": "11:51:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 117, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:54:18.764000", - "departure_time": "11:54:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 118, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:55:23.564000", - "departure_time": "11:55:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 119, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:58:20.291000", - "departure_time": "11:58:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 120, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "12:00:34.145000", - "departure_time": "12:00:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 121, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:00:00", - "departure_time": "12:00:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 122, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:08:28.582000", - "departure_time": "12:08:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 123, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:09:45.164000", - "departure_time": "12:09:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 124, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:11:14.182000", - "departure_time": "12:11:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 125, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:14:18.764000", - "departure_time": "12:14:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 126, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:15:23.564000", - "departure_time": "12:15:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 127, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:18:20.291000", - "departure_time": "12:18:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 128, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:20:34.145000", - "departure_time": "12:20:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 129, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:25:00", - "departure_time": "12:25:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 130, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:33:28.582000", - "departure_time": "12:33:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 131, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:34:45.164000", - "departure_time": "12:34:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 132, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:36:14.182000", - "departure_time": "12:36:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 133, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:39:18.764000", - "departure_time": "12:39:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 134, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:40:23.564000", - "departure_time": "12:40:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 135, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:43:20.291000", - "departure_time": "12:43:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 136, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:45:34.145000", - "departure_time": "12:45:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 137, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:35:00", - "departure_time": "12:35:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 138, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:43:28.582000", - "departure_time": "12:43:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 139, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:44:45.164000", - "departure_time": "12:44:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 140, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:46:14.182000", - "departure_time": "12:46:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 141, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:49:18.764000", - "departure_time": "12:49:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 142, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:50:23.564000", - "departure_time": "12:50:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 143, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:53:20.291000", - "departure_time": "12:53:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 144, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:55:34.145000", - "departure_time": "12:55:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 145, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:10:00", - "departure_time": "13:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 146, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:18:28.582000", - "departure_time": "13:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 147, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:19:45.164000", - "departure_time": "13:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 148, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:21:14.182000", - "departure_time": "13:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 149, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:24:18.764000", - "departure_time": "13:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 150, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:25:23.564000", - "departure_time": "13:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 151, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:28:20.291000", - "departure_time": "13:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 152, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:30:34.145000", - "departure_time": "13:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 153, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:45:00", - "departure_time": "13:45:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 154, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:53:28.582000", - "departure_time": "13:53:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 155, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:54:45.164000", - "departure_time": "13:54:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 156, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:56:14.182000", - "departure_time": "13:56:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 157, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:59:18.764000", - "departure_time": "13:59:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 158, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "14:00:23.564000", - "departure_time": "14:00:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 159, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "14:03:20.291000", - "departure_time": "14:03:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 160, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "14:05:34.145000", - "departure_time": "14:05:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 161, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:10:00", - "departure_time": "14:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 162, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:18:28.582000", - "departure_time": "14:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 163, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:19:45.164000", - "departure_time": "14:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 164, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:21:14.182000", - "departure_time": "14:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 165, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:24:18.764000", - "departure_time": "14:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 166, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:25:23.564000", - "departure_time": "14:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 167, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:28:20.291000", - "departure_time": "14:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 168, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:30:34.145000", - "departure_time": "14:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 169, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:30:00", - "departure_time": "14:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 170, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:38:28.582000", - "departure_time": "14:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 171, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:39:45.164000", - "departure_time": "14:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 172, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:41:14.182000", - "departure_time": "14:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 173, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:44:18.764000", - "departure_time": "14:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 174, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:45:23.564000", - "departure_time": "14:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 175, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:48:20.291000", - "departure_time": "14:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 176, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:50:34.145000", - "departure_time": "14:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 177, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "14:55:00", - "departure_time": "14:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 178, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:03:28.582000", - "departure_time": "15:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 179, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:04:45.164000", - "departure_time": "15:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 180, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:06:14.182000", - "departure_time": "15:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 181, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:09:18.764000", - "departure_time": "15:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 182, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:10:23.564000", - "departure_time": "15:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 183, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:13:20.291000", - "departure_time": "15:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 184, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:15:34.145000", - "departure_time": "15:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 185, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:15:00", - "departure_time": "15:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 186, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:23:28.582000", - "departure_time": "15:23:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 187, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:24:45.164000", - "departure_time": "15:24:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 188, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:26:14.182000", - "departure_time": "15:26:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 189, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:29:18.764000", - "departure_time": "15:29:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 190, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:30:23.564000", - "departure_time": "15:30:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 191, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:33:20.291000", - "departure_time": "15:33:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 192, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:35:34.145000", - "departure_time": "15:35:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 193, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "15:55:00", - "departure_time": "15:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 194, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:03:28.582000", - "departure_time": "16:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 195, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:04:45.164000", - "departure_time": "16:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 196, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:06:14.182000", - "departure_time": "16:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 197, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:09:18.764000", - "departure_time": "16:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 198, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:10:23.564000", - "departure_time": "16:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 199, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:13:20.291000", - "departure_time": "16:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 200, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:15:34.145000", - "departure_time": "16:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 201, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:30:00", - "departure_time": "16:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 202, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:38:28.582000", - "departure_time": "16:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 203, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:39:45.164000", - "departure_time": "16:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 204, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:41:14.182000", - "departure_time": "16:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 205, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:44:18.764000", - "departure_time": "16:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 206, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:45:23.564000", - "departure_time": "16:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 207, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:48:20.291000", - "departure_time": "16:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 208, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:50:34.145000", - "departure_time": "16:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 209, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "16:55:00", - "departure_time": "16:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 210, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:03:28.582000", - "departure_time": "17:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 211, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:04:45.164000", - "departure_time": "17:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 212, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:06:14.182000", - "departure_time": "17:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 213, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:09:18.764000", - "departure_time": "17:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 214, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:10:23.564000", - "departure_time": "17:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 215, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:13:20.291000", - "departure_time": "17:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 216, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:15:34.145000", - "departure_time": "17:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 217, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:30:00", - "departure_time": "17:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 218, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:38:28.582000", - "departure_time": "17:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 219, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:39:45.164000", - "departure_time": "17:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 220, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:41:14.182000", - "departure_time": "17:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 221, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:44:18.764000", - "departure_time": "17:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 222, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:45:23.564000", - "departure_time": "17:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 223, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:48:20.291000", - "departure_time": "17:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 224, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:50:34.145000", - "departure_time": "17:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 225, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "17:55:00", - "departure_time": "17:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 226, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:03:28.582000", - "departure_time": "18:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 227, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:04:45.164000", - "departure_time": "18:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 228, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:06:14.182000", - "departure_time": "18:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 229, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:09:18.764000", - "departure_time": "18:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 230, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:10:23.564000", - "departure_time": "18:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 231, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:13:20.291000", - "departure_time": "18:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 232, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:15:34.145000", - "departure_time": "18:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 233, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:25:00", - "departure_time": "18:25:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 234, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:33:28.582000", - "departure_time": "18:33:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 235, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:34:45.164000", - "departure_time": "18:34:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 236, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:36:14.182000", - "departure_time": "18:36:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 237, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:39:18.764000", - "departure_time": "18:39:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 238, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:40:23.564000", - "departure_time": "18:40:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 239, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:43:20.291000", - "departure_time": "18:43:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 240, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:45:34.145000", - "departure_time": "18:45:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 241, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "18:50:00", - "departure_time": "18:50:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 242, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "18:58:28.582000", - "departure_time": "18:58:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 243, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "18:59:45.164000", - "departure_time": "18:59:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 244, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:01:14.182000", - "departure_time": "19:01:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 245, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:04:18.764000", - "departure_time": "19:04:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 246, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:05:23.564000", - "departure_time": "19:05:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 247, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:08:20.291000", - "departure_time": "19:08:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 248, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:10:34.145000", - "departure_time": "19:10:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 249, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:15:00", - "departure_time": "19:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 250, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:19:22.473000", - "departure_time": "19:19:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 251, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:21:20.945000", - "departure_time": "19:21:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 252, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:26:19.418000", - "departure_time": "19:26:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 253, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:27:36.655000", - "departure_time": "19:27:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 254, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:29:13.200000", - "departure_time": "19:29:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 255, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:32:05.673000", - "departure_time": "19:32:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 256, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:33:10.473000", - "departure_time": "19:33:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 257, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:36:00.982000", - "departure_time": "19:36:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 258, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:38:21.055000", - "departure_time": "19:38:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 259, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:10:00", - "departure_time": "20:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 260, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:14:22.473000", - "departure_time": "20:14:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 261, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:16:20.945000", - "departure_time": "20:16:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 262, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:21:19.418000", - "departure_time": "20:21:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 263, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:22:36.655000", - "departure_time": "20:22:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 264, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:24:13.200000", - "departure_time": "20:24:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 265, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:27:05.673000", - "departure_time": "20:27:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 266, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:28:10.473000", - "departure_time": "20:28:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 267, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:31:00.982000", - "departure_time": "20:31:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 268, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:33:21.055000", - "departure_time": "20:33:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 269, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "20:50:00", - "departure_time": "20:50:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 270, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "20:54:22.473000", - "departure_time": "20:54:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 271, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "20:56:20.945000", - "departure_time": "20:56:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 272, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:01:19.418000", - "departure_time": "21:01:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 273, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:02:36.655000", - "departure_time": "21:02:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 274, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:04:13.200000", - "departure_time": "21:04:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 275, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:07:05.673000", - "departure_time": "21:07:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 276, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:08:10.473000", - "departure_time": "21:08:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 277, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:11:00.982000", - "departure_time": "21:11:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 278, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:13:21.055000", - "departure_time": "21:13:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 279, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:00:00", - "departure_time": "21:00:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 280, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:04:22.473000", - "departure_time": "21:04:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 281, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:06:20.945000", - "departure_time": "21:06:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 282, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:11:19.418000", - "departure_time": "21:11:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 283, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:12:36.655000", - "departure_time": "21:12:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 284, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:14:13.200000", - "departure_time": "21:14:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 285, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:17:05.673000", - "departure_time": "21:17:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 286, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:18:10.473000", - "departure_time": "21:18:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 287, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:21:00.982000", - "departure_time": "21:21:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 288, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:23:21.055000", - "departure_time": "21:23:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 289, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:35:00", - "departure_time": "21:35:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 290, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:39:22.473000", - "departure_time": "21:39:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 291, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:41:20.945000", - "departure_time": "21:41:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 292, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:46:19.418000", - "departure_time": "21:46:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 293, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:47:36.655000", - "departure_time": "21:47:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 294, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:49:13.200000", - "departure_time": "21:49:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 295, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:52:05.673000", - "departure_time": "21:52:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 296, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:53:10.473000", - "departure_time": "21:53:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 297, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:56:00.982000", - "departure_time": "21:56:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 298, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:58:21.055000", - "departure_time": "21:58:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 299, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:20:00", - "departure_time": "06:20:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 300, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:26:36", - "departure_time": "06:26:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 301, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:27:54.218000", - "departure_time": "06:27:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 302, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:29:32.400000", - "departure_time": "06:29:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 303, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:32:24.545000", - "departure_time": "06:32:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 304, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:33:29.345000", - "departure_time": "06:33:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 305, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:36:13.964000", - "departure_time": "06:36:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 306, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:38:40.255000", - "departure_time": "06:38:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 307, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:40:00", - "departure_time": "06:40:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 308, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:46:36", - "departure_time": "06:46:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 309, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:47:54.218000", - "departure_time": "06:47:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 310, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:49:32.400000", - "departure_time": "06:49:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 311, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:52:24.545000", - "departure_time": "06:52:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 312, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:53:29.345000", - "departure_time": "06:53:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 313, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:56:13.964000", - "departure_time": "06:56:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 314, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:58:40.255000", - "departure_time": "06:58:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 315, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:10:00", - "departure_time": "07:10:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 316, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:16:36", - "departure_time": "07:16:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 317, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:17:54.218000", - "departure_time": "07:17:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 318, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:19:32.400000", - "departure_time": "07:19:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 319, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:22:24.545000", - "departure_time": "07:22:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 320, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:23:29.345000", - "departure_time": "07:23:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 321, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:26:13.964000", - "departure_time": "07:26:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 322, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:28:40.255000", - "departure_time": "07:28:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 323, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:30:00", - "departure_time": "07:30:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 324, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:36:36", - "departure_time": "07:36:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 325, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:37:54.218000", - "departure_time": "07:37:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 326, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:39:32.400000", - "departure_time": "07:39:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 327, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:42:24.545000", - "departure_time": "07:42:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 328, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:43:29.345000", - "departure_time": "07:43:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 329, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:46:13.964000", - "departure_time": "07:46:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 330, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:48:40.255000", - "departure_time": "07:48:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 331, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:00:00", - "departure_time": "08:00:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 332, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:06:36", - "departure_time": "08:06:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 333, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:07:54.218000", - "departure_time": "08:07:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 334, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:09:32.400000", - "departure_time": "08:09:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 335, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:12:24.545000", - "departure_time": "08:12:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 336, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:13:29.345000", - "departure_time": "08:13:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 337, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:16:13.964000", - "departure_time": "08:16:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 338, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:18:40.255000", - "departure_time": "08:18:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 339, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:35:00", - "departure_time": "08:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 340, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:41:36", - "departure_time": "08:41:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 341, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:42:54.218000", - "departure_time": "08:42:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 342, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:44:32.400000", - "departure_time": "08:44:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 343, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:47:24.545000", - "departure_time": "08:47:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 344, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:48:29.345000", - "departure_time": "08:48:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 345, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:51:13.964000", - "departure_time": "08:51:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 346, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:53:40.255000", - "departure_time": "08:53:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 347, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:05:00", - "departure_time": "09:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 348, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:11:36", - "departure_time": "09:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 349, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:12:54.218000", - "departure_time": "09:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 350, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:14:32.400000", - "departure_time": "09:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 351, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:17:24.545000", - "departure_time": "09:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 352, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:18:29.345000", - "departure_time": "09:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 353, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:21:13.964000", - "departure_time": "09:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 354, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:23:40.255000", - "departure_time": "09:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 355, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:25:00", - "departure_time": "09:25:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 356, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:31:36", - "departure_time": "09:31:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 357, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:32:54.218000", - "departure_time": "09:32:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 358, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:34:32.400000", - "departure_time": "09:34:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 359, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:37:24.545000", - "departure_time": "09:37:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 360, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:38:29.345000", - "departure_time": "09:38:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 361, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:41:13.964000", - "departure_time": "09:41:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 362, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:43:40.255000", - "departure_time": "09:43:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 363, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "09:55:00", - "departure_time": "09:55:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 364, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:01:36", - "departure_time": "10:01:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 365, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:02:54.218000", - "departure_time": "10:02:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 366, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:04:32.400000", - "departure_time": "10:04:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 367, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:07:24.545000", - "departure_time": "10:07:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 368, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:08:29.345000", - "departure_time": "10:08:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 369, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:11:13.964000", - "departure_time": "10:11:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 370, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:13:40.255000", - "departure_time": "10:13:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 371, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:15:00", - "departure_time": "10:15:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 372, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:21:36", - "departure_time": "10:21:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 373, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:22:54.218000", - "departure_time": "10:22:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 374, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:24:32.400000", - "departure_time": "10:24:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 375, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:27:24.545000", - "departure_time": "10:27:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 376, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:28:29.345000", - "departure_time": "10:28:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 377, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:31:13.964000", - "departure_time": "10:31:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 378, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:33:40.255000", - "departure_time": "10:33:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 379, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:45:00", - "departure_time": "10:45:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 380, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:51:36", - "departure_time": "10:51:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 381, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:52:54.218000", - "departure_time": "10:52:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 382, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:54:32.400000", - "departure_time": "10:54:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 383, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:57:24.545000", - "departure_time": "10:57:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 384, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:58:29.345000", - "departure_time": "10:58:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 385, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "11:01:13.964000", - "departure_time": "11:01:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 386, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "11:03:40.255000", - "departure_time": "11:03:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 387, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:05:00", - "departure_time": "11:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 388, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:11:36", - "departure_time": "11:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 389, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:12:54.218000", - "departure_time": "11:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 390, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:14:32.400000", - "departure_time": "11:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 391, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:17:24.545000", - "departure_time": "11:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 392, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:18:29.345000", - "departure_time": "11:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 393, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:21:13.964000", - "departure_time": "11:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 394, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:23:40.255000", - "departure_time": "11:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 395, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:35:00", - "departure_time": "11:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 396, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:41:36", - "departure_time": "11:41:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 397, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:42:54.218000", - "departure_time": "11:42:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 398, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:44:32.400000", - "departure_time": "11:44:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 399, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:47:24.545000", - "departure_time": "11:47:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 400, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:48:29.345000", - "departure_time": "11:48:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 401, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:51:13.964000", - "departure_time": "11:51:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 402, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:53:40.255000", - "departure_time": "11:53:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 403, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:50:00", - "departure_time": "11:50:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 404, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:56:36", - "departure_time": "11:56:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 405, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:57:54.218000", - "departure_time": "11:57:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 406, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:59:32.400000", - "departure_time": "11:59:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 407, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:02:24.545000", - "departure_time": "12:02:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 408, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:03:29.345000", - "departure_time": "12:03:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 409, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:06:13.964000", - "departure_time": "12:06:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 410, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:08:40.255000", - "departure_time": "12:08:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 411, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:10:00", - "departure_time": "12:10:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 412, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:16:36", - "departure_time": "12:16:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 413, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:17:54.218000", - "departure_time": "12:17:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 414, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:19:32.400000", - "departure_time": "12:19:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 415, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:22:24.545000", - "departure_time": "12:22:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 416, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:23:29.345000", - "departure_time": "12:23:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 417, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:26:13.964000", - "departure_time": "12:26:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 418, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:28:40.255000", - "departure_time": "12:28:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 419, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:30:00", - "departure_time": "12:30:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 420, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:36:36", - "departure_time": "12:36:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 421, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:37:54.218000", - "departure_time": "12:37:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 422, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:39:32.400000", - "departure_time": "12:39:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 423, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:42:24.545000", - "departure_time": "12:42:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 424, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:43:29.345000", - "departure_time": "12:43:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 425, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:46:13.964000", - "departure_time": "12:46:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 426, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:48:40.255000", - "departure_time": "12:48:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 427, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:45:00", - "departure_time": "12:45:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 428, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:51:36", - "departure_time": "12:51:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 429, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:52:54.218000", - "departure_time": "12:52:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 430, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:54:32.400000", - "departure_time": "12:54:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 431, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:57:24.545000", - "departure_time": "12:57:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 432, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:58:29.345000", - "departure_time": "12:58:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 433, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "13:01:13.964000", - "departure_time": "13:01:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 434, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "13:03:40.255000", - "departure_time": "13:03:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 435, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:20:00", - "departure_time": "13:20:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 436, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:26:36", - "departure_time": "13:26:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 437, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:27:54.218000", - "departure_time": "13:27:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 438, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:29:32.400000", - "departure_time": "13:29:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 439, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:32:24.545000", - "departure_time": "13:32:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 440, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:33:29.345000", - "departure_time": "13:33:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 441, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:36:13.964000", - "departure_time": "13:36:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 442, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:38:40.255000", - "departure_time": "13:38:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 443, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:00:00", - "departure_time": "14:00:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 444, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:06:36", - "departure_time": "14:06:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 445, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:07:54.218000", - "departure_time": "14:07:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 446, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:09:32.400000", - "departure_time": "14:09:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 447, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:12:24.545000", - "departure_time": "14:12:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 448, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:13:29.345000", - "departure_time": "14:13:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 449, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:16:13.964000", - "departure_time": "14:16:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 450, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:18:40.255000", - "departure_time": "14:18:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 451, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:20:00", - "departure_time": "14:20:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 452, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:26:36", - "departure_time": "14:26:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 453, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:27:54.218000", - "departure_time": "14:27:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 454, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:29:32.400000", - "departure_time": "14:29:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 455, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:32:24.545000", - "departure_time": "14:32:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 456, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:33:29.345000", - "departure_time": "14:33:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 457, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:36:13.964000", - "departure_time": "14:36:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 458, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:38:40.255000", - "departure_time": "14:38:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 459, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:45:00", - "departure_time": "14:45:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 460, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:51:36", - "departure_time": "14:51:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 461, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:52:54.218000", - "departure_time": "14:52:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 462, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:54:32.400000", - "departure_time": "14:54:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 463, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:57:24.545000", - "departure_time": "14:57:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 464, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:58:29.345000", - "departure_time": "14:58:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 465, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "15:01:13.964000", - "departure_time": "15:01:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 466, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "15:03:40.255000", - "departure_time": "15:03:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 467, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:05:00", - "departure_time": "15:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 468, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:11:36", - "departure_time": "15:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 469, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:12:54.218000", - "departure_time": "15:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 470, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:14:32.400000", - "departure_time": "15:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 471, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:17:24.545000", - "departure_time": "15:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 472, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:18:29.345000", - "departure_time": "15:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 473, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:21:13.964000", - "departure_time": "15:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 474, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:23:40.255000", - "departure_time": "15:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 475, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:30:00", - "departure_time": "15:30:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 476, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:36:36", - "departure_time": "15:36:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 477, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:37:54.218000", - "departure_time": "15:37:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 478, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:39:32.400000", - "departure_time": "15:39:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 479, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:42:24.545000", - "departure_time": "15:42:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 480, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:43:29.345000", - "departure_time": "15:43:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 481, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:46:13.964000", - "departure_time": "15:46:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 482, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:48:40.255000", - "departure_time": "15:48:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 483, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:05:00", - "departure_time": "16:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 484, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:11:36", - "departure_time": "16:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 485, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:12:54.218000", - "departure_time": "16:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 486, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:14:32.400000", - "departure_time": "16:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 487, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:17:24.545000", - "departure_time": "16:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 488, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:18:29.345000", - "departure_time": "16:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 489, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:21:13.964000", - "departure_time": "16:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 490, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:23:40.255000", - "departure_time": "16:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 491, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:40:00", - "departure_time": "16:40:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 492, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:46:36", - "departure_time": "16:46:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 493, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:47:54.218000", - "departure_time": "16:47:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 494, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:49:32.400000", - "departure_time": "16:49:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 495, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:52:24.545000", - "departure_time": "16:52:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 496, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:53:29.345000", - "departure_time": "16:53:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 497, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:56:13.964000", - "departure_time": "16:56:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 498, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:58:40.255000", - "departure_time": "16:58:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 499, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:05:00", - "departure_time": "17:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 500, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:11:36", - "departure_time": "17:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 501, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:12:54.218000", - "departure_time": "17:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 502, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:14:32.400000", - "departure_time": "17:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 503, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:17:24.545000", - "departure_time": "17:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 504, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:18:29.345000", - "departure_time": "17:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 505, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:21:13.964000", - "departure_time": "17:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 506, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:23:40.255000", - "departure_time": "17:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 507, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:40:00", - "departure_time": "17:40:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 508, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:46:36", - "departure_time": "17:46:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 509, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:47:54.218000", - "departure_time": "17:47:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 510, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:49:32.400000", - "departure_time": "17:49:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 511, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:52:24.545000", - "departure_time": "17:52:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 512, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:53:29.345000", - "departure_time": "17:53:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 513, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:56:13.964000", - "departure_time": "17:56:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 514, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:58:40.255000", - "departure_time": "17:58:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 515, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:05:00", - "departure_time": "18:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 516, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:11:36", - "departure_time": "18:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 517, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:12:54.218000", - "departure_time": "18:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 518, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:14:32.400000", - "departure_time": "18:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 519, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:17:24.545000", - "departure_time": "18:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 520, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:18:29.345000", - "departure_time": "18:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 521, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:21:13.964000", - "departure_time": "18:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 522, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:23:40.255000", - "departure_time": "18:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 523, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:35:00", - "departure_time": "18:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 524, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:41:36", - "departure_time": "18:41:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 525, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:42:54.218000", - "departure_time": "18:42:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 526, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:44:32.400000", - "departure_time": "18:44:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 527, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:47:24.545000", - "departure_time": "18:47:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 528, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:48:29.345000", - "departure_time": "18:48:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 529, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:51:13.964000", - "departure_time": "18:51:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 530, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:53:40.255000", - "departure_time": "18:53:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 531, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:00:00", - "departure_time": "19:00:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 532, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:02:24.327000", - "departure_time": "19:02:24.327000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.441, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 533, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:04:27.382000", - "departure_time": "19:04:27.382000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.817, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 534, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:09:26.182000", - "departure_time": "19:09:26.182000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.73, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 535, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:10:46.691000", - "departure_time": "19:10:46.691000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 536, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:12:19.309000", - "departure_time": "19:12:19.309000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.259, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 537, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:15:11.127000", - "departure_time": "19:15:11.127000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.784, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 538, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:16:16.255000", - "departure_time": "19:16:16.255000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.983, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 539, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:19:12.982000", - "departure_time": "19:19:12.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.523, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 540, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:21:27.491000", - "departure_time": "19:21:27.491000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.934, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 541, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:35:00", - "departure_time": "19:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 542, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:37:24.327000", - "departure_time": "19:37:24.327000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.441, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 543, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:39:27.382000", - "departure_time": "19:39:27.382000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.817, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 544, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:44:26.182000", - "departure_time": "19:44:26.182000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.73, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 545, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:45:46.691000", - "departure_time": "19:45:46.691000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.976, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 546, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:47:19.309000", - "departure_time": "19:47:19.309000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.259, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 547, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:50:11.127000", - "departure_time": "19:50:11.127000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.784, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 548, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:51:16.255000", - "departure_time": "19:51:16.255000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.983, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 549, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:54:12.982000", - "departure_time": "19:54:12.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.523, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 550, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:56:27.491000", - "departure_time": "19:56:27.491000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.934, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 551, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:20:00", - "departure_time": "06:20:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 552, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:24:15.927000", - "departure_time": "06:24:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 553, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:27:27.709000", - "departure_time": "06:27:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 554, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:28:04.691000", - "departure_time": "06:28:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 555, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:29:12.764000", - "departure_time": "06:29:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 556, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:31:29.891000", - "departure_time": "06:31:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 557, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:33:09.709000", - "departure_time": "06:33:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 558, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:34:22.691000", - "departure_time": "06:34:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 559, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:39:11.673000", - "departure_time": "06:39:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 560, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:40:00", - "departure_time": "06:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 561, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:44:00.873000", - "departure_time": "06:44:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 562, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:47:28.364000", - "departure_time": "06:47:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 563, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:48:12.873000", - "departure_time": "06:48:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 564, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:49:11.127000", - "departure_time": "06:49:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 565, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:51:27.600000", - "departure_time": "06:51:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 566, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:53:11.018000", - "departure_time": "06:53:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 567, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:54:22.364000", - "departure_time": "06:54:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 568, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:57:17.782000", - "departure_time": "06:57:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 569, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:50:00", - "departure_time": "06:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 570, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:54:15.927000", - "departure_time": "06:54:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 571, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:57:27.709000", - "departure_time": "06:57:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 572, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:58:04.691000", - "departure_time": "06:58:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 573, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:59:12.764000", - "departure_time": "06:59:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 574, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:01:29.891000", - "departure_time": "07:01:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 575, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:03:09.709000", - "departure_time": "07:03:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 576, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:04:22.691000", - "departure_time": "07:04:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 577, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:09:11.673000", - "departure_time": "07:09:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 578, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:00:00", - "departure_time": "07:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 579, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:04:00.873000", - "departure_time": "07:04:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 580, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:07:28.364000", - "departure_time": "07:07:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 581, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:08:12.873000", - "departure_time": "07:08:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 582, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:09:11.127000", - "departure_time": "07:09:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 583, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:11:27.600000", - "departure_time": "07:11:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 584, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:13:11.018000", - "departure_time": "07:13:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 585, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:14:22.364000", - "departure_time": "07:14:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 586, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:17:17.782000", - "departure_time": "07:17:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 587, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:10:00", - "departure_time": "07:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 588, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:14:15.927000", - "departure_time": "07:14:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 589, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:17:27.709000", - "departure_time": "07:17:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 590, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:18:04.691000", - "departure_time": "07:18:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 591, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:19:12.764000", - "departure_time": "07:19:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 592, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:21:29.891000", - "departure_time": "07:21:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 593, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:23:09.709000", - "departure_time": "07:23:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 594, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:24:22.691000", - "departure_time": "07:24:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 595, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:29:11.673000", - "departure_time": "07:29:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 596, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:30:00", - "departure_time": "07:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 597, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:34:00.873000", - "departure_time": "07:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 598, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:37:28.364000", - "departure_time": "07:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 599, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:38:12.873000", - "departure_time": "07:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 600, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:39:11.127000", - "departure_time": "07:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 601, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:41:27.600000", - "departure_time": "07:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 602, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:43:11.018000", - "departure_time": "07:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 603, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:44:22.364000", - "departure_time": "07:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 604, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:47:17.782000", - "departure_time": "07:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 605, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:40:00", - "departure_time": "07:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 606, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:44:15.927000", - "departure_time": "07:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 607, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:47:27.709000", - "departure_time": "07:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 608, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:48:04.691000", - "departure_time": "07:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 609, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:49:12.764000", - "departure_time": "07:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 610, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:51:29.891000", - "departure_time": "07:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 611, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:53:09.709000", - "departure_time": "07:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 612, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:54:22.691000", - "departure_time": "07:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 613, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:59:11.673000", - "departure_time": "07:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 614, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:50:00", - "departure_time": "07:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 615, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:54:00.873000", - "departure_time": "07:54:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 616, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:57:28.364000", - "departure_time": "07:57:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 617, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:58:12.873000", - "departure_time": "07:58:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 618, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:59:11.127000", - "departure_time": "07:59:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 619, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:01:27.600000", - "departure_time": "08:01:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 620, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:03:11.018000", - "departure_time": "08:03:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 621, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:04:22.364000", - "departure_time": "08:04:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 622, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:07:17.782000", - "departure_time": "08:07:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 623, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:00:00", - "departure_time": "08:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 624, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:04:15.927000", - "departure_time": "08:04:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 625, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:07:27.709000", - "departure_time": "08:07:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 626, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:08:04.691000", - "departure_time": "08:08:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 627, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:09:12.764000", - "departure_time": "08:09:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 628, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:11:29.891000", - "departure_time": "08:11:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 629, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:13:09.709000", - "departure_time": "08:13:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 630, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:14:22.691000", - "departure_time": "08:14:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 631, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:19:11.673000", - "departure_time": "08:19:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 632, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:35:00", - "departure_time": "08:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 633, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:39:00.873000", - "departure_time": "08:39:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 634, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:42:28.364000", - "departure_time": "08:42:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 635, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:43:12.873000", - "departure_time": "08:43:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 636, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:44:11.127000", - "departure_time": "08:44:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 637, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:46:27.600000", - "departure_time": "08:46:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 638, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:48:11.018000", - "departure_time": "08:48:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 639, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:49:22.364000", - "departure_time": "08:49:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 640, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:52:17.782000", - "departure_time": "08:52:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 641, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:45:00", - "departure_time": "08:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 642, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:49:15.927000", - "departure_time": "08:49:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 643, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:52:27.709000", - "departure_time": "08:52:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 644, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:53:04.691000", - "departure_time": "08:53:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 645, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:54:12.764000", - "departure_time": "08:54:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 646, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:56:29.891000", - "departure_time": "08:56:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 647, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:58:09.709000", - "departure_time": "08:58:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 648, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:59:22.691000", - "departure_time": "08:59:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 649, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "09:04:11.673000", - "departure_time": "09:04:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 650, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "08:55:00", - "departure_time": "08:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 651, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "08:59:00.873000", - "departure_time": "08:59:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 652, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:02:28.364000", - "departure_time": "09:02:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 653, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:03:12.873000", - "departure_time": "09:03:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 654, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:04:11.127000", - "departure_time": "09:04:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 655, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:06:27.600000", - "departure_time": "09:06:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 656, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:08:11.018000", - "departure_time": "09:08:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 657, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:09:22.364000", - "departure_time": "09:09:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 658, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:12:17.782000", - "departure_time": "09:12:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 659, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:05:00", - "departure_time": "09:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 660, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:09:15.927000", - "departure_time": "09:09:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 661, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:12:27.709000", - "departure_time": "09:12:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 662, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:13:04.691000", - "departure_time": "09:13:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 663, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:14:12.764000", - "departure_time": "09:14:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 664, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:16:29.891000", - "departure_time": "09:16:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 665, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:18:09.709000", - "departure_time": "09:18:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 666, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:19:22.691000", - "departure_time": "09:19:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 667, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:24:11.673000", - "departure_time": "09:24:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 668, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:25:00", - "departure_time": "09:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 669, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:29:00.873000", - "departure_time": "09:29:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 670, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:32:28.364000", - "departure_time": "09:32:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 671, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:33:12.873000", - "departure_time": "09:33:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 672, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:34:11.127000", - "departure_time": "09:34:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 673, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:36:27.600000", - "departure_time": "09:36:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 674, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:38:11.018000", - "departure_time": "09:38:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 675, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:39:22.364000", - "departure_time": "09:39:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 676, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:42:17.782000", - "departure_time": "09:42:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 677, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:35:00", - "departure_time": "09:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 678, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:39:15.927000", - "departure_time": "09:39:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 679, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:42:27.709000", - "departure_time": "09:42:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 680, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:43:04.691000", - "departure_time": "09:43:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 681, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:44:12.764000", - "departure_time": "09:44:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 682, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:46:29.891000", - "departure_time": "09:46:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 683, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:48:09.709000", - "departure_time": "09:48:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 684, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:49:22.691000", - "departure_time": "09:49:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 685, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:54:11.673000", - "departure_time": "09:54:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 686, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:45:00", - "departure_time": "09:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 687, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:49:00.873000", - "departure_time": "09:49:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 688, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:52:28.364000", - "departure_time": "09:52:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 689, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:53:12.873000", - "departure_time": "09:53:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 690, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:54:11.127000", - "departure_time": "09:54:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 691, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:56:27.600000", - "departure_time": "09:56:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 692, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:58:11.018000", - "departure_time": "09:58:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 693, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:59:22.364000", - "departure_time": "09:59:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 694, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "10:02:17.782000", - "departure_time": "10:02:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 695, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "09:55:00", - "departure_time": "09:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 696, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "09:59:15.927000", - "departure_time": "09:59:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 697, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:02:27.709000", - "departure_time": "10:02:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 698, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:03:04.691000", - "departure_time": "10:03:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 699, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:04:12.764000", - "departure_time": "10:04:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 700, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:06:29.891000", - "departure_time": "10:06:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 701, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:08:09.709000", - "departure_time": "10:08:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 702, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:09:22.691000", - "departure_time": "10:09:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 703, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:14:11.673000", - "departure_time": "10:14:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 704, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:15:00", - "departure_time": "10:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 705, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:19:00.873000", - "departure_time": "10:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 706, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:22:28.364000", - "departure_time": "10:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 707, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:23:12.873000", - "departure_time": "10:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 708, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:24:11.127000", - "departure_time": "10:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 709, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:26:27.600000", - "departure_time": "10:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 710, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:28:11.018000", - "departure_time": "10:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 711, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:29:22.364000", - "departure_time": "10:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 712, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:32:17.782000", - "departure_time": "10:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 713, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:25:00", - "departure_time": "10:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 714, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:29:15.927000", - "departure_time": "10:29:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 715, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:32:27.709000", - "departure_time": "10:32:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 716, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:33:04.691000", - "departure_time": "10:33:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 717, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:34:12.764000", - "departure_time": "10:34:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 718, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:36:29.891000", - "departure_time": "10:36:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 719, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:38:09.709000", - "departure_time": "10:38:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 720, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:39:22.691000", - "departure_time": "10:39:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 721, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:44:11.673000", - "departure_time": "10:44:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 722, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:35:00", - "departure_time": "10:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 723, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:39:00.873000", - "departure_time": "10:39:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 724, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:42:28.364000", - "departure_time": "10:42:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 725, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:43:12.873000", - "departure_time": "10:43:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 726, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:44:11.127000", - "departure_time": "10:44:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 727, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:46:27.600000", - "departure_time": "10:46:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 728, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:48:11.018000", - "departure_time": "10:48:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 729, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:49:22.364000", - "departure_time": "10:49:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 730, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:52:17.782000", - "departure_time": "10:52:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 731, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:45:00", - "departure_time": "10:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 732, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:49:15.927000", - "departure_time": "10:49:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 733, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:52:27.709000", - "departure_time": "10:52:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 734, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:53:04.691000", - "departure_time": "10:53:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 735, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:54:12.764000", - "departure_time": "10:54:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 736, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:56:29.891000", - "departure_time": "10:56:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 737, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:58:09.709000", - "departure_time": "10:58:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 738, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:59:22.691000", - "departure_time": "10:59:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 739, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "11:04:11.673000", - "departure_time": "11:04:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 740, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:05:00", - "departure_time": "11:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 741, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:09:00.873000", - "departure_time": "11:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 742, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:12:28.364000", - "departure_time": "11:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 743, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:13:12.873000", - "departure_time": "11:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 744, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:14:11.127000", - "departure_time": "11:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 745, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:16:27.600000", - "departure_time": "11:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 746, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:18:11.018000", - "departure_time": "11:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 747, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:19:22.364000", - "departure_time": "11:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 748, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:22:17.782000", - "departure_time": "11:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 749, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:15:00", - "departure_time": "11:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 750, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:19:15.927000", - "departure_time": "11:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 751, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:22:27.709000", - "departure_time": "11:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 752, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:23:04.691000", - "departure_time": "11:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 753, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:24:12.764000", - "departure_time": "11:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 754, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:26:29.891000", - "departure_time": "11:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 755, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:28:09.709000", - "departure_time": "11:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 756, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:29:22.691000", - "departure_time": "11:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 757, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:34:11.673000", - "departure_time": "11:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 758, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:20:00", - "departure_time": "11:20:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 759, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:24:00.873000", - "departure_time": "11:24:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 760, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:27:28.364000", - "departure_time": "11:27:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 761, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:28:12.873000", - "departure_time": "11:28:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 762, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:29:11.127000", - "departure_time": "11:29:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 763, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:31:27.600000", - "departure_time": "11:31:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 764, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:33:11.018000", - "departure_time": "11:33:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 765, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:34:22.364000", - "departure_time": "11:34:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 766, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:37:17.782000", - "departure_time": "11:37:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 767, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:30:00", - "departure_time": "11:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 768, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:34:15.927000", - "departure_time": "11:34:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 769, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:37:27.709000", - "departure_time": "11:37:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 770, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:38:04.691000", - "departure_time": "11:38:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 771, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:39:12.764000", - "departure_time": "11:39:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 772, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:41:29.891000", - "departure_time": "11:41:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 773, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:43:09.709000", - "departure_time": "11:43:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 774, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:44:22.691000", - "departure_time": "11:44:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 775, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:49:11.673000", - "departure_time": "11:49:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 776, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:40:00", - "departure_time": "11:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 777, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:44:00.873000", - "departure_time": "11:44:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 778, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:47:28.364000", - "departure_time": "11:47:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 779, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:48:12.873000", - "departure_time": "11:48:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 780, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:49:11.127000", - "departure_time": "11:49:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 781, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:51:27.600000", - "departure_time": "11:51:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 782, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:53:11.018000", - "departure_time": "11:53:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 783, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:54:22.364000", - "departure_time": "11:54:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 784, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:57:17.782000", - "departure_time": "11:57:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 785, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:50:00", - "departure_time": "11:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 786, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:54:15.927000", - "departure_time": "11:54:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 787, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:57:27.709000", - "departure_time": "11:57:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 788, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:58:04.691000", - "departure_time": "11:58:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 789, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:59:12.764000", - "departure_time": "11:59:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 790, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:01:29.891000", - "departure_time": "12:01:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 791, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:03:09.709000", - "departure_time": "12:03:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 792, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:04:22.691000", - "departure_time": "12:04:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 793, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:09:11.673000", - "departure_time": "12:09:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 794, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:05:00", - "departure_time": "12:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 795, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:09:00.873000", - "departure_time": "12:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 796, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:12:28.364000", - "departure_time": "12:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 797, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:13:12.873000", - "departure_time": "12:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 798, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:14:11.127000", - "departure_time": "12:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 799, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:16:27.600000", - "departure_time": "12:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 800, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:18:11.018000", - "departure_time": "12:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 801, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:19:22.364000", - "departure_time": "12:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 802, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:22:17.782000", - "departure_time": "12:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 803, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:10:00", - "departure_time": "12:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 804, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:14:15.927000", - "departure_time": "12:14:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 805, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:17:27.709000", - "departure_time": "12:17:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 806, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:18:04.691000", - "departure_time": "12:18:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 807, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:19:12.764000", - "departure_time": "12:19:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 808, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:21:29.891000", - "departure_time": "12:21:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 809, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:23:09.709000", - "departure_time": "12:23:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 810, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:24:22.691000", - "departure_time": "12:24:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 811, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:29:11.673000", - "departure_time": "12:29:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 812, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:15:00", - "departure_time": "12:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 813, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:19:00.873000", - "departure_time": "12:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 814, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:22:28.364000", - "departure_time": "12:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 815, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:23:12.873000", - "departure_time": "12:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 816, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:24:11.127000", - "departure_time": "12:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 817, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:26:27.600000", - "departure_time": "12:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 818, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:28:11.018000", - "departure_time": "12:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 819, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:29:22.364000", - "departure_time": "12:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 820, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:32:17.782000", - "departure_time": "12:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 821, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:25:00", - "departure_time": "12:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 822, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:29:15.927000", - "departure_time": "12:29:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 823, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:32:27.709000", - "departure_time": "12:32:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 824, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:33:04.691000", - "departure_time": "12:33:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 825, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:34:12.764000", - "departure_time": "12:34:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 826, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:36:29.891000", - "departure_time": "12:36:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 827, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:38:09.709000", - "departure_time": "12:38:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 828, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:39:22.691000", - "departure_time": "12:39:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 829, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:44:11.673000", - "departure_time": "12:44:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 830, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:50:00", - "departure_time": "12:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 831, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:54:00.873000", - "departure_time": "12:54:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 832, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:57:28.364000", - "departure_time": "12:57:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 833, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:58:12.873000", - "departure_time": "12:58:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 834, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:59:11.127000", - "departure_time": "12:59:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 835, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:01:27.600000", - "departure_time": "13:01:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 836, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:03:11.018000", - "departure_time": "13:03:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 837, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:04:22.364000", - "departure_time": "13:04:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 838, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:07:17.782000", - "departure_time": "13:07:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 839, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:00:00", - "departure_time": "13:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 840, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:04:15.927000", - "departure_time": "13:04:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 841, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:07:27.709000", - "departure_time": "13:07:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 842, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:08:04.691000", - "departure_time": "13:08:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 843, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:09:12.764000", - "departure_time": "13:09:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 844, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:11:29.891000", - "departure_time": "13:11:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 845, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:13:09.709000", - "departure_time": "13:13:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 846, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:14:22.691000", - "departure_time": "13:14:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 847, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:19:11.673000", - "departure_time": "13:19:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 848, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:25:00", - "departure_time": "13:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 849, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:29:00.873000", - "departure_time": "13:29:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 850, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:32:28.364000", - "departure_time": "13:32:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 851, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:33:12.873000", - "departure_time": "13:33:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 852, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:34:11.127000", - "departure_time": "13:34:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 853, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:36:27.600000", - "departure_time": "13:36:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 854, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:38:11.018000", - "departure_time": "13:38:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 855, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:39:22.364000", - "departure_time": "13:39:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 856, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:42:17.782000", - "departure_time": "13:42:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 857, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:40:00", - "departure_time": "13:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 858, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:44:15.927000", - "departure_time": "13:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 859, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:47:27.709000", - "departure_time": "13:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 860, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:48:04.691000", - "departure_time": "13:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 861, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:49:12.764000", - "departure_time": "13:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 862, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:51:29.891000", - "departure_time": "13:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 863, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:53:09.709000", - "departure_time": "13:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 864, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:54:22.691000", - "departure_time": "13:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 865, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:59:11.673000", - "departure_time": "13:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 866, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:50:00", - "departure_time": "13:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 867, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:54:00.873000", - "departure_time": "13:54:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 868, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:57:28.364000", - "departure_time": "13:57:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 869, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:58:12.873000", - "departure_time": "13:58:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 870, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:59:11.127000", - "departure_time": "13:59:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 871, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:01:27.600000", - "departure_time": "14:01:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 872, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:03:11.018000", - "departure_time": "14:03:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 873, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:04:22.364000", - "departure_time": "14:04:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 874, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:07:17.782000", - "departure_time": "14:07:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 875, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:00:00", - "departure_time": "14:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 876, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:04:15.927000", - "departure_time": "14:04:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 877, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:07:27.709000", - "departure_time": "14:07:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 878, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:08:04.691000", - "departure_time": "14:08:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 879, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:09:12.764000", - "departure_time": "14:09:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 880, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:11:29.891000", - "departure_time": "14:11:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 881, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:13:09.709000", - "departure_time": "14:13:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 882, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:14:22.691000", - "departure_time": "14:14:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 883, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:19:11.673000", - "departure_time": "14:19:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 884, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:10:00", - "departure_time": "14:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 885, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:14:00.873000", - "departure_time": "14:14:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 886, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:17:28.364000", - "departure_time": "14:17:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 887, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:18:12.873000", - "departure_time": "14:18:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 888, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:19:11.127000", - "departure_time": "14:19:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 889, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:21:27.600000", - "departure_time": "14:21:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 890, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:23:11.018000", - "departure_time": "14:23:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 891, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:24:22.364000", - "departure_time": "14:24:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 892, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:27:17.782000", - "departure_time": "14:27:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 893, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:25:00", - "departure_time": "14:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 894, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:29:15.927000", - "departure_time": "14:29:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 895, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:32:27.709000", - "departure_time": "14:32:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 896, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:33:04.691000", - "departure_time": "14:33:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 897, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:34:12.764000", - "departure_time": "14:34:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 898, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:36:29.891000", - "departure_time": "14:36:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 899, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:38:09.709000", - "departure_time": "14:38:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 900, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:39:22.691000", - "departure_time": "14:39:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 901, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:44:11.673000", - "departure_time": "14:44:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 902, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:35:00", - "departure_time": "14:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 903, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:39:00.873000", - "departure_time": "14:39:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 904, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:42:28.364000", - "departure_time": "14:42:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 905, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:43:12.873000", - "departure_time": "14:43:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 906, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:44:11.127000", - "departure_time": "14:44:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 907, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:46:27.600000", - "departure_time": "14:46:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 908, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:48:11.018000", - "departure_time": "14:48:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 909, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:49:22.364000", - "departure_time": "14:49:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 910, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:52:17.782000", - "departure_time": "14:52:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 911, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:45:00", - "departure_time": "14:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 912, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:49:15.927000", - "departure_time": "14:49:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 913, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:52:27.709000", - "departure_time": "14:52:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 914, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:53:04.691000", - "departure_time": "14:53:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 915, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:54:12.764000", - "departure_time": "14:54:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 916, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:56:29.891000", - "departure_time": "14:56:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 917, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:58:09.709000", - "departure_time": "14:58:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 918, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:59:22.691000", - "departure_time": "14:59:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 919, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "15:04:11.673000", - "departure_time": "15:04:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 920, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "14:55:00", - "departure_time": "14:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 921, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "14:59:00.873000", - "departure_time": "14:59:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 922, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:02:28.364000", - "departure_time": "15:02:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 923, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:03:12.873000", - "departure_time": "15:03:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 924, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:04:11.127000", - "departure_time": "15:04:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 925, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:06:27.600000", - "departure_time": "15:06:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 926, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:08:11.018000", - "departure_time": "15:08:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 927, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:09:22.364000", - "departure_time": "15:09:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 928, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:12:17.782000", - "departure_time": "15:12:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 929, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:10:00", - "departure_time": "15:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 930, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:14:15.927000", - "departure_time": "15:14:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 931, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:17:27.709000", - "departure_time": "15:17:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 932, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:18:04.691000", - "departure_time": "15:18:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 933, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:19:12.764000", - "departure_time": "15:19:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 934, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:21:29.891000", - "departure_time": "15:21:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 935, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:23:09.709000", - "departure_time": "15:23:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 936, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:24:22.691000", - "departure_time": "15:24:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 937, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:29:11.673000", - "departure_time": "15:29:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 938, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:20:00", - "departure_time": "15:20:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 939, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:24:00.873000", - "departure_time": "15:24:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 940, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:27:28.364000", - "departure_time": "15:27:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 941, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:28:12.873000", - "departure_time": "15:28:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 942, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:29:11.127000", - "departure_time": "15:29:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 943, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:31:27.600000", - "departure_time": "15:31:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 944, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:33:11.018000", - "departure_time": "15:33:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 945, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:34:22.364000", - "departure_time": "15:34:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 946, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:37:17.782000", - "departure_time": "15:37:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 947, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:30:00", - "departure_time": "15:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 948, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:34:15.927000", - "departure_time": "15:34:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 949, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:37:27.709000", - "departure_time": "15:37:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 950, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:38:04.691000", - "departure_time": "15:38:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 951, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:39:12.764000", - "departure_time": "15:39:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 952, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:41:29.891000", - "departure_time": "15:41:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 953, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:43:09.709000", - "departure_time": "15:43:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 954, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:44:22.691000", - "departure_time": "15:44:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 955, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:49:11.673000", - "departure_time": "15:49:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 956, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:05:00", - "departure_time": "16:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 957, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:09:00.873000", - "departure_time": "16:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 958, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:12:28.364000", - "departure_time": "16:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 959, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:13:12.873000", - "departure_time": "16:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 960, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:14:11.127000", - "departure_time": "16:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 961, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:16:27.600000", - "departure_time": "16:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 962, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:18:11.018000", - "departure_time": "16:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 963, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:19:22.364000", - "departure_time": "16:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 964, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:22:17.782000", - "departure_time": "16:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 965, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:15:00", - "departure_time": "16:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 966, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:19:15.927000", - "departure_time": "16:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 967, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:22:27.709000", - "departure_time": "16:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 968, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:23:04.691000", - "departure_time": "16:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 969, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:24:12.764000", - "departure_time": "16:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 970, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:26:29.891000", - "departure_time": "16:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 971, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:28:09.709000", - "departure_time": "16:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 972, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:29:22.691000", - "departure_time": "16:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 973, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:34:11.673000", - "departure_time": "16:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 974, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:30:00", - "departure_time": "16:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 975, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:34:00.873000", - "departure_time": "16:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 976, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:37:28.364000", - "departure_time": "16:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 977, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:38:12.873000", - "departure_time": "16:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 978, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:39:11.127000", - "departure_time": "16:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 979, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:41:27.600000", - "departure_time": "16:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 980, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:43:11.018000", - "departure_time": "16:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 981, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:44:22.364000", - "departure_time": "16:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 982, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:47:17.782000", - "departure_time": "16:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 983, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:40:00", - "departure_time": "16:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 984, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:44:15.927000", - "departure_time": "16:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 985, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:47:27.709000", - "departure_time": "16:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 986, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:48:04.691000", - "departure_time": "16:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 987, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:49:12.764000", - "departure_time": "16:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 988, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:51:29.891000", - "departure_time": "16:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 989, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:53:09.709000", - "departure_time": "16:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 990, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:54:22.691000", - "departure_time": "16:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 991, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:59:11.673000", - "departure_time": "16:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 992, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:05:00", - "departure_time": "17:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 993, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:09:00.873000", - "departure_time": "17:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 994, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:12:28.364000", - "departure_time": "17:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 995, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:13:12.873000", - "departure_time": "17:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 996, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:14:11.127000", - "departure_time": "17:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 997, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:16:27.600000", - "departure_time": "17:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 998, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:18:11.018000", - "departure_time": "17:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 999, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:19:22.364000", - "departure_time": "17:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1000, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:22:17.782000", - "departure_time": "17:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1001, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:15:00", - "departure_time": "17:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1002, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:19:15.927000", - "departure_time": "17:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1003, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:22:27.709000", - "departure_time": "17:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1004, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:23:04.691000", - "departure_time": "17:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1005, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:24:12.764000", - "departure_time": "17:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1006, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:26:29.891000", - "departure_time": "17:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1007, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:28:09.709000", - "departure_time": "17:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1008, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:29:22.691000", - "departure_time": "17:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1009, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:34:11.673000", - "departure_time": "17:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1010, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:30:00", - "departure_time": "17:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1011, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:34:00.873000", - "departure_time": "17:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1012, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:37:28.364000", - "departure_time": "17:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1013, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:38:12.873000", - "departure_time": "17:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1014, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:39:11.127000", - "departure_time": "17:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1015, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:41:27.600000", - "departure_time": "17:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1016, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:43:11.018000", - "departure_time": "17:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1017, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:44:22.364000", - "departure_time": "17:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1018, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:47:17.782000", - "departure_time": "17:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1019, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:40:00", - "departure_time": "17:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1020, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:44:15.927000", - "departure_time": "17:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1021, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:47:27.709000", - "departure_time": "17:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1022, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:48:04.691000", - "departure_time": "17:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1023, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:49:12.764000", - "departure_time": "17:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1024, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:51:29.891000", - "departure_time": "17:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1025, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:53:09.709000", - "departure_time": "17:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1026, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:54:22.691000", - "departure_time": "17:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1027, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:59:11.673000", - "departure_time": "17:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1028, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:05:00", - "departure_time": "18:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1029, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:09:00.873000", - "departure_time": "18:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1030, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:12:28.364000", - "departure_time": "18:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1031, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:13:12.873000", - "departure_time": "18:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1032, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:14:11.127000", - "departure_time": "18:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1033, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:16:27.600000", - "departure_time": "18:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1034, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:18:11.018000", - "departure_time": "18:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1035, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:19:22.364000", - "departure_time": "18:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1036, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:22:17.782000", - "departure_time": "18:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1037, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:15:00", - "departure_time": "18:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1038, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:19:15.927000", - "departure_time": "18:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1039, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:22:27.709000", - "departure_time": "18:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1040, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:23:04.691000", - "departure_time": "18:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1041, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:24:12.764000", - "departure_time": "18:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1042, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:26:29.891000", - "departure_time": "18:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1043, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:28:09.709000", - "departure_time": "18:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1044, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:29:22.691000", - "departure_time": "18:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1045, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:34:11.673000", - "departure_time": "18:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1046, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:30:00", - "departure_time": "18:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1047, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:34:00.873000", - "departure_time": "18:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1048, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:37:28.364000", - "departure_time": "18:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1049, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:38:12.873000", - "departure_time": "18:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1050, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:39:11.127000", - "departure_time": "18:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1051, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:41:27.600000", - "departure_time": "18:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1052, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:43:11.018000", - "departure_time": "18:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1053, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:44:22.364000", - "departure_time": "18:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1054, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:47:17.782000", - "departure_time": "18:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1055, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:40:00", - "departure_time": "18:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1056, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:44:15.927000", - "departure_time": "18:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1057, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:47:27.709000", - "departure_time": "18:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1058, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:48:04.691000", - "departure_time": "18:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1059, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:49:12.764000", - "departure_time": "18:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1060, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:51:29.891000", - "departure_time": "18:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1061, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:53:09.709000", - "departure_time": "18:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1062, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:54:22.691000", - "departure_time": "18:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1063, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:59:11.673000", - "departure_time": "18:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1064, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "18:55:00", - "departure_time": "18:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1065, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "18:59:00.873000", - "departure_time": "18:59:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1066, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:02:28.364000", - "departure_time": "19:02:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1067, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:03:12.873000", - "departure_time": "19:03:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1068, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:04:11.127000", - "departure_time": "19:04:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1069, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:06:27.600000", - "departure_time": "19:06:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1070, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:08:11.018000", - "departure_time": "19:08:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1071, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:09:22.364000", - "departure_time": "19:09:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1072, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:12:17.782000", - "departure_time": "19:12:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1073, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:15:00", - "departure_time": "19:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1074, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:19:00.873000", - "departure_time": "19:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1075, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:22:28.364000", - "departure_time": "19:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1076, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:23:12.873000", - "departure_time": "19:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1077, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:24:11.127000", - "departure_time": "19:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1078, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:26:27.600000", - "departure_time": "19:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1079, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:28:11.018000", - "departure_time": "19:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1080, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:29:22.364000", - "departure_time": "19:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1081, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:32:17.782000", - "departure_time": "19:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1082, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:50:00", - "departure_time": "19:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1083, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:54:15.927000", - "departure_time": "19:54:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1084, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:57:27.709000", - "departure_time": "19:57:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1085, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:58:04.691000", - "departure_time": "19:58:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1086, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:59:12.764000", - "departure_time": "19:59:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1087, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:01:29.891000", - "departure_time": "20:01:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1088, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:03:09.709000", - "departure_time": "20:03:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1089, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:04:22.691000", - "departure_time": "20:04:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1090, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:09:11.673000", - "departure_time": "20:09:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1091, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:30:00", - "departure_time": "20:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1092, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:34:00.873000", - "departure_time": "20:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1093, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:37:28.364000", - "departure_time": "20:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1094, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:38:12.873000", - "departure_time": "20:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1095, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:39:11.127000", - "departure_time": "20:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1096, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:41:27.600000", - "departure_time": "20:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1097, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:43:11.018000", - "departure_time": "20:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1098, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:44:22.364000", - "departure_time": "20:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1099, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:47:17.782000", - "departure_time": "20:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1100, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:40:00", - "departure_time": "20:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1101, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:44:00.873000", - "departure_time": "20:44:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1102, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:47:28.364000", - "departure_time": "20:47:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1103, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:48:12.873000", - "departure_time": "20:48:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1104, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:49:11.127000", - "departure_time": "20:49:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1105, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:51:27.600000", - "departure_time": "20:51:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1106, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:53:11.018000", - "departure_time": "20:53:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1107, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:54:22.364000", - "departure_time": "20:54:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1108, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:57:17.782000", - "departure_time": "20:57:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1109, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:15:00", - "departure_time": "21:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "feed.stoptime", - "pk": 1110, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:19:00.873000", - "departure_time": "21:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1111, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:22:28.364000", - "departure_time": "21:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1112, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:23:12.873000", - "departure_time": "21:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1113, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:24:11.127000", - "departure_time": "21:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1114, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:26:27.600000", - "departure_time": "21:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1115, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:28:11.018000", - "departure_time": "21:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1116, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:29:22.364000", - "departure_time": "21:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "feed.stoptime", - "pk": 1117, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:32:17.782000", - "departure_time": "21:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "feed.calendar", - "pk": 1, - "fields": { - "feed": "1", - "service_id": "entresemana", - "monday": 1, - "tuesday": 1, - "wednesday": 1, - "thursday": 1, - "friday": 1, - "saturday": 0, - "sunday": 0, - "start_date": "2024-01-01", - "end_date": "2024-12-31" - } - }, - { - "model": "feed.farerule", - "pk": 1, - "fields": { - "feed": "1", - "fare_id": "no_tarifa", - "route_id": "bUCR_L1", - "origin_id": "bUCR_0", - "destination_id": "bUCR_0", - "contains_id": "" - } - }, - { - "model": "feed.farerule", - "pk": 2, - "fields": { - "feed": "1", - "fare_id": "no_tarifa", - "route_id": "bUCR_L2", - "origin_id": "bUCR_1", - "destination_id": "bUCR_1", - "contains_id": "" - } - }, - { - "model": "feed.fareattribute", - "pk": 1, - "fields": { - "feed": "1", - "fare_id": "no_tarifa", - "price": 0, - "currency_type": "CRC", - "payment_method": 0, - "transfers": 0, - "transfer_duration": null - } - }, - { - "model": "feed.shape", - "pk": 1, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93554944029271, - "shape_pt_lon": -84.0491138975951, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "feed.shape", - "pk": 2, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9355589010814, - "shape_pt_lon": -84.0491582627979, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.005 - } - }, - { - "model": "feed.shape", - "pk": 3, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93557354275506, - "shape_pt_lon": -84.0492241246225, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.012 - } - }, - { - "model": "feed.shape", - "pk": 4, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9356000651633, - "shape_pt_lon": -84.049324861376, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.024 - } - }, - { - "model": "feed.shape", - "pk": 5, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93563773463719, - "shape_pt_lon": -84.049416778843, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.035 - } - }, - { - "model": "feed.shape", - "pk": 6, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93568399531643, - "shape_pt_lon": -84.0495368755472, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "feed.shape", - "pk": 7, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93570316048327, - "shape_pt_lon": -84.0495945755631, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.056 - } - }, - { - "model": "feed.shape", - "pk": 8, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93571109089738, - "shape_pt_lon": -84.0496871639603, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.066 - } - }, - { - "model": "feed.shape", - "pk": 9, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93571292483817, - "shape_pt_lon": -84.0498464474787, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.083 - } - }, - { - "model": "feed.shape", - "pk": 10, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93570393244304, - "shape_pt_lon": -84.0500877222699, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.11 - } - }, - { - "model": "feed.shape", - "pk": 11, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93566539329337, - "shape_pt_lon": -84.050351168656, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.139 - } - }, - { - "model": "feed.shape", - "pk": 12, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93561786205413, - "shape_pt_lon": -84.0505937476355, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.166 - } - }, - { - "model": "feed.shape", - "pk": 13, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93556519227529, - "shape_pt_lon": -84.050878060609, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.198 - } - }, - { - "model": "feed.shape", - "pk": 14, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93552922267821, - "shape_pt_lon": -84.051108901895, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.223 - } - }, - { - "model": "feed.shape", - "pk": 15, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93548169125642, - "shape_pt_lon": -84.0513932152566, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.255 - } - }, - { - "model": "feed.shape", - "pk": 16, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93545342942273, - "shape_pt_lon": -84.0516410109878, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.282 - } - }, - { - "model": "feed.shape", - "pk": 17, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93544741074256, - "shape_pt_lon": -84.0516943904767, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.288 - } - }, - { - "model": "feed.shape", - "pk": 18, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93544700627605, - "shape_pt_lon": -84.051754475488, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.295 - } - }, - { - "model": "feed.shape", - "pk": 19, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93546627570862, - "shape_pt_lon": -84.0519579288248, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.317 - } - }, - { - "model": "feed.shape", - "pk": 20, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93548939902537, - "shape_pt_lon": -84.052131385837, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.336 - } - }, - { - "model": "feed.shape", - "pk": 21, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93550517435119, - "shape_pt_lon": -84.0522239834817, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.347 - } - }, - { - "model": "feed.shape", - "pk": 22, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93554618004823, - "shape_pt_lon": -84.0523340057342, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.36 - } - }, - { - "model": "feed.shape", - "pk": 23, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93559987797587, - "shape_pt_lon": -84.0523914948391, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.368 - } - }, - { - "model": "feed.shape", - "pk": 24, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93565552854654, - "shape_pt_lon": -84.0524281689233, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.376 - } - }, - { - "model": "feed.shape", - "pk": 25, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93572094236273, - "shape_pt_lon": -84.0524410544122, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.383 - } - }, - { - "model": "feed.shape", - "pk": 26, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93583614886311, - "shape_pt_lon": -84.0524182569563, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.396 - } - }, - { - "model": "feed.shape", - "pk": 27, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93603336648931, - "shape_pt_lon": -84.0523528383197, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.419 - } - }, - { - "model": "feed.shape", - "pk": 28, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93625691629266, - "shape_pt_lon": -84.0522832947174, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.445 - } - }, - { - "model": "feed.shape", - "pk": 29, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93639307154715, - "shape_pt_lon": -84.0522431941422, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.46 - } - }, - { - "model": "feed.shape", - "pk": 30, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93653561474882, - "shape_pt_lon": -84.0522372469934, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.476 - } - }, - { - "model": "feed.shape", - "pk": 31, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93660005206628, - "shape_pt_lon": -84.0522600443969, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.484 - } - }, - { - "model": "feed.shape", - "pk": 32, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93661957852377, - "shape_pt_lon": -84.0523423132888, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.493 - } - }, - { - "model": "feed.shape", - "pk": 33, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93659126516027, - "shape_pt_lon": -84.0524275557544, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.503 - } - }, - { - "model": "feed.shape", - "pk": 34, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93653854371827, - "shape_pt_lon": -84.0524503531584, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.509 - } - }, - { - "model": "feed.shape", - "pk": 35, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93645360359939, - "shape_pt_lon": -84.0524483707755, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.519 - } - }, - { - "model": "feed.shape", - "pk": 36, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93636085286962, - "shape_pt_lon": -84.052439450052, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.529 - } - }, - { - "model": "feed.shape", - "pk": 37, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93633386047036, - "shape_pt_lon": -84.0524268046992, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.532 - } - }, - { - "model": "feed.shape", - "pk": 38, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93630422609543, - "shape_pt_lon": -84.0524265645631, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.535 - } - }, - { - "model": "feed.shape", - "pk": 39, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93618120917912, - "shape_pt_lon": -84.0524473794854, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.549 - } - }, - { - "model": "feed.shape", - "pk": 40, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93600742368285, - "shape_pt_lon": -84.052484053706, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.569 - } - }, - { - "model": "feed.shape", - "pk": 41, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93581118236608, - "shape_pt_lon": -84.0525276661302, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.591 - } - }, - { - "model": "feed.shape", - "pk": 42, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93571876163712, - "shape_pt_lon": -84.0525355663096, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.601 - } - }, - { - "model": "feed.shape", - "pk": 43, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93563153840537, - "shape_pt_lon": -84.0525177541372, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.611 - } - }, - { - "model": "feed.shape", - "pk": 44, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93553310902874, - "shape_pt_lon": -84.0524334735888, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.626 - } - }, - { - "model": "feed.shape", - "pk": 45, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93545970504671, - "shape_pt_lon": -84.0523512340121, - "shape_pt_sequence": 44, - "shape_dist_traveled": 0.638 - } - }, - { - "model": "feed.shape", - "pk": 46, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93542065199216, - "shape_pt_lon": -84.0522451765253, - "shape_pt_sequence": 45, - "shape_dist_traveled": 0.65 - } - }, - { - "model": "feed.shape", - "pk": 47, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93541674668641, - "shape_pt_lon": -84.0521014537632, - "shape_pt_sequence": 46, - "shape_dist_traveled": 0.666 - } - }, - { - "model": "feed.shape", - "pk": 48, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93537769362758, - "shape_pt_lon": -84.0518556382803, - "shape_pt_sequence": 47, - "shape_dist_traveled": 0.693 - } - }, - { - "model": "feed.shape", - "pk": 49, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93533766423581, - "shape_pt_lon": -84.0515960083744, - "shape_pt_sequence": 48, - "shape_dist_traveled": 0.722 - } - }, - { - "model": "feed.shape", - "pk": 50, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93531364398533, - "shape_pt_lon": -84.0515277691646, - "shape_pt_sequence": 49, - "shape_dist_traveled": 0.73 - } - }, - { - "model": "feed.shape", - "pk": 51, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93528103728449, - "shape_pt_lon": -84.0514612063353, - "shape_pt_sequence": 50, - "shape_dist_traveled": 0.738 - } - }, - { - "model": "feed.shape", - "pk": 52, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93537964636139, - "shape_pt_lon": -84.0510449054667, - "shape_pt_sequence": 51, - "shape_dist_traveled": 0.785 - } - }, - { - "model": "feed.shape", - "pk": 53, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93549228868242, - "shape_pt_lon": -84.0506385823758, - "shape_pt_sequence": 52, - "shape_dist_traveled": 0.831 - } - }, - { - "model": "feed.shape", - "pk": 54, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93560853450969, - "shape_pt_lon": -84.0501428263958, - "shape_pt_sequence": 53, - "shape_dist_traveled": 0.887 - } - }, - { - "model": "feed.shape", - "pk": 55, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93564523227799, - "shape_pt_lon": -84.0499153784661, - "shape_pt_sequence": 54, - "shape_dist_traveled": 0.912 - } - }, - { - "model": "feed.shape", - "pk": 56, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9355593156005, - "shape_pt_lon": -84.0495436816674, - "shape_pt_sequence": 55, - "shape_dist_traveled": 0.954 - } - }, - { - "model": "feed.shape", - "pk": 57, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93549425099087, - "shape_pt_lon": -84.049203385401, - "shape_pt_sequence": 56, - "shape_dist_traveled": 0.992 - } - }, - { - "model": "feed.shape", - "pk": 58, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93539252590615, - "shape_pt_lon": -84.0487850070695, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.039 - } - }, - { - "model": "feed.shape", - "pk": 59, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93537592835444, - "shape_pt_lon": -84.0486462402645, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.055 - } - }, - { - "model": "feed.shape", - "pk": 60, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93528024833921, - "shape_pt_lon": -84.0486373195414, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.065 - } - }, - { - "model": "feed.shape", - "pk": 61, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93529755089066, - "shape_pt_lon": -84.0483824809879, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.093 - } - }, - { - "model": "feed.shape", - "pk": 62, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93524885628052, - "shape_pt_lon": -84.048123669054, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.122 - } - }, - { - "model": "feed.shape", - "pk": 63, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9351256875275, - "shape_pt_lon": -84.0477514451489, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.165 - } - }, - { - "model": "feed.shape", - "pk": 64, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93500538311991, - "shape_pt_lon": -84.0473850372423, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.208 - } - }, - { - "model": "feed.shape", - "pk": 65, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93492412702167, - "shape_pt_lon": -84.0470954278149, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.241 - } - }, - { - "model": "feed.shape", - "pk": 66, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93480668693231, - "shape_pt_lon": -84.046441127981, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.314 - } - }, - { - "model": "feed.shape", - "pk": 67, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93468020166955, - "shape_pt_lon": -84.0458485099908, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.38 - } - }, - { - "model": "feed.shape", - "pk": 68, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93461570602311, - "shape_pt_lon": -84.0456145784198, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.407 - } - }, - { - "model": "feed.shape", - "pk": 69, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93495613335646, - "shape_pt_lon": -84.0456080574792, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.444 - } - }, - { - "model": "feed.shape", - "pk": 70, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93502533870439, - "shape_pt_lon": -84.0455873014759, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.452 - } - }, - { - "model": "feed.shape", - "pk": 71, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93533638426393, - "shape_pt_lon": -84.045580669786, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.487 - } - }, - { - "model": "feed.shape", - "pk": 72, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93558174876489, - "shape_pt_lon": -84.045528502083, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.514 - } - }, - { - "model": "feed.shape", - "pk": 73, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9356639649666, - "shape_pt_lon": -84.0454554675517, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.527 - } - }, - { - "model": "feed.shape", - "pk": 74, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93591239555134, - "shape_pt_lon": -84.0454118867064, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.554 - } - }, - { - "model": "feed.shape", - "pk": 75, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93618345188633, - "shape_pt_lon": -84.0453571107868, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.585 - } - }, - { - "model": "feed.shape", - "pk": 76, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93630292207917, - "shape_pt_lon": -84.0453649359146, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.598 - } - }, - { - "model": "feed.shape", - "pk": 77, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93644423085287, - "shape_pt_lon": -84.0454366662581, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.616 - } - }, - { - "model": "feed.shape", - "pk": 78, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93668331840604, - "shape_pt_lon": -84.045567569655, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.646 - } - }, - { - "model": "feed.shape", - "pk": 79, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93677195745002, - "shape_pt_lon": -84.045592349228, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.656 - } - }, - { - "model": "feed.shape", - "pk": 80, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9368528887295, - "shape_pt_lon": -84.0455871324757, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.665 - } - }, - { - "model": "feed.shape", - "pk": 81, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93694152772752, - "shape_pt_lon": -84.0455467026459, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.676 - } - }, - { - "model": "feed.shape", - "pk": 82, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93708540528038, - "shape_pt_lon": -84.0454423673758, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.695 - } - }, - { - "model": "feed.shape", - "pk": 83, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9372459343465, - "shape_pt_lon": -84.0452787163273, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.721 - } - }, - { - "model": "feed.shape", - "pk": 84, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93733842710149, - "shape_pt_lon": -84.0451378640166, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.739 - } - }, - { - "model": "feed.shape", - "pk": 85, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93756026309952, - "shape_pt_lon": -84.044752821983, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.788 - } - }, - { - "model": "feed.shape", - "pk": 86, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93777652816203, - "shape_pt_lon": -84.0443585013794, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.837 - } - }, - { - "model": "feed.shape", - "pk": 87, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9381041049962, - "shape_pt_lon": -84.0438016139119, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.908 - } - }, - { - "model": "feed.shape", - "pk": 88, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93796476738381, - "shape_pt_lon": -84.0436166501913, - "shape_pt_sequence": 87, - "shape_dist_traveled": 1.934 - } - }, - { - "model": "feed.shape", - "pk": 89, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93791473560688, - "shape_pt_lon": -84.0434457982085, - "shape_pt_sequence": 88, - "shape_dist_traveled": 1.953 - } - }, - { - "model": "feed.shape", - "pk": 90, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93789047771889, - "shape_pt_lon": -84.0432203034589, - "shape_pt_sequence": 89, - "shape_dist_traveled": 1.978 - } - }, - { - "model": "feed.shape", - "pk": 91, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93791970638376, - "shape_pt_lon": -84.0429894627193, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.004 - } - }, - { - "model": "feed.shape", - "pk": 92, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93798008366965, - "shape_pt_lon": -84.0426008139046, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.047 - } - }, - { - "model": "feed.shape", - "pk": 93, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93800449142722, - "shape_pt_lon": -84.0424795244151, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.06 - } - }, - { - "model": "feed.shape", - "pk": 94, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9381380917555, - "shape_pt_lon": -84.0421782569734, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.097 - } - }, - { - "model": "feed.shape", - "pk": 95, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93816473253672, - "shape_pt_lon": -84.0419964534982, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.117 - } - }, - { - "model": "feed.shape", - "pk": 96, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93815830944601, - "shape_pt_lon": -84.0418503844357, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.133 - } - }, - { - "model": "feed.shape", - "pk": 97, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93812876322556, - "shape_pt_lon": -84.0417251823817, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.147 - } - }, - { - "model": "feed.shape", - "pk": 98, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93807176432108, - "shape_pt_lon": -84.0416449024973, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.158 - } - }, - { - "model": "feed.shape", - "pk": 99, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9380170014129, - "shape_pt_lon": -84.0416364975937, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.164 - } - }, - { - "model": "feed.shape", - "pk": 100, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9379218878614, - "shape_pt_lon": -84.0416378013257, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.174 - } - }, - { - "model": "feed.shape", - "pk": 101, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93790138516287, - "shape_pt_lon": -84.0411362584451, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.229 - } - }, - { - "model": "feed.shape", - "pk": 102, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93789650346394, - "shape_pt_lon": -84.041068473332, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.237 - } - }, - { - "model": "feed.shape", - "pk": 103, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93846399292934, - "shape_pt_lon": -84.0409289658467, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.301 - } - }, - { - "model": "feed.shape", - "pk": 104, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93868999787477, - "shape_pt_lon": -84.0409645503437, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.327 - } - }, - { - "model": "feed.shape", - "pk": 105, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93885220465146, - "shape_pt_lon": -84.0411343350368, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.353 - } - }, - { - "model": "feed.shape", - "pk": 106, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93915775668989, - "shape_pt_lon": -84.0416551779252, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.419 - } - }, - { - "model": "feed.shape", - "pk": 107, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93928866239001, - "shape_pt_lon": -84.0417942257713, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.44 - } - }, - { - "model": "feed.shape", - "pk": 108, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9394332650851, - "shape_pt_lon": -84.0418835860126, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.459 - } - }, - { - "model": "feed.shape", - "pk": 109, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93950294569722, - "shape_pt_lon": -84.0419072239736, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.467 - } - }, - { - "model": "feed.shape", - "pk": 110, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93950393195614, - "shape_pt_lon": -84.0422269282472, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.502 - } - }, - { - "model": "feed.shape", - "pk": 111, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93949212322203, - "shape_pt_lon": -84.0425117128132, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.533 - } - }, - { - "model": "feed.shape", - "pk": 112, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93945684385667, - "shape_pt_lon": -84.0429181490899, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.578 - } - }, - { - "model": "feed.shape", - "pk": 113, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93942503205056, - "shape_pt_lon": -84.0433331349077, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.624 - } - }, - { - "model": "feed.shape", - "pk": 114, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93972770605043, - "shape_pt_lon": -84.0432631191506, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.658 - } - }, - { - "model": "feed.shape", - "pk": 115, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93979024582779, - "shape_pt_lon": -84.0432957235711, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.666 - } - }, - { - "model": "feed.shape", - "pk": 116, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93981898031695, - "shape_pt_lon": -84.0433729445674, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.675 - } - }, - { - "model": "feed.shape", - "pk": 117, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94007108411656, - "shape_pt_lon": -84.0443132968873, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.782 - } - }, - { - "model": "feed.shape", - "pk": 118, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94016605495639, - "shape_pt_lon": -84.0446693302114, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.822 - } - }, - { - "model": "feed.shape", - "pk": 119, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94027244564152, - "shape_pt_lon": -84.0448273689979, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.843 - } - }, - { - "model": "feed.shape", - "pk": 120, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94046211098755, - "shape_pt_lon": -84.0455400945559, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.924 - } - }, - { - "model": "feed.shape", - "pk": 121, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94049056601295, - "shape_pt_lon": -84.0456302713637, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.934 - } - }, - { - "model": "feed.shape", - "pk": 122, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94063822457009, - "shape_pt_lon": -84.0455978789472, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.951 - } - }, - { - "model": "feed.shape", - "pk": 123, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94079717180704, - "shape_pt_lon": -84.0450688663703, - "shape_pt_sequence": 122, - "shape_dist_traveled": 3.012 - } - }, - { - "model": "feed.shape", - "pk": 124, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94095438717349, - "shape_pt_lon": -84.04474671421, - "shape_pt_sequence": 123, - "shape_dist_traveled": 3.051 - } - }, - { - "model": "feed.shape", - "pk": 125, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94105262250509, - "shape_pt_lon": -84.0446527254796, - "shape_pt_sequence": 124, - "shape_dist_traveled": 3.066 - } - }, - { - "model": "feed.shape", - "pk": 126, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9414150973303, - "shape_pt_lon": -84.0446772759114, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.106 - } - }, - { - "model": "feed.shape", - "pk": 127, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94222783326419, - "shape_pt_lon": -84.0447316948875, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.196 - } - }, - { - "model": "feed.shape", - "pk": 128, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94282430588245, - "shape_pt_lon": -84.0447692666912, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.262 - } - }, - { - "model": "feed.shape", - "pk": 129, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9430072194504, - "shape_pt_lon": -84.0447361152365, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.283 - } - }, - { - "model": "feed.shape", - "pk": 130, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94325327852743, - "shape_pt_lon": -84.0446536543918, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.311 - } - }, - { - "model": "feed.shape", - "pk": 131, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94367377439675, - "shape_pt_lon": -84.0444658512058, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.362 - } - }, - { - "model": "feed.shape", - "pk": 132, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94380472710699, - "shape_pt_lon": -84.0447574980966, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.397 - } - }, - { - "model": "feed.shape", - "pk": 133, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94388103477618, - "shape_pt_lon": -84.044883947833, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.414 - } - }, - { - "model": "feed.shape", - "pk": 134, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94396870046222, - "shape_pt_lon": -84.044952212081, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.426 - } - }, - { - "model": "feed.shape", - "pk": 135, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94440018674929, - "shape_pt_lon": -84.0449991890221, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.474 - } - }, - { - "model": "feed.shape", - "pk": 136, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94457575401998, - "shape_pt_lon": -84.045011078064, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.493 - } - }, - { - "model": "feed.shape", - "pk": 137, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94495341180596, - "shape_pt_lon": -84.045007224609, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.535 - } - }, - { - "model": "feed.shape", - "pk": 138, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94503790634203, - "shape_pt_lon": -84.0450804402532, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.547 - } - }, - { - "model": "feed.shape", - "pk": 139, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94507262278836, - "shape_pt_lon": -84.0454078875236, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.584 - } - }, - { - "model": "feed.shape", - "pk": 140, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94509663743075, - "shape_pt_lon": -84.0455018337476, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.594 - } - }, - { - "model": "feed.shape", - "pk": 141, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94516495042239, - "shape_pt_lon": -84.0455370798079, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.603 - } - }, - { - "model": "feed.shape", - "pk": 142, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94535421093323, - "shape_pt_lon": -84.0455279840503, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.624 - } - }, - { - "model": "feed.shape", - "pk": 143, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94569609354827, - "shape_pt_lon": -84.0455006967812, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.662 - } - }, - { - "model": "feed.shape", - "pk": 144, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94576019859063, - "shape_pt_lon": -84.0454636202844, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.67 - } - }, - { - "model": "feed.shape", - "pk": 145, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9458090133638, - "shape_pt_lon": -84.0453783778183, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.681 - } - }, - { - "model": "feed.shape", - "pk": 146, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94587051996754, - "shape_pt_lon": -84.0452505141197, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.696 - } - }, - { - "model": "feed.shape", - "pk": 147, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94594579827001, - "shape_pt_lon": -84.0451768005758, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.708 - } - }, - { - "model": "feed.shape", - "pk": 148, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9462925242644, - "shape_pt_lon": -84.0451498689492, - "shape_pt_sequence": 147, - "shape_dist_traveled": 3.746 - } - }, - { - "model": "feed.shape", - "pk": 149, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9463897709987, - "shape_pt_lon": -84.0451620803092, - "shape_pt_sequence": 148, - "shape_dist_traveled": 3.757 - } - }, - { - "model": "feed.shape", - "pk": 150, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94645002673405, - "shape_pt_lon": -84.0452016714679, - "shape_pt_sequence": 149, - "shape_dist_traveled": 3.765 - } - }, - { - "model": "feed.shape", - "pk": 151, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94648404073633, - "shape_pt_lon": -84.0452387476835, - "shape_pt_sequence": 150, - "shape_dist_traveled": 3.771 - } - }, - { - "model": "feed.shape", - "pk": 152, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93554615993122, - "shape_pt_lon": -84.0491114962244, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "feed.shape", - "pk": 153, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93557253860416, - "shape_pt_lon": -84.0492324408382, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.014 - } - }, - { - "model": "feed.shape", - "pk": 154, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93559719650295, - "shape_pt_lon": -84.0493243902202, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.024 - } - }, - { - "model": "feed.shape", - "pk": 155, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93566832503712, - "shape_pt_lon": -84.0495039565472, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.045 - } - }, - { - "model": "feed.shape", - "pk": 156, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93570246673155, - "shape_pt_lon": -84.0495983130441, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.056 - } - }, - { - "model": "feed.shape", - "pk": 157, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93570957958473, - "shape_pt_lon": -84.0496907438365, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.066 - } - }, - { - "model": "feed.shape", - "pk": 158, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93571147624034, - "shape_pt_lon": -84.0498491281346, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.084 - } - }, - { - "model": "feed.shape", - "pk": 159, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93570246663722, - "shape_pt_lon": -84.0500893518124, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.11 - } - }, - { - "model": "feed.shape", - "pk": 160, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93566785089355, - "shape_pt_lon": -84.0503237982121, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.136 - } - }, - { - "model": "feed.shape", - "pk": 161, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93562801871054, - "shape_pt_lon": -84.0505362327233, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.16 - } - }, - { - "model": "feed.shape", - "pk": 162, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93558581568109, - "shape_pt_lon": -84.0507591258626, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.185 - } - }, - { - "model": "feed.shape", - "pk": 163, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93553934502577, - "shape_pt_lon": -84.0510354553896, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.215 - } - }, - { - "model": "feed.shape", - "pk": 164, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93548718391971, - "shape_pt_lon": -84.0513535074206, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.251 - } - }, - { - "model": "feed.shape", - "pk": 165, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93544590778002, - "shape_pt_lon": -84.0516944413929, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.288 - } - }, - { - "model": "feed.shape", - "pk": 166, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93544406437546, - "shape_pt_lon": -84.0517683691601, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.297 - } - }, - { - "model": "feed.shape", - "pk": 167, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93549752617786, - "shape_pt_lon": -84.0521913460308, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.343 - } - }, - { - "model": "feed.shape", - "pk": 168, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93552149197739, - "shape_pt_lon": -84.0522746314152, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.353 - } - }, - { - "model": "feed.shape", - "pk": 169, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93554545760814, - "shape_pt_lon": -84.0523420082619, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.361 - } - }, - { - "model": "feed.shape", - "pk": 170, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93560168465873, - "shape_pt_lon": -84.0523981556341, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.369 - } - }, - { - "model": "feed.shape", - "pk": 171, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93565791169966, - "shape_pt_lon": -84.0524318440576, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.377 - } - }, - { - "model": "feed.shape", - "pk": 172, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.935720591012, - "shape_pt_lon": -84.0524430735317, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.384 - } - }, - { - "model": "feed.shape", - "pk": 173, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93583857529975, - "shape_pt_lon": -84.0524187427515, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.397 - } - }, - { - "model": "feed.shape", - "pk": 174, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93605505885652, - "shape_pt_lon": -84.0523466867771, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.422 - } - }, - { - "model": "feed.shape", - "pk": 175, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93627443620344, - "shape_pt_lon": -84.0522802455722, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.448 - } - }, - { - "model": "feed.shape", - "pk": 176, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93639436894143, - "shape_pt_lon": -84.052243749702, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.461 - } - }, - { - "model": "feed.shape", - "pk": 177, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93653263180367, - "shape_pt_lon": -84.0522390707544, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.477 - } - }, - { - "model": "feed.shape", - "pk": 178, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93679802054417, - "shape_pt_lon": -84.0523349506756, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.508 - } - }, - { - "model": "feed.shape", - "pk": 179, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93706910208629, - "shape_pt_lon": -84.0524313369778, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.54 - } - }, - { - "model": "feed.shape", - "pk": 180, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93735023603007, - "shape_pt_lon": -84.0525380169441, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.573 - } - }, - { - "model": "feed.shape", - "pk": 181, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9375714563375, - "shape_pt_lon": -84.0526437612861, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.6 - } - }, - { - "model": "feed.shape", - "pk": 182, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93774105816322, - "shape_pt_lon": -84.0527027160271, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.62 - } - }, - { - "model": "feed.shape", - "pk": 183, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93778978041929, - "shape_pt_lon": -84.0527151488461, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.625 - } - }, - { - "model": "feed.shape", - "pk": 184, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93794647765702, - "shape_pt_lon": -84.0527273141104, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.643 - } - }, - { - "model": "feed.shape", - "pk": 185, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93809150988507, - "shape_pt_lon": -84.0527076622996, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.659 - } - }, - { - "model": "feed.shape", - "pk": 186, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93815511047925, - "shape_pt_lon": -84.052635606505, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.67 - } - }, - { - "model": "feed.shape", - "pk": 187, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93840121696546, - "shape_pt_lon": -84.0521246655647, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.732 - } - }, - { - "model": "feed.shape", - "pk": 188, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93857142751338, - "shape_pt_lon": -84.051894479649, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.763 - } - }, - { - "model": "feed.shape", - "pk": 189, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93879176765612, - "shape_pt_lon": -84.0516156036497, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.802 - } - }, - { - "model": "feed.shape", - "pk": 190, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93890106345436, - "shape_pt_lon": -84.0514555284908, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.824 - } - }, - { - "model": "feed.shape", - "pk": 191, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93897507515302, - "shape_pt_lon": -84.0513020294891, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.842 - } - }, - { - "model": "feed.shape", - "pk": 192, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9390141956147, - "shape_pt_lon": -84.0511345760324, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.861 - } - }, - { - "model": "feed.shape", - "pk": 193, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93905117558812, - "shape_pt_lon": -84.0509224405605, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.885 - } - }, - { - "model": "feed.shape", - "pk": 194, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93906597792292, - "shape_pt_lon": -84.0506014881021, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.92 - } - }, - { - "model": "feed.shape", - "pk": 195, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93909856537408, - "shape_pt_lon": -84.0501243834524, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.973 - } - }, - { - "model": "feed.shape", - "pk": 196, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93910318560055, - "shape_pt_lon": -84.0497656390733, - "shape_pt_sequence": 44, - "shape_dist_traveled": 1.012 - } - }, - { - "model": "feed.shape", - "pk": 197, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93906512245888, - "shape_pt_lon": -84.049652930016, - "shape_pt_sequence": 45, - "shape_dist_traveled": 1.025 - } - }, - { - "model": "feed.shape", - "pk": 198, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9389773657529, - "shape_pt_lon": -84.0495133854688, - "shape_pt_sequence": 46, - "shape_dist_traveled": 1.043 - } - }, - { - "model": "feed.shape", - "pk": 199, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93881453893313, - "shape_pt_lon": -84.0493115816303, - "shape_pt_sequence": 47, - "shape_dist_traveled": 1.072 - } - }, - { - "model": "feed.shape", - "pk": 200, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93860413409909, - "shape_pt_lon": -84.0490281988577, - "shape_pt_sequence": 48, - "shape_dist_traveled": 1.11 - } - }, - { - "model": "feed.shape", - "pk": 201, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93847607358095, - "shape_pt_lon": -84.0488647834885, - "shape_pt_sequence": 49, - "shape_dist_traveled": 1.133 - } - }, - { - "model": "feed.shape", - "pk": 202, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93830796101282, - "shape_pt_lon": -84.0486425856324, - "shape_pt_sequence": 50, - "shape_dist_traveled": 1.164 - } - }, - { - "model": "feed.shape", - "pk": 203, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93812775111203, - "shape_pt_lon": -84.0484368995492, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.194 - } - }, - { - "model": "feed.shape", - "pk": 204, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93798100124938, - "shape_pt_lon": -84.0482768335369, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.218 - } - }, - { - "model": "feed.shape", - "pk": 205, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93768022319365, - "shape_pt_lon": -84.0479566982914, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.266 - } - }, - { - "model": "feed.shape", - "pk": 206, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93763286635998, - "shape_pt_lon": -84.0479111252314, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.274 - } - }, - { - "model": "feed.shape", - "pk": 207, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93758319780721, - "shape_pt_lon": -84.0478722576937, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.28 - } - }, - { - "model": "feed.shape", - "pk": 208, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93753870216281, - "shape_pt_lon": -84.0478404135935, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.287 - } - }, - { - "model": "feed.shape", - "pk": 209, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9374942065184, - "shape_pt_lon": -84.0478139339113, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.292 - } - }, - { - "model": "feed.shape", - "pk": 210, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93745024180206, - "shape_pt_lon": -84.0477923420699, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.298 - } - }, - { - "model": "feed.shape", - "pk": 211, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93735938216936, - "shape_pt_lon": -84.0477606919451, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.308 - } - }, - { - "model": "feed.shape", - "pk": 212, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93724916693389, - "shape_pt_lon": -84.0477606931305, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.32 - } - }, - { - "model": "feed.shape", - "pk": 213, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93715177760806, - "shape_pt_lon": -84.0477784341865, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.331 - } - }, - { - "model": "feed.shape", - "pk": 214, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93705710158646, - "shape_pt_lon": -84.0477987581936, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.342 - } - }, - { - "model": "feed.shape", - "pk": 215, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93672866697375, - "shape_pt_lon": -84.0479001602699, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.38 - } - }, - { - "model": "feed.shape", - "pk": 216, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93643873625598, - "shape_pt_lon": -84.0479940310818, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.414 - } - }, - { - "model": "feed.shape", - "pk": 217, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93605459371357, - "shape_pt_lon": -84.0481209106209, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.458 - } - }, - { - "model": "feed.shape", - "pk": 218, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93594785009141, - "shape_pt_lon": -84.0481497577059, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.471 - } - }, - { - "model": "feed.shape", - "pk": 219, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93584672067646, - "shape_pt_lon": -84.0481926863882, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.483 - } - }, - { - "model": "feed.shape", - "pk": 220, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93562414968525, - "shape_pt_lon": -84.0482902977589, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.51 - } - }, - { - "model": "feed.shape", - "pk": 221, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93555563302149, - "shape_pt_lon": -84.0483541402688, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.52 - } - }, - { - "model": "feed.shape", - "pk": 222, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93552377293763, - "shape_pt_lon": -84.048395536302, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.526 - } - }, - { - "model": "feed.shape", - "pk": 223, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93549323384328, - "shape_pt_lon": -84.0484359265072, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.531 - } - }, - { - "model": "feed.shape", - "pk": 224, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93545924101029, - "shape_pt_lon": -84.0485562630898, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.545 - } - }, - { - "model": "feed.shape", - "pk": 225, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93545410965148, - "shape_pt_lon": -84.0486084574091, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.551 - } - }, - { - "model": "feed.shape", - "pk": 226, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93545261101962, - "shape_pt_lon": -84.0486583047952, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.556 - } - }, - { - "model": "feed.shape", - "pk": 227, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93527714539185, - "shape_pt_lon": -84.0486381383254, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.576 - } - }, - { - "model": "feed.shape", - "pk": 228, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93529369875646, - "shape_pt_lon": -84.0483849370953, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.604 - } - }, - { - "model": "feed.shape", - "pk": 229, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93524845287248, - "shape_pt_lon": -84.0481250138729, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.633 - } - }, - { - "model": "feed.shape", - "pk": 230, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93510490695821, - "shape_pt_lon": -84.0476876510322, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.683 - } - }, - { - "model": "feed.shape", - "pk": 231, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93492309622952, - "shape_pt_lon": -84.0471049676225, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.75 - } - }, - { - "model": "feed.shape", - "pk": 232, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93478795156821, - "shape_pt_lon": -84.0463710454434, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.832 - } - }, - { - "model": "feed.shape", - "pk": 233, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93468712924438, - "shape_pt_lon": -84.0458810362687, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.887 - } - }, - { - "model": "feed.shape", - "pk": 234, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93461716476174, - "shape_pt_lon": -84.0456150110652, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.917 - } - }, - { - "model": "feed.shape", - "pk": 235, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93466453460568, - "shape_pt_lon": -84.045615726073, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.922 - } - }, - { - "model": "feed.shape", - "pk": 236, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93495411611772, - "shape_pt_lon": -84.0456098658075, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.954 - } - }, - { - "model": "feed.shape", - "pk": 237, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93501867239507, - "shape_pt_lon": -84.0455893287031, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.962 - } - }, - { - "model": "feed.shape", - "pk": 238, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93533255656777, - "shape_pt_lon": -84.0455828491321, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.996 - } - }, - { - "model": "feed.shape", - "pk": 239, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93558174215077, - "shape_pt_lon": -84.0455310895244, - "shape_pt_sequence": 87, - "shape_dist_traveled": 2.025 - } - }, - { - "model": "feed.shape", - "pk": 240, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93565354440517, - "shape_pt_lon": -84.0454587191306, - "shape_pt_sequence": 88, - "shape_dist_traveled": 2.036 - } - }, - { - "model": "feed.shape", - "pk": 241, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93601427775509, - "shape_pt_lon": -84.0453935565556, - "shape_pt_sequence": 89, - "shape_dist_traveled": 2.076 - } - }, - { - "model": "feed.shape", - "pk": 242, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93618250695711, - "shape_pt_lon": -84.0453574183472, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.095 - } - }, - { - "model": "feed.shape", - "pk": 243, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93624056084127, - "shape_pt_lon": -84.0453568135217, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.102 - } - }, - { - "model": "feed.shape", - "pk": 244, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93629795423082, - "shape_pt_lon": -84.0453642553238, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.108 - } - }, - { - "model": "feed.shape", - "pk": 245, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93659318251401, - "shape_pt_lon": -84.0455215059456, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.145 - } - }, - { - "model": "feed.shape", - "pk": 246, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93667976807258, - "shape_pt_lon": -84.0455703414396, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.156 - } - }, - { - "model": "feed.shape", - "pk": 247, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9367692395777, - "shape_pt_lon": -84.0455957359235, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.166 - } - }, - { - "model": "feed.shape", - "pk": 248, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93685293870503, - "shape_pt_lon": -84.0455879222361, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.176 - } - }, - { - "model": "feed.shape", - "pk": 249, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93694173624727, - "shape_pt_lon": -84.0455491295231, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.186 - } - }, - { - "model": "feed.shape", - "pk": 250, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93708123470739, - "shape_pt_lon": -84.0454446214555, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.206 - } - }, - { - "model": "feed.shape", - "pk": 251, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93724313131711, - "shape_pt_lon": -84.0452817159445, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.231 - } - }, - { - "model": "feed.shape", - "pk": 252, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93734607124923, - "shape_pt_lon": -84.0451254422096, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.251 - } - }, - { - "model": "feed.shape", - "pk": 253, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93748749351063, - "shape_pt_lon": -84.0448724740612, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.283 - } - }, - { - "model": "feed.shape", - "pk": 254, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93761860756564, - "shape_pt_lon": -84.0446484093239, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.312 - } - }, - { - "model": "feed.shape", - "pk": 255, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93781098243242, - "shape_pt_lon": -84.0443002302728, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.355 - } - }, - { - "model": "feed.shape", - "pk": 256, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93799146315684, - "shape_pt_lon": -84.0439934603325, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.395 - } - }, - { - "model": "feed.shape", - "pk": 257, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93810165004318, - "shape_pt_lon": -84.0438034580265, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.419 - } - }, - { - "model": "feed.shape", - "pk": 258, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93796407612903, - "shape_pt_lon": -84.0436169062427, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.444 - } - }, - { - "model": "feed.shape", - "pk": 259, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93791116339785, - "shape_pt_lon": -84.043444027742, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.464 - } - }, - { - "model": "feed.shape", - "pk": 260, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93788614994896, - "shape_pt_lon": -84.0432193842326, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.489 - } - }, - { - "model": "feed.shape", - "pk": 261, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93792655633902, - "shape_pt_lon": -84.0429361376045, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.52 - } - }, - { - "model": "feed.shape", - "pk": 262, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93800099196738, - "shape_pt_lon": -84.0424812505301, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.571 - } - }, - { - "model": "feed.shape", - "pk": 263, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93813818359375, - "shape_pt_lon": -84.0421772565051, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.607 - } - }, - { - "model": "feed.shape", - "pk": 264, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93816415907815, - "shape_pt_lon": -84.0419985184082, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.627 - } - }, - { - "model": "feed.shape", - "pk": 265, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9381545385288, - "shape_pt_lon": -84.0418510350607, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.643 - } - }, - { - "model": "feed.shape", - "pk": 266, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93812567687818, - "shape_pt_lon": -84.0417260160641, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.657 - } - }, - { - "model": "feed.shape", - "pk": 267, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93807564954973, - "shape_pt_lon": -84.0416527622632, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.667 - } - }, - { - "model": "feed.shape", - "pk": 268, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93804289664845, - "shape_pt_lon": -84.0416384252501, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.671 - } - }, - { - "model": "feed.shape", - "pk": 269, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93801311595451, - "shape_pt_lon": -84.0416361581774, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.675 - } - }, - { - "model": "feed.shape", - "pk": 270, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93792172067878, - "shape_pt_lon": -84.0416381115992, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.685 - } - }, - { - "model": "feed.shape", - "pk": 271, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93790247956499, - "shape_pt_lon": -84.0412122658535, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.731 - } - }, - { - "model": "feed.shape", - "pk": 272, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93789478311904, - "shape_pt_lon": -84.0410686893496, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.747 - } - }, - { - "model": "feed.shape", - "pk": 273, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93830046896954, - "shape_pt_lon": -84.040969095546, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.793 - } - }, - { - "model": "feed.shape", - "pk": 274, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93846168564775, - "shape_pt_lon": -84.0409298363785, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.812 - } - }, - { - "model": "feed.shape", - "pk": 275, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93868873033166, - "shape_pt_lon": -84.040967928104, - "shape_pt_sequence": 123, - "shape_dist_traveled": 2.837 - } - }, - { - "model": "feed.shape", - "pk": 276, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93884815398905, - "shape_pt_lon": -84.0411370173071, - "shape_pt_sequence": 124, - "shape_dist_traveled": 2.863 - } - }, - { - "model": "feed.shape", - "pk": 277, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93915383599336, - "shape_pt_lon": -84.0416568644267, - "shape_pt_sequence": 125, - "shape_dist_traveled": 2.929 - } - }, - { - "model": "feed.shape", - "pk": 278, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93928521203319, - "shape_pt_lon": -84.0417935755105, - "shape_pt_sequence": 126, - "shape_dist_traveled": 2.95 - } - }, - { - "model": "feed.shape", - "pk": 279, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93942977628924, - "shape_pt_lon": -84.0418876857024, - "shape_pt_sequence": 127, - "shape_dist_traveled": 2.969 - } - }, - { - "model": "feed.shape", - "pk": 280, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93950150662073, - "shape_pt_lon": -84.0419089725314, - "shape_pt_sequence": 128, - "shape_dist_traveled": 2.977 - } - }, - { - "model": "feed.shape", - "pk": 281, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93950371370814, - "shape_pt_lon": -84.0422428396408, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.014 - } - }, - { - "model": "feed.shape", - "pk": 282, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93948613333313, - "shape_pt_lon": -84.0425204684191, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.044 - } - }, - { - "model": "feed.shape", - "pk": 283, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93944529338017, - "shape_pt_lon": -84.0430246306461, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.1 - } - }, - { - "model": "feed.shape", - "pk": 284, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93942327481619, - "shape_pt_lon": -84.0433356324423, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.134 - } - }, - { - "model": "feed.shape", - "pk": 285, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93972442200525, - "shape_pt_lon": -84.0432655607324, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.168 - } - }, - { - "model": "feed.shape", - "pk": 286, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93978732393233, - "shape_pt_lon": -84.043299171515, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.176 - } - }, - { - "model": "feed.shape", - "pk": 287, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93981711902594, - "shape_pt_lon": -84.0433809579747, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.186 - } - }, - { - "model": "feed.shape", - "pk": 288, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93991974845217, - "shape_pt_lon": -84.0437596394605, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.229 - } - }, - { - "model": "feed.shape", - "pk": 289, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94007043205839, - "shape_pt_lon": -84.0443170698121, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.292 - } - }, - { - "model": "feed.shape", - "pk": 290, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94016533658292, - "shape_pt_lon": -84.0446744654815, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.332 - } - }, - { - "model": "feed.shape", - "pk": 291, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94027017298111, - "shape_pt_lon": -84.0448268343636, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.353 - } - }, - { - "model": "feed.shape", - "pk": 292, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94038169599758, - "shape_pt_lon": -84.045244089757, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.4 - } - }, - { - "model": "feed.shape", - "pk": 293, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94048873914792, - "shape_pt_lon": -84.045632855511, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.444 - } - }, - { - "model": "feed.shape", - "pk": 294, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94063882056966, - "shape_pt_lon": -84.045599244728, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.461 - } - }, - { - "model": "feed.shape", - "pk": 295, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94079662666821, - "shape_pt_lon": -84.0450681942005, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.522 - } - }, - { - "model": "feed.shape", - "pk": 296, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94095071185347, - "shape_pt_lon": -84.044750328054, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.561 - } - }, - { - "model": "feed.shape", - "pk": 297, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9410528605391, - "shape_pt_lon": -84.0446554341072, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.576 - } - }, - { - "model": "feed.shape", - "pk": 298, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94157411286451, - "shape_pt_lon": -84.04469185811, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.634 - } - }, - { - "model": "feed.shape", - "pk": 299, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94242227255298, - "shape_pt_lon": -84.0447474726987, - "shape_pt_sequence": 147, - "shape_dist_traveled": 3.728 - } - }, - { - "model": "feed.shape", - "pk": 300, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94283107241787, - "shape_pt_lon": -84.0447699014639, - "shape_pt_sequence": 148, - "shape_dist_traveled": 3.773 - } - }, - { - "model": "feed.shape", - "pk": 301, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94300697065598, - "shape_pt_lon": -84.0447350564938, - "shape_pt_sequence": 149, - "shape_dist_traveled": 3.793 - } - }, - { - "model": "feed.shape", - "pk": 302, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94326009234421, - "shape_pt_lon": -84.0446544775012, - "shape_pt_sequence": 150, - "shape_dist_traveled": 3.823 - } - }, - { - "model": "feed.shape", - "pk": 303, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94351468777105, - "shape_pt_lon": -84.0445407320727, - "shape_pt_sequence": 151, - "shape_dist_traveled": 3.853 - } - }, - { - "model": "feed.shape", - "pk": 304, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94366913468646, - "shape_pt_lon": -84.0444710421328, - "shape_pt_sequence": 152, - "shape_dist_traveled": 3.872 - } - }, - { - "model": "feed.shape", - "pk": 305, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9437999854876, - "shape_pt_lon": -84.0447541575134, - "shape_pt_sequence": 153, - "shape_dist_traveled": 3.906 - } - }, - { - "model": "feed.shape", - "pk": 306, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94388149907578, - "shape_pt_lon": -84.0448848261506, - "shape_pt_sequence": 154, - "shape_dist_traveled": 3.923 - } - }, - { - "model": "feed.shape", - "pk": 307, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94396600743452, - "shape_pt_lon": -84.0449552037605, - "shape_pt_sequence": 155, - "shape_dist_traveled": 3.935 - } - }, - { - "model": "feed.shape", - "pk": 308, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94433419150155, - "shape_pt_lon": -84.0449932717292, - "shape_pt_sequence": 156, - "shape_dist_traveled": 3.976 - } - }, - { - "model": "feed.shape", - "pk": 309, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94457398813642, - "shape_pt_lon": -84.0450138149367, - "shape_pt_sequence": 157, - "shape_dist_traveled": 4.003 - } - }, - { - "model": "feed.shape", - "pk": 310, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94495221337372, - "shape_pt_lon": -84.045010504636, - "shape_pt_sequence": 158, - "shape_dist_traveled": 4.045 - } - }, - { - "model": "feed.shape", - "pk": 311, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94503698779598, - "shape_pt_lon": -84.0450833311997, - "shape_pt_sequence": 159, - "shape_dist_traveled": 4.057 - } - }, - { - "model": "feed.shape", - "pk": 312, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94506796311185, - "shape_pt_lon": -84.045389534011, - "shape_pt_sequence": 160, - "shape_dist_traveled": 4.091 - } - }, - { - "model": "feed.shape", - "pk": 313, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94509404758507, - "shape_pt_lon": -84.0455020842335, - "shape_pt_sequence": 161, - "shape_dist_traveled": 4.104 - } - }, - { - "model": "feed.shape", - "pk": 314, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94516741015652, - "shape_pt_lon": -84.0455418078417, - "shape_pt_sequence": 162, - "shape_dist_traveled": 4.113 - } - }, - { - "model": "feed.shape", - "pk": 315, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94569411437748, - "shape_pt_lon": -84.0455036631251, - "shape_pt_sequence": 163, - "shape_dist_traveled": 4.171 - } - }, - { - "model": "feed.shape", - "pk": 316, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94576235686358, - "shape_pt_lon": -84.0454645549726, - "shape_pt_sequence": 164, - "shape_dist_traveled": 4.18 - } - }, - { - "model": "feed.shape", - "pk": 317, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94586939851089, - "shape_pt_lon": -84.0452550477597, - "shape_pt_sequence": 165, - "shape_dist_traveled": 4.206 - } - }, - { - "model": "feed.shape", - "pk": 318, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94594554151604, - "shape_pt_lon": -84.0451777429595, - "shape_pt_sequence": 166, - "shape_dist_traveled": 4.218 - } - }, - { - "model": "feed.shape", - "pk": 319, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94629085058927, - "shape_pt_lon": -84.0451530949856, - "shape_pt_sequence": 167, - "shape_dist_traveled": 4.256 - } - }, - { - "model": "feed.shape", - "pk": 320, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94638848955421, - "shape_pt_lon": -84.0451636656039, - "shape_pt_sequence": 168, - "shape_dist_traveled": 4.267 - } - }, - { - "model": "feed.shape", - "pk": 321, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94644918315917, - "shape_pt_lon": -84.0452028781838, - "shape_pt_sequence": 169, - "shape_dist_traveled": 4.275 - } - }, - { - "model": "feed.shape", - "pk": 322, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94648865740507, - "shape_pt_lon": -84.0452462913844, - "shape_pt_sequence": 170, - "shape_dist_traveled": 4.281 - } - }, - { - "model": "feed.shape", - "pk": 323, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93551240308205, - "shape_pt_lon": -84.052232462037, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "feed.shape", - "pk": 324, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93553038682294, - "shape_pt_lon": -84.0523024805564, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.008 - } - }, - { - "model": "feed.shape", - "pk": 325, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93554317941351, - "shape_pt_lon": -84.0523354193901, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.012 - } - }, - { - "model": "feed.shape", - "pk": 326, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93560006968185, - "shape_pt_lon": -84.0523952582046, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.021 - } - }, - { - "model": "feed.shape", - "pk": 327, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93565298376728, - "shape_pt_lon": -84.0524284133704, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.028 - } - }, - { - "model": "feed.shape", - "pk": 328, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93571914349433, - "shape_pt_lon": -84.0524404498132, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.035 - } - }, - { - "model": "feed.shape", - "pk": 329, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93583719162457, - "shape_pt_lon": -84.0524171180445, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "feed.shape", - "pk": 330, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93594643029256, - "shape_pt_lon": -84.0523801266021, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.061 - } - }, - { - "model": "feed.shape", - "pk": 331, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93608834513962, - "shape_pt_lon": -84.0523343631691, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.078 - } - }, - { - "model": "feed.shape", - "pk": 332, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93620422239772, - "shape_pt_lon": -84.0522977078958, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.091 - } - }, - { - "model": "feed.shape", - "pk": 333, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.936293049843, - "shape_pt_lon": -84.0522711599884, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.101 - } - }, - { - "model": "feed.shape", - "pk": 334, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93639226353531, - "shape_pt_lon": -84.0522405229359, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.113 - } - }, - { - "model": "feed.shape", - "pk": 335, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93653093553953, - "shape_pt_lon": -84.0522367457551, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.128 - } - }, - { - "model": "feed.shape", - "pk": 336, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93659589447438, - "shape_pt_lon": -84.0522590055211, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.136 - } - }, - { - "model": "feed.shape", - "pk": 337, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93661615058734, - "shape_pt_lon": -84.0523412639074, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.145 - } - }, - { - "model": "feed.shape", - "pk": 338, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9365876265418, - "shape_pt_lon": -84.0524260404882, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.155 - } - }, - { - "model": "feed.shape", - "pk": 339, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9365355393877, - "shape_pt_lon": -84.0524499625703, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.161 - } - }, - { - "model": "feed.shape", - "pk": 340, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93644867420793, - "shape_pt_lon": -84.0524473462339, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.171 - } - }, - { - "model": "feed.shape", - "pk": 341, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93635813864212, - "shape_pt_lon": -84.0524384481957, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.181 - } - }, - { - "model": "feed.shape", - "pk": 342, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93632957313295, - "shape_pt_lon": -84.052426075736, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.184 - } - }, - { - "model": "feed.shape", - "pk": 343, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93630067737655, - "shape_pt_lon": -84.0524254379402, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.188 - } - }, - { - "model": "feed.shape", - "pk": 344, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9361767385198, - "shape_pt_lon": -84.0524455386407, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.201 - } - }, - { - "model": "feed.shape", - "pk": 345, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93606938255121, - "shape_pt_lon": -84.0524692189919, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.214 - } - }, - { - "model": "feed.shape", - "pk": 346, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9358662876061, - "shape_pt_lon": -84.0525134237392, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.237 - } - }, - { - "model": "feed.shape", - "pk": 347, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93580530982546, - "shape_pt_lon": -84.0525277028597, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.244 - } - }, - { - "model": "feed.shape", - "pk": 348, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93571720324209, - "shape_pt_lon": -84.0525351455981, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.253 - } - }, - { - "model": "feed.shape", - "pk": 349, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93562932790421, - "shape_pt_lon": -84.0525170973821, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.263 - } - }, - { - "model": "feed.shape", - "pk": 350, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93552958615174, - "shape_pt_lon": -84.0524334827489, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.278 - } - }, - { - "model": "feed.shape", - "pk": 351, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93545575661828, - "shape_pt_lon": -84.052350672979, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.29 - } - }, - { - "model": "feed.shape", - "pk": 352, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93541638163459, - "shape_pt_lon": -84.0522446182099, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.302 - } - }, - { - "model": "feed.shape", - "pk": 353, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93541236377893, - "shape_pt_lon": -84.0520977731443, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.318 - } - }, - { - "model": "feed.shape", - "pk": 354, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9353609350822, - "shape_pt_lon": -84.0517673714683, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.355 - } - }, - { - "model": "feed.shape", - "pk": 355, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93533537431955, - "shape_pt_lon": -84.0515957473315, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.374 - } - }, - { - "model": "feed.shape", - "pk": 356, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93527832074849, - "shape_pt_lon": -84.0514578761312, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.39 - } - }, - { - "model": "feed.shape", - "pk": 357, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93537394568805, - "shape_pt_lon": -84.051051560594, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.436 - } - }, - { - "model": "feed.shape", - "pk": 358, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93548509593826, - "shape_pt_lon": -84.0506488451042, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.482 - } - }, - { - "model": "feed.shape", - "pk": 359, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93555656904013, - "shape_pt_lon": -84.0503446866737, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.516 - } - }, - { - "model": "feed.shape", - "pk": 360, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93560639042598, - "shape_pt_lon": -84.0501407351937, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.539 - } - }, - { - "model": "feed.shape", - "pk": 361, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93564014039442, - "shape_pt_lon": -84.0499188359838, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.564 - } - }, - { - "model": "feed.shape", - "pk": 362, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93555237106771, - "shape_pt_lon": -84.0495240741516, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.608 - } - }, - { - "model": "feed.shape", - "pk": 363, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9355127171103, - "shape_pt_lon": -84.0493169635181, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.631 - } - }, - { - "model": "feed.shape", - "pk": 364, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93544759669272, - "shape_pt_lon": -84.0490255135247, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.664 - } - }, - { - "model": "feed.shape", - "pk": 365, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93538988817417, - "shape_pt_lon": -84.0487899823799, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.691 - } - }, - { - "model": "feed.shape", - "pk": 366, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93537301317815, - "shape_pt_lon": -84.0486447689264, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.707 - } - }, - { - "model": "feed.shape", - "pk": 367, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93527658461171, - "shape_pt_lon": -84.0486366108669, - "shape_pt_sequence": 44, - "shape_dist_traveled": 0.718 - } - }, - { - "model": "feed.shape", - "pk": 368, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93529274995559, - "shape_pt_lon": -84.0483784246656, - "shape_pt_sequence": 45, - "shape_dist_traveled": 0.746 - } - }, - { - "model": "feed.shape", - "pk": 369, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93524694618673, - "shape_pt_lon": -84.0481238929513, - "shape_pt_sequence": 46, - "shape_dist_traveled": 0.774 - } - }, - { - "model": "feed.shape", - "pk": 370, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93514165787212, - "shape_pt_lon": -84.0478057230236, - "shape_pt_sequence": 47, - "shape_dist_traveled": 0.811 - } - }, - { - "model": "feed.shape", - "pk": 371, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93500316815773, - "shape_pt_lon": -84.0473807827294, - "shape_pt_sequence": 48, - "shape_dist_traveled": 0.86 - } - }, - { - "model": "feed.shape", - "pk": 372, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93492049042863, - "shape_pt_lon": -84.0470859236543, - "shape_pt_sequence": 49, - "shape_dist_traveled": 0.894 - } - }, - { - "model": "feed.shape", - "pk": 373, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93479657132182, - "shape_pt_lon": -84.0464195689003, - "shape_pt_sequence": 50, - "shape_dist_traveled": 0.968 - } - }, - { - "model": "feed.shape", - "pk": 374, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93468604728109, - "shape_pt_lon": -84.0458857020311, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.028 - } - }, - { - "model": "feed.shape", - "pk": 375, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9346124699569, - "shape_pt_lon": -84.0456137031377, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.059 - } - }, - { - "model": "feed.shape", - "pk": 376, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93481022852054, - "shape_pt_lon": -84.0456081393267, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.081 - } - }, - { - "model": "feed.shape", - "pk": 377, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93495379560579, - "shape_pt_lon": -84.0456083692307, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.096 - } - }, - { - "model": "feed.shape", - "pk": 378, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93502122053513, - "shape_pt_lon": -84.0455873976348, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.104 - } - }, - { - "model": "feed.shape", - "pk": 379, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93525069991888, - "shape_pt_lon": -84.0455815527507, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.13 - } - }, - { - "model": "feed.shape", - "pk": 380, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93533621207088, - "shape_pt_lon": -84.0455791055204, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.139 - } - }, - { - "model": "feed.shape", - "pk": 381, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9355796939962, - "shape_pt_lon": -84.0455277100451, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.167 - } - }, - { - "model": "feed.shape", - "pk": 382, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93566141737569, - "shape_pt_lon": -84.0454545424224, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.179 - } - }, - { - "model": "feed.shape", - "pk": 383, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93593880374486, - "shape_pt_lon": -84.0454033749615, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.21 - } - }, - { - "model": "feed.shape", - "pk": 384, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93617987563359, - "shape_pt_lon": -84.0453561940705, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.237 - } - }, - { - "model": "feed.shape", - "pk": 385, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93629878421235, - "shape_pt_lon": -84.0453622217276, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.25 - } - }, - { - "model": "feed.shape", - "pk": 386, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93647074793075, - "shape_pt_lon": -84.0454544077961, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.272 - } - }, - { - "model": "feed.shape", - "pk": 387, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9366470154013, - "shape_pt_lon": -84.0455491574187, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.294 - } - }, - { - "model": "feed.shape", - "pk": 388, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93667996169247, - "shape_pt_lon": -84.0455671051487, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.298 - } - }, - { - "model": "feed.shape", - "pk": 389, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93677076487081, - "shape_pt_lon": -84.0455923951325, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.308 - } - }, - { - "model": "feed.shape", - "pk": 390, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93685019478803, - "shape_pt_lon": -84.0455875957907, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.317 - } - }, - { - "model": "feed.shape", - "pk": 391, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93693939078323, - "shape_pt_lon": -84.0455459896891, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.328 - } - }, - { - "model": "feed.shape", - "pk": 392, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93708216879507, - "shape_pt_lon": -84.0454405657035, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.348 - } - }, - { - "model": "feed.shape", - "pk": 393, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9372417505605, - "shape_pt_lon": -84.0452791956738, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.373 - } - }, - { - "model": "feed.shape", - "pk": 394, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93733175001592, - "shape_pt_lon": -84.0451437718914, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.391 - } - }, - { - "model": "feed.shape", - "pk": 395, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93747880276838, - "shape_pt_lon": -84.0448843455207, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.423 - } - }, - { - "model": "feed.shape", - "pk": 396, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93759383837854, - "shape_pt_lon": -84.0446848467803, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.449 - } - }, - { - "model": "feed.shape", - "pk": 397, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93775722150572, - "shape_pt_lon": -84.0443877220931, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.486 - } - }, - { - "model": "feed.shape", - "pk": 398, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93792650160209, - "shape_pt_lon": -84.0440980878075, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.523 - } - }, - { - "model": "feed.shape", - "pk": 399, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93809919166979, - "shape_pt_lon": -84.0437999865192, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.561 - } - }, - { - "model": "feed.shape", - "pk": 400, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93796097853527, - "shape_pt_lon": -84.0436147985756, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.586 - } - }, - { - "model": "feed.shape", - "pk": 401, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93791115773413, - "shape_pt_lon": -84.0434434787742, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.606 - } - }, - { - "model": "feed.shape", - "pk": 402, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9378853721441, - "shape_pt_lon": -84.0432188653814, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.63 - } - }, - { - "model": "feed.shape", - "pk": 403, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93792474683056, - "shape_pt_lon": -84.0429382281456, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.661 - } - }, - { - "model": "feed.shape", - "pk": 404, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93798421082772, - "shape_pt_lon": -84.0425692976739, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.702 - } - }, - { - "model": "feed.shape", - "pk": 405, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93799717971221, - "shape_pt_lon": -84.0424760119919, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.713 - } - }, - { - "model": "feed.shape", - "pk": 406, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93813619639644, - "shape_pt_lon": -84.0421774270254, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.749 - } - }, - { - "model": "feed.shape", - "pk": 407, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93816151133474, - "shape_pt_lon": -84.0419972282554, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.769 - } - }, - { - "model": "feed.shape", - "pk": 408, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93815347569085, - "shape_pt_lon": -84.0418487515775, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.785 - } - }, - { - "model": "feed.shape", - "pk": 409, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93812695789198, - "shape_pt_lon": -84.0417223014224, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.799 - } - }, - { - "model": "feed.shape", - "pk": 410, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93807552975984, - "shape_pt_lon": -84.041649694696, - "shape_pt_sequence": 87, - "shape_dist_traveled": 1.809 - } - }, - { - "model": "feed.shape", - "pk": 411, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93801445884308, - "shape_pt_lon": -84.0416317469654, - "shape_pt_sequence": 88, - "shape_dist_traveled": 1.816 - } - }, - { - "model": "feed.shape", - "pk": 412, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93791897942971, - "shape_pt_lon": -84.0416350505556, - "shape_pt_sequence": 89, - "shape_dist_traveled": 1.827 - } - }, - { - "model": "feed.shape", - "pk": 413, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93789540463778, - "shape_pt_lon": -84.0410687729965, - "shape_pt_sequence": 90, - "shape_dist_traveled": 1.889 - } - }, - { - "model": "feed.shape", - "pk": 414, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93846102257875, - "shape_pt_lon": -84.0409278059346, - "shape_pt_sequence": 91, - "shape_dist_traveled": 1.953 - } - }, - { - "model": "feed.shape", - "pk": 415, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93868770509072, - "shape_pt_lon": -84.0409636843222, - "shape_pt_sequence": 92, - "shape_dist_traveled": 1.979 - } - }, - { - "model": "feed.shape", - "pk": 416, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93884702967763, - "shape_pt_lon": -84.0411317795776, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.004 - } - }, - { - "model": "feed.shape", - "pk": 417, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93915009329333, - "shape_pt_lon": -84.0416545090707, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.071 - } - }, - { - "model": "feed.shape", - "pk": 418, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93928437269097, - "shape_pt_lon": -84.0417940169538, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.092 - } - }, - { - "model": "feed.shape", - "pk": 419, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93942339095397, - "shape_pt_lon": -84.0418844077991, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.11 - } - }, - { - "model": "feed.shape", - "pk": 420, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93949992907343, - "shape_pt_lon": -84.0419066090587, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.119 - } - }, - { - "model": "feed.shape", - "pk": 421, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93949992907343, - "shape_pt_lon": -84.0422475569833, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.156 - } - }, - { - "model": "feed.shape", - "pk": 422, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.939437, - "shape_pt_lon": -84.043074, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.187 - } - }, - { - "model": "feed.shape", - "pk": 423, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9394249524573, - "shape_pt_lon": -84.0433290766316, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.275 - } - }, - { - "model": "feed.shape", - "pk": 424, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93972312001197, - "shape_pt_lon": -84.0432616940963, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.309 - } - }, - { - "model": "feed.shape", - "pk": 425, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9397847344284, - "shape_pt_lon": -84.0432938739159, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.317 - } - }, - { - "model": "feed.shape", - "pk": 426, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9398186343525, - "shape_pt_lon": -84.0433818049407, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.327 - } - }, - { - "model": "feed.shape", - "pk": 427, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93998824672434, - "shape_pt_lon": -84.0440308770623, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.401 - } - }, - { - "model": "feed.shape", - "pk": 428, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94015974971341, - "shape_pt_lon": -84.0446658158992, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.473 - } - }, - { - "model": "feed.shape", - "pk": 429, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94026910203425, - "shape_pt_lon": -84.0448245474961, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.494 - } - }, - { - "model": "feed.shape", - "pk": 430, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94036490303632, - "shape_pt_lon": -84.0451873514683, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.535 - } - }, - { - "model": "feed.shape", - "pk": 431, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94048769323097, - "shape_pt_lon": -84.0456290389484, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.586 - } - }, - { - "model": "feed.shape", - "pk": 432, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94063635155576, - "shape_pt_lon": -84.0455931434884, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.602 - } - }, - { - "model": "feed.shape", - "pk": 433, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94079234514589, - "shape_pt_lon": -84.0450690355552, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.662 - } - }, - { - "model": "feed.shape", - "pk": 434, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94094918383372, - "shape_pt_lon": -84.0447505513004, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.701 - } - }, - { - "model": "feed.shape", - "pk": 435, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94104532842372, - "shape_pt_lon": -84.0446520351469, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.717 - } - }, - { - "model": "feed.shape", - "pk": 436, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94113081479986, - "shape_pt_lon": -84.0446571934664, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.726 - } - }, - { - "model": "feed.shape", - "pk": 437, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94144321527622, - "shape_pt_lon": -84.0446770863329, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.761 - } - }, - { - "model": "feed.shape", - "pk": 438, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94195499816524, - "shape_pt_lon": -84.0447142198439, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.817 - } - }, - { - "model": "feed.shape", - "pk": 439, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94233948335795, - "shape_pt_lon": -84.0447371192727, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.86 - } - }, - { - "model": "feed.shape", - "pk": 440, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94270561942093, - "shape_pt_lon": -84.0447624203313, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.901 - } - }, - { - "model": "feed.shape", - "pk": 441, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94282741926446, - "shape_pt_lon": -84.0447662997461, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.914 - } - }, - { - "model": "feed.shape", - "pk": 442, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94300876520552, - "shape_pt_lon": -84.0447342405736, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.934 - } - }, - { - "model": "feed.shape", - "pk": 443, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94322619282253, - "shape_pt_lon": -84.044661630678, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.96 - } - }, - { - "model": "feed.shape", - "pk": 444, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94336188947768, - "shape_pt_lon": -84.0446070756693, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.976 - } - }, - { - "model": "feed.shape", - "pk": 445, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94366938860733, - "shape_pt_lon": -84.0444664621215, - "shape_pt_sequence": 122, - "shape_dist_traveled": 3.013 - } - }, - { - "model": "feed.shape", - "pk": 446, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94379763572232, - "shape_pt_lon": -84.0447499441632, - "shape_pt_sequence": 123, - "shape_dist_traveled": 3.047 - } - }, - { - "model": "feed.shape", - "pk": 447, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94387703073651, - "shape_pt_lon": -84.0448781808515, - "shape_pt_sequence": 124, - "shape_dist_traveled": 3.064 - } - }, - { - "model": "feed.shape", - "pk": 448, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94396544788927, - "shape_pt_lon": -84.0449496270056, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.077 - } - }, - { - "model": "feed.shape", - "pk": 449, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94454435151914, - "shape_pt_lon": -84.0450074182673, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.141 - } - }, - { - "model": "feed.shape", - "pk": 450, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94494922686726, - "shape_pt_lon": -84.0450098494603, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.186 - } - }, - { - "model": "feed.shape", - "pk": 451, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94503488859595, - "shape_pt_lon": -84.0450726102459, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.197 - } - }, - { - "model": "feed.shape", - "pk": 452, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94506635931216, - "shape_pt_lon": -84.0453994971357, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.233 - } - }, - { - "model": "feed.shape", - "pk": 453, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94509373573383, - "shape_pt_lon": -84.0454999143925, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.245 - } - }, - { - "model": "feed.shape", - "pk": 454, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94516587977827, - "shape_pt_lon": -84.0455384857143, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.254 - } - }, - { - "model": "feed.shape", - "pk": 455, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94569334489241, - "shape_pt_lon": -84.045501640108, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.312 - } - }, - { - "model": "feed.shape", - "pk": 456, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94576818120904, - "shape_pt_lon": -84.0454572011088, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.322 - } - }, - { - "model": "feed.shape", - "pk": 457, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94581918999885, - "shape_pt_lon": -84.0453571624431, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.334 - } - }, - { - "model": "feed.shape", - "pk": 458, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94586821736523, - "shape_pt_lon": -84.0452494124261, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.347 - } - }, - { - "model": "feed.shape", - "pk": 459, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94594549545337, - "shape_pt_lon": -84.0451749917014, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.359 - } - }, - { - "model": "feed.shape", - "pk": 460, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94628917517751, - "shape_pt_lon": -84.045149887399, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.397 - } - }, - { - "model": "feed.shape", - "pk": 461, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.946387887887, - "shape_pt_lon": -84.0451617577946, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.408 - } - }, - { - "model": "feed.shape", - "pk": 462, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94644528982524, - "shape_pt_lon": -84.0451994142665, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.416 - } - }, - { - "model": "feed.shape", - "pk": 463, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94649012442296, - "shape_pt_lon": -84.0452511227568, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.423 - } - }, - { - "model": "feed.shape", - "pk": 464, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93551129613598, - "shape_pt_lon": -84.0522203008732, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "feed.shape", - "pk": 465, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9355310767404, - "shape_pt_lon": -84.0522927059177, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.008 - } - }, - { - "model": "feed.shape", - "pk": 466, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93554722789095, - "shape_pt_lon": -84.0523347118824, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.013 - } - }, - { - "model": "feed.shape", - "pk": 467, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93559998927965, - "shape_pt_lon": -84.0523891977038, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.022 - } - }, - { - "model": "feed.shape", - "pk": 468, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93565665681396, - "shape_pt_lon": -84.0524266115309, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.029 - } - }, - { - "model": "feed.shape", - "pk": 469, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93572400544303, - "shape_pt_lon": -84.0524387877407, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.037 - } - }, - { - "model": "feed.shape", - "pk": 470, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93583791088976, - "shape_pt_lon": -84.0524163085106, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "feed.shape", - "pk": 471, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93589348533485, - "shape_pt_lon": -84.0524004247557, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.056 - } - }, - { - "model": "feed.shape", - "pk": 472, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93594773879152, - "shape_pt_lon": -84.0523801824105, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.062 - } - }, - { - "model": "feed.shape", - "pk": 473, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93618639604332, - "shape_pt_lon": -84.052302832233, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.09 - } - }, - { - "model": "feed.shape", - "pk": 474, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93639684624757, - "shape_pt_lon": -84.0522406782275, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.114 - } - }, - { - "model": "feed.shape", - "pk": 475, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93653551980098, - "shape_pt_lon": -84.0522361299255, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.13 - } - }, - { - "model": "feed.shape", - "pk": 476, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93673682209909, - "shape_pt_lon": -84.0523076585187, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.153 - } - }, - { - "model": "feed.shape", - "pk": 477, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93708559662569, - "shape_pt_lon": -84.05243186663, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.194 - } - }, - { - "model": "feed.shape", - "pk": 478, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93733577696727, - "shape_pt_lon": -84.0525288520072, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.224 - } - }, - { - "model": "feed.shape", - "pk": 479, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93757969853555, - "shape_pt_lon": -84.0526438746271, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.253 - } - }, - { - "model": "feed.shape", - "pk": 480, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9377485826659, - "shape_pt_lon": -84.0527043524954, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.273 - } - }, - { - "model": "feed.shape", - "pk": 481, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93779188190045, - "shape_pt_lon": -84.0527107981436, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.278 - } - }, - { - "model": "feed.shape", - "pk": 482, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93787132360124, - "shape_pt_lon": -84.0527199326082, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.287 - } - }, - { - "model": "feed.shape", - "pk": 483, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93795076530203, - "shape_pt_lon": -84.0527243732062, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.296 - } - }, - { - "model": "feed.shape", - "pk": 484, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93802242474458, - "shape_pt_lon": -84.0527168419396, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.304 - } - }, - { - "model": "feed.shape", - "pk": 485, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93809408418712, - "shape_pt_lon": -84.0527036109785, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.312 - } - }, - { - "model": "feed.shape", - "pk": 486, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93815622170643, - "shape_pt_lon": -84.0526341385986, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.322 - } - }, - { - "model": "feed.shape", - "pk": 487, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93824866125399, - "shape_pt_lon": -84.0524441849862, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.345 - } - }, - { - "model": "feed.shape", - "pk": 488, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93840212874288, - "shape_pt_lon": -84.0521210493447, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.385 - } - }, - { - "model": "feed.shape", - "pk": 489, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93859022704029, - "shape_pt_lon": -84.0518711468269, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.419 - } - }, - { - "model": "feed.shape", - "pk": 490, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9387164365478, - "shape_pt_lon": -84.0517146035903, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.441 - } - }, - { - "model": "feed.shape", - "pk": 491, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93883769238516, - "shape_pt_lon": -84.0515516901066, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.463 - } - }, - { - "model": "feed.shape", - "pk": 492, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93890538473733, - "shape_pt_lon": -84.0514467461262, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.477 - } - }, - { - "model": "feed.shape", - "pk": 493, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93897774723731, - "shape_pt_lon": -84.051298218969, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.495 - } - }, - { - "model": "feed.shape", - "pk": 494, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93901864778466, - "shape_pt_lon": -84.0511281313016, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.514 - } - }, - { - "model": "feed.shape", - "pk": 495, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93905404247567, - "shape_pt_lon": -84.0509181170952, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.538 - } - }, - { - "model": "feed.shape", - "pk": 496, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93908393146568, - "shape_pt_lon": -84.0503591447661, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.599 - } - }, - { - "model": "feed.shape", - "pk": 497, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93910272348104, - "shape_pt_lon": -84.0501183551865, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.626 - } - }, - { - "model": "feed.shape", - "pk": 498, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93910706388403, - "shape_pt_lon": -84.0499402779348, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.645 - } - }, - { - "model": "feed.shape", - "pk": 499, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93910711111161, - "shape_pt_lon": -84.0497648828928, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.664 - } - }, - { - "model": "feed.shape", - "pk": 500, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93906715286185, - "shape_pt_lon": -84.0496439745831, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.678 - } - }, - { - "model": "feed.shape", - "pk": 501, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93897699483947, - "shape_pt_lon": -84.0494999920866, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.697 - } - }, - { - "model": "feed.shape", - "pk": 502, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93879865248422, - "shape_pt_lon": -84.0492839130465, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.728 - } - }, - { - "model": "feed.shape", - "pk": 503, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93852631535243, - "shape_pt_lon": -84.0489259634067, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.777 - } - }, - { - "model": "feed.shape", - "pk": 504, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9383125595628, - "shape_pt_lon": -84.0486415140485, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.817 - } - }, - { - "model": "feed.shape", - "pk": 505, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93816149920894, - "shape_pt_lon": -84.0484645585026, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.842 - } - }, - { - "model": "feed.shape", - "pk": 506, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93801276292967, - "shape_pt_lon": -84.0483041187788, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.866 - } - }, - { - "model": "feed.shape", - "pk": 507, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93767314890347, - "shape_pt_lon": -84.0479456361923, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.921 - } - }, - { - "model": "feed.shape", - "pk": 508, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93762896738312, - "shape_pt_lon": -84.0479035036496, - "shape_pt_sequence": 44, - "shape_dist_traveled": 0.927 - } - }, - { - "model": "feed.shape", - "pk": 509, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9375818136517, - "shape_pt_lon": -84.0478664002497, - "shape_pt_sequence": 45, - "shape_dist_traveled": 0.934 - } - }, - { - "model": "feed.shape", - "pk": 510, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9375407094932, - "shape_pt_lon": -84.0478370279249, - "shape_pt_sequence": 46, - "shape_dist_traveled": 0.94 - } - }, - { - "model": "feed.shape", - "pk": 511, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93749795410686, - "shape_pt_lon": -84.0478110083611, - "shape_pt_sequence": 47, - "shape_dist_traveled": 0.945 - } - }, - { - "model": "feed.shape", - "pk": 512, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93745496587906, - "shape_pt_lon": -84.0477901145765, - "shape_pt_sequence": 48, - "shape_dist_traveled": 0.95 - } - }, - { - "model": "feed.shape", - "pk": 513, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93736508273494, - "shape_pt_lon": -84.0477598330601, - "shape_pt_sequence": 49, - "shape_dist_traveled": 0.961 - } - }, - { - "model": "feed.shape", - "pk": 514, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93726069019733, - "shape_pt_lon": -84.047759267964, - "shape_pt_sequence": 50, - "shape_dist_traveled": 0.972 - } - }, - { - "model": "feed.shape", - "pk": 515, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93707479279145, - "shape_pt_lon": -84.047793713066, - "shape_pt_sequence": 51, - "shape_dist_traveled": 0.993 - } - }, - { - "model": "feed.shape", - "pk": 516, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93681544721791, - "shape_pt_lon": -84.0478715216077, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.023 - } - }, - { - "model": "feed.shape", - "pk": 517, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93657305173134, - "shape_pt_lon": -84.0479476285628, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.051 - } - }, - { - "model": "feed.shape", - "pk": 518, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93622234344519, - "shape_pt_lon": -84.0480642553351, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.092 - } - }, - { - "model": "feed.shape", - "pk": 519, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93602464016541, - "shape_pt_lon": -84.0481251956082, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.115 - } - }, - { - "model": "feed.shape", - "pk": 520, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93585590049247, - "shape_pt_lon": -84.0481829479595, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.135 - } - }, - { - "model": "feed.shape", - "pk": 521, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9357089398831, - "shape_pt_lon": -84.0482522936584, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.153 - } - }, - { - "model": "feed.shape", - "pk": 522, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93563189742607, - "shape_pt_lon": -84.0482869664637, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.162 - } - }, - { - "model": "feed.shape", - "pk": 523, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93556048694849, - "shape_pt_lon": -84.0483531600847, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.173 - } - }, - { - "model": "feed.shape", - "pk": 524, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93549839086817, - "shape_pt_lon": -84.048435114092, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.184 - } - }, - { - "model": "feed.shape", - "pk": 525, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93546527295384, - "shape_pt_lon": -84.0485569944104, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.198 - } - }, - { - "model": "feed.shape", - "pk": 526, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9354549236054, - "shape_pt_lon": -84.0486547088036, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.209 - } - }, - { - "model": "feed.shape", - "pk": 527, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93528001900853, - "shape_pt_lon": -84.048634745016, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.228 - } - }, - { - "model": "feed.shape", - "pk": 528, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93529761291067, - "shape_pt_lon": -84.0483794267626, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.256 - } - }, - { - "model": "feed.shape", - "pk": 529, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9352527346308, - "shape_pt_lon": -84.0481286733116, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.284 - } - }, - { - "model": "feed.shape", - "pk": 530, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93512765815873, - "shape_pt_lon": -84.0477461762194, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.328 - } - }, - { - "model": "feed.shape", - "pk": 531, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93492703280895, - "shape_pt_lon": -84.0471055797031, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.402 - } - }, - { - "model": "feed.shape", - "pk": 532, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93478949058113, - "shape_pt_lon": -84.046354626689, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.486 - } - }, - { - "model": "feed.shape", - "pk": 533, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93469070939338, - "shape_pt_lon": -84.0458746565008, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.539 - } - }, - { - "model": "feed.shape", - "pk": 534, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93462060674132, - "shape_pt_lon": -84.0456143293, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.569 - } - }, - { - "model": "feed.shape", - "pk": 535, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93489289845325, - "shape_pt_lon": -84.0456070252698, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.599 - } - }, - { - "model": "feed.shape", - "pk": 536, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93495950947043, - "shape_pt_lon": -84.045606154414, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.606 - } - }, - { - "model": "feed.shape", - "pk": 537, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93502573261312, - "shape_pt_lon": -84.0455877894747, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.614 - } - }, - { - "model": "feed.shape", - "pk": 538, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93533984703067, - "shape_pt_lon": -84.0455793808645, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.649 - } - }, - { - "model": "feed.shape", - "pk": 539, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93553106245252, - "shape_pt_lon": -84.0455366983597, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.67 - } - }, - { - "model": "feed.shape", - "pk": 540, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93558489672501, - "shape_pt_lon": -84.0455256779408, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.677 - } - }, - { - "model": "feed.shape", - "pk": 541, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93566584972937, - "shape_pt_lon": -84.0454519050346, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.689 - } - }, - { - "model": "feed.shape", - "pk": 542, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93603020143902, - "shape_pt_lon": -84.0453870153627, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.73 - } - }, - { - "model": "feed.shape", - "pk": 543, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93619941008339, - "shape_pt_lon": -84.0453504149565, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.749 - } - }, - { - "model": "feed.shape", - "pk": 544, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93630011253566, - "shape_pt_lon": -84.0453617663184, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.76 - } - }, - { - "model": "feed.shape", - "pk": 545, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93651948121636, - "shape_pt_lon": -84.0454755016038, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.787 - } - }, - { - "model": "feed.shape", - "pk": 546, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93668368683727, - "shape_pt_lon": -84.0455653411938, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.808 - } - }, - { - "model": "feed.shape", - "pk": 547, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93677258981834, - "shape_pt_lon": -84.045589182648, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.818 - } - }, - { - "model": "feed.shape", - "pk": 548, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93685310570445, - "shape_pt_lon": -84.0455874796866, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.827 - } - }, - { - "model": "feed.shape", - "pk": 549, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93694508327091, - "shape_pt_lon": -84.0455437249918, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.838 - } - }, - { - "model": "feed.shape", - "pk": 550, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93708383542657, - "shape_pt_lon": -84.0454400845081, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.857 - } - }, - { - "model": "feed.shape", - "pk": 551, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93721635101928, - "shape_pt_lon": -84.045309807991, - "shape_pt_sequence": 87, - "shape_dist_traveled": 1.878 - } - }, - { - "model": "feed.shape", - "pk": 552, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93724819645461, - "shape_pt_lon": -84.0452761874456, - "shape_pt_sequence": 88, - "shape_dist_traveled": 1.883 - } - }, - { - "model": "feed.shape", - "pk": 553, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93734716375109, - "shape_pt_lon": -84.0451229209554, - "shape_pt_sequence": 89, - "shape_dist_traveled": 1.903 - } - }, - { - "model": "feed.shape", - "pk": 554, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93752119585777, - "shape_pt_lon": -84.0448187291416, - "shape_pt_sequence": 90, - "shape_dist_traveled": 1.941 - } - }, - { - "model": "feed.shape", - "pk": 555, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93767426097248, - "shape_pt_lon": -84.0445416760749, - "shape_pt_sequence": 91, - "shape_dist_traveled": 1.976 - } - }, - { - "model": "feed.shape", - "pk": 556, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93785833808635, - "shape_pt_lon": -84.0442186256065, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.017 - } - }, - { - "model": "feed.shape", - "pk": 557, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93810435753431, - "shape_pt_lon": -84.0437983732383, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.07 - } - }, - { - "model": "feed.shape", - "pk": 558, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93796632120651, - "shape_pt_lon": -84.0436125738981, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.096 - } - }, - { - "model": "feed.shape", - "pk": 559, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93791432144543, - "shape_pt_lon": -84.0434414999464, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.116 - } - }, - { - "model": "feed.shape", - "pk": 560, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93788832161072, - "shape_pt_lon": -84.0432184120559, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.14 - } - }, - { - "model": "feed.shape", - "pk": 561, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93792789506808, - "shape_pt_lon": -84.042939145496, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.171 - } - }, - { - "model": "feed.shape", - "pk": 562, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93799597108977, - "shape_pt_lon": -84.0425252959219, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.217 - } - }, - { - "model": "feed.shape", - "pk": 563, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93800488549925, - "shape_pt_lon": -84.0424724302894, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.223 - } - }, - { - "model": "feed.shape", - "pk": 564, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9381395635656, - "shape_pt_lon": -84.0421750587842, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.259 - } - }, - { - "model": "feed.shape", - "pk": 565, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93816556338036, - "shape_pt_lon": -84.0419988023209, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.278 - } - }, - { - "model": "feed.shape", - "pk": 566, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93815877702913, - "shape_pt_lon": -84.0418468568672, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.295 - } - }, - { - "model": "feed.shape", - "pk": 567, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93812774499086, - "shape_pt_lon": -84.0417208377531, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.309 - } - }, - { - "model": "feed.shape", - "pk": 568, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93810465445374, - "shape_pt_lon": -84.0416827286396, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.314 - } - }, - { - "model": "feed.shape", - "pk": 569, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93807826146448, - "shape_pt_lon": -84.0416493133915, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.319 - } - }, - { - "model": "feed.shape", - "pk": 570, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93804738144964, - "shape_pt_lon": -84.0416349312544, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.323 - } - }, - { - "model": "feed.shape", - "pk": 571, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93801451996184, - "shape_pt_lon": -84.0416322837814, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.326 - } - }, - { - "model": "feed.shape", - "pk": 572, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93792436774485, - "shape_pt_lon": -84.0416346601389, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.336 - } - }, - { - "model": "feed.shape", - "pk": 573, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93790082410227, - "shape_pt_lon": -84.041067340985, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.399 - } - }, - { - "model": "feed.shape", - "pk": 574, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93846425290711, - "shape_pt_lon": -84.0409284047187, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.463 - } - }, - { - "model": "feed.shape", - "pk": 575, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93868651413261, - "shape_pt_lon": -84.0409624274215, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.488 - } - }, - { - "model": "feed.shape", - "pk": 576, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93885247660523, - "shape_pt_lon": -84.0411341586918, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.514 - } - }, - { - "model": "feed.shape", - "pk": 577, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93915539473273, - "shape_pt_lon": -84.0416474460876, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.579 - } - }, - { - "model": "feed.shape", - "pk": 578, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93928861127028, - "shape_pt_lon": -84.0417889786806, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.601 - } - }, - { - "model": "feed.shape", - "pk": 579, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9394354239606, - "shape_pt_lon": -84.0418813247414, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.62 - } - }, - { - "model": "feed.shape", - "pk": 580, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93950244712471, - "shape_pt_lon": -84.0419056263361, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.628 - } - }, - { - "model": "feed.shape", - "pk": 581, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93950244613303, - "shape_pt_lon": -84.042239368576, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.664 - } - }, - { - "model": "feed.shape", - "pk": 582, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93949446718606, - "shape_pt_lon": -84.0425196469705, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.695 - } - }, - { - "model": "feed.shape", - "pk": 583, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93945457168453, - "shape_pt_lon": -84.0429991991022, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.748 - } - }, - { - "model": "feed.shape", - "pk": 584, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93942712460796, - "shape_pt_lon": -84.043331873611, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.784 - } - }, - { - "model": "feed.shape", - "pk": 585, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93972789866721, - "shape_pt_lon": -84.0432605742965, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.819 - } - }, - { - "model": "feed.shape", - "pk": 586, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93979051078508, - "shape_pt_lon": -84.0432941313524, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.826 - } - }, - { - "model": "feed.shape", - "pk": 587, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93982252793726, - "shape_pt_lon": -84.0433753940134, - "shape_pt_sequence": 123, - "shape_dist_traveled": 2.836 - } - }, - { - "model": "feed.shape", - "pk": 588, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93991292983544, - "shape_pt_lon": -84.0437147893588, - "shape_pt_sequence": 124, - "shape_dist_traveled": 2.875 - } - }, - { - "model": "feed.shape", - "pk": 589, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94002028140903, - "shape_pt_lon": -84.0441287509128, - "shape_pt_sequence": 125, - "shape_dist_traveled": 2.922 - } - }, - { - "model": "feed.shape", - "pk": 590, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94016644833328, - "shape_pt_lon": -84.0446669802431, - "shape_pt_sequence": 126, - "shape_dist_traveled": 2.983 - } - }, - { - "model": "feed.shape", - "pk": 591, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94027078687104, - "shape_pt_lon": -84.044823754755, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.003 - } - }, - { - "model": "feed.shape", - "pk": 592, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94048864067421, - "shape_pt_lon": -84.0456295904777, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.095 - } - }, - { - "model": "feed.shape", - "pk": 593, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9406416703034, - "shape_pt_lon": -84.045594280927, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.112 - } - }, - { - "model": "feed.shape", - "pk": 594, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94079771456593, - "shape_pt_lon": -84.0450692602221, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.172 - } - }, - { - "model": "feed.shape", - "pk": 595, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9409503711104, - "shape_pt_lon": -84.0447481499267, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.212 - } - }, - { - "model": "feed.shape", - "pk": 596, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94105192700053, - "shape_pt_lon": -84.0446521079484, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.227 - } - }, - { - "model": "feed.shape", - "pk": 597, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94171142158802, - "shape_pt_lon": -84.0446962954808, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.3 - } - }, - { - "model": "feed.shape", - "pk": 598, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94281915936154, - "shape_pt_lon": -84.0447683576565, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.423 - } - }, - { - "model": "feed.shape", - "pk": 599, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94301266464211, - "shape_pt_lon": -84.0447317924328, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.445 - } - }, - { - "model": "feed.shape", - "pk": 600, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94326484610015, - "shape_pt_lon": -84.0446461368594, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.474 - } - }, - { - "model": "feed.shape", - "pk": 601, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94367235170777, - "shape_pt_lon": -84.0444664659679, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.523 - } - }, - { - "model": "feed.shape", - "pk": 602, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94380140312083, - "shape_pt_lon": -84.044752272012, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.558 - } - }, - { - "model": "feed.shape", - "pk": 603, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9438796367465, - "shape_pt_lon": -84.0448814333755, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.574 - } - }, - { - "model": "feed.shape", - "pk": 604, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94396952509255, - "shape_pt_lon": -84.0449503878825, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.587 - } - }, - { - "model": "feed.shape", - "pk": 605, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94433433418409, - "shape_pt_lon": -84.044987908675, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.627 - } - }, - { - "model": "feed.shape", - "pk": 606, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94457411376674, - "shape_pt_lon": -84.0450080280451, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.654 - } - }, - { - "model": "feed.shape", - "pk": 607, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94495390060397, - "shape_pt_lon": -84.0450080280451, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.696 - } - }, - { - "model": "feed.shape", - "pk": 608, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94504571713547, - "shape_pt_lon": -84.0450786471473, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.709 - } - }, - { - "model": "feed.shape", - "pk": 609, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94507075688808, - "shape_pt_lon": -84.0453964329445, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.744 - } - }, - { - "model": "feed.shape", - "pk": 610, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94509858007239, - "shape_pt_lon": -84.0454995368328, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.755 - } - }, - { - "model": "feed.shape", - "pk": 611, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94517301639726, - "shape_pt_lon": -84.0455360879379, - "shape_pt_sequence": 147, - "shape_dist_traveled": 3.764 - } - }, - { - "model": "feed.shape", - "pk": 612, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94569599438186, - "shape_pt_lon": -84.0455012141288, - "shape_pt_sequence": 148, - "shape_dist_traveled": 3.822 - } - }, - { - "model": "feed.shape", - "pk": 613, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94576731883437, - "shape_pt_lon": -84.0454579354822, - "shape_pt_sequence": 149, - "shape_dist_traveled": 3.832 - } - }, - { - "model": "feed.shape", - "pk": 614, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94587443785238, - "shape_pt_lon": -84.0452474905592, - "shape_pt_sequence": 150, - "shape_dist_traveled": 3.858 - } - }, - { - "model": "feed.shape", - "pk": 615, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94594677794762, - "shape_pt_lon": -84.0451754590753, - "shape_pt_sequence": 151, - "shape_dist_traveled": 3.869 - } - }, - { - "model": "feed.shape", - "pk": 616, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94629204599402, - "shape_pt_lon": -84.0451469719024, - "shape_pt_sequence": 152, - "shape_dist_traveled": 3.907 - } - }, - { - "model": "feed.shape", - "pk": 617, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9463908179176, - "shape_pt_lon": -84.0451610957222, - "shape_pt_sequence": 153, - "shape_dist_traveled": 3.918 - } - }, - { - "model": "feed.shape", - "pk": 618, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94645063751956, - "shape_pt_lon": -84.0451992300371, - "shape_pt_sequence": 154, - "shape_dist_traveled": 3.926 - } - }, - { - "model": "feed.shape", - "pk": 619, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94649738913102, - "shape_pt_lon": -84.0452562192863, - "shape_pt_sequence": 155, - "shape_dist_traveled": 3.934 - } - }, - { - "model": "feed.shape", - "pk": 620, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94651450274987, - "shape_pt_lon": -84.0452709224469, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "feed.shape", - "pk": 621, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9465713930344, - "shape_pt_lon": -84.0453586296957, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.011 - } - }, - { - "model": "feed.shape", - "pk": 622, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94670523135418, - "shape_pt_lon": -84.0455321860811, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.036 - } - }, - { - "model": "feed.shape", - "pk": 623, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94685977487793, - "shape_pt_lon": -84.0457428830683, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.064 - } - }, - { - "model": "feed.shape", - "pk": 624, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94692114024093, - "shape_pt_lon": -84.0458252584096, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.076 - } - }, - { - "model": "feed.shape", - "pk": 625, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94699848130395, - "shape_pt_lon": -84.045874911642, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.086 - } - }, - { - "model": "feed.shape", - "pk": 626, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94709174550324, - "shape_pt_lon": -84.0458702927366, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.096 - } - }, - { - "model": "feed.shape", - "pk": 627, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94733286724273, - "shape_pt_lon": -84.0456762984049, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.13 - } - }, - { - "model": "feed.shape", - "pk": 628, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94734992775087, - "shape_pt_lon": -84.0455816108455, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.141 - } - }, - { - "model": "feed.shape", - "pk": 629, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94731694409985, - "shape_pt_lon": -84.0454811496546, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.152 - } - }, - { - "model": "feed.shape", - "pk": 630, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94706331033958, - "shape_pt_lon": -84.0451520526366, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.198 - } - }, - { - "model": "feed.shape", - "pk": 631, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94695639770921, - "shape_pt_lon": -84.044934964086, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.225 - } - }, - { - "model": "feed.shape", - "pk": 632, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94685739750313, - "shape_pt_lon": -84.0447940381815, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.244 - } - }, - { - "model": "feed.shape", - "pk": 633, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94674934743632, - "shape_pt_lon": -84.0447120526121, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.259 - } - }, - { - "model": "feed.shape", - "pk": 634, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94663902259388, - "shape_pt_lon": -84.0446901128118, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.271 - } - }, - { - "model": "feed.shape", - "pk": 635, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94658480665502, - "shape_pt_lon": -84.0447036688627, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.277 - } - }, - { - "model": "feed.shape", - "pk": 636, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94652566341521, - "shape_pt_lon": -84.0447440842844, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.285 - } - }, - { - "model": "feed.shape", - "pk": 637, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94631063663281, - "shape_pt_lon": -84.0447956225084, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.31 - } - }, - { - "model": "feed.shape", - "pk": 638, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94607861289951, - "shape_pt_lon": -84.0448175623087, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.335 - } - }, - { - "model": "feed.shape", - "pk": 639, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94606268969643, - "shape_pt_lon": -84.0448198717614, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.337 - } - }, - { - "model": "feed.shape", - "pk": 640, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94607633849742, - "shape_pt_lon": -84.0451616705072, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.375 - } - }, - { - "model": "feed.shape", - "pk": 641, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94594816328299, - "shape_pt_lon": -84.0451794721398, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.389 - } - }, - { - "model": "feed.shape", - "pk": 642, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94587650883204, - "shape_pt_lon": -84.0452499104458, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.4 - } - }, - { - "model": "feed.shape", - "pk": 643, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94577755742257, - "shape_pt_lon": -84.0454566064596, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.425 - } - }, - { - "model": "feed.shape", - "pk": 644, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94570040854178, - "shape_pt_lon": -84.0455092507792, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.435 - } - }, - { - "model": "feed.shape", - "pk": 645, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94516698035057, - "shape_pt_lon": -84.0455392738468, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.494 - } - }, - { - "model": "feed.shape", - "pk": 646, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94508917283893, - "shape_pt_lon": -84.0455023654374, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.504 - } - }, - { - "model": "feed.shape", - "pk": 647, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94505732633557, - "shape_pt_lon": -84.045382273899, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.518 - } - }, - { - "model": "feed.shape", - "pk": 648, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94502889195332, - "shape_pt_lon": -84.0450808903258, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.551 - } - }, - { - "model": "feed.shape", - "pk": 649, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94495155042415, - "shape_pt_lon": -84.0450173803773, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.562 - } - }, - { - "model": "feed.shape", - "pk": 650, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94472000465252, - "shape_pt_lon": -84.045015769873, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.587 - } - }, - { - "model": "feed.shape", - "pk": 651, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94425679788889, - "shape_pt_lon": -84.0449868892884, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.639 - } - }, - { - "model": "feed.shape", - "pk": 652, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94389594579139, - "shape_pt_lon": -84.0449568041774, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.679 - } - }, - { - "model": "feed.shape", - "pk": 653, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9433847319748, - "shape_pt_lon": -84.0449197895004, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.736 - } - }, - { - "model": "feed.shape", - "pk": 654, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94261500079999, - "shape_pt_lon": -84.0448773383005, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.821 - } - }, - { - "model": "feed.shape", - "pk": 655, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94204155986042, - "shape_pt_lon": -84.0448390343892, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.884 - } - }, - { - "model": "feed.shape", - "pk": 656, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94137698645447, - "shape_pt_lon": -84.0448024388483, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.958 - } - }, - { - "model": "feed.shape", - "pk": 657, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94096102380372, - "shape_pt_lon": -84.0447771566035, - "shape_pt_sequence": 37, - "shape_dist_traveled": 1.004 - } - }, - { - "model": "feed.shape", - "pk": 658, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94082181962447, - "shape_pt_lon": -84.0450446175143, - "shape_pt_sequence": 38, - "shape_dist_traveled": 1.037 - } - }, - { - "model": "feed.shape", - "pk": 659, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94065523781238, - "shape_pt_lon": -84.0456053336701, - "shape_pt_sequence": 39, - "shape_dist_traveled": 1.101 - } - }, - { - "model": "feed.shape", - "pk": 660, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94048314593914, - "shape_pt_lon": -84.045634999557, - "shape_pt_sequence": 40, - "shape_dist_traveled": 1.121 - } - }, - { - "model": "feed.shape", - "pk": 661, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9403780406827, - "shape_pt_lon": -84.0452283043053, - "shape_pt_sequence": 41, - "shape_dist_traveled": 1.167 - } - }, - { - "model": "feed.shape", - "pk": 662, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9402703855621, - "shape_pt_lon": -84.04482278961, - "shape_pt_sequence": 42, - "shape_dist_traveled": 1.213 - } - }, - { - "model": "feed.shape", - "pk": 663, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94016328794055, - "shape_pt_lon": -84.0446641785108, - "shape_pt_sequence": 43, - "shape_dist_traveled": 1.234 - } - }, - { - "model": "feed.shape", - "pk": 664, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94010181117775, - "shape_pt_lon": -84.0444165990228, - "shape_pt_sequence": 44, - "shape_dist_traveled": 1.262 - } - }, - { - "model": "feed.shape", - "pk": 665, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93971666992378, - "shape_pt_lon": -84.0445263287881, - "shape_pt_sequence": 45, - "shape_dist_traveled": 1.306 - } - }, - { - "model": "feed.shape", - "pk": 666, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93932936015097, - "shape_pt_lon": -84.0446221116145, - "shape_pt_sequence": 46, - "shape_dist_traveled": 1.35 - } - }, - { - "model": "feed.shape", - "pk": 667, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93920408915902, - "shape_pt_lon": -84.0446545394456, - "shape_pt_sequence": 47, - "shape_dist_traveled": 1.364 - } - }, - { - "model": "feed.shape", - "pk": 668, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9391568243881, - "shape_pt_lon": -84.0446456512568, - "shape_pt_sequence": 48, - "shape_dist_traveled": 1.37 - } - }, - { - "model": "feed.shape", - "pk": 669, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93912509354336, - "shape_pt_lon": -84.0446159514984, - "shape_pt_sequence": 49, - "shape_dist_traveled": 1.375 - } - }, - { - "model": "feed.shape", - "pk": 670, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93911021843789, - "shape_pt_lon": -84.0445637722231, - "shape_pt_sequence": 50, - "shape_dist_traveled": 1.381 - } - }, - { - "model": "feed.shape", - "pk": 671, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93919615665697, - "shape_pt_lon": -84.0443354246074, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.407 - } - }, - { - "model": "feed.shape", - "pk": 672, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.939024, - "shape_pt_lon": -84.043697, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.459 - } - }, - { - "model": "feed.shape", - "pk": 673, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9389589108528, - "shape_pt_lon": -84.0434647440871, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.506 - } - }, - { - "model": "feed.shape", - "pk": 674, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93927926961302, - "shape_pt_lon": -84.0433689657322, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.543 - } - }, - { - "model": "feed.shape", - "pk": 675, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9394214266361, - "shape_pt_lon": -84.0433251613281, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.56 - } - }, - { - "model": "feed.shape", - "pk": 676, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.939438, - "shape_pt_lon": -84.043078, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.597 - } - }, - { - "model": "feed.shape", - "pk": 677, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93949676004582, - "shape_pt_lon": -84.0424704121516, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.654 - } - }, - { - "model": "feed.shape", - "pk": 678, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950197815545, - "shape_pt_lon": -84.0423387592283, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.668 - } - }, - { - "model": "feed.shape", - "pk": 679, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950471943605, - "shape_pt_lon": -84.042195874555, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.684 - } - }, - { - "model": "feed.shape", - "pk": 680, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950937287681, - "shape_pt_lon": -84.0420595652431, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.699 - } - }, - { - "model": "feed.shape", - "pk": 681, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950560510053, - "shape_pt_lon": -84.0419237588459, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.714 - } - }, - { - "model": "feed.shape", - "pk": 682, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93932694656827, - "shape_pt_lon": -84.0418526043861, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.735 - } - }, - { - "model": "feed.shape", - "pk": 683, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93916441674404, - "shape_pt_lon": -84.0416871226965, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.761 - } - }, - { - "model": "feed.shape", - "pk": 684, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93904364750639, - "shape_pt_lon": -84.0415030389796, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.785 - } - }, - { - "model": "feed.shape", - "pk": 685, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93882652989536, - "shape_pt_lon": -84.0411360631089, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.832 - } - }, - { - "model": "feed.shape", - "pk": 686, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93877761093714, - "shape_pt_lon": -84.0410711382821, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.841 - } - }, - { - "model": "feed.shape", - "pk": 687, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93872439879922, - "shape_pt_lon": -84.0410192892248, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.849 - } - }, - { - "model": "feed.shape", - "pk": 688, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93860739420377, - "shape_pt_lon": -84.0409548622543, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.863 - } - }, - { - "model": "feed.shape", - "pk": 689, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93847712489684, - "shape_pt_lon": -84.0409464827492, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.878 - } - }, - { - "model": "feed.shape", - "pk": 690, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93831748290179, - "shape_pt_lon": -84.0409847362632, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.896 - } - }, - { - "model": "feed.shape", - "pk": 691, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93790526804534, - "shape_pt_lon": -84.0410975311932, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.943 - } - }, - { - "model": "feed.shape", - "pk": 692, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93791543483811, - "shape_pt_lon": -84.0413721007657, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.973 - } - }, - { - "model": "feed.shape", - "pk": 693, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93792971313351, - "shape_pt_lon": -84.0416234000621, - "shape_pt_sequence": 73, - "shape_dist_traveled": 2.001 - } - }, - { - "model": "feed.shape", - "pk": 694, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93801943406157, - "shape_pt_lon": -84.0416214268987, - "shape_pt_sequence": 74, - "shape_dist_traveled": 2.011 - } - }, - { - "model": "feed.shape", - "pk": 695, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93808013647371, - "shape_pt_lon": -84.0416385167757, - "shape_pt_sequence": 75, - "shape_dist_traveled": 2.018 - } - }, - { - "model": "feed.shape", - "pk": 696, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9381333560273, - "shape_pt_lon": -84.0417143841426, - "shape_pt_sequence": 76, - "shape_dist_traveled": 2.028 - } - }, - { - "model": "feed.shape", - "pk": 697, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9381491692212, - "shape_pt_lon": -84.0417661717713, - "shape_pt_sequence": 77, - "shape_dist_traveled": 2.034 - } - }, - { - "model": "feed.shape", - "pk": 698, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93816498245021, - "shape_pt_lon": -84.0418402279053, - "shape_pt_sequence": 78, - "shape_dist_traveled": 2.042 - } - }, - { - "model": "feed.shape", - "pk": 699, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93817110369939, - "shape_pt_lon": -84.041955196169, - "shape_pt_sequence": 79, - "shape_dist_traveled": 2.055 - } - }, - { - "model": "feed.shape", - "pk": 700, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93816447211196, - "shape_pt_lon": -84.0420620743374, - "shape_pt_sequence": 80, - "shape_dist_traveled": 2.067 - } - }, - { - "model": "feed.shape", - "pk": 701, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93814558312971, - "shape_pt_lon": -84.042172549653, - "shape_pt_sequence": 81, - "shape_dist_traveled": 2.079 - } - }, - { - "model": "feed.shape", - "pk": 702, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93806546361139, - "shape_pt_lon": -84.0423590295751, - "shape_pt_sequence": 82, - "shape_dist_traveled": 2.101 - } - }, - { - "model": "feed.shape", - "pk": 703, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93800868895506, - "shape_pt_lon": -84.0424754995415, - "shape_pt_sequence": 83, - "shape_dist_traveled": 2.116 - } - }, - { - "model": "feed.shape", - "pk": 704, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93798455282835, - "shape_pt_lon": -84.0426277550985, - "shape_pt_sequence": 84, - "shape_dist_traveled": 2.132 - } - }, - { - "model": "feed.shape", - "pk": 705, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93793303246509, - "shape_pt_lon": -84.0429680898401, - "shape_pt_sequence": 85, - "shape_dist_traveled": 2.17 - } - }, - { - "model": "feed.shape", - "pk": 706, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93789255913571, - "shape_pt_lon": -84.0431865014681, - "shape_pt_sequence": 86, - "shape_dist_traveled": 2.195 - } - }, - { - "model": "feed.shape", - "pk": 707, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93792278510311, - "shape_pt_lon": -84.0434262188335, - "shape_pt_sequence": 87, - "shape_dist_traveled": 2.221 - } - }, - { - "model": "feed.shape", - "pk": 708, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93793612530689, - "shape_pt_lon": -84.0435140997635, - "shape_pt_sequence": 88, - "shape_dist_traveled": 2.231 - } - }, - { - "model": "feed.shape", - "pk": 709, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93796843588535, - "shape_pt_lon": -84.0436045719397, - "shape_pt_sequence": 89, - "shape_dist_traveled": 2.241 - } - }, - { - "model": "feed.shape", - "pk": 710, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93811029202329, - "shape_pt_lon": -84.0437946545471, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.267 - } - }, - { - "model": "feed.shape", - "pk": 711, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93796317506452, - "shape_pt_lon": -84.044044224914, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.299 - } - }, - { - "model": "feed.shape", - "pk": 712, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93778888741941, - "shape_pt_lon": -84.0443497474269, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.338 - } - }, - { - "model": "feed.shape", - "pk": 713, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93759056212761, - "shape_pt_lon": -84.0447040111923, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.383 - } - }, - { - "model": "feed.shape", - "pk": 714, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93743889754011, - "shape_pt_lon": -84.0449773758339, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.417 - } - }, - { - "model": "feed.shape", - "pk": 715, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93734106177819, - "shape_pt_lon": -84.0451442319336, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.438 - } - }, - { - "model": "feed.shape", - "pk": 716, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93725220134541, - "shape_pt_lon": -84.0452700748287, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.455 - } - }, - { - "model": "feed.shape", - "pk": 717, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93710383236486, - "shape_pt_lon": -84.0454232410009, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.479 - } - }, - { - "model": "feed.shape", - "pk": 718, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93703302156643, - "shape_pt_lon": -84.045480287002, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.489 - } - }, - { - "model": "feed.shape", - "pk": 719, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93692669580576, - "shape_pt_lon": -84.0455559204937, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.503 - } - }, - { - "model": "feed.shape", - "pk": 720, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93685320196694, - "shape_pt_lon": -84.0455868138288, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.512 - } - }, - { - "model": "feed.shape", - "pk": 721, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93677214106483, - "shape_pt_lon": -84.045591032246, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.521 - } - }, - { - "model": "feed.shape", - "pk": 722, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93667892839703, - "shape_pt_lon": -84.0455673986725, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.531 - } - }, - { - "model": "feed.shape", - "pk": 723, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93652937757293, - "shape_pt_lon": -84.0454873867401, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.55 - } - }, - { - "model": "feed.shape", - "pk": 724, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93646683969579, - "shape_pt_lon": -84.0454491600057, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.558 - } - }, - { - "model": "feed.shape", - "pk": 725, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93640033885562, - "shape_pt_lon": -84.0454129449283, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.567 - } - }, - { - "model": "feed.shape", - "pk": 726, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93634297166293, - "shape_pt_lon": -84.0453776127618, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.574 - } - }, - { - "model": "feed.shape", - "pk": 727, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93629576054226, - "shape_pt_lon": -84.0453623778292, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.579 - } - }, - { - "model": "feed.shape", - "pk": 728, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93624363287526, - "shape_pt_lon": -84.0453512637102, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.585 - } - }, - { - "model": "feed.shape", - "pk": 729, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9361862212533, - "shape_pt_lon": -84.0453538959122, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.592 - } - }, - { - "model": "feed.shape", - "pk": 730, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93603883510741, - "shape_pt_lon": -84.0453890269646, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.608 - } - }, - { - "model": "feed.shape", - "pk": 731, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93580414505913, - "shape_pt_lon": -84.0454308854351, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.635 - } - }, - { - "model": "feed.shape", - "pk": 732, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93565385732093, - "shape_pt_lon": -84.0454587046985, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.652 - } - }, - { - "model": "feed.shape", - "pk": 733, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93558390036268, - "shape_pt_lon": -84.0455252542674, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.662 - } - }, - { - "model": "feed.shape", - "pk": 734, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93547184500151, - "shape_pt_lon": -84.0455798539966, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.676 - } - }, - { - "model": "feed.shape", - "pk": 735, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93533906172064, - "shape_pt_lon": -84.0456377473207, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.692 - } - }, - { - "model": "feed.shape", - "pk": 736, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93501118853525, - "shape_pt_lon": -84.0456383288227, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.728 - } - }, - { - "model": "feed.shape", - "pk": 737, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93495718975151, - "shape_pt_lon": -84.0456086223286, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.735 - } - }, - { - "model": "feed.shape", - "pk": 738, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93465006354252, - "shape_pt_lon": -84.0456168978697, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.769 - } - }, - { - "model": "feed.shape", - "pk": 739, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93477095640989, - "shape_pt_lon": -84.0461340991613, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.827 - } - }, - { - "model": "feed.shape", - "pk": 740, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93490403346722, - "shape_pt_lon": -84.0468176973466, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.904 - } - }, - { - "model": "feed.shape", - "pk": 741, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93495932029753, - "shape_pt_lon": -84.0471113963055, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.937 - } - }, - { - "model": "feed.shape", - "pk": 742, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93505827498137, - "shape_pt_lon": -84.0474601236579, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.976 - } - }, - { - "model": "feed.shape", - "pk": 743, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93519897363926, - "shape_pt_lon": -84.0478899692808, - "shape_pt_sequence": 123, - "shape_dist_traveled": 3.026 - } - }, - { - "model": "feed.shape", - "pk": 744, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93527449143981, - "shape_pt_lon": -84.0481284685146, - "shape_pt_sequence": 124, - "shape_dist_traveled": 3.053 - } - }, - { - "model": "feed.shape", - "pk": 745, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93531543817006, - "shape_pt_lon": -84.0483778894022, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.081 - } - }, - { - "model": "feed.shape", - "pk": 746, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93529755715117, - "shape_pt_lon": -84.0486249437023, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.108 - } - }, - { - "model": "feed.shape", - "pk": 747, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93545425079317, - "shape_pt_lon": -84.0486430566726, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.126 - } - }, - { - "model": "feed.shape", - "pk": 748, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9354703595261, - "shape_pt_lon": -84.0488000764969, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.143 - } - }, - { - "model": "feed.shape", - "pk": 749, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9355323422866, - "shape_pt_lon": -84.0490437766179, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.171 - } - }, - { - "model": "feed.shape", - "pk": 750, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94651439468106, - "shape_pt_lon": -84.0452793145875, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "feed.shape", - "pk": 751, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94656979269062, - "shape_pt_lon": -84.0453635889366, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.011 - } - }, - { - "model": "feed.shape", - "pk": 752, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94668819013391, - "shape_pt_lon": -84.0455133598416, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.032 - } - }, - { - "model": "feed.shape", - "pk": 753, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94677813595565, - "shape_pt_lon": -84.0456333624982, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "feed.shape", - "pk": 754, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94692110409536, - "shape_pt_lon": -84.0458288226395, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.075 - } - }, - { - "model": "feed.shape", - "pk": 755, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94699667079666, - "shape_pt_lon": -84.0458784281265, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.085 - } - }, - { - "model": "feed.shape", - "pk": 756, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94709290535486, - "shape_pt_lon": -84.0458729567443, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.096 - } - }, - { - "model": "feed.shape", - "pk": 757, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94722193423012, - "shape_pt_lon": -84.0457747817661, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.114 - } - }, - { - "model": "feed.shape", - "pk": 758, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94733469552996, - "shape_pt_lon": -84.0456766067879, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.13 - } - }, - { - "model": "feed.shape", - "pk": 759, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94735240267321, - "shape_pt_lon": -84.0455812484176, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.141 - } - }, - { - "model": "feed.shape", - "pk": 760, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94731698838683, - "shape_pt_lon": -84.0454835451677, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.152 - } - }, - { - "model": "feed.shape", - "pk": 761, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94706401578786, - "shape_pt_lon": -84.045155482603, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.198 - } - }, - { - "model": "feed.shape", - "pk": 762, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94695753981341, - "shape_pt_lon": -84.0449388905875, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.224 - } - }, - { - "model": "feed.shape", - "pk": 763, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94685591607748, - "shape_pt_lon": -84.0447927265256, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.244 - } - }, - { - "model": "feed.shape", - "pk": 764, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94674691466528, - "shape_pt_lon": -84.0447132911805, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.259 - } - }, - { - "model": "feed.shape", - "pk": 765, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94663836196663, - "shape_pt_lon": -84.0446929689046, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.271 - } - }, - { - "model": "feed.shape", - "pk": 766, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9465853910728, - "shape_pt_lon": -84.0447054750041, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.277 - } - }, - { - "model": "feed.shape", - "pk": 767, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94652457073993, - "shape_pt_lon": -84.0447469011822, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.285 - } - }, - { - "model": "feed.shape", - "pk": 768, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94630948675802, - "shape_pt_lon": -84.0447977068717, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.31 - } - }, - { - "model": "feed.shape", - "pk": 769, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94606507414992, - "shape_pt_lon": -84.0448235005163, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.337 - } - }, - { - "model": "feed.shape", - "pk": 770, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94607893196729, - "shape_pt_lon": -84.0451642894519, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.374 - } - }, - { - "model": "feed.shape", - "pk": 771, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94594726623906, - "shape_pt_lon": -84.0451842895768, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.389 - } - }, - { - "model": "feed.shape", - "pk": 772, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94587566747948, - "shape_pt_lon": -84.0452538542911, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.4 - } - }, - { - "model": "feed.shape", - "pk": 773, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94577795917383, - "shape_pt_lon": -84.0454601695233, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.425 - } - }, - { - "model": "feed.shape", - "pk": 774, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94569943146, - "shape_pt_lon": -84.0455125384658, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.435 - } - }, - { - "model": "feed.shape", - "pk": 775, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94545154684154, - "shape_pt_lon": -84.0455252458136, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.463 - } - }, - { - "model": "feed.shape", - "pk": 776, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94516751299271, - "shape_pt_lon": -84.0455414357082, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.494 - } - }, - { - "model": "feed.shape", - "pk": 777, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94508849180003, - "shape_pt_lon": -84.0455037479672, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.504 - } - }, - { - "model": "feed.shape", - "pk": 778, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94505511036374, - "shape_pt_lon": -84.0453835472561, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.518 - } - }, - { - "model": "feed.shape", - "pk": 779, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94502739484005, - "shape_pt_lon": -84.045084965639, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.55 - } - }, - { - "model": "feed.shape", - "pk": 780, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94499479036127, - "shape_pt_lon": -84.0450504044021, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.556 - } - }, - { - "model": "feed.shape", - "pk": 781, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94494963682908, - "shape_pt_lon": -84.0450208723069, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.562 - } - }, - { - "model": "feed.shape", - "pk": 782, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94467428591231, - "shape_pt_lon": -84.0450154011338, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.592 - } - }, - { - "model": "feed.shape", - "pk": 783, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94435778151253, - "shape_pt_lon": -84.0450041637077, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.627 - } - }, - { - "model": "feed.shape", - "pk": 784, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94347268380579, - "shape_pt_lon": -84.0449287137552, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.725 - } - }, - { - "model": "feed.shape", - "pk": 785, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94295817880508, - "shape_pt_lon": -84.0448982678798, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.782 - } - }, - { - "model": "feed.shape", - "pk": 786, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94230048632557, - "shape_pt_lon": -84.0448587644203, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.855 - } - }, - { - "model": "feed.shape", - "pk": 787, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94171228683352, - "shape_pt_lon": -84.0448222996627, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.92 - } - }, - { - "model": "feed.shape", - "pk": 788, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94096530647596, - "shape_pt_lon": -84.0447760219723, - "shape_pt_sequence": 38, - "shape_dist_traveled": 1.003 - } - }, - { - "model": "feed.shape", - "pk": 789, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94090663320268, - "shape_pt_lon": -84.0448740739734, - "shape_pt_sequence": 39, - "shape_dist_traveled": 1.016 - } - }, - { - "model": "feed.shape", - "pk": 790, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94084406020503, - "shape_pt_lon": -84.0449871934796, - "shape_pt_sequence": 40, - "shape_dist_traveled": 1.03 - } - }, - { - "model": "feed.shape", - "pk": 791, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94077751897418, - "shape_pt_lon": -84.0452171289551, - "shape_pt_sequence": 41, - "shape_dist_traveled": 1.056 - } - }, - { - "model": "feed.shape", - "pk": 792, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94072156165138, - "shape_pt_lon": -84.0453974813657, - "shape_pt_sequence": 42, - "shape_dist_traveled": 1.077 - } - }, - { - "model": "feed.shape", - "pk": 793, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94066022328121, - "shape_pt_lon": -84.0456042948351, - "shape_pt_sequence": 43, - "shape_dist_traveled": 1.101 - } - }, - { - "model": "feed.shape", - "pk": 794, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94049309734092, - "shape_pt_lon": -84.0456331735173, - "shape_pt_sequence": 44, - "shape_dist_traveled": 1.119 - } - }, - { - "model": "feed.shape", - "pk": 795, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94043960234258, - "shape_pt_lon": -84.0454384499972, - "shape_pt_sequence": 45, - "shape_dist_traveled": 1.142 - } - }, - { - "model": "feed.shape", - "pk": 796, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94037244769911, - "shape_pt_lon": -84.0451953028132, - "shape_pt_sequence": 46, - "shape_dist_traveled": 1.169 - } - }, - { - "model": "feed.shape", - "pk": 797, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94027492444419, - "shape_pt_lon": -84.0448203307503, - "shape_pt_sequence": 47, - "shape_dist_traveled": 1.212 - } - }, - { - "model": "feed.shape", - "pk": 798, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94022435173391, - "shape_pt_lon": -84.0447437519701, - "shape_pt_sequence": 48, - "shape_dist_traveled": 1.222 - } - }, - { - "model": "feed.shape", - "pk": 799, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94016681408322, - "shape_pt_lon": -84.0446621944019, - "shape_pt_sequence": 49, - "shape_dist_traveled": 1.233 - } - }, - { - "model": "feed.shape", - "pk": 800, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94010200702146, - "shape_pt_lon": -84.044417503094, - "shape_pt_sequence": 50, - "shape_dist_traveled": 1.261 - } - }, - { - "model": "feed.shape", - "pk": 801, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93987745974345, - "shape_pt_lon": -84.0444809655781, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.286 - } - }, - { - "model": "feed.shape", - "pk": 802, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93971459423953, - "shape_pt_lon": -84.0445245874922, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.305 - } - }, - { - "model": "feed.shape", - "pk": 803, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93927560616025, - "shape_pt_lon": -84.0446392902696, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.355 - } - }, - { - "model": "feed.shape", - "pk": 804, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93920545121652, - "shape_pt_lon": -84.0446560771702, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.363 - } - }, - { - "model": "feed.shape", - "pk": 805, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93916110643307, - "shape_pt_lon": -84.0446448875091, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.368 - } - }, - { - "model": "feed.shape", - "pk": 806, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93912385292449, - "shape_pt_lon": -84.0446191813258, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.373 - } - }, - { - "model": "feed.shape", - "pk": 807, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93911625815432, - "shape_pt_lon": -84.0445525134932, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.38 - } - }, - { - "model": "feed.shape", - "pk": 808, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93919941590806, - "shape_pt_lon": -84.0443337547524, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.406 - } - }, - { - "model": "feed.shape", - "pk": 809, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93911055274011, - "shape_pt_lon": -84.044006444136, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.443 - } - }, - { - "model": "feed.shape", - "pk": 810, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9390190082839, - "shape_pt_lon": -84.0436747724812, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.481 - } - }, - { - "model": "feed.shape", - "pk": 811, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93895911426052, - "shape_pt_lon": -84.0434673567427, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.505 - } - }, - { - "model": "feed.shape", - "pk": 812, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9392879865273, - "shape_pt_lon": -84.0433689432454, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.543 - } - }, - { - "model": "feed.shape", - "pk": 813, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93942115014918, - "shape_pt_lon": -84.0433274860744, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.558 - } - }, - { - "model": "feed.shape", - "pk": 814, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93944755512195, - "shape_pt_lon": -84.0429942406062, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.595 - } - }, - { - "model": "feed.shape", - "pk": 815, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93946810072644, - "shape_pt_lon": -84.0427365454686, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.623 - } - }, - { - "model": "feed.shape", - "pk": 816, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93949017843466, - "shape_pt_lon": -84.0424561880641, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.654 - } - }, - { - "model": "feed.shape", - "pk": 817, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93949896641922, - "shape_pt_lon": -84.0421337910545, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.689 - } - }, - { - "model": "feed.shape", - "pk": 818, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93950631475532, - "shape_pt_lon": -84.0419274245262, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.712 - } - }, - { - "model": "feed.shape", - "pk": 819, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93932958005353, - "shape_pt_lon": -84.0418524186819, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.733 - } - }, - { - "model": "feed.shape", - "pk": 820, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93916814008368, - "shape_pt_lon": -84.041691039804, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.758 - } - }, - { - "model": "feed.shape", - "pk": 821, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93900519121203, - "shape_pt_lon": -84.0414413521148, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.791 - } - }, - { - "model": "feed.shape", - "pk": 822, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93882565486029, - "shape_pt_lon": -84.0411391429389, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.83 - } - }, - { - "model": "feed.shape", - "pk": 823, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93878072700935, - "shape_pt_lon": -84.0410728454411, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.839 - } - }, - { - "model": "feed.shape", - "pk": 824, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93872490109004, - "shape_pt_lon": -84.0410213000932, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.847 - } - }, - { - "model": "feed.shape", - "pk": 825, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93861004710345, - "shape_pt_lon": -84.0409544792739, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.862 - } - }, - { - "model": "feed.shape", - "pk": 826, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93847396797512, - "shape_pt_lon": -84.0409494403816, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.877 - } - }, - { - "model": "feed.shape", - "pk": 827, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93814652860348, - "shape_pt_lon": -84.0410341635524, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.914 - } - }, - { - "model": "feed.shape", - "pk": 828, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93790671250708, - "shape_pt_lon": -84.0411014405278, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.942 - } - }, - { - "model": "feed.shape", - "pk": 829, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93791663555238, - "shape_pt_lon": -84.0413834314017, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.973 - } - }, - { - "model": "feed.shape", - "pk": 830, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93793079347671, - "shape_pt_lon": -84.0416285810649, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.999 - } - }, - { - "model": "feed.shape", - "pk": 831, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93801967154644, - "shape_pt_lon": -84.0416254546011, - "shape_pt_sequence": 81, - "shape_dist_traveled": 2.009 - } - }, - { - "model": "feed.shape", - "pk": 832, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93807996226397, - "shape_pt_lon": -84.0416431189912, - "shape_pt_sequence": 82, - "shape_dist_traveled": 2.016 - } - }, - { - "model": "feed.shape", - "pk": 833, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93810791480517, - "shape_pt_lon": -84.0416788253891, - "shape_pt_sequence": 83, - "shape_dist_traveled": 2.021 - } - }, - { - "model": "feed.shape", - "pk": 834, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93813256489417, - "shape_pt_lon": -84.0417178845482, - "shape_pt_sequence": 84, - "shape_dist_traveled": 2.026 - } - }, - { - "model": "feed.shape", - "pk": 835, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9381630635316, - "shape_pt_lon": -84.0418440755105, - "shape_pt_sequence": 85, - "shape_dist_traveled": 2.041 - } - }, - { - "model": "feed.shape", - "pk": 836, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93816840355805, - "shape_pt_lon": -84.0419580950124, - "shape_pt_sequence": 86, - "shape_dist_traveled": 2.053 - } - }, - { - "model": "feed.shape", - "pk": 837, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93816233402513, - "shape_pt_lon": -84.0420632597521, - "shape_pt_sequence": 87, - "shape_dist_traveled": 2.065 - } - }, - { - "model": "feed.shape", - "pk": 838, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93814321123235, - "shape_pt_lon": -84.0421742120474, - "shape_pt_sequence": 88, - "shape_dist_traveled": 2.077 - } - }, - { - "model": "feed.shape", - "pk": 839, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93803086770445, - "shape_pt_lon": -84.042431585693, - "shape_pt_sequence": 89, - "shape_dist_traveled": 2.108 - } - }, - { - "model": "feed.shape", - "pk": 840, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93800811636062, - "shape_pt_lon": -84.0424780922361, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.113 - } - }, - { - "model": "feed.shape", - "pk": 841, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93798034157711, - "shape_pt_lon": -84.0426586032431, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.134 - } - }, - { - "model": "feed.shape", - "pk": 842, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93791715763552, - "shape_pt_lon": -84.0430584128099, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.178 - } - }, - { - "model": "feed.shape", - "pk": 843, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93789378213828, - "shape_pt_lon": -84.0431955755255, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.193 - } - }, - { - "model": "feed.shape", - "pk": 844, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9379228858361, - "shape_pt_lon": -84.0434355505527, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.22 - } - }, - { - "model": "feed.shape", - "pk": 845, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93793324365073, - "shape_pt_lon": -84.0435100147268, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.228 - } - }, - { - "model": "feed.shape", - "pk": 846, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93796925623814, - "shape_pt_lon": -84.0436073742708, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.239 - } - }, - { - "model": "feed.shape", - "pk": 847, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93811129632628, - "shape_pt_lon": -84.0437957690067, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.265 - } - }, - { - "model": "feed.shape", - "pk": 848, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93796149488666, - "shape_pt_lon": -84.0440534496211, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.298 - } - }, - { - "model": "feed.shape", - "pk": 849, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93777133769974, - "shape_pt_lon": -84.0443836171542, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.34 - } - }, - { - "model": "feed.shape", - "pk": 850, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9375818272445, - "shape_pt_lon": -84.0447196978834, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.382 - } - }, - { - "model": "feed.shape", - "pk": 851, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93745018852863, - "shape_pt_lon": -84.0449635706007, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.413 - } - }, - { - "model": "feed.shape", - "pk": 852, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93734180767617, - "shape_pt_lon": -84.0451463546949, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.436 - } - }, - { - "model": "feed.shape", - "pk": 853, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93725372200282, - "shape_pt_lon": -84.0452714142582, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.453 - } - }, - { - "model": "feed.shape", - "pk": 854, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.937108322267, - "shape_pt_lon": -84.0454262175884, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.476 - } - }, - { - "model": "feed.shape", - "pk": 855, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93692719931924, - "shape_pt_lon": -84.0455586526682, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.501 - } - }, - { - "model": "feed.shape", - "pk": 856, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93685401442958, - "shape_pt_lon": -84.0455873611916, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.51 - } - }, - { - "model": "feed.shape", - "pk": 857, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93677373653686, - "shape_pt_lon": -84.0455923110153, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.519 - } - }, - { - "model": "feed.shape", - "pk": 858, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93668019604487, - "shape_pt_lon": -84.0455680674162, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.529 - } - }, - { - "model": "feed.shape", - "pk": 859, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93646480148586, - "shape_pt_lon": -84.0454482787829, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.556 - } - }, - { - "model": "feed.shape", - "pk": 860, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93636588688585, - "shape_pt_lon": -84.0453892763726, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.569 - } - }, - { - "model": "feed.shape", - "pk": 861, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93632308831075, - "shape_pt_lon": -84.0453697036442, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.574 - } - }, - { - "model": "feed.shape", - "pk": 862, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93629762770389, - "shape_pt_lon": -84.0453615303045, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.577 - } - }, - { - "model": "feed.shape", - "pk": 863, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93624652235345, - "shape_pt_lon": -84.0453532765511, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.583 - } - }, - { - "model": "feed.shape", - "pk": 864, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93618732594838, - "shape_pt_lon": -84.0453570927397, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.59 - } - }, - { - "model": "feed.shape", - "pk": 865, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93603538344972, - "shape_pt_lon": -84.0453927689936, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.607 - } - }, - { - "model": "feed.shape", - "pk": 866, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93577991764324, - "shape_pt_lon": -84.045437957483, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.636 - } - }, - { - "model": "feed.shape", - "pk": 867, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93565154581259, - "shape_pt_lon": -84.0454621421002, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.65 - } - }, - { - "model": "feed.shape", - "pk": 868, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93558482499322, - "shape_pt_lon": -84.0455294509499, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.66 - } - }, - { - "model": "feed.shape", - "pk": 869, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93533787082614, - "shape_pt_lon": -84.0456405554627, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.69 - } - }, - { - "model": "feed.shape", - "pk": 870, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9350109333037, - "shape_pt_lon": -84.0456410811815, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.727 - } - }, - { - "model": "feed.shape", - "pk": 871, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93495968412818, - "shape_pt_lon": -84.0456087998837, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.733 - } - }, - { - "model": "feed.shape", - "pk": 872, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93464858697721, - "shape_pt_lon": -84.0456196757956, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.768 - } - }, - { - "model": "feed.shape", - "pk": 873, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93480225304748, - "shape_pt_lon": -84.046294734079, - "shape_pt_sequence": 123, - "shape_dist_traveled": 2.844 - } - }, - { - "model": "feed.shape", - "pk": 874, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93495610721508, - "shape_pt_lon": -84.0470992295944, - "shape_pt_sequence": 124, - "shape_dist_traveled": 2.933 - } - }, - { - "model": "feed.shape", - "pk": 875, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93514466639919, - "shape_pt_lon": -84.047738281775, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.007 - } - }, - { - "model": "feed.shape", - "pk": 876, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93527584609242, - "shape_pt_lon": -84.048128961463, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.052 - } - }, - { - "model": "feed.shape", - "pk": 877, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93531583349863, - "shape_pt_lon": -84.0483847176419, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.08 - } - }, - { - "model": "feed.shape", - "pk": 878, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93529983825585, - "shape_pt_lon": -84.0486296483808, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.107 - } - }, - { - "model": "feed.shape", - "pk": 879, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93545520267059, - "shape_pt_lon": -84.0486491888617, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.124 - } - }, - { - "model": "feed.shape", - "pk": 880, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9354703980085, - "shape_pt_lon": -84.0488055127148, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.142 - } - }, - { - "model": "feed.shape", - "pk": 881, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93553667972237, - "shape_pt_lon": -84.0490832368349, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.173 - } - }, - { - "model": "feed.shape", - "pk": 882, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9355977604479, - "shape_pt_lon": -84.0493162487417, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.199 - } - }, - { - "model": "feed.shape", - "pk": 883, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93570243695239, - "shape_pt_lon": -84.0495918083302, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.232 - } - }, - { - "model": "feed.shape", - "pk": 884, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93571038517426, - "shape_pt_lon": -84.0496787768477, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.241 - } - }, - { - "model": "feed.shape", - "pk": 885, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93571038484225, - "shape_pt_lon": -84.0499696558076, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.273 - } - }, - { - "model": "feed.shape", - "pk": 886, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93570321714193, - "shape_pt_lon": -84.0500954158227, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.287 - } - }, - { - "model": "feed.shape", - "pk": 887, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93566700857604, - "shape_pt_lon": -84.0503419760518, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.314 - } - }, - { - "model": "feed.shape", - "pk": 888, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93560674646944, - "shape_pt_lon": -84.0506470296121, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.348 - } - }, - { - "model": "feed.shape", - "pk": 889, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93553343216217, - "shape_pt_lon": -84.0510737676674, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.396 - } - }, - { - "model": "feed.shape", - "pk": 890, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93549263100849, - "shape_pt_lon": -84.0513075140395, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.422 - } - }, - { - "model": "feed.shape", - "pk": 891, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93546272803463, - "shape_pt_lon": -84.0515459542782, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.448 - } - }, - { - "model": "feed.shape", - "pk": 892, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93544955548966, - "shape_pt_lon": -84.0516525931019, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.46 - } - }, - { - "model": "feed.shape", - "pk": 893, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93544794162221, - "shape_pt_lon": -84.0517605730299, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.472 - } - }, - { - "model": "feed.shape", - "pk": 894, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93547169143514, - "shape_pt_lon": -84.0519830595855, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.496 - } - }, - { - "model": "feed.shape", - "pk": 895, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93548892832953, - "shape_pt_lon": -84.0521081889526, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.51 - } - }, - { - "model": "feed.shape", - "pk": 896, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93550175796293, - "shape_pt_lon": -84.0521827017793, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.519 - } - }, - { - "model": "feed.geoshape", - "pk": 1, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "geometry": "SRID=4326;LINESTRING (-84.0491138975951 9.93554944029271, -84.0491582627979 9.9355589010814, -84.0492241246225 9.93557354275506, -84.049324861376 9.9356000651633, -84.049416778843 9.93563773463719, -84.0495368755472 9.93568399531643, -84.0495945755631 9.93570316048327, -84.0496871639603 9.93571109089738, -84.0498464474787 9.93571292483817, -84.0500877222699 9.93570393244304, -84.050351168656 9.93566539329337, -84.0505937476355 9.93561786205413, -84.050878060609 9.93556519227529, -84.051108901895 9.93552922267821, -84.0513932152566 9.93548169125642, -84.0516410109878 9.93545342942273, -84.0516943904767 9.93544741074256, -84.051754475488 9.93544700627605, -84.0519579288248 9.93546627570862, -84.052131385837 9.93548939902537, -84.0522239834817 9.93550517435119, -84.0523340057342 9.93554618004823, -84.0523914948391 9.93559987797587, -84.0524281689233 9.93565552854654, -84.0524410544122 9.93572094236273, -84.0524182569563 9.93583614886311, -84.0523528383197 9.93603336648931, -84.0522832947174 9.93625691629266, -84.0522431941422 9.93639307154715, -84.0522372469934 9.93653561474882, -84.0522600443969 9.93660005206628, -84.0523423132888 9.93661957852377, -84.0524275557544 9.93659126516027, -84.0524503531584 9.93653854371827, -84.0524483707755 9.93645360359939, -84.052439450052 9.93636085286962, -84.0524268046992 9.93633386047036, -84.0524265645631 9.93630422609543, -84.0524473794854 9.93618120917912, -84.052484053706 9.93600742368285, -84.0525276661302 9.93581118236608, -84.0525355663096 9.93571876163712, -84.0525177541372 9.93563153840537, -84.0524334735888 9.93553310902874, -84.0523512340121 9.93545970504671, -84.0522451765253 9.93542065199216, -84.0521014537632 9.93541674668641, -84.0518556382803 9.93537769362758, -84.0515960083744 9.93533766423581, -84.0515277691646 9.93531364398533, -84.0514612063353 9.93528103728449, -84.0510449054667 9.93537964636139, -84.0506385823758 9.93549228868242, -84.0501428263958 9.93560853450969, -84.0499153784661 9.93564523227799, -84.0495436816674 9.9355593156005, -84.049203385401 9.93549425099087, -84.0487850070695 9.93539252590615, -84.0486462402645 9.93537592835444, -84.0486373195414 9.93528024833921, -84.0483824809879 9.93529755089066, -84.048123669054 9.93524885628052, -84.0477514451489 9.9351256875275, -84.0473850372423 9.93500538311991, -84.0470954278149 9.93492412702167, -84.046441127981 9.93480668693231, -84.0458485099908 9.93468020166955, -84.0456145784198 9.93461570602311, -84.0456080574792 9.93495613335646, -84.0455873014759 9.93502533870439, -84.045580669786 9.93533638426393, -84.045528502083 9.93558174876489, -84.0454554675517 9.9356639649666, -84.0454118867064 9.93591239555134, -84.0453571107868 9.93618345188633, -84.0453649359146 9.93630292207917, -84.0454366662581 9.93644423085287, -84.045567569655 9.93668331840604, -84.045592349228 9.93677195745002, -84.0455871324757 9.9368528887295, -84.0455467026459 9.93694152772752, -84.0454423673758 9.93708540528038, -84.0452787163273 9.9372459343465, -84.0451378640166 9.93733842710149, -84.044752821983 9.93756026309952, -84.0443585013794 9.93777652816203, -84.0438016139119 9.9381041049962, -84.0436166501913 9.93796476738381, -84.0434457982085 9.93791473560688, -84.0432203034589 9.93789047771889, -84.0429894627193 9.93791970638376, -84.0426008139046 9.93798008366965, -84.0424795244151 9.93800449142722, -84.0421782569734 9.9381380917555, -84.0419964534982 9.93816473253672, -84.0418503844357 9.93815830944601, -84.0417251823817 9.93812876322556, -84.0416449024973 9.93807176432108, -84.0416364975937 9.9380170014129, -84.0416378013257 9.9379218878614, -84.0411362584451 9.93790138516287, -84.041068473332 9.93789650346394, -84.0409289658467 9.93846399292934, -84.0409645503437 9.93868999787477, -84.0411343350368 9.93885220465146, -84.0416551779252 9.93915775668989, -84.0417942257713 9.93928866239001, -84.0418835860126 9.9394332650851, -84.0419072239736 9.93950294569722, -84.0422269282472 9.93950393195614, -84.0425117128132 9.93949212322203, -84.0429181490899 9.93945684385667, -84.0433331349077 9.93942503205056, -84.0432631191506 9.93972770605043, -84.0432957235711 9.93979024582779, -84.0433729445674 9.93981898031695, -84.0443132968873 9.94007108411656, -84.0446693302114 9.94016605495639, -84.0448273689979 9.94027244564152, -84.0455400945559 9.94046211098755, -84.0456302713637 9.94049056601295, -84.0455978789472 9.94063822457009, -84.0450688663703 9.94079717180704, -84.04474671421 9.94095438717349, -84.0446527254796 9.94105262250509, -84.0446772759114 9.9414150973303, -84.0447316948875 9.94222783326419, -84.0447692666912 9.94282430588245, -84.0447361152365 9.9430072194504, -84.0446536543918 9.94325327852743, -84.0444658512058 9.94367377439675, -84.0447574980966 9.94380472710699, -84.044883947833 9.94388103477618, -84.044952212081 9.94396870046222, -84.0449991890221 9.94440018674929, -84.045011078064 9.94457575401998, -84.045007224609 9.94495341180596, -84.0450804402532 9.94503790634203, -84.0454078875236 9.94507262278836, -84.0455018337476 9.94509663743075, -84.0455370798079 9.94516495042239, -84.0455279840503 9.94535421093323, -84.0455006967812 9.94569609354827, -84.0454636202844 9.94576019859063, -84.0453783778183 9.9458090133638, -84.0452505141197 9.94587051996754, -84.0451768005758 9.94594579827001, -84.0451498689492 9.9462925242644, -84.0451620803092 9.9463897709987, -84.0452016714679 9.94645002673405, -84.0452387476835 9.94648404073633)", - "has_altitude": false - } - }, - { - "model": "feed.geoshape", - "pk": 2, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "geometry": "SRID=4326;LINESTRING (-84.0491114962244 9.93554615993122, -84.0492324408382 9.93557253860416, -84.0493243902202 9.93559719650295, -84.0495039565472 9.93566832503712, -84.0495983130441 9.93570246673155, -84.0496907438365 9.93570957958473, -84.0498491281346 9.93571147624034, -84.0500893518124 9.93570246663722, -84.0503237982121 9.93566785089355, -84.0505362327233 9.93562801871054, -84.0507591258626 9.93558581568109, -84.0510354553896 9.93553934502577, -84.0513535074206 9.93548718391971, -84.0516944413929 9.93544590778002, -84.0517683691601 9.93544406437546, -84.0521913460308 9.93549752617786, -84.0522746314152 9.93552149197739, -84.0523420082619 9.93554545760814, -84.0523981556341 9.93560168465873, -84.0524318440576 9.93565791169966, -84.0524430735317 9.935720591012, -84.0524187427515 9.93583857529975, -84.0523466867771 9.93605505885652, -84.0522802455722 9.93627443620344, -84.052243749702 9.93639436894143, -84.0522390707544 9.93653263180367, -84.0523349506756 9.93679802054417, -84.0524313369778 9.93706910208629, -84.0525380169441 9.93735023603007, -84.0526437612861 9.9375714563375, -84.0527027160271 9.93774105816322, -84.0527151488461 9.93778978041929, -84.0527273141104 9.93794647765702, -84.0527076622996 9.93809150988507, -84.052635606505 9.93815511047925, -84.0521246655647 9.93840121696546, -84.051894479649 9.93857142751338, -84.0516156036497 9.93879176765612, -84.0514555284908 9.93890106345436, -84.0513020294891 9.93897507515302, -84.0511345760324 9.9390141956147, -84.0509224405605 9.93905117558812, -84.0506014881021 9.93906597792292, -84.0501243834524 9.93909856537408, -84.0497656390733 9.93910318560055, -84.049652930016 9.93906512245888, -84.0495133854688 9.9389773657529, -84.0493115816303 9.93881453893313, -84.0490281988577 9.93860413409909, -84.0488647834885 9.93847607358095, -84.0486425856324 9.93830796101282, -84.0484368995492 9.93812775111203, -84.0482768335369 9.93798100124938, -84.0479566982914 9.93768022319365, -84.0479111252314 9.93763286635998, -84.0478722576937 9.93758319780721, -84.0478404135935 9.93753870216281, -84.0478139339113 9.9374942065184, -84.0477923420699 9.93745024180206, -84.0477606919451 9.93735938216936, -84.0477606931305 9.93724916693389, -84.0477784341865 9.93715177760806, -84.0477987581936 9.93705710158646, -84.0479001602699 9.93672866697375, -84.0479940310818 9.93643873625598, -84.0481209106209 9.93605459371357, -84.0481497577059 9.93594785009141, -84.0481926863882 9.93584672067646, -84.0482902977589 9.93562414968525, -84.0483541402688 9.93555563302149, -84.048395536302 9.93552377293763, -84.0484359265072 9.93549323384328, -84.0485562630898 9.93545924101029, -84.0486084574091 9.93545410965148, -84.0486583047952 9.93545261101962, -84.0486381383254 9.93527714539185, -84.0483849370953 9.93529369875646, -84.0481250138729 9.93524845287248, -84.0476876510322 9.93510490695821, -84.0471049676225 9.93492309622952, -84.0463710454434 9.93478795156821, -84.0458810362687 9.93468712924438, -84.0456150110652 9.93461716476174, -84.045615726073 9.93466453460568, -84.0456098658075 9.93495411611772, -84.0455893287031 9.93501867239507, -84.0455828491321 9.93533255656777, -84.0455310895244 9.93558174215077, -84.0454587191306 9.93565354440517, -84.0453935565556 9.93601427775509, -84.0453574183472 9.93618250695711, -84.0453568135217 9.93624056084127, -84.0453642553238 9.93629795423082, -84.0455215059456 9.93659318251401, -84.0455703414396 9.93667976807258, -84.0455957359235 9.9367692395777, -84.0455879222361 9.93685293870503, -84.0455491295231 9.93694173624727, -84.0454446214555 9.93708123470739, -84.0452817159445 9.93724313131711, -84.0451254422096 9.93734607124923, -84.0448724740612 9.93748749351063, -84.0446484093239 9.93761860756564, -84.0443002302728 9.93781098243242, -84.0439934603325 9.93799146315684, -84.0438034580265 9.93810165004318, -84.0436169062427 9.93796407612903, -84.043444027742 9.93791116339785, -84.0432193842326 9.93788614994896, -84.0429361376045 9.93792655633902, -84.0424812505301 9.93800099196738, -84.0421772565051 9.93813818359375, -84.0419985184082 9.93816415907815, -84.0418510350607 9.9381545385288, -84.0417260160641 9.93812567687818, -84.0416527622632 9.93807564954973, -84.0416384252501 9.93804289664845, -84.0416361581774 9.93801311595451, -84.0416381115992 9.93792172067878, -84.0412122658535 9.93790247956499, -84.0410686893496 9.93789478311904, -84.040969095546 9.93830046896954, -84.0409298363785 9.93846168564775, -84.040967928104 9.93868873033166, -84.0411370173071 9.93884815398905, -84.0416568644267 9.93915383599336, -84.0417935755105 9.93928521203319, -84.0418876857024 9.93942977628924, -84.0419089725314 9.93950150662073, -84.0422428396408 9.93950371370814, -84.0425204684191 9.93948613333313, -84.0430246306461 9.93944529338017, -84.0433356324423 9.93942327481619, -84.0432655607324 9.93972442200525, -84.043299171515 9.93978732393233, -84.0433809579747 9.93981711902594, -84.0437596394605 9.93991974845217, -84.0443170698121 9.94007043205839, -84.0446744654815 9.94016533658292, -84.0448268343636 9.94027017298111, -84.045244089757 9.94038169599758, -84.045632855511 9.94048873914792, -84.045599244728 9.94063882056966, -84.0450681942005 9.94079662666821, -84.044750328054 9.94095071185347, -84.0446554341072 9.9410528605391, -84.04469185811 9.94157411286451, -84.0447474726987 9.94242227255298, -84.0447699014639 9.94283107241787, -84.0447350564938 9.94300697065598, -84.0446544775012 9.94326009234421, -84.0445407320727 9.94351468777105, -84.0444710421328 9.94366913468646, -84.0447541575134 9.9437999854876, -84.0448848261506 9.94388149907578, -84.0449552037605 9.94396600743452, -84.0449932717292 9.94433419150155, -84.0450138149367 9.94457398813642, -84.045010504636 9.94495221337372, -84.0450833311997 9.94503698779598, -84.045389534011 9.94506796311185, -84.0455020842335 9.94509404758507, -84.0455418078417 9.94516741015652, -84.0455036631251 9.94569411437748, -84.0454645549726 9.94576235686358, -84.0452550477597 9.94586939851089, -84.0451777429595 9.94594554151604, -84.0451530949856 9.94629085058927, -84.0451636656039 9.94638848955421, -84.0452028781838 9.94644918315917, -84.0452462913844 9.94648865740507)", - "has_altitude": false - } - }, - { - "model": "feed.geoshape", - "pk": 3, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "geometry": "SRID=4326;LINESTRING (-84.052232462037 9.93551240308205, -84.0523024805564 9.93553038682294, -84.0523354193901 9.93554317941351, -84.0523952582046 9.93560006968185, -84.0524284133704 9.93565298376728, -84.0524404498132 9.93571914349433, -84.0524171180445 9.93583719162457, -84.0523801266021 9.93594643029256, -84.0523343631691 9.93608834513962, -84.0522977078958 9.93620422239772, -84.0522711599884 9.936293049843, -84.0522405229359 9.93639226353531, -84.0522367457551 9.93653093553953, -84.0522590055211 9.93659589447438, -84.0523412639074 9.93661615058734, -84.0524260404882 9.9365876265418, -84.0524499625703 9.9365355393877, -84.0524473462339 9.93644867420793, -84.0524384481957 9.93635813864212, -84.052426075736 9.93632957313295, -84.0524254379402 9.93630067737655, -84.0524455386407 9.9361767385198, -84.0524692189919 9.93606938255121, -84.0525134237392 9.9358662876061, -84.0525277028597 9.93580530982546, -84.0525351455981 9.93571720324209, -84.0525170973821 9.93562932790421, -84.0524334827489 9.93552958615174, -84.052350672979 9.93545575661828, -84.0522446182099 9.93541638163459, -84.0520977731443 9.93541236377893, -84.0517673714683 9.9353609350822, -84.0515957473315 9.93533537431955, -84.0514578761312 9.93527832074849, -84.051051560594 9.93537394568805, -84.0506488451042 9.93548509593826, -84.0503446866737 9.93555656904013, -84.0501407351937 9.93560639042598, -84.0499188359838 9.93564014039442, -84.0495240741516 9.93555237106771, -84.0493169635181 9.9355127171103, -84.0490255135247 9.93544759669272, -84.0487899823799 9.93538988817417, -84.0486447689264 9.93537301317815, -84.0486366108669 9.93527658461171, -84.0483784246656 9.93529274995559, -84.0481238929513 9.93524694618673, -84.0478057230236 9.93514165787212, -84.0473807827294 9.93500316815773, -84.0470859236543 9.93492049042863, -84.0464195689003 9.93479657132182, -84.0458857020311 9.93468604728109, -84.0456137031377 9.9346124699569, -84.0456081393267 9.93481022852054, -84.0456083692307 9.93495379560579, -84.0455873976348 9.93502122053513, -84.0455815527507 9.93525069991888, -84.0455791055204 9.93533621207088, -84.0455277100451 9.9355796939962, -84.0454545424224 9.93566141737569, -84.0454033749615 9.93593880374486, -84.0453561940705 9.93617987563359, -84.0453622217276 9.93629878421235, -84.0454544077961 9.93647074793075, -84.0455491574187 9.9366470154013, -84.0455671051487 9.93667996169247, -84.0455923951325 9.93677076487081, -84.0455875957907 9.93685019478803, -84.0455459896891 9.93693939078323, -84.0454405657035 9.93708216879507, -84.0452791956738 9.9372417505605, -84.0451437718914 9.93733175001592, -84.0448843455207 9.93747880276838, -84.0446848467803 9.93759383837854, -84.0443877220931 9.93775722150572, -84.0440980878075 9.93792650160209, -84.0437999865192 9.93809919166979, -84.0436147985756 9.93796097853527, -84.0434434787742 9.93791115773413, -84.0432188653814 9.9378853721441, -84.0429382281456 9.93792474683056, -84.0425692976739 9.93798421082772, -84.0424760119919 9.93799717971221, -84.0421774270254 9.93813619639644, -84.0419972282554 9.93816151133474, -84.0418487515775 9.93815347569085, -84.0417223014224 9.93812695789198, -84.041649694696 9.93807552975984, -84.0416317469654 9.93801445884308, -84.0416350505556 9.93791897942971, -84.0410687729965 9.93789540463778, -84.0409278059346 9.93846102257875, -84.0409636843222 9.93868770509072, -84.0411317795776 9.93884702967763, -84.0416545090707 9.93915009329333, -84.0417940169538 9.93928437269097, -84.0418844077991 9.93942339095397, -84.0419066090587 9.93949992907343, -84.0422475569833 9.93949992907343, -84.043074 9.939437, -84.0433290766316 9.9394249524573, -84.0432616940963 9.93972312001197, -84.0432938739159 9.9397847344284, -84.0433818049407 9.9398186343525, -84.0440308770623 9.93998824672434, -84.0446658158992 9.94015974971341, -84.0448245474961 9.94026910203425, -84.0451873514683 9.94036490303632, -84.0456290389484 9.94048769323097, -84.0455931434884 9.94063635155576, -84.0450690355552 9.94079234514589, -84.0447505513004 9.94094918383372, -84.0446520351469 9.94104532842372, -84.0446571934664 9.94113081479986, -84.0446770863329 9.94144321527622, -84.0447142198439 9.94195499816524, -84.0447371192727 9.94233948335795, -84.0447624203313 9.94270561942093, -84.0447662997461 9.94282741926446, -84.0447342405736 9.94300876520552, -84.044661630678 9.94322619282253, -84.0446070756693 9.94336188947768, -84.0444664621215 9.94366938860733, -84.0447499441632 9.94379763572232, -84.0448781808515 9.94387703073651, -84.0449496270056 9.94396544788927, -84.0450074182673 9.94454435151914, -84.0450098494603 9.94494922686726, -84.0450726102459 9.94503488859595, -84.0453994971357 9.94506635931216, -84.0454999143925 9.94509373573383, -84.0455384857143 9.94516587977827, -84.045501640108 9.94569334489241, -84.0454572011088 9.94576818120904, -84.0453571624431 9.94581918999885, -84.0452494124261 9.94586821736523, -84.0451749917014 9.94594549545337, -84.045149887399 9.94628917517751, -84.0451617577946 9.946387887887, -84.0451994142665 9.94644528982524, -84.0452511227568 9.94649012442296)", - "has_altitude": false - } - }, - { - "model": "feed.geoshape", - "pk": 4, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "geometry": "SRID=4326;LINESTRING (-84.0522203008732 9.93551129613598, -84.0522927059177 9.9355310767404, -84.0523347118824 9.93554722789095, -84.0523891977038 9.93559998927965, -84.0524266115309 9.93565665681396, -84.0524387877407 9.93572400544303, -84.0524163085106 9.93583791088976, -84.0524004247557 9.93589348533485, -84.0523801824105 9.93594773879152, -84.052302832233 9.93618639604332, -84.0522406782275 9.93639684624757, -84.0522361299255 9.93653551980098, -84.0523076585187 9.93673682209909, -84.05243186663 9.93708559662569, -84.0525288520072 9.93733577696727, -84.0526438746271 9.93757969853555, -84.0527043524954 9.9377485826659, -84.0527107981436 9.93779188190045, -84.0527199326082 9.93787132360124, -84.0527243732062 9.93795076530203, -84.0527168419396 9.93802242474458, -84.0527036109785 9.93809408418712, -84.0526341385986 9.93815622170643, -84.0524441849862 9.93824866125399, -84.0521210493447 9.93840212874288, -84.0518711468269 9.93859022704029, -84.0517146035903 9.9387164365478, -84.0515516901066 9.93883769238516, -84.0514467461262 9.93890538473733, -84.051298218969 9.93897774723731, -84.0511281313016 9.93901864778466, -84.0509181170952 9.93905404247567, -84.0503591447661 9.93908393146568, -84.0501183551865 9.93910272348104, -84.0499402779348 9.93910706388403, -84.0497648828928 9.93910711111161, -84.0496439745831 9.93906715286185, -84.0494999920866 9.93897699483947, -84.0492839130465 9.93879865248422, -84.0489259634067 9.93852631535243, -84.0486415140485 9.9383125595628, -84.0484645585026 9.93816149920894, -84.0483041187788 9.93801276292967, -84.0479456361923 9.93767314890347, -84.0479035036496 9.93762896738312, -84.0478664002497 9.9375818136517, -84.0478370279249 9.9375407094932, -84.0478110083611 9.93749795410686, -84.0477901145765 9.93745496587906, -84.0477598330601 9.93736508273494, -84.047759267964 9.93726069019733, -84.047793713066 9.93707479279145, -84.0478715216077 9.93681544721791, -84.0479476285628 9.93657305173134, -84.0480642553351 9.93622234344519, -84.0481251956082 9.93602464016541, -84.0481829479595 9.93585590049247, -84.0482522936584 9.9357089398831, -84.0482869664637 9.93563189742607, -84.0483531600847 9.93556048694849, -84.048435114092 9.93549839086817, -84.0485569944104 9.93546527295384, -84.0486547088036 9.9354549236054, -84.048634745016 9.93528001900853, -84.0483794267626 9.93529761291067, -84.0481286733116 9.9352527346308, -84.0477461762194 9.93512765815873, -84.0471055797031 9.93492703280895, -84.046354626689 9.93478949058113, -84.0458746565008 9.93469070939338, -84.0456143293 9.93462060674132, -84.0456070252698 9.93489289845325, -84.045606154414 9.93495950947043, -84.0455877894747 9.93502573261312, -84.0455793808645 9.93533984703067, -84.0455366983597 9.93553106245252, -84.0455256779408 9.93558489672501, -84.0454519050346 9.93566584972937, -84.0453870153627 9.93603020143902, -84.0453504149565 9.93619941008339, -84.0453617663184 9.93630011253566, -84.0454755016038 9.93651948121636, -84.0455653411938 9.93668368683727, -84.045589182648 9.93677258981834, -84.0455874796866 9.93685310570445, -84.0455437249918 9.93694508327091, -84.0454400845081 9.93708383542657, -84.045309807991 9.93721635101928, -84.0452761874456 9.93724819645461, -84.0451229209554 9.93734716375109, -84.0448187291416 9.93752119585777, -84.0445416760749 9.93767426097248, -84.0442186256065 9.93785833808635, -84.0437983732383 9.93810435753431, -84.0436125738981 9.93796632120651, -84.0434414999464 9.93791432144543, -84.0432184120559 9.93788832161072, -84.042939145496 9.93792789506808, -84.0425252959219 9.93799597108977, -84.0424724302894 9.93800488549925, -84.0421750587842 9.9381395635656, -84.0419988023209 9.93816556338036, -84.0418468568672 9.93815877702913, -84.0417208377531 9.93812774499086, -84.0416827286396 9.93810465445374, -84.0416493133915 9.93807826146448, -84.0416349312544 9.93804738144964, -84.0416322837814 9.93801451996184, -84.0416346601389 9.93792436774485, -84.041067340985 9.93790082410227, -84.0409284047187 9.93846425290711, -84.0409624274215 9.93868651413261, -84.0411341586918 9.93885247660523, -84.0416474460876 9.93915539473273, -84.0417889786806 9.93928861127028, -84.0418813247414 9.9394354239606, -84.0419056263361 9.93950244712471, -84.042239368576 9.93950244613303, -84.0425196469705 9.93949446718606, -84.0429991991022 9.93945457168453, -84.043331873611 9.93942712460796, -84.0432605742965 9.93972789866721, -84.0432941313524 9.93979051078508, -84.0433753940134 9.93982252793726, -84.0437147893588 9.93991292983544, -84.0441287509128 9.94002028140903, -84.0446669802431 9.94016644833328, -84.044823754755 9.94027078687104, -84.0456295904777 9.94048864067421, -84.045594280927 9.9406416703034, -84.0450692602221 9.94079771456593, -84.0447481499267 9.9409503711104, -84.0446521079484 9.94105192700053, -84.0446962954808 9.94171142158802, -84.0447683576565 9.94281915936154, -84.0447317924328 9.94301266464211, -84.0446461368594 9.94326484610015, -84.0444664659679 9.94367235170777, -84.044752272012 9.94380140312083, -84.0448814333755 9.9438796367465, -84.0449503878825 9.94396952509255, -84.044987908675 9.94433433418409, -84.0450080280451 9.94457411376674, -84.0450080280451 9.94495390060397, -84.0450786471473 9.94504571713547, -84.0453964329445 9.94507075688808, -84.0454995368328 9.94509858007239, -84.0455360879379 9.94517301639726, -84.0455012141288 9.94569599438186, -84.0454579354822 9.94576731883437, -84.0452474905592 9.94587443785238, -84.0451754590753 9.94594677794762, -84.0451469719024 9.94629204599402, -84.0451610957222 9.9463908179176, -84.0451992300371 9.94645063751956, -84.0452562192863 9.94649738913102)", - "has_altitude": false - } - }, - { - "model": "feed.geoshape", - "pk": 5, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "geometry": "SRID=4326;LINESTRING (-84.0452793145875 9.94651439468106, -84.0453635889366 9.94656979269062, -84.0455133598416 9.94668819013391, -84.0456333624982 9.94677813595565, -84.0458288226395 9.94692110409536, -84.0458784281265 9.94699667079666, -84.0458729567443 9.94709290535486, -84.0457747817661 9.94722193423012, -84.0456766067879 9.94733469552996, -84.0455812484176 9.94735240267321, -84.0454835451677 9.94731698838683, -84.045155482603 9.94706401578786, -84.0449388905875 9.94695753981341, -84.0447927265256 9.94685591607748, -84.0447132911805 9.94674691466528, -84.0446929689046 9.94663836196663, -84.0447054750041 9.9465853910728, -84.0447469011822 9.94652457073993, -84.0447977068717 9.94630948675802, -84.0448235005163 9.94606507414992, -84.0451642894519 9.94607893196729, -84.0451842895768 9.94594726623906, -84.0452538542911 9.94587566747948, -84.0454601695233 9.94577795917383, -84.0455125384658 9.94569943146, -84.0455252458136 9.94545154684154, -84.0455414357082 9.94516751299271, -84.0455037479672 9.94508849180003, -84.0453835472561 9.94505511036374, -84.045084965639 9.94502739484005, -84.0450504044021 9.94499479036127, -84.0450208723069 9.94494963682908, -84.0450154011338 9.94467428591231, -84.0450041637077 9.94435778151253, -84.0449287137552 9.94347268380579, -84.0448982678798 9.94295817880508, -84.0448587644203 9.94230048632557, -84.0448222996627 9.94171228683352, -84.0447760219723 9.94096530647596, -84.0448740739734 9.94090663320268, -84.0449871934796 9.94084406020503, -84.0452171289551 9.94077751897418, -84.0453974813657 9.94072156165138, -84.0456042948351 9.94066022328121, -84.0456331735173 9.94049309734092, -84.0454384499972 9.94043960234258, -84.0451953028132 9.94037244769911, -84.0448203307503 9.94027492444419, -84.0447437519701 9.94022435173391, -84.0446621944019 9.94016681408322, -84.044417503094 9.94010200702146, -84.0444809655781 9.93987745974345, -84.0445245874922 9.93971459423953, -84.0446392902696 9.93927560616025, -84.0446560771702 9.93920545121652, -84.0446448875091 9.93916110643307, -84.0446191813258 9.93912385292449, -84.0445525134932 9.93911625815432, -84.0443337547524 9.93919941590806, -84.044006444136 9.93911055274011, -84.0436747724812 9.9390190082839, -84.0434673567427 9.93895911426052, -84.0433689432454 9.9392879865273, -84.0433274860744 9.93942115014918, -84.0429942406062 9.93944755512195, -84.0427365454686 9.93946810072644, -84.0424561880641 9.93949017843466, -84.0421337910545 9.93949896641922, -84.0419274245262 9.93950631475532, -84.0418524186819 9.93932958005353, -84.041691039804 9.93916814008368, -84.0414413521148 9.93900519121203, -84.0411391429389 9.93882565486029, -84.0410728454411 9.93878072700935, -84.0410213000932 9.93872490109004, -84.0409544792739 9.93861004710345, -84.0409494403816 9.93847396797512, -84.0410341635524 9.93814652860348, -84.0411014405278 9.93790671250708, -84.0413834314017 9.93791663555238, -84.0416285810649 9.93793079347671, -84.0416254546011 9.93801967154644, -84.0416431189912 9.93807996226397, -84.0416788253891 9.93810791480517, -84.0417178845482 9.93813256489417, -84.0418440755105 9.9381630635316, -84.0419580950124 9.93816840355805, -84.0420632597521 9.93816233402513, -84.0421742120474 9.93814321123235, -84.042431585693 9.93803086770445, -84.0424780922361 9.93800811636062, -84.0426586032431 9.93798034157711, -84.0430584128099 9.93791715763552, -84.0431955755255 9.93789378213828, -84.0434355505527 9.9379228858361, -84.0435100147268 9.93793324365073, -84.0436073742708 9.93796925623814, -84.0437957690067 9.93811129632628, -84.0440534496211 9.93796149488666, -84.0443836171542 9.93777133769974, -84.0447196978834 9.9375818272445, -84.0449635706007 9.93745018852863, -84.0451463546949 9.93734180767617, -84.0452714142582 9.93725372200282, -84.0454262175884 9.937108322267, -84.0455586526682 9.93692719931924, -84.0455873611916 9.93685401442958, -84.0455923110153 9.93677373653686, -84.0455680674162 9.93668019604487, -84.0454482787829 9.93646480148586, -84.0453892763726 9.93636588688585, -84.0453697036442 9.93632308831075, -84.0453615303045 9.93629762770389, -84.0453532765511 9.93624652235345, -84.0453570927397 9.93618732594838, -84.0453927689936 9.93603538344972, -84.045437957483 9.93577991764324, -84.0454621421002 9.93565154581259, -84.0455294509499 9.93558482499322, -84.0456405554627 9.93533787082614, -84.0456410811815 9.9350109333037, -84.0456087998837 9.93495968412818, -84.0456196757956 9.93464858697721, -84.046294734079 9.93480225304748, -84.0470992295944 9.93495610721508, -84.047738281775 9.93514466639919, -84.048128961463 9.93527584609242, -84.0483847176419 9.93531583349863, -84.0486296483808 9.93529983825585, -84.0486491888617 9.93545520267059, -84.0488055127148 9.9354703980085, -84.0490832368349 9.93553667972237, -84.0493162487417 9.9355977604479, -84.0495918083302 9.93570243695239, -84.0496787768477 9.93571038517426, -84.0499696558076 9.93571038484225, -84.0500954158227 9.93570321714193, -84.0503419760518 9.93566700857604, -84.0506470296121 9.93560674646944, -84.0510737676674 9.93553343216217, -84.0513075140395 9.93549263100849, -84.0515459542782 9.93546272803463, -84.0516525931019 9.93544955548966, -84.0517605730299 9.93544794162221, -84.0519830595855 9.93547169143514, -84.0521081889526 9.93548892832953, -84.0521827017793 9.93550175796293)", - "has_altitude": false - } - }, - { - "model": "feed.geoshape", - "pk": 6, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "geometry": "SRID=4326;LINESTRING (-84.0452709224469 9.94651450274987, -84.0453586296957 9.9465713930344, -84.0455321860811 9.94670523135418, -84.0457428830683 9.94685977487793, -84.0458252584096 9.94692114024093, -84.045874911642 9.94699848130395, -84.0458702927366 9.94709174550324, -84.0456762984049 9.94733286724273, -84.0455816108455 9.94734992775087, -84.0454811496546 9.94731694409985, -84.0451520526366 9.94706331033958, -84.044934964086 9.94695639770921, -84.0447940381815 9.94685739750313, -84.0447120526121 9.94674934743632, -84.0446901128118 9.94663902259388, -84.0447036688627 9.94658480665502, -84.0447440842844 9.94652566341521, -84.0447956225084 9.94631063663281, -84.0448175623087 9.94607861289951, -84.0448198717614 9.94606268969643, -84.0451616705072 9.94607633849742, -84.0451794721398 9.94594816328299, -84.0452499104458 9.94587650883204, -84.0454566064596 9.94577755742257, -84.0455092507792 9.94570040854178, -84.0455392738468 9.94516698035057, -84.0455023654374 9.94508917283893, -84.045382273899 9.94505732633557, -84.0450808903258 9.94502889195332, -84.0450173803773 9.94495155042415, -84.045015769873 9.94472000465252, -84.0449868892884 9.94425679788889, -84.0449568041774 9.94389594579139, -84.0449197895004 9.9433847319748, -84.0448773383005 9.94261500079999, -84.0448390343892 9.94204155986042, -84.0448024388483 9.94137698645447, -84.0447771566035 9.94096102380372, -84.0450446175143 9.94082181962447, -84.0456053336701 9.94065523781238, -84.045634999557 9.94048314593914, -84.0452283043053 9.9403780406827, -84.04482278961 9.9402703855621, -84.0446641785108 9.94016328794055, -84.0444165990228 9.94010181117775, -84.0445263287881 9.93971666992378, -84.0446221116145 9.93932936015097, -84.0446545394456 9.93920408915902, -84.0446456512568 9.9391568243881, -84.0446159514984 9.93912509354336, -84.0445637722231 9.93911021843789, -84.0443354246074 9.93919615665697, -84.043697 9.939024, -84.0434647440871 9.9389589108528, -84.0433689657322 9.93927926961302, -84.0433251613281 9.9394214266361, -84.043078 9.939438, -84.0424704121516 9.93949676004582, -84.0423387592283 9.93950197815545, -84.042195874555 9.93950471943605, -84.0420595652431 9.93950937287681, -84.0419237588459 9.93950560510053, -84.0418526043861 9.93932694656827, -84.0416871226965 9.93916441674404, -84.0415030389796 9.93904364750639, -84.0411360631089 9.93882652989536, -84.0410711382821 9.93877761093714, -84.0410192892248 9.93872439879922, -84.0409548622543 9.93860739420377, -84.0409464827492 9.93847712489684, -84.0409847362632 9.93831748290179, -84.0410975311932 9.93790526804534, -84.0413721007657 9.93791543483811, -84.0416234000621 9.93792971313351, -84.0416214268987 9.93801943406157, -84.0416385167757 9.93808013647371, -84.0417143841426 9.9381333560273, -84.0417661717713 9.9381491692212, -84.0418402279053 9.93816498245021, -84.041955196169 9.93817110369939, -84.0420620743374 9.93816447211196, -84.042172549653 9.93814558312971, -84.0423590295751 9.93806546361139, -84.0424754995415 9.93800868895506, -84.0426277550985 9.93798455282835, -84.0429680898401 9.93793303246509, -84.0431865014681 9.93789255913571, -84.0434262188335 9.93792278510311, -84.0435140997635 9.93793612530689, -84.0436045719397 9.93796843588535, -84.0437946545471 9.93811029202329, -84.044044224914 9.93796317506452, -84.0443497474269 9.93778888741941, -84.0447040111923 9.93759056212761, -84.0449773758339 9.93743889754011, -84.0451442319336 9.93734106177819, -84.0452700748287 9.93725220134541, -84.0454232410009 9.93710383236486, -84.045480287002 9.93703302156643, -84.0455559204937 9.93692669580576, -84.0455868138288 9.93685320196694, -84.045591032246 9.93677214106483, -84.0455673986725 9.93667892839703, -84.0454873867401 9.93652937757293, -84.0454491600057 9.93646683969579, -84.0454129449283 9.93640033885562, -84.0453776127618 9.93634297166293, -84.0453623778292 9.93629576054226, -84.0453512637102 9.93624363287526, -84.0453538959122 9.9361862212533, -84.0453890269646 9.93603883510741, -84.0454308854351 9.93580414505913, -84.0454587046985 9.93565385732093, -84.0455252542674 9.93558390036268, -84.0455798539966 9.93547184500151, -84.0456377473207 9.93533906172064, -84.0456383288227 9.93501118853525, -84.0456086223286 9.93495718975151, -84.0456168978697 9.93465006354252, -84.0461340991613 9.93477095640989, -84.0468176973466 9.93490403346722, -84.0471113963055 9.93495932029753, -84.0474601236579 9.93505827498137, -84.0478899692808 9.93519897363926, -84.0481284685146 9.93527449143981, -84.0483778894022 9.93531543817006, -84.0486249437023 9.93529755715117, -84.0486430566726 9.93545425079317, -84.0488000764969 9.9354703595261, -84.0490437766179 9.9355323422866)", - "has_altitude": false - } - }, - { - "model": "feed.gtfsprovider", - "pk": 1, - "fields": { - "code": "bUCR", - "name": "bUCR", - "description": "Bus de la UCR", - "website": "https://bucr.digital", - "schedule_url": null, - "trip_updates_url": null, - "vehicle_positions_url": null, - "service_alerts_url": null, - "timezone": "America/costa_rica", - "is_active": true - } - }, - { - "model": "feed.feedinfo", - "pk": 1, - "fields": { - "feed": 1, - "feed_publisher_name": "TCU Tropicalización de la Tecnología", - "feed_publisher_url": "https://tropicalizacion.eie.ucr.ac.cr/", - "feed_lang": "es", - "feed_start_date": "2024-10-01", - "feed_end_date": "2024-12-21", - "feed_version": "v2024.2.1", - "feed_contact_email": "fabian.abarca@ucr.ac.cr" - } - }, - { - "model": "feed.feed", - "pk": 1, - "fields": { - "gtfs_provider": 1, - "http_etag": null, - "http_last_modified": "2024-07-11T00:00:00Z", - "is_current": true, - "retrieved_at": "2024-07-11T04:28:41.332Z" - } - } -] \ No newline at end of file + { + "model": "feed.agency", + "pk": 1, + "fields": { + "feed": "1", + "agency_id": "bUCR", + "agency_name": "Buses de la Universidad de Costa Rica", + "agency_url": "https://bus.ucr.ac.cr/", + "agency_timezone": "America/Costa_Rica", + "agency_lang": "es", + "agency_phone": "25112919", + "agency_fare_url": "https://bus.ucr.ac.cr/#tarifas", + "agency_email": "bus@ucr.ac.cr" + } + }, + { + "model": "feed.route", + "pk": 1, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "agency_id": "bUCR", + "route_short_name": "bUCR L1", + "route_long_name": "Bus interno UCR sin milla", + "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, y no incluye la vuelta por la milla universitaria.", + "route_type": 3, + "route_url": "https://bus.ucr.ac.cr/#L1", + "route_color": "00C0F3", + "route_text_color": "FFFFFF", + "route_sort_order": null + } + }, + { + "model": "feed.route", + "pk": 2, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "agency_id": "bUCR", + "route_short_name": "bUCR L2", + "route_long_name": "Bus interno UCR con milla", + "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, e incluye la vuelta por la milla universitaria.", + "route_type": 3, + "route_url": "https://bus.ucr.ac.cr/#L2", + "route_color": "005DA4", + "route_text_color": "FFFFFF", + "route_sort_order": null + } + }, + { + "model": "feed.stop", + "pk": 1, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_01", + "stop_code": "", + "stop_name": "Facultad de Educación", + "stop_desc": "Frente al jardín de la Facultad de Educación (FE)", + "stop_lat": 9.935610136323218, + "stop_lon": -84.04899295728595, + "stop_point": "SRID=4326;POINT (-84.04899295728595 9.935610136323218)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 2, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_02", + "stop_code": "", + "stop_name": "Escuela de Artes Plásticas", + "stop_desc": "Nuevo edificio de la Escuela de Artes Plásticas (EAP)", + "stop_lat": 9.935501598287884, + "stop_lon": -84.05217559901489, + "stop_point": "SRID=4326;POINT (-84.05217559901489 9.935501598287884)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 3, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_03", + "stop_code": "", + "stop_name": "Biblioteca de Ciencias de la Salud", + "stop_desc": "Frente al antiguo edificio de la Facultad de Odontología (FOd), diagonal al parqueo de la Biblioteca de Ciencias de la Salud", + "stop_lat": 9.93860832346218, + "stop_lon": -84.0517499001992, + "stop_point": "SRID=4326;POINT (-84.0517499001992 9.93860832346218)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 4, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_04", + "stop_code": "", + "stop_name": "Facultad de Microbiología", + "stop_desc": "Esquina noreste del parqueo de las Escuelas de Artes Musicales (EAM), Química (EQ) y Biología (EB) y la Facultad de Microbiología (FMic)", + "stop_lat": 9.93832361909286, + "stop_lon": -84.04876049840074, + "stop_point": "SRID=4326;POINT (-84.04876049840074 9.93832361909286 )", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 5, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_05", + "stop_code": "", + "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME)", + "stop_lat": 9.935903915437937, + "stop_lon": -84.04537504744147, + "stop_point": "SRID=4326;POINT (-84.04537504744147 9.935903915437937)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_LA", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 6, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_06", + "stop_code": "", + "stop_name": "Facultad de Ingeniería", + "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI)", + "stop_lat": 9.937467311441509, + "stop_lon": -84.04467644300775, + "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_FI", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 7, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_07", + "stop_code": "", + "stop_name": "Facultad de Ciencias Sociales", + "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", + "stop_lat": 9.938029607676915, + "stop_lon": -84.04237892478906, + "stop_point": "SRID=4326;POINT (-84.04237892478906 9.938029607676915)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_CS", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 8, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_08", + "stop_code": "", + "stop_name": "Instituto de Investigación en Educación (INIE)", + "stop_desc": "Costado sur del edificio del Instituto de Investigación en Educación (INIE)", + "stop_lat": 9.939451647823136, + "stop_lon": -84.04307776266035, + "stop_point": "SRID=4326;POINT (-84.04307776266035 9.939451647823137)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 9, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_09", + "stop_code": "", + "stop_name": "Centro de Investigación en Cirugía y Cáncer (CICICA)", + "stop_desc": "Costado sur del edificio del Centro de Investigación en Cirugía y Cáncer (CICICA)", + "stop_lat": 9.940155168862551, + "stop_lon": -84.04450675690296, + "stop_point": "SRID=4326;POINT (-84.04450675690296 9.940155168862551)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 10, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_10", + "stop_code": "", + "stop_name": "Oficina de Bienestar y Salud (OBS)", + "stop_desc": "Entre el nuevo edificio de la Oficina de Bienestar y Salud (OBS) y el Estadio Ecológico", + "stop_lat": 9.943761220391433, + "stop_lon": -84.04468346245407, + "stop_point": "SRID=4326;POINT (-84.04468346245408 9.943761220391434)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 11, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_11", + "stop_code": "", + "stop_name": "Facultad de Odontología", + "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", + "stop_lat": 9.946441050827923, + "stop_lon": -84.0451915613564, + "stop_point": "SRID=4326;POINT (-84.0451915613564 9.946441050827925)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 12, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_01", + "stop_code": "", + "stop_name": "Facultad de Odontología", + "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", + "stop_lat": 9.946529500847424, + "stop_lon": -84.04535458313804, + "stop_point": "SRID=4326;POINT (-84.04535458313804 9.946529500847424)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 13, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_02", + "stop_code": "", + "stop_name": "Escuela de Educación Física y Deportes (EDUFI)", + "stop_desc": "Costado este de las canchas multiuso y de la Escuela de Educación Física y Deportes (EDUFI)", + "stop_lat": 9.943381444081362, + "stop_lon": -84.04495180739714, + "stop_point": "SRID=4326;POINT (-84.04495180739714 9.943381444081362)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 14, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_03", + "stop_code": "", + "stop_name": "Escuela de Nutrición", + "stop_desc": "Esquina noreste del edificio de la Escuela de Nutrición (ENu)", + "stop_lat": 9.939134591559856, + "stop_lon": -84.04468654565294, + "stop_point": "SRID=4326;POINT (-84.04468654565294 9.939134591559855)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 15, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_04", + "stop_code": "", + "stop_name": "Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", + "stop_desc": "Entre el edificio de parqueos y el Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", + "stop_lat": 9.938980381389706, + "stop_lon": -84.0436758508172, + "stop_point": "SRID=4326;POINT (-84.0436758508172 9.938980381389706)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 16, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_05", + "stop_code": "", + "stop_name": "Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", + "stop_desc": "Frente al edificio del Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", + "stop_lat": 9.939472792042086, + "stop_lon": -84.042189216776, + "stop_point": "SRID=4326;POINT (-84.042189216776 9.939472792042086)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 17, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_06", + "stop_code": "", + "stop_name": "Facultad de Ciencias Sociales", + "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", + "stop_lat": 9.93813052902614, + "stop_lon": -84.04229551510366, + "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_CS", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 18, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_07", + "stop_code": "", + "stop_name": "Facultad de Ingeniería", + "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI), al otro lado de la calle", + "stop_lat": 9.937468669419962, + "stop_lon": -84.04501822768842, + "stop_point": "SRID=4326;POINT (-84.04501822768842 9.937468669419962)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_FI", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 19, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_08", + "stop_code": "", + "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME), al otro lado de la calle", + "stop_lat": 9.93589305371453, + "stop_lon": -84.04546950911886, + "stop_point": "SRID=4326;POINT (-84.04546950911886 9.93589305371453)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_LA", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 20, + "fields": { + "feed": "1", + "stop_id": "bUCR_FI", + "stop_code": "", + "stop_name": "Facultad de Ingeniería", + "stop_desc": "En las inmediaciones del edificio de la Facultad de Ingeniería", + "stop_lat": 9.937467311441509, + "stop_lon": -84.04467644300775, + "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", + "zone_id": "", + "stop_url": "", + "location_type": 1, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 21, + "fields": { + "feed": "1", + "stop_id": "bUCR_CS", + "stop_code": "", + "stop_name": "Facultad de Ciencias Sociales", + "stop_desc": "En las inmediaciones del edificio de la Facultad de Ciencias Sociales", + "stop_lat": 9.93813052902614, + "stop_lon": -84.04229551510366, + "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", + "zone_id": "", + "stop_url": "", + "location_type": 1, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.stop", + "pk": 22, + "fields": { + "feed": "1", + "stop_id": "bUCR_LA", + "stop_code": "", + "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_desc": "En las inmediaciones del Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_lat": 9.935785141707278, + "stop_lon": -84.04544067497328, + "stop_point": "SRID=4326;POINT (-84.04544067497328 9.935785141707278)", + "zone_id": "", + "stop_url": "", + "location_type": 1, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "feed.trip", + "pk": 1, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 2, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 3, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 4, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 5, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 6, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 7, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 8, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 9, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 10, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 11, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 12, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 13, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 14, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 15, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 16, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 17, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 18, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 19, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 20, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 21, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 22, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 23, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 24, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 25, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 26, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 27, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 28, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 29, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 30, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 31, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 32, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 33, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 34, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 35, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 36, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 37, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 38, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 39, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 40, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 41, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 42, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 43, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 44, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 45, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 46, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 47, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 48, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 49, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 50, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 51, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 52, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 53, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 54, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 55, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 56, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 57, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 58, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 59, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 60, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 61, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 62, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 63, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 64, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 65, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 66, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_con_milla", + "geoshape": 4, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 67, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_con_milla", + "geoshape": 4, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 68, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_06:20", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 69, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_06:40", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 70, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_06:50", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 71, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_07:00", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 72, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_07:10", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 73, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_07:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 74, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_07:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 75, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_07:50", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 76, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_08:00", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 77, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_08:35", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 78, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_08:45", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 79, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_08:55", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 80, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_09:05", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 81, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_09:25", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 82, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_09:35", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 83, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_09:45", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 84, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_09:55", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 85, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_10:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 86, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_10:25", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 87, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_10:35", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 88, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_10:45", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 89, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_11:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 90, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_11:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 91, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_11:20", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 92, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_11:30", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 93, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_11:40", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 94, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_11:50", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 95, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_12:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 96, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_12:10", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 97, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_12:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 98, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_12:25", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 99, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_12:50", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 100, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_13:00", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 101, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_13:25", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 102, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_13:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 103, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_13:50", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 104, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_14:00", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 105, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_14:10", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 106, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_14:25", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 107, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_14:35", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 108, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_14:45", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 109, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_14:55", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 110, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_15:10", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 111, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_15:20", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 112, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_15:30", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 113, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_16:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 114, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_16:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 115, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_16:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 116, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_16:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 117, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_17:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 118, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_17:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 119, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_17:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 120, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_17:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 121, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_18:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 122, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_18:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 123, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_18:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 124, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_18:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 125, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_18:55", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 126, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_19:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 127, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_19:50", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 128, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_20:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 129, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_20:40", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.trip", + "pk": 130, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_21:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "feed.stoptime", + "pk": 1, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:10:00", + "departure_time": "06:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 2, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:18:28.582000", + "departure_time": "06:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 3, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:19:45.164000", + "departure_time": "06:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 4, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:21:14.182000", + "departure_time": "06:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 5, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:24:18.764000", + "departure_time": "06:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 6, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:25:23.564000", + "departure_time": "06:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 7, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:28:20.291000", + "departure_time": "06:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 8, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:30:34.145000", + "departure_time": "06:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 9, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:30:00", + "departure_time": "06:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 10, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:38:28.582000", + "departure_time": "06:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 11, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:39:45.164000", + "departure_time": "06:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 12, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:41:14.182000", + "departure_time": "06:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 13, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:44:18.764000", + "departure_time": "06:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 14, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:45:23.564000", + "departure_time": "06:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 15, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:48:20.291000", + "departure_time": "06:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 16, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:50:34.145000", + "departure_time": "06:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 17, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:00:00", + "departure_time": "07:00:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 18, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:08:28.582000", + "departure_time": "07:08:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 19, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:09:45.164000", + "departure_time": "07:09:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 20, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:11:14.182000", + "departure_time": "07:11:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 21, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:14:18.764000", + "departure_time": "07:14:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 22, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:15:23.564000", + "departure_time": "07:15:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 23, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:18:20.291000", + "departure_time": "07:18:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 24, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:20:34.145000", + "departure_time": "07:20:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 25, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:20:00", + "departure_time": "07:20:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 26, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:28:28.582000", + "departure_time": "07:28:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 27, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:29:45.164000", + "departure_time": "07:29:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 28, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:31:14.182000", + "departure_time": "07:31:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 29, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:34:18.764000", + "departure_time": "07:34:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 30, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:35:23.564000", + "departure_time": "07:35:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 31, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:38:20.291000", + "departure_time": "07:38:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 32, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:40:34.145000", + "departure_time": "07:40:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 33, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "07:50:00", + "departure_time": "07:50:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 34, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "07:58:28.582000", + "departure_time": "07:58:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 35, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "07:59:45.164000", + "departure_time": "07:59:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 36, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:01:14.182000", + "departure_time": "08:01:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 37, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:04:18.764000", + "departure_time": "08:04:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 38, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:05:23.564000", + "departure_time": "08:05:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 39, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:08:20.291000", + "departure_time": "08:08:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 40, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:10:34.145000", + "departure_time": "08:10:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 41, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:10:00", + "departure_time": "08:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 42, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:18:28.582000", + "departure_time": "08:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 43, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:19:45.164000", + "departure_time": "08:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 44, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:21:14.182000", + "departure_time": "08:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 45, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:24:18.764000", + "departure_time": "08:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 46, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:25:23.564000", + "departure_time": "08:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 47, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:28:20.291000", + "departure_time": "08:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 48, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:30:34.145000", + "departure_time": "08:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 49, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "08:55:00", + "departure_time": "08:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 50, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:03:28.582000", + "departure_time": "09:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 51, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:04:45.164000", + "departure_time": "09:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 52, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:06:14.182000", + "departure_time": "09:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 53, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:09:18.764000", + "departure_time": "09:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 54, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:10:23.564000", + "departure_time": "09:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 55, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:13:20.291000", + "departure_time": "09:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 56, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:15:34.145000", + "departure_time": "09:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 57, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:15:00", + "departure_time": "09:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 58, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:23:28.582000", + "departure_time": "09:23:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 59, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:24:45.164000", + "departure_time": "09:24:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 60, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:26:14.182000", + "departure_time": "09:26:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 61, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:29:18.764000", + "departure_time": "09:29:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 62, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:30:23.564000", + "departure_time": "09:30:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 63, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:33:20.291000", + "departure_time": "09:33:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 64, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:35:34.145000", + "departure_time": "09:35:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 65, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:45:00", + "departure_time": "09:45:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 66, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:53:28.582000", + "departure_time": "09:53:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 67, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:54:45.164000", + "departure_time": "09:54:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 68, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:56:14.182000", + "departure_time": "09:56:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 69, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:59:18.764000", + "departure_time": "09:59:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 70, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "10:00:23.564000", + "departure_time": "10:00:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 71, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "10:03:20.291000", + "departure_time": "10:03:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 72, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "10:05:34.145000", + "departure_time": "10:05:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 73, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:05:00", + "departure_time": "10:05:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 74, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:13:28.582000", + "departure_time": "10:13:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 75, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:14:45.164000", + "departure_time": "10:14:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 76, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:16:14.182000", + "departure_time": "10:16:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 77, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:19:18.764000", + "departure_time": "10:19:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 78, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:20:23.564000", + "departure_time": "10:20:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 79, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:23:20.291000", + "departure_time": "10:23:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 80, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:25:34.145000", + "departure_time": "10:25:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 81, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:35:00", + "departure_time": "10:35:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 82, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:43:28.582000", + "departure_time": "10:43:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 83, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:44:45.164000", + "departure_time": "10:44:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 84, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:46:14.182000", + "departure_time": "10:46:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 85, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:49:18.764000", + "departure_time": "10:49:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 86, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:50:23.564000", + "departure_time": "10:50:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 87, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:53:20.291000", + "departure_time": "10:53:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 88, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:55:34.145000", + "departure_time": "10:55:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 89, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "10:55:00", + "departure_time": "10:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 90, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:03:28.582000", + "departure_time": "11:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 91, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:04:45.164000", + "departure_time": "11:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 92, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:06:14.182000", + "departure_time": "11:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 93, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:09:18.764000", + "departure_time": "11:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 94, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:10:23.564000", + "departure_time": "11:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 95, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:13:20.291000", + "departure_time": "11:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 96, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:15:34.145000", + "departure_time": "11:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 97, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:15:00", + "departure_time": "11:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 98, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:23:28.582000", + "departure_time": "11:23:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 99, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:24:45.164000", + "departure_time": "11:24:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 100, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:26:14.182000", + "departure_time": "11:26:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 101, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:29:18.764000", + "departure_time": "11:29:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 102, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:30:23.564000", + "departure_time": "11:30:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 103, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:33:20.291000", + "departure_time": "11:33:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 104, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:35:34.145000", + "departure_time": "11:35:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 105, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:25:00", + "departure_time": "11:25:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 106, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:33:28.582000", + "departure_time": "11:33:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 107, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:34:45.164000", + "departure_time": "11:34:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 108, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:36:14.182000", + "departure_time": "11:36:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 109, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:39:18.764000", + "departure_time": "11:39:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 110, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:40:23.564000", + "departure_time": "11:40:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 111, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:43:20.291000", + "departure_time": "11:43:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 112, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:45:34.145000", + "departure_time": "11:45:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 113, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:40:00", + "departure_time": "11:40:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 114, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:48:28.582000", + "departure_time": "11:48:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 115, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:49:45.164000", + "departure_time": "11:49:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 116, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:51:14.182000", + "departure_time": "11:51:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 117, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:54:18.764000", + "departure_time": "11:54:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 118, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:55:23.564000", + "departure_time": "11:55:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 119, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:58:20.291000", + "departure_time": "11:58:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 120, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "12:00:34.145000", + "departure_time": "12:00:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 121, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:00:00", + "departure_time": "12:00:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 122, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:08:28.582000", + "departure_time": "12:08:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 123, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:09:45.164000", + "departure_time": "12:09:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 124, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:11:14.182000", + "departure_time": "12:11:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 125, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:14:18.764000", + "departure_time": "12:14:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 126, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:15:23.564000", + "departure_time": "12:15:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 127, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:18:20.291000", + "departure_time": "12:18:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 128, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:20:34.145000", + "departure_time": "12:20:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 129, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:25:00", + "departure_time": "12:25:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 130, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:33:28.582000", + "departure_time": "12:33:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 131, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:34:45.164000", + "departure_time": "12:34:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 132, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:36:14.182000", + "departure_time": "12:36:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 133, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:39:18.764000", + "departure_time": "12:39:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 134, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:40:23.564000", + "departure_time": "12:40:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 135, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:43:20.291000", + "departure_time": "12:43:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 136, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:45:34.145000", + "departure_time": "12:45:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 137, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:35:00", + "departure_time": "12:35:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 138, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:43:28.582000", + "departure_time": "12:43:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 139, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:44:45.164000", + "departure_time": "12:44:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 140, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:46:14.182000", + "departure_time": "12:46:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 141, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:49:18.764000", + "departure_time": "12:49:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 142, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:50:23.564000", + "departure_time": "12:50:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 143, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:53:20.291000", + "departure_time": "12:53:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 144, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:55:34.145000", + "departure_time": "12:55:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 145, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:10:00", + "departure_time": "13:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 146, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:18:28.582000", + "departure_time": "13:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 147, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:19:45.164000", + "departure_time": "13:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 148, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:21:14.182000", + "departure_time": "13:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 149, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:24:18.764000", + "departure_time": "13:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 150, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:25:23.564000", + "departure_time": "13:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 151, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:28:20.291000", + "departure_time": "13:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 152, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:30:34.145000", + "departure_time": "13:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 153, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:45:00", + "departure_time": "13:45:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 154, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:53:28.582000", + "departure_time": "13:53:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 155, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:54:45.164000", + "departure_time": "13:54:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 156, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:56:14.182000", + "departure_time": "13:56:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 157, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:59:18.764000", + "departure_time": "13:59:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 158, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "14:00:23.564000", + "departure_time": "14:00:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 159, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "14:03:20.291000", + "departure_time": "14:03:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 160, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "14:05:34.145000", + "departure_time": "14:05:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 161, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:10:00", + "departure_time": "14:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 162, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:18:28.582000", + "departure_time": "14:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 163, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:19:45.164000", + "departure_time": "14:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 164, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:21:14.182000", + "departure_time": "14:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 165, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:24:18.764000", + "departure_time": "14:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 166, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:25:23.564000", + "departure_time": "14:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 167, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:28:20.291000", + "departure_time": "14:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 168, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:30:34.145000", + "departure_time": "14:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 169, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:30:00", + "departure_time": "14:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 170, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:38:28.582000", + "departure_time": "14:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 171, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:39:45.164000", + "departure_time": "14:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 172, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:41:14.182000", + "departure_time": "14:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 173, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:44:18.764000", + "departure_time": "14:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 174, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:45:23.564000", + "departure_time": "14:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 175, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:48:20.291000", + "departure_time": "14:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 176, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:50:34.145000", + "departure_time": "14:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 177, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "14:55:00", + "departure_time": "14:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 178, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:03:28.582000", + "departure_time": "15:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 179, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:04:45.164000", + "departure_time": "15:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 180, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:06:14.182000", + "departure_time": "15:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 181, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:09:18.764000", + "departure_time": "15:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 182, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:10:23.564000", + "departure_time": "15:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 183, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:13:20.291000", + "departure_time": "15:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 184, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:15:34.145000", + "departure_time": "15:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 185, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:15:00", + "departure_time": "15:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 186, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:23:28.582000", + "departure_time": "15:23:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 187, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:24:45.164000", + "departure_time": "15:24:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 188, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:26:14.182000", + "departure_time": "15:26:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 189, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:29:18.764000", + "departure_time": "15:29:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 190, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:30:23.564000", + "departure_time": "15:30:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 191, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:33:20.291000", + "departure_time": "15:33:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 192, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:35:34.145000", + "departure_time": "15:35:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 193, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "15:55:00", + "departure_time": "15:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 194, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:03:28.582000", + "departure_time": "16:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 195, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:04:45.164000", + "departure_time": "16:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 196, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:06:14.182000", + "departure_time": "16:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 197, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:09:18.764000", + "departure_time": "16:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 198, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:10:23.564000", + "departure_time": "16:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 199, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:13:20.291000", + "departure_time": "16:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 200, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:15:34.145000", + "departure_time": "16:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 201, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:30:00", + "departure_time": "16:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 202, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:38:28.582000", + "departure_time": "16:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 203, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:39:45.164000", + "departure_time": "16:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 204, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:41:14.182000", + "departure_time": "16:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 205, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:44:18.764000", + "departure_time": "16:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 206, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:45:23.564000", + "departure_time": "16:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 207, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:48:20.291000", + "departure_time": "16:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 208, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:50:34.145000", + "departure_time": "16:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 209, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "16:55:00", + "departure_time": "16:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 210, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:03:28.582000", + "departure_time": "17:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 211, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:04:45.164000", + "departure_time": "17:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 212, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:06:14.182000", + "departure_time": "17:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 213, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:09:18.764000", + "departure_time": "17:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 214, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:10:23.564000", + "departure_time": "17:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 215, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:13:20.291000", + "departure_time": "17:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 216, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:15:34.145000", + "departure_time": "17:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 217, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:30:00", + "departure_time": "17:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 218, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:38:28.582000", + "departure_time": "17:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 219, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:39:45.164000", + "departure_time": "17:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 220, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:41:14.182000", + "departure_time": "17:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 221, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:44:18.764000", + "departure_time": "17:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 222, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:45:23.564000", + "departure_time": "17:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 223, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:48:20.291000", + "departure_time": "17:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 224, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:50:34.145000", + "departure_time": "17:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 225, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "17:55:00", + "departure_time": "17:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 226, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:03:28.582000", + "departure_time": "18:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 227, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:04:45.164000", + "departure_time": "18:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 228, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:06:14.182000", + "departure_time": "18:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 229, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:09:18.764000", + "departure_time": "18:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 230, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:10:23.564000", + "departure_time": "18:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 231, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:13:20.291000", + "departure_time": "18:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 232, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:15:34.145000", + "departure_time": "18:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 233, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:25:00", + "departure_time": "18:25:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 234, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:33:28.582000", + "departure_time": "18:33:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 235, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:34:45.164000", + "departure_time": "18:34:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 236, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:36:14.182000", + "departure_time": "18:36:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 237, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:39:18.764000", + "departure_time": "18:39:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 238, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:40:23.564000", + "departure_time": "18:40:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 239, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:43:20.291000", + "departure_time": "18:43:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 240, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:45:34.145000", + "departure_time": "18:45:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 241, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "18:50:00", + "departure_time": "18:50:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 242, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "18:58:28.582000", + "departure_time": "18:58:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 243, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "18:59:45.164000", + "departure_time": "18:59:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 244, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:01:14.182000", + "departure_time": "19:01:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 245, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:04:18.764000", + "departure_time": "19:04:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 246, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:05:23.564000", + "departure_time": "19:05:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 247, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:08:20.291000", + "departure_time": "19:08:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 248, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:10:34.145000", + "departure_time": "19:10:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 249, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:15:00", + "departure_time": "19:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 250, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:19:22.473000", + "departure_time": "19:19:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 251, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:21:20.945000", + "departure_time": "19:21:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 252, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:26:19.418000", + "departure_time": "19:26:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 253, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:27:36.655000", + "departure_time": "19:27:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 254, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:29:13.200000", + "departure_time": "19:29:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 255, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:32:05.673000", + "departure_time": "19:32:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 256, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:33:10.473000", + "departure_time": "19:33:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 257, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:36:00.982000", + "departure_time": "19:36:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 258, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:38:21.055000", + "departure_time": "19:38:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 259, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:10:00", + "departure_time": "20:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 260, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:14:22.473000", + "departure_time": "20:14:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 261, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:16:20.945000", + "departure_time": "20:16:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 262, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:21:19.418000", + "departure_time": "20:21:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 263, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:22:36.655000", + "departure_time": "20:22:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 264, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:24:13.200000", + "departure_time": "20:24:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 265, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:27:05.673000", + "departure_time": "20:27:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 266, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:28:10.473000", + "departure_time": "20:28:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 267, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:31:00.982000", + "departure_time": "20:31:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 268, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:33:21.055000", + "departure_time": "20:33:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 269, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "20:50:00", + "departure_time": "20:50:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 270, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "20:54:22.473000", + "departure_time": "20:54:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 271, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "20:56:20.945000", + "departure_time": "20:56:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 272, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:01:19.418000", + "departure_time": "21:01:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 273, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:02:36.655000", + "departure_time": "21:02:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 274, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:04:13.200000", + "departure_time": "21:04:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 275, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:07:05.673000", + "departure_time": "21:07:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 276, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:08:10.473000", + "departure_time": "21:08:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 277, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:11:00.982000", + "departure_time": "21:11:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 278, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:13:21.055000", + "departure_time": "21:13:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 279, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:00:00", + "departure_time": "21:00:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 280, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:04:22.473000", + "departure_time": "21:04:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 281, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:06:20.945000", + "departure_time": "21:06:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 282, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:11:19.418000", + "departure_time": "21:11:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 283, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:12:36.655000", + "departure_time": "21:12:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 284, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:14:13.200000", + "departure_time": "21:14:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 285, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:17:05.673000", + "departure_time": "21:17:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 286, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:18:10.473000", + "departure_time": "21:18:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 287, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:21:00.982000", + "departure_time": "21:21:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 288, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:23:21.055000", + "departure_time": "21:23:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 289, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:35:00", + "departure_time": "21:35:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 290, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:39:22.473000", + "departure_time": "21:39:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 291, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:41:20.945000", + "departure_time": "21:41:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 292, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:46:19.418000", + "departure_time": "21:46:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 293, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:47:36.655000", + "departure_time": "21:47:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 294, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:49:13.200000", + "departure_time": "21:49:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 295, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:52:05.673000", + "departure_time": "21:52:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 296, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:53:10.473000", + "departure_time": "21:53:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 297, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:56:00.982000", + "departure_time": "21:56:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 298, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:58:21.055000", + "departure_time": "21:58:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 299, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:20:00", + "departure_time": "06:20:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 300, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:26:36", + "departure_time": "06:26:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 301, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:27:54.218000", + "departure_time": "06:27:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 302, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:29:32.400000", + "departure_time": "06:29:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 303, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:32:24.545000", + "departure_time": "06:32:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 304, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:33:29.345000", + "departure_time": "06:33:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 305, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:36:13.964000", + "departure_time": "06:36:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 306, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:38:40.255000", + "departure_time": "06:38:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 307, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:40:00", + "departure_time": "06:40:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 308, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:46:36", + "departure_time": "06:46:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 309, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:47:54.218000", + "departure_time": "06:47:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 310, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:49:32.400000", + "departure_time": "06:49:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 311, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:52:24.545000", + "departure_time": "06:52:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 312, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:53:29.345000", + "departure_time": "06:53:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 313, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:56:13.964000", + "departure_time": "06:56:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 314, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:58:40.255000", + "departure_time": "06:58:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 315, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:10:00", + "departure_time": "07:10:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 316, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:16:36", + "departure_time": "07:16:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 317, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:17:54.218000", + "departure_time": "07:17:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 318, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:19:32.400000", + "departure_time": "07:19:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 319, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:22:24.545000", + "departure_time": "07:22:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 320, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:23:29.345000", + "departure_time": "07:23:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 321, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:26:13.964000", + "departure_time": "07:26:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 322, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:28:40.255000", + "departure_time": "07:28:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 323, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:30:00", + "departure_time": "07:30:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 324, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:36:36", + "departure_time": "07:36:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 325, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:37:54.218000", + "departure_time": "07:37:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 326, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:39:32.400000", + "departure_time": "07:39:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 327, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:42:24.545000", + "departure_time": "07:42:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 328, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:43:29.345000", + "departure_time": "07:43:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 329, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:46:13.964000", + "departure_time": "07:46:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 330, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:48:40.255000", + "departure_time": "07:48:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 331, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:00:00", + "departure_time": "08:00:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 332, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:06:36", + "departure_time": "08:06:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 333, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:07:54.218000", + "departure_time": "08:07:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 334, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:09:32.400000", + "departure_time": "08:09:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 335, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:12:24.545000", + "departure_time": "08:12:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 336, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:13:29.345000", + "departure_time": "08:13:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 337, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:16:13.964000", + "departure_time": "08:16:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 338, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:18:40.255000", + "departure_time": "08:18:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 339, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:35:00", + "departure_time": "08:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 340, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:41:36", + "departure_time": "08:41:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 341, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:42:54.218000", + "departure_time": "08:42:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 342, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:44:32.400000", + "departure_time": "08:44:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 343, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:47:24.545000", + "departure_time": "08:47:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 344, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:48:29.345000", + "departure_time": "08:48:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 345, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:51:13.964000", + "departure_time": "08:51:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 346, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:53:40.255000", + "departure_time": "08:53:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 347, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:05:00", + "departure_time": "09:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 348, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:11:36", + "departure_time": "09:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 349, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:12:54.218000", + "departure_time": "09:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 350, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:14:32.400000", + "departure_time": "09:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 351, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:17:24.545000", + "departure_time": "09:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 352, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:18:29.345000", + "departure_time": "09:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 353, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:21:13.964000", + "departure_time": "09:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 354, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:23:40.255000", + "departure_time": "09:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 355, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:25:00", + "departure_time": "09:25:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 356, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:31:36", + "departure_time": "09:31:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 357, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:32:54.218000", + "departure_time": "09:32:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 358, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:34:32.400000", + "departure_time": "09:34:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 359, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:37:24.545000", + "departure_time": "09:37:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 360, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:38:29.345000", + "departure_time": "09:38:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 361, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:41:13.964000", + "departure_time": "09:41:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 362, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:43:40.255000", + "departure_time": "09:43:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 363, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "09:55:00", + "departure_time": "09:55:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 364, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:01:36", + "departure_time": "10:01:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 365, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:02:54.218000", + "departure_time": "10:02:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 366, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:04:32.400000", + "departure_time": "10:04:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 367, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:07:24.545000", + "departure_time": "10:07:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 368, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:08:29.345000", + "departure_time": "10:08:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 369, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:11:13.964000", + "departure_time": "10:11:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 370, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:13:40.255000", + "departure_time": "10:13:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 371, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:15:00", + "departure_time": "10:15:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 372, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:21:36", + "departure_time": "10:21:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 373, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:22:54.218000", + "departure_time": "10:22:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 374, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:24:32.400000", + "departure_time": "10:24:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 375, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:27:24.545000", + "departure_time": "10:27:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 376, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:28:29.345000", + "departure_time": "10:28:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 377, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:31:13.964000", + "departure_time": "10:31:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 378, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:33:40.255000", + "departure_time": "10:33:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 379, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:45:00", + "departure_time": "10:45:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 380, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:51:36", + "departure_time": "10:51:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 381, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:52:54.218000", + "departure_time": "10:52:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 382, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:54:32.400000", + "departure_time": "10:54:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 383, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:57:24.545000", + "departure_time": "10:57:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 384, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:58:29.345000", + "departure_time": "10:58:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 385, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "11:01:13.964000", + "departure_time": "11:01:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 386, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "11:03:40.255000", + "departure_time": "11:03:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 387, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:05:00", + "departure_time": "11:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 388, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:11:36", + "departure_time": "11:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 389, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:12:54.218000", + "departure_time": "11:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 390, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:14:32.400000", + "departure_time": "11:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 391, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:17:24.545000", + "departure_time": "11:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 392, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:18:29.345000", + "departure_time": "11:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 393, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:21:13.964000", + "departure_time": "11:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 394, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:23:40.255000", + "departure_time": "11:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 395, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:35:00", + "departure_time": "11:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 396, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:41:36", + "departure_time": "11:41:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 397, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:42:54.218000", + "departure_time": "11:42:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 398, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:44:32.400000", + "departure_time": "11:44:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 399, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:47:24.545000", + "departure_time": "11:47:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 400, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:48:29.345000", + "departure_time": "11:48:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 401, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:51:13.964000", + "departure_time": "11:51:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 402, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:53:40.255000", + "departure_time": "11:53:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 403, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:50:00", + "departure_time": "11:50:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 404, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:56:36", + "departure_time": "11:56:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 405, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:57:54.218000", + "departure_time": "11:57:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 406, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:59:32.400000", + "departure_time": "11:59:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 407, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:02:24.545000", + "departure_time": "12:02:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 408, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:03:29.345000", + "departure_time": "12:03:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 409, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:06:13.964000", + "departure_time": "12:06:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 410, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:08:40.255000", + "departure_time": "12:08:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 411, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:10:00", + "departure_time": "12:10:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 412, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:16:36", + "departure_time": "12:16:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 413, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:17:54.218000", + "departure_time": "12:17:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 414, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:19:32.400000", + "departure_time": "12:19:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 415, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:22:24.545000", + "departure_time": "12:22:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 416, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:23:29.345000", + "departure_time": "12:23:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 417, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:26:13.964000", + "departure_time": "12:26:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 418, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:28:40.255000", + "departure_time": "12:28:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 419, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:30:00", + "departure_time": "12:30:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 420, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:36:36", + "departure_time": "12:36:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 421, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:37:54.218000", + "departure_time": "12:37:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 422, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:39:32.400000", + "departure_time": "12:39:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 423, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:42:24.545000", + "departure_time": "12:42:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 424, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:43:29.345000", + "departure_time": "12:43:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 425, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:46:13.964000", + "departure_time": "12:46:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 426, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:48:40.255000", + "departure_time": "12:48:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 427, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:45:00", + "departure_time": "12:45:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 428, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:51:36", + "departure_time": "12:51:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 429, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:52:54.218000", + "departure_time": "12:52:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 430, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:54:32.400000", + "departure_time": "12:54:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 431, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:57:24.545000", + "departure_time": "12:57:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 432, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:58:29.345000", + "departure_time": "12:58:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 433, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "13:01:13.964000", + "departure_time": "13:01:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 434, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "13:03:40.255000", + "departure_time": "13:03:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 435, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:20:00", + "departure_time": "13:20:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 436, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:26:36", + "departure_time": "13:26:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 437, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:27:54.218000", + "departure_time": "13:27:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 438, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:29:32.400000", + "departure_time": "13:29:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 439, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:32:24.545000", + "departure_time": "13:32:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 440, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:33:29.345000", + "departure_time": "13:33:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 441, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:36:13.964000", + "departure_time": "13:36:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 442, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:38:40.255000", + "departure_time": "13:38:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 443, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:00:00", + "departure_time": "14:00:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 444, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:06:36", + "departure_time": "14:06:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 445, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:07:54.218000", + "departure_time": "14:07:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 446, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:09:32.400000", + "departure_time": "14:09:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 447, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:12:24.545000", + "departure_time": "14:12:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 448, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:13:29.345000", + "departure_time": "14:13:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 449, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:16:13.964000", + "departure_time": "14:16:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 450, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:18:40.255000", + "departure_time": "14:18:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 451, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:20:00", + "departure_time": "14:20:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 452, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:26:36", + "departure_time": "14:26:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 453, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:27:54.218000", + "departure_time": "14:27:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 454, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:29:32.400000", + "departure_time": "14:29:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 455, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:32:24.545000", + "departure_time": "14:32:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 456, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:33:29.345000", + "departure_time": "14:33:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 457, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:36:13.964000", + "departure_time": "14:36:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 458, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:38:40.255000", + "departure_time": "14:38:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 459, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:45:00", + "departure_time": "14:45:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 460, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:51:36", + "departure_time": "14:51:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 461, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:52:54.218000", + "departure_time": "14:52:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 462, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:54:32.400000", + "departure_time": "14:54:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 463, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:57:24.545000", + "departure_time": "14:57:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 464, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:58:29.345000", + "departure_time": "14:58:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 465, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "15:01:13.964000", + "departure_time": "15:01:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 466, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "15:03:40.255000", + "departure_time": "15:03:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 467, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:05:00", + "departure_time": "15:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 468, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:11:36", + "departure_time": "15:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 469, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:12:54.218000", + "departure_time": "15:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 470, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:14:32.400000", + "departure_time": "15:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 471, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:17:24.545000", + "departure_time": "15:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 472, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:18:29.345000", + "departure_time": "15:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 473, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:21:13.964000", + "departure_time": "15:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 474, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:23:40.255000", + "departure_time": "15:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 475, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:30:00", + "departure_time": "15:30:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 476, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:36:36", + "departure_time": "15:36:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 477, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:37:54.218000", + "departure_time": "15:37:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 478, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:39:32.400000", + "departure_time": "15:39:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 479, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:42:24.545000", + "departure_time": "15:42:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 480, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:43:29.345000", + "departure_time": "15:43:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 481, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:46:13.964000", + "departure_time": "15:46:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 482, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:48:40.255000", + "departure_time": "15:48:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 483, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:05:00", + "departure_time": "16:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 484, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:11:36", + "departure_time": "16:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 485, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:12:54.218000", + "departure_time": "16:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 486, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:14:32.400000", + "departure_time": "16:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 487, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:17:24.545000", + "departure_time": "16:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 488, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:18:29.345000", + "departure_time": "16:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 489, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:21:13.964000", + "departure_time": "16:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 490, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:23:40.255000", + "departure_time": "16:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 491, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:40:00", + "departure_time": "16:40:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 492, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:46:36", + "departure_time": "16:46:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 493, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:47:54.218000", + "departure_time": "16:47:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 494, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:49:32.400000", + "departure_time": "16:49:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 495, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:52:24.545000", + "departure_time": "16:52:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 496, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:53:29.345000", + "departure_time": "16:53:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 497, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:56:13.964000", + "departure_time": "16:56:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 498, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:58:40.255000", + "departure_time": "16:58:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 499, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:05:00", + "departure_time": "17:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 500, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:11:36", + "departure_time": "17:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 501, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:12:54.218000", + "departure_time": "17:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 502, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:14:32.400000", + "departure_time": "17:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 503, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:17:24.545000", + "departure_time": "17:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 504, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:18:29.345000", + "departure_time": "17:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 505, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:21:13.964000", + "departure_time": "17:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 506, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:23:40.255000", + "departure_time": "17:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 507, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:40:00", + "departure_time": "17:40:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 508, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:46:36", + "departure_time": "17:46:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 509, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:47:54.218000", + "departure_time": "17:47:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 510, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:49:32.400000", + "departure_time": "17:49:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 511, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:52:24.545000", + "departure_time": "17:52:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 512, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:53:29.345000", + "departure_time": "17:53:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 513, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:56:13.964000", + "departure_time": "17:56:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 514, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:58:40.255000", + "departure_time": "17:58:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 515, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:05:00", + "departure_time": "18:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 516, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:11:36", + "departure_time": "18:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 517, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:12:54.218000", + "departure_time": "18:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 518, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:14:32.400000", + "departure_time": "18:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 519, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:17:24.545000", + "departure_time": "18:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 520, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:18:29.345000", + "departure_time": "18:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 521, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:21:13.964000", + "departure_time": "18:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 522, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:23:40.255000", + "departure_time": "18:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 523, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:35:00", + "departure_time": "18:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 524, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:41:36", + "departure_time": "18:41:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 525, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:42:54.218000", + "departure_time": "18:42:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 526, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:44:32.400000", + "departure_time": "18:44:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 527, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:47:24.545000", + "departure_time": "18:47:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 528, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:48:29.345000", + "departure_time": "18:48:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 529, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:51:13.964000", + "departure_time": "18:51:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 530, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:53:40.255000", + "departure_time": "18:53:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 531, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:00:00", + "departure_time": "19:00:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 532, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:02:24.327000", + "departure_time": "19:02:24.327000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.441, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 533, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:04:27.382000", + "departure_time": "19:04:27.382000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.817, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 534, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:09:26.182000", + "departure_time": "19:09:26.182000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.73, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 535, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:10:46.691000", + "departure_time": "19:10:46.691000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 536, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:12:19.309000", + "departure_time": "19:12:19.309000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.259, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 537, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:15:11.127000", + "departure_time": "19:15:11.127000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.784, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 538, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:16:16.255000", + "departure_time": "19:16:16.255000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.983, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 539, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:19:12.982000", + "departure_time": "19:19:12.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.523, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 540, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:21:27.491000", + "departure_time": "19:21:27.491000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.934, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 541, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:35:00", + "departure_time": "19:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 542, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:37:24.327000", + "departure_time": "19:37:24.327000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.441, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 543, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:39:27.382000", + "departure_time": "19:39:27.382000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.817, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 544, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:44:26.182000", + "departure_time": "19:44:26.182000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.73, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 545, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:45:46.691000", + "departure_time": "19:45:46.691000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.976, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 546, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:47:19.309000", + "departure_time": "19:47:19.309000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.259, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 547, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:50:11.127000", + "departure_time": "19:50:11.127000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.784, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 548, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:51:16.255000", + "departure_time": "19:51:16.255000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.983, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 549, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:54:12.982000", + "departure_time": "19:54:12.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.523, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 550, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:56:27.491000", + "departure_time": "19:56:27.491000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.934, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 551, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:20:00", + "departure_time": "06:20:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 552, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:24:15.927000", + "departure_time": "06:24:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 553, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:27:27.709000", + "departure_time": "06:27:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 554, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:28:04.691000", + "departure_time": "06:28:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 555, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:29:12.764000", + "departure_time": "06:29:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 556, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:31:29.891000", + "departure_time": "06:31:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 557, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:33:09.709000", + "departure_time": "06:33:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 558, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:34:22.691000", + "departure_time": "06:34:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 559, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:39:11.673000", + "departure_time": "06:39:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 560, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:40:00", + "departure_time": "06:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 561, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:44:00.873000", + "departure_time": "06:44:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 562, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:47:28.364000", + "departure_time": "06:47:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 563, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:48:12.873000", + "departure_time": "06:48:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 564, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:49:11.127000", + "departure_time": "06:49:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 565, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:51:27.600000", + "departure_time": "06:51:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 566, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:53:11.018000", + "departure_time": "06:53:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 567, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:54:22.364000", + "departure_time": "06:54:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 568, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:57:17.782000", + "departure_time": "06:57:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 569, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:50:00", + "departure_time": "06:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 570, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:54:15.927000", + "departure_time": "06:54:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 571, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:57:27.709000", + "departure_time": "06:57:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 572, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:58:04.691000", + "departure_time": "06:58:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 573, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:59:12.764000", + "departure_time": "06:59:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 574, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:01:29.891000", + "departure_time": "07:01:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 575, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:03:09.709000", + "departure_time": "07:03:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 576, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:04:22.691000", + "departure_time": "07:04:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 577, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:09:11.673000", + "departure_time": "07:09:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 578, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:00:00", + "departure_time": "07:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 579, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:04:00.873000", + "departure_time": "07:04:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 580, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:07:28.364000", + "departure_time": "07:07:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 581, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:08:12.873000", + "departure_time": "07:08:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 582, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:09:11.127000", + "departure_time": "07:09:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 583, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:11:27.600000", + "departure_time": "07:11:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 584, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:13:11.018000", + "departure_time": "07:13:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 585, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:14:22.364000", + "departure_time": "07:14:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 586, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:17:17.782000", + "departure_time": "07:17:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 587, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:10:00", + "departure_time": "07:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 588, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:14:15.927000", + "departure_time": "07:14:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 589, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:17:27.709000", + "departure_time": "07:17:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 590, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:18:04.691000", + "departure_time": "07:18:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 591, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:19:12.764000", + "departure_time": "07:19:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 592, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:21:29.891000", + "departure_time": "07:21:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 593, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:23:09.709000", + "departure_time": "07:23:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 594, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:24:22.691000", + "departure_time": "07:24:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 595, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:29:11.673000", + "departure_time": "07:29:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 596, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:30:00", + "departure_time": "07:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 597, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:34:00.873000", + "departure_time": "07:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 598, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:37:28.364000", + "departure_time": "07:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 599, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:38:12.873000", + "departure_time": "07:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 600, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:39:11.127000", + "departure_time": "07:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 601, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:41:27.600000", + "departure_time": "07:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 602, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:43:11.018000", + "departure_time": "07:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 603, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:44:22.364000", + "departure_time": "07:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 604, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:47:17.782000", + "departure_time": "07:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 605, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:40:00", + "departure_time": "07:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 606, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:44:15.927000", + "departure_time": "07:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 607, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:47:27.709000", + "departure_time": "07:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 608, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:48:04.691000", + "departure_time": "07:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 609, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:49:12.764000", + "departure_time": "07:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 610, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:51:29.891000", + "departure_time": "07:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 611, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:53:09.709000", + "departure_time": "07:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 612, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:54:22.691000", + "departure_time": "07:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 613, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:59:11.673000", + "departure_time": "07:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 614, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:50:00", + "departure_time": "07:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 615, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:54:00.873000", + "departure_time": "07:54:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 616, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:57:28.364000", + "departure_time": "07:57:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 617, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:58:12.873000", + "departure_time": "07:58:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 618, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:59:11.127000", + "departure_time": "07:59:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 619, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:01:27.600000", + "departure_time": "08:01:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 620, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:03:11.018000", + "departure_time": "08:03:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 621, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:04:22.364000", + "departure_time": "08:04:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 622, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:07:17.782000", + "departure_time": "08:07:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 623, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:00:00", + "departure_time": "08:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 624, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:04:15.927000", + "departure_time": "08:04:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 625, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:07:27.709000", + "departure_time": "08:07:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 626, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:08:04.691000", + "departure_time": "08:08:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 627, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:09:12.764000", + "departure_time": "08:09:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 628, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:11:29.891000", + "departure_time": "08:11:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 629, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:13:09.709000", + "departure_time": "08:13:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 630, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:14:22.691000", + "departure_time": "08:14:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 631, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:19:11.673000", + "departure_time": "08:19:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 632, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:35:00", + "departure_time": "08:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 633, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:39:00.873000", + "departure_time": "08:39:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 634, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:42:28.364000", + "departure_time": "08:42:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 635, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:43:12.873000", + "departure_time": "08:43:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 636, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:44:11.127000", + "departure_time": "08:44:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 637, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:46:27.600000", + "departure_time": "08:46:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 638, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:48:11.018000", + "departure_time": "08:48:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 639, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:49:22.364000", + "departure_time": "08:49:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 640, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:52:17.782000", + "departure_time": "08:52:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 641, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:45:00", + "departure_time": "08:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 642, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:49:15.927000", + "departure_time": "08:49:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 643, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:52:27.709000", + "departure_time": "08:52:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 644, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:53:04.691000", + "departure_time": "08:53:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 645, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:54:12.764000", + "departure_time": "08:54:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 646, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:56:29.891000", + "departure_time": "08:56:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 647, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:58:09.709000", + "departure_time": "08:58:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 648, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:59:22.691000", + "departure_time": "08:59:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 649, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "09:04:11.673000", + "departure_time": "09:04:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 650, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "08:55:00", + "departure_time": "08:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 651, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "08:59:00.873000", + "departure_time": "08:59:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 652, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:02:28.364000", + "departure_time": "09:02:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 653, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:03:12.873000", + "departure_time": "09:03:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 654, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:04:11.127000", + "departure_time": "09:04:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 655, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:06:27.600000", + "departure_time": "09:06:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 656, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:08:11.018000", + "departure_time": "09:08:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 657, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:09:22.364000", + "departure_time": "09:09:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 658, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:12:17.782000", + "departure_time": "09:12:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 659, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:05:00", + "departure_time": "09:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 660, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:09:15.927000", + "departure_time": "09:09:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 661, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:12:27.709000", + "departure_time": "09:12:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 662, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:13:04.691000", + "departure_time": "09:13:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 663, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:14:12.764000", + "departure_time": "09:14:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 664, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:16:29.891000", + "departure_time": "09:16:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 665, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:18:09.709000", + "departure_time": "09:18:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 666, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:19:22.691000", + "departure_time": "09:19:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 667, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:24:11.673000", + "departure_time": "09:24:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 668, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:25:00", + "departure_time": "09:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 669, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:29:00.873000", + "departure_time": "09:29:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 670, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:32:28.364000", + "departure_time": "09:32:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 671, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:33:12.873000", + "departure_time": "09:33:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 672, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:34:11.127000", + "departure_time": "09:34:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 673, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:36:27.600000", + "departure_time": "09:36:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 674, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:38:11.018000", + "departure_time": "09:38:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 675, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:39:22.364000", + "departure_time": "09:39:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 676, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:42:17.782000", + "departure_time": "09:42:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 677, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:35:00", + "departure_time": "09:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 678, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:39:15.927000", + "departure_time": "09:39:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 679, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:42:27.709000", + "departure_time": "09:42:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 680, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:43:04.691000", + "departure_time": "09:43:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 681, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:44:12.764000", + "departure_time": "09:44:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 682, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:46:29.891000", + "departure_time": "09:46:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 683, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:48:09.709000", + "departure_time": "09:48:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 684, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:49:22.691000", + "departure_time": "09:49:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 685, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:54:11.673000", + "departure_time": "09:54:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 686, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:45:00", + "departure_time": "09:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 687, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:49:00.873000", + "departure_time": "09:49:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 688, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:52:28.364000", + "departure_time": "09:52:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 689, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:53:12.873000", + "departure_time": "09:53:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 690, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:54:11.127000", + "departure_time": "09:54:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 691, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:56:27.600000", + "departure_time": "09:56:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 692, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:58:11.018000", + "departure_time": "09:58:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 693, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:59:22.364000", + "departure_time": "09:59:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 694, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "10:02:17.782000", + "departure_time": "10:02:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 695, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "09:55:00", + "departure_time": "09:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 696, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "09:59:15.927000", + "departure_time": "09:59:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 697, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:02:27.709000", + "departure_time": "10:02:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 698, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:03:04.691000", + "departure_time": "10:03:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 699, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:04:12.764000", + "departure_time": "10:04:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 700, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:06:29.891000", + "departure_time": "10:06:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 701, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:08:09.709000", + "departure_time": "10:08:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 702, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:09:22.691000", + "departure_time": "10:09:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 703, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:14:11.673000", + "departure_time": "10:14:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 704, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:15:00", + "departure_time": "10:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 705, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:19:00.873000", + "departure_time": "10:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 706, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:22:28.364000", + "departure_time": "10:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 707, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:23:12.873000", + "departure_time": "10:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 708, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:24:11.127000", + "departure_time": "10:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 709, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:26:27.600000", + "departure_time": "10:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 710, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:28:11.018000", + "departure_time": "10:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 711, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:29:22.364000", + "departure_time": "10:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 712, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:32:17.782000", + "departure_time": "10:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 713, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:25:00", + "departure_time": "10:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 714, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:29:15.927000", + "departure_time": "10:29:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 715, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:32:27.709000", + "departure_time": "10:32:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 716, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:33:04.691000", + "departure_time": "10:33:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 717, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:34:12.764000", + "departure_time": "10:34:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 718, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:36:29.891000", + "departure_time": "10:36:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 719, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:38:09.709000", + "departure_time": "10:38:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 720, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:39:22.691000", + "departure_time": "10:39:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 721, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:44:11.673000", + "departure_time": "10:44:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 722, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:35:00", + "departure_time": "10:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 723, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:39:00.873000", + "departure_time": "10:39:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 724, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:42:28.364000", + "departure_time": "10:42:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 725, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:43:12.873000", + "departure_time": "10:43:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 726, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:44:11.127000", + "departure_time": "10:44:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 727, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:46:27.600000", + "departure_time": "10:46:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 728, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:48:11.018000", + "departure_time": "10:48:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 729, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:49:22.364000", + "departure_time": "10:49:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 730, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:52:17.782000", + "departure_time": "10:52:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 731, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:45:00", + "departure_time": "10:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 732, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:49:15.927000", + "departure_time": "10:49:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 733, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:52:27.709000", + "departure_time": "10:52:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 734, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:53:04.691000", + "departure_time": "10:53:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 735, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:54:12.764000", + "departure_time": "10:54:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 736, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:56:29.891000", + "departure_time": "10:56:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 737, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:58:09.709000", + "departure_time": "10:58:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 738, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:59:22.691000", + "departure_time": "10:59:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 739, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "11:04:11.673000", + "departure_time": "11:04:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 740, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:05:00", + "departure_time": "11:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 741, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:09:00.873000", + "departure_time": "11:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 742, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:12:28.364000", + "departure_time": "11:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 743, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:13:12.873000", + "departure_time": "11:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 744, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:14:11.127000", + "departure_time": "11:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 745, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:16:27.600000", + "departure_time": "11:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 746, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:18:11.018000", + "departure_time": "11:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 747, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:19:22.364000", + "departure_time": "11:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 748, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:22:17.782000", + "departure_time": "11:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 749, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:15:00", + "departure_time": "11:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 750, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:19:15.927000", + "departure_time": "11:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 751, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:22:27.709000", + "departure_time": "11:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 752, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:23:04.691000", + "departure_time": "11:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 753, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:24:12.764000", + "departure_time": "11:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 754, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:26:29.891000", + "departure_time": "11:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 755, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:28:09.709000", + "departure_time": "11:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 756, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:29:22.691000", + "departure_time": "11:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 757, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:34:11.673000", + "departure_time": "11:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 758, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:20:00", + "departure_time": "11:20:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 759, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:24:00.873000", + "departure_time": "11:24:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 760, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:27:28.364000", + "departure_time": "11:27:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 761, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:28:12.873000", + "departure_time": "11:28:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 762, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:29:11.127000", + "departure_time": "11:29:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 763, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:31:27.600000", + "departure_time": "11:31:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 764, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:33:11.018000", + "departure_time": "11:33:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 765, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:34:22.364000", + "departure_time": "11:34:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 766, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:37:17.782000", + "departure_time": "11:37:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 767, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:30:00", + "departure_time": "11:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 768, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:34:15.927000", + "departure_time": "11:34:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 769, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:37:27.709000", + "departure_time": "11:37:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 770, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:38:04.691000", + "departure_time": "11:38:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 771, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:39:12.764000", + "departure_time": "11:39:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 772, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:41:29.891000", + "departure_time": "11:41:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 773, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:43:09.709000", + "departure_time": "11:43:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 774, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:44:22.691000", + "departure_time": "11:44:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 775, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:49:11.673000", + "departure_time": "11:49:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 776, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:40:00", + "departure_time": "11:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 777, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:44:00.873000", + "departure_time": "11:44:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 778, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:47:28.364000", + "departure_time": "11:47:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 779, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:48:12.873000", + "departure_time": "11:48:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 780, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:49:11.127000", + "departure_time": "11:49:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 781, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:51:27.600000", + "departure_time": "11:51:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 782, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:53:11.018000", + "departure_time": "11:53:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 783, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:54:22.364000", + "departure_time": "11:54:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 784, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:57:17.782000", + "departure_time": "11:57:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 785, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:50:00", + "departure_time": "11:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 786, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:54:15.927000", + "departure_time": "11:54:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 787, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:57:27.709000", + "departure_time": "11:57:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 788, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:58:04.691000", + "departure_time": "11:58:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 789, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:59:12.764000", + "departure_time": "11:59:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 790, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:01:29.891000", + "departure_time": "12:01:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 791, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:03:09.709000", + "departure_time": "12:03:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 792, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:04:22.691000", + "departure_time": "12:04:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 793, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:09:11.673000", + "departure_time": "12:09:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 794, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:05:00", + "departure_time": "12:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 795, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:09:00.873000", + "departure_time": "12:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 796, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:12:28.364000", + "departure_time": "12:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 797, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:13:12.873000", + "departure_time": "12:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 798, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:14:11.127000", + "departure_time": "12:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 799, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:16:27.600000", + "departure_time": "12:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 800, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:18:11.018000", + "departure_time": "12:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 801, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:19:22.364000", + "departure_time": "12:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 802, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:22:17.782000", + "departure_time": "12:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 803, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:10:00", + "departure_time": "12:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 804, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:14:15.927000", + "departure_time": "12:14:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 805, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:17:27.709000", + "departure_time": "12:17:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 806, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:18:04.691000", + "departure_time": "12:18:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 807, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:19:12.764000", + "departure_time": "12:19:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 808, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:21:29.891000", + "departure_time": "12:21:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 809, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:23:09.709000", + "departure_time": "12:23:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 810, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:24:22.691000", + "departure_time": "12:24:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 811, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:29:11.673000", + "departure_time": "12:29:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 812, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:15:00", + "departure_time": "12:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 813, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:19:00.873000", + "departure_time": "12:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 814, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:22:28.364000", + "departure_time": "12:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 815, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:23:12.873000", + "departure_time": "12:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 816, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:24:11.127000", + "departure_time": "12:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 817, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:26:27.600000", + "departure_time": "12:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 818, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:28:11.018000", + "departure_time": "12:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 819, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:29:22.364000", + "departure_time": "12:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 820, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:32:17.782000", + "departure_time": "12:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 821, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:25:00", + "departure_time": "12:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 822, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:29:15.927000", + "departure_time": "12:29:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 823, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:32:27.709000", + "departure_time": "12:32:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 824, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:33:04.691000", + "departure_time": "12:33:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 825, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:34:12.764000", + "departure_time": "12:34:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 826, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:36:29.891000", + "departure_time": "12:36:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 827, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:38:09.709000", + "departure_time": "12:38:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 828, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:39:22.691000", + "departure_time": "12:39:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 829, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:44:11.673000", + "departure_time": "12:44:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 830, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:50:00", + "departure_time": "12:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 831, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:54:00.873000", + "departure_time": "12:54:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 832, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:57:28.364000", + "departure_time": "12:57:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 833, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:58:12.873000", + "departure_time": "12:58:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 834, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:59:11.127000", + "departure_time": "12:59:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 835, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:01:27.600000", + "departure_time": "13:01:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 836, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:03:11.018000", + "departure_time": "13:03:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 837, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:04:22.364000", + "departure_time": "13:04:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 838, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:07:17.782000", + "departure_time": "13:07:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 839, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:00:00", + "departure_time": "13:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 840, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:04:15.927000", + "departure_time": "13:04:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 841, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:07:27.709000", + "departure_time": "13:07:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 842, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:08:04.691000", + "departure_time": "13:08:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 843, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:09:12.764000", + "departure_time": "13:09:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 844, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:11:29.891000", + "departure_time": "13:11:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 845, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:13:09.709000", + "departure_time": "13:13:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 846, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:14:22.691000", + "departure_time": "13:14:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 847, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:19:11.673000", + "departure_time": "13:19:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 848, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:25:00", + "departure_time": "13:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 849, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:29:00.873000", + "departure_time": "13:29:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 850, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:32:28.364000", + "departure_time": "13:32:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 851, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:33:12.873000", + "departure_time": "13:33:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 852, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:34:11.127000", + "departure_time": "13:34:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 853, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:36:27.600000", + "departure_time": "13:36:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 854, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:38:11.018000", + "departure_time": "13:38:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 855, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:39:22.364000", + "departure_time": "13:39:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 856, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:42:17.782000", + "departure_time": "13:42:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 857, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:40:00", + "departure_time": "13:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 858, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:44:15.927000", + "departure_time": "13:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 859, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:47:27.709000", + "departure_time": "13:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 860, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:48:04.691000", + "departure_time": "13:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 861, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:49:12.764000", + "departure_time": "13:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 862, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:51:29.891000", + "departure_time": "13:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 863, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:53:09.709000", + "departure_time": "13:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 864, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:54:22.691000", + "departure_time": "13:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 865, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:59:11.673000", + "departure_time": "13:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 866, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:50:00", + "departure_time": "13:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 867, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:54:00.873000", + "departure_time": "13:54:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 868, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:57:28.364000", + "departure_time": "13:57:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 869, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:58:12.873000", + "departure_time": "13:58:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 870, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:59:11.127000", + "departure_time": "13:59:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 871, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:01:27.600000", + "departure_time": "14:01:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 872, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:03:11.018000", + "departure_time": "14:03:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 873, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:04:22.364000", + "departure_time": "14:04:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 874, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:07:17.782000", + "departure_time": "14:07:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 875, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:00:00", + "departure_time": "14:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 876, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:04:15.927000", + "departure_time": "14:04:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 877, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:07:27.709000", + "departure_time": "14:07:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 878, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:08:04.691000", + "departure_time": "14:08:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 879, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:09:12.764000", + "departure_time": "14:09:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 880, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:11:29.891000", + "departure_time": "14:11:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 881, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:13:09.709000", + "departure_time": "14:13:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 882, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:14:22.691000", + "departure_time": "14:14:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 883, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:19:11.673000", + "departure_time": "14:19:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 884, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:10:00", + "departure_time": "14:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 885, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:14:00.873000", + "departure_time": "14:14:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 886, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:17:28.364000", + "departure_time": "14:17:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 887, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:18:12.873000", + "departure_time": "14:18:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 888, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:19:11.127000", + "departure_time": "14:19:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 889, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:21:27.600000", + "departure_time": "14:21:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 890, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:23:11.018000", + "departure_time": "14:23:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 891, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:24:22.364000", + "departure_time": "14:24:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 892, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:27:17.782000", + "departure_time": "14:27:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 893, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:25:00", + "departure_time": "14:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 894, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:29:15.927000", + "departure_time": "14:29:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 895, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:32:27.709000", + "departure_time": "14:32:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 896, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:33:04.691000", + "departure_time": "14:33:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 897, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:34:12.764000", + "departure_time": "14:34:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 898, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:36:29.891000", + "departure_time": "14:36:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 899, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:38:09.709000", + "departure_time": "14:38:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 900, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:39:22.691000", + "departure_time": "14:39:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 901, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:44:11.673000", + "departure_time": "14:44:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 902, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:35:00", + "departure_time": "14:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 903, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:39:00.873000", + "departure_time": "14:39:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 904, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:42:28.364000", + "departure_time": "14:42:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 905, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:43:12.873000", + "departure_time": "14:43:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 906, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:44:11.127000", + "departure_time": "14:44:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 907, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:46:27.600000", + "departure_time": "14:46:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 908, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:48:11.018000", + "departure_time": "14:48:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 909, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:49:22.364000", + "departure_time": "14:49:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 910, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:52:17.782000", + "departure_time": "14:52:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 911, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:45:00", + "departure_time": "14:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 912, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:49:15.927000", + "departure_time": "14:49:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 913, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:52:27.709000", + "departure_time": "14:52:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 914, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:53:04.691000", + "departure_time": "14:53:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 915, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:54:12.764000", + "departure_time": "14:54:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 916, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:56:29.891000", + "departure_time": "14:56:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 917, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:58:09.709000", + "departure_time": "14:58:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 918, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:59:22.691000", + "departure_time": "14:59:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 919, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "15:04:11.673000", + "departure_time": "15:04:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 920, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "14:55:00", + "departure_time": "14:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 921, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "14:59:00.873000", + "departure_time": "14:59:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 922, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:02:28.364000", + "departure_time": "15:02:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 923, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:03:12.873000", + "departure_time": "15:03:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 924, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:04:11.127000", + "departure_time": "15:04:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 925, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:06:27.600000", + "departure_time": "15:06:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 926, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:08:11.018000", + "departure_time": "15:08:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 927, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:09:22.364000", + "departure_time": "15:09:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 928, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:12:17.782000", + "departure_time": "15:12:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 929, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:10:00", + "departure_time": "15:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 930, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:14:15.927000", + "departure_time": "15:14:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 931, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:17:27.709000", + "departure_time": "15:17:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 932, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:18:04.691000", + "departure_time": "15:18:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 933, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:19:12.764000", + "departure_time": "15:19:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 934, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:21:29.891000", + "departure_time": "15:21:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 935, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:23:09.709000", + "departure_time": "15:23:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 936, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:24:22.691000", + "departure_time": "15:24:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 937, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:29:11.673000", + "departure_time": "15:29:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 938, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:20:00", + "departure_time": "15:20:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 939, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:24:00.873000", + "departure_time": "15:24:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 940, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:27:28.364000", + "departure_time": "15:27:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 941, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:28:12.873000", + "departure_time": "15:28:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 942, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:29:11.127000", + "departure_time": "15:29:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 943, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:31:27.600000", + "departure_time": "15:31:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 944, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:33:11.018000", + "departure_time": "15:33:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 945, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:34:22.364000", + "departure_time": "15:34:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 946, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:37:17.782000", + "departure_time": "15:37:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 947, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:30:00", + "departure_time": "15:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 948, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:34:15.927000", + "departure_time": "15:34:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 949, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:37:27.709000", + "departure_time": "15:37:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 950, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:38:04.691000", + "departure_time": "15:38:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 951, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:39:12.764000", + "departure_time": "15:39:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 952, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:41:29.891000", + "departure_time": "15:41:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 953, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:43:09.709000", + "departure_time": "15:43:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 954, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:44:22.691000", + "departure_time": "15:44:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 955, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:49:11.673000", + "departure_time": "15:49:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 956, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:05:00", + "departure_time": "16:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 957, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:09:00.873000", + "departure_time": "16:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 958, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:12:28.364000", + "departure_time": "16:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 959, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:13:12.873000", + "departure_time": "16:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 960, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:14:11.127000", + "departure_time": "16:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 961, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:16:27.600000", + "departure_time": "16:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 962, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:18:11.018000", + "departure_time": "16:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 963, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:19:22.364000", + "departure_time": "16:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 964, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:22:17.782000", + "departure_time": "16:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 965, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:15:00", + "departure_time": "16:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 966, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:19:15.927000", + "departure_time": "16:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 967, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:22:27.709000", + "departure_time": "16:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 968, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:23:04.691000", + "departure_time": "16:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 969, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:24:12.764000", + "departure_time": "16:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 970, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:26:29.891000", + "departure_time": "16:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 971, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:28:09.709000", + "departure_time": "16:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 972, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:29:22.691000", + "departure_time": "16:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 973, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:34:11.673000", + "departure_time": "16:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 974, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:30:00", + "departure_time": "16:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 975, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:34:00.873000", + "departure_time": "16:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 976, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:37:28.364000", + "departure_time": "16:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 977, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:38:12.873000", + "departure_time": "16:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 978, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:39:11.127000", + "departure_time": "16:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 979, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:41:27.600000", + "departure_time": "16:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 980, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:43:11.018000", + "departure_time": "16:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 981, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:44:22.364000", + "departure_time": "16:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 982, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:47:17.782000", + "departure_time": "16:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 983, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:40:00", + "departure_time": "16:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 984, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:44:15.927000", + "departure_time": "16:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 985, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:47:27.709000", + "departure_time": "16:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 986, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:48:04.691000", + "departure_time": "16:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 987, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:49:12.764000", + "departure_time": "16:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 988, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:51:29.891000", + "departure_time": "16:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 989, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:53:09.709000", + "departure_time": "16:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 990, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:54:22.691000", + "departure_time": "16:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 991, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:59:11.673000", + "departure_time": "16:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 992, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:05:00", + "departure_time": "17:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 993, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:09:00.873000", + "departure_time": "17:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 994, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:12:28.364000", + "departure_time": "17:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 995, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:13:12.873000", + "departure_time": "17:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 996, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:14:11.127000", + "departure_time": "17:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 997, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:16:27.600000", + "departure_time": "17:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 998, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:18:11.018000", + "departure_time": "17:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 999, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:19:22.364000", + "departure_time": "17:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1000, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:22:17.782000", + "departure_time": "17:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1001, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:15:00", + "departure_time": "17:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1002, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:19:15.927000", + "departure_time": "17:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1003, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:22:27.709000", + "departure_time": "17:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1004, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:23:04.691000", + "departure_time": "17:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1005, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:24:12.764000", + "departure_time": "17:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1006, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:26:29.891000", + "departure_time": "17:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1007, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:28:09.709000", + "departure_time": "17:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1008, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:29:22.691000", + "departure_time": "17:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1009, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:34:11.673000", + "departure_time": "17:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1010, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:30:00", + "departure_time": "17:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1011, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:34:00.873000", + "departure_time": "17:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1012, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:37:28.364000", + "departure_time": "17:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1013, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:38:12.873000", + "departure_time": "17:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1014, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:39:11.127000", + "departure_time": "17:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1015, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:41:27.600000", + "departure_time": "17:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1016, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:43:11.018000", + "departure_time": "17:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1017, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:44:22.364000", + "departure_time": "17:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1018, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:47:17.782000", + "departure_time": "17:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1019, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:40:00", + "departure_time": "17:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1020, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:44:15.927000", + "departure_time": "17:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1021, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:47:27.709000", + "departure_time": "17:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1022, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:48:04.691000", + "departure_time": "17:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1023, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:49:12.764000", + "departure_time": "17:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1024, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:51:29.891000", + "departure_time": "17:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1025, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:53:09.709000", + "departure_time": "17:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1026, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:54:22.691000", + "departure_time": "17:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1027, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:59:11.673000", + "departure_time": "17:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1028, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:05:00", + "departure_time": "18:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1029, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:09:00.873000", + "departure_time": "18:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1030, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:12:28.364000", + "departure_time": "18:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1031, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:13:12.873000", + "departure_time": "18:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1032, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:14:11.127000", + "departure_time": "18:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1033, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:16:27.600000", + "departure_time": "18:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1034, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:18:11.018000", + "departure_time": "18:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1035, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:19:22.364000", + "departure_time": "18:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1036, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:22:17.782000", + "departure_time": "18:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1037, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:15:00", + "departure_time": "18:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1038, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:19:15.927000", + "departure_time": "18:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1039, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:22:27.709000", + "departure_time": "18:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1040, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:23:04.691000", + "departure_time": "18:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1041, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:24:12.764000", + "departure_time": "18:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1042, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:26:29.891000", + "departure_time": "18:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1043, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:28:09.709000", + "departure_time": "18:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1044, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:29:22.691000", + "departure_time": "18:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1045, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:34:11.673000", + "departure_time": "18:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1046, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:30:00", + "departure_time": "18:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1047, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:34:00.873000", + "departure_time": "18:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1048, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:37:28.364000", + "departure_time": "18:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1049, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:38:12.873000", + "departure_time": "18:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1050, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:39:11.127000", + "departure_time": "18:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1051, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:41:27.600000", + "departure_time": "18:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1052, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:43:11.018000", + "departure_time": "18:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1053, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:44:22.364000", + "departure_time": "18:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1054, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:47:17.782000", + "departure_time": "18:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1055, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:40:00", + "departure_time": "18:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1056, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:44:15.927000", + "departure_time": "18:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1057, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:47:27.709000", + "departure_time": "18:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1058, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:48:04.691000", + "departure_time": "18:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1059, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:49:12.764000", + "departure_time": "18:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1060, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:51:29.891000", + "departure_time": "18:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1061, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:53:09.709000", + "departure_time": "18:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1062, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:54:22.691000", + "departure_time": "18:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1063, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:59:11.673000", + "departure_time": "18:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1064, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "18:55:00", + "departure_time": "18:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1065, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "18:59:00.873000", + "departure_time": "18:59:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1066, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:02:28.364000", + "departure_time": "19:02:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1067, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:03:12.873000", + "departure_time": "19:03:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1068, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:04:11.127000", + "departure_time": "19:04:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1069, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:06:27.600000", + "departure_time": "19:06:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1070, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:08:11.018000", + "departure_time": "19:08:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1071, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:09:22.364000", + "departure_time": "19:09:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1072, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:12:17.782000", + "departure_time": "19:12:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1073, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:15:00", + "departure_time": "19:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1074, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:19:00.873000", + "departure_time": "19:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1075, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:22:28.364000", + "departure_time": "19:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1076, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:23:12.873000", + "departure_time": "19:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1077, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:24:11.127000", + "departure_time": "19:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1078, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:26:27.600000", + "departure_time": "19:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1079, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:28:11.018000", + "departure_time": "19:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1080, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:29:22.364000", + "departure_time": "19:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1081, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:32:17.782000", + "departure_time": "19:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1082, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:50:00", + "departure_time": "19:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1083, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:54:15.927000", + "departure_time": "19:54:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1084, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:57:27.709000", + "departure_time": "19:57:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1085, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:58:04.691000", + "departure_time": "19:58:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1086, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:59:12.764000", + "departure_time": "19:59:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1087, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:01:29.891000", + "departure_time": "20:01:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1088, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:03:09.709000", + "departure_time": "20:03:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1089, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:04:22.691000", + "departure_time": "20:04:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1090, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:09:11.673000", + "departure_time": "20:09:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1091, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:30:00", + "departure_time": "20:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1092, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:34:00.873000", + "departure_time": "20:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1093, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:37:28.364000", + "departure_time": "20:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1094, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:38:12.873000", + "departure_time": "20:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1095, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:39:11.127000", + "departure_time": "20:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1096, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:41:27.600000", + "departure_time": "20:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1097, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:43:11.018000", + "departure_time": "20:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1098, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:44:22.364000", + "departure_time": "20:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1099, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:47:17.782000", + "departure_time": "20:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1100, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:40:00", + "departure_time": "20:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1101, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:44:00.873000", + "departure_time": "20:44:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1102, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:47:28.364000", + "departure_time": "20:47:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1103, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:48:12.873000", + "departure_time": "20:48:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1104, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:49:11.127000", + "departure_time": "20:49:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1105, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:51:27.600000", + "departure_time": "20:51:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1106, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:53:11.018000", + "departure_time": "20:53:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1107, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:54:22.364000", + "departure_time": "20:54:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1108, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:57:17.782000", + "departure_time": "20:57:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1109, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:15:00", + "departure_time": "21:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "feed.stoptime", + "pk": 1110, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:19:00.873000", + "departure_time": "21:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1111, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:22:28.364000", + "departure_time": "21:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1112, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:23:12.873000", + "departure_time": "21:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1113, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:24:11.127000", + "departure_time": "21:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1114, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:26:27.600000", + "departure_time": "21:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1115, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:28:11.018000", + "departure_time": "21:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1116, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:29:22.364000", + "departure_time": "21:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "feed.stoptime", + "pk": 1117, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:32:17.782000", + "departure_time": "21:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "feed.calendar", + "pk": 1, + "fields": { + "feed": "1", + "service_id": "entresemana", + "monday": 1, + "tuesday": 1, + "wednesday": 1, + "thursday": 1, + "friday": 1, + "saturday": 0, + "sunday": 0, + "start_date": "2024-01-01", + "end_date": "2024-12-31" + } + }, + { + "model": "feed.farerule", + "pk": 1, + "fields": { + "feed": "1", + "fare_id": "no_tarifa", + "route_id": "bUCR_L1", + "origin_id": "bUCR_0", + "destination_id": "bUCR_0", + "contains_id": "" + } + }, + { + "model": "feed.farerule", + "pk": 2, + "fields": { + "feed": "1", + "fare_id": "no_tarifa", + "route_id": "bUCR_L2", + "origin_id": "bUCR_1", + "destination_id": "bUCR_1", + "contains_id": "" + } + }, + { + "model": "feed.fareattribute", + "pk": 1, + "fields": { + "feed": "1", + "fare_id": "no_tarifa", + "price": 0, + "currency_type": "CRC", + "payment_method": 0, + "transfers": 0, + "transfer_duration": null + } + }, + { + "model": "feed.shape", + "pk": 1, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93554944029271, + "shape_pt_lon": -84.0491138975951, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "feed.shape", + "pk": 2, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9355589010814, + "shape_pt_lon": -84.0491582627979, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.005 + } + }, + { + "model": "feed.shape", + "pk": 3, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93557354275506, + "shape_pt_lon": -84.0492241246225, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.012 + } + }, + { + "model": "feed.shape", + "pk": 4, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9356000651633, + "shape_pt_lon": -84.049324861376, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.024 + } + }, + { + "model": "feed.shape", + "pk": 5, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93563773463719, + "shape_pt_lon": -84.049416778843, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.035 + } + }, + { + "model": "feed.shape", + "pk": 6, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93568399531643, + "shape_pt_lon": -84.0495368755472, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "feed.shape", + "pk": 7, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93570316048327, + "shape_pt_lon": -84.0495945755631, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.056 + } + }, + { + "model": "feed.shape", + "pk": 8, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93571109089738, + "shape_pt_lon": -84.0496871639603, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.066 + } + }, + { + "model": "feed.shape", + "pk": 9, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93571292483817, + "shape_pt_lon": -84.0498464474787, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.083 + } + }, + { + "model": "feed.shape", + "pk": 10, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93570393244304, + "shape_pt_lon": -84.0500877222699, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.11 + } + }, + { + "model": "feed.shape", + "pk": 11, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93566539329337, + "shape_pt_lon": -84.050351168656, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.139 + } + }, + { + "model": "feed.shape", + "pk": 12, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93561786205413, + "shape_pt_lon": -84.0505937476355, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.166 + } + }, + { + "model": "feed.shape", + "pk": 13, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93556519227529, + "shape_pt_lon": -84.050878060609, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.198 + } + }, + { + "model": "feed.shape", + "pk": 14, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93552922267821, + "shape_pt_lon": -84.051108901895, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.223 + } + }, + { + "model": "feed.shape", + "pk": 15, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93548169125642, + "shape_pt_lon": -84.0513932152566, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.255 + } + }, + { + "model": "feed.shape", + "pk": 16, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93545342942273, + "shape_pt_lon": -84.0516410109878, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.282 + } + }, + { + "model": "feed.shape", + "pk": 17, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93544741074256, + "shape_pt_lon": -84.0516943904767, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.288 + } + }, + { + "model": "feed.shape", + "pk": 18, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93544700627605, + "shape_pt_lon": -84.051754475488, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.295 + } + }, + { + "model": "feed.shape", + "pk": 19, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93546627570862, + "shape_pt_lon": -84.0519579288248, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.317 + } + }, + { + "model": "feed.shape", + "pk": 20, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93548939902537, + "shape_pt_lon": -84.052131385837, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.336 + } + }, + { + "model": "feed.shape", + "pk": 21, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93550517435119, + "shape_pt_lon": -84.0522239834817, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.347 + } + }, + { + "model": "feed.shape", + "pk": 22, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93554618004823, + "shape_pt_lon": -84.0523340057342, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.36 + } + }, + { + "model": "feed.shape", + "pk": 23, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93559987797587, + "shape_pt_lon": -84.0523914948391, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.368 + } + }, + { + "model": "feed.shape", + "pk": 24, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93565552854654, + "shape_pt_lon": -84.0524281689233, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.376 + } + }, + { + "model": "feed.shape", + "pk": 25, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93572094236273, + "shape_pt_lon": -84.0524410544122, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.383 + } + }, + { + "model": "feed.shape", + "pk": 26, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93583614886311, + "shape_pt_lon": -84.0524182569563, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.396 + } + }, + { + "model": "feed.shape", + "pk": 27, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93603336648931, + "shape_pt_lon": -84.0523528383197, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.419 + } + }, + { + "model": "feed.shape", + "pk": 28, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93625691629266, + "shape_pt_lon": -84.0522832947174, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.445 + } + }, + { + "model": "feed.shape", + "pk": 29, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93639307154715, + "shape_pt_lon": -84.0522431941422, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.46 + } + }, + { + "model": "feed.shape", + "pk": 30, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93653561474882, + "shape_pt_lon": -84.0522372469934, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.476 + } + }, + { + "model": "feed.shape", + "pk": 31, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93660005206628, + "shape_pt_lon": -84.0522600443969, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.484 + } + }, + { + "model": "feed.shape", + "pk": 32, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93661957852377, + "shape_pt_lon": -84.0523423132888, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.493 + } + }, + { + "model": "feed.shape", + "pk": 33, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93659126516027, + "shape_pt_lon": -84.0524275557544, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.503 + } + }, + { + "model": "feed.shape", + "pk": 34, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93653854371827, + "shape_pt_lon": -84.0524503531584, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.509 + } + }, + { + "model": "feed.shape", + "pk": 35, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93645360359939, + "shape_pt_lon": -84.0524483707755, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.519 + } + }, + { + "model": "feed.shape", + "pk": 36, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93636085286962, + "shape_pt_lon": -84.052439450052, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.529 + } + }, + { + "model": "feed.shape", + "pk": 37, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93633386047036, + "shape_pt_lon": -84.0524268046992, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.532 + } + }, + { + "model": "feed.shape", + "pk": 38, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93630422609543, + "shape_pt_lon": -84.0524265645631, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.535 + } + }, + { + "model": "feed.shape", + "pk": 39, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93618120917912, + "shape_pt_lon": -84.0524473794854, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.549 + } + }, + { + "model": "feed.shape", + "pk": 40, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93600742368285, + "shape_pt_lon": -84.052484053706, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.569 + } + }, + { + "model": "feed.shape", + "pk": 41, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93581118236608, + "shape_pt_lon": -84.0525276661302, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.591 + } + }, + { + "model": "feed.shape", + "pk": 42, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93571876163712, + "shape_pt_lon": -84.0525355663096, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.601 + } + }, + { + "model": "feed.shape", + "pk": 43, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93563153840537, + "shape_pt_lon": -84.0525177541372, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.611 + } + }, + { + "model": "feed.shape", + "pk": 44, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93553310902874, + "shape_pt_lon": -84.0524334735888, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.626 + } + }, + { + "model": "feed.shape", + "pk": 45, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93545970504671, + "shape_pt_lon": -84.0523512340121, + "shape_pt_sequence": 44, + "shape_dist_traveled": 0.638 + } + }, + { + "model": "feed.shape", + "pk": 46, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93542065199216, + "shape_pt_lon": -84.0522451765253, + "shape_pt_sequence": 45, + "shape_dist_traveled": 0.65 + } + }, + { + "model": "feed.shape", + "pk": 47, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93541674668641, + "shape_pt_lon": -84.0521014537632, + "shape_pt_sequence": 46, + "shape_dist_traveled": 0.666 + } + }, + { + "model": "feed.shape", + "pk": 48, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93537769362758, + "shape_pt_lon": -84.0518556382803, + "shape_pt_sequence": 47, + "shape_dist_traveled": 0.693 + } + }, + { + "model": "feed.shape", + "pk": 49, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93533766423581, + "shape_pt_lon": -84.0515960083744, + "shape_pt_sequence": 48, + "shape_dist_traveled": 0.722 + } + }, + { + "model": "feed.shape", + "pk": 50, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93531364398533, + "shape_pt_lon": -84.0515277691646, + "shape_pt_sequence": 49, + "shape_dist_traveled": 0.73 + } + }, + { + "model": "feed.shape", + "pk": 51, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93528103728449, + "shape_pt_lon": -84.0514612063353, + "shape_pt_sequence": 50, + "shape_dist_traveled": 0.738 + } + }, + { + "model": "feed.shape", + "pk": 52, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93537964636139, + "shape_pt_lon": -84.0510449054667, + "shape_pt_sequence": 51, + "shape_dist_traveled": 0.785 + } + }, + { + "model": "feed.shape", + "pk": 53, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93549228868242, + "shape_pt_lon": -84.0506385823758, + "shape_pt_sequence": 52, + "shape_dist_traveled": 0.831 + } + }, + { + "model": "feed.shape", + "pk": 54, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93560853450969, + "shape_pt_lon": -84.0501428263958, + "shape_pt_sequence": 53, + "shape_dist_traveled": 0.887 + } + }, + { + "model": "feed.shape", + "pk": 55, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93564523227799, + "shape_pt_lon": -84.0499153784661, + "shape_pt_sequence": 54, + "shape_dist_traveled": 0.912 + } + }, + { + "model": "feed.shape", + "pk": 56, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9355593156005, + "shape_pt_lon": -84.0495436816674, + "shape_pt_sequence": 55, + "shape_dist_traveled": 0.954 + } + }, + { + "model": "feed.shape", + "pk": 57, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93549425099087, + "shape_pt_lon": -84.049203385401, + "shape_pt_sequence": 56, + "shape_dist_traveled": 0.992 + } + }, + { + "model": "feed.shape", + "pk": 58, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93539252590615, + "shape_pt_lon": -84.0487850070695, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.039 + } + }, + { + "model": "feed.shape", + "pk": 59, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93537592835444, + "shape_pt_lon": -84.0486462402645, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.055 + } + }, + { + "model": "feed.shape", + "pk": 60, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93528024833921, + "shape_pt_lon": -84.0486373195414, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.065 + } + }, + { + "model": "feed.shape", + "pk": 61, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93529755089066, + "shape_pt_lon": -84.0483824809879, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.093 + } + }, + { + "model": "feed.shape", + "pk": 62, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93524885628052, + "shape_pt_lon": -84.048123669054, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.122 + } + }, + { + "model": "feed.shape", + "pk": 63, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9351256875275, + "shape_pt_lon": -84.0477514451489, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.165 + } + }, + { + "model": "feed.shape", + "pk": 64, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93500538311991, + "shape_pt_lon": -84.0473850372423, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.208 + } + }, + { + "model": "feed.shape", + "pk": 65, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93492412702167, + "shape_pt_lon": -84.0470954278149, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.241 + } + }, + { + "model": "feed.shape", + "pk": 66, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93480668693231, + "shape_pt_lon": -84.046441127981, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.314 + } + }, + { + "model": "feed.shape", + "pk": 67, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93468020166955, + "shape_pt_lon": -84.0458485099908, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.38 + } + }, + { + "model": "feed.shape", + "pk": 68, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93461570602311, + "shape_pt_lon": -84.0456145784198, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.407 + } + }, + { + "model": "feed.shape", + "pk": 69, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93495613335646, + "shape_pt_lon": -84.0456080574792, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.444 + } + }, + { + "model": "feed.shape", + "pk": 70, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93502533870439, + "shape_pt_lon": -84.0455873014759, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.452 + } + }, + { + "model": "feed.shape", + "pk": 71, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93533638426393, + "shape_pt_lon": -84.045580669786, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.487 + } + }, + { + "model": "feed.shape", + "pk": 72, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93558174876489, + "shape_pt_lon": -84.045528502083, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.514 + } + }, + { + "model": "feed.shape", + "pk": 73, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9356639649666, + "shape_pt_lon": -84.0454554675517, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.527 + } + }, + { + "model": "feed.shape", + "pk": 74, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93591239555134, + "shape_pt_lon": -84.0454118867064, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.554 + } + }, + { + "model": "feed.shape", + "pk": 75, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93618345188633, + "shape_pt_lon": -84.0453571107868, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.585 + } + }, + { + "model": "feed.shape", + "pk": 76, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93630292207917, + "shape_pt_lon": -84.0453649359146, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.598 + } + }, + { + "model": "feed.shape", + "pk": 77, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93644423085287, + "shape_pt_lon": -84.0454366662581, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.616 + } + }, + { + "model": "feed.shape", + "pk": 78, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93668331840604, + "shape_pt_lon": -84.045567569655, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.646 + } + }, + { + "model": "feed.shape", + "pk": 79, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93677195745002, + "shape_pt_lon": -84.045592349228, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.656 + } + }, + { + "model": "feed.shape", + "pk": 80, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9368528887295, + "shape_pt_lon": -84.0455871324757, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.665 + } + }, + { + "model": "feed.shape", + "pk": 81, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93694152772752, + "shape_pt_lon": -84.0455467026459, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.676 + } + }, + { + "model": "feed.shape", + "pk": 82, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93708540528038, + "shape_pt_lon": -84.0454423673758, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.695 + } + }, + { + "model": "feed.shape", + "pk": 83, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9372459343465, + "shape_pt_lon": -84.0452787163273, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.721 + } + }, + { + "model": "feed.shape", + "pk": 84, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93733842710149, + "shape_pt_lon": -84.0451378640166, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.739 + } + }, + { + "model": "feed.shape", + "pk": 85, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93756026309952, + "shape_pt_lon": -84.044752821983, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.788 + } + }, + { + "model": "feed.shape", + "pk": 86, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93777652816203, + "shape_pt_lon": -84.0443585013794, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.837 + } + }, + { + "model": "feed.shape", + "pk": 87, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9381041049962, + "shape_pt_lon": -84.0438016139119, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.908 + } + }, + { + "model": "feed.shape", + "pk": 88, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93796476738381, + "shape_pt_lon": -84.0436166501913, + "shape_pt_sequence": 87, + "shape_dist_traveled": 1.934 + } + }, + { + "model": "feed.shape", + "pk": 89, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93791473560688, + "shape_pt_lon": -84.0434457982085, + "shape_pt_sequence": 88, + "shape_dist_traveled": 1.953 + } + }, + { + "model": "feed.shape", + "pk": 90, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93789047771889, + "shape_pt_lon": -84.0432203034589, + "shape_pt_sequence": 89, + "shape_dist_traveled": 1.978 + } + }, + { + "model": "feed.shape", + "pk": 91, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93791970638376, + "shape_pt_lon": -84.0429894627193, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.004 + } + }, + { + "model": "feed.shape", + "pk": 92, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93798008366965, + "shape_pt_lon": -84.0426008139046, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.047 + } + }, + { + "model": "feed.shape", + "pk": 93, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93800449142722, + "shape_pt_lon": -84.0424795244151, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.06 + } + }, + { + "model": "feed.shape", + "pk": 94, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9381380917555, + "shape_pt_lon": -84.0421782569734, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.097 + } + }, + { + "model": "feed.shape", + "pk": 95, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93816473253672, + "shape_pt_lon": -84.0419964534982, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.117 + } + }, + { + "model": "feed.shape", + "pk": 96, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93815830944601, + "shape_pt_lon": -84.0418503844357, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.133 + } + }, + { + "model": "feed.shape", + "pk": 97, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93812876322556, + "shape_pt_lon": -84.0417251823817, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.147 + } + }, + { + "model": "feed.shape", + "pk": 98, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93807176432108, + "shape_pt_lon": -84.0416449024973, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.158 + } + }, + { + "model": "feed.shape", + "pk": 99, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9380170014129, + "shape_pt_lon": -84.0416364975937, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.164 + } + }, + { + "model": "feed.shape", + "pk": 100, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9379218878614, + "shape_pt_lon": -84.0416378013257, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.174 + } + }, + { + "model": "feed.shape", + "pk": 101, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93790138516287, + "shape_pt_lon": -84.0411362584451, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.229 + } + }, + { + "model": "feed.shape", + "pk": 102, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93789650346394, + "shape_pt_lon": -84.041068473332, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.237 + } + }, + { + "model": "feed.shape", + "pk": 103, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93846399292934, + "shape_pt_lon": -84.0409289658467, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.301 + } + }, + { + "model": "feed.shape", + "pk": 104, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93868999787477, + "shape_pt_lon": -84.0409645503437, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.327 + } + }, + { + "model": "feed.shape", + "pk": 105, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93885220465146, + "shape_pt_lon": -84.0411343350368, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.353 + } + }, + { + "model": "feed.shape", + "pk": 106, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93915775668989, + "shape_pt_lon": -84.0416551779252, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.419 + } + }, + { + "model": "feed.shape", + "pk": 107, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93928866239001, + "shape_pt_lon": -84.0417942257713, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.44 + } + }, + { + "model": "feed.shape", + "pk": 108, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9394332650851, + "shape_pt_lon": -84.0418835860126, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.459 + } + }, + { + "model": "feed.shape", + "pk": 109, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93950294569722, + "shape_pt_lon": -84.0419072239736, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.467 + } + }, + { + "model": "feed.shape", + "pk": 110, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93950393195614, + "shape_pt_lon": -84.0422269282472, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.502 + } + }, + { + "model": "feed.shape", + "pk": 111, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93949212322203, + "shape_pt_lon": -84.0425117128132, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.533 + } + }, + { + "model": "feed.shape", + "pk": 112, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93945684385667, + "shape_pt_lon": -84.0429181490899, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.578 + } + }, + { + "model": "feed.shape", + "pk": 113, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93942503205056, + "shape_pt_lon": -84.0433331349077, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.624 + } + }, + { + "model": "feed.shape", + "pk": 114, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93972770605043, + "shape_pt_lon": -84.0432631191506, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.658 + } + }, + { + "model": "feed.shape", + "pk": 115, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93979024582779, + "shape_pt_lon": -84.0432957235711, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.666 + } + }, + { + "model": "feed.shape", + "pk": 116, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93981898031695, + "shape_pt_lon": -84.0433729445674, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.675 + } + }, + { + "model": "feed.shape", + "pk": 117, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94007108411656, + "shape_pt_lon": -84.0443132968873, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.782 + } + }, + { + "model": "feed.shape", + "pk": 118, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94016605495639, + "shape_pt_lon": -84.0446693302114, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.822 + } + }, + { + "model": "feed.shape", + "pk": 119, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94027244564152, + "shape_pt_lon": -84.0448273689979, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.843 + } + }, + { + "model": "feed.shape", + "pk": 120, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94046211098755, + "shape_pt_lon": -84.0455400945559, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.924 + } + }, + { + "model": "feed.shape", + "pk": 121, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94049056601295, + "shape_pt_lon": -84.0456302713637, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.934 + } + }, + { + "model": "feed.shape", + "pk": 122, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94063822457009, + "shape_pt_lon": -84.0455978789472, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.951 + } + }, + { + "model": "feed.shape", + "pk": 123, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94079717180704, + "shape_pt_lon": -84.0450688663703, + "shape_pt_sequence": 122, + "shape_dist_traveled": 3.012 + } + }, + { + "model": "feed.shape", + "pk": 124, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94095438717349, + "shape_pt_lon": -84.04474671421, + "shape_pt_sequence": 123, + "shape_dist_traveled": 3.051 + } + }, + { + "model": "feed.shape", + "pk": 125, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94105262250509, + "shape_pt_lon": -84.0446527254796, + "shape_pt_sequence": 124, + "shape_dist_traveled": 3.066 + } + }, + { + "model": "feed.shape", + "pk": 126, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9414150973303, + "shape_pt_lon": -84.0446772759114, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.106 + } + }, + { + "model": "feed.shape", + "pk": 127, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94222783326419, + "shape_pt_lon": -84.0447316948875, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.196 + } + }, + { + "model": "feed.shape", + "pk": 128, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94282430588245, + "shape_pt_lon": -84.0447692666912, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.262 + } + }, + { + "model": "feed.shape", + "pk": 129, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9430072194504, + "shape_pt_lon": -84.0447361152365, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.283 + } + }, + { + "model": "feed.shape", + "pk": 130, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94325327852743, + "shape_pt_lon": -84.0446536543918, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.311 + } + }, + { + "model": "feed.shape", + "pk": 131, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94367377439675, + "shape_pt_lon": -84.0444658512058, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.362 + } + }, + { + "model": "feed.shape", + "pk": 132, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94380472710699, + "shape_pt_lon": -84.0447574980966, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.397 + } + }, + { + "model": "feed.shape", + "pk": 133, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94388103477618, + "shape_pt_lon": -84.044883947833, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.414 + } + }, + { + "model": "feed.shape", + "pk": 134, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94396870046222, + "shape_pt_lon": -84.044952212081, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.426 + } + }, + { + "model": "feed.shape", + "pk": 135, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94440018674929, + "shape_pt_lon": -84.0449991890221, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.474 + } + }, + { + "model": "feed.shape", + "pk": 136, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94457575401998, + "shape_pt_lon": -84.045011078064, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.493 + } + }, + { + "model": "feed.shape", + "pk": 137, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94495341180596, + "shape_pt_lon": -84.045007224609, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.535 + } + }, + { + "model": "feed.shape", + "pk": 138, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94503790634203, + "shape_pt_lon": -84.0450804402532, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.547 + } + }, + { + "model": "feed.shape", + "pk": 139, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94507262278836, + "shape_pt_lon": -84.0454078875236, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.584 + } + }, + { + "model": "feed.shape", + "pk": 140, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94509663743075, + "shape_pt_lon": -84.0455018337476, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.594 + } + }, + { + "model": "feed.shape", + "pk": 141, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94516495042239, + "shape_pt_lon": -84.0455370798079, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.603 + } + }, + { + "model": "feed.shape", + "pk": 142, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94535421093323, + "shape_pt_lon": -84.0455279840503, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.624 + } + }, + { + "model": "feed.shape", + "pk": 143, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94569609354827, + "shape_pt_lon": -84.0455006967812, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.662 + } + }, + { + "model": "feed.shape", + "pk": 144, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94576019859063, + "shape_pt_lon": -84.0454636202844, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.67 + } + }, + { + "model": "feed.shape", + "pk": 145, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9458090133638, + "shape_pt_lon": -84.0453783778183, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.681 + } + }, + { + "model": "feed.shape", + "pk": 146, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94587051996754, + "shape_pt_lon": -84.0452505141197, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.696 + } + }, + { + "model": "feed.shape", + "pk": 147, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94594579827001, + "shape_pt_lon": -84.0451768005758, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.708 + } + }, + { + "model": "feed.shape", + "pk": 148, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9462925242644, + "shape_pt_lon": -84.0451498689492, + "shape_pt_sequence": 147, + "shape_dist_traveled": 3.746 + } + }, + { + "model": "feed.shape", + "pk": 149, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9463897709987, + "shape_pt_lon": -84.0451620803092, + "shape_pt_sequence": 148, + "shape_dist_traveled": 3.757 + } + }, + { + "model": "feed.shape", + "pk": 150, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94645002673405, + "shape_pt_lon": -84.0452016714679, + "shape_pt_sequence": 149, + "shape_dist_traveled": 3.765 + } + }, + { + "model": "feed.shape", + "pk": 151, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94648404073633, + "shape_pt_lon": -84.0452387476835, + "shape_pt_sequence": 150, + "shape_dist_traveled": 3.771 + } + }, + { + "model": "feed.shape", + "pk": 152, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93554615993122, + "shape_pt_lon": -84.0491114962244, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "feed.shape", + "pk": 153, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93557253860416, + "shape_pt_lon": -84.0492324408382, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.014 + } + }, + { + "model": "feed.shape", + "pk": 154, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93559719650295, + "shape_pt_lon": -84.0493243902202, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.024 + } + }, + { + "model": "feed.shape", + "pk": 155, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93566832503712, + "shape_pt_lon": -84.0495039565472, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.045 + } + }, + { + "model": "feed.shape", + "pk": 156, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93570246673155, + "shape_pt_lon": -84.0495983130441, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.056 + } + }, + { + "model": "feed.shape", + "pk": 157, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93570957958473, + "shape_pt_lon": -84.0496907438365, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.066 + } + }, + { + "model": "feed.shape", + "pk": 158, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93571147624034, + "shape_pt_lon": -84.0498491281346, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.084 + } + }, + { + "model": "feed.shape", + "pk": 159, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93570246663722, + "shape_pt_lon": -84.0500893518124, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.11 + } + }, + { + "model": "feed.shape", + "pk": 160, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93566785089355, + "shape_pt_lon": -84.0503237982121, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.136 + } + }, + { + "model": "feed.shape", + "pk": 161, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93562801871054, + "shape_pt_lon": -84.0505362327233, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.16 + } + }, + { + "model": "feed.shape", + "pk": 162, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93558581568109, + "shape_pt_lon": -84.0507591258626, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.185 + } + }, + { + "model": "feed.shape", + "pk": 163, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93553934502577, + "shape_pt_lon": -84.0510354553896, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.215 + } + }, + { + "model": "feed.shape", + "pk": 164, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93548718391971, + "shape_pt_lon": -84.0513535074206, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.251 + } + }, + { + "model": "feed.shape", + "pk": 165, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93544590778002, + "shape_pt_lon": -84.0516944413929, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.288 + } + }, + { + "model": "feed.shape", + "pk": 166, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93544406437546, + "shape_pt_lon": -84.0517683691601, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.297 + } + }, + { + "model": "feed.shape", + "pk": 167, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93549752617786, + "shape_pt_lon": -84.0521913460308, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.343 + } + }, + { + "model": "feed.shape", + "pk": 168, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93552149197739, + "shape_pt_lon": -84.0522746314152, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.353 + } + }, + { + "model": "feed.shape", + "pk": 169, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93554545760814, + "shape_pt_lon": -84.0523420082619, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.361 + } + }, + { + "model": "feed.shape", + "pk": 170, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93560168465873, + "shape_pt_lon": -84.0523981556341, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.369 + } + }, + { + "model": "feed.shape", + "pk": 171, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93565791169966, + "shape_pt_lon": -84.0524318440576, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.377 + } + }, + { + "model": "feed.shape", + "pk": 172, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.935720591012, + "shape_pt_lon": -84.0524430735317, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.384 + } + }, + { + "model": "feed.shape", + "pk": 173, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93583857529975, + "shape_pt_lon": -84.0524187427515, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.397 + } + }, + { + "model": "feed.shape", + "pk": 174, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93605505885652, + "shape_pt_lon": -84.0523466867771, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.422 + } + }, + { + "model": "feed.shape", + "pk": 175, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93627443620344, + "shape_pt_lon": -84.0522802455722, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.448 + } + }, + { + "model": "feed.shape", + "pk": 176, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93639436894143, + "shape_pt_lon": -84.052243749702, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.461 + } + }, + { + "model": "feed.shape", + "pk": 177, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93653263180367, + "shape_pt_lon": -84.0522390707544, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.477 + } + }, + { + "model": "feed.shape", + "pk": 178, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93679802054417, + "shape_pt_lon": -84.0523349506756, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.508 + } + }, + { + "model": "feed.shape", + "pk": 179, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93706910208629, + "shape_pt_lon": -84.0524313369778, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.54 + } + }, + { + "model": "feed.shape", + "pk": 180, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93735023603007, + "shape_pt_lon": -84.0525380169441, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.573 + } + }, + { + "model": "feed.shape", + "pk": 181, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9375714563375, + "shape_pt_lon": -84.0526437612861, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.6 + } + }, + { + "model": "feed.shape", + "pk": 182, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93774105816322, + "shape_pt_lon": -84.0527027160271, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.62 + } + }, + { + "model": "feed.shape", + "pk": 183, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93778978041929, + "shape_pt_lon": -84.0527151488461, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.625 + } + }, + { + "model": "feed.shape", + "pk": 184, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93794647765702, + "shape_pt_lon": -84.0527273141104, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.643 + } + }, + { + "model": "feed.shape", + "pk": 185, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93809150988507, + "shape_pt_lon": -84.0527076622996, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.659 + } + }, + { + "model": "feed.shape", + "pk": 186, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93815511047925, + "shape_pt_lon": -84.052635606505, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.67 + } + }, + { + "model": "feed.shape", + "pk": 187, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93840121696546, + "shape_pt_lon": -84.0521246655647, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.732 + } + }, + { + "model": "feed.shape", + "pk": 188, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93857142751338, + "shape_pt_lon": -84.051894479649, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.763 + } + }, + { + "model": "feed.shape", + "pk": 189, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93879176765612, + "shape_pt_lon": -84.0516156036497, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.802 + } + }, + { + "model": "feed.shape", + "pk": 190, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93890106345436, + "shape_pt_lon": -84.0514555284908, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.824 + } + }, + { + "model": "feed.shape", + "pk": 191, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93897507515302, + "shape_pt_lon": -84.0513020294891, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.842 + } + }, + { + "model": "feed.shape", + "pk": 192, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9390141956147, + "shape_pt_lon": -84.0511345760324, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.861 + } + }, + { + "model": "feed.shape", + "pk": 193, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93905117558812, + "shape_pt_lon": -84.0509224405605, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.885 + } + }, + { + "model": "feed.shape", + "pk": 194, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93906597792292, + "shape_pt_lon": -84.0506014881021, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.92 + } + }, + { + "model": "feed.shape", + "pk": 195, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93909856537408, + "shape_pt_lon": -84.0501243834524, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.973 + } + }, + { + "model": "feed.shape", + "pk": 196, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93910318560055, + "shape_pt_lon": -84.0497656390733, + "shape_pt_sequence": 44, + "shape_dist_traveled": 1.012 + } + }, + { + "model": "feed.shape", + "pk": 197, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93906512245888, + "shape_pt_lon": -84.049652930016, + "shape_pt_sequence": 45, + "shape_dist_traveled": 1.025 + } + }, + { + "model": "feed.shape", + "pk": 198, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9389773657529, + "shape_pt_lon": -84.0495133854688, + "shape_pt_sequence": 46, + "shape_dist_traveled": 1.043 + } + }, + { + "model": "feed.shape", + "pk": 199, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93881453893313, + "shape_pt_lon": -84.0493115816303, + "shape_pt_sequence": 47, + "shape_dist_traveled": 1.072 + } + }, + { + "model": "feed.shape", + "pk": 200, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93860413409909, + "shape_pt_lon": -84.0490281988577, + "shape_pt_sequence": 48, + "shape_dist_traveled": 1.11 + } + }, + { + "model": "feed.shape", + "pk": 201, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93847607358095, + "shape_pt_lon": -84.0488647834885, + "shape_pt_sequence": 49, + "shape_dist_traveled": 1.133 + } + }, + { + "model": "feed.shape", + "pk": 202, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93830796101282, + "shape_pt_lon": -84.0486425856324, + "shape_pt_sequence": 50, + "shape_dist_traveled": 1.164 + } + }, + { + "model": "feed.shape", + "pk": 203, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93812775111203, + "shape_pt_lon": -84.0484368995492, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.194 + } + }, + { + "model": "feed.shape", + "pk": 204, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93798100124938, + "shape_pt_lon": -84.0482768335369, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.218 + } + }, + { + "model": "feed.shape", + "pk": 205, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93768022319365, + "shape_pt_lon": -84.0479566982914, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.266 + } + }, + { + "model": "feed.shape", + "pk": 206, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93763286635998, + "shape_pt_lon": -84.0479111252314, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.274 + } + }, + { + "model": "feed.shape", + "pk": 207, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93758319780721, + "shape_pt_lon": -84.0478722576937, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.28 + } + }, + { + "model": "feed.shape", + "pk": 208, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93753870216281, + "shape_pt_lon": -84.0478404135935, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.287 + } + }, + { + "model": "feed.shape", + "pk": 209, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9374942065184, + "shape_pt_lon": -84.0478139339113, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.292 + } + }, + { + "model": "feed.shape", + "pk": 210, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93745024180206, + "shape_pt_lon": -84.0477923420699, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.298 + } + }, + { + "model": "feed.shape", + "pk": 211, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93735938216936, + "shape_pt_lon": -84.0477606919451, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.308 + } + }, + { + "model": "feed.shape", + "pk": 212, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93724916693389, + "shape_pt_lon": -84.0477606931305, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.32 + } + }, + { + "model": "feed.shape", + "pk": 213, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93715177760806, + "shape_pt_lon": -84.0477784341865, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.331 + } + }, + { + "model": "feed.shape", + "pk": 214, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93705710158646, + "shape_pt_lon": -84.0477987581936, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.342 + } + }, + { + "model": "feed.shape", + "pk": 215, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93672866697375, + "shape_pt_lon": -84.0479001602699, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.38 + } + }, + { + "model": "feed.shape", + "pk": 216, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93643873625598, + "shape_pt_lon": -84.0479940310818, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.414 + } + }, + { + "model": "feed.shape", + "pk": 217, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93605459371357, + "shape_pt_lon": -84.0481209106209, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.458 + } + }, + { + "model": "feed.shape", + "pk": 218, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93594785009141, + "shape_pt_lon": -84.0481497577059, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.471 + } + }, + { + "model": "feed.shape", + "pk": 219, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93584672067646, + "shape_pt_lon": -84.0481926863882, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.483 + } + }, + { + "model": "feed.shape", + "pk": 220, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93562414968525, + "shape_pt_lon": -84.0482902977589, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.51 + } + }, + { + "model": "feed.shape", + "pk": 221, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93555563302149, + "shape_pt_lon": -84.0483541402688, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.52 + } + }, + { + "model": "feed.shape", + "pk": 222, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93552377293763, + "shape_pt_lon": -84.048395536302, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.526 + } + }, + { + "model": "feed.shape", + "pk": 223, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93549323384328, + "shape_pt_lon": -84.0484359265072, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.531 + } + }, + { + "model": "feed.shape", + "pk": 224, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93545924101029, + "shape_pt_lon": -84.0485562630898, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.545 + } + }, + { + "model": "feed.shape", + "pk": 225, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93545410965148, + "shape_pt_lon": -84.0486084574091, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.551 + } + }, + { + "model": "feed.shape", + "pk": 226, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93545261101962, + "shape_pt_lon": -84.0486583047952, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.556 + } + }, + { + "model": "feed.shape", + "pk": 227, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93527714539185, + "shape_pt_lon": -84.0486381383254, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.576 + } + }, + { + "model": "feed.shape", + "pk": 228, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93529369875646, + "shape_pt_lon": -84.0483849370953, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.604 + } + }, + { + "model": "feed.shape", + "pk": 229, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93524845287248, + "shape_pt_lon": -84.0481250138729, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.633 + } + }, + { + "model": "feed.shape", + "pk": 230, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93510490695821, + "shape_pt_lon": -84.0476876510322, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.683 + } + }, + { + "model": "feed.shape", + "pk": 231, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93492309622952, + "shape_pt_lon": -84.0471049676225, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.75 + } + }, + { + "model": "feed.shape", + "pk": 232, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93478795156821, + "shape_pt_lon": -84.0463710454434, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.832 + } + }, + { + "model": "feed.shape", + "pk": 233, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93468712924438, + "shape_pt_lon": -84.0458810362687, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.887 + } + }, + { + "model": "feed.shape", + "pk": 234, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93461716476174, + "shape_pt_lon": -84.0456150110652, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.917 + } + }, + { + "model": "feed.shape", + "pk": 235, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93466453460568, + "shape_pt_lon": -84.045615726073, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.922 + } + }, + { + "model": "feed.shape", + "pk": 236, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93495411611772, + "shape_pt_lon": -84.0456098658075, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.954 + } + }, + { + "model": "feed.shape", + "pk": 237, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93501867239507, + "shape_pt_lon": -84.0455893287031, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.962 + } + }, + { + "model": "feed.shape", + "pk": 238, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93533255656777, + "shape_pt_lon": -84.0455828491321, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.996 + } + }, + { + "model": "feed.shape", + "pk": 239, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93558174215077, + "shape_pt_lon": -84.0455310895244, + "shape_pt_sequence": 87, + "shape_dist_traveled": 2.025 + } + }, + { + "model": "feed.shape", + "pk": 240, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93565354440517, + "shape_pt_lon": -84.0454587191306, + "shape_pt_sequence": 88, + "shape_dist_traveled": 2.036 + } + }, + { + "model": "feed.shape", + "pk": 241, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93601427775509, + "shape_pt_lon": -84.0453935565556, + "shape_pt_sequence": 89, + "shape_dist_traveled": 2.076 + } + }, + { + "model": "feed.shape", + "pk": 242, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93618250695711, + "shape_pt_lon": -84.0453574183472, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.095 + } + }, + { + "model": "feed.shape", + "pk": 243, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93624056084127, + "shape_pt_lon": -84.0453568135217, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.102 + } + }, + { + "model": "feed.shape", + "pk": 244, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93629795423082, + "shape_pt_lon": -84.0453642553238, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.108 + } + }, + { + "model": "feed.shape", + "pk": 245, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93659318251401, + "shape_pt_lon": -84.0455215059456, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.145 + } + }, + { + "model": "feed.shape", + "pk": 246, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93667976807258, + "shape_pt_lon": -84.0455703414396, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.156 + } + }, + { + "model": "feed.shape", + "pk": 247, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9367692395777, + "shape_pt_lon": -84.0455957359235, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.166 + } + }, + { + "model": "feed.shape", + "pk": 248, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93685293870503, + "shape_pt_lon": -84.0455879222361, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.176 + } + }, + { + "model": "feed.shape", + "pk": 249, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93694173624727, + "shape_pt_lon": -84.0455491295231, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.186 + } + }, + { + "model": "feed.shape", + "pk": 250, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93708123470739, + "shape_pt_lon": -84.0454446214555, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.206 + } + }, + { + "model": "feed.shape", + "pk": 251, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93724313131711, + "shape_pt_lon": -84.0452817159445, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.231 + } + }, + { + "model": "feed.shape", + "pk": 252, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93734607124923, + "shape_pt_lon": -84.0451254422096, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.251 + } + }, + { + "model": "feed.shape", + "pk": 253, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93748749351063, + "shape_pt_lon": -84.0448724740612, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.283 + } + }, + { + "model": "feed.shape", + "pk": 254, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93761860756564, + "shape_pt_lon": -84.0446484093239, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.312 + } + }, + { + "model": "feed.shape", + "pk": 255, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93781098243242, + "shape_pt_lon": -84.0443002302728, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.355 + } + }, + { + "model": "feed.shape", + "pk": 256, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93799146315684, + "shape_pt_lon": -84.0439934603325, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.395 + } + }, + { + "model": "feed.shape", + "pk": 257, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93810165004318, + "shape_pt_lon": -84.0438034580265, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.419 + } + }, + { + "model": "feed.shape", + "pk": 258, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93796407612903, + "shape_pt_lon": -84.0436169062427, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.444 + } + }, + { + "model": "feed.shape", + "pk": 259, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93791116339785, + "shape_pt_lon": -84.043444027742, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.464 + } + }, + { + "model": "feed.shape", + "pk": 260, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93788614994896, + "shape_pt_lon": -84.0432193842326, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.489 + } + }, + { + "model": "feed.shape", + "pk": 261, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93792655633902, + "shape_pt_lon": -84.0429361376045, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.52 + } + }, + { + "model": "feed.shape", + "pk": 262, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93800099196738, + "shape_pt_lon": -84.0424812505301, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.571 + } + }, + { + "model": "feed.shape", + "pk": 263, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93813818359375, + "shape_pt_lon": -84.0421772565051, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.607 + } + }, + { + "model": "feed.shape", + "pk": 264, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93816415907815, + "shape_pt_lon": -84.0419985184082, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.627 + } + }, + { + "model": "feed.shape", + "pk": 265, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9381545385288, + "shape_pt_lon": -84.0418510350607, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.643 + } + }, + { + "model": "feed.shape", + "pk": 266, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93812567687818, + "shape_pt_lon": -84.0417260160641, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.657 + } + }, + { + "model": "feed.shape", + "pk": 267, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93807564954973, + "shape_pt_lon": -84.0416527622632, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.667 + } + }, + { + "model": "feed.shape", + "pk": 268, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93804289664845, + "shape_pt_lon": -84.0416384252501, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.671 + } + }, + { + "model": "feed.shape", + "pk": 269, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93801311595451, + "shape_pt_lon": -84.0416361581774, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.675 + } + }, + { + "model": "feed.shape", + "pk": 270, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93792172067878, + "shape_pt_lon": -84.0416381115992, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.685 + } + }, + { + "model": "feed.shape", + "pk": 271, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93790247956499, + "shape_pt_lon": -84.0412122658535, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.731 + } + }, + { + "model": "feed.shape", + "pk": 272, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93789478311904, + "shape_pt_lon": -84.0410686893496, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.747 + } + }, + { + "model": "feed.shape", + "pk": 273, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93830046896954, + "shape_pt_lon": -84.040969095546, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.793 + } + }, + { + "model": "feed.shape", + "pk": 274, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93846168564775, + "shape_pt_lon": -84.0409298363785, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.812 + } + }, + { + "model": "feed.shape", + "pk": 275, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93868873033166, + "shape_pt_lon": -84.040967928104, + "shape_pt_sequence": 123, + "shape_dist_traveled": 2.837 + } + }, + { + "model": "feed.shape", + "pk": 276, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93884815398905, + "shape_pt_lon": -84.0411370173071, + "shape_pt_sequence": 124, + "shape_dist_traveled": 2.863 + } + }, + { + "model": "feed.shape", + "pk": 277, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93915383599336, + "shape_pt_lon": -84.0416568644267, + "shape_pt_sequence": 125, + "shape_dist_traveled": 2.929 + } + }, + { + "model": "feed.shape", + "pk": 278, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93928521203319, + "shape_pt_lon": -84.0417935755105, + "shape_pt_sequence": 126, + "shape_dist_traveled": 2.95 + } + }, + { + "model": "feed.shape", + "pk": 279, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93942977628924, + "shape_pt_lon": -84.0418876857024, + "shape_pt_sequence": 127, + "shape_dist_traveled": 2.969 + } + }, + { + "model": "feed.shape", + "pk": 280, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93950150662073, + "shape_pt_lon": -84.0419089725314, + "shape_pt_sequence": 128, + "shape_dist_traveled": 2.977 + } + }, + { + "model": "feed.shape", + "pk": 281, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93950371370814, + "shape_pt_lon": -84.0422428396408, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.014 + } + }, + { + "model": "feed.shape", + "pk": 282, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93948613333313, + "shape_pt_lon": -84.0425204684191, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.044 + } + }, + { + "model": "feed.shape", + "pk": 283, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93944529338017, + "shape_pt_lon": -84.0430246306461, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.1 + } + }, + { + "model": "feed.shape", + "pk": 284, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93942327481619, + "shape_pt_lon": -84.0433356324423, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.134 + } + }, + { + "model": "feed.shape", + "pk": 285, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93972442200525, + "shape_pt_lon": -84.0432655607324, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.168 + } + }, + { + "model": "feed.shape", + "pk": 286, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93978732393233, + "shape_pt_lon": -84.043299171515, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.176 + } + }, + { + "model": "feed.shape", + "pk": 287, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93981711902594, + "shape_pt_lon": -84.0433809579747, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.186 + } + }, + { + "model": "feed.shape", + "pk": 288, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93991974845217, + "shape_pt_lon": -84.0437596394605, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.229 + } + }, + { + "model": "feed.shape", + "pk": 289, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94007043205839, + "shape_pt_lon": -84.0443170698121, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.292 + } + }, + { + "model": "feed.shape", + "pk": 290, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94016533658292, + "shape_pt_lon": -84.0446744654815, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.332 + } + }, + { + "model": "feed.shape", + "pk": 291, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94027017298111, + "shape_pt_lon": -84.0448268343636, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.353 + } + }, + { + "model": "feed.shape", + "pk": 292, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94038169599758, + "shape_pt_lon": -84.045244089757, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.4 + } + }, + { + "model": "feed.shape", + "pk": 293, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94048873914792, + "shape_pt_lon": -84.045632855511, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.444 + } + }, + { + "model": "feed.shape", + "pk": 294, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94063882056966, + "shape_pt_lon": -84.045599244728, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.461 + } + }, + { + "model": "feed.shape", + "pk": 295, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94079662666821, + "shape_pt_lon": -84.0450681942005, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.522 + } + }, + { + "model": "feed.shape", + "pk": 296, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94095071185347, + "shape_pt_lon": -84.044750328054, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.561 + } + }, + { + "model": "feed.shape", + "pk": 297, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9410528605391, + "shape_pt_lon": -84.0446554341072, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.576 + } + }, + { + "model": "feed.shape", + "pk": 298, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94157411286451, + "shape_pt_lon": -84.04469185811, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.634 + } + }, + { + "model": "feed.shape", + "pk": 299, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94242227255298, + "shape_pt_lon": -84.0447474726987, + "shape_pt_sequence": 147, + "shape_dist_traveled": 3.728 + } + }, + { + "model": "feed.shape", + "pk": 300, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94283107241787, + "shape_pt_lon": -84.0447699014639, + "shape_pt_sequence": 148, + "shape_dist_traveled": 3.773 + } + }, + { + "model": "feed.shape", + "pk": 301, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94300697065598, + "shape_pt_lon": -84.0447350564938, + "shape_pt_sequence": 149, + "shape_dist_traveled": 3.793 + } + }, + { + "model": "feed.shape", + "pk": 302, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94326009234421, + "shape_pt_lon": -84.0446544775012, + "shape_pt_sequence": 150, + "shape_dist_traveled": 3.823 + } + }, + { + "model": "feed.shape", + "pk": 303, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94351468777105, + "shape_pt_lon": -84.0445407320727, + "shape_pt_sequence": 151, + "shape_dist_traveled": 3.853 + } + }, + { + "model": "feed.shape", + "pk": 304, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94366913468646, + "shape_pt_lon": -84.0444710421328, + "shape_pt_sequence": 152, + "shape_dist_traveled": 3.872 + } + }, + { + "model": "feed.shape", + "pk": 305, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9437999854876, + "shape_pt_lon": -84.0447541575134, + "shape_pt_sequence": 153, + "shape_dist_traveled": 3.906 + } + }, + { + "model": "feed.shape", + "pk": 306, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94388149907578, + "shape_pt_lon": -84.0448848261506, + "shape_pt_sequence": 154, + "shape_dist_traveled": 3.923 + } + }, + { + "model": "feed.shape", + "pk": 307, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94396600743452, + "shape_pt_lon": -84.0449552037605, + "shape_pt_sequence": 155, + "shape_dist_traveled": 3.935 + } + }, + { + "model": "feed.shape", + "pk": 308, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94433419150155, + "shape_pt_lon": -84.0449932717292, + "shape_pt_sequence": 156, + "shape_dist_traveled": 3.976 + } + }, + { + "model": "feed.shape", + "pk": 309, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94457398813642, + "shape_pt_lon": -84.0450138149367, + "shape_pt_sequence": 157, + "shape_dist_traveled": 4.003 + } + }, + { + "model": "feed.shape", + "pk": 310, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94495221337372, + "shape_pt_lon": -84.045010504636, + "shape_pt_sequence": 158, + "shape_dist_traveled": 4.045 + } + }, + { + "model": "feed.shape", + "pk": 311, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94503698779598, + "shape_pt_lon": -84.0450833311997, + "shape_pt_sequence": 159, + "shape_dist_traveled": 4.057 + } + }, + { + "model": "feed.shape", + "pk": 312, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94506796311185, + "shape_pt_lon": -84.045389534011, + "shape_pt_sequence": 160, + "shape_dist_traveled": 4.091 + } + }, + { + "model": "feed.shape", + "pk": 313, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94509404758507, + "shape_pt_lon": -84.0455020842335, + "shape_pt_sequence": 161, + "shape_dist_traveled": 4.104 + } + }, + { + "model": "feed.shape", + "pk": 314, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94516741015652, + "shape_pt_lon": -84.0455418078417, + "shape_pt_sequence": 162, + "shape_dist_traveled": 4.113 + } + }, + { + "model": "feed.shape", + "pk": 315, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94569411437748, + "shape_pt_lon": -84.0455036631251, + "shape_pt_sequence": 163, + "shape_dist_traveled": 4.171 + } + }, + { + "model": "feed.shape", + "pk": 316, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94576235686358, + "shape_pt_lon": -84.0454645549726, + "shape_pt_sequence": 164, + "shape_dist_traveled": 4.18 + } + }, + { + "model": "feed.shape", + "pk": 317, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94586939851089, + "shape_pt_lon": -84.0452550477597, + "shape_pt_sequence": 165, + "shape_dist_traveled": 4.206 + } + }, + { + "model": "feed.shape", + "pk": 318, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94594554151604, + "shape_pt_lon": -84.0451777429595, + "shape_pt_sequence": 166, + "shape_dist_traveled": 4.218 + } + }, + { + "model": "feed.shape", + "pk": 319, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94629085058927, + "shape_pt_lon": -84.0451530949856, + "shape_pt_sequence": 167, + "shape_dist_traveled": 4.256 + } + }, + { + "model": "feed.shape", + "pk": 320, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94638848955421, + "shape_pt_lon": -84.0451636656039, + "shape_pt_sequence": 168, + "shape_dist_traveled": 4.267 + } + }, + { + "model": "feed.shape", + "pk": 321, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94644918315917, + "shape_pt_lon": -84.0452028781838, + "shape_pt_sequence": 169, + "shape_dist_traveled": 4.275 + } + }, + { + "model": "feed.shape", + "pk": 322, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94648865740507, + "shape_pt_lon": -84.0452462913844, + "shape_pt_sequence": 170, + "shape_dist_traveled": 4.281 + } + }, + { + "model": "feed.shape", + "pk": 323, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93551240308205, + "shape_pt_lon": -84.052232462037, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "feed.shape", + "pk": 324, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93553038682294, + "shape_pt_lon": -84.0523024805564, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.008 + } + }, + { + "model": "feed.shape", + "pk": 325, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93554317941351, + "shape_pt_lon": -84.0523354193901, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.012 + } + }, + { + "model": "feed.shape", + "pk": 326, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93560006968185, + "shape_pt_lon": -84.0523952582046, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.021 + } + }, + { + "model": "feed.shape", + "pk": 327, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93565298376728, + "shape_pt_lon": -84.0524284133704, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.028 + } + }, + { + "model": "feed.shape", + "pk": 328, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93571914349433, + "shape_pt_lon": -84.0524404498132, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.035 + } + }, + { + "model": "feed.shape", + "pk": 329, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93583719162457, + "shape_pt_lon": -84.0524171180445, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "feed.shape", + "pk": 330, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93594643029256, + "shape_pt_lon": -84.0523801266021, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.061 + } + }, + { + "model": "feed.shape", + "pk": 331, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93608834513962, + "shape_pt_lon": -84.0523343631691, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.078 + } + }, + { + "model": "feed.shape", + "pk": 332, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93620422239772, + "shape_pt_lon": -84.0522977078958, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.091 + } + }, + { + "model": "feed.shape", + "pk": 333, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.936293049843, + "shape_pt_lon": -84.0522711599884, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.101 + } + }, + { + "model": "feed.shape", + "pk": 334, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93639226353531, + "shape_pt_lon": -84.0522405229359, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.113 + } + }, + { + "model": "feed.shape", + "pk": 335, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93653093553953, + "shape_pt_lon": -84.0522367457551, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.128 + } + }, + { + "model": "feed.shape", + "pk": 336, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93659589447438, + "shape_pt_lon": -84.0522590055211, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.136 + } + }, + { + "model": "feed.shape", + "pk": 337, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93661615058734, + "shape_pt_lon": -84.0523412639074, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.145 + } + }, + { + "model": "feed.shape", + "pk": 338, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9365876265418, + "shape_pt_lon": -84.0524260404882, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.155 + } + }, + { + "model": "feed.shape", + "pk": 339, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9365355393877, + "shape_pt_lon": -84.0524499625703, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.161 + } + }, + { + "model": "feed.shape", + "pk": 340, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93644867420793, + "shape_pt_lon": -84.0524473462339, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.171 + } + }, + { + "model": "feed.shape", + "pk": 341, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93635813864212, + "shape_pt_lon": -84.0524384481957, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.181 + } + }, + { + "model": "feed.shape", + "pk": 342, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93632957313295, + "shape_pt_lon": -84.052426075736, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.184 + } + }, + { + "model": "feed.shape", + "pk": 343, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93630067737655, + "shape_pt_lon": -84.0524254379402, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.188 + } + }, + { + "model": "feed.shape", + "pk": 344, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9361767385198, + "shape_pt_lon": -84.0524455386407, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.201 + } + }, + { + "model": "feed.shape", + "pk": 345, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93606938255121, + "shape_pt_lon": -84.0524692189919, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.214 + } + }, + { + "model": "feed.shape", + "pk": 346, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9358662876061, + "shape_pt_lon": -84.0525134237392, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.237 + } + }, + { + "model": "feed.shape", + "pk": 347, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93580530982546, + "shape_pt_lon": -84.0525277028597, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.244 + } + }, + { + "model": "feed.shape", + "pk": 348, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93571720324209, + "shape_pt_lon": -84.0525351455981, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.253 + } + }, + { + "model": "feed.shape", + "pk": 349, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93562932790421, + "shape_pt_lon": -84.0525170973821, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.263 + } + }, + { + "model": "feed.shape", + "pk": 350, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93552958615174, + "shape_pt_lon": -84.0524334827489, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.278 + } + }, + { + "model": "feed.shape", + "pk": 351, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93545575661828, + "shape_pt_lon": -84.052350672979, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.29 + } + }, + { + "model": "feed.shape", + "pk": 352, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93541638163459, + "shape_pt_lon": -84.0522446182099, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.302 + } + }, + { + "model": "feed.shape", + "pk": 353, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93541236377893, + "shape_pt_lon": -84.0520977731443, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.318 + } + }, + { + "model": "feed.shape", + "pk": 354, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9353609350822, + "shape_pt_lon": -84.0517673714683, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.355 + } + }, + { + "model": "feed.shape", + "pk": 355, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93533537431955, + "shape_pt_lon": -84.0515957473315, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.374 + } + }, + { + "model": "feed.shape", + "pk": 356, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93527832074849, + "shape_pt_lon": -84.0514578761312, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.39 + } + }, + { + "model": "feed.shape", + "pk": 357, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93537394568805, + "shape_pt_lon": -84.051051560594, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.436 + } + }, + { + "model": "feed.shape", + "pk": 358, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93548509593826, + "shape_pt_lon": -84.0506488451042, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.482 + } + }, + { + "model": "feed.shape", + "pk": 359, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93555656904013, + "shape_pt_lon": -84.0503446866737, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.516 + } + }, + { + "model": "feed.shape", + "pk": 360, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93560639042598, + "shape_pt_lon": -84.0501407351937, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.539 + } + }, + { + "model": "feed.shape", + "pk": 361, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93564014039442, + "shape_pt_lon": -84.0499188359838, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.564 + } + }, + { + "model": "feed.shape", + "pk": 362, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93555237106771, + "shape_pt_lon": -84.0495240741516, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.608 + } + }, + { + "model": "feed.shape", + "pk": 363, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9355127171103, + "shape_pt_lon": -84.0493169635181, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.631 + } + }, + { + "model": "feed.shape", + "pk": 364, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93544759669272, + "shape_pt_lon": -84.0490255135247, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.664 + } + }, + { + "model": "feed.shape", + "pk": 365, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93538988817417, + "shape_pt_lon": -84.0487899823799, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.691 + } + }, + { + "model": "feed.shape", + "pk": 366, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93537301317815, + "shape_pt_lon": -84.0486447689264, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.707 + } + }, + { + "model": "feed.shape", + "pk": 367, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93527658461171, + "shape_pt_lon": -84.0486366108669, + "shape_pt_sequence": 44, + "shape_dist_traveled": 0.718 + } + }, + { + "model": "feed.shape", + "pk": 368, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93529274995559, + "shape_pt_lon": -84.0483784246656, + "shape_pt_sequence": 45, + "shape_dist_traveled": 0.746 + } + }, + { + "model": "feed.shape", + "pk": 369, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93524694618673, + "shape_pt_lon": -84.0481238929513, + "shape_pt_sequence": 46, + "shape_dist_traveled": 0.774 + } + }, + { + "model": "feed.shape", + "pk": 370, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93514165787212, + "shape_pt_lon": -84.0478057230236, + "shape_pt_sequence": 47, + "shape_dist_traveled": 0.811 + } + }, + { + "model": "feed.shape", + "pk": 371, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93500316815773, + "shape_pt_lon": -84.0473807827294, + "shape_pt_sequence": 48, + "shape_dist_traveled": 0.86 + } + }, + { + "model": "feed.shape", + "pk": 372, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93492049042863, + "shape_pt_lon": -84.0470859236543, + "shape_pt_sequence": 49, + "shape_dist_traveled": 0.894 + } + }, + { + "model": "feed.shape", + "pk": 373, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93479657132182, + "shape_pt_lon": -84.0464195689003, + "shape_pt_sequence": 50, + "shape_dist_traveled": 0.968 + } + }, + { + "model": "feed.shape", + "pk": 374, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93468604728109, + "shape_pt_lon": -84.0458857020311, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.028 + } + }, + { + "model": "feed.shape", + "pk": 375, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9346124699569, + "shape_pt_lon": -84.0456137031377, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.059 + } + }, + { + "model": "feed.shape", + "pk": 376, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93481022852054, + "shape_pt_lon": -84.0456081393267, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.081 + } + }, + { + "model": "feed.shape", + "pk": 377, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93495379560579, + "shape_pt_lon": -84.0456083692307, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.096 + } + }, + { + "model": "feed.shape", + "pk": 378, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93502122053513, + "shape_pt_lon": -84.0455873976348, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.104 + } + }, + { + "model": "feed.shape", + "pk": 379, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93525069991888, + "shape_pt_lon": -84.0455815527507, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.13 + } + }, + { + "model": "feed.shape", + "pk": 380, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93533621207088, + "shape_pt_lon": -84.0455791055204, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.139 + } + }, + { + "model": "feed.shape", + "pk": 381, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9355796939962, + "shape_pt_lon": -84.0455277100451, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.167 + } + }, + { + "model": "feed.shape", + "pk": 382, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93566141737569, + "shape_pt_lon": -84.0454545424224, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.179 + } + }, + { + "model": "feed.shape", + "pk": 383, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93593880374486, + "shape_pt_lon": -84.0454033749615, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.21 + } + }, + { + "model": "feed.shape", + "pk": 384, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93617987563359, + "shape_pt_lon": -84.0453561940705, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.237 + } + }, + { + "model": "feed.shape", + "pk": 385, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93629878421235, + "shape_pt_lon": -84.0453622217276, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.25 + } + }, + { + "model": "feed.shape", + "pk": 386, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93647074793075, + "shape_pt_lon": -84.0454544077961, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.272 + } + }, + { + "model": "feed.shape", + "pk": 387, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9366470154013, + "shape_pt_lon": -84.0455491574187, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.294 + } + }, + { + "model": "feed.shape", + "pk": 388, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93667996169247, + "shape_pt_lon": -84.0455671051487, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.298 + } + }, + { + "model": "feed.shape", + "pk": 389, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93677076487081, + "shape_pt_lon": -84.0455923951325, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.308 + } + }, + { + "model": "feed.shape", + "pk": 390, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93685019478803, + "shape_pt_lon": -84.0455875957907, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.317 + } + }, + { + "model": "feed.shape", + "pk": 391, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93693939078323, + "shape_pt_lon": -84.0455459896891, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.328 + } + }, + { + "model": "feed.shape", + "pk": 392, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93708216879507, + "shape_pt_lon": -84.0454405657035, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.348 + } + }, + { + "model": "feed.shape", + "pk": 393, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9372417505605, + "shape_pt_lon": -84.0452791956738, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.373 + } + }, + { + "model": "feed.shape", + "pk": 394, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93733175001592, + "shape_pt_lon": -84.0451437718914, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.391 + } + }, + { + "model": "feed.shape", + "pk": 395, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93747880276838, + "shape_pt_lon": -84.0448843455207, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.423 + } + }, + { + "model": "feed.shape", + "pk": 396, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93759383837854, + "shape_pt_lon": -84.0446848467803, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.449 + } + }, + { + "model": "feed.shape", + "pk": 397, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93775722150572, + "shape_pt_lon": -84.0443877220931, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.486 + } + }, + { + "model": "feed.shape", + "pk": 398, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93792650160209, + "shape_pt_lon": -84.0440980878075, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.523 + } + }, + { + "model": "feed.shape", + "pk": 399, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93809919166979, + "shape_pt_lon": -84.0437999865192, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.561 + } + }, + { + "model": "feed.shape", + "pk": 400, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93796097853527, + "shape_pt_lon": -84.0436147985756, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.586 + } + }, + { + "model": "feed.shape", + "pk": 401, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93791115773413, + "shape_pt_lon": -84.0434434787742, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.606 + } + }, + { + "model": "feed.shape", + "pk": 402, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9378853721441, + "shape_pt_lon": -84.0432188653814, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.63 + } + }, + { + "model": "feed.shape", + "pk": 403, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93792474683056, + "shape_pt_lon": -84.0429382281456, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.661 + } + }, + { + "model": "feed.shape", + "pk": 404, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93798421082772, + "shape_pt_lon": -84.0425692976739, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.702 + } + }, + { + "model": "feed.shape", + "pk": 405, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93799717971221, + "shape_pt_lon": -84.0424760119919, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.713 + } + }, + { + "model": "feed.shape", + "pk": 406, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93813619639644, + "shape_pt_lon": -84.0421774270254, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.749 + } + }, + { + "model": "feed.shape", + "pk": 407, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93816151133474, + "shape_pt_lon": -84.0419972282554, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.769 + } + }, + { + "model": "feed.shape", + "pk": 408, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93815347569085, + "shape_pt_lon": -84.0418487515775, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.785 + } + }, + { + "model": "feed.shape", + "pk": 409, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93812695789198, + "shape_pt_lon": -84.0417223014224, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.799 + } + }, + { + "model": "feed.shape", + "pk": 410, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93807552975984, + "shape_pt_lon": -84.041649694696, + "shape_pt_sequence": 87, + "shape_dist_traveled": 1.809 + } + }, + { + "model": "feed.shape", + "pk": 411, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93801445884308, + "shape_pt_lon": -84.0416317469654, + "shape_pt_sequence": 88, + "shape_dist_traveled": 1.816 + } + }, + { + "model": "feed.shape", + "pk": 412, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93791897942971, + "shape_pt_lon": -84.0416350505556, + "shape_pt_sequence": 89, + "shape_dist_traveled": 1.827 + } + }, + { + "model": "feed.shape", + "pk": 413, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93789540463778, + "shape_pt_lon": -84.0410687729965, + "shape_pt_sequence": 90, + "shape_dist_traveled": 1.889 + } + }, + { + "model": "feed.shape", + "pk": 414, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93846102257875, + "shape_pt_lon": -84.0409278059346, + "shape_pt_sequence": 91, + "shape_dist_traveled": 1.953 + } + }, + { + "model": "feed.shape", + "pk": 415, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93868770509072, + "shape_pt_lon": -84.0409636843222, + "shape_pt_sequence": 92, + "shape_dist_traveled": 1.979 + } + }, + { + "model": "feed.shape", + "pk": 416, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93884702967763, + "shape_pt_lon": -84.0411317795776, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.004 + } + }, + { + "model": "feed.shape", + "pk": 417, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93915009329333, + "shape_pt_lon": -84.0416545090707, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.071 + } + }, + { + "model": "feed.shape", + "pk": 418, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93928437269097, + "shape_pt_lon": -84.0417940169538, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.092 + } + }, + { + "model": "feed.shape", + "pk": 419, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93942339095397, + "shape_pt_lon": -84.0418844077991, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.11 + } + }, + { + "model": "feed.shape", + "pk": 420, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93949992907343, + "shape_pt_lon": -84.0419066090587, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.119 + } + }, + { + "model": "feed.shape", + "pk": 421, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93949992907343, + "shape_pt_lon": -84.0422475569833, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.156 + } + }, + { + "model": "feed.shape", + "pk": 422, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.939437, + "shape_pt_lon": -84.043074, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.187 + } + }, + { + "model": "feed.shape", + "pk": 423, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9394249524573, + "shape_pt_lon": -84.0433290766316, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.275 + } + }, + { + "model": "feed.shape", + "pk": 424, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93972312001197, + "shape_pt_lon": -84.0432616940963, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.309 + } + }, + { + "model": "feed.shape", + "pk": 425, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9397847344284, + "shape_pt_lon": -84.0432938739159, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.317 + } + }, + { + "model": "feed.shape", + "pk": 426, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9398186343525, + "shape_pt_lon": -84.0433818049407, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.327 + } + }, + { + "model": "feed.shape", + "pk": 427, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93998824672434, + "shape_pt_lon": -84.0440308770623, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.401 + } + }, + { + "model": "feed.shape", + "pk": 428, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94015974971341, + "shape_pt_lon": -84.0446658158992, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.473 + } + }, + { + "model": "feed.shape", + "pk": 429, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94026910203425, + "shape_pt_lon": -84.0448245474961, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.494 + } + }, + { + "model": "feed.shape", + "pk": 430, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94036490303632, + "shape_pt_lon": -84.0451873514683, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.535 + } + }, + { + "model": "feed.shape", + "pk": 431, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94048769323097, + "shape_pt_lon": -84.0456290389484, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.586 + } + }, + { + "model": "feed.shape", + "pk": 432, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94063635155576, + "shape_pt_lon": -84.0455931434884, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.602 + } + }, + { + "model": "feed.shape", + "pk": 433, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94079234514589, + "shape_pt_lon": -84.0450690355552, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.662 + } + }, + { + "model": "feed.shape", + "pk": 434, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94094918383372, + "shape_pt_lon": -84.0447505513004, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.701 + } + }, + { + "model": "feed.shape", + "pk": 435, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94104532842372, + "shape_pt_lon": -84.0446520351469, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.717 + } + }, + { + "model": "feed.shape", + "pk": 436, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94113081479986, + "shape_pt_lon": -84.0446571934664, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.726 + } + }, + { + "model": "feed.shape", + "pk": 437, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94144321527622, + "shape_pt_lon": -84.0446770863329, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.761 + } + }, + { + "model": "feed.shape", + "pk": 438, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94195499816524, + "shape_pt_lon": -84.0447142198439, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.817 + } + }, + { + "model": "feed.shape", + "pk": 439, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94233948335795, + "shape_pt_lon": -84.0447371192727, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.86 + } + }, + { + "model": "feed.shape", + "pk": 440, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94270561942093, + "shape_pt_lon": -84.0447624203313, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.901 + } + }, + { + "model": "feed.shape", + "pk": 441, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94282741926446, + "shape_pt_lon": -84.0447662997461, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.914 + } + }, + { + "model": "feed.shape", + "pk": 442, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94300876520552, + "shape_pt_lon": -84.0447342405736, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.934 + } + }, + { + "model": "feed.shape", + "pk": 443, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94322619282253, + "shape_pt_lon": -84.044661630678, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.96 + } + }, + { + "model": "feed.shape", + "pk": 444, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94336188947768, + "shape_pt_lon": -84.0446070756693, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.976 + } + }, + { + "model": "feed.shape", + "pk": 445, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94366938860733, + "shape_pt_lon": -84.0444664621215, + "shape_pt_sequence": 122, + "shape_dist_traveled": 3.013 + } + }, + { + "model": "feed.shape", + "pk": 446, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94379763572232, + "shape_pt_lon": -84.0447499441632, + "shape_pt_sequence": 123, + "shape_dist_traveled": 3.047 + } + }, + { + "model": "feed.shape", + "pk": 447, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94387703073651, + "shape_pt_lon": -84.0448781808515, + "shape_pt_sequence": 124, + "shape_dist_traveled": 3.064 + } + }, + { + "model": "feed.shape", + "pk": 448, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94396544788927, + "shape_pt_lon": -84.0449496270056, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.077 + } + }, + { + "model": "feed.shape", + "pk": 449, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94454435151914, + "shape_pt_lon": -84.0450074182673, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.141 + } + }, + { + "model": "feed.shape", + "pk": 450, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94494922686726, + "shape_pt_lon": -84.0450098494603, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.186 + } + }, + { + "model": "feed.shape", + "pk": 451, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94503488859595, + "shape_pt_lon": -84.0450726102459, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.197 + } + }, + { + "model": "feed.shape", + "pk": 452, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94506635931216, + "shape_pt_lon": -84.0453994971357, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.233 + } + }, + { + "model": "feed.shape", + "pk": 453, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94509373573383, + "shape_pt_lon": -84.0454999143925, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.245 + } + }, + { + "model": "feed.shape", + "pk": 454, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94516587977827, + "shape_pt_lon": -84.0455384857143, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.254 + } + }, + { + "model": "feed.shape", + "pk": 455, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94569334489241, + "shape_pt_lon": -84.045501640108, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.312 + } + }, + { + "model": "feed.shape", + "pk": 456, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94576818120904, + "shape_pt_lon": -84.0454572011088, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.322 + } + }, + { + "model": "feed.shape", + "pk": 457, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94581918999885, + "shape_pt_lon": -84.0453571624431, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.334 + } + }, + { + "model": "feed.shape", + "pk": 458, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94586821736523, + "shape_pt_lon": -84.0452494124261, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.347 + } + }, + { + "model": "feed.shape", + "pk": 459, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94594549545337, + "shape_pt_lon": -84.0451749917014, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.359 + } + }, + { + "model": "feed.shape", + "pk": 460, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94628917517751, + "shape_pt_lon": -84.045149887399, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.397 + } + }, + { + "model": "feed.shape", + "pk": 461, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.946387887887, + "shape_pt_lon": -84.0451617577946, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.408 + } + }, + { + "model": "feed.shape", + "pk": 462, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94644528982524, + "shape_pt_lon": -84.0451994142665, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.416 + } + }, + { + "model": "feed.shape", + "pk": 463, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94649012442296, + "shape_pt_lon": -84.0452511227568, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.423 + } + }, + { + "model": "feed.shape", + "pk": 464, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93551129613598, + "shape_pt_lon": -84.0522203008732, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "feed.shape", + "pk": 465, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9355310767404, + "shape_pt_lon": -84.0522927059177, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.008 + } + }, + { + "model": "feed.shape", + "pk": 466, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93554722789095, + "shape_pt_lon": -84.0523347118824, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.013 + } + }, + { + "model": "feed.shape", + "pk": 467, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93559998927965, + "shape_pt_lon": -84.0523891977038, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.022 + } + }, + { + "model": "feed.shape", + "pk": 468, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93565665681396, + "shape_pt_lon": -84.0524266115309, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.029 + } + }, + { + "model": "feed.shape", + "pk": 469, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93572400544303, + "shape_pt_lon": -84.0524387877407, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.037 + } + }, + { + "model": "feed.shape", + "pk": 470, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93583791088976, + "shape_pt_lon": -84.0524163085106, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "feed.shape", + "pk": 471, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93589348533485, + "shape_pt_lon": -84.0524004247557, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.056 + } + }, + { + "model": "feed.shape", + "pk": 472, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93594773879152, + "shape_pt_lon": -84.0523801824105, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.062 + } + }, + { + "model": "feed.shape", + "pk": 473, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93618639604332, + "shape_pt_lon": -84.052302832233, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.09 + } + }, + { + "model": "feed.shape", + "pk": 474, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93639684624757, + "shape_pt_lon": -84.0522406782275, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.114 + } + }, + { + "model": "feed.shape", + "pk": 475, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93653551980098, + "shape_pt_lon": -84.0522361299255, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.13 + } + }, + { + "model": "feed.shape", + "pk": 476, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93673682209909, + "shape_pt_lon": -84.0523076585187, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.153 + } + }, + { + "model": "feed.shape", + "pk": 477, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93708559662569, + "shape_pt_lon": -84.05243186663, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.194 + } + }, + { + "model": "feed.shape", + "pk": 478, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93733577696727, + "shape_pt_lon": -84.0525288520072, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.224 + } + }, + { + "model": "feed.shape", + "pk": 479, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93757969853555, + "shape_pt_lon": -84.0526438746271, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.253 + } + }, + { + "model": "feed.shape", + "pk": 480, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9377485826659, + "shape_pt_lon": -84.0527043524954, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.273 + } + }, + { + "model": "feed.shape", + "pk": 481, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93779188190045, + "shape_pt_lon": -84.0527107981436, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.278 + } + }, + { + "model": "feed.shape", + "pk": 482, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93787132360124, + "shape_pt_lon": -84.0527199326082, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.287 + } + }, + { + "model": "feed.shape", + "pk": 483, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93795076530203, + "shape_pt_lon": -84.0527243732062, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.296 + } + }, + { + "model": "feed.shape", + "pk": 484, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93802242474458, + "shape_pt_lon": -84.0527168419396, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.304 + } + }, + { + "model": "feed.shape", + "pk": 485, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93809408418712, + "shape_pt_lon": -84.0527036109785, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.312 + } + }, + { + "model": "feed.shape", + "pk": 486, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93815622170643, + "shape_pt_lon": -84.0526341385986, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.322 + } + }, + { + "model": "feed.shape", + "pk": 487, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93824866125399, + "shape_pt_lon": -84.0524441849862, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.345 + } + }, + { + "model": "feed.shape", + "pk": 488, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93840212874288, + "shape_pt_lon": -84.0521210493447, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.385 + } + }, + { + "model": "feed.shape", + "pk": 489, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93859022704029, + "shape_pt_lon": -84.0518711468269, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.419 + } + }, + { + "model": "feed.shape", + "pk": 490, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9387164365478, + "shape_pt_lon": -84.0517146035903, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.441 + } + }, + { + "model": "feed.shape", + "pk": 491, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93883769238516, + "shape_pt_lon": -84.0515516901066, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.463 + } + }, + { + "model": "feed.shape", + "pk": 492, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93890538473733, + "shape_pt_lon": -84.0514467461262, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.477 + } + }, + { + "model": "feed.shape", + "pk": 493, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93897774723731, + "shape_pt_lon": -84.051298218969, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.495 + } + }, + { + "model": "feed.shape", + "pk": 494, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93901864778466, + "shape_pt_lon": -84.0511281313016, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.514 + } + }, + { + "model": "feed.shape", + "pk": 495, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93905404247567, + "shape_pt_lon": -84.0509181170952, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.538 + } + }, + { + "model": "feed.shape", + "pk": 496, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93908393146568, + "shape_pt_lon": -84.0503591447661, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.599 + } + }, + { + "model": "feed.shape", + "pk": 497, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93910272348104, + "shape_pt_lon": -84.0501183551865, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.626 + } + }, + { + "model": "feed.shape", + "pk": 498, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93910706388403, + "shape_pt_lon": -84.0499402779348, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.645 + } + }, + { + "model": "feed.shape", + "pk": 499, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93910711111161, + "shape_pt_lon": -84.0497648828928, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.664 + } + }, + { + "model": "feed.shape", + "pk": 500, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93906715286185, + "shape_pt_lon": -84.0496439745831, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.678 + } + }, + { + "model": "feed.shape", + "pk": 501, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93897699483947, + "shape_pt_lon": -84.0494999920866, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.697 + } + }, + { + "model": "feed.shape", + "pk": 502, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93879865248422, + "shape_pt_lon": -84.0492839130465, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.728 + } + }, + { + "model": "feed.shape", + "pk": 503, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93852631535243, + "shape_pt_lon": -84.0489259634067, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.777 + } + }, + { + "model": "feed.shape", + "pk": 504, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9383125595628, + "shape_pt_lon": -84.0486415140485, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.817 + } + }, + { + "model": "feed.shape", + "pk": 505, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93816149920894, + "shape_pt_lon": -84.0484645585026, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.842 + } + }, + { + "model": "feed.shape", + "pk": 506, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93801276292967, + "shape_pt_lon": -84.0483041187788, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.866 + } + }, + { + "model": "feed.shape", + "pk": 507, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93767314890347, + "shape_pt_lon": -84.0479456361923, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.921 + } + }, + { + "model": "feed.shape", + "pk": 508, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93762896738312, + "shape_pt_lon": -84.0479035036496, + "shape_pt_sequence": 44, + "shape_dist_traveled": 0.927 + } + }, + { + "model": "feed.shape", + "pk": 509, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9375818136517, + "shape_pt_lon": -84.0478664002497, + "shape_pt_sequence": 45, + "shape_dist_traveled": 0.934 + } + }, + { + "model": "feed.shape", + "pk": 510, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9375407094932, + "shape_pt_lon": -84.0478370279249, + "shape_pt_sequence": 46, + "shape_dist_traveled": 0.94 + } + }, + { + "model": "feed.shape", + "pk": 511, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93749795410686, + "shape_pt_lon": -84.0478110083611, + "shape_pt_sequence": 47, + "shape_dist_traveled": 0.945 + } + }, + { + "model": "feed.shape", + "pk": 512, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93745496587906, + "shape_pt_lon": -84.0477901145765, + "shape_pt_sequence": 48, + "shape_dist_traveled": 0.95 + } + }, + { + "model": "feed.shape", + "pk": 513, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93736508273494, + "shape_pt_lon": -84.0477598330601, + "shape_pt_sequence": 49, + "shape_dist_traveled": 0.961 + } + }, + { + "model": "feed.shape", + "pk": 514, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93726069019733, + "shape_pt_lon": -84.047759267964, + "shape_pt_sequence": 50, + "shape_dist_traveled": 0.972 + } + }, + { + "model": "feed.shape", + "pk": 515, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93707479279145, + "shape_pt_lon": -84.047793713066, + "shape_pt_sequence": 51, + "shape_dist_traveled": 0.993 + } + }, + { + "model": "feed.shape", + "pk": 516, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93681544721791, + "shape_pt_lon": -84.0478715216077, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.023 + } + }, + { + "model": "feed.shape", + "pk": 517, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93657305173134, + "shape_pt_lon": -84.0479476285628, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.051 + } + }, + { + "model": "feed.shape", + "pk": 518, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93622234344519, + "shape_pt_lon": -84.0480642553351, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.092 + } + }, + { + "model": "feed.shape", + "pk": 519, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93602464016541, + "shape_pt_lon": -84.0481251956082, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.115 + } + }, + { + "model": "feed.shape", + "pk": 520, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93585590049247, + "shape_pt_lon": -84.0481829479595, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.135 + } + }, + { + "model": "feed.shape", + "pk": 521, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9357089398831, + "shape_pt_lon": -84.0482522936584, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.153 + } + }, + { + "model": "feed.shape", + "pk": 522, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93563189742607, + "shape_pt_lon": -84.0482869664637, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.162 + } + }, + { + "model": "feed.shape", + "pk": 523, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93556048694849, + "shape_pt_lon": -84.0483531600847, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.173 + } + }, + { + "model": "feed.shape", + "pk": 524, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93549839086817, + "shape_pt_lon": -84.048435114092, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.184 + } + }, + { + "model": "feed.shape", + "pk": 525, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93546527295384, + "shape_pt_lon": -84.0485569944104, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.198 + } + }, + { + "model": "feed.shape", + "pk": 526, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9354549236054, + "shape_pt_lon": -84.0486547088036, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.209 + } + }, + { + "model": "feed.shape", + "pk": 527, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93528001900853, + "shape_pt_lon": -84.048634745016, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.228 + } + }, + { + "model": "feed.shape", + "pk": 528, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93529761291067, + "shape_pt_lon": -84.0483794267626, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.256 + } + }, + { + "model": "feed.shape", + "pk": 529, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9352527346308, + "shape_pt_lon": -84.0481286733116, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.284 + } + }, + { + "model": "feed.shape", + "pk": 530, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93512765815873, + "shape_pt_lon": -84.0477461762194, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.328 + } + }, + { + "model": "feed.shape", + "pk": 531, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93492703280895, + "shape_pt_lon": -84.0471055797031, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.402 + } + }, + { + "model": "feed.shape", + "pk": 532, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93478949058113, + "shape_pt_lon": -84.046354626689, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.486 + } + }, + { + "model": "feed.shape", + "pk": 533, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93469070939338, + "shape_pt_lon": -84.0458746565008, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.539 + } + }, + { + "model": "feed.shape", + "pk": 534, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93462060674132, + "shape_pt_lon": -84.0456143293, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.569 + } + }, + { + "model": "feed.shape", + "pk": 535, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93489289845325, + "shape_pt_lon": -84.0456070252698, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.599 + } + }, + { + "model": "feed.shape", + "pk": 536, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93495950947043, + "shape_pt_lon": -84.045606154414, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.606 + } + }, + { + "model": "feed.shape", + "pk": 537, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93502573261312, + "shape_pt_lon": -84.0455877894747, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.614 + } + }, + { + "model": "feed.shape", + "pk": 538, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93533984703067, + "shape_pt_lon": -84.0455793808645, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.649 + } + }, + { + "model": "feed.shape", + "pk": 539, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93553106245252, + "shape_pt_lon": -84.0455366983597, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.67 + } + }, + { + "model": "feed.shape", + "pk": 540, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93558489672501, + "shape_pt_lon": -84.0455256779408, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.677 + } + }, + { + "model": "feed.shape", + "pk": 541, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93566584972937, + "shape_pt_lon": -84.0454519050346, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.689 + } + }, + { + "model": "feed.shape", + "pk": 542, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93603020143902, + "shape_pt_lon": -84.0453870153627, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.73 + } + }, + { + "model": "feed.shape", + "pk": 543, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93619941008339, + "shape_pt_lon": -84.0453504149565, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.749 + } + }, + { + "model": "feed.shape", + "pk": 544, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93630011253566, + "shape_pt_lon": -84.0453617663184, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.76 + } + }, + { + "model": "feed.shape", + "pk": 545, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93651948121636, + "shape_pt_lon": -84.0454755016038, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.787 + } + }, + { + "model": "feed.shape", + "pk": 546, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93668368683727, + "shape_pt_lon": -84.0455653411938, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.808 + } + }, + { + "model": "feed.shape", + "pk": 547, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93677258981834, + "shape_pt_lon": -84.045589182648, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.818 + } + }, + { + "model": "feed.shape", + "pk": 548, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93685310570445, + "shape_pt_lon": -84.0455874796866, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.827 + } + }, + { + "model": "feed.shape", + "pk": 549, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93694508327091, + "shape_pt_lon": -84.0455437249918, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.838 + } + }, + { + "model": "feed.shape", + "pk": 550, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93708383542657, + "shape_pt_lon": -84.0454400845081, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.857 + } + }, + { + "model": "feed.shape", + "pk": 551, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93721635101928, + "shape_pt_lon": -84.045309807991, + "shape_pt_sequence": 87, + "shape_dist_traveled": 1.878 + } + }, + { + "model": "feed.shape", + "pk": 552, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93724819645461, + "shape_pt_lon": -84.0452761874456, + "shape_pt_sequence": 88, + "shape_dist_traveled": 1.883 + } + }, + { + "model": "feed.shape", + "pk": 553, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93734716375109, + "shape_pt_lon": -84.0451229209554, + "shape_pt_sequence": 89, + "shape_dist_traveled": 1.903 + } + }, + { + "model": "feed.shape", + "pk": 554, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93752119585777, + "shape_pt_lon": -84.0448187291416, + "shape_pt_sequence": 90, + "shape_dist_traveled": 1.941 + } + }, + { + "model": "feed.shape", + "pk": 555, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93767426097248, + "shape_pt_lon": -84.0445416760749, + "shape_pt_sequence": 91, + "shape_dist_traveled": 1.976 + } + }, + { + "model": "feed.shape", + "pk": 556, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93785833808635, + "shape_pt_lon": -84.0442186256065, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.017 + } + }, + { + "model": "feed.shape", + "pk": 557, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93810435753431, + "shape_pt_lon": -84.0437983732383, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.07 + } + }, + { + "model": "feed.shape", + "pk": 558, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93796632120651, + "shape_pt_lon": -84.0436125738981, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.096 + } + }, + { + "model": "feed.shape", + "pk": 559, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93791432144543, + "shape_pt_lon": -84.0434414999464, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.116 + } + }, + { + "model": "feed.shape", + "pk": 560, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93788832161072, + "shape_pt_lon": -84.0432184120559, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.14 + } + }, + { + "model": "feed.shape", + "pk": 561, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93792789506808, + "shape_pt_lon": -84.042939145496, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.171 + } + }, + { + "model": "feed.shape", + "pk": 562, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93799597108977, + "shape_pt_lon": -84.0425252959219, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.217 + } + }, + { + "model": "feed.shape", + "pk": 563, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93800488549925, + "shape_pt_lon": -84.0424724302894, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.223 + } + }, + { + "model": "feed.shape", + "pk": 564, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9381395635656, + "shape_pt_lon": -84.0421750587842, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.259 + } + }, + { + "model": "feed.shape", + "pk": 565, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93816556338036, + "shape_pt_lon": -84.0419988023209, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.278 + } + }, + { + "model": "feed.shape", + "pk": 566, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93815877702913, + "shape_pt_lon": -84.0418468568672, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.295 + } + }, + { + "model": "feed.shape", + "pk": 567, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93812774499086, + "shape_pt_lon": -84.0417208377531, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.309 + } + }, + { + "model": "feed.shape", + "pk": 568, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93810465445374, + "shape_pt_lon": -84.0416827286396, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.314 + } + }, + { + "model": "feed.shape", + "pk": 569, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93807826146448, + "shape_pt_lon": -84.0416493133915, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.319 + } + }, + { + "model": "feed.shape", + "pk": 570, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93804738144964, + "shape_pt_lon": -84.0416349312544, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.323 + } + }, + { + "model": "feed.shape", + "pk": 571, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93801451996184, + "shape_pt_lon": -84.0416322837814, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.326 + } + }, + { + "model": "feed.shape", + "pk": 572, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93792436774485, + "shape_pt_lon": -84.0416346601389, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.336 + } + }, + { + "model": "feed.shape", + "pk": 573, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93790082410227, + "shape_pt_lon": -84.041067340985, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.399 + } + }, + { + "model": "feed.shape", + "pk": 574, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93846425290711, + "shape_pt_lon": -84.0409284047187, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.463 + } + }, + { + "model": "feed.shape", + "pk": 575, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93868651413261, + "shape_pt_lon": -84.0409624274215, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.488 + } + }, + { + "model": "feed.shape", + "pk": 576, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93885247660523, + "shape_pt_lon": -84.0411341586918, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.514 + } + }, + { + "model": "feed.shape", + "pk": 577, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93915539473273, + "shape_pt_lon": -84.0416474460876, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.579 + } + }, + { + "model": "feed.shape", + "pk": 578, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93928861127028, + "shape_pt_lon": -84.0417889786806, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.601 + } + }, + { + "model": "feed.shape", + "pk": 579, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9394354239606, + "shape_pt_lon": -84.0418813247414, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.62 + } + }, + { + "model": "feed.shape", + "pk": 580, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93950244712471, + "shape_pt_lon": -84.0419056263361, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.628 + } + }, + { + "model": "feed.shape", + "pk": 581, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93950244613303, + "shape_pt_lon": -84.042239368576, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.664 + } + }, + { + "model": "feed.shape", + "pk": 582, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93949446718606, + "shape_pt_lon": -84.0425196469705, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.695 + } + }, + { + "model": "feed.shape", + "pk": 583, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93945457168453, + "shape_pt_lon": -84.0429991991022, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.748 + } + }, + { + "model": "feed.shape", + "pk": 584, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93942712460796, + "shape_pt_lon": -84.043331873611, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.784 + } + }, + { + "model": "feed.shape", + "pk": 585, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93972789866721, + "shape_pt_lon": -84.0432605742965, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.819 + } + }, + { + "model": "feed.shape", + "pk": 586, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93979051078508, + "shape_pt_lon": -84.0432941313524, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.826 + } + }, + { + "model": "feed.shape", + "pk": 587, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93982252793726, + "shape_pt_lon": -84.0433753940134, + "shape_pt_sequence": 123, + "shape_dist_traveled": 2.836 + } + }, + { + "model": "feed.shape", + "pk": 588, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93991292983544, + "shape_pt_lon": -84.0437147893588, + "shape_pt_sequence": 124, + "shape_dist_traveled": 2.875 + } + }, + { + "model": "feed.shape", + "pk": 589, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94002028140903, + "shape_pt_lon": -84.0441287509128, + "shape_pt_sequence": 125, + "shape_dist_traveled": 2.922 + } + }, + { + "model": "feed.shape", + "pk": 590, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94016644833328, + "shape_pt_lon": -84.0446669802431, + "shape_pt_sequence": 126, + "shape_dist_traveled": 2.983 + } + }, + { + "model": "feed.shape", + "pk": 591, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94027078687104, + "shape_pt_lon": -84.044823754755, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.003 + } + }, + { + "model": "feed.shape", + "pk": 592, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94048864067421, + "shape_pt_lon": -84.0456295904777, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.095 + } + }, + { + "model": "feed.shape", + "pk": 593, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9406416703034, + "shape_pt_lon": -84.045594280927, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.112 + } + }, + { + "model": "feed.shape", + "pk": 594, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94079771456593, + "shape_pt_lon": -84.0450692602221, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.172 + } + }, + { + "model": "feed.shape", + "pk": 595, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9409503711104, + "shape_pt_lon": -84.0447481499267, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.212 + } + }, + { + "model": "feed.shape", + "pk": 596, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94105192700053, + "shape_pt_lon": -84.0446521079484, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.227 + } + }, + { + "model": "feed.shape", + "pk": 597, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94171142158802, + "shape_pt_lon": -84.0446962954808, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.3 + } + }, + { + "model": "feed.shape", + "pk": 598, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94281915936154, + "shape_pt_lon": -84.0447683576565, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.423 + } + }, + { + "model": "feed.shape", + "pk": 599, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94301266464211, + "shape_pt_lon": -84.0447317924328, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.445 + } + }, + { + "model": "feed.shape", + "pk": 600, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94326484610015, + "shape_pt_lon": -84.0446461368594, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.474 + } + }, + { + "model": "feed.shape", + "pk": 601, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94367235170777, + "shape_pt_lon": -84.0444664659679, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.523 + } + }, + { + "model": "feed.shape", + "pk": 602, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94380140312083, + "shape_pt_lon": -84.044752272012, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.558 + } + }, + { + "model": "feed.shape", + "pk": 603, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9438796367465, + "shape_pt_lon": -84.0448814333755, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.574 + } + }, + { + "model": "feed.shape", + "pk": 604, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94396952509255, + "shape_pt_lon": -84.0449503878825, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.587 + } + }, + { + "model": "feed.shape", + "pk": 605, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94433433418409, + "shape_pt_lon": -84.044987908675, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.627 + } + }, + { + "model": "feed.shape", + "pk": 606, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94457411376674, + "shape_pt_lon": -84.0450080280451, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.654 + } + }, + { + "model": "feed.shape", + "pk": 607, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94495390060397, + "shape_pt_lon": -84.0450080280451, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.696 + } + }, + { + "model": "feed.shape", + "pk": 608, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94504571713547, + "shape_pt_lon": -84.0450786471473, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.709 + } + }, + { + "model": "feed.shape", + "pk": 609, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94507075688808, + "shape_pt_lon": -84.0453964329445, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.744 + } + }, + { + "model": "feed.shape", + "pk": 610, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94509858007239, + "shape_pt_lon": -84.0454995368328, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.755 + } + }, + { + "model": "feed.shape", + "pk": 611, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94517301639726, + "shape_pt_lon": -84.0455360879379, + "shape_pt_sequence": 147, + "shape_dist_traveled": 3.764 + } + }, + { + "model": "feed.shape", + "pk": 612, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94569599438186, + "shape_pt_lon": -84.0455012141288, + "shape_pt_sequence": 148, + "shape_dist_traveled": 3.822 + } + }, + { + "model": "feed.shape", + "pk": 613, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94576731883437, + "shape_pt_lon": -84.0454579354822, + "shape_pt_sequence": 149, + "shape_dist_traveled": 3.832 + } + }, + { + "model": "feed.shape", + "pk": 614, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94587443785238, + "shape_pt_lon": -84.0452474905592, + "shape_pt_sequence": 150, + "shape_dist_traveled": 3.858 + } + }, + { + "model": "feed.shape", + "pk": 615, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94594677794762, + "shape_pt_lon": -84.0451754590753, + "shape_pt_sequence": 151, + "shape_dist_traveled": 3.869 + } + }, + { + "model": "feed.shape", + "pk": 616, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94629204599402, + "shape_pt_lon": -84.0451469719024, + "shape_pt_sequence": 152, + "shape_dist_traveled": 3.907 + } + }, + { + "model": "feed.shape", + "pk": 617, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9463908179176, + "shape_pt_lon": -84.0451610957222, + "shape_pt_sequence": 153, + "shape_dist_traveled": 3.918 + } + }, + { + "model": "feed.shape", + "pk": 618, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94645063751956, + "shape_pt_lon": -84.0451992300371, + "shape_pt_sequence": 154, + "shape_dist_traveled": 3.926 + } + }, + { + "model": "feed.shape", + "pk": 619, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94649738913102, + "shape_pt_lon": -84.0452562192863, + "shape_pt_sequence": 155, + "shape_dist_traveled": 3.934 + } + }, + { + "model": "feed.shape", + "pk": 620, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94651450274987, + "shape_pt_lon": -84.0452709224469, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "feed.shape", + "pk": 621, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9465713930344, + "shape_pt_lon": -84.0453586296957, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.011 + } + }, + { + "model": "feed.shape", + "pk": 622, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94670523135418, + "shape_pt_lon": -84.0455321860811, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.036 + } + }, + { + "model": "feed.shape", + "pk": 623, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94685977487793, + "shape_pt_lon": -84.0457428830683, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.064 + } + }, + { + "model": "feed.shape", + "pk": 624, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94692114024093, + "shape_pt_lon": -84.0458252584096, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.076 + } + }, + { + "model": "feed.shape", + "pk": 625, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94699848130395, + "shape_pt_lon": -84.045874911642, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.086 + } + }, + { + "model": "feed.shape", + "pk": 626, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94709174550324, + "shape_pt_lon": -84.0458702927366, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.096 + } + }, + { + "model": "feed.shape", + "pk": 627, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94733286724273, + "shape_pt_lon": -84.0456762984049, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.13 + } + }, + { + "model": "feed.shape", + "pk": 628, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94734992775087, + "shape_pt_lon": -84.0455816108455, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.141 + } + }, + { + "model": "feed.shape", + "pk": 629, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94731694409985, + "shape_pt_lon": -84.0454811496546, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.152 + } + }, + { + "model": "feed.shape", + "pk": 630, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94706331033958, + "shape_pt_lon": -84.0451520526366, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.198 + } + }, + { + "model": "feed.shape", + "pk": 631, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94695639770921, + "shape_pt_lon": -84.044934964086, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.225 + } + }, + { + "model": "feed.shape", + "pk": 632, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94685739750313, + "shape_pt_lon": -84.0447940381815, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.244 + } + }, + { + "model": "feed.shape", + "pk": 633, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94674934743632, + "shape_pt_lon": -84.0447120526121, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.259 + } + }, + { + "model": "feed.shape", + "pk": 634, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94663902259388, + "shape_pt_lon": -84.0446901128118, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.271 + } + }, + { + "model": "feed.shape", + "pk": 635, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94658480665502, + "shape_pt_lon": -84.0447036688627, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.277 + } + }, + { + "model": "feed.shape", + "pk": 636, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94652566341521, + "shape_pt_lon": -84.0447440842844, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.285 + } + }, + { + "model": "feed.shape", + "pk": 637, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94631063663281, + "shape_pt_lon": -84.0447956225084, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.31 + } + }, + { + "model": "feed.shape", + "pk": 638, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94607861289951, + "shape_pt_lon": -84.0448175623087, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.335 + } + }, + { + "model": "feed.shape", + "pk": 639, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94606268969643, + "shape_pt_lon": -84.0448198717614, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.337 + } + }, + { + "model": "feed.shape", + "pk": 640, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94607633849742, + "shape_pt_lon": -84.0451616705072, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.375 + } + }, + { + "model": "feed.shape", + "pk": 641, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94594816328299, + "shape_pt_lon": -84.0451794721398, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.389 + } + }, + { + "model": "feed.shape", + "pk": 642, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94587650883204, + "shape_pt_lon": -84.0452499104458, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.4 + } + }, + { + "model": "feed.shape", + "pk": 643, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94577755742257, + "shape_pt_lon": -84.0454566064596, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.425 + } + }, + { + "model": "feed.shape", + "pk": 644, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94570040854178, + "shape_pt_lon": -84.0455092507792, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.435 + } + }, + { + "model": "feed.shape", + "pk": 645, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94516698035057, + "shape_pt_lon": -84.0455392738468, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.494 + } + }, + { + "model": "feed.shape", + "pk": 646, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94508917283893, + "shape_pt_lon": -84.0455023654374, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.504 + } + }, + { + "model": "feed.shape", + "pk": 647, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94505732633557, + "shape_pt_lon": -84.045382273899, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.518 + } + }, + { + "model": "feed.shape", + "pk": 648, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94502889195332, + "shape_pt_lon": -84.0450808903258, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.551 + } + }, + { + "model": "feed.shape", + "pk": 649, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94495155042415, + "shape_pt_lon": -84.0450173803773, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.562 + } + }, + { + "model": "feed.shape", + "pk": 650, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94472000465252, + "shape_pt_lon": -84.045015769873, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.587 + } + }, + { + "model": "feed.shape", + "pk": 651, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94425679788889, + "shape_pt_lon": -84.0449868892884, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.639 + } + }, + { + "model": "feed.shape", + "pk": 652, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94389594579139, + "shape_pt_lon": -84.0449568041774, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.679 + } + }, + { + "model": "feed.shape", + "pk": 653, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9433847319748, + "shape_pt_lon": -84.0449197895004, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.736 + } + }, + { + "model": "feed.shape", + "pk": 654, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94261500079999, + "shape_pt_lon": -84.0448773383005, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.821 + } + }, + { + "model": "feed.shape", + "pk": 655, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94204155986042, + "shape_pt_lon": -84.0448390343892, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.884 + } + }, + { + "model": "feed.shape", + "pk": 656, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94137698645447, + "shape_pt_lon": -84.0448024388483, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.958 + } + }, + { + "model": "feed.shape", + "pk": 657, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94096102380372, + "shape_pt_lon": -84.0447771566035, + "shape_pt_sequence": 37, + "shape_dist_traveled": 1.004 + } + }, + { + "model": "feed.shape", + "pk": 658, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94082181962447, + "shape_pt_lon": -84.0450446175143, + "shape_pt_sequence": 38, + "shape_dist_traveled": 1.037 + } + }, + { + "model": "feed.shape", + "pk": 659, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94065523781238, + "shape_pt_lon": -84.0456053336701, + "shape_pt_sequence": 39, + "shape_dist_traveled": 1.101 + } + }, + { + "model": "feed.shape", + "pk": 660, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94048314593914, + "shape_pt_lon": -84.045634999557, + "shape_pt_sequence": 40, + "shape_dist_traveled": 1.121 + } + }, + { + "model": "feed.shape", + "pk": 661, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9403780406827, + "shape_pt_lon": -84.0452283043053, + "shape_pt_sequence": 41, + "shape_dist_traveled": 1.167 + } + }, + { + "model": "feed.shape", + "pk": 662, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9402703855621, + "shape_pt_lon": -84.04482278961, + "shape_pt_sequence": 42, + "shape_dist_traveled": 1.213 + } + }, + { + "model": "feed.shape", + "pk": 663, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94016328794055, + "shape_pt_lon": -84.0446641785108, + "shape_pt_sequence": 43, + "shape_dist_traveled": 1.234 + } + }, + { + "model": "feed.shape", + "pk": 664, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94010181117775, + "shape_pt_lon": -84.0444165990228, + "shape_pt_sequence": 44, + "shape_dist_traveled": 1.262 + } + }, + { + "model": "feed.shape", + "pk": 665, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93971666992378, + "shape_pt_lon": -84.0445263287881, + "shape_pt_sequence": 45, + "shape_dist_traveled": 1.306 + } + }, + { + "model": "feed.shape", + "pk": 666, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93932936015097, + "shape_pt_lon": -84.0446221116145, + "shape_pt_sequence": 46, + "shape_dist_traveled": 1.35 + } + }, + { + "model": "feed.shape", + "pk": 667, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93920408915902, + "shape_pt_lon": -84.0446545394456, + "shape_pt_sequence": 47, + "shape_dist_traveled": 1.364 + } + }, + { + "model": "feed.shape", + "pk": 668, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9391568243881, + "shape_pt_lon": -84.0446456512568, + "shape_pt_sequence": 48, + "shape_dist_traveled": 1.37 + } + }, + { + "model": "feed.shape", + "pk": 669, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93912509354336, + "shape_pt_lon": -84.0446159514984, + "shape_pt_sequence": 49, + "shape_dist_traveled": 1.375 + } + }, + { + "model": "feed.shape", + "pk": 670, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93911021843789, + "shape_pt_lon": -84.0445637722231, + "shape_pt_sequence": 50, + "shape_dist_traveled": 1.381 + } + }, + { + "model": "feed.shape", + "pk": 671, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93919615665697, + "shape_pt_lon": -84.0443354246074, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.407 + } + }, + { + "model": "feed.shape", + "pk": 672, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.939024, + "shape_pt_lon": -84.043697, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.459 + } + }, + { + "model": "feed.shape", + "pk": 673, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9389589108528, + "shape_pt_lon": -84.0434647440871, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.506 + } + }, + { + "model": "feed.shape", + "pk": 674, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93927926961302, + "shape_pt_lon": -84.0433689657322, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.543 + } + }, + { + "model": "feed.shape", + "pk": 675, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9394214266361, + "shape_pt_lon": -84.0433251613281, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.56 + } + }, + { + "model": "feed.shape", + "pk": 676, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.939438, + "shape_pt_lon": -84.043078, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.597 + } + }, + { + "model": "feed.shape", + "pk": 677, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93949676004582, + "shape_pt_lon": -84.0424704121516, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.654 + } + }, + { + "model": "feed.shape", + "pk": 678, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950197815545, + "shape_pt_lon": -84.0423387592283, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.668 + } + }, + { + "model": "feed.shape", + "pk": 679, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950471943605, + "shape_pt_lon": -84.042195874555, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.684 + } + }, + { + "model": "feed.shape", + "pk": 680, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950937287681, + "shape_pt_lon": -84.0420595652431, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.699 + } + }, + { + "model": "feed.shape", + "pk": 681, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950560510053, + "shape_pt_lon": -84.0419237588459, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.714 + } + }, + { + "model": "feed.shape", + "pk": 682, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93932694656827, + "shape_pt_lon": -84.0418526043861, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.735 + } + }, + { + "model": "feed.shape", + "pk": 683, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93916441674404, + "shape_pt_lon": -84.0416871226965, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.761 + } + }, + { + "model": "feed.shape", + "pk": 684, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93904364750639, + "shape_pt_lon": -84.0415030389796, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.785 + } + }, + { + "model": "feed.shape", + "pk": 685, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93882652989536, + "shape_pt_lon": -84.0411360631089, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.832 + } + }, + { + "model": "feed.shape", + "pk": 686, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93877761093714, + "shape_pt_lon": -84.0410711382821, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.841 + } + }, + { + "model": "feed.shape", + "pk": 687, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93872439879922, + "shape_pt_lon": -84.0410192892248, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.849 + } + }, + { + "model": "feed.shape", + "pk": 688, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93860739420377, + "shape_pt_lon": -84.0409548622543, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.863 + } + }, + { + "model": "feed.shape", + "pk": 689, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93847712489684, + "shape_pt_lon": -84.0409464827492, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.878 + } + }, + { + "model": "feed.shape", + "pk": 690, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93831748290179, + "shape_pt_lon": -84.0409847362632, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.896 + } + }, + { + "model": "feed.shape", + "pk": 691, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93790526804534, + "shape_pt_lon": -84.0410975311932, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.943 + } + }, + { + "model": "feed.shape", + "pk": 692, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93791543483811, + "shape_pt_lon": -84.0413721007657, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.973 + } + }, + { + "model": "feed.shape", + "pk": 693, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93792971313351, + "shape_pt_lon": -84.0416234000621, + "shape_pt_sequence": 73, + "shape_dist_traveled": 2.001 + } + }, + { + "model": "feed.shape", + "pk": 694, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93801943406157, + "shape_pt_lon": -84.0416214268987, + "shape_pt_sequence": 74, + "shape_dist_traveled": 2.011 + } + }, + { + "model": "feed.shape", + "pk": 695, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93808013647371, + "shape_pt_lon": -84.0416385167757, + "shape_pt_sequence": 75, + "shape_dist_traveled": 2.018 + } + }, + { + "model": "feed.shape", + "pk": 696, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9381333560273, + "shape_pt_lon": -84.0417143841426, + "shape_pt_sequence": 76, + "shape_dist_traveled": 2.028 + } + }, + { + "model": "feed.shape", + "pk": 697, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9381491692212, + "shape_pt_lon": -84.0417661717713, + "shape_pt_sequence": 77, + "shape_dist_traveled": 2.034 + } + }, + { + "model": "feed.shape", + "pk": 698, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93816498245021, + "shape_pt_lon": -84.0418402279053, + "shape_pt_sequence": 78, + "shape_dist_traveled": 2.042 + } + }, + { + "model": "feed.shape", + "pk": 699, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93817110369939, + "shape_pt_lon": -84.041955196169, + "shape_pt_sequence": 79, + "shape_dist_traveled": 2.055 + } + }, + { + "model": "feed.shape", + "pk": 700, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93816447211196, + "shape_pt_lon": -84.0420620743374, + "shape_pt_sequence": 80, + "shape_dist_traveled": 2.067 + } + }, + { + "model": "feed.shape", + "pk": 701, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93814558312971, + "shape_pt_lon": -84.042172549653, + "shape_pt_sequence": 81, + "shape_dist_traveled": 2.079 + } + }, + { + "model": "feed.shape", + "pk": 702, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93806546361139, + "shape_pt_lon": -84.0423590295751, + "shape_pt_sequence": 82, + "shape_dist_traveled": 2.101 + } + }, + { + "model": "feed.shape", + "pk": 703, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93800868895506, + "shape_pt_lon": -84.0424754995415, + "shape_pt_sequence": 83, + "shape_dist_traveled": 2.116 + } + }, + { + "model": "feed.shape", + "pk": 704, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93798455282835, + "shape_pt_lon": -84.0426277550985, + "shape_pt_sequence": 84, + "shape_dist_traveled": 2.132 + } + }, + { + "model": "feed.shape", + "pk": 705, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93793303246509, + "shape_pt_lon": -84.0429680898401, + "shape_pt_sequence": 85, + "shape_dist_traveled": 2.17 + } + }, + { + "model": "feed.shape", + "pk": 706, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93789255913571, + "shape_pt_lon": -84.0431865014681, + "shape_pt_sequence": 86, + "shape_dist_traveled": 2.195 + } + }, + { + "model": "feed.shape", + "pk": 707, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93792278510311, + "shape_pt_lon": -84.0434262188335, + "shape_pt_sequence": 87, + "shape_dist_traveled": 2.221 + } + }, + { + "model": "feed.shape", + "pk": 708, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93793612530689, + "shape_pt_lon": -84.0435140997635, + "shape_pt_sequence": 88, + "shape_dist_traveled": 2.231 + } + }, + { + "model": "feed.shape", + "pk": 709, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93796843588535, + "shape_pt_lon": -84.0436045719397, + "shape_pt_sequence": 89, + "shape_dist_traveled": 2.241 + } + }, + { + "model": "feed.shape", + "pk": 710, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93811029202329, + "shape_pt_lon": -84.0437946545471, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.267 + } + }, + { + "model": "feed.shape", + "pk": 711, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93796317506452, + "shape_pt_lon": -84.044044224914, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.299 + } + }, + { + "model": "feed.shape", + "pk": 712, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93778888741941, + "shape_pt_lon": -84.0443497474269, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.338 + } + }, + { + "model": "feed.shape", + "pk": 713, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93759056212761, + "shape_pt_lon": -84.0447040111923, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.383 + } + }, + { + "model": "feed.shape", + "pk": 714, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93743889754011, + "shape_pt_lon": -84.0449773758339, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.417 + } + }, + { + "model": "feed.shape", + "pk": 715, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93734106177819, + "shape_pt_lon": -84.0451442319336, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.438 + } + }, + { + "model": "feed.shape", + "pk": 716, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93725220134541, + "shape_pt_lon": -84.0452700748287, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.455 + } + }, + { + "model": "feed.shape", + "pk": 717, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93710383236486, + "shape_pt_lon": -84.0454232410009, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.479 + } + }, + { + "model": "feed.shape", + "pk": 718, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93703302156643, + "shape_pt_lon": -84.045480287002, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.489 + } + }, + { + "model": "feed.shape", + "pk": 719, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93692669580576, + "shape_pt_lon": -84.0455559204937, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.503 + } + }, + { + "model": "feed.shape", + "pk": 720, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93685320196694, + "shape_pt_lon": -84.0455868138288, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.512 + } + }, + { + "model": "feed.shape", + "pk": 721, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93677214106483, + "shape_pt_lon": -84.045591032246, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.521 + } + }, + { + "model": "feed.shape", + "pk": 722, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93667892839703, + "shape_pt_lon": -84.0455673986725, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.531 + } + }, + { + "model": "feed.shape", + "pk": 723, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93652937757293, + "shape_pt_lon": -84.0454873867401, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.55 + } + }, + { + "model": "feed.shape", + "pk": 724, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93646683969579, + "shape_pt_lon": -84.0454491600057, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.558 + } + }, + { + "model": "feed.shape", + "pk": 725, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93640033885562, + "shape_pt_lon": -84.0454129449283, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.567 + } + }, + { + "model": "feed.shape", + "pk": 726, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93634297166293, + "shape_pt_lon": -84.0453776127618, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.574 + } + }, + { + "model": "feed.shape", + "pk": 727, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93629576054226, + "shape_pt_lon": -84.0453623778292, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.579 + } + }, + { + "model": "feed.shape", + "pk": 728, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93624363287526, + "shape_pt_lon": -84.0453512637102, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.585 + } + }, + { + "model": "feed.shape", + "pk": 729, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9361862212533, + "shape_pt_lon": -84.0453538959122, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.592 + } + }, + { + "model": "feed.shape", + "pk": 730, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93603883510741, + "shape_pt_lon": -84.0453890269646, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.608 + } + }, + { + "model": "feed.shape", + "pk": 731, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93580414505913, + "shape_pt_lon": -84.0454308854351, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.635 + } + }, + { + "model": "feed.shape", + "pk": 732, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93565385732093, + "shape_pt_lon": -84.0454587046985, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.652 + } + }, + { + "model": "feed.shape", + "pk": 733, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93558390036268, + "shape_pt_lon": -84.0455252542674, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.662 + } + }, + { + "model": "feed.shape", + "pk": 734, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93547184500151, + "shape_pt_lon": -84.0455798539966, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.676 + } + }, + { + "model": "feed.shape", + "pk": 735, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93533906172064, + "shape_pt_lon": -84.0456377473207, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.692 + } + }, + { + "model": "feed.shape", + "pk": 736, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93501118853525, + "shape_pt_lon": -84.0456383288227, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.728 + } + }, + { + "model": "feed.shape", + "pk": 737, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93495718975151, + "shape_pt_lon": -84.0456086223286, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.735 + } + }, + { + "model": "feed.shape", + "pk": 738, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93465006354252, + "shape_pt_lon": -84.0456168978697, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.769 + } + }, + { + "model": "feed.shape", + "pk": 739, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93477095640989, + "shape_pt_lon": -84.0461340991613, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.827 + } + }, + { + "model": "feed.shape", + "pk": 740, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93490403346722, + "shape_pt_lon": -84.0468176973466, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.904 + } + }, + { + "model": "feed.shape", + "pk": 741, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93495932029753, + "shape_pt_lon": -84.0471113963055, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.937 + } + }, + { + "model": "feed.shape", + "pk": 742, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93505827498137, + "shape_pt_lon": -84.0474601236579, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.976 + } + }, + { + "model": "feed.shape", + "pk": 743, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93519897363926, + "shape_pt_lon": -84.0478899692808, + "shape_pt_sequence": 123, + "shape_dist_traveled": 3.026 + } + }, + { + "model": "feed.shape", + "pk": 744, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93527449143981, + "shape_pt_lon": -84.0481284685146, + "shape_pt_sequence": 124, + "shape_dist_traveled": 3.053 + } + }, + { + "model": "feed.shape", + "pk": 745, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93531543817006, + "shape_pt_lon": -84.0483778894022, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.081 + } + }, + { + "model": "feed.shape", + "pk": 746, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93529755715117, + "shape_pt_lon": -84.0486249437023, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.108 + } + }, + { + "model": "feed.shape", + "pk": 747, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93545425079317, + "shape_pt_lon": -84.0486430566726, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.126 + } + }, + { + "model": "feed.shape", + "pk": 748, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9354703595261, + "shape_pt_lon": -84.0488000764969, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.143 + } + }, + { + "model": "feed.shape", + "pk": 749, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9355323422866, + "shape_pt_lon": -84.0490437766179, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.171 + } + }, + { + "model": "feed.shape", + "pk": 750, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94651439468106, + "shape_pt_lon": -84.0452793145875, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "feed.shape", + "pk": 751, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94656979269062, + "shape_pt_lon": -84.0453635889366, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.011 + } + }, + { + "model": "feed.shape", + "pk": 752, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94668819013391, + "shape_pt_lon": -84.0455133598416, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.032 + } + }, + { + "model": "feed.shape", + "pk": 753, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94677813595565, + "shape_pt_lon": -84.0456333624982, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "feed.shape", + "pk": 754, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94692110409536, + "shape_pt_lon": -84.0458288226395, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.075 + } + }, + { + "model": "feed.shape", + "pk": 755, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94699667079666, + "shape_pt_lon": -84.0458784281265, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.085 + } + }, + { + "model": "feed.shape", + "pk": 756, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94709290535486, + "shape_pt_lon": -84.0458729567443, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.096 + } + }, + { + "model": "feed.shape", + "pk": 757, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94722193423012, + "shape_pt_lon": -84.0457747817661, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.114 + } + }, + { + "model": "feed.shape", + "pk": 758, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94733469552996, + "shape_pt_lon": -84.0456766067879, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.13 + } + }, + { + "model": "feed.shape", + "pk": 759, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94735240267321, + "shape_pt_lon": -84.0455812484176, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.141 + } + }, + { + "model": "feed.shape", + "pk": 760, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94731698838683, + "shape_pt_lon": -84.0454835451677, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.152 + } + }, + { + "model": "feed.shape", + "pk": 761, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94706401578786, + "shape_pt_lon": -84.045155482603, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.198 + } + }, + { + "model": "feed.shape", + "pk": 762, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94695753981341, + "shape_pt_lon": -84.0449388905875, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.224 + } + }, + { + "model": "feed.shape", + "pk": 763, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94685591607748, + "shape_pt_lon": -84.0447927265256, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.244 + } + }, + { + "model": "feed.shape", + "pk": 764, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94674691466528, + "shape_pt_lon": -84.0447132911805, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.259 + } + }, + { + "model": "feed.shape", + "pk": 765, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94663836196663, + "shape_pt_lon": -84.0446929689046, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.271 + } + }, + { + "model": "feed.shape", + "pk": 766, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9465853910728, + "shape_pt_lon": -84.0447054750041, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.277 + } + }, + { + "model": "feed.shape", + "pk": 767, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94652457073993, + "shape_pt_lon": -84.0447469011822, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.285 + } + }, + { + "model": "feed.shape", + "pk": 768, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94630948675802, + "shape_pt_lon": -84.0447977068717, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.31 + } + }, + { + "model": "feed.shape", + "pk": 769, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94606507414992, + "shape_pt_lon": -84.0448235005163, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.337 + } + }, + { + "model": "feed.shape", + "pk": 770, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94607893196729, + "shape_pt_lon": -84.0451642894519, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.374 + } + }, + { + "model": "feed.shape", + "pk": 771, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94594726623906, + "shape_pt_lon": -84.0451842895768, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.389 + } + }, + { + "model": "feed.shape", + "pk": 772, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94587566747948, + "shape_pt_lon": -84.0452538542911, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.4 + } + }, + { + "model": "feed.shape", + "pk": 773, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94577795917383, + "shape_pt_lon": -84.0454601695233, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.425 + } + }, + { + "model": "feed.shape", + "pk": 774, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94569943146, + "shape_pt_lon": -84.0455125384658, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.435 + } + }, + { + "model": "feed.shape", + "pk": 775, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94545154684154, + "shape_pt_lon": -84.0455252458136, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.463 + } + }, + { + "model": "feed.shape", + "pk": 776, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94516751299271, + "shape_pt_lon": -84.0455414357082, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.494 + } + }, + { + "model": "feed.shape", + "pk": 777, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94508849180003, + "shape_pt_lon": -84.0455037479672, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.504 + } + }, + { + "model": "feed.shape", + "pk": 778, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94505511036374, + "shape_pt_lon": -84.0453835472561, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.518 + } + }, + { + "model": "feed.shape", + "pk": 779, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94502739484005, + "shape_pt_lon": -84.045084965639, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.55 + } + }, + { + "model": "feed.shape", + "pk": 780, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94499479036127, + "shape_pt_lon": -84.0450504044021, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.556 + } + }, + { + "model": "feed.shape", + "pk": 781, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94494963682908, + "shape_pt_lon": -84.0450208723069, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.562 + } + }, + { + "model": "feed.shape", + "pk": 782, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94467428591231, + "shape_pt_lon": -84.0450154011338, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.592 + } + }, + { + "model": "feed.shape", + "pk": 783, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94435778151253, + "shape_pt_lon": -84.0450041637077, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.627 + } + }, + { + "model": "feed.shape", + "pk": 784, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94347268380579, + "shape_pt_lon": -84.0449287137552, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.725 + } + }, + { + "model": "feed.shape", + "pk": 785, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94295817880508, + "shape_pt_lon": -84.0448982678798, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.782 + } + }, + { + "model": "feed.shape", + "pk": 786, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94230048632557, + "shape_pt_lon": -84.0448587644203, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.855 + } + }, + { + "model": "feed.shape", + "pk": 787, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94171228683352, + "shape_pt_lon": -84.0448222996627, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.92 + } + }, + { + "model": "feed.shape", + "pk": 788, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94096530647596, + "shape_pt_lon": -84.0447760219723, + "shape_pt_sequence": 38, + "shape_dist_traveled": 1.003 + } + }, + { + "model": "feed.shape", + "pk": 789, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94090663320268, + "shape_pt_lon": -84.0448740739734, + "shape_pt_sequence": 39, + "shape_dist_traveled": 1.016 + } + }, + { + "model": "feed.shape", + "pk": 790, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94084406020503, + "shape_pt_lon": -84.0449871934796, + "shape_pt_sequence": 40, + "shape_dist_traveled": 1.03 + } + }, + { + "model": "feed.shape", + "pk": 791, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94077751897418, + "shape_pt_lon": -84.0452171289551, + "shape_pt_sequence": 41, + "shape_dist_traveled": 1.056 + } + }, + { + "model": "feed.shape", + "pk": 792, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94072156165138, + "shape_pt_lon": -84.0453974813657, + "shape_pt_sequence": 42, + "shape_dist_traveled": 1.077 + } + }, + { + "model": "feed.shape", + "pk": 793, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94066022328121, + "shape_pt_lon": -84.0456042948351, + "shape_pt_sequence": 43, + "shape_dist_traveled": 1.101 + } + }, + { + "model": "feed.shape", + "pk": 794, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94049309734092, + "shape_pt_lon": -84.0456331735173, + "shape_pt_sequence": 44, + "shape_dist_traveled": 1.119 + } + }, + { + "model": "feed.shape", + "pk": 795, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94043960234258, + "shape_pt_lon": -84.0454384499972, + "shape_pt_sequence": 45, + "shape_dist_traveled": 1.142 + } + }, + { + "model": "feed.shape", + "pk": 796, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94037244769911, + "shape_pt_lon": -84.0451953028132, + "shape_pt_sequence": 46, + "shape_dist_traveled": 1.169 + } + }, + { + "model": "feed.shape", + "pk": 797, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94027492444419, + "shape_pt_lon": -84.0448203307503, + "shape_pt_sequence": 47, + "shape_dist_traveled": 1.212 + } + }, + { + "model": "feed.shape", + "pk": 798, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94022435173391, + "shape_pt_lon": -84.0447437519701, + "shape_pt_sequence": 48, + "shape_dist_traveled": 1.222 + } + }, + { + "model": "feed.shape", + "pk": 799, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94016681408322, + "shape_pt_lon": -84.0446621944019, + "shape_pt_sequence": 49, + "shape_dist_traveled": 1.233 + } + }, + { + "model": "feed.shape", + "pk": 800, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94010200702146, + "shape_pt_lon": -84.044417503094, + "shape_pt_sequence": 50, + "shape_dist_traveled": 1.261 + } + }, + { + "model": "feed.shape", + "pk": 801, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93987745974345, + "shape_pt_lon": -84.0444809655781, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.286 + } + }, + { + "model": "feed.shape", + "pk": 802, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93971459423953, + "shape_pt_lon": -84.0445245874922, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.305 + } + }, + { + "model": "feed.shape", + "pk": 803, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93927560616025, + "shape_pt_lon": -84.0446392902696, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.355 + } + }, + { + "model": "feed.shape", + "pk": 804, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93920545121652, + "shape_pt_lon": -84.0446560771702, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.363 + } + }, + { + "model": "feed.shape", + "pk": 805, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93916110643307, + "shape_pt_lon": -84.0446448875091, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.368 + } + }, + { + "model": "feed.shape", + "pk": 806, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93912385292449, + "shape_pt_lon": -84.0446191813258, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.373 + } + }, + { + "model": "feed.shape", + "pk": 807, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93911625815432, + "shape_pt_lon": -84.0445525134932, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.38 + } + }, + { + "model": "feed.shape", + "pk": 808, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93919941590806, + "shape_pt_lon": -84.0443337547524, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.406 + } + }, + { + "model": "feed.shape", + "pk": 809, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93911055274011, + "shape_pt_lon": -84.044006444136, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.443 + } + }, + { + "model": "feed.shape", + "pk": 810, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9390190082839, + "shape_pt_lon": -84.0436747724812, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.481 + } + }, + { + "model": "feed.shape", + "pk": 811, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93895911426052, + "shape_pt_lon": -84.0434673567427, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.505 + } + }, + { + "model": "feed.shape", + "pk": 812, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9392879865273, + "shape_pt_lon": -84.0433689432454, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.543 + } + }, + { + "model": "feed.shape", + "pk": 813, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93942115014918, + "shape_pt_lon": -84.0433274860744, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.558 + } + }, + { + "model": "feed.shape", + "pk": 814, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93944755512195, + "shape_pt_lon": -84.0429942406062, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.595 + } + }, + { + "model": "feed.shape", + "pk": 815, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93946810072644, + "shape_pt_lon": -84.0427365454686, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.623 + } + }, + { + "model": "feed.shape", + "pk": 816, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93949017843466, + "shape_pt_lon": -84.0424561880641, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.654 + } + }, + { + "model": "feed.shape", + "pk": 817, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93949896641922, + "shape_pt_lon": -84.0421337910545, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.689 + } + }, + { + "model": "feed.shape", + "pk": 818, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93950631475532, + "shape_pt_lon": -84.0419274245262, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.712 + } + }, + { + "model": "feed.shape", + "pk": 819, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93932958005353, + "shape_pt_lon": -84.0418524186819, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.733 + } + }, + { + "model": "feed.shape", + "pk": 820, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93916814008368, + "shape_pt_lon": -84.041691039804, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.758 + } + }, + { + "model": "feed.shape", + "pk": 821, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93900519121203, + "shape_pt_lon": -84.0414413521148, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.791 + } + }, + { + "model": "feed.shape", + "pk": 822, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93882565486029, + "shape_pt_lon": -84.0411391429389, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.83 + } + }, + { + "model": "feed.shape", + "pk": 823, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93878072700935, + "shape_pt_lon": -84.0410728454411, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.839 + } + }, + { + "model": "feed.shape", + "pk": 824, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93872490109004, + "shape_pt_lon": -84.0410213000932, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.847 + } + }, + { + "model": "feed.shape", + "pk": 825, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93861004710345, + "shape_pt_lon": -84.0409544792739, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.862 + } + }, + { + "model": "feed.shape", + "pk": 826, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93847396797512, + "shape_pt_lon": -84.0409494403816, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.877 + } + }, + { + "model": "feed.shape", + "pk": 827, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93814652860348, + "shape_pt_lon": -84.0410341635524, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.914 + } + }, + { + "model": "feed.shape", + "pk": 828, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93790671250708, + "shape_pt_lon": -84.0411014405278, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.942 + } + }, + { + "model": "feed.shape", + "pk": 829, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93791663555238, + "shape_pt_lon": -84.0413834314017, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.973 + } + }, + { + "model": "feed.shape", + "pk": 830, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93793079347671, + "shape_pt_lon": -84.0416285810649, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.999 + } + }, + { + "model": "feed.shape", + "pk": 831, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93801967154644, + "shape_pt_lon": -84.0416254546011, + "shape_pt_sequence": 81, + "shape_dist_traveled": 2.009 + } + }, + { + "model": "feed.shape", + "pk": 832, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93807996226397, + "shape_pt_lon": -84.0416431189912, + "shape_pt_sequence": 82, + "shape_dist_traveled": 2.016 + } + }, + { + "model": "feed.shape", + "pk": 833, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93810791480517, + "shape_pt_lon": -84.0416788253891, + "shape_pt_sequence": 83, + "shape_dist_traveled": 2.021 + } + }, + { + "model": "feed.shape", + "pk": 834, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93813256489417, + "shape_pt_lon": -84.0417178845482, + "shape_pt_sequence": 84, + "shape_dist_traveled": 2.026 + } + }, + { + "model": "feed.shape", + "pk": 835, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9381630635316, + "shape_pt_lon": -84.0418440755105, + "shape_pt_sequence": 85, + "shape_dist_traveled": 2.041 + } + }, + { + "model": "feed.shape", + "pk": 836, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93816840355805, + "shape_pt_lon": -84.0419580950124, + "shape_pt_sequence": 86, + "shape_dist_traveled": 2.053 + } + }, + { + "model": "feed.shape", + "pk": 837, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93816233402513, + "shape_pt_lon": -84.0420632597521, + "shape_pt_sequence": 87, + "shape_dist_traveled": 2.065 + } + }, + { + "model": "feed.shape", + "pk": 838, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93814321123235, + "shape_pt_lon": -84.0421742120474, + "shape_pt_sequence": 88, + "shape_dist_traveled": 2.077 + } + }, + { + "model": "feed.shape", + "pk": 839, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93803086770445, + "shape_pt_lon": -84.042431585693, + "shape_pt_sequence": 89, + "shape_dist_traveled": 2.108 + } + }, + { + "model": "feed.shape", + "pk": 840, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93800811636062, + "shape_pt_lon": -84.0424780922361, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.113 + } + }, + { + "model": "feed.shape", + "pk": 841, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93798034157711, + "shape_pt_lon": -84.0426586032431, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.134 + } + }, + { + "model": "feed.shape", + "pk": 842, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93791715763552, + "shape_pt_lon": -84.0430584128099, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.178 + } + }, + { + "model": "feed.shape", + "pk": 843, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93789378213828, + "shape_pt_lon": -84.0431955755255, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.193 + } + }, + { + "model": "feed.shape", + "pk": 844, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9379228858361, + "shape_pt_lon": -84.0434355505527, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.22 + } + }, + { + "model": "feed.shape", + "pk": 845, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93793324365073, + "shape_pt_lon": -84.0435100147268, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.228 + } + }, + { + "model": "feed.shape", + "pk": 846, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93796925623814, + "shape_pt_lon": -84.0436073742708, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.239 + } + }, + { + "model": "feed.shape", + "pk": 847, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93811129632628, + "shape_pt_lon": -84.0437957690067, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.265 + } + }, + { + "model": "feed.shape", + "pk": 848, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93796149488666, + "shape_pt_lon": -84.0440534496211, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.298 + } + }, + { + "model": "feed.shape", + "pk": 849, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93777133769974, + "shape_pt_lon": -84.0443836171542, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.34 + } + }, + { + "model": "feed.shape", + "pk": 850, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9375818272445, + "shape_pt_lon": -84.0447196978834, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.382 + } + }, + { + "model": "feed.shape", + "pk": 851, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93745018852863, + "shape_pt_lon": -84.0449635706007, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.413 + } + }, + { + "model": "feed.shape", + "pk": 852, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93734180767617, + "shape_pt_lon": -84.0451463546949, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.436 + } + }, + { + "model": "feed.shape", + "pk": 853, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93725372200282, + "shape_pt_lon": -84.0452714142582, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.453 + } + }, + { + "model": "feed.shape", + "pk": 854, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.937108322267, + "shape_pt_lon": -84.0454262175884, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.476 + } + }, + { + "model": "feed.shape", + "pk": 855, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93692719931924, + "shape_pt_lon": -84.0455586526682, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.501 + } + }, + { + "model": "feed.shape", + "pk": 856, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93685401442958, + "shape_pt_lon": -84.0455873611916, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.51 + } + }, + { + "model": "feed.shape", + "pk": 857, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93677373653686, + "shape_pt_lon": -84.0455923110153, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.519 + } + }, + { + "model": "feed.shape", + "pk": 858, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93668019604487, + "shape_pt_lon": -84.0455680674162, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.529 + } + }, + { + "model": "feed.shape", + "pk": 859, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93646480148586, + "shape_pt_lon": -84.0454482787829, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.556 + } + }, + { + "model": "feed.shape", + "pk": 860, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93636588688585, + "shape_pt_lon": -84.0453892763726, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.569 + } + }, + { + "model": "feed.shape", + "pk": 861, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93632308831075, + "shape_pt_lon": -84.0453697036442, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.574 + } + }, + { + "model": "feed.shape", + "pk": 862, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93629762770389, + "shape_pt_lon": -84.0453615303045, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.577 + } + }, + { + "model": "feed.shape", + "pk": 863, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93624652235345, + "shape_pt_lon": -84.0453532765511, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.583 + } + }, + { + "model": "feed.shape", + "pk": 864, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93618732594838, + "shape_pt_lon": -84.0453570927397, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.59 + } + }, + { + "model": "feed.shape", + "pk": 865, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93603538344972, + "shape_pt_lon": -84.0453927689936, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.607 + } + }, + { + "model": "feed.shape", + "pk": 866, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93577991764324, + "shape_pt_lon": -84.045437957483, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.636 + } + }, + { + "model": "feed.shape", + "pk": 867, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93565154581259, + "shape_pt_lon": -84.0454621421002, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.65 + } + }, + { + "model": "feed.shape", + "pk": 868, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93558482499322, + "shape_pt_lon": -84.0455294509499, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.66 + } + }, + { + "model": "feed.shape", + "pk": 869, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93533787082614, + "shape_pt_lon": -84.0456405554627, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.69 + } + }, + { + "model": "feed.shape", + "pk": 870, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9350109333037, + "shape_pt_lon": -84.0456410811815, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.727 + } + }, + { + "model": "feed.shape", + "pk": 871, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93495968412818, + "shape_pt_lon": -84.0456087998837, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.733 + } + }, + { + "model": "feed.shape", + "pk": 872, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93464858697721, + "shape_pt_lon": -84.0456196757956, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.768 + } + }, + { + "model": "feed.shape", + "pk": 873, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93480225304748, + "shape_pt_lon": -84.046294734079, + "shape_pt_sequence": 123, + "shape_dist_traveled": 2.844 + } + }, + { + "model": "feed.shape", + "pk": 874, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93495610721508, + "shape_pt_lon": -84.0470992295944, + "shape_pt_sequence": 124, + "shape_dist_traveled": 2.933 + } + }, + { + "model": "feed.shape", + "pk": 875, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93514466639919, + "shape_pt_lon": -84.047738281775, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.007 + } + }, + { + "model": "feed.shape", + "pk": 876, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93527584609242, + "shape_pt_lon": -84.048128961463, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.052 + } + }, + { + "model": "feed.shape", + "pk": 877, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93531583349863, + "shape_pt_lon": -84.0483847176419, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.08 + } + }, + { + "model": "feed.shape", + "pk": 878, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93529983825585, + "shape_pt_lon": -84.0486296483808, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.107 + } + }, + { + "model": "feed.shape", + "pk": 879, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93545520267059, + "shape_pt_lon": -84.0486491888617, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.124 + } + }, + { + "model": "feed.shape", + "pk": 880, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9354703980085, + "shape_pt_lon": -84.0488055127148, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.142 + } + }, + { + "model": "feed.shape", + "pk": 881, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93553667972237, + "shape_pt_lon": -84.0490832368349, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.173 + } + }, + { + "model": "feed.shape", + "pk": 882, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9355977604479, + "shape_pt_lon": -84.0493162487417, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.199 + } + }, + { + "model": "feed.shape", + "pk": 883, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93570243695239, + "shape_pt_lon": -84.0495918083302, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.232 + } + }, + { + "model": "feed.shape", + "pk": 884, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93571038517426, + "shape_pt_lon": -84.0496787768477, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.241 + } + }, + { + "model": "feed.shape", + "pk": 885, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93571038484225, + "shape_pt_lon": -84.0499696558076, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.273 + } + }, + { + "model": "feed.shape", + "pk": 886, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93570321714193, + "shape_pt_lon": -84.0500954158227, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.287 + } + }, + { + "model": "feed.shape", + "pk": 887, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93566700857604, + "shape_pt_lon": -84.0503419760518, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.314 + } + }, + { + "model": "feed.shape", + "pk": 888, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93560674646944, + "shape_pt_lon": -84.0506470296121, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.348 + } + }, + { + "model": "feed.shape", + "pk": 889, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93553343216217, + "shape_pt_lon": -84.0510737676674, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.396 + } + }, + { + "model": "feed.shape", + "pk": 890, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93549263100849, + "shape_pt_lon": -84.0513075140395, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.422 + } + }, + { + "model": "feed.shape", + "pk": 891, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93546272803463, + "shape_pt_lon": -84.0515459542782, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.448 + } + }, + { + "model": "feed.shape", + "pk": 892, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93544955548966, + "shape_pt_lon": -84.0516525931019, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.46 + } + }, + { + "model": "feed.shape", + "pk": 893, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93544794162221, + "shape_pt_lon": -84.0517605730299, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.472 + } + }, + { + "model": "feed.shape", + "pk": 894, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93547169143514, + "shape_pt_lon": -84.0519830595855, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.496 + } + }, + { + "model": "feed.shape", + "pk": 895, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93548892832953, + "shape_pt_lon": -84.0521081889526, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.51 + } + }, + { + "model": "feed.shape", + "pk": 896, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93550175796293, + "shape_pt_lon": -84.0521827017793, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.519 + } + }, + { + "model": "feed.geoshape", + "pk": 1, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "geometry": "SRID=4326;LINESTRING (-84.0491138975951 9.93554944029271, -84.0491582627979 9.9355589010814, -84.0492241246225 9.93557354275506, -84.049324861376 9.9356000651633, -84.049416778843 9.93563773463719, -84.0495368755472 9.93568399531643, -84.0495945755631 9.93570316048327, -84.0496871639603 9.93571109089738, -84.0498464474787 9.93571292483817, -84.0500877222699 9.93570393244304, -84.050351168656 9.93566539329337, -84.0505937476355 9.93561786205413, -84.050878060609 9.93556519227529, -84.051108901895 9.93552922267821, -84.0513932152566 9.93548169125642, -84.0516410109878 9.93545342942273, -84.0516943904767 9.93544741074256, -84.051754475488 9.93544700627605, -84.0519579288248 9.93546627570862, -84.052131385837 9.93548939902537, -84.0522239834817 9.93550517435119, -84.0523340057342 9.93554618004823, -84.0523914948391 9.93559987797587, -84.0524281689233 9.93565552854654, -84.0524410544122 9.93572094236273, -84.0524182569563 9.93583614886311, -84.0523528383197 9.93603336648931, -84.0522832947174 9.93625691629266, -84.0522431941422 9.93639307154715, -84.0522372469934 9.93653561474882, -84.0522600443969 9.93660005206628, -84.0523423132888 9.93661957852377, -84.0524275557544 9.93659126516027, -84.0524503531584 9.93653854371827, -84.0524483707755 9.93645360359939, -84.052439450052 9.93636085286962, -84.0524268046992 9.93633386047036, -84.0524265645631 9.93630422609543, -84.0524473794854 9.93618120917912, -84.052484053706 9.93600742368285, -84.0525276661302 9.93581118236608, -84.0525355663096 9.93571876163712, -84.0525177541372 9.93563153840537, -84.0524334735888 9.93553310902874, -84.0523512340121 9.93545970504671, -84.0522451765253 9.93542065199216, -84.0521014537632 9.93541674668641, -84.0518556382803 9.93537769362758, -84.0515960083744 9.93533766423581, -84.0515277691646 9.93531364398533, -84.0514612063353 9.93528103728449, -84.0510449054667 9.93537964636139, -84.0506385823758 9.93549228868242, -84.0501428263958 9.93560853450969, -84.0499153784661 9.93564523227799, -84.0495436816674 9.9355593156005, -84.049203385401 9.93549425099087, -84.0487850070695 9.93539252590615, -84.0486462402645 9.93537592835444, -84.0486373195414 9.93528024833921, -84.0483824809879 9.93529755089066, -84.048123669054 9.93524885628052, -84.0477514451489 9.9351256875275, -84.0473850372423 9.93500538311991, -84.0470954278149 9.93492412702167, -84.046441127981 9.93480668693231, -84.0458485099908 9.93468020166955, -84.0456145784198 9.93461570602311, -84.0456080574792 9.93495613335646, -84.0455873014759 9.93502533870439, -84.045580669786 9.93533638426393, -84.045528502083 9.93558174876489, -84.0454554675517 9.9356639649666, -84.0454118867064 9.93591239555134, -84.0453571107868 9.93618345188633, -84.0453649359146 9.93630292207917, -84.0454366662581 9.93644423085287, -84.045567569655 9.93668331840604, -84.045592349228 9.93677195745002, -84.0455871324757 9.9368528887295, -84.0455467026459 9.93694152772752, -84.0454423673758 9.93708540528038, -84.0452787163273 9.9372459343465, -84.0451378640166 9.93733842710149, -84.044752821983 9.93756026309952, -84.0443585013794 9.93777652816203, -84.0438016139119 9.9381041049962, -84.0436166501913 9.93796476738381, -84.0434457982085 9.93791473560688, -84.0432203034589 9.93789047771889, -84.0429894627193 9.93791970638376, -84.0426008139046 9.93798008366965, -84.0424795244151 9.93800449142722, -84.0421782569734 9.9381380917555, -84.0419964534982 9.93816473253672, -84.0418503844357 9.93815830944601, -84.0417251823817 9.93812876322556, -84.0416449024973 9.93807176432108, -84.0416364975937 9.9380170014129, -84.0416378013257 9.9379218878614, -84.0411362584451 9.93790138516287, -84.041068473332 9.93789650346394, -84.0409289658467 9.93846399292934, -84.0409645503437 9.93868999787477, -84.0411343350368 9.93885220465146, -84.0416551779252 9.93915775668989, -84.0417942257713 9.93928866239001, -84.0418835860126 9.9394332650851, -84.0419072239736 9.93950294569722, -84.0422269282472 9.93950393195614, -84.0425117128132 9.93949212322203, -84.0429181490899 9.93945684385667, -84.0433331349077 9.93942503205056, -84.0432631191506 9.93972770605043, -84.0432957235711 9.93979024582779, -84.0433729445674 9.93981898031695, -84.0443132968873 9.94007108411656, -84.0446693302114 9.94016605495639, -84.0448273689979 9.94027244564152, -84.0455400945559 9.94046211098755, -84.0456302713637 9.94049056601295, -84.0455978789472 9.94063822457009, -84.0450688663703 9.94079717180704, -84.04474671421 9.94095438717349, -84.0446527254796 9.94105262250509, -84.0446772759114 9.9414150973303, -84.0447316948875 9.94222783326419, -84.0447692666912 9.94282430588245, -84.0447361152365 9.9430072194504, -84.0446536543918 9.94325327852743, -84.0444658512058 9.94367377439675, -84.0447574980966 9.94380472710699, -84.044883947833 9.94388103477618, -84.044952212081 9.94396870046222, -84.0449991890221 9.94440018674929, -84.045011078064 9.94457575401998, -84.045007224609 9.94495341180596, -84.0450804402532 9.94503790634203, -84.0454078875236 9.94507262278836, -84.0455018337476 9.94509663743075, -84.0455370798079 9.94516495042239, -84.0455279840503 9.94535421093323, -84.0455006967812 9.94569609354827, -84.0454636202844 9.94576019859063, -84.0453783778183 9.9458090133638, -84.0452505141197 9.94587051996754, -84.0451768005758 9.94594579827001, -84.0451498689492 9.9462925242644, -84.0451620803092 9.9463897709987, -84.0452016714679 9.94645002673405, -84.0452387476835 9.94648404073633)", + "has_altitude": false + } + }, + { + "model": "feed.geoshape", + "pk": 2, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "geometry": "SRID=4326;LINESTRING (-84.0491114962244 9.93554615993122, -84.0492324408382 9.93557253860416, -84.0493243902202 9.93559719650295, -84.0495039565472 9.93566832503712, -84.0495983130441 9.93570246673155, -84.0496907438365 9.93570957958473, -84.0498491281346 9.93571147624034, -84.0500893518124 9.93570246663722, -84.0503237982121 9.93566785089355, -84.0505362327233 9.93562801871054, -84.0507591258626 9.93558581568109, -84.0510354553896 9.93553934502577, -84.0513535074206 9.93548718391971, -84.0516944413929 9.93544590778002, -84.0517683691601 9.93544406437546, -84.0521913460308 9.93549752617786, -84.0522746314152 9.93552149197739, -84.0523420082619 9.93554545760814, -84.0523981556341 9.93560168465873, -84.0524318440576 9.93565791169966, -84.0524430735317 9.935720591012, -84.0524187427515 9.93583857529975, -84.0523466867771 9.93605505885652, -84.0522802455722 9.93627443620344, -84.052243749702 9.93639436894143, -84.0522390707544 9.93653263180367, -84.0523349506756 9.93679802054417, -84.0524313369778 9.93706910208629, -84.0525380169441 9.93735023603007, -84.0526437612861 9.9375714563375, -84.0527027160271 9.93774105816322, -84.0527151488461 9.93778978041929, -84.0527273141104 9.93794647765702, -84.0527076622996 9.93809150988507, -84.052635606505 9.93815511047925, -84.0521246655647 9.93840121696546, -84.051894479649 9.93857142751338, -84.0516156036497 9.93879176765612, -84.0514555284908 9.93890106345436, -84.0513020294891 9.93897507515302, -84.0511345760324 9.9390141956147, -84.0509224405605 9.93905117558812, -84.0506014881021 9.93906597792292, -84.0501243834524 9.93909856537408, -84.0497656390733 9.93910318560055, -84.049652930016 9.93906512245888, -84.0495133854688 9.9389773657529, -84.0493115816303 9.93881453893313, -84.0490281988577 9.93860413409909, -84.0488647834885 9.93847607358095, -84.0486425856324 9.93830796101282, -84.0484368995492 9.93812775111203, -84.0482768335369 9.93798100124938, -84.0479566982914 9.93768022319365, -84.0479111252314 9.93763286635998, -84.0478722576937 9.93758319780721, -84.0478404135935 9.93753870216281, -84.0478139339113 9.9374942065184, -84.0477923420699 9.93745024180206, -84.0477606919451 9.93735938216936, -84.0477606931305 9.93724916693389, -84.0477784341865 9.93715177760806, -84.0477987581936 9.93705710158646, -84.0479001602699 9.93672866697375, -84.0479940310818 9.93643873625598, -84.0481209106209 9.93605459371357, -84.0481497577059 9.93594785009141, -84.0481926863882 9.93584672067646, -84.0482902977589 9.93562414968525, -84.0483541402688 9.93555563302149, -84.048395536302 9.93552377293763, -84.0484359265072 9.93549323384328, -84.0485562630898 9.93545924101029, -84.0486084574091 9.93545410965148, -84.0486583047952 9.93545261101962, -84.0486381383254 9.93527714539185, -84.0483849370953 9.93529369875646, -84.0481250138729 9.93524845287248, -84.0476876510322 9.93510490695821, -84.0471049676225 9.93492309622952, -84.0463710454434 9.93478795156821, -84.0458810362687 9.93468712924438, -84.0456150110652 9.93461716476174, -84.045615726073 9.93466453460568, -84.0456098658075 9.93495411611772, -84.0455893287031 9.93501867239507, -84.0455828491321 9.93533255656777, -84.0455310895244 9.93558174215077, -84.0454587191306 9.93565354440517, -84.0453935565556 9.93601427775509, -84.0453574183472 9.93618250695711, -84.0453568135217 9.93624056084127, -84.0453642553238 9.93629795423082, -84.0455215059456 9.93659318251401, -84.0455703414396 9.93667976807258, -84.0455957359235 9.9367692395777, -84.0455879222361 9.93685293870503, -84.0455491295231 9.93694173624727, -84.0454446214555 9.93708123470739, -84.0452817159445 9.93724313131711, -84.0451254422096 9.93734607124923, -84.0448724740612 9.93748749351063, -84.0446484093239 9.93761860756564, -84.0443002302728 9.93781098243242, -84.0439934603325 9.93799146315684, -84.0438034580265 9.93810165004318, -84.0436169062427 9.93796407612903, -84.043444027742 9.93791116339785, -84.0432193842326 9.93788614994896, -84.0429361376045 9.93792655633902, -84.0424812505301 9.93800099196738, -84.0421772565051 9.93813818359375, -84.0419985184082 9.93816415907815, -84.0418510350607 9.9381545385288, -84.0417260160641 9.93812567687818, -84.0416527622632 9.93807564954973, -84.0416384252501 9.93804289664845, -84.0416361581774 9.93801311595451, -84.0416381115992 9.93792172067878, -84.0412122658535 9.93790247956499, -84.0410686893496 9.93789478311904, -84.040969095546 9.93830046896954, -84.0409298363785 9.93846168564775, -84.040967928104 9.93868873033166, -84.0411370173071 9.93884815398905, -84.0416568644267 9.93915383599336, -84.0417935755105 9.93928521203319, -84.0418876857024 9.93942977628924, -84.0419089725314 9.93950150662073, -84.0422428396408 9.93950371370814, -84.0425204684191 9.93948613333313, -84.0430246306461 9.93944529338017, -84.0433356324423 9.93942327481619, -84.0432655607324 9.93972442200525, -84.043299171515 9.93978732393233, -84.0433809579747 9.93981711902594, -84.0437596394605 9.93991974845217, -84.0443170698121 9.94007043205839, -84.0446744654815 9.94016533658292, -84.0448268343636 9.94027017298111, -84.045244089757 9.94038169599758, -84.045632855511 9.94048873914792, -84.045599244728 9.94063882056966, -84.0450681942005 9.94079662666821, -84.044750328054 9.94095071185347, -84.0446554341072 9.9410528605391, -84.04469185811 9.94157411286451, -84.0447474726987 9.94242227255298, -84.0447699014639 9.94283107241787, -84.0447350564938 9.94300697065598, -84.0446544775012 9.94326009234421, -84.0445407320727 9.94351468777105, -84.0444710421328 9.94366913468646, -84.0447541575134 9.9437999854876, -84.0448848261506 9.94388149907578, -84.0449552037605 9.94396600743452, -84.0449932717292 9.94433419150155, -84.0450138149367 9.94457398813642, -84.045010504636 9.94495221337372, -84.0450833311997 9.94503698779598, -84.045389534011 9.94506796311185, -84.0455020842335 9.94509404758507, -84.0455418078417 9.94516741015652, -84.0455036631251 9.94569411437748, -84.0454645549726 9.94576235686358, -84.0452550477597 9.94586939851089, -84.0451777429595 9.94594554151604, -84.0451530949856 9.94629085058927, -84.0451636656039 9.94638848955421, -84.0452028781838 9.94644918315917, -84.0452462913844 9.94648865740507)", + "has_altitude": false + } + }, + { + "model": "feed.geoshape", + "pk": 3, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "geometry": "SRID=4326;LINESTRING (-84.052232462037 9.93551240308205, -84.0523024805564 9.93553038682294, -84.0523354193901 9.93554317941351, -84.0523952582046 9.93560006968185, -84.0524284133704 9.93565298376728, -84.0524404498132 9.93571914349433, -84.0524171180445 9.93583719162457, -84.0523801266021 9.93594643029256, -84.0523343631691 9.93608834513962, -84.0522977078958 9.93620422239772, -84.0522711599884 9.936293049843, -84.0522405229359 9.93639226353531, -84.0522367457551 9.93653093553953, -84.0522590055211 9.93659589447438, -84.0523412639074 9.93661615058734, -84.0524260404882 9.9365876265418, -84.0524499625703 9.9365355393877, -84.0524473462339 9.93644867420793, -84.0524384481957 9.93635813864212, -84.052426075736 9.93632957313295, -84.0524254379402 9.93630067737655, -84.0524455386407 9.9361767385198, -84.0524692189919 9.93606938255121, -84.0525134237392 9.9358662876061, -84.0525277028597 9.93580530982546, -84.0525351455981 9.93571720324209, -84.0525170973821 9.93562932790421, -84.0524334827489 9.93552958615174, -84.052350672979 9.93545575661828, -84.0522446182099 9.93541638163459, -84.0520977731443 9.93541236377893, -84.0517673714683 9.9353609350822, -84.0515957473315 9.93533537431955, -84.0514578761312 9.93527832074849, -84.051051560594 9.93537394568805, -84.0506488451042 9.93548509593826, -84.0503446866737 9.93555656904013, -84.0501407351937 9.93560639042598, -84.0499188359838 9.93564014039442, -84.0495240741516 9.93555237106771, -84.0493169635181 9.9355127171103, -84.0490255135247 9.93544759669272, -84.0487899823799 9.93538988817417, -84.0486447689264 9.93537301317815, -84.0486366108669 9.93527658461171, -84.0483784246656 9.93529274995559, -84.0481238929513 9.93524694618673, -84.0478057230236 9.93514165787212, -84.0473807827294 9.93500316815773, -84.0470859236543 9.93492049042863, -84.0464195689003 9.93479657132182, -84.0458857020311 9.93468604728109, -84.0456137031377 9.9346124699569, -84.0456081393267 9.93481022852054, -84.0456083692307 9.93495379560579, -84.0455873976348 9.93502122053513, -84.0455815527507 9.93525069991888, -84.0455791055204 9.93533621207088, -84.0455277100451 9.9355796939962, -84.0454545424224 9.93566141737569, -84.0454033749615 9.93593880374486, -84.0453561940705 9.93617987563359, -84.0453622217276 9.93629878421235, -84.0454544077961 9.93647074793075, -84.0455491574187 9.9366470154013, -84.0455671051487 9.93667996169247, -84.0455923951325 9.93677076487081, -84.0455875957907 9.93685019478803, -84.0455459896891 9.93693939078323, -84.0454405657035 9.93708216879507, -84.0452791956738 9.9372417505605, -84.0451437718914 9.93733175001592, -84.0448843455207 9.93747880276838, -84.0446848467803 9.93759383837854, -84.0443877220931 9.93775722150572, -84.0440980878075 9.93792650160209, -84.0437999865192 9.93809919166979, -84.0436147985756 9.93796097853527, -84.0434434787742 9.93791115773413, -84.0432188653814 9.9378853721441, -84.0429382281456 9.93792474683056, -84.0425692976739 9.93798421082772, -84.0424760119919 9.93799717971221, -84.0421774270254 9.93813619639644, -84.0419972282554 9.93816151133474, -84.0418487515775 9.93815347569085, -84.0417223014224 9.93812695789198, -84.041649694696 9.93807552975984, -84.0416317469654 9.93801445884308, -84.0416350505556 9.93791897942971, -84.0410687729965 9.93789540463778, -84.0409278059346 9.93846102257875, -84.0409636843222 9.93868770509072, -84.0411317795776 9.93884702967763, -84.0416545090707 9.93915009329333, -84.0417940169538 9.93928437269097, -84.0418844077991 9.93942339095397, -84.0419066090587 9.93949992907343, -84.0422475569833 9.93949992907343, -84.043074 9.939437, -84.0433290766316 9.9394249524573, -84.0432616940963 9.93972312001197, -84.0432938739159 9.9397847344284, -84.0433818049407 9.9398186343525, -84.0440308770623 9.93998824672434, -84.0446658158992 9.94015974971341, -84.0448245474961 9.94026910203425, -84.0451873514683 9.94036490303632, -84.0456290389484 9.94048769323097, -84.0455931434884 9.94063635155576, -84.0450690355552 9.94079234514589, -84.0447505513004 9.94094918383372, -84.0446520351469 9.94104532842372, -84.0446571934664 9.94113081479986, -84.0446770863329 9.94144321527622, -84.0447142198439 9.94195499816524, -84.0447371192727 9.94233948335795, -84.0447624203313 9.94270561942093, -84.0447662997461 9.94282741926446, -84.0447342405736 9.94300876520552, -84.044661630678 9.94322619282253, -84.0446070756693 9.94336188947768, -84.0444664621215 9.94366938860733, -84.0447499441632 9.94379763572232, -84.0448781808515 9.94387703073651, -84.0449496270056 9.94396544788927, -84.0450074182673 9.94454435151914, -84.0450098494603 9.94494922686726, -84.0450726102459 9.94503488859595, -84.0453994971357 9.94506635931216, -84.0454999143925 9.94509373573383, -84.0455384857143 9.94516587977827, -84.045501640108 9.94569334489241, -84.0454572011088 9.94576818120904, -84.0453571624431 9.94581918999885, -84.0452494124261 9.94586821736523, -84.0451749917014 9.94594549545337, -84.045149887399 9.94628917517751, -84.0451617577946 9.946387887887, -84.0451994142665 9.94644528982524, -84.0452511227568 9.94649012442296)", + "has_altitude": false + } + }, + { + "model": "feed.geoshape", + "pk": 4, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "geometry": "SRID=4326;LINESTRING (-84.0522203008732 9.93551129613598, -84.0522927059177 9.9355310767404, -84.0523347118824 9.93554722789095, -84.0523891977038 9.93559998927965, -84.0524266115309 9.93565665681396, -84.0524387877407 9.93572400544303, -84.0524163085106 9.93583791088976, -84.0524004247557 9.93589348533485, -84.0523801824105 9.93594773879152, -84.052302832233 9.93618639604332, -84.0522406782275 9.93639684624757, -84.0522361299255 9.93653551980098, -84.0523076585187 9.93673682209909, -84.05243186663 9.93708559662569, -84.0525288520072 9.93733577696727, -84.0526438746271 9.93757969853555, -84.0527043524954 9.9377485826659, -84.0527107981436 9.93779188190045, -84.0527199326082 9.93787132360124, -84.0527243732062 9.93795076530203, -84.0527168419396 9.93802242474458, -84.0527036109785 9.93809408418712, -84.0526341385986 9.93815622170643, -84.0524441849862 9.93824866125399, -84.0521210493447 9.93840212874288, -84.0518711468269 9.93859022704029, -84.0517146035903 9.9387164365478, -84.0515516901066 9.93883769238516, -84.0514467461262 9.93890538473733, -84.051298218969 9.93897774723731, -84.0511281313016 9.93901864778466, -84.0509181170952 9.93905404247567, -84.0503591447661 9.93908393146568, -84.0501183551865 9.93910272348104, -84.0499402779348 9.93910706388403, -84.0497648828928 9.93910711111161, -84.0496439745831 9.93906715286185, -84.0494999920866 9.93897699483947, -84.0492839130465 9.93879865248422, -84.0489259634067 9.93852631535243, -84.0486415140485 9.9383125595628, -84.0484645585026 9.93816149920894, -84.0483041187788 9.93801276292967, -84.0479456361923 9.93767314890347, -84.0479035036496 9.93762896738312, -84.0478664002497 9.9375818136517, -84.0478370279249 9.9375407094932, -84.0478110083611 9.93749795410686, -84.0477901145765 9.93745496587906, -84.0477598330601 9.93736508273494, -84.047759267964 9.93726069019733, -84.047793713066 9.93707479279145, -84.0478715216077 9.93681544721791, -84.0479476285628 9.93657305173134, -84.0480642553351 9.93622234344519, -84.0481251956082 9.93602464016541, -84.0481829479595 9.93585590049247, -84.0482522936584 9.9357089398831, -84.0482869664637 9.93563189742607, -84.0483531600847 9.93556048694849, -84.048435114092 9.93549839086817, -84.0485569944104 9.93546527295384, -84.0486547088036 9.9354549236054, -84.048634745016 9.93528001900853, -84.0483794267626 9.93529761291067, -84.0481286733116 9.9352527346308, -84.0477461762194 9.93512765815873, -84.0471055797031 9.93492703280895, -84.046354626689 9.93478949058113, -84.0458746565008 9.93469070939338, -84.0456143293 9.93462060674132, -84.0456070252698 9.93489289845325, -84.045606154414 9.93495950947043, -84.0455877894747 9.93502573261312, -84.0455793808645 9.93533984703067, -84.0455366983597 9.93553106245252, -84.0455256779408 9.93558489672501, -84.0454519050346 9.93566584972937, -84.0453870153627 9.93603020143902, -84.0453504149565 9.93619941008339, -84.0453617663184 9.93630011253566, -84.0454755016038 9.93651948121636, -84.0455653411938 9.93668368683727, -84.045589182648 9.93677258981834, -84.0455874796866 9.93685310570445, -84.0455437249918 9.93694508327091, -84.0454400845081 9.93708383542657, -84.045309807991 9.93721635101928, -84.0452761874456 9.93724819645461, -84.0451229209554 9.93734716375109, -84.0448187291416 9.93752119585777, -84.0445416760749 9.93767426097248, -84.0442186256065 9.93785833808635, -84.0437983732383 9.93810435753431, -84.0436125738981 9.93796632120651, -84.0434414999464 9.93791432144543, -84.0432184120559 9.93788832161072, -84.042939145496 9.93792789506808, -84.0425252959219 9.93799597108977, -84.0424724302894 9.93800488549925, -84.0421750587842 9.9381395635656, -84.0419988023209 9.93816556338036, -84.0418468568672 9.93815877702913, -84.0417208377531 9.93812774499086, -84.0416827286396 9.93810465445374, -84.0416493133915 9.93807826146448, -84.0416349312544 9.93804738144964, -84.0416322837814 9.93801451996184, -84.0416346601389 9.93792436774485, -84.041067340985 9.93790082410227, -84.0409284047187 9.93846425290711, -84.0409624274215 9.93868651413261, -84.0411341586918 9.93885247660523, -84.0416474460876 9.93915539473273, -84.0417889786806 9.93928861127028, -84.0418813247414 9.9394354239606, -84.0419056263361 9.93950244712471, -84.042239368576 9.93950244613303, -84.0425196469705 9.93949446718606, -84.0429991991022 9.93945457168453, -84.043331873611 9.93942712460796, -84.0432605742965 9.93972789866721, -84.0432941313524 9.93979051078508, -84.0433753940134 9.93982252793726, -84.0437147893588 9.93991292983544, -84.0441287509128 9.94002028140903, -84.0446669802431 9.94016644833328, -84.044823754755 9.94027078687104, -84.0456295904777 9.94048864067421, -84.045594280927 9.9406416703034, -84.0450692602221 9.94079771456593, -84.0447481499267 9.9409503711104, -84.0446521079484 9.94105192700053, -84.0446962954808 9.94171142158802, -84.0447683576565 9.94281915936154, -84.0447317924328 9.94301266464211, -84.0446461368594 9.94326484610015, -84.0444664659679 9.94367235170777, -84.044752272012 9.94380140312083, -84.0448814333755 9.9438796367465, -84.0449503878825 9.94396952509255, -84.044987908675 9.94433433418409, -84.0450080280451 9.94457411376674, -84.0450080280451 9.94495390060397, -84.0450786471473 9.94504571713547, -84.0453964329445 9.94507075688808, -84.0454995368328 9.94509858007239, -84.0455360879379 9.94517301639726, -84.0455012141288 9.94569599438186, -84.0454579354822 9.94576731883437, -84.0452474905592 9.94587443785238, -84.0451754590753 9.94594677794762, -84.0451469719024 9.94629204599402, -84.0451610957222 9.9463908179176, -84.0451992300371 9.94645063751956, -84.0452562192863 9.94649738913102)", + "has_altitude": false + } + }, + { + "model": "feed.geoshape", + "pk": 5, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "geometry": "SRID=4326;LINESTRING (-84.0452793145875 9.94651439468106, -84.0453635889366 9.94656979269062, -84.0455133598416 9.94668819013391, -84.0456333624982 9.94677813595565, -84.0458288226395 9.94692110409536, -84.0458784281265 9.94699667079666, -84.0458729567443 9.94709290535486, -84.0457747817661 9.94722193423012, -84.0456766067879 9.94733469552996, -84.0455812484176 9.94735240267321, -84.0454835451677 9.94731698838683, -84.045155482603 9.94706401578786, -84.0449388905875 9.94695753981341, -84.0447927265256 9.94685591607748, -84.0447132911805 9.94674691466528, -84.0446929689046 9.94663836196663, -84.0447054750041 9.9465853910728, -84.0447469011822 9.94652457073993, -84.0447977068717 9.94630948675802, -84.0448235005163 9.94606507414992, -84.0451642894519 9.94607893196729, -84.0451842895768 9.94594726623906, -84.0452538542911 9.94587566747948, -84.0454601695233 9.94577795917383, -84.0455125384658 9.94569943146, -84.0455252458136 9.94545154684154, -84.0455414357082 9.94516751299271, -84.0455037479672 9.94508849180003, -84.0453835472561 9.94505511036374, -84.045084965639 9.94502739484005, -84.0450504044021 9.94499479036127, -84.0450208723069 9.94494963682908, -84.0450154011338 9.94467428591231, -84.0450041637077 9.94435778151253, -84.0449287137552 9.94347268380579, -84.0448982678798 9.94295817880508, -84.0448587644203 9.94230048632557, -84.0448222996627 9.94171228683352, -84.0447760219723 9.94096530647596, -84.0448740739734 9.94090663320268, -84.0449871934796 9.94084406020503, -84.0452171289551 9.94077751897418, -84.0453974813657 9.94072156165138, -84.0456042948351 9.94066022328121, -84.0456331735173 9.94049309734092, -84.0454384499972 9.94043960234258, -84.0451953028132 9.94037244769911, -84.0448203307503 9.94027492444419, -84.0447437519701 9.94022435173391, -84.0446621944019 9.94016681408322, -84.044417503094 9.94010200702146, -84.0444809655781 9.93987745974345, -84.0445245874922 9.93971459423953, -84.0446392902696 9.93927560616025, -84.0446560771702 9.93920545121652, -84.0446448875091 9.93916110643307, -84.0446191813258 9.93912385292449, -84.0445525134932 9.93911625815432, -84.0443337547524 9.93919941590806, -84.044006444136 9.93911055274011, -84.0436747724812 9.9390190082839, -84.0434673567427 9.93895911426052, -84.0433689432454 9.9392879865273, -84.0433274860744 9.93942115014918, -84.0429942406062 9.93944755512195, -84.0427365454686 9.93946810072644, -84.0424561880641 9.93949017843466, -84.0421337910545 9.93949896641922, -84.0419274245262 9.93950631475532, -84.0418524186819 9.93932958005353, -84.041691039804 9.93916814008368, -84.0414413521148 9.93900519121203, -84.0411391429389 9.93882565486029, -84.0410728454411 9.93878072700935, -84.0410213000932 9.93872490109004, -84.0409544792739 9.93861004710345, -84.0409494403816 9.93847396797512, -84.0410341635524 9.93814652860348, -84.0411014405278 9.93790671250708, -84.0413834314017 9.93791663555238, -84.0416285810649 9.93793079347671, -84.0416254546011 9.93801967154644, -84.0416431189912 9.93807996226397, -84.0416788253891 9.93810791480517, -84.0417178845482 9.93813256489417, -84.0418440755105 9.9381630635316, -84.0419580950124 9.93816840355805, -84.0420632597521 9.93816233402513, -84.0421742120474 9.93814321123235, -84.042431585693 9.93803086770445, -84.0424780922361 9.93800811636062, -84.0426586032431 9.93798034157711, -84.0430584128099 9.93791715763552, -84.0431955755255 9.93789378213828, -84.0434355505527 9.9379228858361, -84.0435100147268 9.93793324365073, -84.0436073742708 9.93796925623814, -84.0437957690067 9.93811129632628, -84.0440534496211 9.93796149488666, -84.0443836171542 9.93777133769974, -84.0447196978834 9.9375818272445, -84.0449635706007 9.93745018852863, -84.0451463546949 9.93734180767617, -84.0452714142582 9.93725372200282, -84.0454262175884 9.937108322267, -84.0455586526682 9.93692719931924, -84.0455873611916 9.93685401442958, -84.0455923110153 9.93677373653686, -84.0455680674162 9.93668019604487, -84.0454482787829 9.93646480148586, -84.0453892763726 9.93636588688585, -84.0453697036442 9.93632308831075, -84.0453615303045 9.93629762770389, -84.0453532765511 9.93624652235345, -84.0453570927397 9.93618732594838, -84.0453927689936 9.93603538344972, -84.045437957483 9.93577991764324, -84.0454621421002 9.93565154581259, -84.0455294509499 9.93558482499322, -84.0456405554627 9.93533787082614, -84.0456410811815 9.9350109333037, -84.0456087998837 9.93495968412818, -84.0456196757956 9.93464858697721, -84.046294734079 9.93480225304748, -84.0470992295944 9.93495610721508, -84.047738281775 9.93514466639919, -84.048128961463 9.93527584609242, -84.0483847176419 9.93531583349863, -84.0486296483808 9.93529983825585, -84.0486491888617 9.93545520267059, -84.0488055127148 9.9354703980085, -84.0490832368349 9.93553667972237, -84.0493162487417 9.9355977604479, -84.0495918083302 9.93570243695239, -84.0496787768477 9.93571038517426, -84.0499696558076 9.93571038484225, -84.0500954158227 9.93570321714193, -84.0503419760518 9.93566700857604, -84.0506470296121 9.93560674646944, -84.0510737676674 9.93553343216217, -84.0513075140395 9.93549263100849, -84.0515459542782 9.93546272803463, -84.0516525931019 9.93544955548966, -84.0517605730299 9.93544794162221, -84.0519830595855 9.93547169143514, -84.0521081889526 9.93548892832953, -84.0521827017793 9.93550175796293)", + "has_altitude": false + } + }, + { + "model": "feed.geoshape", + "pk": 6, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "geometry": "SRID=4326;LINESTRING (-84.0452709224469 9.94651450274987, -84.0453586296957 9.9465713930344, -84.0455321860811 9.94670523135418, -84.0457428830683 9.94685977487793, -84.0458252584096 9.94692114024093, -84.045874911642 9.94699848130395, -84.0458702927366 9.94709174550324, -84.0456762984049 9.94733286724273, -84.0455816108455 9.94734992775087, -84.0454811496546 9.94731694409985, -84.0451520526366 9.94706331033958, -84.044934964086 9.94695639770921, -84.0447940381815 9.94685739750313, -84.0447120526121 9.94674934743632, -84.0446901128118 9.94663902259388, -84.0447036688627 9.94658480665502, -84.0447440842844 9.94652566341521, -84.0447956225084 9.94631063663281, -84.0448175623087 9.94607861289951, -84.0448198717614 9.94606268969643, -84.0451616705072 9.94607633849742, -84.0451794721398 9.94594816328299, -84.0452499104458 9.94587650883204, -84.0454566064596 9.94577755742257, -84.0455092507792 9.94570040854178, -84.0455392738468 9.94516698035057, -84.0455023654374 9.94508917283893, -84.045382273899 9.94505732633557, -84.0450808903258 9.94502889195332, -84.0450173803773 9.94495155042415, -84.045015769873 9.94472000465252, -84.0449868892884 9.94425679788889, -84.0449568041774 9.94389594579139, -84.0449197895004 9.9433847319748, -84.0448773383005 9.94261500079999, -84.0448390343892 9.94204155986042, -84.0448024388483 9.94137698645447, -84.0447771566035 9.94096102380372, -84.0450446175143 9.94082181962447, -84.0456053336701 9.94065523781238, -84.045634999557 9.94048314593914, -84.0452283043053 9.9403780406827, -84.04482278961 9.9402703855621, -84.0446641785108 9.94016328794055, -84.0444165990228 9.94010181117775, -84.0445263287881 9.93971666992378, -84.0446221116145 9.93932936015097, -84.0446545394456 9.93920408915902, -84.0446456512568 9.9391568243881, -84.0446159514984 9.93912509354336, -84.0445637722231 9.93911021843789, -84.0443354246074 9.93919615665697, -84.043697 9.939024, -84.0434647440871 9.9389589108528, -84.0433689657322 9.93927926961302, -84.0433251613281 9.9394214266361, -84.043078 9.939438, -84.0424704121516 9.93949676004582, -84.0423387592283 9.93950197815545, -84.042195874555 9.93950471943605, -84.0420595652431 9.93950937287681, -84.0419237588459 9.93950560510053, -84.0418526043861 9.93932694656827, -84.0416871226965 9.93916441674404, -84.0415030389796 9.93904364750639, -84.0411360631089 9.93882652989536, -84.0410711382821 9.93877761093714, -84.0410192892248 9.93872439879922, -84.0409548622543 9.93860739420377, -84.0409464827492 9.93847712489684, -84.0409847362632 9.93831748290179, -84.0410975311932 9.93790526804534, -84.0413721007657 9.93791543483811, -84.0416234000621 9.93792971313351, -84.0416214268987 9.93801943406157, -84.0416385167757 9.93808013647371, -84.0417143841426 9.9381333560273, -84.0417661717713 9.9381491692212, -84.0418402279053 9.93816498245021, -84.041955196169 9.93817110369939, -84.0420620743374 9.93816447211196, -84.042172549653 9.93814558312971, -84.0423590295751 9.93806546361139, -84.0424754995415 9.93800868895506, -84.0426277550985 9.93798455282835, -84.0429680898401 9.93793303246509, -84.0431865014681 9.93789255913571, -84.0434262188335 9.93792278510311, -84.0435140997635 9.93793612530689, -84.0436045719397 9.93796843588535, -84.0437946545471 9.93811029202329, -84.044044224914 9.93796317506452, -84.0443497474269 9.93778888741941, -84.0447040111923 9.93759056212761, -84.0449773758339 9.93743889754011, -84.0451442319336 9.93734106177819, -84.0452700748287 9.93725220134541, -84.0454232410009 9.93710383236486, -84.045480287002 9.93703302156643, -84.0455559204937 9.93692669580576, -84.0455868138288 9.93685320196694, -84.045591032246 9.93677214106483, -84.0455673986725 9.93667892839703, -84.0454873867401 9.93652937757293, -84.0454491600057 9.93646683969579, -84.0454129449283 9.93640033885562, -84.0453776127618 9.93634297166293, -84.0453623778292 9.93629576054226, -84.0453512637102 9.93624363287526, -84.0453538959122 9.9361862212533, -84.0453890269646 9.93603883510741, -84.0454308854351 9.93580414505913, -84.0454587046985 9.93565385732093, -84.0455252542674 9.93558390036268, -84.0455798539966 9.93547184500151, -84.0456377473207 9.93533906172064, -84.0456383288227 9.93501118853525, -84.0456086223286 9.93495718975151, -84.0456168978697 9.93465006354252, -84.0461340991613 9.93477095640989, -84.0468176973466 9.93490403346722, -84.0471113963055 9.93495932029753, -84.0474601236579 9.93505827498137, -84.0478899692808 9.93519897363926, -84.0481284685146 9.93527449143981, -84.0483778894022 9.93531543817006, -84.0486249437023 9.93529755715117, -84.0486430566726 9.93545425079317, -84.0488000764969 9.9354703595261, -84.0490437766179 9.9355323422866)", + "has_altitude": false + } + }, + { + "model": "feed.gtfsprovider", + "pk": 1, + "fields": { + "code": "bUCR", + "name": "bUCR", + "description": "Bus de la UCR", + "website": "https://bucr.digital", + "schedule_url": null, + "trip_updates_url": null, + "vehicle_positions_url": null, + "service_alerts_url": null, + "timezone": "America/costa_rica", + "is_active": true + } + }, + { + "model": "feed.feedinfo", + "pk": 1, + "fields": { + "feed": 1, + "feed_publisher_name": "TCU Tropicalización de la Tecnología", + "feed_publisher_url": "https://tropicalizacion.eie.ucr.ac.cr/", + "feed_lang": "es", + "feed_start_date": "2024-10-01", + "feed_end_date": "2024-12-21", + "feed_version": "v2024.2.1", + "feed_contact_email": "fabian.abarca@ucr.ac.cr" + } + }, + { + "model": "feed.feed", + "pk": 1, + "fields": { + "feed_publisher": 1, + "http_etag": null, + "http_last_modified": "2024-07-11T00:00:00Z", + "is_current": true, + "retrieved_at": "2024-07-11T04:28:41.332Z" + } + } +] diff --git a/backend/feed/fixtures/gtfs_old.json b/backend/feed/fixtures/gtfs_old.json index a67b93c..eb169b6 100644 --- a/backend/feed/fixtures/gtfs_old.json +++ b/backend/feed/fixtures/gtfs_old.json @@ -1,32735 +1,32735 @@ [ - { - "model": "gtfs.agency", - "pk": 1, - "fields": { - "feed": "1", - "agency_id": "bUCR", - "agency_name": "Buses de la Universidad de Costa Rica", - "agency_url": "https://bus.ucr.ac.cr/", - "agency_timezone": "America/Costa_Rica", - "agency_lang": "es", - "agency_phone": "25112919", - "agency_fare_url": "https://bus.ucr.ac.cr/#tarifas", - "agency_email": "bus@ucr.ac.cr" - } - }, - { - "model": "gtfs.route", - "pk": 1, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "agency_id": "bUCR", - "route_short_name": "bUCR L1", - "route_long_name": "Bus interno UCR sin milla", - "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, y no incluye la vuelta por la milla universitaria.", - "route_type": 3, - "route_url": "https://bus.ucr.ac.cr/#L1", - "route_color": "00C0F3", - "route_text_color": "FFFFFF", - "route_sort_order": null - } - }, - { - "model": "gtfs.route", - "pk": 2, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "agency_id": "bUCR", - "route_short_name": "bUCR L2", - "route_long_name": "Bus interno UCR con milla", - "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, e incluye la vuelta por la milla universitaria.", - "route_type": 3, - "route_url": "https://bus.ucr.ac.cr/#L2", - "route_color": "005DA4", - "route_text_color": "FFFFFF", - "route_sort_order": null - } - }, - { - "model": "gtfs.stop", - "pk": 1, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_01", - "stop_code": "", - "stop_name": "Facultad de Educación", - "stop_desc": "Frente al jardín de la Facultad de Educación (FE)", - "stop_lat": 9.935610136323218, - "stop_lon": -84.04899295728595, - "stop_point": "SRID=4326;POINT (-84.04899295728595 9.935610136323218)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 2, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_02", - "stop_code": "", - "stop_name": "Escuela de Artes Plásticas", - "stop_desc": "Nuevo edificio de la Escuela de Artes Plásticas (EAP)", - "stop_lat": 9.935501598287884, - "stop_lon": -84.05217559901489, - "stop_point": "SRID=4326;POINT (-84.05217559901489 9.935501598287884)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 3, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_03", - "stop_code": "", - "stop_name": "Biblioteca de Ciencias de la Salud", - "stop_desc": "Frente al antiguo edificio de la Facultad de Odontología (FOd), diagonal al parqueo de la Biblioteca de Ciencias de la Salud", - "stop_lat": 9.93860832346218, - "stop_lon": -84.0517499001992, - "stop_point": "SRID=4326;POINT (-84.0517499001992 9.93860832346218)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 4, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_04", - "stop_code": "", - "stop_name": "Facultad de Microbiología", - "stop_desc": "Esquina noreste del parqueo de las Escuelas de Artes Musicales (EAM), Química (EQ) y Biología (EB) y la Facultad de Microbiología (FMic)", - "stop_lat": 9.93832361909286, - "stop_lon": -84.04876049840074, - "stop_point": "SRID=4326;POINT (-84.04876049840074 9.93832361909286 )", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 5, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_05", - "stop_code": "", - "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME)", - "stop_lat": 9.935903915437937, - "stop_lon": -84.04537504744147, - "stop_point": "SRID=4326;POINT (-84.04537504744147 9.935903915437937)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_LA", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 6, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_06", - "stop_code": "", - "stop_name": "Facultad de Ingeniería", - "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI)", - "stop_lat": 9.937467311441509, - "stop_lon": -84.04467644300775, - "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_FI", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 7, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_07", - "stop_code": "", - "stop_name": "Facultad de Ciencias Sociales", - "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", - "stop_lat": 9.938029607676915, - "stop_lon": -84.04237892478906, - "stop_point": "SRID=4326;POINT (-84.04237892478906 9.938029607676915)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_CS", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 8, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_08", - "stop_code": "", - "stop_name": "Instituto de Investigación en Educación (INIE)", - "stop_desc": "Costado sur del edificio del Instituto de Investigación en Educación (INIE)", - "stop_lat": 9.939451647823136, - "stop_lon": -84.04307776266035, - "stop_point": "SRID=4326;POINT (-84.04307776266035 9.939451647823137)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 9, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_09", - "stop_code": "", - "stop_name": "Centro de Investigación en Cirugía y Cáncer (CICICA)", - "stop_desc": "Costado sur del edificio del Centro de Investigación en Cirugía y Cáncer (CICICA)", - "stop_lat": 9.940155168862551, - "stop_lon": -84.04450675690296, - "stop_point": "SRID=4326;POINT (-84.04450675690296 9.940155168862551)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 10, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_10", - "stop_code": "", - "stop_name": "Oficina de Bienestar y Salud (OBS)", - "stop_desc": "Entre el nuevo edificio de la Oficina de Bienestar y Salud (OBS) y el Estadio Ecológico", - "stop_lat": 9.943761220391433, - "stop_lon": -84.04468346245407, - "stop_point": "SRID=4326;POINT (-84.04468346245408 9.943761220391434)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 11, - "fields": { - "feed": "1", - "stop_id": "bUCR_0_11", - "stop_code": "", - "stop_name": "Facultad de Odontología", - "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", - "stop_lat": 9.946441050827923, - "stop_lon": -84.0451915613564, - "stop_point": "SRID=4326;POINT (-84.0451915613564 9.946441050827925)", - "zone_id": "bUCR_0", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 12, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_01", - "stop_code": "", - "stop_name": "Facultad de Odontología", - "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", - "stop_lat": 9.946529500847424, - "stop_lon": -84.04535458313804, - "stop_point": "SRID=4326;POINT (-84.04535458313804 9.946529500847424)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 13, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_02", - "stop_code": "", - "stop_name": "Escuela de Educación Física y Deportes (EDUFI)", - "stop_desc": "Costado este de las canchas multiuso y de la Escuela de Educación Física y Deportes (EDUFI)", - "stop_lat": 9.943381444081362, - "stop_lon": -84.04495180739714, - "stop_point": "SRID=4326;POINT (-84.04495180739714 9.943381444081362)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 14, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_03", - "stop_code": "", - "stop_name": "Escuela de Nutrición", - "stop_desc": "Esquina noreste del edificio de la Escuela de Nutrición (ENu)", - "stop_lat": 9.939134591559856, - "stop_lon": -84.04468654565294, - "stop_point": "SRID=4326;POINT (-84.04468654565294 9.939134591559855)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 15, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_04", - "stop_code": "", - "stop_name": "Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", - "stop_desc": "Entre el edificio de parqueos y el Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", - "stop_lat": 9.938980381389706, - "stop_lon": -84.0436758508172, - "stop_point": "SRID=4326;POINT (-84.0436758508172 9.938980381389706)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 16, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_05", - "stop_code": "", - "stop_name": "Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", - "stop_desc": "Frente al edificio del Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", - "stop_lat": 9.939472792042086, - "stop_lon": -84.042189216776, - "stop_point": "SRID=4326;POINT (-84.042189216776 9.939472792042086)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 17, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_06", - "stop_code": "", - "stop_name": "Facultad de Ciencias Sociales", - "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", - "stop_lat": 9.93813052902614, - "stop_lon": -84.04229551510366, - "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_CS", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 18, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_07", - "stop_code": "", - "stop_name": "Facultad de Ingeniería", - "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI), al otro lado de la calle", - "stop_lat": 9.937468669419962, - "stop_lon": -84.04501822768842, - "stop_point": "SRID=4326;POINT (-84.04501822768842 9.937468669419962)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_FI", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 19, - "fields": { - "feed": "1", - "stop_id": "bUCR_1_08", - "stop_code": "", - "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME), al otro lado de la calle", - "stop_lat": 9.93589305371453, - "stop_lon": -84.04546950911886, - "stop_point": "SRID=4326;POINT (-84.04546950911886 9.93589305371453)", - "zone_id": "bUCR_1", - "stop_url": "", - "location_type": 0, - "parent_station": "bUCR_LA", - "stop_timezone": "", - "wheelchair_boarding": 2, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 20, - "fields": { - "feed": "1", - "stop_id": "bUCR_FI", - "stop_code": "", - "stop_name": "Facultad de Ingeniería", - "stop_desc": "En las inmediaciones del edificio de la Facultad de Ingeniería", - "stop_lat": 9.937467311441509, - "stop_lon": -84.04467644300775, - "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", - "zone_id": "", - "stop_url": "", - "location_type": 1, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 21, - "fields": { - "feed": "1", - "stop_id": "bUCR_CS", - "stop_code": "", - "stop_name": "Facultad de Ciencias Sociales", - "stop_desc": "En las inmediaciones del edificio de la Facultad de Ciencias Sociales", - "stop_lat": 9.93813052902614, - "stop_lon": -84.04229551510366, - "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", - "zone_id": "", - "stop_url": "", - "location_type": 1, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.stop", - "pk": 22, - "fields": { - "feed": "1", - "stop_id": "bUCR_LA", - "stop_code": "", - "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_desc": "En las inmediaciones del Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", - "stop_lat": 9.935785141707278, - "stop_lon": -84.04544067497328, - "stop_point": "SRID=4326;POINT (-84.04544067497328 9.935785141707278)", - "zone_id": "", - "stop_url": "", - "location_type": 1, - "parent_station": "", - "stop_timezone": "", - "wheelchair_boarding": 1, - "platform_code": "" - } - }, - { - "model": "gtfs.trip", - "pk": 1, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 2, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 3, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 4, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 5, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 6, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 7, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 8, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 9, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 10, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 11, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 12, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 13, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 14, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 15, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 16, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 17, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 18, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 19, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 20, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 21, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 22, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 23, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 24, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 25, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 26, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 27, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 28, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 29, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 30, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 31, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_sin_milla", - "geoshape": 1, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 32, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 33, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 34, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 35, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 36, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_educacion_con_milla", - "geoshape": 2, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 37, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 38, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 39, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 40, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 41, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 42, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 43, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 44, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 45, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 46, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 47, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 48, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 49, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 50, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 51, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 52, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 53, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 54, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 55, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 56, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 57, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 58, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 59, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 60, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 61, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 62, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 63, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 64, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 65, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_sin_milla", - "geoshape": 3, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 66, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_con_milla", - "geoshape": 4, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 67, - "fields": { - "feed": "1", - "route_id": "bUCR_L2", - "service_id": "entresemana", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "trip_headsign": "Deportivas", - "trip_short_name": "", - "direction_id": 0, - "block_id": "", - "shape_id": "desde_artes_con_milla", - "geoshape": 4, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 68, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_06:20", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 69, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_06:40", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 70, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_06:50", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 71, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_07:00", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 72, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_07:10", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 73, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_07:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 74, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_07:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 75, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_07:50", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 76, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_08:00", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 77, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_08:35", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 78, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_08:45", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 79, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_08:55", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 80, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_09:05", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 81, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_09:25", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 82, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_09:35", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 83, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_09:45", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 84, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_09:55", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 85, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_10:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 86, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_10:25", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 87, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_10:35", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 88, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_10:45", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 89, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_11:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 90, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_11:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 91, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_11:20", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 92, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_11:30", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 93, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_11:40", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 94, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_11:50", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 95, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_12:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 96, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_12:10", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 97, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_12:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 98, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_12:25", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 99, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_12:50", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 100, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_13:00", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 101, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_13:25", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 102, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_13:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 103, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_13:50", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 104, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_14:00", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 105, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_14:10", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 106, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_14:25", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 107, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_14:35", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 108, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_14:45", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 109, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_14:55", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 110, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_15:10", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 111, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_15:20", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 112, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_15:30", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 113, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_16:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 114, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_16:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 115, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_16:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 116, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_16:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 117, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_17:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 118, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_17:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 119, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_17:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 120, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_17:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 121, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_18:05", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 122, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_18:15", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 123, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_18:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 124, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_18:40", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 125, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_18:55", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 126, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_19:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 127, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_artes_entresemana_19:50", - "trip_headsign": "Artes Plásticas", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_artes", - "geoshape": 5, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 128, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_20:30", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 129, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_20:40", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.trip", - "pk": 130, - "fields": { - "feed": "1", - "route_id": "bUCR_L1", - "service_id": "entresemana", - "trip_id": "hacia_educacion_entresemana_21:15", - "trip_headsign": "Educación", - "trip_short_name": "", - "direction_id": 1, - "block_id": "", - "shape_id": "hacia_educacion", - "geoshape": 6, - "wheelchair_accessible": 0, - "bikes_allowed": 2 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:10:00", - "departure_time": "06:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 2, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:18:28.582000", - "departure_time": "06:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 3, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:19:45.164000", - "departure_time": "06:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 4, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:21:14.182000", - "departure_time": "06:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 5, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:24:18.764000", - "departure_time": "06:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 6, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:25:23.564000", - "departure_time": "06:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 7, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:28:20.291000", - "departure_time": "06:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 8, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:10", - "arrival_time": "06:30:34.145000", - "departure_time": "06:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 9, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:30:00", - "departure_time": "06:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 10, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:38:28.582000", - "departure_time": "06:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 11, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:39:45.164000", - "departure_time": "06:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 12, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:41:14.182000", - "departure_time": "06:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 13, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:44:18.764000", - "departure_time": "06:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 14, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:45:23.564000", - "departure_time": "06:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 15, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:48:20.291000", - "departure_time": "06:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 16, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_06:30", - "arrival_time": "06:50:34.145000", - "departure_time": "06:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 17, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:00:00", - "departure_time": "07:00:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 18, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:08:28.582000", - "departure_time": "07:08:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 19, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:09:45.164000", - "departure_time": "07:09:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 20, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:11:14.182000", - "departure_time": "07:11:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 21, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:14:18.764000", - "departure_time": "07:14:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 22, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:15:23.564000", - "departure_time": "07:15:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 23, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:18:20.291000", - "departure_time": "07:18:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 24, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:00", - "arrival_time": "07:20:34.145000", - "departure_time": "07:20:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 25, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:20:00", - "departure_time": "07:20:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 26, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:28:28.582000", - "departure_time": "07:28:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 27, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:29:45.164000", - "departure_time": "07:29:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 28, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:31:14.182000", - "departure_time": "07:31:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 29, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:34:18.764000", - "departure_time": "07:34:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 30, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:35:23.564000", - "departure_time": "07:35:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 31, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:38:20.291000", - "departure_time": "07:38:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 32, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:20", - "arrival_time": "07:40:34.145000", - "departure_time": "07:40:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 33, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "07:50:00", - "departure_time": "07:50:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 34, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "07:58:28.582000", - "departure_time": "07:58:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 35, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "07:59:45.164000", - "departure_time": "07:59:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 36, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:01:14.182000", - "departure_time": "08:01:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 37, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:04:18.764000", - "departure_time": "08:04:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 38, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:05:23.564000", - "departure_time": "08:05:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 39, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:08:20.291000", - "departure_time": "08:08:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 40, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_07:50", - "arrival_time": "08:10:34.145000", - "departure_time": "08:10:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 41, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:10:00", - "departure_time": "08:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 42, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:18:28.582000", - "departure_time": "08:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 43, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:19:45.164000", - "departure_time": "08:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 44, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:21:14.182000", - "departure_time": "08:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 45, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:24:18.764000", - "departure_time": "08:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 46, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:25:23.564000", - "departure_time": "08:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 47, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:28:20.291000", - "departure_time": "08:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 48, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:10", - "arrival_time": "08:30:34.145000", - "departure_time": "08:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 49, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "08:55:00", - "departure_time": "08:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 50, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:03:28.582000", - "departure_time": "09:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 51, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:04:45.164000", - "departure_time": "09:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 52, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:06:14.182000", - "departure_time": "09:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 53, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:09:18.764000", - "departure_time": "09:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 54, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:10:23.564000", - "departure_time": "09:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 55, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:13:20.291000", - "departure_time": "09:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 56, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_08:55", - "arrival_time": "09:15:34.145000", - "departure_time": "09:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 57, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:15:00", - "departure_time": "09:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 58, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:23:28.582000", - "departure_time": "09:23:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 59, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:24:45.164000", - "departure_time": "09:24:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 60, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:26:14.182000", - "departure_time": "09:26:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 61, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:29:18.764000", - "departure_time": "09:29:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 62, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:30:23.564000", - "departure_time": "09:30:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 63, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:33:20.291000", - "departure_time": "09:33:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 64, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:15", - "arrival_time": "09:35:34.145000", - "departure_time": "09:35:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 65, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:45:00", - "departure_time": "09:45:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 66, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:53:28.582000", - "departure_time": "09:53:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 67, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:54:45.164000", - "departure_time": "09:54:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 68, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:56:14.182000", - "departure_time": "09:56:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 69, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "09:59:18.764000", - "departure_time": "09:59:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 70, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "10:00:23.564000", - "departure_time": "10:00:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 71, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "10:03:20.291000", - "departure_time": "10:03:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 72, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_09:45", - "arrival_time": "10:05:34.145000", - "departure_time": "10:05:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 73, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:05:00", - "departure_time": "10:05:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 74, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:13:28.582000", - "departure_time": "10:13:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 75, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:14:45.164000", - "departure_time": "10:14:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 76, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:16:14.182000", - "departure_time": "10:16:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 77, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:19:18.764000", - "departure_time": "10:19:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 78, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:20:23.564000", - "departure_time": "10:20:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 79, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:23:20.291000", - "departure_time": "10:23:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 80, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:05", - "arrival_time": "10:25:34.145000", - "departure_time": "10:25:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 81, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:35:00", - "departure_time": "10:35:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 82, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:43:28.582000", - "departure_time": "10:43:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 83, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:44:45.164000", - "departure_time": "10:44:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 84, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:46:14.182000", - "departure_time": "10:46:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 85, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:49:18.764000", - "departure_time": "10:49:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 86, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:50:23.564000", - "departure_time": "10:50:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 87, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:53:20.291000", - "departure_time": "10:53:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 88, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:35", - "arrival_time": "10:55:34.145000", - "departure_time": "10:55:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 89, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "10:55:00", - "departure_time": "10:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 90, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:03:28.582000", - "departure_time": "11:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 91, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:04:45.164000", - "departure_time": "11:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 92, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:06:14.182000", - "departure_time": "11:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 93, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:09:18.764000", - "departure_time": "11:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 94, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:10:23.564000", - "departure_time": "11:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 95, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:13:20.291000", - "departure_time": "11:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 96, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_10:55", - "arrival_time": "11:15:34.145000", - "departure_time": "11:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 97, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:15:00", - "departure_time": "11:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 98, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:23:28.582000", - "departure_time": "11:23:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 99, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:24:45.164000", - "departure_time": "11:24:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 100, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:26:14.182000", - "departure_time": "11:26:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 101, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:29:18.764000", - "departure_time": "11:29:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 102, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:30:23.564000", - "departure_time": "11:30:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 103, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:33:20.291000", - "departure_time": "11:33:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 104, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:15", - "arrival_time": "11:35:34.145000", - "departure_time": "11:35:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 105, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:25:00", - "departure_time": "11:25:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 106, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:33:28.582000", - "departure_time": "11:33:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 107, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:34:45.164000", - "departure_time": "11:34:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 108, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:36:14.182000", - "departure_time": "11:36:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 109, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:39:18.764000", - "departure_time": "11:39:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 110, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:40:23.564000", - "departure_time": "11:40:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 111, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:43:20.291000", - "departure_time": "11:43:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 112, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:25", - "arrival_time": "11:45:34.145000", - "departure_time": "11:45:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 113, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:40:00", - "departure_time": "11:40:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 114, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:48:28.582000", - "departure_time": "11:48:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 115, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:49:45.164000", - "departure_time": "11:49:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 116, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:51:14.182000", - "departure_time": "11:51:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 117, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:54:18.764000", - "departure_time": "11:54:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 118, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:55:23.564000", - "departure_time": "11:55:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 119, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "11:58:20.291000", - "departure_time": "11:58:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 120, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_11:40", - "arrival_time": "12:00:34.145000", - "departure_time": "12:00:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 121, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:00:00", - "departure_time": "12:00:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 122, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:08:28.582000", - "departure_time": "12:08:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 123, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:09:45.164000", - "departure_time": "12:09:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 124, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:11:14.182000", - "departure_time": "12:11:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 125, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:14:18.764000", - "departure_time": "12:14:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 126, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:15:23.564000", - "departure_time": "12:15:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 127, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:18:20.291000", - "departure_time": "12:18:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 128, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:00", - "arrival_time": "12:20:34.145000", - "departure_time": "12:20:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 129, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:25:00", - "departure_time": "12:25:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 130, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:33:28.582000", - "departure_time": "12:33:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 131, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:34:45.164000", - "departure_time": "12:34:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 132, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:36:14.182000", - "departure_time": "12:36:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 133, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:39:18.764000", - "departure_time": "12:39:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 134, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:40:23.564000", - "departure_time": "12:40:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 135, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:43:20.291000", - "departure_time": "12:43:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 136, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:25", - "arrival_time": "12:45:34.145000", - "departure_time": "12:45:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 137, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:35:00", - "departure_time": "12:35:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 138, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:43:28.582000", - "departure_time": "12:43:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 139, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:44:45.164000", - "departure_time": "12:44:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 140, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:46:14.182000", - "departure_time": "12:46:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 141, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:49:18.764000", - "departure_time": "12:49:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 142, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:50:23.564000", - "departure_time": "12:50:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 143, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:53:20.291000", - "departure_time": "12:53:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 144, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_12:35", - "arrival_time": "12:55:34.145000", - "departure_time": "12:55:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 145, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:10:00", - "departure_time": "13:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 146, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:18:28.582000", - "departure_time": "13:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 147, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:19:45.164000", - "departure_time": "13:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 148, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:21:14.182000", - "departure_time": "13:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 149, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:24:18.764000", - "departure_time": "13:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 150, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:25:23.564000", - "departure_time": "13:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 151, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:28:20.291000", - "departure_time": "13:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 152, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:10", - "arrival_time": "13:30:34.145000", - "departure_time": "13:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 153, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:45:00", - "departure_time": "13:45:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 154, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:53:28.582000", - "departure_time": "13:53:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 155, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:54:45.164000", - "departure_time": "13:54:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 156, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:56:14.182000", - "departure_time": "13:56:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 157, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "13:59:18.764000", - "departure_time": "13:59:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 158, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "14:00:23.564000", - "departure_time": "14:00:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 159, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "14:03:20.291000", - "departure_time": "14:03:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 160, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_13:45", - "arrival_time": "14:05:34.145000", - "departure_time": "14:05:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 161, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:10:00", - "departure_time": "14:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 162, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:18:28.582000", - "departure_time": "14:18:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 163, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:19:45.164000", - "departure_time": "14:19:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 164, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:21:14.182000", - "departure_time": "14:21:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 165, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:24:18.764000", - "departure_time": "14:24:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 166, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:25:23.564000", - "departure_time": "14:25:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 167, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:28:20.291000", - "departure_time": "14:28:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 168, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:10", - "arrival_time": "14:30:34.145000", - "departure_time": "14:30:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 169, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:30:00", - "departure_time": "14:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 170, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:38:28.582000", - "departure_time": "14:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 171, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:39:45.164000", - "departure_time": "14:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 172, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:41:14.182000", - "departure_time": "14:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 173, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:44:18.764000", - "departure_time": "14:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 174, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:45:23.564000", - "departure_time": "14:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 175, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:48:20.291000", - "departure_time": "14:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 176, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:30", - "arrival_time": "14:50:34.145000", - "departure_time": "14:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 177, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "14:55:00", - "departure_time": "14:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 178, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:03:28.582000", - "departure_time": "15:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 179, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:04:45.164000", - "departure_time": "15:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 180, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:06:14.182000", - "departure_time": "15:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 181, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:09:18.764000", - "departure_time": "15:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 182, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:10:23.564000", - "departure_time": "15:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 183, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:13:20.291000", - "departure_time": "15:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 184, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_14:55", - "arrival_time": "15:15:34.145000", - "departure_time": "15:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 185, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:15:00", - "departure_time": "15:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 186, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:23:28.582000", - "departure_time": "15:23:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 187, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:24:45.164000", - "departure_time": "15:24:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 188, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:26:14.182000", - "departure_time": "15:26:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 189, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:29:18.764000", - "departure_time": "15:29:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 190, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:30:23.564000", - "departure_time": "15:30:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 191, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:33:20.291000", - "departure_time": "15:33:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 192, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:15", - "arrival_time": "15:35:34.145000", - "departure_time": "15:35:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 193, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "15:55:00", - "departure_time": "15:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 194, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:03:28.582000", - "departure_time": "16:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 195, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:04:45.164000", - "departure_time": "16:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 196, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:06:14.182000", - "departure_time": "16:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 197, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:09:18.764000", - "departure_time": "16:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 198, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:10:23.564000", - "departure_time": "16:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 199, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:13:20.291000", - "departure_time": "16:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 200, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_15:55", - "arrival_time": "16:15:34.145000", - "departure_time": "16:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 201, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:30:00", - "departure_time": "16:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 202, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:38:28.582000", - "departure_time": "16:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 203, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:39:45.164000", - "departure_time": "16:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 204, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:41:14.182000", - "departure_time": "16:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 205, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:44:18.764000", - "departure_time": "16:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 206, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:45:23.564000", - "departure_time": "16:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 207, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:48:20.291000", - "departure_time": "16:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 208, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:30", - "arrival_time": "16:50:34.145000", - "departure_time": "16:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 209, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "16:55:00", - "departure_time": "16:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 210, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:03:28.582000", - "departure_time": "17:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 211, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:04:45.164000", - "departure_time": "17:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 212, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:06:14.182000", - "departure_time": "17:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 213, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:09:18.764000", - "departure_time": "17:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 214, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:10:23.564000", - "departure_time": "17:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 215, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:13:20.291000", - "departure_time": "17:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 216, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_16:55", - "arrival_time": "17:15:34.145000", - "departure_time": "17:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 217, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:30:00", - "departure_time": "17:30:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 218, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:38:28.582000", - "departure_time": "17:38:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 219, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:39:45.164000", - "departure_time": "17:39:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 220, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:41:14.182000", - "departure_time": "17:41:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 221, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:44:18.764000", - "departure_time": "17:44:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 222, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:45:23.564000", - "departure_time": "17:45:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 223, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:48:20.291000", - "departure_time": "17:48:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 224, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:30", - "arrival_time": "17:50:34.145000", - "departure_time": "17:50:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 225, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "17:55:00", - "departure_time": "17:55:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 226, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:03:28.582000", - "departure_time": "18:03:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 227, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:04:45.164000", - "departure_time": "18:04:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 228, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:06:14.182000", - "departure_time": "18:06:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 229, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:09:18.764000", - "departure_time": "18:09:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 230, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:10:23.564000", - "departure_time": "18:10:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 231, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:13:20.291000", - "departure_time": "18:13:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 232, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_17:55", - "arrival_time": "18:15:34.145000", - "departure_time": "18:15:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 233, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:25:00", - "departure_time": "18:25:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 234, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:33:28.582000", - "departure_time": "18:33:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 235, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:34:45.164000", - "departure_time": "18:34:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 236, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:36:14.182000", - "departure_time": "18:36:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 237, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:39:18.764000", - "departure_time": "18:39:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 238, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:40:23.564000", - "departure_time": "18:40:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 239, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:43:20.291000", - "departure_time": "18:43:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 240, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:25", - "arrival_time": "18:45:34.145000", - "departure_time": "18:45:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 241, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "18:50:00", - "departure_time": "18:50:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 242, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "18:58:28.582000", - "departure_time": "18:58:28.582000", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.554, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 243, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "18:59:45.164000", - "departure_time": "18:59:45.164000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.788, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 244, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:01:14.182000", - "departure_time": "19:01:14.182000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.06, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 245, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:04:18.764000", - "departure_time": "19:04:18.764000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.624, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 246, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:05:23.564000", - "departure_time": "19:05:23.564000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.822, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 247, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:08:20.291000", - "departure_time": "19:08:20.291000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.362, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 248, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_sin_milla_entresemana_18:50", - "arrival_time": "19:10:34.145000", - "departure_time": "19:10:34.145000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.771, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 249, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:15:00", - "departure_time": "19:15:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 250, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:19:22.473000", - "departure_time": "19:19:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 251, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:21:20.945000", - "departure_time": "19:21:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 252, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:26:19.418000", - "departure_time": "19:26:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 253, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:27:36.655000", - "departure_time": "19:27:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 254, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:29:13.200000", - "departure_time": "19:29:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 255, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:32:05.673000", - "departure_time": "19:32:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 256, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:33:10.473000", - "departure_time": "19:33:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 257, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:36:00.982000", - "departure_time": "19:36:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 258, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_19:15", - "arrival_time": "19:38:21.055000", - "departure_time": "19:38:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 259, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:10:00", - "departure_time": "20:10:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 260, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:14:22.473000", - "departure_time": "20:14:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 261, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:16:20.945000", - "departure_time": "20:16:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 262, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:21:19.418000", - "departure_time": "20:21:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 263, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:22:36.655000", - "departure_time": "20:22:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 264, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:24:13.200000", - "departure_time": "20:24:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 265, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:27:05.673000", - "departure_time": "20:27:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 266, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:28:10.473000", - "departure_time": "20:28:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 267, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:31:00.982000", - "departure_time": "20:31:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 268, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:10", - "arrival_time": "20:33:21.055000", - "departure_time": "20:33:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 269, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "20:50:00", - "departure_time": "20:50:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 270, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "20:54:22.473000", - "departure_time": "20:54:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 271, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "20:56:20.945000", - "departure_time": "20:56:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 272, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:01:19.418000", - "departure_time": "21:01:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 273, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:02:36.655000", - "departure_time": "21:02:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 274, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:04:13.200000", - "departure_time": "21:04:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 275, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:07:05.673000", - "departure_time": "21:07:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 276, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:08:10.473000", - "departure_time": "21:08:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 277, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:11:00.982000", - "departure_time": "21:11:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 278, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_20:50", - "arrival_time": "21:13:21.055000", - "departure_time": "21:13:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 279, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:00:00", - "departure_time": "21:00:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 280, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:04:22.473000", - "departure_time": "21:04:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 281, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:06:20.945000", - "departure_time": "21:06:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 282, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:11:19.418000", - "departure_time": "21:11:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 283, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:12:36.655000", - "departure_time": "21:12:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 284, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:14:13.200000", - "departure_time": "21:14:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 285, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:17:05.673000", - "departure_time": "21:17:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 286, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:18:10.473000", - "departure_time": "21:18:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 287, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:21:00.982000", - "departure_time": "21:21:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 288, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:00", - "arrival_time": "21:23:21.055000", - "departure_time": "21:23:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 289, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:35:00", - "departure_time": "21:35:00", - "stop_id": "bUCR_0_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 290, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:39:22.473000", - "departure_time": "21:39:22.473000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.802, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 291, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:41:20.945000", - "departure_time": "21:41:20.945000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.164, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 292, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:46:19.418000", - "departure_time": "21:46:19.418000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.076, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 293, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:47:36.655000", - "departure_time": "21:47:36.655000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.312, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 294, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:49:13.200000", - "departure_time": "21:49:13.200000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.607, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 295, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:52:05.673000", - "departure_time": "21:52:05.673000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.134, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 296, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:53:10.473000", - "departure_time": "21:53:10.473000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.332, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 297, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:56:00.982000", - "departure_time": "21:56:00.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.853, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 298, - "fields": { - "feed": "1", - "trip_id": "desde_educacion_con_milla_entresemana_21:35", - "arrival_time": "21:58:21.055000", - "departure_time": "21:58:21.055000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 4.281, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 299, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:20:00", - "departure_time": "06:20:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 300, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:26:36", - "departure_time": "06:26:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 301, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:27:54.218000", - "departure_time": "06:27:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 302, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:29:32.400000", - "departure_time": "06:29:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 303, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:32:24.545000", - "departure_time": "06:32:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 304, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:33:29.345000", - "departure_time": "06:33:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 305, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:36:13.964000", - "departure_time": "06:36:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 306, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:20", - "arrival_time": "06:38:40.255000", - "departure_time": "06:38:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 307, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:40:00", - "departure_time": "06:40:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 308, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:46:36", - "departure_time": "06:46:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 309, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:47:54.218000", - "departure_time": "06:47:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 310, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:49:32.400000", - "departure_time": "06:49:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 311, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:52:24.545000", - "departure_time": "06:52:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 312, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:53:29.345000", - "departure_time": "06:53:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 313, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:56:13.964000", - "departure_time": "06:56:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 314, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_06:40", - "arrival_time": "06:58:40.255000", - "departure_time": "06:58:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 315, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:10:00", - "departure_time": "07:10:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 316, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:16:36", - "departure_time": "07:16:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 317, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:17:54.218000", - "departure_time": "07:17:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 318, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:19:32.400000", - "departure_time": "07:19:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 319, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:22:24.545000", - "departure_time": "07:22:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 320, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:23:29.345000", - "departure_time": "07:23:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 321, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:26:13.964000", - "departure_time": "07:26:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 322, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:10", - "arrival_time": "07:28:40.255000", - "departure_time": "07:28:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 323, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:30:00", - "departure_time": "07:30:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 324, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:36:36", - "departure_time": "07:36:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 325, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:37:54.218000", - "departure_time": "07:37:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 326, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:39:32.400000", - "departure_time": "07:39:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 327, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:42:24.545000", - "departure_time": "07:42:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 328, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:43:29.345000", - "departure_time": "07:43:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 329, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:46:13.964000", - "departure_time": "07:46:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 330, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_07:30", - "arrival_time": "07:48:40.255000", - "departure_time": "07:48:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 331, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:00:00", - "departure_time": "08:00:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 332, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:06:36", - "departure_time": "08:06:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 333, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:07:54.218000", - "departure_time": "08:07:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 334, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:09:32.400000", - "departure_time": "08:09:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 335, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:12:24.545000", - "departure_time": "08:12:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 336, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:13:29.345000", - "departure_time": "08:13:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 337, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:16:13.964000", - "departure_time": "08:16:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 338, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:00", - "arrival_time": "08:18:40.255000", - "departure_time": "08:18:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 339, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:35:00", - "departure_time": "08:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 340, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:41:36", - "departure_time": "08:41:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 341, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:42:54.218000", - "departure_time": "08:42:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 342, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:44:32.400000", - "departure_time": "08:44:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 343, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:47:24.545000", - "departure_time": "08:47:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 344, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:48:29.345000", - "departure_time": "08:48:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 345, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:51:13.964000", - "departure_time": "08:51:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 346, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_08:35", - "arrival_time": "08:53:40.255000", - "departure_time": "08:53:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 347, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:05:00", - "departure_time": "09:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 348, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:11:36", - "departure_time": "09:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 349, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:12:54.218000", - "departure_time": "09:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 350, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:14:32.400000", - "departure_time": "09:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 351, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:17:24.545000", - "departure_time": "09:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 352, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:18:29.345000", - "departure_time": "09:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 353, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:21:13.964000", - "departure_time": "09:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 354, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:05", - "arrival_time": "09:23:40.255000", - "departure_time": "09:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 355, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:25:00", - "departure_time": "09:25:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 356, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:31:36", - "departure_time": "09:31:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 357, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:32:54.218000", - "departure_time": "09:32:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 358, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:34:32.400000", - "departure_time": "09:34:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 359, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:37:24.545000", - "departure_time": "09:37:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 360, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:38:29.345000", - "departure_time": "09:38:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 361, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:41:13.964000", - "departure_time": "09:41:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 362, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:25", - "arrival_time": "09:43:40.255000", - "departure_time": "09:43:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 363, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "09:55:00", - "departure_time": "09:55:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 364, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:01:36", - "departure_time": "10:01:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 365, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:02:54.218000", - "departure_time": "10:02:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 366, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:04:32.400000", - "departure_time": "10:04:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 367, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:07:24.545000", - "departure_time": "10:07:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 368, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:08:29.345000", - "departure_time": "10:08:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 369, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:11:13.964000", - "departure_time": "10:11:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 370, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_09:55", - "arrival_time": "10:13:40.255000", - "departure_time": "10:13:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 371, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:15:00", - "departure_time": "10:15:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 372, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:21:36", - "departure_time": "10:21:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 373, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:22:54.218000", - "departure_time": "10:22:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 374, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:24:32.400000", - "departure_time": "10:24:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 375, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:27:24.545000", - "departure_time": "10:27:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 376, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:28:29.345000", - "departure_time": "10:28:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 377, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:31:13.964000", - "departure_time": "10:31:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 378, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:15", - "arrival_time": "10:33:40.255000", - "departure_time": "10:33:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 379, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:45:00", - "departure_time": "10:45:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 380, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:51:36", - "departure_time": "10:51:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 381, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:52:54.218000", - "departure_time": "10:52:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 382, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:54:32.400000", - "departure_time": "10:54:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 383, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:57:24.545000", - "departure_time": "10:57:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 384, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "10:58:29.345000", - "departure_time": "10:58:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 385, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "11:01:13.964000", - "departure_time": "11:01:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 386, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_10:45", - "arrival_time": "11:03:40.255000", - "departure_time": "11:03:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 387, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:05:00", - "departure_time": "11:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 388, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:11:36", - "departure_time": "11:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 389, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:12:54.218000", - "departure_time": "11:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 390, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:14:32.400000", - "departure_time": "11:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 391, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:17:24.545000", - "departure_time": "11:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 392, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:18:29.345000", - "departure_time": "11:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 393, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:21:13.964000", - "departure_time": "11:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 394, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:05", - "arrival_time": "11:23:40.255000", - "departure_time": "11:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 395, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:35:00", - "departure_time": "11:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 396, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:41:36", - "departure_time": "11:41:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 397, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:42:54.218000", - "departure_time": "11:42:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 398, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:44:32.400000", - "departure_time": "11:44:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 399, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:47:24.545000", - "departure_time": "11:47:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 400, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:48:29.345000", - "departure_time": "11:48:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 401, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:51:13.964000", - "departure_time": "11:51:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 402, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:35", - "arrival_time": "11:53:40.255000", - "departure_time": "11:53:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 403, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:50:00", - "departure_time": "11:50:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 404, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:56:36", - "departure_time": "11:56:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 405, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:57:54.218000", - "departure_time": "11:57:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 406, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "11:59:32.400000", - "departure_time": "11:59:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 407, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:02:24.545000", - "departure_time": "12:02:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 408, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:03:29.345000", - "departure_time": "12:03:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 409, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:06:13.964000", - "departure_time": "12:06:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 410, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_11:50", - "arrival_time": "12:08:40.255000", - "departure_time": "12:08:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 411, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:10:00", - "departure_time": "12:10:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 412, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:16:36", - "departure_time": "12:16:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 413, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:17:54.218000", - "departure_time": "12:17:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 414, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:19:32.400000", - "departure_time": "12:19:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 415, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:22:24.545000", - "departure_time": "12:22:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 416, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:23:29.345000", - "departure_time": "12:23:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 417, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:26:13.964000", - "departure_time": "12:26:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 418, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:10", - "arrival_time": "12:28:40.255000", - "departure_time": "12:28:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 419, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:30:00", - "departure_time": "12:30:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 420, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:36:36", - "departure_time": "12:36:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 421, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:37:54.218000", - "departure_time": "12:37:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 422, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:39:32.400000", - "departure_time": "12:39:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 423, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:42:24.545000", - "departure_time": "12:42:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 424, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:43:29.345000", - "departure_time": "12:43:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 425, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:46:13.964000", - "departure_time": "12:46:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 426, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:30", - "arrival_time": "12:48:40.255000", - "departure_time": "12:48:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 427, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:45:00", - "departure_time": "12:45:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 428, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:51:36", - "departure_time": "12:51:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 429, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:52:54.218000", - "departure_time": "12:52:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 430, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:54:32.400000", - "departure_time": "12:54:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 431, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:57:24.545000", - "departure_time": "12:57:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 432, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "12:58:29.345000", - "departure_time": "12:58:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 433, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "13:01:13.964000", - "departure_time": "13:01:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 434, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_12:45", - "arrival_time": "13:03:40.255000", - "departure_time": "13:03:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 435, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:20:00", - "departure_time": "13:20:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 436, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:26:36", - "departure_time": "13:26:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 437, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:27:54.218000", - "departure_time": "13:27:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 438, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:29:32.400000", - "departure_time": "13:29:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 439, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:32:24.545000", - "departure_time": "13:32:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 440, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:33:29.345000", - "departure_time": "13:33:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 441, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:36:13.964000", - "departure_time": "13:36:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 442, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_13:20", - "arrival_time": "13:38:40.255000", - "departure_time": "13:38:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 443, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:00:00", - "departure_time": "14:00:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 444, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:06:36", - "departure_time": "14:06:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 445, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:07:54.218000", - "departure_time": "14:07:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 446, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:09:32.400000", - "departure_time": "14:09:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 447, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:12:24.545000", - "departure_time": "14:12:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 448, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:13:29.345000", - "departure_time": "14:13:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 449, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:16:13.964000", - "departure_time": "14:16:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 450, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:00", - "arrival_time": "14:18:40.255000", - "departure_time": "14:18:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 451, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:20:00", - "departure_time": "14:20:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 452, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:26:36", - "departure_time": "14:26:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 453, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:27:54.218000", - "departure_time": "14:27:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 454, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:29:32.400000", - "departure_time": "14:29:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 455, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:32:24.545000", - "departure_time": "14:32:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 456, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:33:29.345000", - "departure_time": "14:33:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 457, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:36:13.964000", - "departure_time": "14:36:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 458, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:20", - "arrival_time": "14:38:40.255000", - "departure_time": "14:38:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 459, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:45:00", - "departure_time": "14:45:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 460, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:51:36", - "departure_time": "14:51:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 461, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:52:54.218000", - "departure_time": "14:52:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 462, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:54:32.400000", - "departure_time": "14:54:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 463, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:57:24.545000", - "departure_time": "14:57:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 464, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "14:58:29.345000", - "departure_time": "14:58:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 465, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "15:01:13.964000", - "departure_time": "15:01:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 466, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_14:45", - "arrival_time": "15:03:40.255000", - "departure_time": "15:03:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 467, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:05:00", - "departure_time": "15:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 468, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:11:36", - "departure_time": "15:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 469, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:12:54.218000", - "departure_time": "15:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 470, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:14:32.400000", - "departure_time": "15:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 471, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:17:24.545000", - "departure_time": "15:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 472, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:18:29.345000", - "departure_time": "15:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 473, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:21:13.964000", - "departure_time": "15:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 474, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:05", - "arrival_time": "15:23:40.255000", - "departure_time": "15:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 475, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:30:00", - "departure_time": "15:30:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 476, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:36:36", - "departure_time": "15:36:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 477, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:37:54.218000", - "departure_time": "15:37:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 478, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:39:32.400000", - "departure_time": "15:39:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 479, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:42:24.545000", - "departure_time": "15:42:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 480, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:43:29.345000", - "departure_time": "15:43:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 481, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:46:13.964000", - "departure_time": "15:46:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 482, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_15:30", - "arrival_time": "15:48:40.255000", - "departure_time": "15:48:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 483, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:05:00", - "departure_time": "16:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 484, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:11:36", - "departure_time": "16:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 485, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:12:54.218000", - "departure_time": "16:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 486, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:14:32.400000", - "departure_time": "16:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 487, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:17:24.545000", - "departure_time": "16:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 488, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:18:29.345000", - "departure_time": "16:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 489, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:21:13.964000", - "departure_time": "16:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 490, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:05", - "arrival_time": "16:23:40.255000", - "departure_time": "16:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 491, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:40:00", - "departure_time": "16:40:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 492, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:46:36", - "departure_time": "16:46:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 493, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:47:54.218000", - "departure_time": "16:47:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 494, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:49:32.400000", - "departure_time": "16:49:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 495, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:52:24.545000", - "departure_time": "16:52:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 496, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:53:29.345000", - "departure_time": "16:53:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 497, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:56:13.964000", - "departure_time": "16:56:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 498, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_16:40", - "arrival_time": "16:58:40.255000", - "departure_time": "16:58:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 499, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:05:00", - "departure_time": "17:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 500, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:11:36", - "departure_time": "17:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 501, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:12:54.218000", - "departure_time": "17:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 502, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:14:32.400000", - "departure_time": "17:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 503, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:17:24.545000", - "departure_time": "17:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 504, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:18:29.345000", - "departure_time": "17:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 505, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:21:13.964000", - "departure_time": "17:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 506, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:05", - "arrival_time": "17:23:40.255000", - "departure_time": "17:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 507, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:40:00", - "departure_time": "17:40:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 508, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:46:36", - "departure_time": "17:46:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 509, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:47:54.218000", - "departure_time": "17:47:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 510, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:49:32.400000", - "departure_time": "17:49:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 511, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:52:24.545000", - "departure_time": "17:52:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 512, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:53:29.345000", - "departure_time": "17:53:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 513, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:56:13.964000", - "departure_time": "17:56:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 514, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_17:40", - "arrival_time": "17:58:40.255000", - "departure_time": "17:58:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 515, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:05:00", - "departure_time": "18:05:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 516, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:11:36", - "departure_time": "18:11:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 517, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:12:54.218000", - "departure_time": "18:12:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 518, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:14:32.400000", - "departure_time": "18:14:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 519, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:17:24.545000", - "departure_time": "18:17:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 520, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:18:29.345000", - "departure_time": "18:18:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 521, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:21:13.964000", - "departure_time": "18:21:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 522, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:05", - "arrival_time": "18:23:40.255000", - "departure_time": "18:23:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 523, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:35:00", - "departure_time": "18:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 524, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:41:36", - "departure_time": "18:41:36", - "stop_id": "bUCR_0_05", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.21, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 525, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:42:54.218000", - "departure_time": "18:42:54.218000", - "stop_id": "bUCR_0_06", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.449, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 526, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:44:32.400000", - "departure_time": "18:44:32.400000", - "stop_id": "bUCR_0_07", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.749, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 527, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:47:24.545000", - "departure_time": "18:47:24.545000", - "stop_id": "bUCR_0_08", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.275, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 528, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:48:29.345000", - "departure_time": "18:48:29.345000", - "stop_id": "bUCR_0_09", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.473, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 529, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:51:13.964000", - "departure_time": "18:51:13.964000", - "stop_id": "bUCR_0_10", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 530, - "fields": { - "feed": "1", - "trip_id": "desde_artes_sin_milla_entresemana_18:35", - "arrival_time": "18:53:40.255000", - "departure_time": "18:53:40.255000", - "stop_id": "bUCR_0_11", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.423, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 531, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:00:00", - "departure_time": "19:00:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 532, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:02:24.327000", - "departure_time": "19:02:24.327000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.441, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 533, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:04:27.382000", - "departure_time": "19:04:27.382000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.817, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 534, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:09:26.182000", - "departure_time": "19:09:26.182000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.73, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 535, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:10:46.691000", - "departure_time": "19:10:46.691000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 536, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:12:19.309000", - "departure_time": "19:12:19.309000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.259, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 537, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:15:11.127000", - "departure_time": "19:15:11.127000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.784, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 538, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:16:16.255000", - "departure_time": "19:16:16.255000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.983, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 539, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:19:12.982000", - "departure_time": "19:19:12.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.523, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 540, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:00", - "arrival_time": "19:21:27.491000", - "departure_time": "19:21:27.491000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.934, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 541, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:35:00", - "departure_time": "19:35:00", - "stop_id": "bUCR_0_02", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 542, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:37:24.327000", - "departure_time": "19:37:24.327000", - "stop_id": "bUCR_0_03", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.441, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 543, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:39:27.382000", - "departure_time": "19:39:27.382000", - "stop_id": "bUCR_0_04", - "stop_sequence": 2, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.817, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 544, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:44:26.182000", - "departure_time": "19:44:26.182000", - "stop_id": "bUCR_0_05", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.73, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 545, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:45:46.691000", - "departure_time": "19:45:46.691000", - "stop_id": "bUCR_0_06", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.976, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 546, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:47:19.309000", - "departure_time": "19:47:19.309000", - "stop_id": "bUCR_0_07", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.259, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 547, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:50:11.127000", - "departure_time": "19:50:11.127000", - "stop_id": "bUCR_0_08", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.784, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 548, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:51:16.255000", - "departure_time": "19:51:16.255000", - "stop_id": "bUCR_0_09", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.983, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 549, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:54:12.982000", - "departure_time": "19:54:12.982000", - "stop_id": "bUCR_0_10", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.523, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 550, - "fields": { - "feed": "1", - "trip_id": "desde_artes_con_milla_entresemana_19:35", - "arrival_time": "19:56:27.491000", - "departure_time": "19:56:27.491000", - "stop_id": "bUCR_0_11", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.934, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 551, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:20:00", - "departure_time": "06:20:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 552, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:24:15.927000", - "departure_time": "06:24:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 553, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:27:27.709000", - "departure_time": "06:27:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 554, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:28:04.691000", - "departure_time": "06:28:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 555, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:29:12.764000", - "departure_time": "06:29:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 556, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:31:29.891000", - "departure_time": "06:31:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 557, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:33:09.709000", - "departure_time": "06:33:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 558, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:34:22.691000", - "departure_time": "06:34:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 559, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:20", - "arrival_time": "06:39:11.673000", - "departure_time": "06:39:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 560, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:40:00", - "departure_time": "06:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 561, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:44:00.873000", - "departure_time": "06:44:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 562, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:47:28.364000", - "departure_time": "06:47:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 563, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:48:12.873000", - "departure_time": "06:48:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 564, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:49:11.127000", - "departure_time": "06:49:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 565, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:51:27.600000", - "departure_time": "06:51:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 566, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:53:11.018000", - "departure_time": "06:53:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 567, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:54:22.364000", - "departure_time": "06:54:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 568, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_06:40", - "arrival_time": "06:57:17.782000", - "departure_time": "06:57:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 569, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:50:00", - "departure_time": "06:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 570, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:54:15.927000", - "departure_time": "06:54:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 571, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:57:27.709000", - "departure_time": "06:57:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 572, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:58:04.691000", - "departure_time": "06:58:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 573, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "06:59:12.764000", - "departure_time": "06:59:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 574, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:01:29.891000", - "departure_time": "07:01:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 575, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:03:09.709000", - "departure_time": "07:03:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 576, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:04:22.691000", - "departure_time": "07:04:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 577, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_06:50", - "arrival_time": "07:09:11.673000", - "departure_time": "07:09:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 578, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:00:00", - "departure_time": "07:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 579, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:04:00.873000", - "departure_time": "07:04:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 580, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:07:28.364000", - "departure_time": "07:07:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 581, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:08:12.873000", - "departure_time": "07:08:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 582, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:09:11.127000", - "departure_time": "07:09:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 583, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:11:27.600000", - "departure_time": "07:11:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 584, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:13:11.018000", - "departure_time": "07:13:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 585, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:14:22.364000", - "departure_time": "07:14:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 586, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:00", - "arrival_time": "07:17:17.782000", - "departure_time": "07:17:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 587, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:10:00", - "departure_time": "07:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 588, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:14:15.927000", - "departure_time": "07:14:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 589, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:17:27.709000", - "departure_time": "07:17:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 590, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:18:04.691000", - "departure_time": "07:18:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 591, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:19:12.764000", - "departure_time": "07:19:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 592, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:21:29.891000", - "departure_time": "07:21:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 593, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:23:09.709000", - "departure_time": "07:23:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 594, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:24:22.691000", - "departure_time": "07:24:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 595, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:10", - "arrival_time": "07:29:11.673000", - "departure_time": "07:29:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 596, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:30:00", - "departure_time": "07:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 597, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:34:00.873000", - "departure_time": "07:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 598, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:37:28.364000", - "departure_time": "07:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 599, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:38:12.873000", - "departure_time": "07:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 600, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:39:11.127000", - "departure_time": "07:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 601, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:41:27.600000", - "departure_time": "07:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 602, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:43:11.018000", - "departure_time": "07:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 603, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:44:22.364000", - "departure_time": "07:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 604, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:30", - "arrival_time": "07:47:17.782000", - "departure_time": "07:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 605, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:40:00", - "departure_time": "07:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 606, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:44:15.927000", - "departure_time": "07:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 607, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:47:27.709000", - "departure_time": "07:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 608, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:48:04.691000", - "departure_time": "07:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 609, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:49:12.764000", - "departure_time": "07:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 610, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:51:29.891000", - "departure_time": "07:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 611, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:53:09.709000", - "departure_time": "07:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 612, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:54:22.691000", - "departure_time": "07:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 613, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_07:40", - "arrival_time": "07:59:11.673000", - "departure_time": "07:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 614, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:50:00", - "departure_time": "07:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 615, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:54:00.873000", - "departure_time": "07:54:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 616, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:57:28.364000", - "departure_time": "07:57:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 617, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:58:12.873000", - "departure_time": "07:58:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 618, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "07:59:11.127000", - "departure_time": "07:59:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 619, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:01:27.600000", - "departure_time": "08:01:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 620, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:03:11.018000", - "departure_time": "08:03:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 621, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:04:22.364000", - "departure_time": "08:04:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 622, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_07:50", - "arrival_time": "08:07:17.782000", - "departure_time": "08:07:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 623, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:00:00", - "departure_time": "08:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 624, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:04:15.927000", - "departure_time": "08:04:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 625, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:07:27.709000", - "departure_time": "08:07:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 626, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:08:04.691000", - "departure_time": "08:08:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 627, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:09:12.764000", - "departure_time": "08:09:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 628, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:11:29.891000", - "departure_time": "08:11:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 629, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:13:09.709000", - "departure_time": "08:13:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 630, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:14:22.691000", - "departure_time": "08:14:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 631, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:00", - "arrival_time": "08:19:11.673000", - "departure_time": "08:19:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 632, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:35:00", - "departure_time": "08:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 633, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:39:00.873000", - "departure_time": "08:39:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 634, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:42:28.364000", - "departure_time": "08:42:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 635, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:43:12.873000", - "departure_time": "08:43:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 636, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:44:11.127000", - "departure_time": "08:44:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 637, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:46:27.600000", - "departure_time": "08:46:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 638, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:48:11.018000", - "departure_time": "08:48:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 639, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:49:22.364000", - "departure_time": "08:49:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 640, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:35", - "arrival_time": "08:52:17.782000", - "departure_time": "08:52:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 641, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:45:00", - "departure_time": "08:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 642, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:49:15.927000", - "departure_time": "08:49:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 643, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:52:27.709000", - "departure_time": "08:52:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 644, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:53:04.691000", - "departure_time": "08:53:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 645, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:54:12.764000", - "departure_time": "08:54:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 646, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:56:29.891000", - "departure_time": "08:56:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 647, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:58:09.709000", - "departure_time": "08:58:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 648, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "08:59:22.691000", - "departure_time": "08:59:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 649, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_08:45", - "arrival_time": "09:04:11.673000", - "departure_time": "09:04:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 650, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "08:55:00", - "departure_time": "08:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 651, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "08:59:00.873000", - "departure_time": "08:59:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 652, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:02:28.364000", - "departure_time": "09:02:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 653, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:03:12.873000", - "departure_time": "09:03:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 654, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:04:11.127000", - "departure_time": "09:04:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 655, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:06:27.600000", - "departure_time": "09:06:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 656, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:08:11.018000", - "departure_time": "09:08:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 657, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:09:22.364000", - "departure_time": "09:09:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 658, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_08:55", - "arrival_time": "09:12:17.782000", - "departure_time": "09:12:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 659, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:05:00", - "departure_time": "09:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 660, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:09:15.927000", - "departure_time": "09:09:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 661, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:12:27.709000", - "departure_time": "09:12:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 662, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:13:04.691000", - "departure_time": "09:13:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 663, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:14:12.764000", - "departure_time": "09:14:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 664, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:16:29.891000", - "departure_time": "09:16:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 665, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:18:09.709000", - "departure_time": "09:18:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 666, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:19:22.691000", - "departure_time": "09:19:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 667, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:05", - "arrival_time": "09:24:11.673000", - "departure_time": "09:24:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 668, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:25:00", - "departure_time": "09:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 669, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:29:00.873000", - "departure_time": "09:29:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 670, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:32:28.364000", - "departure_time": "09:32:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 671, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:33:12.873000", - "departure_time": "09:33:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 672, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:34:11.127000", - "departure_time": "09:34:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 673, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:36:27.600000", - "departure_time": "09:36:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 674, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:38:11.018000", - "departure_time": "09:38:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 675, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:39:22.364000", - "departure_time": "09:39:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 676, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:25", - "arrival_time": "09:42:17.782000", - "departure_time": "09:42:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 677, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:35:00", - "departure_time": "09:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 678, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:39:15.927000", - "departure_time": "09:39:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 679, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:42:27.709000", - "departure_time": "09:42:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 680, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:43:04.691000", - "departure_time": "09:43:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 681, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:44:12.764000", - "departure_time": "09:44:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 682, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:46:29.891000", - "departure_time": "09:46:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 683, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:48:09.709000", - "departure_time": "09:48:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 684, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:49:22.691000", - "departure_time": "09:49:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 685, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:35", - "arrival_time": "09:54:11.673000", - "departure_time": "09:54:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 686, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:45:00", - "departure_time": "09:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 687, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:49:00.873000", - "departure_time": "09:49:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 688, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:52:28.364000", - "departure_time": "09:52:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 689, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:53:12.873000", - "departure_time": "09:53:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 690, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:54:11.127000", - "departure_time": "09:54:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 691, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:56:27.600000", - "departure_time": "09:56:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 692, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:58:11.018000", - "departure_time": "09:58:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 693, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "09:59:22.364000", - "departure_time": "09:59:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 694, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_09:45", - "arrival_time": "10:02:17.782000", - "departure_time": "10:02:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 695, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "09:55:00", - "departure_time": "09:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 696, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "09:59:15.927000", - "departure_time": "09:59:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 697, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:02:27.709000", - "departure_time": "10:02:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 698, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:03:04.691000", - "departure_time": "10:03:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 699, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:04:12.764000", - "departure_time": "10:04:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 700, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:06:29.891000", - "departure_time": "10:06:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 701, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:08:09.709000", - "departure_time": "10:08:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 702, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:09:22.691000", - "departure_time": "10:09:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 703, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_09:55", - "arrival_time": "10:14:11.673000", - "departure_time": "10:14:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 704, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:15:00", - "departure_time": "10:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 705, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:19:00.873000", - "departure_time": "10:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 706, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:22:28.364000", - "departure_time": "10:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 707, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:23:12.873000", - "departure_time": "10:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 708, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:24:11.127000", - "departure_time": "10:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 709, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:26:27.600000", - "departure_time": "10:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 710, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:28:11.018000", - "departure_time": "10:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 711, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:29:22.364000", - "departure_time": "10:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 712, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:15", - "arrival_time": "10:32:17.782000", - "departure_time": "10:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 713, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:25:00", - "departure_time": "10:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 714, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:29:15.927000", - "departure_time": "10:29:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 715, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:32:27.709000", - "departure_time": "10:32:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 716, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:33:04.691000", - "departure_time": "10:33:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 717, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:34:12.764000", - "departure_time": "10:34:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 718, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:36:29.891000", - "departure_time": "10:36:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 719, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:38:09.709000", - "departure_time": "10:38:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 720, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:39:22.691000", - "departure_time": "10:39:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 721, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:25", - "arrival_time": "10:44:11.673000", - "departure_time": "10:44:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 722, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:35:00", - "departure_time": "10:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 723, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:39:00.873000", - "departure_time": "10:39:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 724, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:42:28.364000", - "departure_time": "10:42:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 725, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:43:12.873000", - "departure_time": "10:43:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 726, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:44:11.127000", - "departure_time": "10:44:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 727, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:46:27.600000", - "departure_time": "10:46:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 728, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:48:11.018000", - "departure_time": "10:48:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 729, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:49:22.364000", - "departure_time": "10:49:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 730, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_10:35", - "arrival_time": "10:52:17.782000", - "departure_time": "10:52:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 731, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:45:00", - "departure_time": "10:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 732, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:49:15.927000", - "departure_time": "10:49:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 733, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:52:27.709000", - "departure_time": "10:52:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 734, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:53:04.691000", - "departure_time": "10:53:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 735, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:54:12.764000", - "departure_time": "10:54:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 736, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:56:29.891000", - "departure_time": "10:56:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 737, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:58:09.709000", - "departure_time": "10:58:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 738, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "10:59:22.691000", - "departure_time": "10:59:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 739, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_10:45", - "arrival_time": "11:04:11.673000", - "departure_time": "11:04:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 740, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:05:00", - "departure_time": "11:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 741, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:09:00.873000", - "departure_time": "11:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 742, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:12:28.364000", - "departure_time": "11:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 743, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:13:12.873000", - "departure_time": "11:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 744, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:14:11.127000", - "departure_time": "11:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 745, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:16:27.600000", - "departure_time": "11:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 746, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:18:11.018000", - "departure_time": "11:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 747, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:19:22.364000", - "departure_time": "11:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 748, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:05", - "arrival_time": "11:22:17.782000", - "departure_time": "11:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 749, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:15:00", - "departure_time": "11:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 750, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:19:15.927000", - "departure_time": "11:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 751, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:22:27.709000", - "departure_time": "11:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 752, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:23:04.691000", - "departure_time": "11:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 753, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:24:12.764000", - "departure_time": "11:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 754, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:26:29.891000", - "departure_time": "11:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 755, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:28:09.709000", - "departure_time": "11:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 756, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:29:22.691000", - "departure_time": "11:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 757, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:15", - "arrival_time": "11:34:11.673000", - "departure_time": "11:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 758, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:20:00", - "departure_time": "11:20:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 759, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:24:00.873000", - "departure_time": "11:24:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 760, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:27:28.364000", - "departure_time": "11:27:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 761, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:28:12.873000", - "departure_time": "11:28:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 762, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:29:11.127000", - "departure_time": "11:29:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 763, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:31:27.600000", - "departure_time": "11:31:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 764, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:33:11.018000", - "departure_time": "11:33:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 765, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:34:22.364000", - "departure_time": "11:34:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 766, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:20", - "arrival_time": "11:37:17.782000", - "departure_time": "11:37:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 767, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:30:00", - "departure_time": "11:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 768, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:34:15.927000", - "departure_time": "11:34:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 769, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:37:27.709000", - "departure_time": "11:37:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 770, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:38:04.691000", - "departure_time": "11:38:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 771, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:39:12.764000", - "departure_time": "11:39:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 772, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:41:29.891000", - "departure_time": "11:41:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 773, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:43:09.709000", - "departure_time": "11:43:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 774, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:44:22.691000", - "departure_time": "11:44:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 775, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:30", - "arrival_time": "11:49:11.673000", - "departure_time": "11:49:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 776, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:40:00", - "departure_time": "11:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 777, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:44:00.873000", - "departure_time": "11:44:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 778, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:47:28.364000", - "departure_time": "11:47:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 779, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:48:12.873000", - "departure_time": "11:48:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 780, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:49:11.127000", - "departure_time": "11:49:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 781, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:51:27.600000", - "departure_time": "11:51:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 782, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:53:11.018000", - "departure_time": "11:53:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 783, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:54:22.364000", - "departure_time": "11:54:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 784, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_11:40", - "arrival_time": "11:57:17.782000", - "departure_time": "11:57:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 785, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:50:00", - "departure_time": "11:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 786, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:54:15.927000", - "departure_time": "11:54:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 787, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:57:27.709000", - "departure_time": "11:57:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 788, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:58:04.691000", - "departure_time": "11:58:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 789, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "11:59:12.764000", - "departure_time": "11:59:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 790, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:01:29.891000", - "departure_time": "12:01:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 791, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:03:09.709000", - "departure_time": "12:03:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 792, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:04:22.691000", - "departure_time": "12:04:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 793, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_11:50", - "arrival_time": "12:09:11.673000", - "departure_time": "12:09:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 794, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:05:00", - "departure_time": "12:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 795, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:09:00.873000", - "departure_time": "12:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 796, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:12:28.364000", - "departure_time": "12:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 797, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:13:12.873000", - "departure_time": "12:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 798, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:14:11.127000", - "departure_time": "12:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 799, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:16:27.600000", - "departure_time": "12:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 800, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:18:11.018000", - "departure_time": "12:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 801, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:19:22.364000", - "departure_time": "12:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 802, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:05", - "arrival_time": "12:22:17.782000", - "departure_time": "12:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 803, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:10:00", - "departure_time": "12:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 804, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:14:15.927000", - "departure_time": "12:14:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 805, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:17:27.709000", - "departure_time": "12:17:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 806, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:18:04.691000", - "departure_time": "12:18:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 807, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:19:12.764000", - "departure_time": "12:19:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 808, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:21:29.891000", - "departure_time": "12:21:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 809, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:23:09.709000", - "departure_time": "12:23:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 810, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:24:22.691000", - "departure_time": "12:24:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 811, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:10", - "arrival_time": "12:29:11.673000", - "departure_time": "12:29:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 812, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:15:00", - "departure_time": "12:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 813, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:19:00.873000", - "departure_time": "12:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 814, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:22:28.364000", - "departure_time": "12:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 815, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:23:12.873000", - "departure_time": "12:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 816, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:24:11.127000", - "departure_time": "12:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 817, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:26:27.600000", - "departure_time": "12:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 818, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:28:11.018000", - "departure_time": "12:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 819, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:29:22.364000", - "departure_time": "12:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 820, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:15", - "arrival_time": "12:32:17.782000", - "departure_time": "12:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 821, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:25:00", - "departure_time": "12:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 822, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:29:15.927000", - "departure_time": "12:29:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 823, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:32:27.709000", - "departure_time": "12:32:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 824, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:33:04.691000", - "departure_time": "12:33:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 825, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:34:12.764000", - "departure_time": "12:34:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 826, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:36:29.891000", - "departure_time": "12:36:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 827, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:38:09.709000", - "departure_time": "12:38:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 828, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:39:22.691000", - "departure_time": "12:39:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 829, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_12:25", - "arrival_time": "12:44:11.673000", - "departure_time": "12:44:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 830, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:50:00", - "departure_time": "12:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 831, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:54:00.873000", - "departure_time": "12:54:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 832, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:57:28.364000", - "departure_time": "12:57:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 833, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:58:12.873000", - "departure_time": "12:58:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 834, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "12:59:11.127000", - "departure_time": "12:59:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 835, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:01:27.600000", - "departure_time": "13:01:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 836, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:03:11.018000", - "departure_time": "13:03:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 837, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:04:22.364000", - "departure_time": "13:04:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 838, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_12:50", - "arrival_time": "13:07:17.782000", - "departure_time": "13:07:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 839, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:00:00", - "departure_time": "13:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 840, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:04:15.927000", - "departure_time": "13:04:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 841, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:07:27.709000", - "departure_time": "13:07:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 842, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:08:04.691000", - "departure_time": "13:08:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 843, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:09:12.764000", - "departure_time": "13:09:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 844, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:11:29.891000", - "departure_time": "13:11:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 845, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:13:09.709000", - "departure_time": "13:13:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 846, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:14:22.691000", - "departure_time": "13:14:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 847, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:00", - "arrival_time": "13:19:11.673000", - "departure_time": "13:19:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 848, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:25:00", - "departure_time": "13:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 849, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:29:00.873000", - "departure_time": "13:29:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 850, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:32:28.364000", - "departure_time": "13:32:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 851, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:33:12.873000", - "departure_time": "13:33:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 852, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:34:11.127000", - "departure_time": "13:34:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 853, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:36:27.600000", - "departure_time": "13:36:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 854, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:38:11.018000", - "departure_time": "13:38:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 855, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:39:22.364000", - "departure_time": "13:39:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 856, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:25", - "arrival_time": "13:42:17.782000", - "departure_time": "13:42:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 857, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:40:00", - "departure_time": "13:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 858, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:44:15.927000", - "departure_time": "13:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 859, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:47:27.709000", - "departure_time": "13:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 860, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:48:04.691000", - "departure_time": "13:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 861, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:49:12.764000", - "departure_time": "13:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 862, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:51:29.891000", - "departure_time": "13:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 863, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:53:09.709000", - "departure_time": "13:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 864, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:54:22.691000", - "departure_time": "13:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 865, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_13:40", - "arrival_time": "13:59:11.673000", - "departure_time": "13:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 866, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:50:00", - "departure_time": "13:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 867, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:54:00.873000", - "departure_time": "13:54:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 868, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:57:28.364000", - "departure_time": "13:57:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 869, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:58:12.873000", - "departure_time": "13:58:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 870, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "13:59:11.127000", - "departure_time": "13:59:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 871, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:01:27.600000", - "departure_time": "14:01:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 872, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:03:11.018000", - "departure_time": "14:03:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 873, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:04:22.364000", - "departure_time": "14:04:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 874, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_13:50", - "arrival_time": "14:07:17.782000", - "departure_time": "14:07:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 875, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:00:00", - "departure_time": "14:00:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 876, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:04:15.927000", - "departure_time": "14:04:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 877, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:07:27.709000", - "departure_time": "14:07:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 878, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:08:04.691000", - "departure_time": "14:08:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 879, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:09:12.764000", - "departure_time": "14:09:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 880, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:11:29.891000", - "departure_time": "14:11:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 881, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:13:09.709000", - "departure_time": "14:13:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 882, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:14:22.691000", - "departure_time": "14:14:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 883, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:00", - "arrival_time": "14:19:11.673000", - "departure_time": "14:19:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 884, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:10:00", - "departure_time": "14:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 885, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:14:00.873000", - "departure_time": "14:14:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 886, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:17:28.364000", - "departure_time": "14:17:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 887, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:18:12.873000", - "departure_time": "14:18:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 888, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:19:11.127000", - "departure_time": "14:19:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 889, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:21:27.600000", - "departure_time": "14:21:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 890, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:23:11.018000", - "departure_time": "14:23:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 891, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:24:22.364000", - "departure_time": "14:24:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 892, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:10", - "arrival_time": "14:27:17.782000", - "departure_time": "14:27:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 893, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:25:00", - "departure_time": "14:25:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 894, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:29:15.927000", - "departure_time": "14:29:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 895, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:32:27.709000", - "departure_time": "14:32:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 896, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:33:04.691000", - "departure_time": "14:33:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 897, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:34:12.764000", - "departure_time": "14:34:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 898, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:36:29.891000", - "departure_time": "14:36:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 899, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:38:09.709000", - "departure_time": "14:38:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 900, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:39:22.691000", - "departure_time": "14:39:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 901, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:25", - "arrival_time": "14:44:11.673000", - "departure_time": "14:44:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 902, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:35:00", - "departure_time": "14:35:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 903, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:39:00.873000", - "departure_time": "14:39:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 904, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:42:28.364000", - "departure_time": "14:42:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 905, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:43:12.873000", - "departure_time": "14:43:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 906, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:44:11.127000", - "departure_time": "14:44:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 907, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:46:27.600000", - "departure_time": "14:46:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 908, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:48:11.018000", - "departure_time": "14:48:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 909, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:49:22.364000", - "departure_time": "14:49:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 910, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:35", - "arrival_time": "14:52:17.782000", - "departure_time": "14:52:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 911, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:45:00", - "departure_time": "14:45:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 912, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:49:15.927000", - "departure_time": "14:49:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 913, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:52:27.709000", - "departure_time": "14:52:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 914, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:53:04.691000", - "departure_time": "14:53:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 915, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:54:12.764000", - "departure_time": "14:54:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 916, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:56:29.891000", - "departure_time": "14:56:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 917, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:58:09.709000", - "departure_time": "14:58:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 918, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "14:59:22.691000", - "departure_time": "14:59:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 919, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_14:45", - "arrival_time": "15:04:11.673000", - "departure_time": "15:04:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 920, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "14:55:00", - "departure_time": "14:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 921, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "14:59:00.873000", - "departure_time": "14:59:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 922, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:02:28.364000", - "departure_time": "15:02:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 923, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:03:12.873000", - "departure_time": "15:03:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 924, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:04:11.127000", - "departure_time": "15:04:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 925, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:06:27.600000", - "departure_time": "15:06:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 926, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:08:11.018000", - "departure_time": "15:08:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 927, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:09:22.364000", - "departure_time": "15:09:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 928, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_14:55", - "arrival_time": "15:12:17.782000", - "departure_time": "15:12:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 929, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:10:00", - "departure_time": "15:10:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 930, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:14:15.927000", - "departure_time": "15:14:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 931, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:17:27.709000", - "departure_time": "15:17:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 932, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:18:04.691000", - "departure_time": "15:18:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 933, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:19:12.764000", - "departure_time": "15:19:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 934, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:21:29.891000", - "departure_time": "15:21:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 935, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:23:09.709000", - "departure_time": "15:23:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 936, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:24:22.691000", - "departure_time": "15:24:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 937, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:10", - "arrival_time": "15:29:11.673000", - "departure_time": "15:29:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 938, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:20:00", - "departure_time": "15:20:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 939, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:24:00.873000", - "departure_time": "15:24:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 940, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:27:28.364000", - "departure_time": "15:27:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 941, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:28:12.873000", - "departure_time": "15:28:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 942, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:29:11.127000", - "departure_time": "15:29:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 943, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:31:27.600000", - "departure_time": "15:31:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 944, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:33:11.018000", - "departure_time": "15:33:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 945, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:34:22.364000", - "departure_time": "15:34:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 946, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_15:20", - "arrival_time": "15:37:17.782000", - "departure_time": "15:37:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 947, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:30:00", - "departure_time": "15:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 948, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:34:15.927000", - "departure_time": "15:34:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 949, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:37:27.709000", - "departure_time": "15:37:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 950, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:38:04.691000", - "departure_time": "15:38:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 951, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:39:12.764000", - "departure_time": "15:39:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 952, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:41:29.891000", - "departure_time": "15:41:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 953, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:43:09.709000", - "departure_time": "15:43:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 954, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:44:22.691000", - "departure_time": "15:44:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 955, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_15:30", - "arrival_time": "15:49:11.673000", - "departure_time": "15:49:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 956, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:05:00", - "departure_time": "16:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 957, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:09:00.873000", - "departure_time": "16:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 958, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:12:28.364000", - "departure_time": "16:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 959, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:13:12.873000", - "departure_time": "16:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 960, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:14:11.127000", - "departure_time": "16:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 961, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:16:27.600000", - "departure_time": "16:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 962, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:18:11.018000", - "departure_time": "16:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 963, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:19:22.364000", - "departure_time": "16:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 964, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:05", - "arrival_time": "16:22:17.782000", - "departure_time": "16:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 965, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:15:00", - "departure_time": "16:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 966, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:19:15.927000", - "departure_time": "16:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 967, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:22:27.709000", - "departure_time": "16:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 968, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:23:04.691000", - "departure_time": "16:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 969, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:24:12.764000", - "departure_time": "16:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 970, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:26:29.891000", - "departure_time": "16:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 971, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:28:09.709000", - "departure_time": "16:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 972, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:29:22.691000", - "departure_time": "16:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 973, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:15", - "arrival_time": "16:34:11.673000", - "departure_time": "16:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 974, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:30:00", - "departure_time": "16:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 975, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:34:00.873000", - "departure_time": "16:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 976, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:37:28.364000", - "departure_time": "16:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 977, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:38:12.873000", - "departure_time": "16:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 978, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:39:11.127000", - "departure_time": "16:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 979, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:41:27.600000", - "departure_time": "16:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 980, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:43:11.018000", - "departure_time": "16:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 981, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:44:22.364000", - "departure_time": "16:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 982, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_16:30", - "arrival_time": "16:47:17.782000", - "departure_time": "16:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 983, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:40:00", - "departure_time": "16:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 984, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:44:15.927000", - "departure_time": "16:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 985, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:47:27.709000", - "departure_time": "16:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 986, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:48:04.691000", - "departure_time": "16:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 987, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:49:12.764000", - "departure_time": "16:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 988, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:51:29.891000", - "departure_time": "16:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 989, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:53:09.709000", - "departure_time": "16:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 990, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:54:22.691000", - "departure_time": "16:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 991, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_16:40", - "arrival_time": "16:59:11.673000", - "departure_time": "16:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 992, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:05:00", - "departure_time": "17:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 993, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:09:00.873000", - "departure_time": "17:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 994, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:12:28.364000", - "departure_time": "17:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 995, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:13:12.873000", - "departure_time": "17:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 996, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:14:11.127000", - "departure_time": "17:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 997, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:16:27.600000", - "departure_time": "17:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 998, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:18:11.018000", - "departure_time": "17:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 999, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:19:22.364000", - "departure_time": "17:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1000, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:05", - "arrival_time": "17:22:17.782000", - "departure_time": "17:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1001, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:15:00", - "departure_time": "17:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1002, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:19:15.927000", - "departure_time": "17:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1003, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:22:27.709000", - "departure_time": "17:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1004, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:23:04.691000", - "departure_time": "17:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1005, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:24:12.764000", - "departure_time": "17:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1006, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:26:29.891000", - "departure_time": "17:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1007, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:28:09.709000", - "departure_time": "17:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1008, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:29:22.691000", - "departure_time": "17:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1009, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:15", - "arrival_time": "17:34:11.673000", - "departure_time": "17:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1010, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:30:00", - "departure_time": "17:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1011, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:34:00.873000", - "departure_time": "17:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1012, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:37:28.364000", - "departure_time": "17:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1013, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:38:12.873000", - "departure_time": "17:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1014, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:39:11.127000", - "departure_time": "17:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1015, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:41:27.600000", - "departure_time": "17:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1016, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:43:11.018000", - "departure_time": "17:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1017, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:44:22.364000", - "departure_time": "17:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1018, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_17:30", - "arrival_time": "17:47:17.782000", - "departure_time": "17:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1019, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:40:00", - "departure_time": "17:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1020, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:44:15.927000", - "departure_time": "17:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1021, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:47:27.709000", - "departure_time": "17:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1022, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:48:04.691000", - "departure_time": "17:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1023, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:49:12.764000", - "departure_time": "17:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1024, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:51:29.891000", - "departure_time": "17:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1025, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:53:09.709000", - "departure_time": "17:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1026, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:54:22.691000", - "departure_time": "17:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1027, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_17:40", - "arrival_time": "17:59:11.673000", - "departure_time": "17:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1028, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:05:00", - "departure_time": "18:05:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1029, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:09:00.873000", - "departure_time": "18:09:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1030, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:12:28.364000", - "departure_time": "18:12:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1031, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:13:12.873000", - "departure_time": "18:13:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1032, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:14:11.127000", - "departure_time": "18:14:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1033, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:16:27.600000", - "departure_time": "18:16:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1034, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:18:11.018000", - "departure_time": "18:18:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1035, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:19:22.364000", - "departure_time": "18:19:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1036, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:05", - "arrival_time": "18:22:17.782000", - "departure_time": "18:22:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1037, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:15:00", - "departure_time": "18:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1038, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:19:15.927000", - "departure_time": "18:19:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1039, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:22:27.709000", - "departure_time": "18:22:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1040, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:23:04.691000", - "departure_time": "18:23:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1041, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:24:12.764000", - "departure_time": "18:24:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1042, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:26:29.891000", - "departure_time": "18:26:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1043, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:28:09.709000", - "departure_time": "18:28:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1044, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:29:22.691000", - "departure_time": "18:29:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1045, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:15", - "arrival_time": "18:34:11.673000", - "departure_time": "18:34:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1046, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:30:00", - "departure_time": "18:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1047, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:34:00.873000", - "departure_time": "18:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1048, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:37:28.364000", - "departure_time": "18:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1049, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:38:12.873000", - "departure_time": "18:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1050, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:39:11.127000", - "departure_time": "18:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1051, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:41:27.600000", - "departure_time": "18:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1052, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:43:11.018000", - "departure_time": "18:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1053, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:44:22.364000", - "departure_time": "18:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1054, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:30", - "arrival_time": "18:47:17.782000", - "departure_time": "18:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1055, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:40:00", - "departure_time": "18:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1056, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:44:15.927000", - "departure_time": "18:44:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1057, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:47:27.709000", - "departure_time": "18:47:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1058, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:48:04.691000", - "departure_time": "18:48:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1059, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:49:12.764000", - "departure_time": "18:49:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1060, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:51:29.891000", - "departure_time": "18:51:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1061, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:53:09.709000", - "departure_time": "18:53:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1062, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:54:22.691000", - "departure_time": "18:54:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1063, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_18:40", - "arrival_time": "18:59:11.673000", - "departure_time": "18:59:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1064, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "18:55:00", - "departure_time": "18:55:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1065, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "18:59:00.873000", - "departure_time": "18:59:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1066, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:02:28.364000", - "departure_time": "19:02:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1067, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:03:12.873000", - "departure_time": "19:03:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1068, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:04:11.127000", - "departure_time": "19:04:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1069, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:06:27.600000", - "departure_time": "19:06:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1070, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:08:11.018000", - "departure_time": "19:08:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1071, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:09:22.364000", - "departure_time": "19:09:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1072, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_18:55", - "arrival_time": "19:12:17.782000", - "departure_time": "19:12:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1073, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:15:00", - "departure_time": "19:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1074, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:19:00.873000", - "departure_time": "19:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1075, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:22:28.364000", - "departure_time": "19:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1076, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:23:12.873000", - "departure_time": "19:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1077, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:24:11.127000", - "departure_time": "19:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1078, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:26:27.600000", - "departure_time": "19:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1079, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:28:11.018000", - "departure_time": "19:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1080, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:29:22.364000", - "departure_time": "19:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1081, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_19:15", - "arrival_time": "19:32:17.782000", - "departure_time": "19:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1082, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:50:00", - "departure_time": "19:50:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1083, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:54:15.927000", - "departure_time": "19:54:15.927000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.782, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1084, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:57:27.709000", - "departure_time": "19:57:27.709000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.368, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1085, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:58:04.691000", - "departure_time": "19:58:04.691000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.481, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1086, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "19:59:12.764000", - "departure_time": "19:59:12.764000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.689, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1087, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:01:29.891000", - "departure_time": "20:01:29.891000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.108, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1088, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:03:09.709000", - "departure_time": "20:03:09.709000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.413, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1089, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:04:22.691000", - "departure_time": "20:04:22.691000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.636, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1090, - "fields": { - "feed": "1", - "trip_id": "hacia_artes_entresemana_19:50", - "arrival_time": "20:09:11.673000", - "departure_time": "20:09:11.673000", - "stop_id": "bUCR_0_02", - "stop_sequence": 10, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.519, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1091, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:30:00", - "departure_time": "20:30:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1092, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:34:00.873000", - "departure_time": "20:34:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1093, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:37:28.364000", - "departure_time": "20:37:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1094, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:38:12.873000", - "departure_time": "20:38:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1095, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:39:11.127000", - "departure_time": "20:39:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1096, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:41:27.600000", - "departure_time": "20:41:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1097, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:43:11.018000", - "departure_time": "20:43:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1098, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:44:22.364000", - "departure_time": "20:44:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1099, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:30", - "arrival_time": "20:47:17.782000", - "departure_time": "20:47:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1100, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:40:00", - "departure_time": "20:40:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1101, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:44:00.873000", - "departure_time": "20:44:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1102, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:47:28.364000", - "departure_time": "20:47:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1103, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:48:12.873000", - "departure_time": "20:48:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1104, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:49:11.127000", - "departure_time": "20:49:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1105, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:51:27.600000", - "departure_time": "20:51:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1106, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:53:11.018000", - "departure_time": "20:53:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1107, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:54:22.364000", - "departure_time": "20:54:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1108, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_20:40", - "arrival_time": "20:57:17.782000", - "departure_time": "20:57:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1109, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:15:00", - "departure_time": "21:15:00", - "stop_id": "bUCR_1_01", - "stop_sequence": 0, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.0, - "timepoint": 1 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1110, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:19:00.873000", - "departure_time": "21:19:00.873000", - "stop_id": "bUCR_1_02", - "stop_sequence": 1, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 0.736, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1111, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:22:28.364000", - "departure_time": "21:22:28.364000", - "stop_id": "bUCR_1_03", - "stop_sequence": 3, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.37, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1112, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:23:12.873000", - "departure_time": "21:23:12.873000", - "stop_id": "bUCR_1_04", - "stop_sequence": 4, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.506, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1113, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:24:11.127000", - "departure_time": "21:24:11.127000", - "stop_id": "bUCR_1_05", - "stop_sequence": 5, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 1.684, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1114, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:26:27.600000", - "departure_time": "21:26:27.600000", - "stop_id": "bUCR_1_06", - "stop_sequence": 6, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.101, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1115, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:28:11.018000", - "departure_time": "21:28:11.018000", - "stop_id": "bUCR_1_07", - "stop_sequence": 7, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.417, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1116, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:29:22.364000", - "departure_time": "21:29:22.364000", - "stop_id": "bUCR_1_08", - "stop_sequence": 8, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 2.635, - "timepoint": 0 - } - }, - { - "model": "gtfs.stoptime", - "pk": 1117, - "fields": { - "feed": "1", - "trip_id": "hacia_educacion_entresemana_21:15", - "arrival_time": "21:32:17.782000", - "departure_time": "21:32:17.782000", - "stop_id": "bUCR_0_01", - "stop_sequence": 9, - "stop_headsign": "", - "pickup_type": 0, - "drop_off_type": 0, - "shape_dist_traveled": 3.171, - "timepoint": 0 - } - }, - { - "model": "gtfs.calendar", - "pk": 1, - "fields": { - "feed": "1", - "service_id": "entresemana", - "monday": 1, - "tuesday": 1, - "wednesday": 1, - "thursday": 1, - "friday": 1, - "saturday": 0, - "sunday": 0, - "start_date": "2024-01-01", - "end_date": "2024-12-31" - } - }, - { - "model": "gtfs.farerule", - "pk": 1, - "fields": { - "feed": "1", - "fare_id": "no_tarifa", - "route_id": "bUCR_L1", - "origin_id": "bUCR_0", - "destination_id": "bUCR_0", - "contains_id": "" - } - }, - { - "model": "gtfs.farerule", - "pk": 2, - "fields": { - "feed": "1", - "fare_id": "no_tarifa", - "route_id": "bUCR_L2", - "origin_id": "bUCR_1", - "destination_id": "bUCR_1", - "contains_id": "" - } - }, - { - "model": "gtfs.fareattribute", - "pk": 1, - "fields": { - "feed": "1", - "fare_id": "no_tarifa", - "price": 0, - "currency_type": "CRC", - "payment_method": 0, - "transfers": 0, - "transfer_duration": null - } - }, - { - "model": "gtfs.shape", - "pk": 1, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93554944029271, - "shape_pt_lon": -84.0491138975951, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "gtfs.shape", - "pk": 2, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9355589010814, - "shape_pt_lon": -84.0491582627979, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.005 - } - }, - { - "model": "gtfs.shape", - "pk": 3, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93557354275506, - "shape_pt_lon": -84.0492241246225, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.012 - } - }, - { - "model": "gtfs.shape", - "pk": 4, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9356000651633, - "shape_pt_lon": -84.049324861376, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.024 - } - }, - { - "model": "gtfs.shape", - "pk": 5, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93563773463719, - "shape_pt_lon": -84.049416778843, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.035 - } - }, - { - "model": "gtfs.shape", - "pk": 6, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93568399531643, - "shape_pt_lon": -84.0495368755472, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "gtfs.shape", - "pk": 7, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93570316048327, - "shape_pt_lon": -84.0495945755631, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.056 - } - }, - { - "model": "gtfs.shape", - "pk": 8, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93571109089738, - "shape_pt_lon": -84.0496871639603, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.066 - } - }, - { - "model": "gtfs.shape", - "pk": 9, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93571292483817, - "shape_pt_lon": -84.0498464474787, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.083 - } - }, - { - "model": "gtfs.shape", - "pk": 10, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93570393244304, - "shape_pt_lon": -84.0500877222699, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.11 - } - }, - { - "model": "gtfs.shape", - "pk": 11, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93566539329337, - "shape_pt_lon": -84.050351168656, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.139 - } - }, - { - "model": "gtfs.shape", - "pk": 12, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93561786205413, - "shape_pt_lon": -84.0505937476355, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.166 - } - }, - { - "model": "gtfs.shape", - "pk": 13, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93556519227529, - "shape_pt_lon": -84.050878060609, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.198 - } - }, - { - "model": "gtfs.shape", - "pk": 14, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93552922267821, - "shape_pt_lon": -84.051108901895, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.223 - } - }, - { - "model": "gtfs.shape", - "pk": 15, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93548169125642, - "shape_pt_lon": -84.0513932152566, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.255 - } - }, - { - "model": "gtfs.shape", - "pk": 16, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93545342942273, - "shape_pt_lon": -84.0516410109878, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.282 - } - }, - { - "model": "gtfs.shape", - "pk": 17, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93544741074256, - "shape_pt_lon": -84.0516943904767, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.288 - } - }, - { - "model": "gtfs.shape", - "pk": 18, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93544700627605, - "shape_pt_lon": -84.051754475488, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.295 - } - }, - { - "model": "gtfs.shape", - "pk": 19, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93546627570862, - "shape_pt_lon": -84.0519579288248, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.317 - } - }, - { - "model": "gtfs.shape", - "pk": 20, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93548939902537, - "shape_pt_lon": -84.052131385837, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.336 - } - }, - { - "model": "gtfs.shape", - "pk": 21, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93550517435119, - "shape_pt_lon": -84.0522239834817, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.347 - } - }, - { - "model": "gtfs.shape", - "pk": 22, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93554618004823, - "shape_pt_lon": -84.0523340057342, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.36 - } - }, - { - "model": "gtfs.shape", - "pk": 23, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93559987797587, - "shape_pt_lon": -84.0523914948391, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.368 - } - }, - { - "model": "gtfs.shape", - "pk": 24, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93565552854654, - "shape_pt_lon": -84.0524281689233, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.376 - } - }, - { - "model": "gtfs.shape", - "pk": 25, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93572094236273, - "shape_pt_lon": -84.0524410544122, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.383 - } - }, - { - "model": "gtfs.shape", - "pk": 26, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93583614886311, - "shape_pt_lon": -84.0524182569563, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.396 - } - }, - { - "model": "gtfs.shape", - "pk": 27, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93603336648931, - "shape_pt_lon": -84.0523528383197, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.419 - } - }, - { - "model": "gtfs.shape", - "pk": 28, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93625691629266, - "shape_pt_lon": -84.0522832947174, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.445 - } - }, - { - "model": "gtfs.shape", - "pk": 29, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93639307154715, - "shape_pt_lon": -84.0522431941422, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.46 - } - }, - { - "model": "gtfs.shape", - "pk": 30, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93653561474882, - "shape_pt_lon": -84.0522372469934, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.476 - } - }, - { - "model": "gtfs.shape", - "pk": 31, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93660005206628, - "shape_pt_lon": -84.0522600443969, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.484 - } - }, - { - "model": "gtfs.shape", - "pk": 32, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93661957852377, - "shape_pt_lon": -84.0523423132888, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.493 - } - }, - { - "model": "gtfs.shape", - "pk": 33, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93659126516027, - "shape_pt_lon": -84.0524275557544, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.503 - } - }, - { - "model": "gtfs.shape", - "pk": 34, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93653854371827, - "shape_pt_lon": -84.0524503531584, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.509 - } - }, - { - "model": "gtfs.shape", - "pk": 35, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93645360359939, - "shape_pt_lon": -84.0524483707755, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.519 - } - }, - { - "model": "gtfs.shape", - "pk": 36, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93636085286962, - "shape_pt_lon": -84.052439450052, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.529 - } - }, - { - "model": "gtfs.shape", - "pk": 37, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93633386047036, - "shape_pt_lon": -84.0524268046992, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.532 - } - }, - { - "model": "gtfs.shape", - "pk": 38, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93630422609543, - "shape_pt_lon": -84.0524265645631, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.535 - } - }, - { - "model": "gtfs.shape", - "pk": 39, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93618120917912, - "shape_pt_lon": -84.0524473794854, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.549 - } - }, - { - "model": "gtfs.shape", - "pk": 40, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93600742368285, - "shape_pt_lon": -84.052484053706, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.569 - } - }, - { - "model": "gtfs.shape", - "pk": 41, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93581118236608, - "shape_pt_lon": -84.0525276661302, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.591 - } - }, - { - "model": "gtfs.shape", - "pk": 42, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93571876163712, - "shape_pt_lon": -84.0525355663096, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.601 - } - }, - { - "model": "gtfs.shape", - "pk": 43, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93563153840537, - "shape_pt_lon": -84.0525177541372, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.611 - } - }, - { - "model": "gtfs.shape", - "pk": 44, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93553310902874, - "shape_pt_lon": -84.0524334735888, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.626 - } - }, - { - "model": "gtfs.shape", - "pk": 45, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93545970504671, - "shape_pt_lon": -84.0523512340121, - "shape_pt_sequence": 44, - "shape_dist_traveled": 0.638 - } - }, - { - "model": "gtfs.shape", - "pk": 46, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93542065199216, - "shape_pt_lon": -84.0522451765253, - "shape_pt_sequence": 45, - "shape_dist_traveled": 0.65 - } - }, - { - "model": "gtfs.shape", - "pk": 47, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93541674668641, - "shape_pt_lon": -84.0521014537632, - "shape_pt_sequence": 46, - "shape_dist_traveled": 0.666 - } - }, - { - "model": "gtfs.shape", - "pk": 48, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93537769362758, - "shape_pt_lon": -84.0518556382803, - "shape_pt_sequence": 47, - "shape_dist_traveled": 0.693 - } - }, - { - "model": "gtfs.shape", - "pk": 49, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93533766423581, - "shape_pt_lon": -84.0515960083744, - "shape_pt_sequence": 48, - "shape_dist_traveled": 0.722 - } - }, - { - "model": "gtfs.shape", - "pk": 50, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93531364398533, - "shape_pt_lon": -84.0515277691646, - "shape_pt_sequence": 49, - "shape_dist_traveled": 0.73 - } - }, - { - "model": "gtfs.shape", - "pk": 51, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93528103728449, - "shape_pt_lon": -84.0514612063353, - "shape_pt_sequence": 50, - "shape_dist_traveled": 0.738 - } - }, - { - "model": "gtfs.shape", - "pk": 52, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93537964636139, - "shape_pt_lon": -84.0510449054667, - "shape_pt_sequence": 51, - "shape_dist_traveled": 0.785 - } - }, - { - "model": "gtfs.shape", - "pk": 53, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93549228868242, - "shape_pt_lon": -84.0506385823758, - "shape_pt_sequence": 52, - "shape_dist_traveled": 0.831 - } - }, - { - "model": "gtfs.shape", - "pk": 54, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93560853450969, - "shape_pt_lon": -84.0501428263958, - "shape_pt_sequence": 53, - "shape_dist_traveled": 0.887 - } - }, - { - "model": "gtfs.shape", - "pk": 55, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93564523227799, - "shape_pt_lon": -84.0499153784661, - "shape_pt_sequence": 54, - "shape_dist_traveled": 0.912 - } - }, - { - "model": "gtfs.shape", - "pk": 56, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9355593156005, - "shape_pt_lon": -84.0495436816674, - "shape_pt_sequence": 55, - "shape_dist_traveled": 0.954 - } - }, - { - "model": "gtfs.shape", - "pk": 57, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93549425099087, - "shape_pt_lon": -84.049203385401, - "shape_pt_sequence": 56, - "shape_dist_traveled": 0.992 - } - }, - { - "model": "gtfs.shape", - "pk": 58, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93539252590615, - "shape_pt_lon": -84.0487850070695, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.039 - } - }, - { - "model": "gtfs.shape", - "pk": 59, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93537592835444, - "shape_pt_lon": -84.0486462402645, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.055 - } - }, - { - "model": "gtfs.shape", - "pk": 60, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93528024833921, - "shape_pt_lon": -84.0486373195414, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.065 - } - }, - { - "model": "gtfs.shape", - "pk": 61, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93529755089066, - "shape_pt_lon": -84.0483824809879, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.093 - } - }, - { - "model": "gtfs.shape", - "pk": 62, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93524885628052, - "shape_pt_lon": -84.048123669054, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.122 - } - }, - { - "model": "gtfs.shape", - "pk": 63, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9351256875275, - "shape_pt_lon": -84.0477514451489, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.165 - } - }, - { - "model": "gtfs.shape", - "pk": 64, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93500538311991, - "shape_pt_lon": -84.0473850372423, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.208 - } - }, - { - "model": "gtfs.shape", - "pk": 65, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93492412702167, - "shape_pt_lon": -84.0470954278149, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.241 - } - }, - { - "model": "gtfs.shape", - "pk": 66, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93480668693231, - "shape_pt_lon": -84.046441127981, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.314 - } - }, - { - "model": "gtfs.shape", - "pk": 67, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93468020166955, - "shape_pt_lon": -84.0458485099908, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.38 - } - }, - { - "model": "gtfs.shape", - "pk": 68, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93461570602311, - "shape_pt_lon": -84.0456145784198, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.407 - } - }, - { - "model": "gtfs.shape", - "pk": 69, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93495613335646, - "shape_pt_lon": -84.0456080574792, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.444 - } - }, - { - "model": "gtfs.shape", - "pk": 70, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93502533870439, - "shape_pt_lon": -84.0455873014759, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.452 - } - }, - { - "model": "gtfs.shape", - "pk": 71, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93533638426393, - "shape_pt_lon": -84.045580669786, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.487 - } - }, - { - "model": "gtfs.shape", - "pk": 72, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93558174876489, - "shape_pt_lon": -84.045528502083, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.514 - } - }, - { - "model": "gtfs.shape", - "pk": 73, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9356639649666, - "shape_pt_lon": -84.0454554675517, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.527 - } - }, - { - "model": "gtfs.shape", - "pk": 74, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93591239555134, - "shape_pt_lon": -84.0454118867064, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.554 - } - }, - { - "model": "gtfs.shape", - "pk": 75, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93618345188633, - "shape_pt_lon": -84.0453571107868, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.585 - } - }, - { - "model": "gtfs.shape", - "pk": 76, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93630292207917, - "shape_pt_lon": -84.0453649359146, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.598 - } - }, - { - "model": "gtfs.shape", - "pk": 77, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93644423085287, - "shape_pt_lon": -84.0454366662581, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.616 - } - }, - { - "model": "gtfs.shape", - "pk": 78, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93668331840604, - "shape_pt_lon": -84.045567569655, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.646 - } - }, - { - "model": "gtfs.shape", - "pk": 79, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93677195745002, - "shape_pt_lon": -84.045592349228, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.656 - } - }, - { - "model": "gtfs.shape", - "pk": 80, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9368528887295, - "shape_pt_lon": -84.0455871324757, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.665 - } - }, - { - "model": "gtfs.shape", - "pk": 81, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93694152772752, - "shape_pt_lon": -84.0455467026459, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.676 - } - }, - { - "model": "gtfs.shape", - "pk": 82, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93708540528038, - "shape_pt_lon": -84.0454423673758, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.695 - } - }, - { - "model": "gtfs.shape", - "pk": 83, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9372459343465, - "shape_pt_lon": -84.0452787163273, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.721 - } - }, - { - "model": "gtfs.shape", - "pk": 84, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93733842710149, - "shape_pt_lon": -84.0451378640166, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.739 - } - }, - { - "model": "gtfs.shape", - "pk": 85, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93756026309952, - "shape_pt_lon": -84.044752821983, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.788 - } - }, - { - "model": "gtfs.shape", - "pk": 86, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93777652816203, - "shape_pt_lon": -84.0443585013794, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.837 - } - }, - { - "model": "gtfs.shape", - "pk": 87, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9381041049962, - "shape_pt_lon": -84.0438016139119, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.908 - } - }, - { - "model": "gtfs.shape", - "pk": 88, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93796476738381, - "shape_pt_lon": -84.0436166501913, - "shape_pt_sequence": 87, - "shape_dist_traveled": 1.934 - } - }, - { - "model": "gtfs.shape", - "pk": 89, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93791473560688, - "shape_pt_lon": -84.0434457982085, - "shape_pt_sequence": 88, - "shape_dist_traveled": 1.953 - } - }, - { - "model": "gtfs.shape", - "pk": 90, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93789047771889, - "shape_pt_lon": -84.0432203034589, - "shape_pt_sequence": 89, - "shape_dist_traveled": 1.978 - } - }, - { - "model": "gtfs.shape", - "pk": 91, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93791970638376, - "shape_pt_lon": -84.0429894627193, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.004 - } - }, - { - "model": "gtfs.shape", - "pk": 92, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93798008366965, - "shape_pt_lon": -84.0426008139046, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.047 - } - }, - { - "model": "gtfs.shape", - "pk": 93, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93800449142722, - "shape_pt_lon": -84.0424795244151, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.06 - } - }, - { - "model": "gtfs.shape", - "pk": 94, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9381380917555, - "shape_pt_lon": -84.0421782569734, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.097 - } - }, - { - "model": "gtfs.shape", - "pk": 95, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93816473253672, - "shape_pt_lon": -84.0419964534982, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.117 - } - }, - { - "model": "gtfs.shape", - "pk": 96, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93815830944601, - "shape_pt_lon": -84.0418503844357, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.133 - } - }, - { - "model": "gtfs.shape", - "pk": 97, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93812876322556, - "shape_pt_lon": -84.0417251823817, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.147 - } - }, - { - "model": "gtfs.shape", - "pk": 98, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93807176432108, - "shape_pt_lon": -84.0416449024973, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.158 - } - }, - { - "model": "gtfs.shape", - "pk": 99, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9380170014129, - "shape_pt_lon": -84.0416364975937, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.164 - } - }, - { - "model": "gtfs.shape", - "pk": 100, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9379218878614, - "shape_pt_lon": -84.0416378013257, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.174 - } - }, - { - "model": "gtfs.shape", - "pk": 101, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93790138516287, - "shape_pt_lon": -84.0411362584451, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.229 - } - }, - { - "model": "gtfs.shape", - "pk": 102, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93789650346394, - "shape_pt_lon": -84.041068473332, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.237 - } - }, - { - "model": "gtfs.shape", - "pk": 103, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93846399292934, - "shape_pt_lon": -84.0409289658467, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.301 - } - }, - { - "model": "gtfs.shape", - "pk": 104, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93868999787477, - "shape_pt_lon": -84.0409645503437, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.327 - } - }, - { - "model": "gtfs.shape", - "pk": 105, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93885220465146, - "shape_pt_lon": -84.0411343350368, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.353 - } - }, - { - "model": "gtfs.shape", - "pk": 106, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93915775668989, - "shape_pt_lon": -84.0416551779252, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.419 - } - }, - { - "model": "gtfs.shape", - "pk": 107, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93928866239001, - "shape_pt_lon": -84.0417942257713, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.44 - } - }, - { - "model": "gtfs.shape", - "pk": 108, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9394332650851, - "shape_pt_lon": -84.0418835860126, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.459 - } - }, - { - "model": "gtfs.shape", - "pk": 109, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93950294569722, - "shape_pt_lon": -84.0419072239736, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.467 - } - }, - { - "model": "gtfs.shape", - "pk": 110, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93950393195614, - "shape_pt_lon": -84.0422269282472, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.502 - } - }, - { - "model": "gtfs.shape", - "pk": 111, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93949212322203, - "shape_pt_lon": -84.0425117128132, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.533 - } - }, - { - "model": "gtfs.shape", - "pk": 112, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93945684385667, - "shape_pt_lon": -84.0429181490899, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.578 - } - }, - { - "model": "gtfs.shape", - "pk": 113, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93942503205056, - "shape_pt_lon": -84.0433331349077, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.624 - } - }, - { - "model": "gtfs.shape", - "pk": 114, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93972770605043, - "shape_pt_lon": -84.0432631191506, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.658 - } - }, - { - "model": "gtfs.shape", - "pk": 115, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93979024582779, - "shape_pt_lon": -84.0432957235711, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.666 - } - }, - { - "model": "gtfs.shape", - "pk": 116, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.93981898031695, - "shape_pt_lon": -84.0433729445674, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.675 - } - }, - { - "model": "gtfs.shape", - "pk": 117, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94007108411656, - "shape_pt_lon": -84.0443132968873, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.782 - } - }, - { - "model": "gtfs.shape", - "pk": 118, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94016605495639, - "shape_pt_lon": -84.0446693302114, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.822 - } - }, - { - "model": "gtfs.shape", - "pk": 119, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94027244564152, - "shape_pt_lon": -84.0448273689979, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.843 - } - }, - { - "model": "gtfs.shape", - "pk": 120, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94046211098755, - "shape_pt_lon": -84.0455400945559, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.924 - } - }, - { - "model": "gtfs.shape", - "pk": 121, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94049056601295, - "shape_pt_lon": -84.0456302713637, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.934 - } - }, - { - "model": "gtfs.shape", - "pk": 122, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94063822457009, - "shape_pt_lon": -84.0455978789472, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.951 - } - }, - { - "model": "gtfs.shape", - "pk": 123, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94079717180704, - "shape_pt_lon": -84.0450688663703, - "shape_pt_sequence": 122, - "shape_dist_traveled": 3.012 - } - }, - { - "model": "gtfs.shape", - "pk": 124, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94095438717349, - "shape_pt_lon": -84.04474671421, - "shape_pt_sequence": 123, - "shape_dist_traveled": 3.051 - } - }, - { - "model": "gtfs.shape", - "pk": 125, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94105262250509, - "shape_pt_lon": -84.0446527254796, - "shape_pt_sequence": 124, - "shape_dist_traveled": 3.066 - } - }, - { - "model": "gtfs.shape", - "pk": 126, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9414150973303, - "shape_pt_lon": -84.0446772759114, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.106 - } - }, - { - "model": "gtfs.shape", - "pk": 127, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94222783326419, - "shape_pt_lon": -84.0447316948875, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.196 - } - }, - { - "model": "gtfs.shape", - "pk": 128, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94282430588245, - "shape_pt_lon": -84.0447692666912, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.262 - } - }, - { - "model": "gtfs.shape", - "pk": 129, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9430072194504, - "shape_pt_lon": -84.0447361152365, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.283 - } - }, - { - "model": "gtfs.shape", - "pk": 130, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94325327852743, - "shape_pt_lon": -84.0446536543918, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.311 - } - }, - { - "model": "gtfs.shape", - "pk": 131, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94367377439675, - "shape_pt_lon": -84.0444658512058, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.362 - } - }, - { - "model": "gtfs.shape", - "pk": 132, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94380472710699, - "shape_pt_lon": -84.0447574980966, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.397 - } - }, - { - "model": "gtfs.shape", - "pk": 133, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94388103477618, - "shape_pt_lon": -84.044883947833, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.414 - } - }, - { - "model": "gtfs.shape", - "pk": 134, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94396870046222, - "shape_pt_lon": -84.044952212081, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.426 - } - }, - { - "model": "gtfs.shape", - "pk": 135, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94440018674929, - "shape_pt_lon": -84.0449991890221, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.474 - } - }, - { - "model": "gtfs.shape", - "pk": 136, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94457575401998, - "shape_pt_lon": -84.045011078064, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.493 - } - }, - { - "model": "gtfs.shape", - "pk": 137, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94495341180596, - "shape_pt_lon": -84.045007224609, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.535 - } - }, - { - "model": "gtfs.shape", - "pk": 138, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94503790634203, - "shape_pt_lon": -84.0450804402532, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.547 - } - }, - { - "model": "gtfs.shape", - "pk": 139, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94507262278836, - "shape_pt_lon": -84.0454078875236, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.584 - } - }, - { - "model": "gtfs.shape", - "pk": 140, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94509663743075, - "shape_pt_lon": -84.0455018337476, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.594 - } - }, - { - "model": "gtfs.shape", - "pk": 141, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94516495042239, - "shape_pt_lon": -84.0455370798079, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.603 - } - }, - { - "model": "gtfs.shape", - "pk": 142, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94535421093323, - "shape_pt_lon": -84.0455279840503, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.624 - } - }, - { - "model": "gtfs.shape", - "pk": 143, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94569609354827, - "shape_pt_lon": -84.0455006967812, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.662 - } - }, - { - "model": "gtfs.shape", - "pk": 144, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94576019859063, - "shape_pt_lon": -84.0454636202844, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.67 - } - }, - { - "model": "gtfs.shape", - "pk": 145, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9458090133638, - "shape_pt_lon": -84.0453783778183, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.681 - } - }, - { - "model": "gtfs.shape", - "pk": 146, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94587051996754, - "shape_pt_lon": -84.0452505141197, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.696 - } - }, - { - "model": "gtfs.shape", - "pk": 147, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94594579827001, - "shape_pt_lon": -84.0451768005758, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.708 - } - }, - { - "model": "gtfs.shape", - "pk": 148, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9462925242644, - "shape_pt_lon": -84.0451498689492, - "shape_pt_sequence": 147, - "shape_dist_traveled": 3.746 - } - }, - { - "model": "gtfs.shape", - "pk": 149, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.9463897709987, - "shape_pt_lon": -84.0451620803092, - "shape_pt_sequence": 148, - "shape_dist_traveled": 3.757 - } - }, - { - "model": "gtfs.shape", - "pk": 150, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94645002673405, - "shape_pt_lon": -84.0452016714679, - "shape_pt_sequence": 149, - "shape_dist_traveled": 3.765 - } - }, - { - "model": "gtfs.shape", - "pk": 151, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "shape_pt_lat": 9.94648404073633, - "shape_pt_lon": -84.0452387476835, - "shape_pt_sequence": 150, - "shape_dist_traveled": 3.771 - } - }, - { - "model": "gtfs.shape", - "pk": 152, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93554615993122, - "shape_pt_lon": -84.0491114962244, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "gtfs.shape", - "pk": 153, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93557253860416, - "shape_pt_lon": -84.0492324408382, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.014 - } - }, - { - "model": "gtfs.shape", - "pk": 154, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93559719650295, - "shape_pt_lon": -84.0493243902202, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.024 - } - }, - { - "model": "gtfs.shape", - "pk": 155, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93566832503712, - "shape_pt_lon": -84.0495039565472, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.045 - } - }, - { - "model": "gtfs.shape", - "pk": 156, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93570246673155, - "shape_pt_lon": -84.0495983130441, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.056 - } - }, - { - "model": "gtfs.shape", - "pk": 157, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93570957958473, - "shape_pt_lon": -84.0496907438365, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.066 - } - }, - { - "model": "gtfs.shape", - "pk": 158, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93571147624034, - "shape_pt_lon": -84.0498491281346, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.084 - } - }, - { - "model": "gtfs.shape", - "pk": 159, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93570246663722, - "shape_pt_lon": -84.0500893518124, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.11 - } - }, - { - "model": "gtfs.shape", - "pk": 160, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93566785089355, - "shape_pt_lon": -84.0503237982121, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.136 - } - }, - { - "model": "gtfs.shape", - "pk": 161, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93562801871054, - "shape_pt_lon": -84.0505362327233, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.16 - } - }, - { - "model": "gtfs.shape", - "pk": 162, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93558581568109, - "shape_pt_lon": -84.0507591258626, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.185 - } - }, - { - "model": "gtfs.shape", - "pk": 163, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93553934502577, - "shape_pt_lon": -84.0510354553896, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.215 - } - }, - { - "model": "gtfs.shape", - "pk": 164, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93548718391971, - "shape_pt_lon": -84.0513535074206, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.251 - } - }, - { - "model": "gtfs.shape", - "pk": 165, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93544590778002, - "shape_pt_lon": -84.0516944413929, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.288 - } - }, - { - "model": "gtfs.shape", - "pk": 166, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93544406437546, - "shape_pt_lon": -84.0517683691601, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.297 - } - }, - { - "model": "gtfs.shape", - "pk": 167, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93549752617786, - "shape_pt_lon": -84.0521913460308, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.343 - } - }, - { - "model": "gtfs.shape", - "pk": 168, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93552149197739, - "shape_pt_lon": -84.0522746314152, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.353 - } - }, - { - "model": "gtfs.shape", - "pk": 169, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93554545760814, - "shape_pt_lon": -84.0523420082619, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.361 - } - }, - { - "model": "gtfs.shape", - "pk": 170, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93560168465873, - "shape_pt_lon": -84.0523981556341, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.369 - } - }, - { - "model": "gtfs.shape", - "pk": 171, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93565791169966, - "shape_pt_lon": -84.0524318440576, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.377 - } - }, - { - "model": "gtfs.shape", - "pk": 172, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.935720591012, - "shape_pt_lon": -84.0524430735317, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.384 - } - }, - { - "model": "gtfs.shape", - "pk": 173, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93583857529975, - "shape_pt_lon": -84.0524187427515, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.397 - } - }, - { - "model": "gtfs.shape", - "pk": 174, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93605505885652, - "shape_pt_lon": -84.0523466867771, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.422 - } - }, - { - "model": "gtfs.shape", - "pk": 175, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93627443620344, - "shape_pt_lon": -84.0522802455722, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.448 - } - }, - { - "model": "gtfs.shape", - "pk": 176, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93639436894143, - "shape_pt_lon": -84.052243749702, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.461 - } - }, - { - "model": "gtfs.shape", - "pk": 177, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93653263180367, - "shape_pt_lon": -84.0522390707544, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.477 - } - }, - { - "model": "gtfs.shape", - "pk": 178, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93679802054417, - "shape_pt_lon": -84.0523349506756, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.508 - } - }, - { - "model": "gtfs.shape", - "pk": 179, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93706910208629, - "shape_pt_lon": -84.0524313369778, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.54 - } - }, - { - "model": "gtfs.shape", - "pk": 180, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93735023603007, - "shape_pt_lon": -84.0525380169441, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.573 - } - }, - { - "model": "gtfs.shape", - "pk": 181, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9375714563375, - "shape_pt_lon": -84.0526437612861, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.6 - } - }, - { - "model": "gtfs.shape", - "pk": 182, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93774105816322, - "shape_pt_lon": -84.0527027160271, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.62 - } - }, - { - "model": "gtfs.shape", - "pk": 183, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93778978041929, - "shape_pt_lon": -84.0527151488461, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.625 - } - }, - { - "model": "gtfs.shape", - "pk": 184, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93794647765702, - "shape_pt_lon": -84.0527273141104, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.643 - } - }, - { - "model": "gtfs.shape", - "pk": 185, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93809150988507, - "shape_pt_lon": -84.0527076622996, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.659 - } - }, - { - "model": "gtfs.shape", - "pk": 186, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93815511047925, - "shape_pt_lon": -84.052635606505, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.67 - } - }, - { - "model": "gtfs.shape", - "pk": 187, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93840121696546, - "shape_pt_lon": -84.0521246655647, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.732 - } - }, - { - "model": "gtfs.shape", - "pk": 188, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93857142751338, - "shape_pt_lon": -84.051894479649, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.763 - } - }, - { - "model": "gtfs.shape", - "pk": 189, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93879176765612, - "shape_pt_lon": -84.0516156036497, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.802 - } - }, - { - "model": "gtfs.shape", - "pk": 190, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93890106345436, - "shape_pt_lon": -84.0514555284908, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.824 - } - }, - { - "model": "gtfs.shape", - "pk": 191, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93897507515302, - "shape_pt_lon": -84.0513020294891, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.842 - } - }, - { - "model": "gtfs.shape", - "pk": 192, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9390141956147, - "shape_pt_lon": -84.0511345760324, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.861 - } - }, - { - "model": "gtfs.shape", - "pk": 193, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93905117558812, - "shape_pt_lon": -84.0509224405605, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.885 - } - }, - { - "model": "gtfs.shape", - "pk": 194, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93906597792292, - "shape_pt_lon": -84.0506014881021, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.92 - } - }, - { - "model": "gtfs.shape", - "pk": 195, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93909856537408, - "shape_pt_lon": -84.0501243834524, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.973 - } - }, - { - "model": "gtfs.shape", - "pk": 196, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93910318560055, - "shape_pt_lon": -84.0497656390733, - "shape_pt_sequence": 44, - "shape_dist_traveled": 1.012 - } - }, - { - "model": "gtfs.shape", - "pk": 197, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93906512245888, - "shape_pt_lon": -84.049652930016, - "shape_pt_sequence": 45, - "shape_dist_traveled": 1.025 - } - }, - { - "model": "gtfs.shape", - "pk": 198, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9389773657529, - "shape_pt_lon": -84.0495133854688, - "shape_pt_sequence": 46, - "shape_dist_traveled": 1.043 - } - }, - { - "model": "gtfs.shape", - "pk": 199, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93881453893313, - "shape_pt_lon": -84.0493115816303, - "shape_pt_sequence": 47, - "shape_dist_traveled": 1.072 - } - }, - { - "model": "gtfs.shape", - "pk": 200, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93860413409909, - "shape_pt_lon": -84.0490281988577, - "shape_pt_sequence": 48, - "shape_dist_traveled": 1.11 - } - }, - { - "model": "gtfs.shape", - "pk": 201, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93847607358095, - "shape_pt_lon": -84.0488647834885, - "shape_pt_sequence": 49, - "shape_dist_traveled": 1.133 - } - }, - { - "model": "gtfs.shape", - "pk": 202, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93830796101282, - "shape_pt_lon": -84.0486425856324, - "shape_pt_sequence": 50, - "shape_dist_traveled": 1.164 - } - }, - { - "model": "gtfs.shape", - "pk": 203, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93812775111203, - "shape_pt_lon": -84.0484368995492, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.194 - } - }, - { - "model": "gtfs.shape", - "pk": 204, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93798100124938, - "shape_pt_lon": -84.0482768335369, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.218 - } - }, - { - "model": "gtfs.shape", - "pk": 205, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93768022319365, - "shape_pt_lon": -84.0479566982914, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.266 - } - }, - { - "model": "gtfs.shape", - "pk": 206, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93763286635998, - "shape_pt_lon": -84.0479111252314, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.274 - } - }, - { - "model": "gtfs.shape", - "pk": 207, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93758319780721, - "shape_pt_lon": -84.0478722576937, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.28 - } - }, - { - "model": "gtfs.shape", - "pk": 208, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93753870216281, - "shape_pt_lon": -84.0478404135935, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.287 - } - }, - { - "model": "gtfs.shape", - "pk": 209, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9374942065184, - "shape_pt_lon": -84.0478139339113, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.292 - } - }, - { - "model": "gtfs.shape", - "pk": 210, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93745024180206, - "shape_pt_lon": -84.0477923420699, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.298 - } - }, - { - "model": "gtfs.shape", - "pk": 211, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93735938216936, - "shape_pt_lon": -84.0477606919451, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.308 - } - }, - { - "model": "gtfs.shape", - "pk": 212, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93724916693389, - "shape_pt_lon": -84.0477606931305, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.32 - } - }, - { - "model": "gtfs.shape", - "pk": 213, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93715177760806, - "shape_pt_lon": -84.0477784341865, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.331 - } - }, - { - "model": "gtfs.shape", - "pk": 214, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93705710158646, - "shape_pt_lon": -84.0477987581936, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.342 - } - }, - { - "model": "gtfs.shape", - "pk": 215, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93672866697375, - "shape_pt_lon": -84.0479001602699, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.38 - } - }, - { - "model": "gtfs.shape", - "pk": 216, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93643873625598, - "shape_pt_lon": -84.0479940310818, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.414 - } - }, - { - "model": "gtfs.shape", - "pk": 217, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93605459371357, - "shape_pt_lon": -84.0481209106209, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.458 - } - }, - { - "model": "gtfs.shape", - "pk": 218, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93594785009141, - "shape_pt_lon": -84.0481497577059, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.471 - } - }, - { - "model": "gtfs.shape", - "pk": 219, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93584672067646, - "shape_pt_lon": -84.0481926863882, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.483 - } - }, - { - "model": "gtfs.shape", - "pk": 220, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93562414968525, - "shape_pt_lon": -84.0482902977589, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.51 - } - }, - { - "model": "gtfs.shape", - "pk": 221, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93555563302149, - "shape_pt_lon": -84.0483541402688, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.52 - } - }, - { - "model": "gtfs.shape", - "pk": 222, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93552377293763, - "shape_pt_lon": -84.048395536302, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.526 - } - }, - { - "model": "gtfs.shape", - "pk": 223, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93549323384328, - "shape_pt_lon": -84.0484359265072, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.531 - } - }, - { - "model": "gtfs.shape", - "pk": 224, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93545924101029, - "shape_pt_lon": -84.0485562630898, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.545 - } - }, - { - "model": "gtfs.shape", - "pk": 225, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93545410965148, - "shape_pt_lon": -84.0486084574091, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.551 - } - }, - { - "model": "gtfs.shape", - "pk": 226, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93545261101962, - "shape_pt_lon": -84.0486583047952, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.556 - } - }, - { - "model": "gtfs.shape", - "pk": 227, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93527714539185, - "shape_pt_lon": -84.0486381383254, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.576 - } - }, - { - "model": "gtfs.shape", - "pk": 228, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93529369875646, - "shape_pt_lon": -84.0483849370953, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.604 - } - }, - { - "model": "gtfs.shape", - "pk": 229, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93524845287248, - "shape_pt_lon": -84.0481250138729, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.633 - } - }, - { - "model": "gtfs.shape", - "pk": 230, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93510490695821, - "shape_pt_lon": -84.0476876510322, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.683 - } - }, - { - "model": "gtfs.shape", - "pk": 231, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93492309622952, - "shape_pt_lon": -84.0471049676225, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.75 - } - }, - { - "model": "gtfs.shape", - "pk": 232, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93478795156821, - "shape_pt_lon": -84.0463710454434, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.832 - } - }, - { - "model": "gtfs.shape", - "pk": 233, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93468712924438, - "shape_pt_lon": -84.0458810362687, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.887 - } - }, - { - "model": "gtfs.shape", - "pk": 234, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93461716476174, - "shape_pt_lon": -84.0456150110652, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.917 - } - }, - { - "model": "gtfs.shape", - "pk": 235, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93466453460568, - "shape_pt_lon": -84.045615726073, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.922 - } - }, - { - "model": "gtfs.shape", - "pk": 236, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93495411611772, - "shape_pt_lon": -84.0456098658075, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.954 - } - }, - { - "model": "gtfs.shape", - "pk": 237, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93501867239507, - "shape_pt_lon": -84.0455893287031, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.962 - } - }, - { - "model": "gtfs.shape", - "pk": 238, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93533255656777, - "shape_pt_lon": -84.0455828491321, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.996 - } - }, - { - "model": "gtfs.shape", - "pk": 239, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93558174215077, - "shape_pt_lon": -84.0455310895244, - "shape_pt_sequence": 87, - "shape_dist_traveled": 2.025 - } - }, - { - "model": "gtfs.shape", - "pk": 240, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93565354440517, - "shape_pt_lon": -84.0454587191306, - "shape_pt_sequence": 88, - "shape_dist_traveled": 2.036 - } - }, - { - "model": "gtfs.shape", - "pk": 241, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93601427775509, - "shape_pt_lon": -84.0453935565556, - "shape_pt_sequence": 89, - "shape_dist_traveled": 2.076 - } - }, - { - "model": "gtfs.shape", - "pk": 242, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93618250695711, - "shape_pt_lon": -84.0453574183472, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.095 - } - }, - { - "model": "gtfs.shape", - "pk": 243, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93624056084127, - "shape_pt_lon": -84.0453568135217, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.102 - } - }, - { - "model": "gtfs.shape", - "pk": 244, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93629795423082, - "shape_pt_lon": -84.0453642553238, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.108 - } - }, - { - "model": "gtfs.shape", - "pk": 245, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93659318251401, - "shape_pt_lon": -84.0455215059456, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.145 - } - }, - { - "model": "gtfs.shape", - "pk": 246, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93667976807258, - "shape_pt_lon": -84.0455703414396, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.156 - } - }, - { - "model": "gtfs.shape", - "pk": 247, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9367692395777, - "shape_pt_lon": -84.0455957359235, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.166 - } - }, - { - "model": "gtfs.shape", - "pk": 248, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93685293870503, - "shape_pt_lon": -84.0455879222361, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.176 - } - }, - { - "model": "gtfs.shape", - "pk": 249, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93694173624727, - "shape_pt_lon": -84.0455491295231, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.186 - } - }, - { - "model": "gtfs.shape", - "pk": 250, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93708123470739, - "shape_pt_lon": -84.0454446214555, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.206 - } - }, - { - "model": "gtfs.shape", - "pk": 251, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93724313131711, - "shape_pt_lon": -84.0452817159445, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.231 - } - }, - { - "model": "gtfs.shape", - "pk": 252, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93734607124923, - "shape_pt_lon": -84.0451254422096, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.251 - } - }, - { - "model": "gtfs.shape", - "pk": 253, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93748749351063, - "shape_pt_lon": -84.0448724740612, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.283 - } - }, - { - "model": "gtfs.shape", - "pk": 254, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93761860756564, - "shape_pt_lon": -84.0446484093239, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.312 - } - }, - { - "model": "gtfs.shape", - "pk": 255, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93781098243242, - "shape_pt_lon": -84.0443002302728, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.355 - } - }, - { - "model": "gtfs.shape", - "pk": 256, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93799146315684, - "shape_pt_lon": -84.0439934603325, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.395 - } - }, - { - "model": "gtfs.shape", - "pk": 257, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93810165004318, - "shape_pt_lon": -84.0438034580265, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.419 - } - }, - { - "model": "gtfs.shape", - "pk": 258, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93796407612903, - "shape_pt_lon": -84.0436169062427, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.444 - } - }, - { - "model": "gtfs.shape", - "pk": 259, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93791116339785, - "shape_pt_lon": -84.043444027742, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.464 - } - }, - { - "model": "gtfs.shape", - "pk": 260, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93788614994896, - "shape_pt_lon": -84.0432193842326, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.489 - } - }, - { - "model": "gtfs.shape", - "pk": 261, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93792655633902, - "shape_pt_lon": -84.0429361376045, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.52 - } - }, - { - "model": "gtfs.shape", - "pk": 262, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93800099196738, - "shape_pt_lon": -84.0424812505301, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.571 - } - }, - { - "model": "gtfs.shape", - "pk": 263, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93813818359375, - "shape_pt_lon": -84.0421772565051, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.607 - } - }, - { - "model": "gtfs.shape", - "pk": 264, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93816415907815, - "shape_pt_lon": -84.0419985184082, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.627 - } - }, - { - "model": "gtfs.shape", - "pk": 265, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9381545385288, - "shape_pt_lon": -84.0418510350607, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.643 - } - }, - { - "model": "gtfs.shape", - "pk": 266, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93812567687818, - "shape_pt_lon": -84.0417260160641, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.657 - } - }, - { - "model": "gtfs.shape", - "pk": 267, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93807564954973, - "shape_pt_lon": -84.0416527622632, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.667 - } - }, - { - "model": "gtfs.shape", - "pk": 268, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93804289664845, - "shape_pt_lon": -84.0416384252501, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.671 - } - }, - { - "model": "gtfs.shape", - "pk": 269, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93801311595451, - "shape_pt_lon": -84.0416361581774, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.675 - } - }, - { - "model": "gtfs.shape", - "pk": 270, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93792172067878, - "shape_pt_lon": -84.0416381115992, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.685 - } - }, - { - "model": "gtfs.shape", - "pk": 271, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93790247956499, - "shape_pt_lon": -84.0412122658535, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.731 - } - }, - { - "model": "gtfs.shape", - "pk": 272, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93789478311904, - "shape_pt_lon": -84.0410686893496, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.747 - } - }, - { - "model": "gtfs.shape", - "pk": 273, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93830046896954, - "shape_pt_lon": -84.040969095546, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.793 - } - }, - { - "model": "gtfs.shape", - "pk": 274, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93846168564775, - "shape_pt_lon": -84.0409298363785, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.812 - } - }, - { - "model": "gtfs.shape", - "pk": 275, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93868873033166, - "shape_pt_lon": -84.040967928104, - "shape_pt_sequence": 123, - "shape_dist_traveled": 2.837 - } - }, - { - "model": "gtfs.shape", - "pk": 276, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93884815398905, - "shape_pt_lon": -84.0411370173071, - "shape_pt_sequence": 124, - "shape_dist_traveled": 2.863 - } - }, - { - "model": "gtfs.shape", - "pk": 277, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93915383599336, - "shape_pt_lon": -84.0416568644267, - "shape_pt_sequence": 125, - "shape_dist_traveled": 2.929 - } - }, - { - "model": "gtfs.shape", - "pk": 278, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93928521203319, - "shape_pt_lon": -84.0417935755105, - "shape_pt_sequence": 126, - "shape_dist_traveled": 2.95 - } - }, - { - "model": "gtfs.shape", - "pk": 279, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93942977628924, - "shape_pt_lon": -84.0418876857024, - "shape_pt_sequence": 127, - "shape_dist_traveled": 2.969 - } - }, - { - "model": "gtfs.shape", - "pk": 280, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93950150662073, - "shape_pt_lon": -84.0419089725314, - "shape_pt_sequence": 128, - "shape_dist_traveled": 2.977 - } - }, - { - "model": "gtfs.shape", - "pk": 281, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93950371370814, - "shape_pt_lon": -84.0422428396408, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.014 - } - }, - { - "model": "gtfs.shape", - "pk": 282, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93948613333313, - "shape_pt_lon": -84.0425204684191, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.044 - } - }, - { - "model": "gtfs.shape", - "pk": 283, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93944529338017, - "shape_pt_lon": -84.0430246306461, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.1 - } - }, - { - "model": "gtfs.shape", - "pk": 284, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93942327481619, - "shape_pt_lon": -84.0433356324423, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.134 - } - }, - { - "model": "gtfs.shape", - "pk": 285, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93972442200525, - "shape_pt_lon": -84.0432655607324, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.168 - } - }, - { - "model": "gtfs.shape", - "pk": 286, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93978732393233, - "shape_pt_lon": -84.043299171515, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.176 - } - }, - { - "model": "gtfs.shape", - "pk": 287, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93981711902594, - "shape_pt_lon": -84.0433809579747, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.186 - } - }, - { - "model": "gtfs.shape", - "pk": 288, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.93991974845217, - "shape_pt_lon": -84.0437596394605, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.229 - } - }, - { - "model": "gtfs.shape", - "pk": 289, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94007043205839, - "shape_pt_lon": -84.0443170698121, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.292 - } - }, - { - "model": "gtfs.shape", - "pk": 290, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94016533658292, - "shape_pt_lon": -84.0446744654815, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.332 - } - }, - { - "model": "gtfs.shape", - "pk": 291, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94027017298111, - "shape_pt_lon": -84.0448268343636, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.353 - } - }, - { - "model": "gtfs.shape", - "pk": 292, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94038169599758, - "shape_pt_lon": -84.045244089757, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.4 - } - }, - { - "model": "gtfs.shape", - "pk": 293, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94048873914792, - "shape_pt_lon": -84.045632855511, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.444 - } - }, - { - "model": "gtfs.shape", - "pk": 294, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94063882056966, - "shape_pt_lon": -84.045599244728, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.461 - } - }, - { - "model": "gtfs.shape", - "pk": 295, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94079662666821, - "shape_pt_lon": -84.0450681942005, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.522 - } - }, - { - "model": "gtfs.shape", - "pk": 296, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94095071185347, - "shape_pt_lon": -84.044750328054, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.561 - } - }, - { - "model": "gtfs.shape", - "pk": 297, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9410528605391, - "shape_pt_lon": -84.0446554341072, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.576 - } - }, - { - "model": "gtfs.shape", - "pk": 298, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94157411286451, - "shape_pt_lon": -84.04469185811, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.634 - } - }, - { - "model": "gtfs.shape", - "pk": 299, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94242227255298, - "shape_pt_lon": -84.0447474726987, - "shape_pt_sequence": 147, - "shape_dist_traveled": 3.728 - } - }, - { - "model": "gtfs.shape", - "pk": 300, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94283107241787, - "shape_pt_lon": -84.0447699014639, - "shape_pt_sequence": 148, - "shape_dist_traveled": 3.773 - } - }, - { - "model": "gtfs.shape", - "pk": 301, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94300697065598, - "shape_pt_lon": -84.0447350564938, - "shape_pt_sequence": 149, - "shape_dist_traveled": 3.793 - } - }, - { - "model": "gtfs.shape", - "pk": 302, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94326009234421, - "shape_pt_lon": -84.0446544775012, - "shape_pt_sequence": 150, - "shape_dist_traveled": 3.823 - } - }, - { - "model": "gtfs.shape", - "pk": 303, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94351468777105, - "shape_pt_lon": -84.0445407320727, - "shape_pt_sequence": 151, - "shape_dist_traveled": 3.853 - } - }, - { - "model": "gtfs.shape", - "pk": 304, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94366913468646, - "shape_pt_lon": -84.0444710421328, - "shape_pt_sequence": 152, - "shape_dist_traveled": 3.872 - } - }, - { - "model": "gtfs.shape", - "pk": 305, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.9437999854876, - "shape_pt_lon": -84.0447541575134, - "shape_pt_sequence": 153, - "shape_dist_traveled": 3.906 - } - }, - { - "model": "gtfs.shape", - "pk": 306, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94388149907578, - "shape_pt_lon": -84.0448848261506, - "shape_pt_sequence": 154, - "shape_dist_traveled": 3.923 - } - }, - { - "model": "gtfs.shape", - "pk": 307, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94396600743452, - "shape_pt_lon": -84.0449552037605, - "shape_pt_sequence": 155, - "shape_dist_traveled": 3.935 - } - }, - { - "model": "gtfs.shape", - "pk": 308, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94433419150155, - "shape_pt_lon": -84.0449932717292, - "shape_pt_sequence": 156, - "shape_dist_traveled": 3.976 - } - }, - { - "model": "gtfs.shape", - "pk": 309, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94457398813642, - "shape_pt_lon": -84.0450138149367, - "shape_pt_sequence": 157, - "shape_dist_traveled": 4.003 - } - }, - { - "model": "gtfs.shape", - "pk": 310, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94495221337372, - "shape_pt_lon": -84.045010504636, - "shape_pt_sequence": 158, - "shape_dist_traveled": 4.045 - } - }, - { - "model": "gtfs.shape", - "pk": 311, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94503698779598, - "shape_pt_lon": -84.0450833311997, - "shape_pt_sequence": 159, - "shape_dist_traveled": 4.057 - } - }, - { - "model": "gtfs.shape", - "pk": 312, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94506796311185, - "shape_pt_lon": -84.045389534011, - "shape_pt_sequence": 160, - "shape_dist_traveled": 4.091 - } - }, - { - "model": "gtfs.shape", - "pk": 313, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94509404758507, - "shape_pt_lon": -84.0455020842335, - "shape_pt_sequence": 161, - "shape_dist_traveled": 4.104 - } - }, - { - "model": "gtfs.shape", - "pk": 314, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94516741015652, - "shape_pt_lon": -84.0455418078417, - "shape_pt_sequence": 162, - "shape_dist_traveled": 4.113 - } - }, - { - "model": "gtfs.shape", - "pk": 315, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94569411437748, - "shape_pt_lon": -84.0455036631251, - "shape_pt_sequence": 163, - "shape_dist_traveled": 4.171 - } - }, - { - "model": "gtfs.shape", - "pk": 316, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94576235686358, - "shape_pt_lon": -84.0454645549726, - "shape_pt_sequence": 164, - "shape_dist_traveled": 4.18 - } - }, - { - "model": "gtfs.shape", - "pk": 317, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94586939851089, - "shape_pt_lon": -84.0452550477597, - "shape_pt_sequence": 165, - "shape_dist_traveled": 4.206 - } - }, - { - "model": "gtfs.shape", - "pk": 318, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94594554151604, - "shape_pt_lon": -84.0451777429595, - "shape_pt_sequence": 166, - "shape_dist_traveled": 4.218 - } - }, - { - "model": "gtfs.shape", - "pk": 319, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94629085058927, - "shape_pt_lon": -84.0451530949856, - "shape_pt_sequence": 167, - "shape_dist_traveled": 4.256 - } - }, - { - "model": "gtfs.shape", - "pk": 320, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94638848955421, - "shape_pt_lon": -84.0451636656039, - "shape_pt_sequence": 168, - "shape_dist_traveled": 4.267 - } - }, - { - "model": "gtfs.shape", - "pk": 321, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94644918315917, - "shape_pt_lon": -84.0452028781838, - "shape_pt_sequence": 169, - "shape_dist_traveled": 4.275 - } - }, - { - "model": "gtfs.shape", - "pk": 322, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "shape_pt_lat": 9.94648865740507, - "shape_pt_lon": -84.0452462913844, - "shape_pt_sequence": 170, - "shape_dist_traveled": 4.281 - } - }, - { - "model": "gtfs.shape", - "pk": 323, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93551240308205, - "shape_pt_lon": -84.052232462037, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "gtfs.shape", - "pk": 324, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93553038682294, - "shape_pt_lon": -84.0523024805564, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.008 - } - }, - { - "model": "gtfs.shape", - "pk": 325, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93554317941351, - "shape_pt_lon": -84.0523354193901, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.012 - } - }, - { - "model": "gtfs.shape", - "pk": 326, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93560006968185, - "shape_pt_lon": -84.0523952582046, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.021 - } - }, - { - "model": "gtfs.shape", - "pk": 327, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93565298376728, - "shape_pt_lon": -84.0524284133704, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.028 - } - }, - { - "model": "gtfs.shape", - "pk": 328, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93571914349433, - "shape_pt_lon": -84.0524404498132, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.035 - } - }, - { - "model": "gtfs.shape", - "pk": 329, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93583719162457, - "shape_pt_lon": -84.0524171180445, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "gtfs.shape", - "pk": 330, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93594643029256, - "shape_pt_lon": -84.0523801266021, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.061 - } - }, - { - "model": "gtfs.shape", - "pk": 331, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93608834513962, - "shape_pt_lon": -84.0523343631691, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.078 - } - }, - { - "model": "gtfs.shape", - "pk": 332, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93620422239772, - "shape_pt_lon": -84.0522977078958, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.091 - } - }, - { - "model": "gtfs.shape", - "pk": 333, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.936293049843, - "shape_pt_lon": -84.0522711599884, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.101 - } - }, - { - "model": "gtfs.shape", - "pk": 334, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93639226353531, - "shape_pt_lon": -84.0522405229359, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.113 - } - }, - { - "model": "gtfs.shape", - "pk": 335, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93653093553953, - "shape_pt_lon": -84.0522367457551, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.128 - } - }, - { - "model": "gtfs.shape", - "pk": 336, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93659589447438, - "shape_pt_lon": -84.0522590055211, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.136 - } - }, - { - "model": "gtfs.shape", - "pk": 337, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93661615058734, - "shape_pt_lon": -84.0523412639074, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.145 - } - }, - { - "model": "gtfs.shape", - "pk": 338, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9365876265418, - "shape_pt_lon": -84.0524260404882, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.155 - } - }, - { - "model": "gtfs.shape", - "pk": 339, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9365355393877, - "shape_pt_lon": -84.0524499625703, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.161 - } - }, - { - "model": "gtfs.shape", - "pk": 340, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93644867420793, - "shape_pt_lon": -84.0524473462339, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.171 - } - }, - { - "model": "gtfs.shape", - "pk": 341, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93635813864212, - "shape_pt_lon": -84.0524384481957, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.181 - } - }, - { - "model": "gtfs.shape", - "pk": 342, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93632957313295, - "shape_pt_lon": -84.052426075736, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.184 - } - }, - { - "model": "gtfs.shape", - "pk": 343, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93630067737655, - "shape_pt_lon": -84.0524254379402, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.188 - } - }, - { - "model": "gtfs.shape", - "pk": 344, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9361767385198, - "shape_pt_lon": -84.0524455386407, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.201 - } - }, - { - "model": "gtfs.shape", - "pk": 345, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93606938255121, - "shape_pt_lon": -84.0524692189919, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.214 - } - }, - { - "model": "gtfs.shape", - "pk": 346, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9358662876061, - "shape_pt_lon": -84.0525134237392, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.237 - } - }, - { - "model": "gtfs.shape", - "pk": 347, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93580530982546, - "shape_pt_lon": -84.0525277028597, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.244 - } - }, - { - "model": "gtfs.shape", - "pk": 348, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93571720324209, - "shape_pt_lon": -84.0525351455981, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.253 - } - }, - { - "model": "gtfs.shape", - "pk": 349, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93562932790421, - "shape_pt_lon": -84.0525170973821, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.263 - } - }, - { - "model": "gtfs.shape", - "pk": 350, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93552958615174, - "shape_pt_lon": -84.0524334827489, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.278 - } - }, - { - "model": "gtfs.shape", - "pk": 351, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93545575661828, - "shape_pt_lon": -84.052350672979, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.29 - } - }, - { - "model": "gtfs.shape", - "pk": 352, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93541638163459, - "shape_pt_lon": -84.0522446182099, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.302 - } - }, - { - "model": "gtfs.shape", - "pk": 353, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93541236377893, - "shape_pt_lon": -84.0520977731443, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.318 - } - }, - { - "model": "gtfs.shape", - "pk": 354, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9353609350822, - "shape_pt_lon": -84.0517673714683, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.355 - } - }, - { - "model": "gtfs.shape", - "pk": 355, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93533537431955, - "shape_pt_lon": -84.0515957473315, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.374 - } - }, - { - "model": "gtfs.shape", - "pk": 356, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93527832074849, - "shape_pt_lon": -84.0514578761312, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.39 - } - }, - { - "model": "gtfs.shape", - "pk": 357, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93537394568805, - "shape_pt_lon": -84.051051560594, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.436 - } - }, - { - "model": "gtfs.shape", - "pk": 358, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93548509593826, - "shape_pt_lon": -84.0506488451042, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.482 - } - }, - { - "model": "gtfs.shape", - "pk": 359, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93555656904013, - "shape_pt_lon": -84.0503446866737, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.516 - } - }, - { - "model": "gtfs.shape", - "pk": 360, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93560639042598, - "shape_pt_lon": -84.0501407351937, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.539 - } - }, - { - "model": "gtfs.shape", - "pk": 361, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93564014039442, - "shape_pt_lon": -84.0499188359838, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.564 - } - }, - { - "model": "gtfs.shape", - "pk": 362, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93555237106771, - "shape_pt_lon": -84.0495240741516, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.608 - } - }, - { - "model": "gtfs.shape", - "pk": 363, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9355127171103, - "shape_pt_lon": -84.0493169635181, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.631 - } - }, - { - "model": "gtfs.shape", - "pk": 364, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93544759669272, - "shape_pt_lon": -84.0490255135247, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.664 - } - }, - { - "model": "gtfs.shape", - "pk": 365, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93538988817417, - "shape_pt_lon": -84.0487899823799, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.691 - } - }, - { - "model": "gtfs.shape", - "pk": 366, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93537301317815, - "shape_pt_lon": -84.0486447689264, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.707 - } - }, - { - "model": "gtfs.shape", - "pk": 367, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93527658461171, - "shape_pt_lon": -84.0486366108669, - "shape_pt_sequence": 44, - "shape_dist_traveled": 0.718 - } - }, - { - "model": "gtfs.shape", - "pk": 368, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93529274995559, - "shape_pt_lon": -84.0483784246656, - "shape_pt_sequence": 45, - "shape_dist_traveled": 0.746 - } - }, - { - "model": "gtfs.shape", - "pk": 369, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93524694618673, - "shape_pt_lon": -84.0481238929513, - "shape_pt_sequence": 46, - "shape_dist_traveled": 0.774 - } - }, - { - "model": "gtfs.shape", - "pk": 370, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93514165787212, - "shape_pt_lon": -84.0478057230236, - "shape_pt_sequence": 47, - "shape_dist_traveled": 0.811 - } - }, - { - "model": "gtfs.shape", - "pk": 371, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93500316815773, - "shape_pt_lon": -84.0473807827294, - "shape_pt_sequence": 48, - "shape_dist_traveled": 0.86 - } - }, - { - "model": "gtfs.shape", - "pk": 372, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93492049042863, - "shape_pt_lon": -84.0470859236543, - "shape_pt_sequence": 49, - "shape_dist_traveled": 0.894 - } - }, - { - "model": "gtfs.shape", - "pk": 373, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93479657132182, - "shape_pt_lon": -84.0464195689003, - "shape_pt_sequence": 50, - "shape_dist_traveled": 0.968 - } - }, - { - "model": "gtfs.shape", - "pk": 374, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93468604728109, - "shape_pt_lon": -84.0458857020311, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.028 - } - }, - { - "model": "gtfs.shape", - "pk": 375, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9346124699569, - "shape_pt_lon": -84.0456137031377, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.059 - } - }, - { - "model": "gtfs.shape", - "pk": 376, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93481022852054, - "shape_pt_lon": -84.0456081393267, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.081 - } - }, - { - "model": "gtfs.shape", - "pk": 377, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93495379560579, - "shape_pt_lon": -84.0456083692307, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.096 - } - }, - { - "model": "gtfs.shape", - "pk": 378, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93502122053513, - "shape_pt_lon": -84.0455873976348, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.104 - } - }, - { - "model": "gtfs.shape", - "pk": 379, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93525069991888, - "shape_pt_lon": -84.0455815527507, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.13 - } - }, - { - "model": "gtfs.shape", - "pk": 380, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93533621207088, - "shape_pt_lon": -84.0455791055204, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.139 - } - }, - { - "model": "gtfs.shape", - "pk": 381, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9355796939962, - "shape_pt_lon": -84.0455277100451, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.167 - } - }, - { - "model": "gtfs.shape", - "pk": 382, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93566141737569, - "shape_pt_lon": -84.0454545424224, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.179 - } - }, - { - "model": "gtfs.shape", - "pk": 383, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93593880374486, - "shape_pt_lon": -84.0454033749615, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.21 - } - }, - { - "model": "gtfs.shape", - "pk": 384, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93617987563359, - "shape_pt_lon": -84.0453561940705, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.237 - } - }, - { - "model": "gtfs.shape", - "pk": 385, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93629878421235, - "shape_pt_lon": -84.0453622217276, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.25 - } - }, - { - "model": "gtfs.shape", - "pk": 386, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93647074793075, - "shape_pt_lon": -84.0454544077961, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.272 - } - }, - { - "model": "gtfs.shape", - "pk": 387, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9366470154013, - "shape_pt_lon": -84.0455491574187, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.294 - } - }, - { - "model": "gtfs.shape", - "pk": 388, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93667996169247, - "shape_pt_lon": -84.0455671051487, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.298 - } - }, - { - "model": "gtfs.shape", - "pk": 389, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93677076487081, - "shape_pt_lon": -84.0455923951325, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.308 - } - }, - { - "model": "gtfs.shape", - "pk": 390, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93685019478803, - "shape_pt_lon": -84.0455875957907, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.317 - } - }, - { - "model": "gtfs.shape", - "pk": 391, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93693939078323, - "shape_pt_lon": -84.0455459896891, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.328 - } - }, - { - "model": "gtfs.shape", - "pk": 392, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93708216879507, - "shape_pt_lon": -84.0454405657035, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.348 - } - }, - { - "model": "gtfs.shape", - "pk": 393, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9372417505605, - "shape_pt_lon": -84.0452791956738, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.373 - } - }, - { - "model": "gtfs.shape", - "pk": 394, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93733175001592, - "shape_pt_lon": -84.0451437718914, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.391 - } - }, - { - "model": "gtfs.shape", - "pk": 395, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93747880276838, - "shape_pt_lon": -84.0448843455207, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.423 - } - }, - { - "model": "gtfs.shape", - "pk": 396, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93759383837854, - "shape_pt_lon": -84.0446848467803, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.449 - } - }, - { - "model": "gtfs.shape", - "pk": 397, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93775722150572, - "shape_pt_lon": -84.0443877220931, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.486 - } - }, - { - "model": "gtfs.shape", - "pk": 398, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93792650160209, - "shape_pt_lon": -84.0440980878075, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.523 - } - }, - { - "model": "gtfs.shape", - "pk": 399, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93809919166979, - "shape_pt_lon": -84.0437999865192, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.561 - } - }, - { - "model": "gtfs.shape", - "pk": 400, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93796097853527, - "shape_pt_lon": -84.0436147985756, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.586 - } - }, - { - "model": "gtfs.shape", - "pk": 401, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93791115773413, - "shape_pt_lon": -84.0434434787742, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.606 - } - }, - { - "model": "gtfs.shape", - "pk": 402, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9378853721441, - "shape_pt_lon": -84.0432188653814, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.63 - } - }, - { - "model": "gtfs.shape", - "pk": 403, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93792474683056, - "shape_pt_lon": -84.0429382281456, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.661 - } - }, - { - "model": "gtfs.shape", - "pk": 404, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93798421082772, - "shape_pt_lon": -84.0425692976739, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.702 - } - }, - { - "model": "gtfs.shape", - "pk": 405, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93799717971221, - "shape_pt_lon": -84.0424760119919, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.713 - } - }, - { - "model": "gtfs.shape", - "pk": 406, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93813619639644, - "shape_pt_lon": -84.0421774270254, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.749 - } - }, - { - "model": "gtfs.shape", - "pk": 407, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93816151133474, - "shape_pt_lon": -84.0419972282554, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.769 - } - }, - { - "model": "gtfs.shape", - "pk": 408, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93815347569085, - "shape_pt_lon": -84.0418487515775, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.785 - } - }, - { - "model": "gtfs.shape", - "pk": 409, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93812695789198, - "shape_pt_lon": -84.0417223014224, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.799 - } - }, - { - "model": "gtfs.shape", - "pk": 410, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93807552975984, - "shape_pt_lon": -84.041649694696, - "shape_pt_sequence": 87, - "shape_dist_traveled": 1.809 - } - }, - { - "model": "gtfs.shape", - "pk": 411, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93801445884308, - "shape_pt_lon": -84.0416317469654, - "shape_pt_sequence": 88, - "shape_dist_traveled": 1.816 - } - }, - { - "model": "gtfs.shape", - "pk": 412, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93791897942971, - "shape_pt_lon": -84.0416350505556, - "shape_pt_sequence": 89, - "shape_dist_traveled": 1.827 - } - }, - { - "model": "gtfs.shape", - "pk": 413, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93789540463778, - "shape_pt_lon": -84.0410687729965, - "shape_pt_sequence": 90, - "shape_dist_traveled": 1.889 - } - }, - { - "model": "gtfs.shape", - "pk": 414, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93846102257875, - "shape_pt_lon": -84.0409278059346, - "shape_pt_sequence": 91, - "shape_dist_traveled": 1.953 - } - }, - { - "model": "gtfs.shape", - "pk": 415, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93868770509072, - "shape_pt_lon": -84.0409636843222, - "shape_pt_sequence": 92, - "shape_dist_traveled": 1.979 - } - }, - { - "model": "gtfs.shape", - "pk": 416, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93884702967763, - "shape_pt_lon": -84.0411317795776, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.004 - } - }, - { - "model": "gtfs.shape", - "pk": 417, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93915009329333, - "shape_pt_lon": -84.0416545090707, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.071 - } - }, - { - "model": "gtfs.shape", - "pk": 418, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93928437269097, - "shape_pt_lon": -84.0417940169538, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.092 - } - }, - { - "model": "gtfs.shape", - "pk": 419, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93942339095397, - "shape_pt_lon": -84.0418844077991, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.11 - } - }, - { - "model": "gtfs.shape", - "pk": 420, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93949992907343, - "shape_pt_lon": -84.0419066090587, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.119 - } - }, - { - "model": "gtfs.shape", - "pk": 421, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93949992907343, - "shape_pt_lon": -84.0422475569833, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.156 - } - }, - { - "model": "gtfs.shape", - "pk": 422, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.939437, - "shape_pt_lon": -84.043074, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.187 - } - }, - { - "model": "gtfs.shape", - "pk": 423, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9394249524573, - "shape_pt_lon": -84.0433290766316, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.275 - } - }, - { - "model": "gtfs.shape", - "pk": 424, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93972312001197, - "shape_pt_lon": -84.0432616940963, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.309 - } - }, - { - "model": "gtfs.shape", - "pk": 425, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9397847344284, - "shape_pt_lon": -84.0432938739159, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.317 - } - }, - { - "model": "gtfs.shape", - "pk": 426, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.9398186343525, - "shape_pt_lon": -84.0433818049407, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.327 - } - }, - { - "model": "gtfs.shape", - "pk": 427, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.93998824672434, - "shape_pt_lon": -84.0440308770623, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.401 - } - }, - { - "model": "gtfs.shape", - "pk": 428, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94015974971341, - "shape_pt_lon": -84.0446658158992, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.473 - } - }, - { - "model": "gtfs.shape", - "pk": 429, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94026910203425, - "shape_pt_lon": -84.0448245474961, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.494 - } - }, - { - "model": "gtfs.shape", - "pk": 430, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94036490303632, - "shape_pt_lon": -84.0451873514683, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.535 - } - }, - { - "model": "gtfs.shape", - "pk": 431, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94048769323097, - "shape_pt_lon": -84.0456290389484, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.586 - } - }, - { - "model": "gtfs.shape", - "pk": 432, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94063635155576, - "shape_pt_lon": -84.0455931434884, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.602 - } - }, - { - "model": "gtfs.shape", - "pk": 433, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94079234514589, - "shape_pt_lon": -84.0450690355552, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.662 - } - }, - { - "model": "gtfs.shape", - "pk": 434, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94094918383372, - "shape_pt_lon": -84.0447505513004, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.701 - } - }, - { - "model": "gtfs.shape", - "pk": 435, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94104532842372, - "shape_pt_lon": -84.0446520351469, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.717 - } - }, - { - "model": "gtfs.shape", - "pk": 436, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94113081479986, - "shape_pt_lon": -84.0446571934664, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.726 - } - }, - { - "model": "gtfs.shape", - "pk": 437, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94144321527622, - "shape_pt_lon": -84.0446770863329, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.761 - } - }, - { - "model": "gtfs.shape", - "pk": 438, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94195499816524, - "shape_pt_lon": -84.0447142198439, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.817 - } - }, - { - "model": "gtfs.shape", - "pk": 439, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94233948335795, - "shape_pt_lon": -84.0447371192727, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.86 - } - }, - { - "model": "gtfs.shape", - "pk": 440, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94270561942093, - "shape_pt_lon": -84.0447624203313, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.901 - } - }, - { - "model": "gtfs.shape", - "pk": 441, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94282741926446, - "shape_pt_lon": -84.0447662997461, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.914 - } - }, - { - "model": "gtfs.shape", - "pk": 442, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94300876520552, - "shape_pt_lon": -84.0447342405736, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.934 - } - }, - { - "model": "gtfs.shape", - "pk": 443, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94322619282253, - "shape_pt_lon": -84.044661630678, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.96 - } - }, - { - "model": "gtfs.shape", - "pk": 444, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94336188947768, - "shape_pt_lon": -84.0446070756693, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.976 - } - }, - { - "model": "gtfs.shape", - "pk": 445, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94366938860733, - "shape_pt_lon": -84.0444664621215, - "shape_pt_sequence": 122, - "shape_dist_traveled": 3.013 - } - }, - { - "model": "gtfs.shape", - "pk": 446, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94379763572232, - "shape_pt_lon": -84.0447499441632, - "shape_pt_sequence": 123, - "shape_dist_traveled": 3.047 - } - }, - { - "model": "gtfs.shape", - "pk": 447, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94387703073651, - "shape_pt_lon": -84.0448781808515, - "shape_pt_sequence": 124, - "shape_dist_traveled": 3.064 - } - }, - { - "model": "gtfs.shape", - "pk": 448, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94396544788927, - "shape_pt_lon": -84.0449496270056, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.077 - } - }, - { - "model": "gtfs.shape", - "pk": 449, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94454435151914, - "shape_pt_lon": -84.0450074182673, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.141 - } - }, - { - "model": "gtfs.shape", - "pk": 450, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94494922686726, - "shape_pt_lon": -84.0450098494603, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.186 - } - }, - { - "model": "gtfs.shape", - "pk": 451, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94503488859595, - "shape_pt_lon": -84.0450726102459, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.197 - } - }, - { - "model": "gtfs.shape", - "pk": 452, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94506635931216, - "shape_pt_lon": -84.0453994971357, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.233 - } - }, - { - "model": "gtfs.shape", - "pk": 453, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94509373573383, - "shape_pt_lon": -84.0454999143925, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.245 - } - }, - { - "model": "gtfs.shape", - "pk": 454, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94516587977827, - "shape_pt_lon": -84.0455384857143, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.254 - } - }, - { - "model": "gtfs.shape", - "pk": 455, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94569334489241, - "shape_pt_lon": -84.045501640108, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.312 - } - }, - { - "model": "gtfs.shape", - "pk": 456, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94576818120904, - "shape_pt_lon": -84.0454572011088, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.322 - } - }, - { - "model": "gtfs.shape", - "pk": 457, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94581918999885, - "shape_pt_lon": -84.0453571624431, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.334 - } - }, - { - "model": "gtfs.shape", - "pk": 458, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94586821736523, - "shape_pt_lon": -84.0452494124261, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.347 - } - }, - { - "model": "gtfs.shape", - "pk": 459, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94594549545337, - "shape_pt_lon": -84.0451749917014, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.359 - } - }, - { - "model": "gtfs.shape", - "pk": 460, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94628917517751, - "shape_pt_lon": -84.045149887399, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.397 - } - }, - { - "model": "gtfs.shape", - "pk": 461, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.946387887887, - "shape_pt_lon": -84.0451617577946, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.408 - } - }, - { - "model": "gtfs.shape", - "pk": 462, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94644528982524, - "shape_pt_lon": -84.0451994142665, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.416 - } - }, - { - "model": "gtfs.shape", - "pk": 463, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "shape_pt_lat": 9.94649012442296, - "shape_pt_lon": -84.0452511227568, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.423 - } - }, - { - "model": "gtfs.shape", - "pk": 464, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93551129613598, - "shape_pt_lon": -84.0522203008732, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "gtfs.shape", - "pk": 465, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9355310767404, - "shape_pt_lon": -84.0522927059177, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.008 - } - }, - { - "model": "gtfs.shape", - "pk": 466, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93554722789095, - "shape_pt_lon": -84.0523347118824, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.013 - } - }, - { - "model": "gtfs.shape", - "pk": 467, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93559998927965, - "shape_pt_lon": -84.0523891977038, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.022 - } - }, - { - "model": "gtfs.shape", - "pk": 468, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93565665681396, - "shape_pt_lon": -84.0524266115309, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.029 - } - }, - { - "model": "gtfs.shape", - "pk": 469, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93572400544303, - "shape_pt_lon": -84.0524387877407, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.037 - } - }, - { - "model": "gtfs.shape", - "pk": 470, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93583791088976, - "shape_pt_lon": -84.0524163085106, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "gtfs.shape", - "pk": 471, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93589348533485, - "shape_pt_lon": -84.0524004247557, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.056 - } - }, - { - "model": "gtfs.shape", - "pk": 472, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93594773879152, - "shape_pt_lon": -84.0523801824105, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.062 - } - }, - { - "model": "gtfs.shape", - "pk": 473, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93618639604332, - "shape_pt_lon": -84.052302832233, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.09 - } - }, - { - "model": "gtfs.shape", - "pk": 474, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93639684624757, - "shape_pt_lon": -84.0522406782275, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.114 - } - }, - { - "model": "gtfs.shape", - "pk": 475, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93653551980098, - "shape_pt_lon": -84.0522361299255, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.13 - } - }, - { - "model": "gtfs.shape", - "pk": 476, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93673682209909, - "shape_pt_lon": -84.0523076585187, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.153 - } - }, - { - "model": "gtfs.shape", - "pk": 477, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93708559662569, - "shape_pt_lon": -84.05243186663, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.194 - } - }, - { - "model": "gtfs.shape", - "pk": 478, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93733577696727, - "shape_pt_lon": -84.0525288520072, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.224 - } - }, - { - "model": "gtfs.shape", - "pk": 479, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93757969853555, - "shape_pt_lon": -84.0526438746271, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.253 - } - }, - { - "model": "gtfs.shape", - "pk": 480, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9377485826659, - "shape_pt_lon": -84.0527043524954, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.273 - } - }, - { - "model": "gtfs.shape", - "pk": 481, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93779188190045, - "shape_pt_lon": -84.0527107981436, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.278 - } - }, - { - "model": "gtfs.shape", - "pk": 482, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93787132360124, - "shape_pt_lon": -84.0527199326082, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.287 - } - }, - { - "model": "gtfs.shape", - "pk": 483, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93795076530203, - "shape_pt_lon": -84.0527243732062, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.296 - } - }, - { - "model": "gtfs.shape", - "pk": 484, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93802242474458, - "shape_pt_lon": -84.0527168419396, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.304 - } - }, - { - "model": "gtfs.shape", - "pk": 485, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93809408418712, - "shape_pt_lon": -84.0527036109785, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.312 - } - }, - { - "model": "gtfs.shape", - "pk": 486, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93815622170643, - "shape_pt_lon": -84.0526341385986, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.322 - } - }, - { - "model": "gtfs.shape", - "pk": 487, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93824866125399, - "shape_pt_lon": -84.0524441849862, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.345 - } - }, - { - "model": "gtfs.shape", - "pk": 488, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93840212874288, - "shape_pt_lon": -84.0521210493447, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.385 - } - }, - { - "model": "gtfs.shape", - "pk": 489, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93859022704029, - "shape_pt_lon": -84.0518711468269, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.419 - } - }, - { - "model": "gtfs.shape", - "pk": 490, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9387164365478, - "shape_pt_lon": -84.0517146035903, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.441 - } - }, - { - "model": "gtfs.shape", - "pk": 491, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93883769238516, - "shape_pt_lon": -84.0515516901066, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.463 - } - }, - { - "model": "gtfs.shape", - "pk": 492, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93890538473733, - "shape_pt_lon": -84.0514467461262, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.477 - } - }, - { - "model": "gtfs.shape", - "pk": 493, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93897774723731, - "shape_pt_lon": -84.051298218969, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.495 - } - }, - { - "model": "gtfs.shape", - "pk": 494, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93901864778466, - "shape_pt_lon": -84.0511281313016, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.514 - } - }, - { - "model": "gtfs.shape", - "pk": 495, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93905404247567, - "shape_pt_lon": -84.0509181170952, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.538 - } - }, - { - "model": "gtfs.shape", - "pk": 496, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93908393146568, - "shape_pt_lon": -84.0503591447661, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.599 - } - }, - { - "model": "gtfs.shape", - "pk": 497, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93910272348104, - "shape_pt_lon": -84.0501183551865, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.626 - } - }, - { - "model": "gtfs.shape", - "pk": 498, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93910706388403, - "shape_pt_lon": -84.0499402779348, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.645 - } - }, - { - "model": "gtfs.shape", - "pk": 499, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93910711111161, - "shape_pt_lon": -84.0497648828928, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.664 - } - }, - { - "model": "gtfs.shape", - "pk": 500, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93906715286185, - "shape_pt_lon": -84.0496439745831, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.678 - } - }, - { - "model": "gtfs.shape", - "pk": 501, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93897699483947, - "shape_pt_lon": -84.0494999920866, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.697 - } - }, - { - "model": "gtfs.shape", - "pk": 502, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93879865248422, - "shape_pt_lon": -84.0492839130465, - "shape_pt_sequence": 38, - "shape_dist_traveled": 0.728 - } - }, - { - "model": "gtfs.shape", - "pk": 503, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93852631535243, - "shape_pt_lon": -84.0489259634067, - "shape_pt_sequence": 39, - "shape_dist_traveled": 0.777 - } - }, - { - "model": "gtfs.shape", - "pk": 504, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9383125595628, - "shape_pt_lon": -84.0486415140485, - "shape_pt_sequence": 40, - "shape_dist_traveled": 0.817 - } - }, - { - "model": "gtfs.shape", - "pk": 505, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93816149920894, - "shape_pt_lon": -84.0484645585026, - "shape_pt_sequence": 41, - "shape_dist_traveled": 0.842 - } - }, - { - "model": "gtfs.shape", - "pk": 506, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93801276292967, - "shape_pt_lon": -84.0483041187788, - "shape_pt_sequence": 42, - "shape_dist_traveled": 0.866 - } - }, - { - "model": "gtfs.shape", - "pk": 507, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93767314890347, - "shape_pt_lon": -84.0479456361923, - "shape_pt_sequence": 43, - "shape_dist_traveled": 0.921 - } - }, - { - "model": "gtfs.shape", - "pk": 508, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93762896738312, - "shape_pt_lon": -84.0479035036496, - "shape_pt_sequence": 44, - "shape_dist_traveled": 0.927 - } - }, - { - "model": "gtfs.shape", - "pk": 509, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9375818136517, - "shape_pt_lon": -84.0478664002497, - "shape_pt_sequence": 45, - "shape_dist_traveled": 0.934 - } - }, - { - "model": "gtfs.shape", - "pk": 510, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9375407094932, - "shape_pt_lon": -84.0478370279249, - "shape_pt_sequence": 46, - "shape_dist_traveled": 0.94 - } - }, - { - "model": "gtfs.shape", - "pk": 511, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93749795410686, - "shape_pt_lon": -84.0478110083611, - "shape_pt_sequence": 47, - "shape_dist_traveled": 0.945 - } - }, - { - "model": "gtfs.shape", - "pk": 512, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93745496587906, - "shape_pt_lon": -84.0477901145765, - "shape_pt_sequence": 48, - "shape_dist_traveled": 0.95 - } - }, - { - "model": "gtfs.shape", - "pk": 513, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93736508273494, - "shape_pt_lon": -84.0477598330601, - "shape_pt_sequence": 49, - "shape_dist_traveled": 0.961 - } - }, - { - "model": "gtfs.shape", - "pk": 514, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93726069019733, - "shape_pt_lon": -84.047759267964, - "shape_pt_sequence": 50, - "shape_dist_traveled": 0.972 - } - }, - { - "model": "gtfs.shape", - "pk": 515, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93707479279145, - "shape_pt_lon": -84.047793713066, - "shape_pt_sequence": 51, - "shape_dist_traveled": 0.993 - } - }, - { - "model": "gtfs.shape", - "pk": 516, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93681544721791, - "shape_pt_lon": -84.0478715216077, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.023 - } - }, - { - "model": "gtfs.shape", - "pk": 517, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93657305173134, - "shape_pt_lon": -84.0479476285628, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.051 - } - }, - { - "model": "gtfs.shape", - "pk": 518, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93622234344519, - "shape_pt_lon": -84.0480642553351, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.092 - } - }, - { - "model": "gtfs.shape", - "pk": 519, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93602464016541, - "shape_pt_lon": -84.0481251956082, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.115 - } - }, - { - "model": "gtfs.shape", - "pk": 520, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93585590049247, - "shape_pt_lon": -84.0481829479595, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.135 - } - }, - { - "model": "gtfs.shape", - "pk": 521, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9357089398831, - "shape_pt_lon": -84.0482522936584, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.153 - } - }, - { - "model": "gtfs.shape", - "pk": 522, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93563189742607, - "shape_pt_lon": -84.0482869664637, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.162 - } - }, - { - "model": "gtfs.shape", - "pk": 523, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93556048694849, - "shape_pt_lon": -84.0483531600847, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.173 - } - }, - { - "model": "gtfs.shape", - "pk": 524, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93549839086817, - "shape_pt_lon": -84.048435114092, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.184 - } - }, - { - "model": "gtfs.shape", - "pk": 525, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93546527295384, - "shape_pt_lon": -84.0485569944104, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.198 - } - }, - { - "model": "gtfs.shape", - "pk": 526, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9354549236054, - "shape_pt_lon": -84.0486547088036, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.209 - } - }, - { - "model": "gtfs.shape", - "pk": 527, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93528001900853, - "shape_pt_lon": -84.048634745016, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.228 - } - }, - { - "model": "gtfs.shape", - "pk": 528, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93529761291067, - "shape_pt_lon": -84.0483794267626, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.256 - } - }, - { - "model": "gtfs.shape", - "pk": 529, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9352527346308, - "shape_pt_lon": -84.0481286733116, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.284 - } - }, - { - "model": "gtfs.shape", - "pk": 530, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93512765815873, - "shape_pt_lon": -84.0477461762194, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.328 - } - }, - { - "model": "gtfs.shape", - "pk": 531, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93492703280895, - "shape_pt_lon": -84.0471055797031, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.402 - } - }, - { - "model": "gtfs.shape", - "pk": 532, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93478949058113, - "shape_pt_lon": -84.046354626689, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.486 - } - }, - { - "model": "gtfs.shape", - "pk": 533, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93469070939338, - "shape_pt_lon": -84.0458746565008, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.539 - } - }, - { - "model": "gtfs.shape", - "pk": 534, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93462060674132, - "shape_pt_lon": -84.0456143293, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.569 - } - }, - { - "model": "gtfs.shape", - "pk": 535, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93489289845325, - "shape_pt_lon": -84.0456070252698, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.599 - } - }, - { - "model": "gtfs.shape", - "pk": 536, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93495950947043, - "shape_pt_lon": -84.045606154414, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.606 - } - }, - { - "model": "gtfs.shape", - "pk": 537, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93502573261312, - "shape_pt_lon": -84.0455877894747, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.614 - } - }, - { - "model": "gtfs.shape", - "pk": 538, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93533984703067, - "shape_pt_lon": -84.0455793808645, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.649 - } - }, - { - "model": "gtfs.shape", - "pk": 539, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93553106245252, - "shape_pt_lon": -84.0455366983597, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.67 - } - }, - { - "model": "gtfs.shape", - "pk": 540, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93558489672501, - "shape_pt_lon": -84.0455256779408, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.677 - } - }, - { - "model": "gtfs.shape", - "pk": 541, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93566584972937, - "shape_pt_lon": -84.0454519050346, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.689 - } - }, - { - "model": "gtfs.shape", - "pk": 542, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93603020143902, - "shape_pt_lon": -84.0453870153627, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.73 - } - }, - { - "model": "gtfs.shape", - "pk": 543, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93619941008339, - "shape_pt_lon": -84.0453504149565, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.749 - } - }, - { - "model": "gtfs.shape", - "pk": 544, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93630011253566, - "shape_pt_lon": -84.0453617663184, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.76 - } - }, - { - "model": "gtfs.shape", - "pk": 545, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93651948121636, - "shape_pt_lon": -84.0454755016038, - "shape_pt_sequence": 81, - "shape_dist_traveled": 1.787 - } - }, - { - "model": "gtfs.shape", - "pk": 546, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93668368683727, - "shape_pt_lon": -84.0455653411938, - "shape_pt_sequence": 82, - "shape_dist_traveled": 1.808 - } - }, - { - "model": "gtfs.shape", - "pk": 547, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93677258981834, - "shape_pt_lon": -84.045589182648, - "shape_pt_sequence": 83, - "shape_dist_traveled": 1.818 - } - }, - { - "model": "gtfs.shape", - "pk": 548, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93685310570445, - "shape_pt_lon": -84.0455874796866, - "shape_pt_sequence": 84, - "shape_dist_traveled": 1.827 - } - }, - { - "model": "gtfs.shape", - "pk": 549, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93694508327091, - "shape_pt_lon": -84.0455437249918, - "shape_pt_sequence": 85, - "shape_dist_traveled": 1.838 - } - }, - { - "model": "gtfs.shape", - "pk": 550, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93708383542657, - "shape_pt_lon": -84.0454400845081, - "shape_pt_sequence": 86, - "shape_dist_traveled": 1.857 - } - }, - { - "model": "gtfs.shape", - "pk": 551, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93721635101928, - "shape_pt_lon": -84.045309807991, - "shape_pt_sequence": 87, - "shape_dist_traveled": 1.878 - } - }, - { - "model": "gtfs.shape", - "pk": 552, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93724819645461, - "shape_pt_lon": -84.0452761874456, - "shape_pt_sequence": 88, - "shape_dist_traveled": 1.883 - } - }, - { - "model": "gtfs.shape", - "pk": 553, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93734716375109, - "shape_pt_lon": -84.0451229209554, - "shape_pt_sequence": 89, - "shape_dist_traveled": 1.903 - } - }, - { - "model": "gtfs.shape", - "pk": 554, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93752119585777, - "shape_pt_lon": -84.0448187291416, - "shape_pt_sequence": 90, - "shape_dist_traveled": 1.941 - } - }, - { - "model": "gtfs.shape", - "pk": 555, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93767426097248, - "shape_pt_lon": -84.0445416760749, - "shape_pt_sequence": 91, - "shape_dist_traveled": 1.976 - } - }, - { - "model": "gtfs.shape", - "pk": 556, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93785833808635, - "shape_pt_lon": -84.0442186256065, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.017 - } - }, - { - "model": "gtfs.shape", - "pk": 557, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93810435753431, - "shape_pt_lon": -84.0437983732383, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.07 - } - }, - { - "model": "gtfs.shape", - "pk": 558, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93796632120651, - "shape_pt_lon": -84.0436125738981, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.096 - } - }, - { - "model": "gtfs.shape", - "pk": 559, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93791432144543, - "shape_pt_lon": -84.0434414999464, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.116 - } - }, - { - "model": "gtfs.shape", - "pk": 560, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93788832161072, - "shape_pt_lon": -84.0432184120559, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.14 - } - }, - { - "model": "gtfs.shape", - "pk": 561, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93792789506808, - "shape_pt_lon": -84.042939145496, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.171 - } - }, - { - "model": "gtfs.shape", - "pk": 562, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93799597108977, - "shape_pt_lon": -84.0425252959219, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.217 - } - }, - { - "model": "gtfs.shape", - "pk": 563, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93800488549925, - "shape_pt_lon": -84.0424724302894, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.223 - } - }, - { - "model": "gtfs.shape", - "pk": 564, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9381395635656, - "shape_pt_lon": -84.0421750587842, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.259 - } - }, - { - "model": "gtfs.shape", - "pk": 565, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93816556338036, - "shape_pt_lon": -84.0419988023209, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.278 - } - }, - { - "model": "gtfs.shape", - "pk": 566, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93815877702913, - "shape_pt_lon": -84.0418468568672, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.295 - } - }, - { - "model": "gtfs.shape", - "pk": 567, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93812774499086, - "shape_pt_lon": -84.0417208377531, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.309 - } - }, - { - "model": "gtfs.shape", - "pk": 568, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93810465445374, - "shape_pt_lon": -84.0416827286396, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.314 - } - }, - { - "model": "gtfs.shape", - "pk": 569, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93807826146448, - "shape_pt_lon": -84.0416493133915, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.319 - } - }, - { - "model": "gtfs.shape", - "pk": 570, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93804738144964, - "shape_pt_lon": -84.0416349312544, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.323 - } - }, - { - "model": "gtfs.shape", - "pk": 571, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93801451996184, - "shape_pt_lon": -84.0416322837814, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.326 - } - }, - { - "model": "gtfs.shape", - "pk": 572, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93792436774485, - "shape_pt_lon": -84.0416346601389, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.336 - } - }, - { - "model": "gtfs.shape", - "pk": 573, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93790082410227, - "shape_pt_lon": -84.041067340985, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.399 - } - }, - { - "model": "gtfs.shape", - "pk": 574, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93846425290711, - "shape_pt_lon": -84.0409284047187, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.463 - } - }, - { - "model": "gtfs.shape", - "pk": 575, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93868651413261, - "shape_pt_lon": -84.0409624274215, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.488 - } - }, - { - "model": "gtfs.shape", - "pk": 576, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93885247660523, - "shape_pt_lon": -84.0411341586918, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.514 - } - }, - { - "model": "gtfs.shape", - "pk": 577, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93915539473273, - "shape_pt_lon": -84.0416474460876, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.579 - } - }, - { - "model": "gtfs.shape", - "pk": 578, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93928861127028, - "shape_pt_lon": -84.0417889786806, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.601 - } - }, - { - "model": "gtfs.shape", - "pk": 579, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9394354239606, - "shape_pt_lon": -84.0418813247414, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.62 - } - }, - { - "model": "gtfs.shape", - "pk": 580, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93950244712471, - "shape_pt_lon": -84.0419056263361, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.628 - } - }, - { - "model": "gtfs.shape", - "pk": 581, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93950244613303, - "shape_pt_lon": -84.042239368576, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.664 - } - }, - { - "model": "gtfs.shape", - "pk": 582, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93949446718606, - "shape_pt_lon": -84.0425196469705, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.695 - } - }, - { - "model": "gtfs.shape", - "pk": 583, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93945457168453, - "shape_pt_lon": -84.0429991991022, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.748 - } - }, - { - "model": "gtfs.shape", - "pk": 584, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93942712460796, - "shape_pt_lon": -84.043331873611, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.784 - } - }, - { - "model": "gtfs.shape", - "pk": 585, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93972789866721, - "shape_pt_lon": -84.0432605742965, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.819 - } - }, - { - "model": "gtfs.shape", - "pk": 586, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93979051078508, - "shape_pt_lon": -84.0432941313524, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.826 - } - }, - { - "model": "gtfs.shape", - "pk": 587, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93982252793726, - "shape_pt_lon": -84.0433753940134, - "shape_pt_sequence": 123, - "shape_dist_traveled": 2.836 - } - }, - { - "model": "gtfs.shape", - "pk": 588, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.93991292983544, - "shape_pt_lon": -84.0437147893588, - "shape_pt_sequence": 124, - "shape_dist_traveled": 2.875 - } - }, - { - "model": "gtfs.shape", - "pk": 589, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94002028140903, - "shape_pt_lon": -84.0441287509128, - "shape_pt_sequence": 125, - "shape_dist_traveled": 2.922 - } - }, - { - "model": "gtfs.shape", - "pk": 590, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94016644833328, - "shape_pt_lon": -84.0446669802431, - "shape_pt_sequence": 126, - "shape_dist_traveled": 2.983 - } - }, - { - "model": "gtfs.shape", - "pk": 591, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94027078687104, - "shape_pt_lon": -84.044823754755, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.003 - } - }, - { - "model": "gtfs.shape", - "pk": 592, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94048864067421, - "shape_pt_lon": -84.0456295904777, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.095 - } - }, - { - "model": "gtfs.shape", - "pk": 593, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9406416703034, - "shape_pt_lon": -84.045594280927, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.112 - } - }, - { - "model": "gtfs.shape", - "pk": 594, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94079771456593, - "shape_pt_lon": -84.0450692602221, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.172 - } - }, - { - "model": "gtfs.shape", - "pk": 595, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9409503711104, - "shape_pt_lon": -84.0447481499267, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.212 - } - }, - { - "model": "gtfs.shape", - "pk": 596, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94105192700053, - "shape_pt_lon": -84.0446521079484, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.227 - } - }, - { - "model": "gtfs.shape", - "pk": 597, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94171142158802, - "shape_pt_lon": -84.0446962954808, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.3 - } - }, - { - "model": "gtfs.shape", - "pk": 598, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94281915936154, - "shape_pt_lon": -84.0447683576565, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.423 - } - }, - { - "model": "gtfs.shape", - "pk": 599, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94301266464211, - "shape_pt_lon": -84.0447317924328, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.445 - } - }, - { - "model": "gtfs.shape", - "pk": 600, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94326484610015, - "shape_pt_lon": -84.0446461368594, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.474 - } - }, - { - "model": "gtfs.shape", - "pk": 601, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94367235170777, - "shape_pt_lon": -84.0444664659679, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.523 - } - }, - { - "model": "gtfs.shape", - "pk": 602, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94380140312083, - "shape_pt_lon": -84.044752272012, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.558 - } - }, - { - "model": "gtfs.shape", - "pk": 603, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9438796367465, - "shape_pt_lon": -84.0448814333755, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.574 - } - }, - { - "model": "gtfs.shape", - "pk": 604, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94396952509255, - "shape_pt_lon": -84.0449503878825, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.587 - } - }, - { - "model": "gtfs.shape", - "pk": 605, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94433433418409, - "shape_pt_lon": -84.044987908675, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.627 - } - }, - { - "model": "gtfs.shape", - "pk": 606, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94457411376674, - "shape_pt_lon": -84.0450080280451, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.654 - } - }, - { - "model": "gtfs.shape", - "pk": 607, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94495390060397, - "shape_pt_lon": -84.0450080280451, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.696 - } - }, - { - "model": "gtfs.shape", - "pk": 608, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94504571713547, - "shape_pt_lon": -84.0450786471473, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.709 - } - }, - { - "model": "gtfs.shape", - "pk": 609, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94507075688808, - "shape_pt_lon": -84.0453964329445, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.744 - } - }, - { - "model": "gtfs.shape", - "pk": 610, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94509858007239, - "shape_pt_lon": -84.0454995368328, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.755 - } - }, - { - "model": "gtfs.shape", - "pk": 611, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94517301639726, - "shape_pt_lon": -84.0455360879379, - "shape_pt_sequence": 147, - "shape_dist_traveled": 3.764 - } - }, - { - "model": "gtfs.shape", - "pk": 612, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94569599438186, - "shape_pt_lon": -84.0455012141288, - "shape_pt_sequence": 148, - "shape_dist_traveled": 3.822 - } - }, - { - "model": "gtfs.shape", - "pk": 613, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94576731883437, - "shape_pt_lon": -84.0454579354822, - "shape_pt_sequence": 149, - "shape_dist_traveled": 3.832 - } - }, - { - "model": "gtfs.shape", - "pk": 614, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94587443785238, - "shape_pt_lon": -84.0452474905592, - "shape_pt_sequence": 150, - "shape_dist_traveled": 3.858 - } - }, - { - "model": "gtfs.shape", - "pk": 615, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94594677794762, - "shape_pt_lon": -84.0451754590753, - "shape_pt_sequence": 151, - "shape_dist_traveled": 3.869 - } - }, - { - "model": "gtfs.shape", - "pk": 616, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94629204599402, - "shape_pt_lon": -84.0451469719024, - "shape_pt_sequence": 152, - "shape_dist_traveled": 3.907 - } - }, - { - "model": "gtfs.shape", - "pk": 617, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.9463908179176, - "shape_pt_lon": -84.0451610957222, - "shape_pt_sequence": 153, - "shape_dist_traveled": 3.918 - } - }, - { - "model": "gtfs.shape", - "pk": 618, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94645063751956, - "shape_pt_lon": -84.0451992300371, - "shape_pt_sequence": 154, - "shape_dist_traveled": 3.926 - } - }, - { - "model": "gtfs.shape", - "pk": 619, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "shape_pt_lat": 9.94649738913102, - "shape_pt_lon": -84.0452562192863, - "shape_pt_sequence": 155, - "shape_dist_traveled": 3.934 - } - }, - { - "model": "gtfs.shape", - "pk": 620, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94651450274987, - "shape_pt_lon": -84.0452709224469, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "gtfs.shape", - "pk": 621, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9465713930344, - "shape_pt_lon": -84.0453586296957, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.011 - } - }, - { - "model": "gtfs.shape", - "pk": 622, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94670523135418, - "shape_pt_lon": -84.0455321860811, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.036 - } - }, - { - "model": "gtfs.shape", - "pk": 623, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94685977487793, - "shape_pt_lon": -84.0457428830683, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.064 - } - }, - { - "model": "gtfs.shape", - "pk": 624, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94692114024093, - "shape_pt_lon": -84.0458252584096, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.076 - } - }, - { - "model": "gtfs.shape", - "pk": 625, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94699848130395, - "shape_pt_lon": -84.045874911642, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.086 - } - }, - { - "model": "gtfs.shape", - "pk": 626, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94709174550324, - "shape_pt_lon": -84.0458702927366, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.096 - } - }, - { - "model": "gtfs.shape", - "pk": 627, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94733286724273, - "shape_pt_lon": -84.0456762984049, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.13 - } - }, - { - "model": "gtfs.shape", - "pk": 628, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94734992775087, - "shape_pt_lon": -84.0455816108455, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.141 - } - }, - { - "model": "gtfs.shape", - "pk": 629, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94731694409985, - "shape_pt_lon": -84.0454811496546, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.152 - } - }, - { - "model": "gtfs.shape", - "pk": 630, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94706331033958, - "shape_pt_lon": -84.0451520526366, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.198 - } - }, - { - "model": "gtfs.shape", - "pk": 631, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94695639770921, - "shape_pt_lon": -84.044934964086, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.225 - } - }, - { - "model": "gtfs.shape", - "pk": 632, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94685739750313, - "shape_pt_lon": -84.0447940381815, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.244 - } - }, - { - "model": "gtfs.shape", - "pk": 633, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94674934743632, - "shape_pt_lon": -84.0447120526121, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.259 - } - }, - { - "model": "gtfs.shape", - "pk": 634, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94663902259388, - "shape_pt_lon": -84.0446901128118, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.271 - } - }, - { - "model": "gtfs.shape", - "pk": 635, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94658480665502, - "shape_pt_lon": -84.0447036688627, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.277 - } - }, - { - "model": "gtfs.shape", - "pk": 636, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94652566341521, - "shape_pt_lon": -84.0447440842844, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.285 - } - }, - { - "model": "gtfs.shape", - "pk": 637, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94631063663281, - "shape_pt_lon": -84.0447956225084, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.31 - } - }, - { - "model": "gtfs.shape", - "pk": 638, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94607861289951, - "shape_pt_lon": -84.0448175623087, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.335 - } - }, - { - "model": "gtfs.shape", - "pk": 639, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94606268969643, - "shape_pt_lon": -84.0448198717614, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.337 - } - }, - { - "model": "gtfs.shape", - "pk": 640, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94607633849742, - "shape_pt_lon": -84.0451616705072, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.375 - } - }, - { - "model": "gtfs.shape", - "pk": 641, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94594816328299, - "shape_pt_lon": -84.0451794721398, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.389 - } - }, - { - "model": "gtfs.shape", - "pk": 642, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94587650883204, - "shape_pt_lon": -84.0452499104458, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.4 - } - }, - { - "model": "gtfs.shape", - "pk": 643, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94577755742257, - "shape_pt_lon": -84.0454566064596, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.425 - } - }, - { - "model": "gtfs.shape", - "pk": 644, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94570040854178, - "shape_pt_lon": -84.0455092507792, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.435 - } - }, - { - "model": "gtfs.shape", - "pk": 645, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94516698035057, - "shape_pt_lon": -84.0455392738468, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.494 - } - }, - { - "model": "gtfs.shape", - "pk": 646, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94508917283893, - "shape_pt_lon": -84.0455023654374, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.504 - } - }, - { - "model": "gtfs.shape", - "pk": 647, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94505732633557, - "shape_pt_lon": -84.045382273899, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.518 - } - }, - { - "model": "gtfs.shape", - "pk": 648, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94502889195332, - "shape_pt_lon": -84.0450808903258, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.551 - } - }, - { - "model": "gtfs.shape", - "pk": 649, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94495155042415, - "shape_pt_lon": -84.0450173803773, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.562 - } - }, - { - "model": "gtfs.shape", - "pk": 650, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94472000465252, - "shape_pt_lon": -84.045015769873, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.587 - } - }, - { - "model": "gtfs.shape", - "pk": 651, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94425679788889, - "shape_pt_lon": -84.0449868892884, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.639 - } - }, - { - "model": "gtfs.shape", - "pk": 652, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94389594579139, - "shape_pt_lon": -84.0449568041774, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.679 - } - }, - { - "model": "gtfs.shape", - "pk": 653, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9433847319748, - "shape_pt_lon": -84.0449197895004, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.736 - } - }, - { - "model": "gtfs.shape", - "pk": 654, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94261500079999, - "shape_pt_lon": -84.0448773383005, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.821 - } - }, - { - "model": "gtfs.shape", - "pk": 655, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94204155986042, - "shape_pt_lon": -84.0448390343892, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.884 - } - }, - { - "model": "gtfs.shape", - "pk": 656, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94137698645447, - "shape_pt_lon": -84.0448024388483, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.958 - } - }, - { - "model": "gtfs.shape", - "pk": 657, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94096102380372, - "shape_pt_lon": -84.0447771566035, - "shape_pt_sequence": 37, - "shape_dist_traveled": 1.004 - } - }, - { - "model": "gtfs.shape", - "pk": 658, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94082181962447, - "shape_pt_lon": -84.0450446175143, - "shape_pt_sequence": 38, - "shape_dist_traveled": 1.037 - } - }, - { - "model": "gtfs.shape", - "pk": 659, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94065523781238, - "shape_pt_lon": -84.0456053336701, - "shape_pt_sequence": 39, - "shape_dist_traveled": 1.101 - } - }, - { - "model": "gtfs.shape", - "pk": 660, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94048314593914, - "shape_pt_lon": -84.045634999557, - "shape_pt_sequence": 40, - "shape_dist_traveled": 1.121 - } - }, - { - "model": "gtfs.shape", - "pk": 661, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9403780406827, - "shape_pt_lon": -84.0452283043053, - "shape_pt_sequence": 41, - "shape_dist_traveled": 1.167 - } - }, - { - "model": "gtfs.shape", - "pk": 662, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9402703855621, - "shape_pt_lon": -84.04482278961, - "shape_pt_sequence": 42, - "shape_dist_traveled": 1.213 - } - }, - { - "model": "gtfs.shape", - "pk": 663, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94016328794055, - "shape_pt_lon": -84.0446641785108, - "shape_pt_sequence": 43, - "shape_dist_traveled": 1.234 - } - }, - { - "model": "gtfs.shape", - "pk": 664, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.94010181117775, - "shape_pt_lon": -84.0444165990228, - "shape_pt_sequence": 44, - "shape_dist_traveled": 1.262 - } - }, - { - "model": "gtfs.shape", - "pk": 665, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93971666992378, - "shape_pt_lon": -84.0445263287881, - "shape_pt_sequence": 45, - "shape_dist_traveled": 1.306 - } - }, - { - "model": "gtfs.shape", - "pk": 666, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93932936015097, - "shape_pt_lon": -84.0446221116145, - "shape_pt_sequence": 46, - "shape_dist_traveled": 1.35 - } - }, - { - "model": "gtfs.shape", - "pk": 667, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93920408915902, - "shape_pt_lon": -84.0446545394456, - "shape_pt_sequence": 47, - "shape_dist_traveled": 1.364 - } - }, - { - "model": "gtfs.shape", - "pk": 668, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9391568243881, - "shape_pt_lon": -84.0446456512568, - "shape_pt_sequence": 48, - "shape_dist_traveled": 1.37 - } - }, - { - "model": "gtfs.shape", - "pk": 669, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93912509354336, - "shape_pt_lon": -84.0446159514984, - "shape_pt_sequence": 49, - "shape_dist_traveled": 1.375 - } - }, - { - "model": "gtfs.shape", - "pk": 670, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93911021843789, - "shape_pt_lon": -84.0445637722231, - "shape_pt_sequence": 50, - "shape_dist_traveled": 1.381 - } - }, - { - "model": "gtfs.shape", - "pk": 671, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93919615665697, - "shape_pt_lon": -84.0443354246074, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.407 - } - }, - { - "model": "gtfs.shape", - "pk": 672, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.939024, - "shape_pt_lon": -84.043697, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.459 - } - }, - { - "model": "gtfs.shape", - "pk": 673, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9389589108528, - "shape_pt_lon": -84.0434647440871, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.506 - } - }, - { - "model": "gtfs.shape", - "pk": 674, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93927926961302, - "shape_pt_lon": -84.0433689657322, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.543 - } - }, - { - "model": "gtfs.shape", - "pk": 675, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9394214266361, - "shape_pt_lon": -84.0433251613281, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.56 - } - }, - { - "model": "gtfs.shape", - "pk": 676, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.939438, - "shape_pt_lon": -84.043078, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.597 - } - }, - { - "model": "gtfs.shape", - "pk": 677, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93949676004582, - "shape_pt_lon": -84.0424704121516, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.654 - } - }, - { - "model": "gtfs.shape", - "pk": 678, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950197815545, - "shape_pt_lon": -84.0423387592283, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.668 - } - }, - { - "model": "gtfs.shape", - "pk": 679, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950471943605, - "shape_pt_lon": -84.042195874555, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.684 - } - }, - { - "model": "gtfs.shape", - "pk": 680, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950937287681, - "shape_pt_lon": -84.0420595652431, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.699 - } - }, - { - "model": "gtfs.shape", - "pk": 681, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93950560510053, - "shape_pt_lon": -84.0419237588459, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.714 - } - }, - { - "model": "gtfs.shape", - "pk": 682, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93932694656827, - "shape_pt_lon": -84.0418526043861, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.735 - } - }, - { - "model": "gtfs.shape", - "pk": 683, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93916441674404, - "shape_pt_lon": -84.0416871226965, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.761 - } - }, - { - "model": "gtfs.shape", - "pk": 684, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93904364750639, - "shape_pt_lon": -84.0415030389796, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.785 - } - }, - { - "model": "gtfs.shape", - "pk": 685, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93882652989536, - "shape_pt_lon": -84.0411360631089, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.832 - } - }, - { - "model": "gtfs.shape", - "pk": 686, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93877761093714, - "shape_pt_lon": -84.0410711382821, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.841 - } - }, - { - "model": "gtfs.shape", - "pk": 687, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93872439879922, - "shape_pt_lon": -84.0410192892248, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.849 - } - }, - { - "model": "gtfs.shape", - "pk": 688, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93860739420377, - "shape_pt_lon": -84.0409548622543, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.863 - } - }, - { - "model": "gtfs.shape", - "pk": 689, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93847712489684, - "shape_pt_lon": -84.0409464827492, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.878 - } - }, - { - "model": "gtfs.shape", - "pk": 690, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93831748290179, - "shape_pt_lon": -84.0409847362632, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.896 - } - }, - { - "model": "gtfs.shape", - "pk": 691, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93790526804534, - "shape_pt_lon": -84.0410975311932, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.943 - } - }, - { - "model": "gtfs.shape", - "pk": 692, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93791543483811, - "shape_pt_lon": -84.0413721007657, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.973 - } - }, - { - "model": "gtfs.shape", - "pk": 693, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93792971313351, - "shape_pt_lon": -84.0416234000621, - "shape_pt_sequence": 73, - "shape_dist_traveled": 2.001 - } - }, - { - "model": "gtfs.shape", - "pk": 694, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93801943406157, - "shape_pt_lon": -84.0416214268987, - "shape_pt_sequence": 74, - "shape_dist_traveled": 2.011 - } - }, - { - "model": "gtfs.shape", - "pk": 695, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93808013647371, - "shape_pt_lon": -84.0416385167757, - "shape_pt_sequence": 75, - "shape_dist_traveled": 2.018 - } - }, - { - "model": "gtfs.shape", - "pk": 696, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9381333560273, - "shape_pt_lon": -84.0417143841426, - "shape_pt_sequence": 76, - "shape_dist_traveled": 2.028 - } - }, - { - "model": "gtfs.shape", - "pk": 697, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9381491692212, - "shape_pt_lon": -84.0417661717713, - "shape_pt_sequence": 77, - "shape_dist_traveled": 2.034 - } - }, - { - "model": "gtfs.shape", - "pk": 698, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93816498245021, - "shape_pt_lon": -84.0418402279053, - "shape_pt_sequence": 78, - "shape_dist_traveled": 2.042 - } - }, - { - "model": "gtfs.shape", - "pk": 699, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93817110369939, - "shape_pt_lon": -84.041955196169, - "shape_pt_sequence": 79, - "shape_dist_traveled": 2.055 - } - }, - { - "model": "gtfs.shape", - "pk": 700, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93816447211196, - "shape_pt_lon": -84.0420620743374, - "shape_pt_sequence": 80, - "shape_dist_traveled": 2.067 - } - }, - { - "model": "gtfs.shape", - "pk": 701, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93814558312971, - "shape_pt_lon": -84.042172549653, - "shape_pt_sequence": 81, - "shape_dist_traveled": 2.079 - } - }, - { - "model": "gtfs.shape", - "pk": 702, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93806546361139, - "shape_pt_lon": -84.0423590295751, - "shape_pt_sequence": 82, - "shape_dist_traveled": 2.101 - } - }, - { - "model": "gtfs.shape", - "pk": 703, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93800868895506, - "shape_pt_lon": -84.0424754995415, - "shape_pt_sequence": 83, - "shape_dist_traveled": 2.116 - } - }, - { - "model": "gtfs.shape", - "pk": 704, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93798455282835, - "shape_pt_lon": -84.0426277550985, - "shape_pt_sequence": 84, - "shape_dist_traveled": 2.132 - } - }, - { - "model": "gtfs.shape", - "pk": 705, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93793303246509, - "shape_pt_lon": -84.0429680898401, - "shape_pt_sequence": 85, - "shape_dist_traveled": 2.17 - } - }, - { - "model": "gtfs.shape", - "pk": 706, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93789255913571, - "shape_pt_lon": -84.0431865014681, - "shape_pt_sequence": 86, - "shape_dist_traveled": 2.195 - } - }, - { - "model": "gtfs.shape", - "pk": 707, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93792278510311, - "shape_pt_lon": -84.0434262188335, - "shape_pt_sequence": 87, - "shape_dist_traveled": 2.221 - } - }, - { - "model": "gtfs.shape", - "pk": 708, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93793612530689, - "shape_pt_lon": -84.0435140997635, - "shape_pt_sequence": 88, - "shape_dist_traveled": 2.231 - } - }, - { - "model": "gtfs.shape", - "pk": 709, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93796843588535, - "shape_pt_lon": -84.0436045719397, - "shape_pt_sequence": 89, - "shape_dist_traveled": 2.241 - } - }, - { - "model": "gtfs.shape", - "pk": 710, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93811029202329, - "shape_pt_lon": -84.0437946545471, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.267 - } - }, - { - "model": "gtfs.shape", - "pk": 711, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93796317506452, - "shape_pt_lon": -84.044044224914, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.299 - } - }, - { - "model": "gtfs.shape", - "pk": 712, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93778888741941, - "shape_pt_lon": -84.0443497474269, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.338 - } - }, - { - "model": "gtfs.shape", - "pk": 713, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93759056212761, - "shape_pt_lon": -84.0447040111923, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.383 - } - }, - { - "model": "gtfs.shape", - "pk": 714, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93743889754011, - "shape_pt_lon": -84.0449773758339, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.417 - } - }, - { - "model": "gtfs.shape", - "pk": 715, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93734106177819, - "shape_pt_lon": -84.0451442319336, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.438 - } - }, - { - "model": "gtfs.shape", - "pk": 716, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93725220134541, - "shape_pt_lon": -84.0452700748287, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.455 - } - }, - { - "model": "gtfs.shape", - "pk": 717, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93710383236486, - "shape_pt_lon": -84.0454232410009, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.479 - } - }, - { - "model": "gtfs.shape", - "pk": 718, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93703302156643, - "shape_pt_lon": -84.045480287002, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.489 - } - }, - { - "model": "gtfs.shape", - "pk": 719, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93692669580576, - "shape_pt_lon": -84.0455559204937, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.503 - } - }, - { - "model": "gtfs.shape", - "pk": 720, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93685320196694, - "shape_pt_lon": -84.0455868138288, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.512 - } - }, - { - "model": "gtfs.shape", - "pk": 721, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93677214106483, - "shape_pt_lon": -84.045591032246, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.521 - } - }, - { - "model": "gtfs.shape", - "pk": 722, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93667892839703, - "shape_pt_lon": -84.0455673986725, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.531 - } - }, - { - "model": "gtfs.shape", - "pk": 723, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93652937757293, - "shape_pt_lon": -84.0454873867401, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.55 - } - }, - { - "model": "gtfs.shape", - "pk": 724, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93646683969579, - "shape_pt_lon": -84.0454491600057, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.558 - } - }, - { - "model": "gtfs.shape", - "pk": 725, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93640033885562, - "shape_pt_lon": -84.0454129449283, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.567 - } - }, - { - "model": "gtfs.shape", - "pk": 726, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93634297166293, - "shape_pt_lon": -84.0453776127618, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.574 - } - }, - { - "model": "gtfs.shape", - "pk": 727, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93629576054226, - "shape_pt_lon": -84.0453623778292, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.579 - } - }, - { - "model": "gtfs.shape", - "pk": 728, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93624363287526, - "shape_pt_lon": -84.0453512637102, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.585 - } - }, - { - "model": "gtfs.shape", - "pk": 729, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9361862212533, - "shape_pt_lon": -84.0453538959122, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.592 - } - }, - { - "model": "gtfs.shape", - "pk": 730, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93603883510741, - "shape_pt_lon": -84.0453890269646, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.608 - } - }, - { - "model": "gtfs.shape", - "pk": 731, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93580414505913, - "shape_pt_lon": -84.0454308854351, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.635 - } - }, - { - "model": "gtfs.shape", - "pk": 732, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93565385732093, - "shape_pt_lon": -84.0454587046985, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.652 - } - }, - { - "model": "gtfs.shape", - "pk": 733, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93558390036268, - "shape_pt_lon": -84.0455252542674, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.662 - } - }, - { - "model": "gtfs.shape", - "pk": 734, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93547184500151, - "shape_pt_lon": -84.0455798539966, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.676 - } - }, - { - "model": "gtfs.shape", - "pk": 735, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93533906172064, - "shape_pt_lon": -84.0456377473207, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.692 - } - }, - { - "model": "gtfs.shape", - "pk": 736, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93501118853525, - "shape_pt_lon": -84.0456383288227, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.728 - } - }, - { - "model": "gtfs.shape", - "pk": 737, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93495718975151, - "shape_pt_lon": -84.0456086223286, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.735 - } - }, - { - "model": "gtfs.shape", - "pk": 738, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93465006354252, - "shape_pt_lon": -84.0456168978697, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.769 - } - }, - { - "model": "gtfs.shape", - "pk": 739, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93477095640989, - "shape_pt_lon": -84.0461340991613, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.827 - } - }, - { - "model": "gtfs.shape", - "pk": 740, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93490403346722, - "shape_pt_lon": -84.0468176973466, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.904 - } - }, - { - "model": "gtfs.shape", - "pk": 741, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93495932029753, - "shape_pt_lon": -84.0471113963055, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.937 - } - }, - { - "model": "gtfs.shape", - "pk": 742, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93505827498137, - "shape_pt_lon": -84.0474601236579, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.976 - } - }, - { - "model": "gtfs.shape", - "pk": 743, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93519897363926, - "shape_pt_lon": -84.0478899692808, - "shape_pt_sequence": 123, - "shape_dist_traveled": 3.026 - } - }, - { - "model": "gtfs.shape", - "pk": 744, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93527449143981, - "shape_pt_lon": -84.0481284685146, - "shape_pt_sequence": 124, - "shape_dist_traveled": 3.053 - } - }, - { - "model": "gtfs.shape", - "pk": 745, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93531543817006, - "shape_pt_lon": -84.0483778894022, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.081 - } - }, - { - "model": "gtfs.shape", - "pk": 746, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93529755715117, - "shape_pt_lon": -84.0486249437023, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.108 - } - }, - { - "model": "gtfs.shape", - "pk": 747, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.93545425079317, - "shape_pt_lon": -84.0486430566726, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.126 - } - }, - { - "model": "gtfs.shape", - "pk": 748, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9354703595261, - "shape_pt_lon": -84.0488000764969, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.143 - } - }, - { - "model": "gtfs.shape", - "pk": 749, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "shape_pt_lat": 9.9355323422866, - "shape_pt_lon": -84.0490437766179, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.171 - } - }, - { - "model": "gtfs.shape", - "pk": 750, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94651439468106, - "shape_pt_lon": -84.0452793145875, - "shape_pt_sequence": 0, - "shape_dist_traveled": 0.0 - } - }, - { - "model": "gtfs.shape", - "pk": 751, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94656979269062, - "shape_pt_lon": -84.0453635889366, - "shape_pt_sequence": 1, - "shape_dist_traveled": 0.011 - } - }, - { - "model": "gtfs.shape", - "pk": 752, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94668819013391, - "shape_pt_lon": -84.0455133598416, - "shape_pt_sequence": 2, - "shape_dist_traveled": 0.032 - } - }, - { - "model": "gtfs.shape", - "pk": 753, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94677813595565, - "shape_pt_lon": -84.0456333624982, - "shape_pt_sequence": 3, - "shape_dist_traveled": 0.049 - } - }, - { - "model": "gtfs.shape", - "pk": 754, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94692110409536, - "shape_pt_lon": -84.0458288226395, - "shape_pt_sequence": 4, - "shape_dist_traveled": 0.075 - } - }, - { - "model": "gtfs.shape", - "pk": 755, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94699667079666, - "shape_pt_lon": -84.0458784281265, - "shape_pt_sequence": 5, - "shape_dist_traveled": 0.085 - } - }, - { - "model": "gtfs.shape", - "pk": 756, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94709290535486, - "shape_pt_lon": -84.0458729567443, - "shape_pt_sequence": 6, - "shape_dist_traveled": 0.096 - } - }, - { - "model": "gtfs.shape", - "pk": 757, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94722193423012, - "shape_pt_lon": -84.0457747817661, - "shape_pt_sequence": 7, - "shape_dist_traveled": 0.114 - } - }, - { - "model": "gtfs.shape", - "pk": 758, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94733469552996, - "shape_pt_lon": -84.0456766067879, - "shape_pt_sequence": 8, - "shape_dist_traveled": 0.13 - } - }, - { - "model": "gtfs.shape", - "pk": 759, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94735240267321, - "shape_pt_lon": -84.0455812484176, - "shape_pt_sequence": 9, - "shape_dist_traveled": 0.141 - } - }, - { - "model": "gtfs.shape", - "pk": 760, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94731698838683, - "shape_pt_lon": -84.0454835451677, - "shape_pt_sequence": 10, - "shape_dist_traveled": 0.152 - } - }, - { - "model": "gtfs.shape", - "pk": 761, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94706401578786, - "shape_pt_lon": -84.045155482603, - "shape_pt_sequence": 11, - "shape_dist_traveled": 0.198 - } - }, - { - "model": "gtfs.shape", - "pk": 762, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94695753981341, - "shape_pt_lon": -84.0449388905875, - "shape_pt_sequence": 12, - "shape_dist_traveled": 0.224 - } - }, - { - "model": "gtfs.shape", - "pk": 763, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94685591607748, - "shape_pt_lon": -84.0447927265256, - "shape_pt_sequence": 13, - "shape_dist_traveled": 0.244 - } - }, - { - "model": "gtfs.shape", - "pk": 764, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94674691466528, - "shape_pt_lon": -84.0447132911805, - "shape_pt_sequence": 14, - "shape_dist_traveled": 0.259 - } - }, - { - "model": "gtfs.shape", - "pk": 765, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94663836196663, - "shape_pt_lon": -84.0446929689046, - "shape_pt_sequence": 15, - "shape_dist_traveled": 0.271 - } - }, - { - "model": "gtfs.shape", - "pk": 766, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9465853910728, - "shape_pt_lon": -84.0447054750041, - "shape_pt_sequence": 16, - "shape_dist_traveled": 0.277 - } - }, - { - "model": "gtfs.shape", - "pk": 767, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94652457073993, - "shape_pt_lon": -84.0447469011822, - "shape_pt_sequence": 17, - "shape_dist_traveled": 0.285 - } - }, - { - "model": "gtfs.shape", - "pk": 768, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94630948675802, - "shape_pt_lon": -84.0447977068717, - "shape_pt_sequence": 18, - "shape_dist_traveled": 0.31 - } - }, - { - "model": "gtfs.shape", - "pk": 769, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94606507414992, - "shape_pt_lon": -84.0448235005163, - "shape_pt_sequence": 19, - "shape_dist_traveled": 0.337 - } - }, - { - "model": "gtfs.shape", - "pk": 770, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94607893196729, - "shape_pt_lon": -84.0451642894519, - "shape_pt_sequence": 20, - "shape_dist_traveled": 0.374 - } - }, - { - "model": "gtfs.shape", - "pk": 771, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94594726623906, - "shape_pt_lon": -84.0451842895768, - "shape_pt_sequence": 21, - "shape_dist_traveled": 0.389 - } - }, - { - "model": "gtfs.shape", - "pk": 772, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94587566747948, - "shape_pt_lon": -84.0452538542911, - "shape_pt_sequence": 22, - "shape_dist_traveled": 0.4 - } - }, - { - "model": "gtfs.shape", - "pk": 773, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94577795917383, - "shape_pt_lon": -84.0454601695233, - "shape_pt_sequence": 23, - "shape_dist_traveled": 0.425 - } - }, - { - "model": "gtfs.shape", - "pk": 774, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94569943146, - "shape_pt_lon": -84.0455125384658, - "shape_pt_sequence": 24, - "shape_dist_traveled": 0.435 - } - }, - { - "model": "gtfs.shape", - "pk": 775, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94545154684154, - "shape_pt_lon": -84.0455252458136, - "shape_pt_sequence": 25, - "shape_dist_traveled": 0.463 - } - }, - { - "model": "gtfs.shape", - "pk": 776, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94516751299271, - "shape_pt_lon": -84.0455414357082, - "shape_pt_sequence": 26, - "shape_dist_traveled": 0.494 - } - }, - { - "model": "gtfs.shape", - "pk": 777, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94508849180003, - "shape_pt_lon": -84.0455037479672, - "shape_pt_sequence": 27, - "shape_dist_traveled": 0.504 - } - }, - { - "model": "gtfs.shape", - "pk": 778, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94505511036374, - "shape_pt_lon": -84.0453835472561, - "shape_pt_sequence": 28, - "shape_dist_traveled": 0.518 - } - }, - { - "model": "gtfs.shape", - "pk": 779, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94502739484005, - "shape_pt_lon": -84.045084965639, - "shape_pt_sequence": 29, - "shape_dist_traveled": 0.55 - } - }, - { - "model": "gtfs.shape", - "pk": 780, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94499479036127, - "shape_pt_lon": -84.0450504044021, - "shape_pt_sequence": 30, - "shape_dist_traveled": 0.556 - } - }, - { - "model": "gtfs.shape", - "pk": 781, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94494963682908, - "shape_pt_lon": -84.0450208723069, - "shape_pt_sequence": 31, - "shape_dist_traveled": 0.562 - } - }, - { - "model": "gtfs.shape", - "pk": 782, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94467428591231, - "shape_pt_lon": -84.0450154011338, - "shape_pt_sequence": 32, - "shape_dist_traveled": 0.592 - } - }, - { - "model": "gtfs.shape", - "pk": 783, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94435778151253, - "shape_pt_lon": -84.0450041637077, - "shape_pt_sequence": 33, - "shape_dist_traveled": 0.627 - } - }, - { - "model": "gtfs.shape", - "pk": 784, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94347268380579, - "shape_pt_lon": -84.0449287137552, - "shape_pt_sequence": 34, - "shape_dist_traveled": 0.725 - } - }, - { - "model": "gtfs.shape", - "pk": 785, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94295817880508, - "shape_pt_lon": -84.0448982678798, - "shape_pt_sequence": 35, - "shape_dist_traveled": 0.782 - } - }, - { - "model": "gtfs.shape", - "pk": 786, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94230048632557, - "shape_pt_lon": -84.0448587644203, - "shape_pt_sequence": 36, - "shape_dist_traveled": 0.855 - } - }, - { - "model": "gtfs.shape", - "pk": 787, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94171228683352, - "shape_pt_lon": -84.0448222996627, - "shape_pt_sequence": 37, - "shape_dist_traveled": 0.92 - } - }, - { - "model": "gtfs.shape", - "pk": 788, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94096530647596, - "shape_pt_lon": -84.0447760219723, - "shape_pt_sequence": 38, - "shape_dist_traveled": 1.003 - } - }, - { - "model": "gtfs.shape", - "pk": 789, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94090663320268, - "shape_pt_lon": -84.0448740739734, - "shape_pt_sequence": 39, - "shape_dist_traveled": 1.016 - } - }, - { - "model": "gtfs.shape", - "pk": 790, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94084406020503, - "shape_pt_lon": -84.0449871934796, - "shape_pt_sequence": 40, - "shape_dist_traveled": 1.03 - } - }, - { - "model": "gtfs.shape", - "pk": 791, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94077751897418, - "shape_pt_lon": -84.0452171289551, - "shape_pt_sequence": 41, - "shape_dist_traveled": 1.056 - } - }, - { - "model": "gtfs.shape", - "pk": 792, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94072156165138, - "shape_pt_lon": -84.0453974813657, - "shape_pt_sequence": 42, - "shape_dist_traveled": 1.077 - } - }, - { - "model": "gtfs.shape", - "pk": 793, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94066022328121, - "shape_pt_lon": -84.0456042948351, - "shape_pt_sequence": 43, - "shape_dist_traveled": 1.101 - } - }, - { - "model": "gtfs.shape", - "pk": 794, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94049309734092, - "shape_pt_lon": -84.0456331735173, - "shape_pt_sequence": 44, - "shape_dist_traveled": 1.119 - } - }, - { - "model": "gtfs.shape", - "pk": 795, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94043960234258, - "shape_pt_lon": -84.0454384499972, - "shape_pt_sequence": 45, - "shape_dist_traveled": 1.142 - } - }, - { - "model": "gtfs.shape", - "pk": 796, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94037244769911, - "shape_pt_lon": -84.0451953028132, - "shape_pt_sequence": 46, - "shape_dist_traveled": 1.169 - } - }, - { - "model": "gtfs.shape", - "pk": 797, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94027492444419, - "shape_pt_lon": -84.0448203307503, - "shape_pt_sequence": 47, - "shape_dist_traveled": 1.212 - } - }, - { - "model": "gtfs.shape", - "pk": 798, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94022435173391, - "shape_pt_lon": -84.0447437519701, - "shape_pt_sequence": 48, - "shape_dist_traveled": 1.222 - } - }, - { - "model": "gtfs.shape", - "pk": 799, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94016681408322, - "shape_pt_lon": -84.0446621944019, - "shape_pt_sequence": 49, - "shape_dist_traveled": 1.233 - } - }, - { - "model": "gtfs.shape", - "pk": 800, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.94010200702146, - "shape_pt_lon": -84.044417503094, - "shape_pt_sequence": 50, - "shape_dist_traveled": 1.261 - } - }, - { - "model": "gtfs.shape", - "pk": 801, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93987745974345, - "shape_pt_lon": -84.0444809655781, - "shape_pt_sequence": 51, - "shape_dist_traveled": 1.286 - } - }, - { - "model": "gtfs.shape", - "pk": 802, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93971459423953, - "shape_pt_lon": -84.0445245874922, - "shape_pt_sequence": 52, - "shape_dist_traveled": 1.305 - } - }, - { - "model": "gtfs.shape", - "pk": 803, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93927560616025, - "shape_pt_lon": -84.0446392902696, - "shape_pt_sequence": 53, - "shape_dist_traveled": 1.355 - } - }, - { - "model": "gtfs.shape", - "pk": 804, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93920545121652, - "shape_pt_lon": -84.0446560771702, - "shape_pt_sequence": 54, - "shape_dist_traveled": 1.363 - } - }, - { - "model": "gtfs.shape", - "pk": 805, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93916110643307, - "shape_pt_lon": -84.0446448875091, - "shape_pt_sequence": 55, - "shape_dist_traveled": 1.368 - } - }, - { - "model": "gtfs.shape", - "pk": 806, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93912385292449, - "shape_pt_lon": -84.0446191813258, - "shape_pt_sequence": 56, - "shape_dist_traveled": 1.373 - } - }, - { - "model": "gtfs.shape", - "pk": 807, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93911625815432, - "shape_pt_lon": -84.0445525134932, - "shape_pt_sequence": 57, - "shape_dist_traveled": 1.38 - } - }, - { - "model": "gtfs.shape", - "pk": 808, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93919941590806, - "shape_pt_lon": -84.0443337547524, - "shape_pt_sequence": 58, - "shape_dist_traveled": 1.406 - } - }, - { - "model": "gtfs.shape", - "pk": 809, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93911055274011, - "shape_pt_lon": -84.044006444136, - "shape_pt_sequence": 59, - "shape_dist_traveled": 1.443 - } - }, - { - "model": "gtfs.shape", - "pk": 810, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9390190082839, - "shape_pt_lon": -84.0436747724812, - "shape_pt_sequence": 60, - "shape_dist_traveled": 1.481 - } - }, - { - "model": "gtfs.shape", - "pk": 811, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93895911426052, - "shape_pt_lon": -84.0434673567427, - "shape_pt_sequence": 61, - "shape_dist_traveled": 1.505 - } - }, - { - "model": "gtfs.shape", - "pk": 812, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9392879865273, - "shape_pt_lon": -84.0433689432454, - "shape_pt_sequence": 62, - "shape_dist_traveled": 1.543 - } - }, - { - "model": "gtfs.shape", - "pk": 813, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93942115014918, - "shape_pt_lon": -84.0433274860744, - "shape_pt_sequence": 63, - "shape_dist_traveled": 1.558 - } - }, - { - "model": "gtfs.shape", - "pk": 814, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93944755512195, - "shape_pt_lon": -84.0429942406062, - "shape_pt_sequence": 64, - "shape_dist_traveled": 1.595 - } - }, - { - "model": "gtfs.shape", - "pk": 815, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93946810072644, - "shape_pt_lon": -84.0427365454686, - "shape_pt_sequence": 65, - "shape_dist_traveled": 1.623 - } - }, - { - "model": "gtfs.shape", - "pk": 816, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93949017843466, - "shape_pt_lon": -84.0424561880641, - "shape_pt_sequence": 66, - "shape_dist_traveled": 1.654 - } - }, - { - "model": "gtfs.shape", - "pk": 817, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93949896641922, - "shape_pt_lon": -84.0421337910545, - "shape_pt_sequence": 67, - "shape_dist_traveled": 1.689 - } - }, - { - "model": "gtfs.shape", - "pk": 818, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93950631475532, - "shape_pt_lon": -84.0419274245262, - "shape_pt_sequence": 68, - "shape_dist_traveled": 1.712 - } - }, - { - "model": "gtfs.shape", - "pk": 819, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93932958005353, - "shape_pt_lon": -84.0418524186819, - "shape_pt_sequence": 69, - "shape_dist_traveled": 1.733 - } - }, - { - "model": "gtfs.shape", - "pk": 820, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93916814008368, - "shape_pt_lon": -84.041691039804, - "shape_pt_sequence": 70, - "shape_dist_traveled": 1.758 - } - }, - { - "model": "gtfs.shape", - "pk": 821, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93900519121203, - "shape_pt_lon": -84.0414413521148, - "shape_pt_sequence": 71, - "shape_dist_traveled": 1.791 - } - }, - { - "model": "gtfs.shape", - "pk": 822, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93882565486029, - "shape_pt_lon": -84.0411391429389, - "shape_pt_sequence": 72, - "shape_dist_traveled": 1.83 - } - }, - { - "model": "gtfs.shape", - "pk": 823, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93878072700935, - "shape_pt_lon": -84.0410728454411, - "shape_pt_sequence": 73, - "shape_dist_traveled": 1.839 - } - }, - { - "model": "gtfs.shape", - "pk": 824, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93872490109004, - "shape_pt_lon": -84.0410213000932, - "shape_pt_sequence": 74, - "shape_dist_traveled": 1.847 - } - }, - { - "model": "gtfs.shape", - "pk": 825, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93861004710345, - "shape_pt_lon": -84.0409544792739, - "shape_pt_sequence": 75, - "shape_dist_traveled": 1.862 - } - }, - { - "model": "gtfs.shape", - "pk": 826, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93847396797512, - "shape_pt_lon": -84.0409494403816, - "shape_pt_sequence": 76, - "shape_dist_traveled": 1.877 - } - }, - { - "model": "gtfs.shape", - "pk": 827, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93814652860348, - "shape_pt_lon": -84.0410341635524, - "shape_pt_sequence": 77, - "shape_dist_traveled": 1.914 - } - }, - { - "model": "gtfs.shape", - "pk": 828, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93790671250708, - "shape_pt_lon": -84.0411014405278, - "shape_pt_sequence": 78, - "shape_dist_traveled": 1.942 - } - }, - { - "model": "gtfs.shape", - "pk": 829, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93791663555238, - "shape_pt_lon": -84.0413834314017, - "shape_pt_sequence": 79, - "shape_dist_traveled": 1.973 - } - }, - { - "model": "gtfs.shape", - "pk": 830, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93793079347671, - "shape_pt_lon": -84.0416285810649, - "shape_pt_sequence": 80, - "shape_dist_traveled": 1.999 - } - }, - { - "model": "gtfs.shape", - "pk": 831, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93801967154644, - "shape_pt_lon": -84.0416254546011, - "shape_pt_sequence": 81, - "shape_dist_traveled": 2.009 - } - }, - { - "model": "gtfs.shape", - "pk": 832, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93807996226397, - "shape_pt_lon": -84.0416431189912, - "shape_pt_sequence": 82, - "shape_dist_traveled": 2.016 - } - }, - { - "model": "gtfs.shape", - "pk": 833, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93810791480517, - "shape_pt_lon": -84.0416788253891, - "shape_pt_sequence": 83, - "shape_dist_traveled": 2.021 - } - }, - { - "model": "gtfs.shape", - "pk": 834, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93813256489417, - "shape_pt_lon": -84.0417178845482, - "shape_pt_sequence": 84, - "shape_dist_traveled": 2.026 - } - }, - { - "model": "gtfs.shape", - "pk": 835, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9381630635316, - "shape_pt_lon": -84.0418440755105, - "shape_pt_sequence": 85, - "shape_dist_traveled": 2.041 - } - }, - { - "model": "gtfs.shape", - "pk": 836, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93816840355805, - "shape_pt_lon": -84.0419580950124, - "shape_pt_sequence": 86, - "shape_dist_traveled": 2.053 - } - }, - { - "model": "gtfs.shape", - "pk": 837, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93816233402513, - "shape_pt_lon": -84.0420632597521, - "shape_pt_sequence": 87, - "shape_dist_traveled": 2.065 - } - }, - { - "model": "gtfs.shape", - "pk": 838, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93814321123235, - "shape_pt_lon": -84.0421742120474, - "shape_pt_sequence": 88, - "shape_dist_traveled": 2.077 - } - }, - { - "model": "gtfs.shape", - "pk": 839, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93803086770445, - "shape_pt_lon": -84.042431585693, - "shape_pt_sequence": 89, - "shape_dist_traveled": 2.108 - } - }, - { - "model": "gtfs.shape", - "pk": 840, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93800811636062, - "shape_pt_lon": -84.0424780922361, - "shape_pt_sequence": 90, - "shape_dist_traveled": 2.113 - } - }, - { - "model": "gtfs.shape", - "pk": 841, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93798034157711, - "shape_pt_lon": -84.0426586032431, - "shape_pt_sequence": 91, - "shape_dist_traveled": 2.134 - } - }, - { - "model": "gtfs.shape", - "pk": 842, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93791715763552, - "shape_pt_lon": -84.0430584128099, - "shape_pt_sequence": 92, - "shape_dist_traveled": 2.178 - } - }, - { - "model": "gtfs.shape", - "pk": 843, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93789378213828, - "shape_pt_lon": -84.0431955755255, - "shape_pt_sequence": 93, - "shape_dist_traveled": 2.193 - } - }, - { - "model": "gtfs.shape", - "pk": 844, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9379228858361, - "shape_pt_lon": -84.0434355505527, - "shape_pt_sequence": 94, - "shape_dist_traveled": 2.22 - } - }, - { - "model": "gtfs.shape", - "pk": 845, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93793324365073, - "shape_pt_lon": -84.0435100147268, - "shape_pt_sequence": 95, - "shape_dist_traveled": 2.228 - } - }, - { - "model": "gtfs.shape", - "pk": 846, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93796925623814, - "shape_pt_lon": -84.0436073742708, - "shape_pt_sequence": 96, - "shape_dist_traveled": 2.239 - } - }, - { - "model": "gtfs.shape", - "pk": 847, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93811129632628, - "shape_pt_lon": -84.0437957690067, - "shape_pt_sequence": 97, - "shape_dist_traveled": 2.265 - } - }, - { - "model": "gtfs.shape", - "pk": 848, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93796149488666, - "shape_pt_lon": -84.0440534496211, - "shape_pt_sequence": 98, - "shape_dist_traveled": 2.298 - } - }, - { - "model": "gtfs.shape", - "pk": 849, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93777133769974, - "shape_pt_lon": -84.0443836171542, - "shape_pt_sequence": 99, - "shape_dist_traveled": 2.34 - } - }, - { - "model": "gtfs.shape", - "pk": 850, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9375818272445, - "shape_pt_lon": -84.0447196978834, - "shape_pt_sequence": 100, - "shape_dist_traveled": 2.382 - } - }, - { - "model": "gtfs.shape", - "pk": 851, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93745018852863, - "shape_pt_lon": -84.0449635706007, - "shape_pt_sequence": 101, - "shape_dist_traveled": 2.413 - } - }, - { - "model": "gtfs.shape", - "pk": 852, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93734180767617, - "shape_pt_lon": -84.0451463546949, - "shape_pt_sequence": 102, - "shape_dist_traveled": 2.436 - } - }, - { - "model": "gtfs.shape", - "pk": 853, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93725372200282, - "shape_pt_lon": -84.0452714142582, - "shape_pt_sequence": 103, - "shape_dist_traveled": 2.453 - } - }, - { - "model": "gtfs.shape", - "pk": 854, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.937108322267, - "shape_pt_lon": -84.0454262175884, - "shape_pt_sequence": 104, - "shape_dist_traveled": 2.476 - } - }, - { - "model": "gtfs.shape", - "pk": 855, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93692719931924, - "shape_pt_lon": -84.0455586526682, - "shape_pt_sequence": 105, - "shape_dist_traveled": 2.501 - } - }, - { - "model": "gtfs.shape", - "pk": 856, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93685401442958, - "shape_pt_lon": -84.0455873611916, - "shape_pt_sequence": 106, - "shape_dist_traveled": 2.51 - } - }, - { - "model": "gtfs.shape", - "pk": 857, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93677373653686, - "shape_pt_lon": -84.0455923110153, - "shape_pt_sequence": 107, - "shape_dist_traveled": 2.519 - } - }, - { - "model": "gtfs.shape", - "pk": 858, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93668019604487, - "shape_pt_lon": -84.0455680674162, - "shape_pt_sequence": 108, - "shape_dist_traveled": 2.529 - } - }, - { - "model": "gtfs.shape", - "pk": 859, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93646480148586, - "shape_pt_lon": -84.0454482787829, - "shape_pt_sequence": 109, - "shape_dist_traveled": 2.556 - } - }, - { - "model": "gtfs.shape", - "pk": 860, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93636588688585, - "shape_pt_lon": -84.0453892763726, - "shape_pt_sequence": 110, - "shape_dist_traveled": 2.569 - } - }, - { - "model": "gtfs.shape", - "pk": 861, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93632308831075, - "shape_pt_lon": -84.0453697036442, - "shape_pt_sequence": 111, - "shape_dist_traveled": 2.574 - } - }, - { - "model": "gtfs.shape", - "pk": 862, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93629762770389, - "shape_pt_lon": -84.0453615303045, - "shape_pt_sequence": 112, - "shape_dist_traveled": 2.577 - } - }, - { - "model": "gtfs.shape", - "pk": 863, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93624652235345, - "shape_pt_lon": -84.0453532765511, - "shape_pt_sequence": 113, - "shape_dist_traveled": 2.583 - } - }, - { - "model": "gtfs.shape", - "pk": 864, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93618732594838, - "shape_pt_lon": -84.0453570927397, - "shape_pt_sequence": 114, - "shape_dist_traveled": 2.59 - } - }, - { - "model": "gtfs.shape", - "pk": 865, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93603538344972, - "shape_pt_lon": -84.0453927689936, - "shape_pt_sequence": 115, - "shape_dist_traveled": 2.607 - } - }, - { - "model": "gtfs.shape", - "pk": 866, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93577991764324, - "shape_pt_lon": -84.045437957483, - "shape_pt_sequence": 116, - "shape_dist_traveled": 2.636 - } - }, - { - "model": "gtfs.shape", - "pk": 867, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93565154581259, - "shape_pt_lon": -84.0454621421002, - "shape_pt_sequence": 117, - "shape_dist_traveled": 2.65 - } - }, - { - "model": "gtfs.shape", - "pk": 868, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93558482499322, - "shape_pt_lon": -84.0455294509499, - "shape_pt_sequence": 118, - "shape_dist_traveled": 2.66 - } - }, - { - "model": "gtfs.shape", - "pk": 869, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93533787082614, - "shape_pt_lon": -84.0456405554627, - "shape_pt_sequence": 119, - "shape_dist_traveled": 2.69 - } - }, - { - "model": "gtfs.shape", - "pk": 870, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9350109333037, - "shape_pt_lon": -84.0456410811815, - "shape_pt_sequence": 120, - "shape_dist_traveled": 2.727 - } - }, - { - "model": "gtfs.shape", - "pk": 871, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93495968412818, - "shape_pt_lon": -84.0456087998837, - "shape_pt_sequence": 121, - "shape_dist_traveled": 2.733 - } - }, - { - "model": "gtfs.shape", - "pk": 872, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93464858697721, - "shape_pt_lon": -84.0456196757956, - "shape_pt_sequence": 122, - "shape_dist_traveled": 2.768 - } - }, - { - "model": "gtfs.shape", - "pk": 873, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93480225304748, - "shape_pt_lon": -84.046294734079, - "shape_pt_sequence": 123, - "shape_dist_traveled": 2.844 - } - }, - { - "model": "gtfs.shape", - "pk": 874, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93495610721508, - "shape_pt_lon": -84.0470992295944, - "shape_pt_sequence": 124, - "shape_dist_traveled": 2.933 - } - }, - { - "model": "gtfs.shape", - "pk": 875, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93514466639919, - "shape_pt_lon": -84.047738281775, - "shape_pt_sequence": 125, - "shape_dist_traveled": 3.007 - } - }, - { - "model": "gtfs.shape", - "pk": 876, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93527584609242, - "shape_pt_lon": -84.048128961463, - "shape_pt_sequence": 126, - "shape_dist_traveled": 3.052 - } - }, - { - "model": "gtfs.shape", - "pk": 877, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93531583349863, - "shape_pt_lon": -84.0483847176419, - "shape_pt_sequence": 127, - "shape_dist_traveled": 3.08 - } - }, - { - "model": "gtfs.shape", - "pk": 878, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93529983825585, - "shape_pt_lon": -84.0486296483808, - "shape_pt_sequence": 128, - "shape_dist_traveled": 3.107 - } - }, - { - "model": "gtfs.shape", - "pk": 879, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93545520267059, - "shape_pt_lon": -84.0486491888617, - "shape_pt_sequence": 129, - "shape_dist_traveled": 3.124 - } - }, - { - "model": "gtfs.shape", - "pk": 880, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9354703980085, - "shape_pt_lon": -84.0488055127148, - "shape_pt_sequence": 130, - "shape_dist_traveled": 3.142 - } - }, - { - "model": "gtfs.shape", - "pk": 881, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93553667972237, - "shape_pt_lon": -84.0490832368349, - "shape_pt_sequence": 131, - "shape_dist_traveled": 3.173 - } - }, - { - "model": "gtfs.shape", - "pk": 882, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.9355977604479, - "shape_pt_lon": -84.0493162487417, - "shape_pt_sequence": 132, - "shape_dist_traveled": 3.199 - } - }, - { - "model": "gtfs.shape", - "pk": 883, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93570243695239, - "shape_pt_lon": -84.0495918083302, - "shape_pt_sequence": 133, - "shape_dist_traveled": 3.232 - } - }, - { - "model": "gtfs.shape", - "pk": 884, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93571038517426, - "shape_pt_lon": -84.0496787768477, - "shape_pt_sequence": 134, - "shape_dist_traveled": 3.241 - } - }, - { - "model": "gtfs.shape", - "pk": 885, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93571038484225, - "shape_pt_lon": -84.0499696558076, - "shape_pt_sequence": 135, - "shape_dist_traveled": 3.273 - } - }, - { - "model": "gtfs.shape", - "pk": 886, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93570321714193, - "shape_pt_lon": -84.0500954158227, - "shape_pt_sequence": 136, - "shape_dist_traveled": 3.287 - } - }, - { - "model": "gtfs.shape", - "pk": 887, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93566700857604, - "shape_pt_lon": -84.0503419760518, - "shape_pt_sequence": 137, - "shape_dist_traveled": 3.314 - } - }, - { - "model": "gtfs.shape", - "pk": 888, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93560674646944, - "shape_pt_lon": -84.0506470296121, - "shape_pt_sequence": 138, - "shape_dist_traveled": 3.348 - } - }, - { - "model": "gtfs.shape", - "pk": 889, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93553343216217, - "shape_pt_lon": -84.0510737676674, - "shape_pt_sequence": 139, - "shape_dist_traveled": 3.396 - } - }, - { - "model": "gtfs.shape", - "pk": 890, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93549263100849, - "shape_pt_lon": -84.0513075140395, - "shape_pt_sequence": 140, - "shape_dist_traveled": 3.422 - } - }, - { - "model": "gtfs.shape", - "pk": 891, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93546272803463, - "shape_pt_lon": -84.0515459542782, - "shape_pt_sequence": 141, - "shape_dist_traveled": 3.448 - } - }, - { - "model": "gtfs.shape", - "pk": 892, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93544955548966, - "shape_pt_lon": -84.0516525931019, - "shape_pt_sequence": 142, - "shape_dist_traveled": 3.46 - } - }, - { - "model": "gtfs.shape", - "pk": 893, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93544794162221, - "shape_pt_lon": -84.0517605730299, - "shape_pt_sequence": 143, - "shape_dist_traveled": 3.472 - } - }, - { - "model": "gtfs.shape", - "pk": 894, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93547169143514, - "shape_pt_lon": -84.0519830595855, - "shape_pt_sequence": 144, - "shape_dist_traveled": 3.496 - } - }, - { - "model": "gtfs.shape", - "pk": 895, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93548892832953, - "shape_pt_lon": -84.0521081889526, - "shape_pt_sequence": 145, - "shape_dist_traveled": 3.51 - } - }, - { - "model": "gtfs.shape", - "pk": 896, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "shape_pt_lat": 9.93550175796293, - "shape_pt_lon": -84.0521827017793, - "shape_pt_sequence": 146, - "shape_dist_traveled": 3.519 - } - }, - { - "model": "gtfs.geoshape", - "pk": 1, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_sin_milla", - "geometry": "SRID=4326;LINESTRING(-84.04899295728595 9.935610136323218, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939451647823137, -84.04450675690296 9.940155168862551, -84.04468346245408 9.943761220391434, -84.0451915613564 9.946441050827925)", - "has_altitude": false - } - }, - { - "model": "gtfs.geoshape", - "pk": 2, - "fields": { - "feed": "1", - "shape_id": "desde_educacion_con_milla", - "geometry": "SRID=4326;LINESTRING(-84.04899295728595 9.935610136323218, -84.0517499001992 9.93860832346218, -84.04876049840074 9.93832361909286, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939461647823137, -84.04450675690296 9.940155168862551, -84.04475066837327 9.94119204389136, -84.04488346245408 9.943413920391434, -84.0451915613564 9.946441050827925)", - "has_altitude": false - } - }, - { - "model": "gtfs.geoshape", - "pk": 3, - "fields": { - "feed": "1", - "shape_id": "desde_artes_sin_milla", - "geometry": "SRID=4326;LINESTRING(-84.05217559901489 9.935501598287884, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939461647823137, -84.04450675690296 9.940155168862551, -84.04475066837327 9.94119204389136, -84.04488346245408 9.943413920391434, -84.0451915613564 9.946441050827925)", - "has_altitude": false - } - }, - { - "model": "gtfs.geoshape", - "pk": 4, - "fields": { - "feed": "1", - "shape_id": "desde_artes_con_milla", - "geometry": "SRID=4326;LINESTRING(-84.05217559901489 9.935501598287884, -84.0517499001992 9.93860832346218, -84.04876049840074 9.93832361909286, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939461647823137, -84.04450675690296 9.940155168862551, -84.04475066837327 9.94119204389136, -84.04488346245408 9.943413920391434, -84.0451915613564 9.946441050827925)", - "has_altitude": false - } - }, - { - "model": "gtfs.geoshape", - "pk": 5, - "fields": { - "feed": "1", - "shape_id": "hacia_artes", - "geometry": "SRID=4326;LINESTRING(-84.0451915613564 9.946441050827925, -84.04495180739714 9.943381444081362, -84.04483991497501 9.941220574743566, -84.04468654565294 9.939134591559855, -84.0436758508172 9.938980381389706, -84.042189216776 9.939472792042086, -84.04229551510366 9.938130529026141, -84.04501822768842 9.937468669419962, -84.04546950911886 9.93589305371453, -84.05217559901489 9.935501598287884)", - "has_altitude": false - } - }, - { - "model": "gtfs.geoshape", - "pk": 6, - "fields": { - "feed": "1", - "shape_id": "hacia_educacion", - "geometry": "SRID=4326;LINESTRING(-84.0451915613564 9.946441050827925, -84.04495180739714 9.943381444081362, -84.04483991497501 9.941220574743566, -84.04468654565294 9.939134591559855, -84.0436758508172 9.938980381389706, -84.042189216776 9.939472792042086, -84.04229551510366 9.938130529026141, -84.04501822768842 9.937468669419962, -84.04546950911886 9.93589305371453, -84.04899295728595 9.935610136323218)", - "has_altitude": false - } - }, - { - "model": "gtfs.gtfsprovider", - "pk": 1, - "fields": { - "code": "bUCR", - "name": "bUCR", - "description": "Bus de la UCR", - "website": "https://bucr.digital", - "schedule_url": null, - "trip_updates_url": null, - "vehicle_positions_url": null, - "service_alerts_url": null, - "timezone": "America/costa_rica", - "is_active": true - } - }, - { - "model": "gtfs.feed", - "pk": 1, - "fields": { - "gtfs_provider": 1, - "http_etag": null, - "http_last_modified": "2024-07-11T00:00:00Z", - "is_current": true, - "retrieved_at": "2024-07-11T04:28:41.332Z" - } - } -] \ No newline at end of file + { + "model": "gtfs.agency", + "pk": 1, + "fields": { + "feed": "1", + "agency_id": "bUCR", + "agency_name": "Buses de la Universidad de Costa Rica", + "agency_url": "https://bus.ucr.ac.cr/", + "agency_timezone": "America/Costa_Rica", + "agency_lang": "es", + "agency_phone": "25112919", + "agency_fare_url": "https://bus.ucr.ac.cr/#tarifas", + "agency_email": "bus@ucr.ac.cr" + } + }, + { + "model": "gtfs.route", + "pk": 1, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "agency_id": "bUCR", + "route_short_name": "bUCR L1", + "route_long_name": "Bus interno UCR sin milla", + "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, y no incluye la vuelta por la milla universitaria.", + "route_type": 3, + "route_url": "https://bus.ucr.ac.cr/#L1", + "route_color": "00C0F3", + "route_text_color": "FFFFFF", + "route_sort_order": null + } + }, + { + "model": "gtfs.route", + "pk": 2, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "agency_id": "bUCR", + "route_short_name": "bUCR L2", + "route_long_name": "Bus interno UCR con milla", + "route_desc": "Esta ruta conecta las tres fincas del Campus Universitario Rodrigo Facio en San Pedro de Montes de Oca, e incluye la vuelta por la milla universitaria.", + "route_type": 3, + "route_url": "https://bus.ucr.ac.cr/#L2", + "route_color": "005DA4", + "route_text_color": "FFFFFF", + "route_sort_order": null + } + }, + { + "model": "gtfs.stop", + "pk": 1, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_01", + "stop_code": "", + "stop_name": "Facultad de Educación", + "stop_desc": "Frente al jardín de la Facultad de Educación (FE)", + "stop_lat": 9.935610136323218, + "stop_lon": -84.04899295728595, + "stop_point": "SRID=4326;POINT (-84.04899295728595 9.935610136323218)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 2, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_02", + "stop_code": "", + "stop_name": "Escuela de Artes Plásticas", + "stop_desc": "Nuevo edificio de la Escuela de Artes Plásticas (EAP)", + "stop_lat": 9.935501598287884, + "stop_lon": -84.05217559901489, + "stop_point": "SRID=4326;POINT (-84.05217559901489 9.935501598287884)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 3, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_03", + "stop_code": "", + "stop_name": "Biblioteca de Ciencias de la Salud", + "stop_desc": "Frente al antiguo edificio de la Facultad de Odontología (FOd), diagonal al parqueo de la Biblioteca de Ciencias de la Salud", + "stop_lat": 9.93860832346218, + "stop_lon": -84.0517499001992, + "stop_point": "SRID=4326;POINT (-84.0517499001992 9.93860832346218)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 4, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_04", + "stop_code": "", + "stop_name": "Facultad de Microbiología", + "stop_desc": "Esquina noreste del parqueo de las Escuelas de Artes Musicales (EAM), Química (EQ) y Biología (EB) y la Facultad de Microbiología (FMic)", + "stop_lat": 9.93832361909286, + "stop_lon": -84.04876049840074, + "stop_point": "SRID=4326;POINT (-84.04876049840074 9.93832361909286 )", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 5, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_05", + "stop_code": "", + "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME)", + "stop_lat": 9.935903915437937, + "stop_lon": -84.04537504744147, + "stop_point": "SRID=4326;POINT (-84.04537504744147 9.935903915437937)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_LA", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 6, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_06", + "stop_code": "", + "stop_name": "Facultad de Ingeniería", + "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI)", + "stop_lat": 9.937467311441509, + "stop_lon": -84.04467644300775, + "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_FI", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 7, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_07", + "stop_code": "", + "stop_name": "Facultad de Ciencias Sociales", + "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", + "stop_lat": 9.938029607676915, + "stop_lon": -84.04237892478906, + "stop_point": "SRID=4326;POINT (-84.04237892478906 9.938029607676915)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_CS", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 8, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_08", + "stop_code": "", + "stop_name": "Instituto de Investigación en Educación (INIE)", + "stop_desc": "Costado sur del edificio del Instituto de Investigación en Educación (INIE)", + "stop_lat": 9.939451647823136, + "stop_lon": -84.04307776266035, + "stop_point": "SRID=4326;POINT (-84.04307776266035 9.939451647823137)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 9, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_09", + "stop_code": "", + "stop_name": "Centro de Investigación en Cirugía y Cáncer (CICICA)", + "stop_desc": "Costado sur del edificio del Centro de Investigación en Cirugía y Cáncer (CICICA)", + "stop_lat": 9.940155168862551, + "stop_lon": -84.04450675690296, + "stop_point": "SRID=4326;POINT (-84.04450675690296 9.940155168862551)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 10, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_10", + "stop_code": "", + "stop_name": "Oficina de Bienestar y Salud (OBS)", + "stop_desc": "Entre el nuevo edificio de la Oficina de Bienestar y Salud (OBS) y el Estadio Ecológico", + "stop_lat": 9.943761220391433, + "stop_lon": -84.04468346245407, + "stop_point": "SRID=4326;POINT (-84.04468346245408 9.943761220391434)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 11, + "fields": { + "feed": "1", + "stop_id": "bUCR_0_11", + "stop_code": "", + "stop_name": "Facultad de Odontología", + "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", + "stop_lat": 9.946441050827923, + "stop_lon": -84.0451915613564, + "stop_point": "SRID=4326;POINT (-84.0451915613564 9.946441050827925)", + "zone_id": "bUCR_0", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 12, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_01", + "stop_code": "", + "stop_name": "Facultad de Odontología", + "stop_desc": "En el nuevo edificio de la Facultad de Odontología (FOd) en la Finca 3", + "stop_lat": 9.946529500847424, + "stop_lon": -84.04535458313804, + "stop_point": "SRID=4326;POINT (-84.04535458313804 9.946529500847424)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 13, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_02", + "stop_code": "", + "stop_name": "Escuela de Educación Física y Deportes (EDUFI)", + "stop_desc": "Costado este de las canchas multiuso y de la Escuela de Educación Física y Deportes (EDUFI)", + "stop_lat": 9.943381444081362, + "stop_lon": -84.04495180739714, + "stop_point": "SRID=4326;POINT (-84.04495180739714 9.943381444081362)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 14, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_03", + "stop_code": "", + "stop_name": "Escuela de Nutrición", + "stop_desc": "Esquina noreste del edificio de la Escuela de Nutrición (ENu)", + "stop_lat": 9.939134591559856, + "stop_lon": -84.04468654565294, + "stop_point": "SRID=4326;POINT (-84.04468654565294 9.939134591559855)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 15, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_04", + "stop_code": "", + "stop_name": "Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", + "stop_desc": "Entre el edificio de parqueos y el Centro de Investigación en Ciencias del Mar y Limnología (CIMAR)", + "stop_lat": 9.938980381389706, + "stop_lon": -84.0436758508172, + "stop_point": "SRID=4326;POINT (-84.0436758508172 9.938980381389706)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 16, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_05", + "stop_code": "", + "stop_name": "Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", + "stop_desc": "Frente al edificio del Centro de Investigación en Matemática Pura y Aplicada (CIMPA)", + "stop_lat": 9.939472792042086, + "stop_lon": -84.042189216776, + "stop_point": "SRID=4326;POINT (-84.042189216776 9.939472792042086)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 17, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_06", + "stop_code": "", + "stop_name": "Facultad de Ciencias Sociales", + "stop_desc": "Entre la Facultad de Ciencias Sociales (FCS) y el edificio de parqueos", + "stop_lat": 9.93813052902614, + "stop_lon": -84.04229551510366, + "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_CS", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 18, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_07", + "stop_code": "", + "stop_name": "Facultad de Ingeniería", + "stop_desc": "Costado norte del nuevo edificio de la Facultad de Ingeniería (FI), al otro lado de la calle", + "stop_lat": 9.937468669419962, + "stop_lon": -84.04501822768842, + "stop_point": "SRID=4326;POINT (-84.04501822768842 9.937468669419962)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_FI", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 19, + "fields": { + "feed": "1", + "stop_id": "bUCR_1_08", + "stop_code": "", + "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_desc": "Junto al parqueo del Centro de Transferencia Tecnológica (CTT), diagonal al Laboratorio Nacional de Materiales y Modelos Estructurales (LANAMME), al otro lado de la calle", + "stop_lat": 9.93589305371453, + "stop_lon": -84.04546950911886, + "stop_point": "SRID=4326;POINT (-84.04546950911886 9.93589305371453)", + "zone_id": "bUCR_1", + "stop_url": "", + "location_type": 0, + "parent_station": "bUCR_LA", + "stop_timezone": "", + "wheelchair_boarding": 2, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 20, + "fields": { + "feed": "1", + "stop_id": "bUCR_FI", + "stop_code": "", + "stop_name": "Facultad de Ingeniería", + "stop_desc": "En las inmediaciones del edificio de la Facultad de Ingeniería", + "stop_lat": 9.937467311441509, + "stop_lon": -84.04467644300775, + "stop_point": "SRID=4326;POINT (-84.04467644300775 9.937467311441507)", + "zone_id": "", + "stop_url": "", + "location_type": 1, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 21, + "fields": { + "feed": "1", + "stop_id": "bUCR_CS", + "stop_code": "", + "stop_name": "Facultad de Ciencias Sociales", + "stop_desc": "En las inmediaciones del edificio de la Facultad de Ciencias Sociales", + "stop_lat": 9.93813052902614, + "stop_lon": -84.04229551510366, + "stop_point": "SRID=4326;POINT (-84.04229551510366 9.938130529026141)", + "zone_id": "", + "stop_url": "", + "location_type": 1, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.stop", + "pk": 22, + "fields": { + "feed": "1", + "stop_id": "bUCR_LA", + "stop_code": "", + "stop_name": "Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_desc": "En las inmediaciones del Laboratorio Nacional de Materiales y Modelos Estructurales (LanammeUCR)", + "stop_lat": 9.935785141707278, + "stop_lon": -84.04544067497328, + "stop_point": "SRID=4326;POINT (-84.04544067497328 9.935785141707278)", + "zone_id": "", + "stop_url": "", + "location_type": 1, + "parent_station": "", + "stop_timezone": "", + "wheelchair_boarding": 1, + "platform_code": "" + } + }, + { + "model": "gtfs.trip", + "pk": 1, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 2, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 3, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 4, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 5, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 6, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 7, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 8, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 9, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 10, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 11, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 12, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 13, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 14, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 15, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 16, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 17, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 18, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 19, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 20, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 21, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 22, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 23, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 24, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 25, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 26, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 27, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 28, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 29, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 30, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 31, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_sin_milla", + "geoshape": 1, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 32, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 33, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 34, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 35, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 36, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_educacion_con_milla", + "geoshape": 2, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 37, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 38, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 39, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 40, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 41, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 42, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 43, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 44, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 45, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 46, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 47, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 48, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 49, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 50, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 51, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 52, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 53, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 54, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 55, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 56, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 57, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 58, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 59, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 60, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 61, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 62, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 63, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 64, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 65, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_sin_milla", + "geoshape": 3, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 66, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_con_milla", + "geoshape": 4, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 67, + "fields": { + "feed": "1", + "route_id": "bUCR_L2", + "service_id": "entresemana", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "trip_headsign": "Deportivas", + "trip_short_name": "", + "direction_id": 0, + "block_id": "", + "shape_id": "desde_artes_con_milla", + "geoshape": 4, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 68, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_06:20", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 69, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_06:40", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 70, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_06:50", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 71, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_07:00", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 72, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_07:10", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 73, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_07:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 74, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_07:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 75, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_07:50", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 76, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_08:00", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 77, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_08:35", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 78, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_08:45", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 79, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_08:55", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 80, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_09:05", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 81, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_09:25", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 82, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_09:35", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 83, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_09:45", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 84, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_09:55", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 85, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_10:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 86, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_10:25", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 87, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_10:35", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 88, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_10:45", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 89, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_11:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 90, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_11:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 91, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_11:20", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 92, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_11:30", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 93, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_11:40", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 94, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_11:50", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 95, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_12:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 96, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_12:10", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 97, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_12:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 98, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_12:25", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 99, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_12:50", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 100, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_13:00", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 101, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_13:25", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 102, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_13:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 103, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_13:50", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 104, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_14:00", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 105, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_14:10", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 106, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_14:25", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 107, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_14:35", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 108, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_14:45", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 109, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_14:55", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 110, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_15:10", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 111, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_15:20", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 112, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_15:30", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 113, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_16:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 114, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_16:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 115, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_16:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 116, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_16:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 117, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_17:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 118, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_17:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 119, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_17:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 120, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_17:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 121, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_18:05", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 122, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_18:15", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 123, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_18:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 124, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_18:40", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 125, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_18:55", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 126, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_19:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 127, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_artes_entresemana_19:50", + "trip_headsign": "Artes Plásticas", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_artes", + "geoshape": 5, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 128, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_20:30", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 129, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_20:40", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.trip", + "pk": 130, + "fields": { + "feed": "1", + "route_id": "bUCR_L1", + "service_id": "entresemana", + "trip_id": "hacia_educacion_entresemana_21:15", + "trip_headsign": "Educación", + "trip_short_name": "", + "direction_id": 1, + "block_id": "", + "shape_id": "hacia_educacion", + "geoshape": 6, + "wheelchair_accessible": 0, + "bikes_allowed": 2 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:10:00", + "departure_time": "06:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 2, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:18:28.582000", + "departure_time": "06:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 3, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:19:45.164000", + "departure_time": "06:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 4, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:21:14.182000", + "departure_time": "06:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 5, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:24:18.764000", + "departure_time": "06:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 6, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:25:23.564000", + "departure_time": "06:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 7, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:28:20.291000", + "departure_time": "06:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 8, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:10", + "arrival_time": "06:30:34.145000", + "departure_time": "06:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 9, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:30:00", + "departure_time": "06:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 10, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:38:28.582000", + "departure_time": "06:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 11, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:39:45.164000", + "departure_time": "06:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 12, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:41:14.182000", + "departure_time": "06:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 13, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:44:18.764000", + "departure_time": "06:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 14, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:45:23.564000", + "departure_time": "06:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 15, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:48:20.291000", + "departure_time": "06:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 16, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_06:30", + "arrival_time": "06:50:34.145000", + "departure_time": "06:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 17, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:00:00", + "departure_time": "07:00:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 18, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:08:28.582000", + "departure_time": "07:08:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 19, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:09:45.164000", + "departure_time": "07:09:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 20, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:11:14.182000", + "departure_time": "07:11:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 21, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:14:18.764000", + "departure_time": "07:14:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 22, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:15:23.564000", + "departure_time": "07:15:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 23, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:18:20.291000", + "departure_time": "07:18:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 24, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:00", + "arrival_time": "07:20:34.145000", + "departure_time": "07:20:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 25, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:20:00", + "departure_time": "07:20:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 26, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:28:28.582000", + "departure_time": "07:28:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 27, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:29:45.164000", + "departure_time": "07:29:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 28, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:31:14.182000", + "departure_time": "07:31:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 29, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:34:18.764000", + "departure_time": "07:34:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 30, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:35:23.564000", + "departure_time": "07:35:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 31, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:38:20.291000", + "departure_time": "07:38:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 32, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:20", + "arrival_time": "07:40:34.145000", + "departure_time": "07:40:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 33, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "07:50:00", + "departure_time": "07:50:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 34, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "07:58:28.582000", + "departure_time": "07:58:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 35, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "07:59:45.164000", + "departure_time": "07:59:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 36, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:01:14.182000", + "departure_time": "08:01:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 37, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:04:18.764000", + "departure_time": "08:04:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 38, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:05:23.564000", + "departure_time": "08:05:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 39, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:08:20.291000", + "departure_time": "08:08:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 40, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_07:50", + "arrival_time": "08:10:34.145000", + "departure_time": "08:10:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 41, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:10:00", + "departure_time": "08:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 42, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:18:28.582000", + "departure_time": "08:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 43, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:19:45.164000", + "departure_time": "08:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 44, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:21:14.182000", + "departure_time": "08:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 45, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:24:18.764000", + "departure_time": "08:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 46, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:25:23.564000", + "departure_time": "08:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 47, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:28:20.291000", + "departure_time": "08:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 48, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:10", + "arrival_time": "08:30:34.145000", + "departure_time": "08:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 49, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "08:55:00", + "departure_time": "08:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 50, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:03:28.582000", + "departure_time": "09:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 51, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:04:45.164000", + "departure_time": "09:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 52, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:06:14.182000", + "departure_time": "09:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 53, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:09:18.764000", + "departure_time": "09:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 54, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:10:23.564000", + "departure_time": "09:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 55, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:13:20.291000", + "departure_time": "09:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 56, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_08:55", + "arrival_time": "09:15:34.145000", + "departure_time": "09:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 57, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:15:00", + "departure_time": "09:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 58, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:23:28.582000", + "departure_time": "09:23:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 59, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:24:45.164000", + "departure_time": "09:24:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 60, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:26:14.182000", + "departure_time": "09:26:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 61, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:29:18.764000", + "departure_time": "09:29:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 62, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:30:23.564000", + "departure_time": "09:30:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 63, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:33:20.291000", + "departure_time": "09:33:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 64, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:15", + "arrival_time": "09:35:34.145000", + "departure_time": "09:35:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 65, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:45:00", + "departure_time": "09:45:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 66, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:53:28.582000", + "departure_time": "09:53:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 67, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:54:45.164000", + "departure_time": "09:54:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 68, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:56:14.182000", + "departure_time": "09:56:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 69, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "09:59:18.764000", + "departure_time": "09:59:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 70, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "10:00:23.564000", + "departure_time": "10:00:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 71, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "10:03:20.291000", + "departure_time": "10:03:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 72, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_09:45", + "arrival_time": "10:05:34.145000", + "departure_time": "10:05:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 73, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:05:00", + "departure_time": "10:05:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 74, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:13:28.582000", + "departure_time": "10:13:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 75, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:14:45.164000", + "departure_time": "10:14:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 76, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:16:14.182000", + "departure_time": "10:16:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 77, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:19:18.764000", + "departure_time": "10:19:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 78, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:20:23.564000", + "departure_time": "10:20:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 79, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:23:20.291000", + "departure_time": "10:23:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 80, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:05", + "arrival_time": "10:25:34.145000", + "departure_time": "10:25:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 81, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:35:00", + "departure_time": "10:35:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 82, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:43:28.582000", + "departure_time": "10:43:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 83, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:44:45.164000", + "departure_time": "10:44:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 84, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:46:14.182000", + "departure_time": "10:46:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 85, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:49:18.764000", + "departure_time": "10:49:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 86, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:50:23.564000", + "departure_time": "10:50:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 87, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:53:20.291000", + "departure_time": "10:53:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 88, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:35", + "arrival_time": "10:55:34.145000", + "departure_time": "10:55:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 89, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "10:55:00", + "departure_time": "10:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 90, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:03:28.582000", + "departure_time": "11:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 91, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:04:45.164000", + "departure_time": "11:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 92, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:06:14.182000", + "departure_time": "11:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 93, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:09:18.764000", + "departure_time": "11:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 94, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:10:23.564000", + "departure_time": "11:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 95, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:13:20.291000", + "departure_time": "11:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 96, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_10:55", + "arrival_time": "11:15:34.145000", + "departure_time": "11:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 97, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:15:00", + "departure_time": "11:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 98, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:23:28.582000", + "departure_time": "11:23:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 99, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:24:45.164000", + "departure_time": "11:24:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 100, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:26:14.182000", + "departure_time": "11:26:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 101, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:29:18.764000", + "departure_time": "11:29:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 102, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:30:23.564000", + "departure_time": "11:30:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 103, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:33:20.291000", + "departure_time": "11:33:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 104, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:15", + "arrival_time": "11:35:34.145000", + "departure_time": "11:35:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 105, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:25:00", + "departure_time": "11:25:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 106, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:33:28.582000", + "departure_time": "11:33:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 107, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:34:45.164000", + "departure_time": "11:34:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 108, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:36:14.182000", + "departure_time": "11:36:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 109, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:39:18.764000", + "departure_time": "11:39:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 110, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:40:23.564000", + "departure_time": "11:40:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 111, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:43:20.291000", + "departure_time": "11:43:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 112, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:25", + "arrival_time": "11:45:34.145000", + "departure_time": "11:45:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 113, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:40:00", + "departure_time": "11:40:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 114, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:48:28.582000", + "departure_time": "11:48:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 115, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:49:45.164000", + "departure_time": "11:49:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 116, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:51:14.182000", + "departure_time": "11:51:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 117, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:54:18.764000", + "departure_time": "11:54:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 118, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:55:23.564000", + "departure_time": "11:55:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 119, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "11:58:20.291000", + "departure_time": "11:58:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 120, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_11:40", + "arrival_time": "12:00:34.145000", + "departure_time": "12:00:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 121, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:00:00", + "departure_time": "12:00:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 122, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:08:28.582000", + "departure_time": "12:08:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 123, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:09:45.164000", + "departure_time": "12:09:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 124, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:11:14.182000", + "departure_time": "12:11:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 125, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:14:18.764000", + "departure_time": "12:14:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 126, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:15:23.564000", + "departure_time": "12:15:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 127, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:18:20.291000", + "departure_time": "12:18:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 128, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:00", + "arrival_time": "12:20:34.145000", + "departure_time": "12:20:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 129, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:25:00", + "departure_time": "12:25:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 130, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:33:28.582000", + "departure_time": "12:33:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 131, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:34:45.164000", + "departure_time": "12:34:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 132, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:36:14.182000", + "departure_time": "12:36:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 133, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:39:18.764000", + "departure_time": "12:39:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 134, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:40:23.564000", + "departure_time": "12:40:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 135, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:43:20.291000", + "departure_time": "12:43:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 136, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:25", + "arrival_time": "12:45:34.145000", + "departure_time": "12:45:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 137, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:35:00", + "departure_time": "12:35:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 138, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:43:28.582000", + "departure_time": "12:43:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 139, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:44:45.164000", + "departure_time": "12:44:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 140, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:46:14.182000", + "departure_time": "12:46:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 141, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:49:18.764000", + "departure_time": "12:49:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 142, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:50:23.564000", + "departure_time": "12:50:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 143, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:53:20.291000", + "departure_time": "12:53:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 144, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_12:35", + "arrival_time": "12:55:34.145000", + "departure_time": "12:55:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 145, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:10:00", + "departure_time": "13:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 146, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:18:28.582000", + "departure_time": "13:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 147, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:19:45.164000", + "departure_time": "13:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 148, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:21:14.182000", + "departure_time": "13:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 149, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:24:18.764000", + "departure_time": "13:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 150, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:25:23.564000", + "departure_time": "13:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 151, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:28:20.291000", + "departure_time": "13:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 152, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:10", + "arrival_time": "13:30:34.145000", + "departure_time": "13:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 153, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:45:00", + "departure_time": "13:45:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 154, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:53:28.582000", + "departure_time": "13:53:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 155, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:54:45.164000", + "departure_time": "13:54:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 156, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:56:14.182000", + "departure_time": "13:56:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 157, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "13:59:18.764000", + "departure_time": "13:59:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 158, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "14:00:23.564000", + "departure_time": "14:00:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 159, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "14:03:20.291000", + "departure_time": "14:03:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 160, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_13:45", + "arrival_time": "14:05:34.145000", + "departure_time": "14:05:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 161, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:10:00", + "departure_time": "14:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 162, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:18:28.582000", + "departure_time": "14:18:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 163, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:19:45.164000", + "departure_time": "14:19:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 164, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:21:14.182000", + "departure_time": "14:21:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 165, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:24:18.764000", + "departure_time": "14:24:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 166, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:25:23.564000", + "departure_time": "14:25:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 167, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:28:20.291000", + "departure_time": "14:28:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 168, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:10", + "arrival_time": "14:30:34.145000", + "departure_time": "14:30:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 169, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:30:00", + "departure_time": "14:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 170, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:38:28.582000", + "departure_time": "14:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 171, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:39:45.164000", + "departure_time": "14:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 172, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:41:14.182000", + "departure_time": "14:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 173, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:44:18.764000", + "departure_time": "14:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 174, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:45:23.564000", + "departure_time": "14:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 175, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:48:20.291000", + "departure_time": "14:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 176, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:30", + "arrival_time": "14:50:34.145000", + "departure_time": "14:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 177, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "14:55:00", + "departure_time": "14:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 178, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:03:28.582000", + "departure_time": "15:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 179, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:04:45.164000", + "departure_time": "15:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 180, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:06:14.182000", + "departure_time": "15:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 181, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:09:18.764000", + "departure_time": "15:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 182, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:10:23.564000", + "departure_time": "15:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 183, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:13:20.291000", + "departure_time": "15:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 184, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_14:55", + "arrival_time": "15:15:34.145000", + "departure_time": "15:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 185, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:15:00", + "departure_time": "15:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 186, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:23:28.582000", + "departure_time": "15:23:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 187, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:24:45.164000", + "departure_time": "15:24:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 188, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:26:14.182000", + "departure_time": "15:26:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 189, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:29:18.764000", + "departure_time": "15:29:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 190, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:30:23.564000", + "departure_time": "15:30:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 191, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:33:20.291000", + "departure_time": "15:33:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 192, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:15", + "arrival_time": "15:35:34.145000", + "departure_time": "15:35:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 193, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "15:55:00", + "departure_time": "15:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 194, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:03:28.582000", + "departure_time": "16:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 195, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:04:45.164000", + "departure_time": "16:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 196, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:06:14.182000", + "departure_time": "16:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 197, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:09:18.764000", + "departure_time": "16:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 198, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:10:23.564000", + "departure_time": "16:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 199, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:13:20.291000", + "departure_time": "16:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 200, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_15:55", + "arrival_time": "16:15:34.145000", + "departure_time": "16:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 201, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:30:00", + "departure_time": "16:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 202, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:38:28.582000", + "departure_time": "16:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 203, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:39:45.164000", + "departure_time": "16:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 204, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:41:14.182000", + "departure_time": "16:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 205, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:44:18.764000", + "departure_time": "16:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 206, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:45:23.564000", + "departure_time": "16:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 207, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:48:20.291000", + "departure_time": "16:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 208, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:30", + "arrival_time": "16:50:34.145000", + "departure_time": "16:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 209, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "16:55:00", + "departure_time": "16:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 210, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:03:28.582000", + "departure_time": "17:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 211, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:04:45.164000", + "departure_time": "17:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 212, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:06:14.182000", + "departure_time": "17:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 213, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:09:18.764000", + "departure_time": "17:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 214, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:10:23.564000", + "departure_time": "17:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 215, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:13:20.291000", + "departure_time": "17:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 216, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_16:55", + "arrival_time": "17:15:34.145000", + "departure_time": "17:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 217, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:30:00", + "departure_time": "17:30:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 218, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:38:28.582000", + "departure_time": "17:38:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 219, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:39:45.164000", + "departure_time": "17:39:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 220, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:41:14.182000", + "departure_time": "17:41:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 221, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:44:18.764000", + "departure_time": "17:44:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 222, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:45:23.564000", + "departure_time": "17:45:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 223, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:48:20.291000", + "departure_time": "17:48:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 224, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:30", + "arrival_time": "17:50:34.145000", + "departure_time": "17:50:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 225, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "17:55:00", + "departure_time": "17:55:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 226, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:03:28.582000", + "departure_time": "18:03:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 227, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:04:45.164000", + "departure_time": "18:04:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 228, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:06:14.182000", + "departure_time": "18:06:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 229, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:09:18.764000", + "departure_time": "18:09:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 230, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:10:23.564000", + "departure_time": "18:10:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 231, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:13:20.291000", + "departure_time": "18:13:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 232, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_17:55", + "arrival_time": "18:15:34.145000", + "departure_time": "18:15:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 233, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:25:00", + "departure_time": "18:25:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 234, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:33:28.582000", + "departure_time": "18:33:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 235, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:34:45.164000", + "departure_time": "18:34:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 236, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:36:14.182000", + "departure_time": "18:36:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 237, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:39:18.764000", + "departure_time": "18:39:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 238, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:40:23.564000", + "departure_time": "18:40:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 239, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:43:20.291000", + "departure_time": "18:43:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 240, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:25", + "arrival_time": "18:45:34.145000", + "departure_time": "18:45:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 241, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "18:50:00", + "departure_time": "18:50:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 242, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "18:58:28.582000", + "departure_time": "18:58:28.582000", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.554, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 243, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "18:59:45.164000", + "departure_time": "18:59:45.164000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.788, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 244, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:01:14.182000", + "departure_time": "19:01:14.182000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.06, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 245, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:04:18.764000", + "departure_time": "19:04:18.764000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.624, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 246, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:05:23.564000", + "departure_time": "19:05:23.564000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.822, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 247, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:08:20.291000", + "departure_time": "19:08:20.291000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.362, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 248, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_sin_milla_entresemana_18:50", + "arrival_time": "19:10:34.145000", + "departure_time": "19:10:34.145000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.771, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 249, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:15:00", + "departure_time": "19:15:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 250, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:19:22.473000", + "departure_time": "19:19:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 251, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:21:20.945000", + "departure_time": "19:21:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 252, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:26:19.418000", + "departure_time": "19:26:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 253, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:27:36.655000", + "departure_time": "19:27:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 254, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:29:13.200000", + "departure_time": "19:29:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 255, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:32:05.673000", + "departure_time": "19:32:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 256, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:33:10.473000", + "departure_time": "19:33:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 257, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:36:00.982000", + "departure_time": "19:36:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 258, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_19:15", + "arrival_time": "19:38:21.055000", + "departure_time": "19:38:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 259, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:10:00", + "departure_time": "20:10:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 260, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:14:22.473000", + "departure_time": "20:14:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 261, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:16:20.945000", + "departure_time": "20:16:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 262, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:21:19.418000", + "departure_time": "20:21:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 263, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:22:36.655000", + "departure_time": "20:22:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 264, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:24:13.200000", + "departure_time": "20:24:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 265, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:27:05.673000", + "departure_time": "20:27:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 266, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:28:10.473000", + "departure_time": "20:28:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 267, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:31:00.982000", + "departure_time": "20:31:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 268, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:10", + "arrival_time": "20:33:21.055000", + "departure_time": "20:33:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 269, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "20:50:00", + "departure_time": "20:50:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 270, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "20:54:22.473000", + "departure_time": "20:54:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 271, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "20:56:20.945000", + "departure_time": "20:56:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 272, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:01:19.418000", + "departure_time": "21:01:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 273, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:02:36.655000", + "departure_time": "21:02:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 274, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:04:13.200000", + "departure_time": "21:04:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 275, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:07:05.673000", + "departure_time": "21:07:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 276, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:08:10.473000", + "departure_time": "21:08:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 277, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:11:00.982000", + "departure_time": "21:11:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 278, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_20:50", + "arrival_time": "21:13:21.055000", + "departure_time": "21:13:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 279, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:00:00", + "departure_time": "21:00:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 280, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:04:22.473000", + "departure_time": "21:04:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 281, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:06:20.945000", + "departure_time": "21:06:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 282, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:11:19.418000", + "departure_time": "21:11:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 283, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:12:36.655000", + "departure_time": "21:12:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 284, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:14:13.200000", + "departure_time": "21:14:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 285, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:17:05.673000", + "departure_time": "21:17:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 286, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:18:10.473000", + "departure_time": "21:18:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 287, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:21:00.982000", + "departure_time": "21:21:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 288, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:00", + "arrival_time": "21:23:21.055000", + "departure_time": "21:23:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 289, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:35:00", + "departure_time": "21:35:00", + "stop_id": "bUCR_0_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 290, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:39:22.473000", + "departure_time": "21:39:22.473000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.802, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 291, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:41:20.945000", + "departure_time": "21:41:20.945000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.164, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 292, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:46:19.418000", + "departure_time": "21:46:19.418000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.076, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 293, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:47:36.655000", + "departure_time": "21:47:36.655000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.312, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 294, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:49:13.200000", + "departure_time": "21:49:13.200000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.607, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 295, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:52:05.673000", + "departure_time": "21:52:05.673000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.134, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 296, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:53:10.473000", + "departure_time": "21:53:10.473000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.332, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 297, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:56:00.982000", + "departure_time": "21:56:00.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.853, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 298, + "fields": { + "feed": "1", + "trip_id": "desde_educacion_con_milla_entresemana_21:35", + "arrival_time": "21:58:21.055000", + "departure_time": "21:58:21.055000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 4.281, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 299, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:20:00", + "departure_time": "06:20:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 300, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:26:36", + "departure_time": "06:26:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 301, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:27:54.218000", + "departure_time": "06:27:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 302, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:29:32.400000", + "departure_time": "06:29:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 303, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:32:24.545000", + "departure_time": "06:32:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 304, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:33:29.345000", + "departure_time": "06:33:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 305, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:36:13.964000", + "departure_time": "06:36:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 306, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:20", + "arrival_time": "06:38:40.255000", + "departure_time": "06:38:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 307, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:40:00", + "departure_time": "06:40:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 308, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:46:36", + "departure_time": "06:46:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 309, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:47:54.218000", + "departure_time": "06:47:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 310, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:49:32.400000", + "departure_time": "06:49:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 311, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:52:24.545000", + "departure_time": "06:52:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 312, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:53:29.345000", + "departure_time": "06:53:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 313, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:56:13.964000", + "departure_time": "06:56:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 314, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_06:40", + "arrival_time": "06:58:40.255000", + "departure_time": "06:58:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 315, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:10:00", + "departure_time": "07:10:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 316, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:16:36", + "departure_time": "07:16:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 317, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:17:54.218000", + "departure_time": "07:17:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 318, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:19:32.400000", + "departure_time": "07:19:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 319, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:22:24.545000", + "departure_time": "07:22:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 320, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:23:29.345000", + "departure_time": "07:23:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 321, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:26:13.964000", + "departure_time": "07:26:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 322, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:10", + "arrival_time": "07:28:40.255000", + "departure_time": "07:28:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 323, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:30:00", + "departure_time": "07:30:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 324, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:36:36", + "departure_time": "07:36:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 325, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:37:54.218000", + "departure_time": "07:37:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 326, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:39:32.400000", + "departure_time": "07:39:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 327, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:42:24.545000", + "departure_time": "07:42:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 328, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:43:29.345000", + "departure_time": "07:43:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 329, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:46:13.964000", + "departure_time": "07:46:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 330, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_07:30", + "arrival_time": "07:48:40.255000", + "departure_time": "07:48:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 331, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:00:00", + "departure_time": "08:00:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 332, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:06:36", + "departure_time": "08:06:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 333, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:07:54.218000", + "departure_time": "08:07:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 334, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:09:32.400000", + "departure_time": "08:09:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 335, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:12:24.545000", + "departure_time": "08:12:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 336, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:13:29.345000", + "departure_time": "08:13:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 337, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:16:13.964000", + "departure_time": "08:16:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 338, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:00", + "arrival_time": "08:18:40.255000", + "departure_time": "08:18:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 339, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:35:00", + "departure_time": "08:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 340, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:41:36", + "departure_time": "08:41:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 341, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:42:54.218000", + "departure_time": "08:42:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 342, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:44:32.400000", + "departure_time": "08:44:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 343, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:47:24.545000", + "departure_time": "08:47:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 344, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:48:29.345000", + "departure_time": "08:48:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 345, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:51:13.964000", + "departure_time": "08:51:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 346, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_08:35", + "arrival_time": "08:53:40.255000", + "departure_time": "08:53:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 347, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:05:00", + "departure_time": "09:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 348, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:11:36", + "departure_time": "09:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 349, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:12:54.218000", + "departure_time": "09:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 350, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:14:32.400000", + "departure_time": "09:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 351, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:17:24.545000", + "departure_time": "09:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 352, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:18:29.345000", + "departure_time": "09:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 353, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:21:13.964000", + "departure_time": "09:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 354, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:05", + "arrival_time": "09:23:40.255000", + "departure_time": "09:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 355, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:25:00", + "departure_time": "09:25:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 356, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:31:36", + "departure_time": "09:31:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 357, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:32:54.218000", + "departure_time": "09:32:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 358, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:34:32.400000", + "departure_time": "09:34:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 359, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:37:24.545000", + "departure_time": "09:37:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 360, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:38:29.345000", + "departure_time": "09:38:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 361, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:41:13.964000", + "departure_time": "09:41:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 362, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:25", + "arrival_time": "09:43:40.255000", + "departure_time": "09:43:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 363, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "09:55:00", + "departure_time": "09:55:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 364, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:01:36", + "departure_time": "10:01:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 365, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:02:54.218000", + "departure_time": "10:02:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 366, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:04:32.400000", + "departure_time": "10:04:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 367, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:07:24.545000", + "departure_time": "10:07:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 368, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:08:29.345000", + "departure_time": "10:08:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 369, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:11:13.964000", + "departure_time": "10:11:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 370, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_09:55", + "arrival_time": "10:13:40.255000", + "departure_time": "10:13:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 371, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:15:00", + "departure_time": "10:15:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 372, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:21:36", + "departure_time": "10:21:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 373, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:22:54.218000", + "departure_time": "10:22:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 374, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:24:32.400000", + "departure_time": "10:24:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 375, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:27:24.545000", + "departure_time": "10:27:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 376, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:28:29.345000", + "departure_time": "10:28:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 377, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:31:13.964000", + "departure_time": "10:31:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 378, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:15", + "arrival_time": "10:33:40.255000", + "departure_time": "10:33:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 379, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:45:00", + "departure_time": "10:45:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 380, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:51:36", + "departure_time": "10:51:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 381, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:52:54.218000", + "departure_time": "10:52:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 382, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:54:32.400000", + "departure_time": "10:54:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 383, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:57:24.545000", + "departure_time": "10:57:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 384, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "10:58:29.345000", + "departure_time": "10:58:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 385, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "11:01:13.964000", + "departure_time": "11:01:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 386, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_10:45", + "arrival_time": "11:03:40.255000", + "departure_time": "11:03:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 387, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:05:00", + "departure_time": "11:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 388, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:11:36", + "departure_time": "11:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 389, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:12:54.218000", + "departure_time": "11:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 390, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:14:32.400000", + "departure_time": "11:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 391, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:17:24.545000", + "departure_time": "11:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 392, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:18:29.345000", + "departure_time": "11:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 393, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:21:13.964000", + "departure_time": "11:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 394, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:05", + "arrival_time": "11:23:40.255000", + "departure_time": "11:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 395, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:35:00", + "departure_time": "11:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 396, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:41:36", + "departure_time": "11:41:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 397, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:42:54.218000", + "departure_time": "11:42:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 398, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:44:32.400000", + "departure_time": "11:44:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 399, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:47:24.545000", + "departure_time": "11:47:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 400, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:48:29.345000", + "departure_time": "11:48:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 401, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:51:13.964000", + "departure_time": "11:51:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 402, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:35", + "arrival_time": "11:53:40.255000", + "departure_time": "11:53:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 403, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:50:00", + "departure_time": "11:50:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 404, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:56:36", + "departure_time": "11:56:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 405, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:57:54.218000", + "departure_time": "11:57:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 406, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "11:59:32.400000", + "departure_time": "11:59:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 407, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:02:24.545000", + "departure_time": "12:02:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 408, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:03:29.345000", + "departure_time": "12:03:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 409, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:06:13.964000", + "departure_time": "12:06:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 410, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_11:50", + "arrival_time": "12:08:40.255000", + "departure_time": "12:08:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 411, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:10:00", + "departure_time": "12:10:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 412, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:16:36", + "departure_time": "12:16:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 413, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:17:54.218000", + "departure_time": "12:17:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 414, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:19:32.400000", + "departure_time": "12:19:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 415, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:22:24.545000", + "departure_time": "12:22:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 416, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:23:29.345000", + "departure_time": "12:23:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 417, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:26:13.964000", + "departure_time": "12:26:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 418, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:10", + "arrival_time": "12:28:40.255000", + "departure_time": "12:28:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 419, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:30:00", + "departure_time": "12:30:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 420, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:36:36", + "departure_time": "12:36:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 421, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:37:54.218000", + "departure_time": "12:37:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 422, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:39:32.400000", + "departure_time": "12:39:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 423, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:42:24.545000", + "departure_time": "12:42:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 424, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:43:29.345000", + "departure_time": "12:43:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 425, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:46:13.964000", + "departure_time": "12:46:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 426, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:30", + "arrival_time": "12:48:40.255000", + "departure_time": "12:48:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 427, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:45:00", + "departure_time": "12:45:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 428, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:51:36", + "departure_time": "12:51:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 429, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:52:54.218000", + "departure_time": "12:52:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 430, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:54:32.400000", + "departure_time": "12:54:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 431, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:57:24.545000", + "departure_time": "12:57:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 432, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "12:58:29.345000", + "departure_time": "12:58:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 433, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "13:01:13.964000", + "departure_time": "13:01:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 434, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_12:45", + "arrival_time": "13:03:40.255000", + "departure_time": "13:03:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 435, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:20:00", + "departure_time": "13:20:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 436, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:26:36", + "departure_time": "13:26:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 437, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:27:54.218000", + "departure_time": "13:27:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 438, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:29:32.400000", + "departure_time": "13:29:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 439, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:32:24.545000", + "departure_time": "13:32:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 440, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:33:29.345000", + "departure_time": "13:33:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 441, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:36:13.964000", + "departure_time": "13:36:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 442, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_13:20", + "arrival_time": "13:38:40.255000", + "departure_time": "13:38:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 443, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:00:00", + "departure_time": "14:00:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 444, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:06:36", + "departure_time": "14:06:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 445, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:07:54.218000", + "departure_time": "14:07:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 446, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:09:32.400000", + "departure_time": "14:09:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 447, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:12:24.545000", + "departure_time": "14:12:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 448, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:13:29.345000", + "departure_time": "14:13:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 449, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:16:13.964000", + "departure_time": "14:16:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 450, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:00", + "arrival_time": "14:18:40.255000", + "departure_time": "14:18:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 451, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:20:00", + "departure_time": "14:20:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 452, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:26:36", + "departure_time": "14:26:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 453, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:27:54.218000", + "departure_time": "14:27:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 454, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:29:32.400000", + "departure_time": "14:29:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 455, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:32:24.545000", + "departure_time": "14:32:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 456, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:33:29.345000", + "departure_time": "14:33:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 457, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:36:13.964000", + "departure_time": "14:36:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 458, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:20", + "arrival_time": "14:38:40.255000", + "departure_time": "14:38:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 459, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:45:00", + "departure_time": "14:45:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 460, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:51:36", + "departure_time": "14:51:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 461, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:52:54.218000", + "departure_time": "14:52:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 462, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:54:32.400000", + "departure_time": "14:54:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 463, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:57:24.545000", + "departure_time": "14:57:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 464, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "14:58:29.345000", + "departure_time": "14:58:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 465, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "15:01:13.964000", + "departure_time": "15:01:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 466, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_14:45", + "arrival_time": "15:03:40.255000", + "departure_time": "15:03:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 467, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:05:00", + "departure_time": "15:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 468, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:11:36", + "departure_time": "15:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 469, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:12:54.218000", + "departure_time": "15:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 470, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:14:32.400000", + "departure_time": "15:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 471, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:17:24.545000", + "departure_time": "15:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 472, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:18:29.345000", + "departure_time": "15:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 473, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:21:13.964000", + "departure_time": "15:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 474, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:05", + "arrival_time": "15:23:40.255000", + "departure_time": "15:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 475, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:30:00", + "departure_time": "15:30:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 476, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:36:36", + "departure_time": "15:36:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 477, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:37:54.218000", + "departure_time": "15:37:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 478, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:39:32.400000", + "departure_time": "15:39:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 479, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:42:24.545000", + "departure_time": "15:42:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 480, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:43:29.345000", + "departure_time": "15:43:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 481, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:46:13.964000", + "departure_time": "15:46:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 482, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_15:30", + "arrival_time": "15:48:40.255000", + "departure_time": "15:48:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 483, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:05:00", + "departure_time": "16:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 484, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:11:36", + "departure_time": "16:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 485, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:12:54.218000", + "departure_time": "16:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 486, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:14:32.400000", + "departure_time": "16:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 487, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:17:24.545000", + "departure_time": "16:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 488, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:18:29.345000", + "departure_time": "16:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 489, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:21:13.964000", + "departure_time": "16:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 490, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:05", + "arrival_time": "16:23:40.255000", + "departure_time": "16:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 491, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:40:00", + "departure_time": "16:40:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 492, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:46:36", + "departure_time": "16:46:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 493, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:47:54.218000", + "departure_time": "16:47:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 494, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:49:32.400000", + "departure_time": "16:49:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 495, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:52:24.545000", + "departure_time": "16:52:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 496, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:53:29.345000", + "departure_time": "16:53:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 497, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:56:13.964000", + "departure_time": "16:56:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 498, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_16:40", + "arrival_time": "16:58:40.255000", + "departure_time": "16:58:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 499, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:05:00", + "departure_time": "17:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 500, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:11:36", + "departure_time": "17:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 501, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:12:54.218000", + "departure_time": "17:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 502, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:14:32.400000", + "departure_time": "17:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 503, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:17:24.545000", + "departure_time": "17:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 504, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:18:29.345000", + "departure_time": "17:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 505, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:21:13.964000", + "departure_time": "17:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 506, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:05", + "arrival_time": "17:23:40.255000", + "departure_time": "17:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 507, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:40:00", + "departure_time": "17:40:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 508, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:46:36", + "departure_time": "17:46:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 509, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:47:54.218000", + "departure_time": "17:47:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 510, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:49:32.400000", + "departure_time": "17:49:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 511, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:52:24.545000", + "departure_time": "17:52:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 512, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:53:29.345000", + "departure_time": "17:53:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 513, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:56:13.964000", + "departure_time": "17:56:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 514, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_17:40", + "arrival_time": "17:58:40.255000", + "departure_time": "17:58:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 515, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:05:00", + "departure_time": "18:05:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 516, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:11:36", + "departure_time": "18:11:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 517, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:12:54.218000", + "departure_time": "18:12:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 518, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:14:32.400000", + "departure_time": "18:14:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 519, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:17:24.545000", + "departure_time": "18:17:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 520, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:18:29.345000", + "departure_time": "18:18:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 521, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:21:13.964000", + "departure_time": "18:21:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 522, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:05", + "arrival_time": "18:23:40.255000", + "departure_time": "18:23:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 523, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:35:00", + "departure_time": "18:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 524, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:41:36", + "departure_time": "18:41:36", + "stop_id": "bUCR_0_05", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.21, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 525, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:42:54.218000", + "departure_time": "18:42:54.218000", + "stop_id": "bUCR_0_06", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.449, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 526, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:44:32.400000", + "departure_time": "18:44:32.400000", + "stop_id": "bUCR_0_07", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.749, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 527, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:47:24.545000", + "departure_time": "18:47:24.545000", + "stop_id": "bUCR_0_08", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.275, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 528, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:48:29.345000", + "departure_time": "18:48:29.345000", + "stop_id": "bUCR_0_09", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.473, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 529, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:51:13.964000", + "departure_time": "18:51:13.964000", + "stop_id": "bUCR_0_10", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 530, + "fields": { + "feed": "1", + "trip_id": "desde_artes_sin_milla_entresemana_18:35", + "arrival_time": "18:53:40.255000", + "departure_time": "18:53:40.255000", + "stop_id": "bUCR_0_11", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.423, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 531, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:00:00", + "departure_time": "19:00:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 532, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:02:24.327000", + "departure_time": "19:02:24.327000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.441, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 533, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:04:27.382000", + "departure_time": "19:04:27.382000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.817, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 534, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:09:26.182000", + "departure_time": "19:09:26.182000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.73, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 535, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:10:46.691000", + "departure_time": "19:10:46.691000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 536, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:12:19.309000", + "departure_time": "19:12:19.309000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.259, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 537, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:15:11.127000", + "departure_time": "19:15:11.127000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.784, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 538, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:16:16.255000", + "departure_time": "19:16:16.255000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.983, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 539, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:19:12.982000", + "departure_time": "19:19:12.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.523, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 540, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:00", + "arrival_time": "19:21:27.491000", + "departure_time": "19:21:27.491000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.934, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 541, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:35:00", + "departure_time": "19:35:00", + "stop_id": "bUCR_0_02", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 542, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:37:24.327000", + "departure_time": "19:37:24.327000", + "stop_id": "bUCR_0_03", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.441, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 543, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:39:27.382000", + "departure_time": "19:39:27.382000", + "stop_id": "bUCR_0_04", + "stop_sequence": 2, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.817, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 544, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:44:26.182000", + "departure_time": "19:44:26.182000", + "stop_id": "bUCR_0_05", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.73, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 545, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:45:46.691000", + "departure_time": "19:45:46.691000", + "stop_id": "bUCR_0_06", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.976, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 546, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:47:19.309000", + "departure_time": "19:47:19.309000", + "stop_id": "bUCR_0_07", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.259, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 547, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:50:11.127000", + "departure_time": "19:50:11.127000", + "stop_id": "bUCR_0_08", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.784, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 548, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:51:16.255000", + "departure_time": "19:51:16.255000", + "stop_id": "bUCR_0_09", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.983, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 549, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:54:12.982000", + "departure_time": "19:54:12.982000", + "stop_id": "bUCR_0_10", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.523, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 550, + "fields": { + "feed": "1", + "trip_id": "desde_artes_con_milla_entresemana_19:35", + "arrival_time": "19:56:27.491000", + "departure_time": "19:56:27.491000", + "stop_id": "bUCR_0_11", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.934, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 551, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:20:00", + "departure_time": "06:20:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 552, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:24:15.927000", + "departure_time": "06:24:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 553, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:27:27.709000", + "departure_time": "06:27:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 554, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:28:04.691000", + "departure_time": "06:28:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 555, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:29:12.764000", + "departure_time": "06:29:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 556, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:31:29.891000", + "departure_time": "06:31:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 557, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:33:09.709000", + "departure_time": "06:33:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 558, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:34:22.691000", + "departure_time": "06:34:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 559, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:20", + "arrival_time": "06:39:11.673000", + "departure_time": "06:39:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 560, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:40:00", + "departure_time": "06:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 561, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:44:00.873000", + "departure_time": "06:44:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 562, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:47:28.364000", + "departure_time": "06:47:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 563, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:48:12.873000", + "departure_time": "06:48:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 564, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:49:11.127000", + "departure_time": "06:49:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 565, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:51:27.600000", + "departure_time": "06:51:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 566, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:53:11.018000", + "departure_time": "06:53:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 567, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:54:22.364000", + "departure_time": "06:54:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 568, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_06:40", + "arrival_time": "06:57:17.782000", + "departure_time": "06:57:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 569, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:50:00", + "departure_time": "06:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 570, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:54:15.927000", + "departure_time": "06:54:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 571, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:57:27.709000", + "departure_time": "06:57:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 572, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:58:04.691000", + "departure_time": "06:58:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 573, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "06:59:12.764000", + "departure_time": "06:59:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 574, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:01:29.891000", + "departure_time": "07:01:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 575, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:03:09.709000", + "departure_time": "07:03:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 576, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:04:22.691000", + "departure_time": "07:04:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 577, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_06:50", + "arrival_time": "07:09:11.673000", + "departure_time": "07:09:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 578, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:00:00", + "departure_time": "07:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 579, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:04:00.873000", + "departure_time": "07:04:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 580, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:07:28.364000", + "departure_time": "07:07:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 581, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:08:12.873000", + "departure_time": "07:08:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 582, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:09:11.127000", + "departure_time": "07:09:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 583, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:11:27.600000", + "departure_time": "07:11:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 584, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:13:11.018000", + "departure_time": "07:13:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 585, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:14:22.364000", + "departure_time": "07:14:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 586, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:00", + "arrival_time": "07:17:17.782000", + "departure_time": "07:17:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 587, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:10:00", + "departure_time": "07:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 588, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:14:15.927000", + "departure_time": "07:14:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 589, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:17:27.709000", + "departure_time": "07:17:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 590, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:18:04.691000", + "departure_time": "07:18:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 591, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:19:12.764000", + "departure_time": "07:19:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 592, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:21:29.891000", + "departure_time": "07:21:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 593, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:23:09.709000", + "departure_time": "07:23:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 594, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:24:22.691000", + "departure_time": "07:24:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 595, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:10", + "arrival_time": "07:29:11.673000", + "departure_time": "07:29:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 596, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:30:00", + "departure_time": "07:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 597, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:34:00.873000", + "departure_time": "07:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 598, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:37:28.364000", + "departure_time": "07:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 599, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:38:12.873000", + "departure_time": "07:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 600, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:39:11.127000", + "departure_time": "07:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 601, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:41:27.600000", + "departure_time": "07:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 602, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:43:11.018000", + "departure_time": "07:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 603, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:44:22.364000", + "departure_time": "07:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 604, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:30", + "arrival_time": "07:47:17.782000", + "departure_time": "07:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 605, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:40:00", + "departure_time": "07:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 606, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:44:15.927000", + "departure_time": "07:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 607, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:47:27.709000", + "departure_time": "07:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 608, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:48:04.691000", + "departure_time": "07:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 609, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:49:12.764000", + "departure_time": "07:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 610, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:51:29.891000", + "departure_time": "07:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 611, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:53:09.709000", + "departure_time": "07:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 612, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:54:22.691000", + "departure_time": "07:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 613, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_07:40", + "arrival_time": "07:59:11.673000", + "departure_time": "07:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 614, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:50:00", + "departure_time": "07:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 615, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:54:00.873000", + "departure_time": "07:54:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 616, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:57:28.364000", + "departure_time": "07:57:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 617, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:58:12.873000", + "departure_time": "07:58:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 618, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "07:59:11.127000", + "departure_time": "07:59:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 619, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:01:27.600000", + "departure_time": "08:01:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 620, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:03:11.018000", + "departure_time": "08:03:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 621, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:04:22.364000", + "departure_time": "08:04:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 622, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_07:50", + "arrival_time": "08:07:17.782000", + "departure_time": "08:07:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 623, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:00:00", + "departure_time": "08:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 624, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:04:15.927000", + "departure_time": "08:04:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 625, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:07:27.709000", + "departure_time": "08:07:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 626, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:08:04.691000", + "departure_time": "08:08:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 627, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:09:12.764000", + "departure_time": "08:09:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 628, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:11:29.891000", + "departure_time": "08:11:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 629, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:13:09.709000", + "departure_time": "08:13:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 630, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:14:22.691000", + "departure_time": "08:14:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 631, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:00", + "arrival_time": "08:19:11.673000", + "departure_time": "08:19:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 632, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:35:00", + "departure_time": "08:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 633, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:39:00.873000", + "departure_time": "08:39:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 634, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:42:28.364000", + "departure_time": "08:42:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 635, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:43:12.873000", + "departure_time": "08:43:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 636, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:44:11.127000", + "departure_time": "08:44:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 637, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:46:27.600000", + "departure_time": "08:46:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 638, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:48:11.018000", + "departure_time": "08:48:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 639, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:49:22.364000", + "departure_time": "08:49:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 640, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:35", + "arrival_time": "08:52:17.782000", + "departure_time": "08:52:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 641, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:45:00", + "departure_time": "08:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 642, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:49:15.927000", + "departure_time": "08:49:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 643, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:52:27.709000", + "departure_time": "08:52:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 644, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:53:04.691000", + "departure_time": "08:53:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 645, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:54:12.764000", + "departure_time": "08:54:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 646, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:56:29.891000", + "departure_time": "08:56:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 647, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:58:09.709000", + "departure_time": "08:58:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 648, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "08:59:22.691000", + "departure_time": "08:59:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 649, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_08:45", + "arrival_time": "09:04:11.673000", + "departure_time": "09:04:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 650, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "08:55:00", + "departure_time": "08:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 651, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "08:59:00.873000", + "departure_time": "08:59:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 652, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:02:28.364000", + "departure_time": "09:02:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 653, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:03:12.873000", + "departure_time": "09:03:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 654, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:04:11.127000", + "departure_time": "09:04:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 655, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:06:27.600000", + "departure_time": "09:06:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 656, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:08:11.018000", + "departure_time": "09:08:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 657, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:09:22.364000", + "departure_time": "09:09:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 658, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_08:55", + "arrival_time": "09:12:17.782000", + "departure_time": "09:12:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 659, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:05:00", + "departure_time": "09:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 660, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:09:15.927000", + "departure_time": "09:09:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 661, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:12:27.709000", + "departure_time": "09:12:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 662, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:13:04.691000", + "departure_time": "09:13:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 663, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:14:12.764000", + "departure_time": "09:14:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 664, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:16:29.891000", + "departure_time": "09:16:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 665, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:18:09.709000", + "departure_time": "09:18:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 666, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:19:22.691000", + "departure_time": "09:19:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 667, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:05", + "arrival_time": "09:24:11.673000", + "departure_time": "09:24:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 668, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:25:00", + "departure_time": "09:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 669, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:29:00.873000", + "departure_time": "09:29:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 670, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:32:28.364000", + "departure_time": "09:32:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 671, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:33:12.873000", + "departure_time": "09:33:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 672, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:34:11.127000", + "departure_time": "09:34:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 673, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:36:27.600000", + "departure_time": "09:36:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 674, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:38:11.018000", + "departure_time": "09:38:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 675, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:39:22.364000", + "departure_time": "09:39:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 676, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:25", + "arrival_time": "09:42:17.782000", + "departure_time": "09:42:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 677, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:35:00", + "departure_time": "09:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 678, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:39:15.927000", + "departure_time": "09:39:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 679, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:42:27.709000", + "departure_time": "09:42:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 680, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:43:04.691000", + "departure_time": "09:43:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 681, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:44:12.764000", + "departure_time": "09:44:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 682, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:46:29.891000", + "departure_time": "09:46:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 683, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:48:09.709000", + "departure_time": "09:48:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 684, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:49:22.691000", + "departure_time": "09:49:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 685, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:35", + "arrival_time": "09:54:11.673000", + "departure_time": "09:54:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 686, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:45:00", + "departure_time": "09:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 687, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:49:00.873000", + "departure_time": "09:49:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 688, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:52:28.364000", + "departure_time": "09:52:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 689, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:53:12.873000", + "departure_time": "09:53:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 690, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:54:11.127000", + "departure_time": "09:54:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 691, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:56:27.600000", + "departure_time": "09:56:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 692, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:58:11.018000", + "departure_time": "09:58:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 693, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "09:59:22.364000", + "departure_time": "09:59:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 694, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_09:45", + "arrival_time": "10:02:17.782000", + "departure_time": "10:02:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 695, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "09:55:00", + "departure_time": "09:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 696, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "09:59:15.927000", + "departure_time": "09:59:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 697, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:02:27.709000", + "departure_time": "10:02:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 698, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:03:04.691000", + "departure_time": "10:03:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 699, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:04:12.764000", + "departure_time": "10:04:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 700, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:06:29.891000", + "departure_time": "10:06:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 701, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:08:09.709000", + "departure_time": "10:08:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 702, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:09:22.691000", + "departure_time": "10:09:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 703, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_09:55", + "arrival_time": "10:14:11.673000", + "departure_time": "10:14:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 704, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:15:00", + "departure_time": "10:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 705, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:19:00.873000", + "departure_time": "10:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 706, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:22:28.364000", + "departure_time": "10:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 707, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:23:12.873000", + "departure_time": "10:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 708, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:24:11.127000", + "departure_time": "10:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 709, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:26:27.600000", + "departure_time": "10:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 710, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:28:11.018000", + "departure_time": "10:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 711, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:29:22.364000", + "departure_time": "10:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 712, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:15", + "arrival_time": "10:32:17.782000", + "departure_time": "10:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 713, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:25:00", + "departure_time": "10:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 714, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:29:15.927000", + "departure_time": "10:29:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 715, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:32:27.709000", + "departure_time": "10:32:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 716, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:33:04.691000", + "departure_time": "10:33:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 717, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:34:12.764000", + "departure_time": "10:34:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 718, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:36:29.891000", + "departure_time": "10:36:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 719, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:38:09.709000", + "departure_time": "10:38:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 720, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:39:22.691000", + "departure_time": "10:39:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 721, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:25", + "arrival_time": "10:44:11.673000", + "departure_time": "10:44:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 722, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:35:00", + "departure_time": "10:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 723, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:39:00.873000", + "departure_time": "10:39:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 724, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:42:28.364000", + "departure_time": "10:42:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 725, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:43:12.873000", + "departure_time": "10:43:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 726, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:44:11.127000", + "departure_time": "10:44:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 727, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:46:27.600000", + "departure_time": "10:46:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 728, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:48:11.018000", + "departure_time": "10:48:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 729, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:49:22.364000", + "departure_time": "10:49:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 730, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_10:35", + "arrival_time": "10:52:17.782000", + "departure_time": "10:52:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 731, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:45:00", + "departure_time": "10:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 732, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:49:15.927000", + "departure_time": "10:49:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 733, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:52:27.709000", + "departure_time": "10:52:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 734, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:53:04.691000", + "departure_time": "10:53:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 735, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:54:12.764000", + "departure_time": "10:54:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 736, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:56:29.891000", + "departure_time": "10:56:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 737, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:58:09.709000", + "departure_time": "10:58:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 738, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "10:59:22.691000", + "departure_time": "10:59:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 739, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_10:45", + "arrival_time": "11:04:11.673000", + "departure_time": "11:04:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 740, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:05:00", + "departure_time": "11:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 741, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:09:00.873000", + "departure_time": "11:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 742, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:12:28.364000", + "departure_time": "11:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 743, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:13:12.873000", + "departure_time": "11:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 744, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:14:11.127000", + "departure_time": "11:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 745, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:16:27.600000", + "departure_time": "11:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 746, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:18:11.018000", + "departure_time": "11:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 747, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:19:22.364000", + "departure_time": "11:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 748, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:05", + "arrival_time": "11:22:17.782000", + "departure_time": "11:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 749, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:15:00", + "departure_time": "11:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 750, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:19:15.927000", + "departure_time": "11:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 751, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:22:27.709000", + "departure_time": "11:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 752, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:23:04.691000", + "departure_time": "11:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 753, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:24:12.764000", + "departure_time": "11:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 754, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:26:29.891000", + "departure_time": "11:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 755, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:28:09.709000", + "departure_time": "11:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 756, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:29:22.691000", + "departure_time": "11:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 757, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:15", + "arrival_time": "11:34:11.673000", + "departure_time": "11:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 758, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:20:00", + "departure_time": "11:20:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 759, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:24:00.873000", + "departure_time": "11:24:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 760, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:27:28.364000", + "departure_time": "11:27:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 761, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:28:12.873000", + "departure_time": "11:28:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 762, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:29:11.127000", + "departure_time": "11:29:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 763, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:31:27.600000", + "departure_time": "11:31:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 764, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:33:11.018000", + "departure_time": "11:33:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 765, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:34:22.364000", + "departure_time": "11:34:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 766, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:20", + "arrival_time": "11:37:17.782000", + "departure_time": "11:37:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 767, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:30:00", + "departure_time": "11:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 768, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:34:15.927000", + "departure_time": "11:34:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 769, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:37:27.709000", + "departure_time": "11:37:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 770, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:38:04.691000", + "departure_time": "11:38:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 771, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:39:12.764000", + "departure_time": "11:39:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 772, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:41:29.891000", + "departure_time": "11:41:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 773, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:43:09.709000", + "departure_time": "11:43:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 774, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:44:22.691000", + "departure_time": "11:44:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 775, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:30", + "arrival_time": "11:49:11.673000", + "departure_time": "11:49:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 776, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:40:00", + "departure_time": "11:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 777, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:44:00.873000", + "departure_time": "11:44:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 778, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:47:28.364000", + "departure_time": "11:47:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 779, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:48:12.873000", + "departure_time": "11:48:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 780, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:49:11.127000", + "departure_time": "11:49:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 781, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:51:27.600000", + "departure_time": "11:51:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 782, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:53:11.018000", + "departure_time": "11:53:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 783, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:54:22.364000", + "departure_time": "11:54:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 784, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_11:40", + "arrival_time": "11:57:17.782000", + "departure_time": "11:57:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 785, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:50:00", + "departure_time": "11:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 786, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:54:15.927000", + "departure_time": "11:54:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 787, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:57:27.709000", + "departure_time": "11:57:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 788, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:58:04.691000", + "departure_time": "11:58:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 789, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "11:59:12.764000", + "departure_time": "11:59:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 790, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:01:29.891000", + "departure_time": "12:01:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 791, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:03:09.709000", + "departure_time": "12:03:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 792, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:04:22.691000", + "departure_time": "12:04:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 793, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_11:50", + "arrival_time": "12:09:11.673000", + "departure_time": "12:09:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 794, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:05:00", + "departure_time": "12:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 795, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:09:00.873000", + "departure_time": "12:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 796, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:12:28.364000", + "departure_time": "12:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 797, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:13:12.873000", + "departure_time": "12:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 798, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:14:11.127000", + "departure_time": "12:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 799, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:16:27.600000", + "departure_time": "12:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 800, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:18:11.018000", + "departure_time": "12:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 801, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:19:22.364000", + "departure_time": "12:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 802, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:05", + "arrival_time": "12:22:17.782000", + "departure_time": "12:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 803, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:10:00", + "departure_time": "12:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 804, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:14:15.927000", + "departure_time": "12:14:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 805, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:17:27.709000", + "departure_time": "12:17:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 806, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:18:04.691000", + "departure_time": "12:18:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 807, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:19:12.764000", + "departure_time": "12:19:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 808, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:21:29.891000", + "departure_time": "12:21:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 809, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:23:09.709000", + "departure_time": "12:23:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 810, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:24:22.691000", + "departure_time": "12:24:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 811, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:10", + "arrival_time": "12:29:11.673000", + "departure_time": "12:29:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 812, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:15:00", + "departure_time": "12:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 813, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:19:00.873000", + "departure_time": "12:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 814, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:22:28.364000", + "departure_time": "12:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 815, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:23:12.873000", + "departure_time": "12:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 816, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:24:11.127000", + "departure_time": "12:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 817, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:26:27.600000", + "departure_time": "12:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 818, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:28:11.018000", + "departure_time": "12:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 819, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:29:22.364000", + "departure_time": "12:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 820, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:15", + "arrival_time": "12:32:17.782000", + "departure_time": "12:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 821, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:25:00", + "departure_time": "12:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 822, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:29:15.927000", + "departure_time": "12:29:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 823, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:32:27.709000", + "departure_time": "12:32:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 824, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:33:04.691000", + "departure_time": "12:33:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 825, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:34:12.764000", + "departure_time": "12:34:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 826, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:36:29.891000", + "departure_time": "12:36:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 827, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:38:09.709000", + "departure_time": "12:38:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 828, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:39:22.691000", + "departure_time": "12:39:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 829, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_12:25", + "arrival_time": "12:44:11.673000", + "departure_time": "12:44:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 830, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:50:00", + "departure_time": "12:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 831, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:54:00.873000", + "departure_time": "12:54:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 832, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:57:28.364000", + "departure_time": "12:57:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 833, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:58:12.873000", + "departure_time": "12:58:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 834, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "12:59:11.127000", + "departure_time": "12:59:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 835, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:01:27.600000", + "departure_time": "13:01:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 836, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:03:11.018000", + "departure_time": "13:03:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 837, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:04:22.364000", + "departure_time": "13:04:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 838, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_12:50", + "arrival_time": "13:07:17.782000", + "departure_time": "13:07:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 839, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:00:00", + "departure_time": "13:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 840, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:04:15.927000", + "departure_time": "13:04:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 841, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:07:27.709000", + "departure_time": "13:07:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 842, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:08:04.691000", + "departure_time": "13:08:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 843, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:09:12.764000", + "departure_time": "13:09:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 844, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:11:29.891000", + "departure_time": "13:11:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 845, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:13:09.709000", + "departure_time": "13:13:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 846, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:14:22.691000", + "departure_time": "13:14:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 847, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:00", + "arrival_time": "13:19:11.673000", + "departure_time": "13:19:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 848, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:25:00", + "departure_time": "13:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 849, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:29:00.873000", + "departure_time": "13:29:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 850, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:32:28.364000", + "departure_time": "13:32:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 851, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:33:12.873000", + "departure_time": "13:33:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 852, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:34:11.127000", + "departure_time": "13:34:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 853, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:36:27.600000", + "departure_time": "13:36:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 854, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:38:11.018000", + "departure_time": "13:38:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 855, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:39:22.364000", + "departure_time": "13:39:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 856, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:25", + "arrival_time": "13:42:17.782000", + "departure_time": "13:42:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 857, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:40:00", + "departure_time": "13:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 858, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:44:15.927000", + "departure_time": "13:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 859, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:47:27.709000", + "departure_time": "13:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 860, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:48:04.691000", + "departure_time": "13:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 861, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:49:12.764000", + "departure_time": "13:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 862, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:51:29.891000", + "departure_time": "13:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 863, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:53:09.709000", + "departure_time": "13:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 864, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:54:22.691000", + "departure_time": "13:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 865, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_13:40", + "arrival_time": "13:59:11.673000", + "departure_time": "13:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 866, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:50:00", + "departure_time": "13:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 867, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:54:00.873000", + "departure_time": "13:54:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 868, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:57:28.364000", + "departure_time": "13:57:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 869, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:58:12.873000", + "departure_time": "13:58:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 870, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "13:59:11.127000", + "departure_time": "13:59:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 871, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:01:27.600000", + "departure_time": "14:01:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 872, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:03:11.018000", + "departure_time": "14:03:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 873, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:04:22.364000", + "departure_time": "14:04:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 874, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_13:50", + "arrival_time": "14:07:17.782000", + "departure_time": "14:07:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 875, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:00:00", + "departure_time": "14:00:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 876, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:04:15.927000", + "departure_time": "14:04:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 877, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:07:27.709000", + "departure_time": "14:07:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 878, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:08:04.691000", + "departure_time": "14:08:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 879, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:09:12.764000", + "departure_time": "14:09:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 880, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:11:29.891000", + "departure_time": "14:11:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 881, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:13:09.709000", + "departure_time": "14:13:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 882, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:14:22.691000", + "departure_time": "14:14:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 883, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:00", + "arrival_time": "14:19:11.673000", + "departure_time": "14:19:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 884, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:10:00", + "departure_time": "14:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 885, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:14:00.873000", + "departure_time": "14:14:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 886, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:17:28.364000", + "departure_time": "14:17:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 887, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:18:12.873000", + "departure_time": "14:18:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 888, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:19:11.127000", + "departure_time": "14:19:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 889, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:21:27.600000", + "departure_time": "14:21:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 890, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:23:11.018000", + "departure_time": "14:23:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 891, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:24:22.364000", + "departure_time": "14:24:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 892, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:10", + "arrival_time": "14:27:17.782000", + "departure_time": "14:27:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 893, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:25:00", + "departure_time": "14:25:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 894, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:29:15.927000", + "departure_time": "14:29:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 895, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:32:27.709000", + "departure_time": "14:32:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 896, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:33:04.691000", + "departure_time": "14:33:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 897, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:34:12.764000", + "departure_time": "14:34:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 898, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:36:29.891000", + "departure_time": "14:36:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 899, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:38:09.709000", + "departure_time": "14:38:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 900, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:39:22.691000", + "departure_time": "14:39:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 901, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:25", + "arrival_time": "14:44:11.673000", + "departure_time": "14:44:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 902, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:35:00", + "departure_time": "14:35:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 903, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:39:00.873000", + "departure_time": "14:39:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 904, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:42:28.364000", + "departure_time": "14:42:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 905, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:43:12.873000", + "departure_time": "14:43:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 906, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:44:11.127000", + "departure_time": "14:44:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 907, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:46:27.600000", + "departure_time": "14:46:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 908, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:48:11.018000", + "departure_time": "14:48:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 909, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:49:22.364000", + "departure_time": "14:49:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 910, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:35", + "arrival_time": "14:52:17.782000", + "departure_time": "14:52:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 911, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:45:00", + "departure_time": "14:45:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 912, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:49:15.927000", + "departure_time": "14:49:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 913, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:52:27.709000", + "departure_time": "14:52:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 914, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:53:04.691000", + "departure_time": "14:53:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 915, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:54:12.764000", + "departure_time": "14:54:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 916, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:56:29.891000", + "departure_time": "14:56:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 917, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:58:09.709000", + "departure_time": "14:58:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 918, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "14:59:22.691000", + "departure_time": "14:59:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 919, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_14:45", + "arrival_time": "15:04:11.673000", + "departure_time": "15:04:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 920, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "14:55:00", + "departure_time": "14:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 921, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "14:59:00.873000", + "departure_time": "14:59:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 922, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:02:28.364000", + "departure_time": "15:02:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 923, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:03:12.873000", + "departure_time": "15:03:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 924, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:04:11.127000", + "departure_time": "15:04:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 925, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:06:27.600000", + "departure_time": "15:06:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 926, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:08:11.018000", + "departure_time": "15:08:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 927, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:09:22.364000", + "departure_time": "15:09:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 928, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_14:55", + "arrival_time": "15:12:17.782000", + "departure_time": "15:12:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 929, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:10:00", + "departure_time": "15:10:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 930, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:14:15.927000", + "departure_time": "15:14:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 931, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:17:27.709000", + "departure_time": "15:17:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 932, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:18:04.691000", + "departure_time": "15:18:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 933, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:19:12.764000", + "departure_time": "15:19:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 934, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:21:29.891000", + "departure_time": "15:21:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 935, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:23:09.709000", + "departure_time": "15:23:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 936, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:24:22.691000", + "departure_time": "15:24:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 937, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:10", + "arrival_time": "15:29:11.673000", + "departure_time": "15:29:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 938, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:20:00", + "departure_time": "15:20:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 939, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:24:00.873000", + "departure_time": "15:24:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 940, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:27:28.364000", + "departure_time": "15:27:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 941, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:28:12.873000", + "departure_time": "15:28:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 942, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:29:11.127000", + "departure_time": "15:29:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 943, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:31:27.600000", + "departure_time": "15:31:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 944, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:33:11.018000", + "departure_time": "15:33:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 945, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:34:22.364000", + "departure_time": "15:34:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 946, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_15:20", + "arrival_time": "15:37:17.782000", + "departure_time": "15:37:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 947, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:30:00", + "departure_time": "15:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 948, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:34:15.927000", + "departure_time": "15:34:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 949, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:37:27.709000", + "departure_time": "15:37:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 950, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:38:04.691000", + "departure_time": "15:38:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 951, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:39:12.764000", + "departure_time": "15:39:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 952, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:41:29.891000", + "departure_time": "15:41:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 953, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:43:09.709000", + "departure_time": "15:43:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 954, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:44:22.691000", + "departure_time": "15:44:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 955, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_15:30", + "arrival_time": "15:49:11.673000", + "departure_time": "15:49:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 956, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:05:00", + "departure_time": "16:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 957, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:09:00.873000", + "departure_time": "16:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 958, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:12:28.364000", + "departure_time": "16:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 959, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:13:12.873000", + "departure_time": "16:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 960, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:14:11.127000", + "departure_time": "16:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 961, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:16:27.600000", + "departure_time": "16:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 962, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:18:11.018000", + "departure_time": "16:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 963, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:19:22.364000", + "departure_time": "16:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 964, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:05", + "arrival_time": "16:22:17.782000", + "departure_time": "16:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 965, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:15:00", + "departure_time": "16:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 966, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:19:15.927000", + "departure_time": "16:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 967, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:22:27.709000", + "departure_time": "16:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 968, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:23:04.691000", + "departure_time": "16:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 969, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:24:12.764000", + "departure_time": "16:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 970, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:26:29.891000", + "departure_time": "16:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 971, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:28:09.709000", + "departure_time": "16:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 972, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:29:22.691000", + "departure_time": "16:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 973, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:15", + "arrival_time": "16:34:11.673000", + "departure_time": "16:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 974, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:30:00", + "departure_time": "16:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 975, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:34:00.873000", + "departure_time": "16:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 976, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:37:28.364000", + "departure_time": "16:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 977, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:38:12.873000", + "departure_time": "16:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 978, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:39:11.127000", + "departure_time": "16:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 979, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:41:27.600000", + "departure_time": "16:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 980, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:43:11.018000", + "departure_time": "16:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 981, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:44:22.364000", + "departure_time": "16:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 982, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_16:30", + "arrival_time": "16:47:17.782000", + "departure_time": "16:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 983, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:40:00", + "departure_time": "16:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 984, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:44:15.927000", + "departure_time": "16:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 985, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:47:27.709000", + "departure_time": "16:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 986, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:48:04.691000", + "departure_time": "16:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 987, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:49:12.764000", + "departure_time": "16:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 988, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:51:29.891000", + "departure_time": "16:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 989, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:53:09.709000", + "departure_time": "16:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 990, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:54:22.691000", + "departure_time": "16:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 991, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_16:40", + "arrival_time": "16:59:11.673000", + "departure_time": "16:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 992, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:05:00", + "departure_time": "17:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 993, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:09:00.873000", + "departure_time": "17:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 994, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:12:28.364000", + "departure_time": "17:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 995, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:13:12.873000", + "departure_time": "17:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 996, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:14:11.127000", + "departure_time": "17:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 997, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:16:27.600000", + "departure_time": "17:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 998, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:18:11.018000", + "departure_time": "17:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 999, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:19:22.364000", + "departure_time": "17:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1000, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:05", + "arrival_time": "17:22:17.782000", + "departure_time": "17:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1001, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:15:00", + "departure_time": "17:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1002, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:19:15.927000", + "departure_time": "17:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1003, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:22:27.709000", + "departure_time": "17:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1004, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:23:04.691000", + "departure_time": "17:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1005, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:24:12.764000", + "departure_time": "17:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1006, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:26:29.891000", + "departure_time": "17:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1007, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:28:09.709000", + "departure_time": "17:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1008, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:29:22.691000", + "departure_time": "17:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1009, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:15", + "arrival_time": "17:34:11.673000", + "departure_time": "17:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1010, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:30:00", + "departure_time": "17:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1011, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:34:00.873000", + "departure_time": "17:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1012, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:37:28.364000", + "departure_time": "17:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1013, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:38:12.873000", + "departure_time": "17:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1014, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:39:11.127000", + "departure_time": "17:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1015, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:41:27.600000", + "departure_time": "17:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1016, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:43:11.018000", + "departure_time": "17:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1017, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:44:22.364000", + "departure_time": "17:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1018, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_17:30", + "arrival_time": "17:47:17.782000", + "departure_time": "17:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1019, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:40:00", + "departure_time": "17:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1020, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:44:15.927000", + "departure_time": "17:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1021, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:47:27.709000", + "departure_time": "17:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1022, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:48:04.691000", + "departure_time": "17:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1023, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:49:12.764000", + "departure_time": "17:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1024, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:51:29.891000", + "departure_time": "17:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1025, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:53:09.709000", + "departure_time": "17:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1026, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:54:22.691000", + "departure_time": "17:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1027, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_17:40", + "arrival_time": "17:59:11.673000", + "departure_time": "17:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1028, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:05:00", + "departure_time": "18:05:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1029, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:09:00.873000", + "departure_time": "18:09:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1030, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:12:28.364000", + "departure_time": "18:12:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1031, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:13:12.873000", + "departure_time": "18:13:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1032, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:14:11.127000", + "departure_time": "18:14:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1033, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:16:27.600000", + "departure_time": "18:16:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1034, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:18:11.018000", + "departure_time": "18:18:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1035, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:19:22.364000", + "departure_time": "18:19:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1036, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:05", + "arrival_time": "18:22:17.782000", + "departure_time": "18:22:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1037, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:15:00", + "departure_time": "18:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1038, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:19:15.927000", + "departure_time": "18:19:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1039, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:22:27.709000", + "departure_time": "18:22:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1040, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:23:04.691000", + "departure_time": "18:23:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1041, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:24:12.764000", + "departure_time": "18:24:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1042, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:26:29.891000", + "departure_time": "18:26:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1043, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:28:09.709000", + "departure_time": "18:28:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1044, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:29:22.691000", + "departure_time": "18:29:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1045, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:15", + "arrival_time": "18:34:11.673000", + "departure_time": "18:34:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1046, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:30:00", + "departure_time": "18:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1047, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:34:00.873000", + "departure_time": "18:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1048, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:37:28.364000", + "departure_time": "18:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1049, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:38:12.873000", + "departure_time": "18:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1050, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:39:11.127000", + "departure_time": "18:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1051, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:41:27.600000", + "departure_time": "18:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1052, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:43:11.018000", + "departure_time": "18:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1053, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:44:22.364000", + "departure_time": "18:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1054, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:30", + "arrival_time": "18:47:17.782000", + "departure_time": "18:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1055, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:40:00", + "departure_time": "18:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1056, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:44:15.927000", + "departure_time": "18:44:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1057, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:47:27.709000", + "departure_time": "18:47:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1058, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:48:04.691000", + "departure_time": "18:48:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1059, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:49:12.764000", + "departure_time": "18:49:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1060, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:51:29.891000", + "departure_time": "18:51:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1061, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:53:09.709000", + "departure_time": "18:53:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1062, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:54:22.691000", + "departure_time": "18:54:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1063, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_18:40", + "arrival_time": "18:59:11.673000", + "departure_time": "18:59:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1064, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "18:55:00", + "departure_time": "18:55:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1065, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "18:59:00.873000", + "departure_time": "18:59:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1066, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:02:28.364000", + "departure_time": "19:02:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1067, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:03:12.873000", + "departure_time": "19:03:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1068, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:04:11.127000", + "departure_time": "19:04:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1069, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:06:27.600000", + "departure_time": "19:06:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1070, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:08:11.018000", + "departure_time": "19:08:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1071, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:09:22.364000", + "departure_time": "19:09:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1072, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_18:55", + "arrival_time": "19:12:17.782000", + "departure_time": "19:12:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1073, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:15:00", + "departure_time": "19:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1074, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:19:00.873000", + "departure_time": "19:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1075, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:22:28.364000", + "departure_time": "19:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1076, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:23:12.873000", + "departure_time": "19:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1077, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:24:11.127000", + "departure_time": "19:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1078, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:26:27.600000", + "departure_time": "19:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1079, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:28:11.018000", + "departure_time": "19:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1080, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:29:22.364000", + "departure_time": "19:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1081, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_19:15", + "arrival_time": "19:32:17.782000", + "departure_time": "19:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1082, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:50:00", + "departure_time": "19:50:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1083, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:54:15.927000", + "departure_time": "19:54:15.927000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.782, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1084, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:57:27.709000", + "departure_time": "19:57:27.709000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.368, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1085, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:58:04.691000", + "departure_time": "19:58:04.691000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.481, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1086, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "19:59:12.764000", + "departure_time": "19:59:12.764000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.689, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1087, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:01:29.891000", + "departure_time": "20:01:29.891000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.108, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1088, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:03:09.709000", + "departure_time": "20:03:09.709000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.413, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1089, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:04:22.691000", + "departure_time": "20:04:22.691000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.636, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1090, + "fields": { + "feed": "1", + "trip_id": "hacia_artes_entresemana_19:50", + "arrival_time": "20:09:11.673000", + "departure_time": "20:09:11.673000", + "stop_id": "bUCR_0_02", + "stop_sequence": 10, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.519, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1091, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:30:00", + "departure_time": "20:30:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1092, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:34:00.873000", + "departure_time": "20:34:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1093, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:37:28.364000", + "departure_time": "20:37:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1094, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:38:12.873000", + "departure_time": "20:38:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1095, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:39:11.127000", + "departure_time": "20:39:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1096, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:41:27.600000", + "departure_time": "20:41:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1097, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:43:11.018000", + "departure_time": "20:43:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1098, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:44:22.364000", + "departure_time": "20:44:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1099, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:30", + "arrival_time": "20:47:17.782000", + "departure_time": "20:47:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1100, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:40:00", + "departure_time": "20:40:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1101, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:44:00.873000", + "departure_time": "20:44:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1102, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:47:28.364000", + "departure_time": "20:47:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1103, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:48:12.873000", + "departure_time": "20:48:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1104, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:49:11.127000", + "departure_time": "20:49:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1105, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:51:27.600000", + "departure_time": "20:51:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1106, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:53:11.018000", + "departure_time": "20:53:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1107, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:54:22.364000", + "departure_time": "20:54:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1108, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_20:40", + "arrival_time": "20:57:17.782000", + "departure_time": "20:57:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1109, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:15:00", + "departure_time": "21:15:00", + "stop_id": "bUCR_1_01", + "stop_sequence": 0, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.0, + "timepoint": 1 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1110, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:19:00.873000", + "departure_time": "21:19:00.873000", + "stop_id": "bUCR_1_02", + "stop_sequence": 1, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 0.736, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1111, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:22:28.364000", + "departure_time": "21:22:28.364000", + "stop_id": "bUCR_1_03", + "stop_sequence": 3, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.37, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1112, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:23:12.873000", + "departure_time": "21:23:12.873000", + "stop_id": "bUCR_1_04", + "stop_sequence": 4, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.506, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1113, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:24:11.127000", + "departure_time": "21:24:11.127000", + "stop_id": "bUCR_1_05", + "stop_sequence": 5, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 1.684, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1114, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:26:27.600000", + "departure_time": "21:26:27.600000", + "stop_id": "bUCR_1_06", + "stop_sequence": 6, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.101, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1115, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:28:11.018000", + "departure_time": "21:28:11.018000", + "stop_id": "bUCR_1_07", + "stop_sequence": 7, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.417, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1116, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:29:22.364000", + "departure_time": "21:29:22.364000", + "stop_id": "bUCR_1_08", + "stop_sequence": 8, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 2.635, + "timepoint": 0 + } + }, + { + "model": "gtfs.stoptime", + "pk": 1117, + "fields": { + "feed": "1", + "trip_id": "hacia_educacion_entresemana_21:15", + "arrival_time": "21:32:17.782000", + "departure_time": "21:32:17.782000", + "stop_id": "bUCR_0_01", + "stop_sequence": 9, + "stop_headsign": "", + "pickup_type": 0, + "drop_off_type": 0, + "shape_dist_traveled": 3.171, + "timepoint": 0 + } + }, + { + "model": "gtfs.calendar", + "pk": 1, + "fields": { + "feed": "1", + "service_id": "entresemana", + "monday": 1, + "tuesday": 1, + "wednesday": 1, + "thursday": 1, + "friday": 1, + "saturday": 0, + "sunday": 0, + "start_date": "2024-01-01", + "end_date": "2024-12-31" + } + }, + { + "model": "gtfs.farerule", + "pk": 1, + "fields": { + "feed": "1", + "fare_id": "no_tarifa", + "route_id": "bUCR_L1", + "origin_id": "bUCR_0", + "destination_id": "bUCR_0", + "contains_id": "" + } + }, + { + "model": "gtfs.farerule", + "pk": 2, + "fields": { + "feed": "1", + "fare_id": "no_tarifa", + "route_id": "bUCR_L2", + "origin_id": "bUCR_1", + "destination_id": "bUCR_1", + "contains_id": "" + } + }, + { + "model": "gtfs.fareattribute", + "pk": 1, + "fields": { + "feed": "1", + "fare_id": "no_tarifa", + "price": 0, + "currency_type": "CRC", + "payment_method": 0, + "transfers": 0, + "transfer_duration": null + } + }, + { + "model": "gtfs.shape", + "pk": 1, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93554944029271, + "shape_pt_lon": -84.0491138975951, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "gtfs.shape", + "pk": 2, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9355589010814, + "shape_pt_lon": -84.0491582627979, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.005 + } + }, + { + "model": "gtfs.shape", + "pk": 3, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93557354275506, + "shape_pt_lon": -84.0492241246225, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.012 + } + }, + { + "model": "gtfs.shape", + "pk": 4, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9356000651633, + "shape_pt_lon": -84.049324861376, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.024 + } + }, + { + "model": "gtfs.shape", + "pk": 5, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93563773463719, + "shape_pt_lon": -84.049416778843, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.035 + } + }, + { + "model": "gtfs.shape", + "pk": 6, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93568399531643, + "shape_pt_lon": -84.0495368755472, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "gtfs.shape", + "pk": 7, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93570316048327, + "shape_pt_lon": -84.0495945755631, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.056 + } + }, + { + "model": "gtfs.shape", + "pk": 8, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93571109089738, + "shape_pt_lon": -84.0496871639603, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.066 + } + }, + { + "model": "gtfs.shape", + "pk": 9, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93571292483817, + "shape_pt_lon": -84.0498464474787, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.083 + } + }, + { + "model": "gtfs.shape", + "pk": 10, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93570393244304, + "shape_pt_lon": -84.0500877222699, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.11 + } + }, + { + "model": "gtfs.shape", + "pk": 11, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93566539329337, + "shape_pt_lon": -84.050351168656, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.139 + } + }, + { + "model": "gtfs.shape", + "pk": 12, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93561786205413, + "shape_pt_lon": -84.0505937476355, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.166 + } + }, + { + "model": "gtfs.shape", + "pk": 13, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93556519227529, + "shape_pt_lon": -84.050878060609, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.198 + } + }, + { + "model": "gtfs.shape", + "pk": 14, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93552922267821, + "shape_pt_lon": -84.051108901895, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.223 + } + }, + { + "model": "gtfs.shape", + "pk": 15, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93548169125642, + "shape_pt_lon": -84.0513932152566, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.255 + } + }, + { + "model": "gtfs.shape", + "pk": 16, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93545342942273, + "shape_pt_lon": -84.0516410109878, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.282 + } + }, + { + "model": "gtfs.shape", + "pk": 17, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93544741074256, + "shape_pt_lon": -84.0516943904767, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.288 + } + }, + { + "model": "gtfs.shape", + "pk": 18, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93544700627605, + "shape_pt_lon": -84.051754475488, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.295 + } + }, + { + "model": "gtfs.shape", + "pk": 19, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93546627570862, + "shape_pt_lon": -84.0519579288248, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.317 + } + }, + { + "model": "gtfs.shape", + "pk": 20, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93548939902537, + "shape_pt_lon": -84.052131385837, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.336 + } + }, + { + "model": "gtfs.shape", + "pk": 21, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93550517435119, + "shape_pt_lon": -84.0522239834817, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.347 + } + }, + { + "model": "gtfs.shape", + "pk": 22, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93554618004823, + "shape_pt_lon": -84.0523340057342, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.36 + } + }, + { + "model": "gtfs.shape", + "pk": 23, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93559987797587, + "shape_pt_lon": -84.0523914948391, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.368 + } + }, + { + "model": "gtfs.shape", + "pk": 24, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93565552854654, + "shape_pt_lon": -84.0524281689233, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.376 + } + }, + { + "model": "gtfs.shape", + "pk": 25, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93572094236273, + "shape_pt_lon": -84.0524410544122, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.383 + } + }, + { + "model": "gtfs.shape", + "pk": 26, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93583614886311, + "shape_pt_lon": -84.0524182569563, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.396 + } + }, + { + "model": "gtfs.shape", + "pk": 27, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93603336648931, + "shape_pt_lon": -84.0523528383197, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.419 + } + }, + { + "model": "gtfs.shape", + "pk": 28, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93625691629266, + "shape_pt_lon": -84.0522832947174, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.445 + } + }, + { + "model": "gtfs.shape", + "pk": 29, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93639307154715, + "shape_pt_lon": -84.0522431941422, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.46 + } + }, + { + "model": "gtfs.shape", + "pk": 30, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93653561474882, + "shape_pt_lon": -84.0522372469934, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.476 + } + }, + { + "model": "gtfs.shape", + "pk": 31, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93660005206628, + "shape_pt_lon": -84.0522600443969, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.484 + } + }, + { + "model": "gtfs.shape", + "pk": 32, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93661957852377, + "shape_pt_lon": -84.0523423132888, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.493 + } + }, + { + "model": "gtfs.shape", + "pk": 33, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93659126516027, + "shape_pt_lon": -84.0524275557544, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.503 + } + }, + { + "model": "gtfs.shape", + "pk": 34, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93653854371827, + "shape_pt_lon": -84.0524503531584, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.509 + } + }, + { + "model": "gtfs.shape", + "pk": 35, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93645360359939, + "shape_pt_lon": -84.0524483707755, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.519 + } + }, + { + "model": "gtfs.shape", + "pk": 36, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93636085286962, + "shape_pt_lon": -84.052439450052, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.529 + } + }, + { + "model": "gtfs.shape", + "pk": 37, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93633386047036, + "shape_pt_lon": -84.0524268046992, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.532 + } + }, + { + "model": "gtfs.shape", + "pk": 38, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93630422609543, + "shape_pt_lon": -84.0524265645631, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.535 + } + }, + { + "model": "gtfs.shape", + "pk": 39, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93618120917912, + "shape_pt_lon": -84.0524473794854, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.549 + } + }, + { + "model": "gtfs.shape", + "pk": 40, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93600742368285, + "shape_pt_lon": -84.052484053706, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.569 + } + }, + { + "model": "gtfs.shape", + "pk": 41, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93581118236608, + "shape_pt_lon": -84.0525276661302, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.591 + } + }, + { + "model": "gtfs.shape", + "pk": 42, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93571876163712, + "shape_pt_lon": -84.0525355663096, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.601 + } + }, + { + "model": "gtfs.shape", + "pk": 43, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93563153840537, + "shape_pt_lon": -84.0525177541372, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.611 + } + }, + { + "model": "gtfs.shape", + "pk": 44, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93553310902874, + "shape_pt_lon": -84.0524334735888, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.626 + } + }, + { + "model": "gtfs.shape", + "pk": 45, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93545970504671, + "shape_pt_lon": -84.0523512340121, + "shape_pt_sequence": 44, + "shape_dist_traveled": 0.638 + } + }, + { + "model": "gtfs.shape", + "pk": 46, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93542065199216, + "shape_pt_lon": -84.0522451765253, + "shape_pt_sequence": 45, + "shape_dist_traveled": 0.65 + } + }, + { + "model": "gtfs.shape", + "pk": 47, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93541674668641, + "shape_pt_lon": -84.0521014537632, + "shape_pt_sequence": 46, + "shape_dist_traveled": 0.666 + } + }, + { + "model": "gtfs.shape", + "pk": 48, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93537769362758, + "shape_pt_lon": -84.0518556382803, + "shape_pt_sequence": 47, + "shape_dist_traveled": 0.693 + } + }, + { + "model": "gtfs.shape", + "pk": 49, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93533766423581, + "shape_pt_lon": -84.0515960083744, + "shape_pt_sequence": 48, + "shape_dist_traveled": 0.722 + } + }, + { + "model": "gtfs.shape", + "pk": 50, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93531364398533, + "shape_pt_lon": -84.0515277691646, + "shape_pt_sequence": 49, + "shape_dist_traveled": 0.73 + } + }, + { + "model": "gtfs.shape", + "pk": 51, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93528103728449, + "shape_pt_lon": -84.0514612063353, + "shape_pt_sequence": 50, + "shape_dist_traveled": 0.738 + } + }, + { + "model": "gtfs.shape", + "pk": 52, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93537964636139, + "shape_pt_lon": -84.0510449054667, + "shape_pt_sequence": 51, + "shape_dist_traveled": 0.785 + } + }, + { + "model": "gtfs.shape", + "pk": 53, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93549228868242, + "shape_pt_lon": -84.0506385823758, + "shape_pt_sequence": 52, + "shape_dist_traveled": 0.831 + } + }, + { + "model": "gtfs.shape", + "pk": 54, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93560853450969, + "shape_pt_lon": -84.0501428263958, + "shape_pt_sequence": 53, + "shape_dist_traveled": 0.887 + } + }, + { + "model": "gtfs.shape", + "pk": 55, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93564523227799, + "shape_pt_lon": -84.0499153784661, + "shape_pt_sequence": 54, + "shape_dist_traveled": 0.912 + } + }, + { + "model": "gtfs.shape", + "pk": 56, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9355593156005, + "shape_pt_lon": -84.0495436816674, + "shape_pt_sequence": 55, + "shape_dist_traveled": 0.954 + } + }, + { + "model": "gtfs.shape", + "pk": 57, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93549425099087, + "shape_pt_lon": -84.049203385401, + "shape_pt_sequence": 56, + "shape_dist_traveled": 0.992 + } + }, + { + "model": "gtfs.shape", + "pk": 58, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93539252590615, + "shape_pt_lon": -84.0487850070695, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.039 + } + }, + { + "model": "gtfs.shape", + "pk": 59, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93537592835444, + "shape_pt_lon": -84.0486462402645, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.055 + } + }, + { + "model": "gtfs.shape", + "pk": 60, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93528024833921, + "shape_pt_lon": -84.0486373195414, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.065 + } + }, + { + "model": "gtfs.shape", + "pk": 61, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93529755089066, + "shape_pt_lon": -84.0483824809879, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.093 + } + }, + { + "model": "gtfs.shape", + "pk": 62, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93524885628052, + "shape_pt_lon": -84.048123669054, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.122 + } + }, + { + "model": "gtfs.shape", + "pk": 63, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9351256875275, + "shape_pt_lon": -84.0477514451489, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.165 + } + }, + { + "model": "gtfs.shape", + "pk": 64, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93500538311991, + "shape_pt_lon": -84.0473850372423, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.208 + } + }, + { + "model": "gtfs.shape", + "pk": 65, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93492412702167, + "shape_pt_lon": -84.0470954278149, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.241 + } + }, + { + "model": "gtfs.shape", + "pk": 66, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93480668693231, + "shape_pt_lon": -84.046441127981, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.314 + } + }, + { + "model": "gtfs.shape", + "pk": 67, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93468020166955, + "shape_pt_lon": -84.0458485099908, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.38 + } + }, + { + "model": "gtfs.shape", + "pk": 68, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93461570602311, + "shape_pt_lon": -84.0456145784198, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.407 + } + }, + { + "model": "gtfs.shape", + "pk": 69, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93495613335646, + "shape_pt_lon": -84.0456080574792, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.444 + } + }, + { + "model": "gtfs.shape", + "pk": 70, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93502533870439, + "shape_pt_lon": -84.0455873014759, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.452 + } + }, + { + "model": "gtfs.shape", + "pk": 71, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93533638426393, + "shape_pt_lon": -84.045580669786, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.487 + } + }, + { + "model": "gtfs.shape", + "pk": 72, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93558174876489, + "shape_pt_lon": -84.045528502083, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.514 + } + }, + { + "model": "gtfs.shape", + "pk": 73, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9356639649666, + "shape_pt_lon": -84.0454554675517, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.527 + } + }, + { + "model": "gtfs.shape", + "pk": 74, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93591239555134, + "shape_pt_lon": -84.0454118867064, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.554 + } + }, + { + "model": "gtfs.shape", + "pk": 75, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93618345188633, + "shape_pt_lon": -84.0453571107868, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.585 + } + }, + { + "model": "gtfs.shape", + "pk": 76, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93630292207917, + "shape_pt_lon": -84.0453649359146, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.598 + } + }, + { + "model": "gtfs.shape", + "pk": 77, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93644423085287, + "shape_pt_lon": -84.0454366662581, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.616 + } + }, + { + "model": "gtfs.shape", + "pk": 78, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93668331840604, + "shape_pt_lon": -84.045567569655, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.646 + } + }, + { + "model": "gtfs.shape", + "pk": 79, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93677195745002, + "shape_pt_lon": -84.045592349228, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.656 + } + }, + { + "model": "gtfs.shape", + "pk": 80, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9368528887295, + "shape_pt_lon": -84.0455871324757, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.665 + } + }, + { + "model": "gtfs.shape", + "pk": 81, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93694152772752, + "shape_pt_lon": -84.0455467026459, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.676 + } + }, + { + "model": "gtfs.shape", + "pk": 82, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93708540528038, + "shape_pt_lon": -84.0454423673758, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.695 + } + }, + { + "model": "gtfs.shape", + "pk": 83, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9372459343465, + "shape_pt_lon": -84.0452787163273, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.721 + } + }, + { + "model": "gtfs.shape", + "pk": 84, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93733842710149, + "shape_pt_lon": -84.0451378640166, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.739 + } + }, + { + "model": "gtfs.shape", + "pk": 85, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93756026309952, + "shape_pt_lon": -84.044752821983, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.788 + } + }, + { + "model": "gtfs.shape", + "pk": 86, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93777652816203, + "shape_pt_lon": -84.0443585013794, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.837 + } + }, + { + "model": "gtfs.shape", + "pk": 87, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9381041049962, + "shape_pt_lon": -84.0438016139119, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.908 + } + }, + { + "model": "gtfs.shape", + "pk": 88, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93796476738381, + "shape_pt_lon": -84.0436166501913, + "shape_pt_sequence": 87, + "shape_dist_traveled": 1.934 + } + }, + { + "model": "gtfs.shape", + "pk": 89, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93791473560688, + "shape_pt_lon": -84.0434457982085, + "shape_pt_sequence": 88, + "shape_dist_traveled": 1.953 + } + }, + { + "model": "gtfs.shape", + "pk": 90, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93789047771889, + "shape_pt_lon": -84.0432203034589, + "shape_pt_sequence": 89, + "shape_dist_traveled": 1.978 + } + }, + { + "model": "gtfs.shape", + "pk": 91, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93791970638376, + "shape_pt_lon": -84.0429894627193, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.004 + } + }, + { + "model": "gtfs.shape", + "pk": 92, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93798008366965, + "shape_pt_lon": -84.0426008139046, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.047 + } + }, + { + "model": "gtfs.shape", + "pk": 93, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93800449142722, + "shape_pt_lon": -84.0424795244151, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.06 + } + }, + { + "model": "gtfs.shape", + "pk": 94, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9381380917555, + "shape_pt_lon": -84.0421782569734, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.097 + } + }, + { + "model": "gtfs.shape", + "pk": 95, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93816473253672, + "shape_pt_lon": -84.0419964534982, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.117 + } + }, + { + "model": "gtfs.shape", + "pk": 96, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93815830944601, + "shape_pt_lon": -84.0418503844357, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.133 + } + }, + { + "model": "gtfs.shape", + "pk": 97, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93812876322556, + "shape_pt_lon": -84.0417251823817, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.147 + } + }, + { + "model": "gtfs.shape", + "pk": 98, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93807176432108, + "shape_pt_lon": -84.0416449024973, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.158 + } + }, + { + "model": "gtfs.shape", + "pk": 99, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9380170014129, + "shape_pt_lon": -84.0416364975937, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.164 + } + }, + { + "model": "gtfs.shape", + "pk": 100, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9379218878614, + "shape_pt_lon": -84.0416378013257, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.174 + } + }, + { + "model": "gtfs.shape", + "pk": 101, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93790138516287, + "shape_pt_lon": -84.0411362584451, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.229 + } + }, + { + "model": "gtfs.shape", + "pk": 102, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93789650346394, + "shape_pt_lon": -84.041068473332, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.237 + } + }, + { + "model": "gtfs.shape", + "pk": 103, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93846399292934, + "shape_pt_lon": -84.0409289658467, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.301 + } + }, + { + "model": "gtfs.shape", + "pk": 104, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93868999787477, + "shape_pt_lon": -84.0409645503437, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.327 + } + }, + { + "model": "gtfs.shape", + "pk": 105, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93885220465146, + "shape_pt_lon": -84.0411343350368, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.353 + } + }, + { + "model": "gtfs.shape", + "pk": 106, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93915775668989, + "shape_pt_lon": -84.0416551779252, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.419 + } + }, + { + "model": "gtfs.shape", + "pk": 107, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93928866239001, + "shape_pt_lon": -84.0417942257713, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.44 + } + }, + { + "model": "gtfs.shape", + "pk": 108, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9394332650851, + "shape_pt_lon": -84.0418835860126, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.459 + } + }, + { + "model": "gtfs.shape", + "pk": 109, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93950294569722, + "shape_pt_lon": -84.0419072239736, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.467 + } + }, + { + "model": "gtfs.shape", + "pk": 110, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93950393195614, + "shape_pt_lon": -84.0422269282472, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.502 + } + }, + { + "model": "gtfs.shape", + "pk": 111, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93949212322203, + "shape_pt_lon": -84.0425117128132, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.533 + } + }, + { + "model": "gtfs.shape", + "pk": 112, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93945684385667, + "shape_pt_lon": -84.0429181490899, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.578 + } + }, + { + "model": "gtfs.shape", + "pk": 113, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93942503205056, + "shape_pt_lon": -84.0433331349077, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.624 + } + }, + { + "model": "gtfs.shape", + "pk": 114, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93972770605043, + "shape_pt_lon": -84.0432631191506, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.658 + } + }, + { + "model": "gtfs.shape", + "pk": 115, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93979024582779, + "shape_pt_lon": -84.0432957235711, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.666 + } + }, + { + "model": "gtfs.shape", + "pk": 116, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.93981898031695, + "shape_pt_lon": -84.0433729445674, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.675 + } + }, + { + "model": "gtfs.shape", + "pk": 117, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94007108411656, + "shape_pt_lon": -84.0443132968873, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.782 + } + }, + { + "model": "gtfs.shape", + "pk": 118, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94016605495639, + "shape_pt_lon": -84.0446693302114, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.822 + } + }, + { + "model": "gtfs.shape", + "pk": 119, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94027244564152, + "shape_pt_lon": -84.0448273689979, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.843 + } + }, + { + "model": "gtfs.shape", + "pk": 120, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94046211098755, + "shape_pt_lon": -84.0455400945559, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.924 + } + }, + { + "model": "gtfs.shape", + "pk": 121, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94049056601295, + "shape_pt_lon": -84.0456302713637, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.934 + } + }, + { + "model": "gtfs.shape", + "pk": 122, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94063822457009, + "shape_pt_lon": -84.0455978789472, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.951 + } + }, + { + "model": "gtfs.shape", + "pk": 123, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94079717180704, + "shape_pt_lon": -84.0450688663703, + "shape_pt_sequence": 122, + "shape_dist_traveled": 3.012 + } + }, + { + "model": "gtfs.shape", + "pk": 124, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94095438717349, + "shape_pt_lon": -84.04474671421, + "shape_pt_sequence": 123, + "shape_dist_traveled": 3.051 + } + }, + { + "model": "gtfs.shape", + "pk": 125, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94105262250509, + "shape_pt_lon": -84.0446527254796, + "shape_pt_sequence": 124, + "shape_dist_traveled": 3.066 + } + }, + { + "model": "gtfs.shape", + "pk": 126, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9414150973303, + "shape_pt_lon": -84.0446772759114, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.106 + } + }, + { + "model": "gtfs.shape", + "pk": 127, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94222783326419, + "shape_pt_lon": -84.0447316948875, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.196 + } + }, + { + "model": "gtfs.shape", + "pk": 128, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94282430588245, + "shape_pt_lon": -84.0447692666912, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.262 + } + }, + { + "model": "gtfs.shape", + "pk": 129, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9430072194504, + "shape_pt_lon": -84.0447361152365, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.283 + } + }, + { + "model": "gtfs.shape", + "pk": 130, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94325327852743, + "shape_pt_lon": -84.0446536543918, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.311 + } + }, + { + "model": "gtfs.shape", + "pk": 131, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94367377439675, + "shape_pt_lon": -84.0444658512058, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.362 + } + }, + { + "model": "gtfs.shape", + "pk": 132, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94380472710699, + "shape_pt_lon": -84.0447574980966, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.397 + } + }, + { + "model": "gtfs.shape", + "pk": 133, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94388103477618, + "shape_pt_lon": -84.044883947833, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.414 + } + }, + { + "model": "gtfs.shape", + "pk": 134, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94396870046222, + "shape_pt_lon": -84.044952212081, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.426 + } + }, + { + "model": "gtfs.shape", + "pk": 135, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94440018674929, + "shape_pt_lon": -84.0449991890221, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.474 + } + }, + { + "model": "gtfs.shape", + "pk": 136, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94457575401998, + "shape_pt_lon": -84.045011078064, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.493 + } + }, + { + "model": "gtfs.shape", + "pk": 137, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94495341180596, + "shape_pt_lon": -84.045007224609, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.535 + } + }, + { + "model": "gtfs.shape", + "pk": 138, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94503790634203, + "shape_pt_lon": -84.0450804402532, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.547 + } + }, + { + "model": "gtfs.shape", + "pk": 139, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94507262278836, + "shape_pt_lon": -84.0454078875236, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.584 + } + }, + { + "model": "gtfs.shape", + "pk": 140, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94509663743075, + "shape_pt_lon": -84.0455018337476, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.594 + } + }, + { + "model": "gtfs.shape", + "pk": 141, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94516495042239, + "shape_pt_lon": -84.0455370798079, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.603 + } + }, + { + "model": "gtfs.shape", + "pk": 142, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94535421093323, + "shape_pt_lon": -84.0455279840503, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.624 + } + }, + { + "model": "gtfs.shape", + "pk": 143, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94569609354827, + "shape_pt_lon": -84.0455006967812, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.662 + } + }, + { + "model": "gtfs.shape", + "pk": 144, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94576019859063, + "shape_pt_lon": -84.0454636202844, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.67 + } + }, + { + "model": "gtfs.shape", + "pk": 145, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9458090133638, + "shape_pt_lon": -84.0453783778183, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.681 + } + }, + { + "model": "gtfs.shape", + "pk": 146, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94587051996754, + "shape_pt_lon": -84.0452505141197, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.696 + } + }, + { + "model": "gtfs.shape", + "pk": 147, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94594579827001, + "shape_pt_lon": -84.0451768005758, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.708 + } + }, + { + "model": "gtfs.shape", + "pk": 148, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9462925242644, + "shape_pt_lon": -84.0451498689492, + "shape_pt_sequence": 147, + "shape_dist_traveled": 3.746 + } + }, + { + "model": "gtfs.shape", + "pk": 149, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.9463897709987, + "shape_pt_lon": -84.0451620803092, + "shape_pt_sequence": 148, + "shape_dist_traveled": 3.757 + } + }, + { + "model": "gtfs.shape", + "pk": 150, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94645002673405, + "shape_pt_lon": -84.0452016714679, + "shape_pt_sequence": 149, + "shape_dist_traveled": 3.765 + } + }, + { + "model": "gtfs.shape", + "pk": 151, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "shape_pt_lat": 9.94648404073633, + "shape_pt_lon": -84.0452387476835, + "shape_pt_sequence": 150, + "shape_dist_traveled": 3.771 + } + }, + { + "model": "gtfs.shape", + "pk": 152, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93554615993122, + "shape_pt_lon": -84.0491114962244, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "gtfs.shape", + "pk": 153, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93557253860416, + "shape_pt_lon": -84.0492324408382, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.014 + } + }, + { + "model": "gtfs.shape", + "pk": 154, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93559719650295, + "shape_pt_lon": -84.0493243902202, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.024 + } + }, + { + "model": "gtfs.shape", + "pk": 155, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93566832503712, + "shape_pt_lon": -84.0495039565472, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.045 + } + }, + { + "model": "gtfs.shape", + "pk": 156, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93570246673155, + "shape_pt_lon": -84.0495983130441, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.056 + } + }, + { + "model": "gtfs.shape", + "pk": 157, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93570957958473, + "shape_pt_lon": -84.0496907438365, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.066 + } + }, + { + "model": "gtfs.shape", + "pk": 158, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93571147624034, + "shape_pt_lon": -84.0498491281346, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.084 + } + }, + { + "model": "gtfs.shape", + "pk": 159, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93570246663722, + "shape_pt_lon": -84.0500893518124, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.11 + } + }, + { + "model": "gtfs.shape", + "pk": 160, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93566785089355, + "shape_pt_lon": -84.0503237982121, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.136 + } + }, + { + "model": "gtfs.shape", + "pk": 161, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93562801871054, + "shape_pt_lon": -84.0505362327233, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.16 + } + }, + { + "model": "gtfs.shape", + "pk": 162, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93558581568109, + "shape_pt_lon": -84.0507591258626, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.185 + } + }, + { + "model": "gtfs.shape", + "pk": 163, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93553934502577, + "shape_pt_lon": -84.0510354553896, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.215 + } + }, + { + "model": "gtfs.shape", + "pk": 164, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93548718391971, + "shape_pt_lon": -84.0513535074206, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.251 + } + }, + { + "model": "gtfs.shape", + "pk": 165, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93544590778002, + "shape_pt_lon": -84.0516944413929, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.288 + } + }, + { + "model": "gtfs.shape", + "pk": 166, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93544406437546, + "shape_pt_lon": -84.0517683691601, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.297 + } + }, + { + "model": "gtfs.shape", + "pk": 167, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93549752617786, + "shape_pt_lon": -84.0521913460308, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.343 + } + }, + { + "model": "gtfs.shape", + "pk": 168, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93552149197739, + "shape_pt_lon": -84.0522746314152, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.353 + } + }, + { + "model": "gtfs.shape", + "pk": 169, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93554545760814, + "shape_pt_lon": -84.0523420082619, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.361 + } + }, + { + "model": "gtfs.shape", + "pk": 170, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93560168465873, + "shape_pt_lon": -84.0523981556341, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.369 + } + }, + { + "model": "gtfs.shape", + "pk": 171, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93565791169966, + "shape_pt_lon": -84.0524318440576, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.377 + } + }, + { + "model": "gtfs.shape", + "pk": 172, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.935720591012, + "shape_pt_lon": -84.0524430735317, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.384 + } + }, + { + "model": "gtfs.shape", + "pk": 173, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93583857529975, + "shape_pt_lon": -84.0524187427515, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.397 + } + }, + { + "model": "gtfs.shape", + "pk": 174, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93605505885652, + "shape_pt_lon": -84.0523466867771, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.422 + } + }, + { + "model": "gtfs.shape", + "pk": 175, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93627443620344, + "shape_pt_lon": -84.0522802455722, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.448 + } + }, + { + "model": "gtfs.shape", + "pk": 176, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93639436894143, + "shape_pt_lon": -84.052243749702, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.461 + } + }, + { + "model": "gtfs.shape", + "pk": 177, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93653263180367, + "shape_pt_lon": -84.0522390707544, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.477 + } + }, + { + "model": "gtfs.shape", + "pk": 178, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93679802054417, + "shape_pt_lon": -84.0523349506756, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.508 + } + }, + { + "model": "gtfs.shape", + "pk": 179, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93706910208629, + "shape_pt_lon": -84.0524313369778, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.54 + } + }, + { + "model": "gtfs.shape", + "pk": 180, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93735023603007, + "shape_pt_lon": -84.0525380169441, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.573 + } + }, + { + "model": "gtfs.shape", + "pk": 181, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9375714563375, + "shape_pt_lon": -84.0526437612861, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.6 + } + }, + { + "model": "gtfs.shape", + "pk": 182, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93774105816322, + "shape_pt_lon": -84.0527027160271, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.62 + } + }, + { + "model": "gtfs.shape", + "pk": 183, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93778978041929, + "shape_pt_lon": -84.0527151488461, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.625 + } + }, + { + "model": "gtfs.shape", + "pk": 184, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93794647765702, + "shape_pt_lon": -84.0527273141104, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.643 + } + }, + { + "model": "gtfs.shape", + "pk": 185, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93809150988507, + "shape_pt_lon": -84.0527076622996, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.659 + } + }, + { + "model": "gtfs.shape", + "pk": 186, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93815511047925, + "shape_pt_lon": -84.052635606505, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.67 + } + }, + { + "model": "gtfs.shape", + "pk": 187, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93840121696546, + "shape_pt_lon": -84.0521246655647, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.732 + } + }, + { + "model": "gtfs.shape", + "pk": 188, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93857142751338, + "shape_pt_lon": -84.051894479649, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.763 + } + }, + { + "model": "gtfs.shape", + "pk": 189, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93879176765612, + "shape_pt_lon": -84.0516156036497, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.802 + } + }, + { + "model": "gtfs.shape", + "pk": 190, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93890106345436, + "shape_pt_lon": -84.0514555284908, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.824 + } + }, + { + "model": "gtfs.shape", + "pk": 191, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93897507515302, + "shape_pt_lon": -84.0513020294891, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.842 + } + }, + { + "model": "gtfs.shape", + "pk": 192, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9390141956147, + "shape_pt_lon": -84.0511345760324, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.861 + } + }, + { + "model": "gtfs.shape", + "pk": 193, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93905117558812, + "shape_pt_lon": -84.0509224405605, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.885 + } + }, + { + "model": "gtfs.shape", + "pk": 194, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93906597792292, + "shape_pt_lon": -84.0506014881021, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.92 + } + }, + { + "model": "gtfs.shape", + "pk": 195, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93909856537408, + "shape_pt_lon": -84.0501243834524, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.973 + } + }, + { + "model": "gtfs.shape", + "pk": 196, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93910318560055, + "shape_pt_lon": -84.0497656390733, + "shape_pt_sequence": 44, + "shape_dist_traveled": 1.012 + } + }, + { + "model": "gtfs.shape", + "pk": 197, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93906512245888, + "shape_pt_lon": -84.049652930016, + "shape_pt_sequence": 45, + "shape_dist_traveled": 1.025 + } + }, + { + "model": "gtfs.shape", + "pk": 198, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9389773657529, + "shape_pt_lon": -84.0495133854688, + "shape_pt_sequence": 46, + "shape_dist_traveled": 1.043 + } + }, + { + "model": "gtfs.shape", + "pk": 199, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93881453893313, + "shape_pt_lon": -84.0493115816303, + "shape_pt_sequence": 47, + "shape_dist_traveled": 1.072 + } + }, + { + "model": "gtfs.shape", + "pk": 200, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93860413409909, + "shape_pt_lon": -84.0490281988577, + "shape_pt_sequence": 48, + "shape_dist_traveled": 1.11 + } + }, + { + "model": "gtfs.shape", + "pk": 201, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93847607358095, + "shape_pt_lon": -84.0488647834885, + "shape_pt_sequence": 49, + "shape_dist_traveled": 1.133 + } + }, + { + "model": "gtfs.shape", + "pk": 202, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93830796101282, + "shape_pt_lon": -84.0486425856324, + "shape_pt_sequence": 50, + "shape_dist_traveled": 1.164 + } + }, + { + "model": "gtfs.shape", + "pk": 203, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93812775111203, + "shape_pt_lon": -84.0484368995492, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.194 + } + }, + { + "model": "gtfs.shape", + "pk": 204, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93798100124938, + "shape_pt_lon": -84.0482768335369, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.218 + } + }, + { + "model": "gtfs.shape", + "pk": 205, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93768022319365, + "shape_pt_lon": -84.0479566982914, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.266 + } + }, + { + "model": "gtfs.shape", + "pk": 206, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93763286635998, + "shape_pt_lon": -84.0479111252314, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.274 + } + }, + { + "model": "gtfs.shape", + "pk": 207, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93758319780721, + "shape_pt_lon": -84.0478722576937, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.28 + } + }, + { + "model": "gtfs.shape", + "pk": 208, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93753870216281, + "shape_pt_lon": -84.0478404135935, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.287 + } + }, + { + "model": "gtfs.shape", + "pk": 209, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9374942065184, + "shape_pt_lon": -84.0478139339113, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.292 + } + }, + { + "model": "gtfs.shape", + "pk": 210, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93745024180206, + "shape_pt_lon": -84.0477923420699, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.298 + } + }, + { + "model": "gtfs.shape", + "pk": 211, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93735938216936, + "shape_pt_lon": -84.0477606919451, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.308 + } + }, + { + "model": "gtfs.shape", + "pk": 212, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93724916693389, + "shape_pt_lon": -84.0477606931305, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.32 + } + }, + { + "model": "gtfs.shape", + "pk": 213, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93715177760806, + "shape_pt_lon": -84.0477784341865, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.331 + } + }, + { + "model": "gtfs.shape", + "pk": 214, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93705710158646, + "shape_pt_lon": -84.0477987581936, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.342 + } + }, + { + "model": "gtfs.shape", + "pk": 215, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93672866697375, + "shape_pt_lon": -84.0479001602699, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.38 + } + }, + { + "model": "gtfs.shape", + "pk": 216, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93643873625598, + "shape_pt_lon": -84.0479940310818, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.414 + } + }, + { + "model": "gtfs.shape", + "pk": 217, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93605459371357, + "shape_pt_lon": -84.0481209106209, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.458 + } + }, + { + "model": "gtfs.shape", + "pk": 218, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93594785009141, + "shape_pt_lon": -84.0481497577059, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.471 + } + }, + { + "model": "gtfs.shape", + "pk": 219, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93584672067646, + "shape_pt_lon": -84.0481926863882, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.483 + } + }, + { + "model": "gtfs.shape", + "pk": 220, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93562414968525, + "shape_pt_lon": -84.0482902977589, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.51 + } + }, + { + "model": "gtfs.shape", + "pk": 221, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93555563302149, + "shape_pt_lon": -84.0483541402688, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.52 + } + }, + { + "model": "gtfs.shape", + "pk": 222, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93552377293763, + "shape_pt_lon": -84.048395536302, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.526 + } + }, + { + "model": "gtfs.shape", + "pk": 223, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93549323384328, + "shape_pt_lon": -84.0484359265072, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.531 + } + }, + { + "model": "gtfs.shape", + "pk": 224, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93545924101029, + "shape_pt_lon": -84.0485562630898, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.545 + } + }, + { + "model": "gtfs.shape", + "pk": 225, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93545410965148, + "shape_pt_lon": -84.0486084574091, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.551 + } + }, + { + "model": "gtfs.shape", + "pk": 226, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93545261101962, + "shape_pt_lon": -84.0486583047952, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.556 + } + }, + { + "model": "gtfs.shape", + "pk": 227, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93527714539185, + "shape_pt_lon": -84.0486381383254, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.576 + } + }, + { + "model": "gtfs.shape", + "pk": 228, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93529369875646, + "shape_pt_lon": -84.0483849370953, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.604 + } + }, + { + "model": "gtfs.shape", + "pk": 229, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93524845287248, + "shape_pt_lon": -84.0481250138729, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.633 + } + }, + { + "model": "gtfs.shape", + "pk": 230, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93510490695821, + "shape_pt_lon": -84.0476876510322, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.683 + } + }, + { + "model": "gtfs.shape", + "pk": 231, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93492309622952, + "shape_pt_lon": -84.0471049676225, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.75 + } + }, + { + "model": "gtfs.shape", + "pk": 232, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93478795156821, + "shape_pt_lon": -84.0463710454434, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.832 + } + }, + { + "model": "gtfs.shape", + "pk": 233, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93468712924438, + "shape_pt_lon": -84.0458810362687, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.887 + } + }, + { + "model": "gtfs.shape", + "pk": 234, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93461716476174, + "shape_pt_lon": -84.0456150110652, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.917 + } + }, + { + "model": "gtfs.shape", + "pk": 235, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93466453460568, + "shape_pt_lon": -84.045615726073, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.922 + } + }, + { + "model": "gtfs.shape", + "pk": 236, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93495411611772, + "shape_pt_lon": -84.0456098658075, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.954 + } + }, + { + "model": "gtfs.shape", + "pk": 237, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93501867239507, + "shape_pt_lon": -84.0455893287031, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.962 + } + }, + { + "model": "gtfs.shape", + "pk": 238, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93533255656777, + "shape_pt_lon": -84.0455828491321, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.996 + } + }, + { + "model": "gtfs.shape", + "pk": 239, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93558174215077, + "shape_pt_lon": -84.0455310895244, + "shape_pt_sequence": 87, + "shape_dist_traveled": 2.025 + } + }, + { + "model": "gtfs.shape", + "pk": 240, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93565354440517, + "shape_pt_lon": -84.0454587191306, + "shape_pt_sequence": 88, + "shape_dist_traveled": 2.036 + } + }, + { + "model": "gtfs.shape", + "pk": 241, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93601427775509, + "shape_pt_lon": -84.0453935565556, + "shape_pt_sequence": 89, + "shape_dist_traveled": 2.076 + } + }, + { + "model": "gtfs.shape", + "pk": 242, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93618250695711, + "shape_pt_lon": -84.0453574183472, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.095 + } + }, + { + "model": "gtfs.shape", + "pk": 243, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93624056084127, + "shape_pt_lon": -84.0453568135217, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.102 + } + }, + { + "model": "gtfs.shape", + "pk": 244, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93629795423082, + "shape_pt_lon": -84.0453642553238, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.108 + } + }, + { + "model": "gtfs.shape", + "pk": 245, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93659318251401, + "shape_pt_lon": -84.0455215059456, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.145 + } + }, + { + "model": "gtfs.shape", + "pk": 246, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93667976807258, + "shape_pt_lon": -84.0455703414396, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.156 + } + }, + { + "model": "gtfs.shape", + "pk": 247, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9367692395777, + "shape_pt_lon": -84.0455957359235, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.166 + } + }, + { + "model": "gtfs.shape", + "pk": 248, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93685293870503, + "shape_pt_lon": -84.0455879222361, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.176 + } + }, + { + "model": "gtfs.shape", + "pk": 249, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93694173624727, + "shape_pt_lon": -84.0455491295231, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.186 + } + }, + { + "model": "gtfs.shape", + "pk": 250, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93708123470739, + "shape_pt_lon": -84.0454446214555, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.206 + } + }, + { + "model": "gtfs.shape", + "pk": 251, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93724313131711, + "shape_pt_lon": -84.0452817159445, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.231 + } + }, + { + "model": "gtfs.shape", + "pk": 252, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93734607124923, + "shape_pt_lon": -84.0451254422096, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.251 + } + }, + { + "model": "gtfs.shape", + "pk": 253, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93748749351063, + "shape_pt_lon": -84.0448724740612, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.283 + } + }, + { + "model": "gtfs.shape", + "pk": 254, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93761860756564, + "shape_pt_lon": -84.0446484093239, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.312 + } + }, + { + "model": "gtfs.shape", + "pk": 255, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93781098243242, + "shape_pt_lon": -84.0443002302728, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.355 + } + }, + { + "model": "gtfs.shape", + "pk": 256, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93799146315684, + "shape_pt_lon": -84.0439934603325, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.395 + } + }, + { + "model": "gtfs.shape", + "pk": 257, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93810165004318, + "shape_pt_lon": -84.0438034580265, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.419 + } + }, + { + "model": "gtfs.shape", + "pk": 258, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93796407612903, + "shape_pt_lon": -84.0436169062427, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.444 + } + }, + { + "model": "gtfs.shape", + "pk": 259, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93791116339785, + "shape_pt_lon": -84.043444027742, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.464 + } + }, + { + "model": "gtfs.shape", + "pk": 260, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93788614994896, + "shape_pt_lon": -84.0432193842326, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.489 + } + }, + { + "model": "gtfs.shape", + "pk": 261, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93792655633902, + "shape_pt_lon": -84.0429361376045, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.52 + } + }, + { + "model": "gtfs.shape", + "pk": 262, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93800099196738, + "shape_pt_lon": -84.0424812505301, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.571 + } + }, + { + "model": "gtfs.shape", + "pk": 263, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93813818359375, + "shape_pt_lon": -84.0421772565051, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.607 + } + }, + { + "model": "gtfs.shape", + "pk": 264, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93816415907815, + "shape_pt_lon": -84.0419985184082, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.627 + } + }, + { + "model": "gtfs.shape", + "pk": 265, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9381545385288, + "shape_pt_lon": -84.0418510350607, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.643 + } + }, + { + "model": "gtfs.shape", + "pk": 266, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93812567687818, + "shape_pt_lon": -84.0417260160641, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.657 + } + }, + { + "model": "gtfs.shape", + "pk": 267, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93807564954973, + "shape_pt_lon": -84.0416527622632, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.667 + } + }, + { + "model": "gtfs.shape", + "pk": 268, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93804289664845, + "shape_pt_lon": -84.0416384252501, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.671 + } + }, + { + "model": "gtfs.shape", + "pk": 269, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93801311595451, + "shape_pt_lon": -84.0416361581774, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.675 + } + }, + { + "model": "gtfs.shape", + "pk": 270, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93792172067878, + "shape_pt_lon": -84.0416381115992, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.685 + } + }, + { + "model": "gtfs.shape", + "pk": 271, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93790247956499, + "shape_pt_lon": -84.0412122658535, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.731 + } + }, + { + "model": "gtfs.shape", + "pk": 272, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93789478311904, + "shape_pt_lon": -84.0410686893496, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.747 + } + }, + { + "model": "gtfs.shape", + "pk": 273, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93830046896954, + "shape_pt_lon": -84.040969095546, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.793 + } + }, + { + "model": "gtfs.shape", + "pk": 274, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93846168564775, + "shape_pt_lon": -84.0409298363785, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.812 + } + }, + { + "model": "gtfs.shape", + "pk": 275, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93868873033166, + "shape_pt_lon": -84.040967928104, + "shape_pt_sequence": 123, + "shape_dist_traveled": 2.837 + } + }, + { + "model": "gtfs.shape", + "pk": 276, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93884815398905, + "shape_pt_lon": -84.0411370173071, + "shape_pt_sequence": 124, + "shape_dist_traveled": 2.863 + } + }, + { + "model": "gtfs.shape", + "pk": 277, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93915383599336, + "shape_pt_lon": -84.0416568644267, + "shape_pt_sequence": 125, + "shape_dist_traveled": 2.929 + } + }, + { + "model": "gtfs.shape", + "pk": 278, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93928521203319, + "shape_pt_lon": -84.0417935755105, + "shape_pt_sequence": 126, + "shape_dist_traveled": 2.95 + } + }, + { + "model": "gtfs.shape", + "pk": 279, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93942977628924, + "shape_pt_lon": -84.0418876857024, + "shape_pt_sequence": 127, + "shape_dist_traveled": 2.969 + } + }, + { + "model": "gtfs.shape", + "pk": 280, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93950150662073, + "shape_pt_lon": -84.0419089725314, + "shape_pt_sequence": 128, + "shape_dist_traveled": 2.977 + } + }, + { + "model": "gtfs.shape", + "pk": 281, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93950371370814, + "shape_pt_lon": -84.0422428396408, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.014 + } + }, + { + "model": "gtfs.shape", + "pk": 282, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93948613333313, + "shape_pt_lon": -84.0425204684191, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.044 + } + }, + { + "model": "gtfs.shape", + "pk": 283, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93944529338017, + "shape_pt_lon": -84.0430246306461, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.1 + } + }, + { + "model": "gtfs.shape", + "pk": 284, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93942327481619, + "shape_pt_lon": -84.0433356324423, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.134 + } + }, + { + "model": "gtfs.shape", + "pk": 285, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93972442200525, + "shape_pt_lon": -84.0432655607324, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.168 + } + }, + { + "model": "gtfs.shape", + "pk": 286, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93978732393233, + "shape_pt_lon": -84.043299171515, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.176 + } + }, + { + "model": "gtfs.shape", + "pk": 287, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93981711902594, + "shape_pt_lon": -84.0433809579747, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.186 + } + }, + { + "model": "gtfs.shape", + "pk": 288, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.93991974845217, + "shape_pt_lon": -84.0437596394605, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.229 + } + }, + { + "model": "gtfs.shape", + "pk": 289, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94007043205839, + "shape_pt_lon": -84.0443170698121, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.292 + } + }, + { + "model": "gtfs.shape", + "pk": 290, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94016533658292, + "shape_pt_lon": -84.0446744654815, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.332 + } + }, + { + "model": "gtfs.shape", + "pk": 291, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94027017298111, + "shape_pt_lon": -84.0448268343636, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.353 + } + }, + { + "model": "gtfs.shape", + "pk": 292, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94038169599758, + "shape_pt_lon": -84.045244089757, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.4 + } + }, + { + "model": "gtfs.shape", + "pk": 293, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94048873914792, + "shape_pt_lon": -84.045632855511, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.444 + } + }, + { + "model": "gtfs.shape", + "pk": 294, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94063882056966, + "shape_pt_lon": -84.045599244728, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.461 + } + }, + { + "model": "gtfs.shape", + "pk": 295, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94079662666821, + "shape_pt_lon": -84.0450681942005, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.522 + } + }, + { + "model": "gtfs.shape", + "pk": 296, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94095071185347, + "shape_pt_lon": -84.044750328054, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.561 + } + }, + { + "model": "gtfs.shape", + "pk": 297, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9410528605391, + "shape_pt_lon": -84.0446554341072, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.576 + } + }, + { + "model": "gtfs.shape", + "pk": 298, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94157411286451, + "shape_pt_lon": -84.04469185811, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.634 + } + }, + { + "model": "gtfs.shape", + "pk": 299, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94242227255298, + "shape_pt_lon": -84.0447474726987, + "shape_pt_sequence": 147, + "shape_dist_traveled": 3.728 + } + }, + { + "model": "gtfs.shape", + "pk": 300, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94283107241787, + "shape_pt_lon": -84.0447699014639, + "shape_pt_sequence": 148, + "shape_dist_traveled": 3.773 + } + }, + { + "model": "gtfs.shape", + "pk": 301, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94300697065598, + "shape_pt_lon": -84.0447350564938, + "shape_pt_sequence": 149, + "shape_dist_traveled": 3.793 + } + }, + { + "model": "gtfs.shape", + "pk": 302, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94326009234421, + "shape_pt_lon": -84.0446544775012, + "shape_pt_sequence": 150, + "shape_dist_traveled": 3.823 + } + }, + { + "model": "gtfs.shape", + "pk": 303, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94351468777105, + "shape_pt_lon": -84.0445407320727, + "shape_pt_sequence": 151, + "shape_dist_traveled": 3.853 + } + }, + { + "model": "gtfs.shape", + "pk": 304, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94366913468646, + "shape_pt_lon": -84.0444710421328, + "shape_pt_sequence": 152, + "shape_dist_traveled": 3.872 + } + }, + { + "model": "gtfs.shape", + "pk": 305, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.9437999854876, + "shape_pt_lon": -84.0447541575134, + "shape_pt_sequence": 153, + "shape_dist_traveled": 3.906 + } + }, + { + "model": "gtfs.shape", + "pk": 306, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94388149907578, + "shape_pt_lon": -84.0448848261506, + "shape_pt_sequence": 154, + "shape_dist_traveled": 3.923 + } + }, + { + "model": "gtfs.shape", + "pk": 307, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94396600743452, + "shape_pt_lon": -84.0449552037605, + "shape_pt_sequence": 155, + "shape_dist_traveled": 3.935 + } + }, + { + "model": "gtfs.shape", + "pk": 308, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94433419150155, + "shape_pt_lon": -84.0449932717292, + "shape_pt_sequence": 156, + "shape_dist_traveled": 3.976 + } + }, + { + "model": "gtfs.shape", + "pk": 309, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94457398813642, + "shape_pt_lon": -84.0450138149367, + "shape_pt_sequence": 157, + "shape_dist_traveled": 4.003 + } + }, + { + "model": "gtfs.shape", + "pk": 310, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94495221337372, + "shape_pt_lon": -84.045010504636, + "shape_pt_sequence": 158, + "shape_dist_traveled": 4.045 + } + }, + { + "model": "gtfs.shape", + "pk": 311, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94503698779598, + "shape_pt_lon": -84.0450833311997, + "shape_pt_sequence": 159, + "shape_dist_traveled": 4.057 + } + }, + { + "model": "gtfs.shape", + "pk": 312, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94506796311185, + "shape_pt_lon": -84.045389534011, + "shape_pt_sequence": 160, + "shape_dist_traveled": 4.091 + } + }, + { + "model": "gtfs.shape", + "pk": 313, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94509404758507, + "shape_pt_lon": -84.0455020842335, + "shape_pt_sequence": 161, + "shape_dist_traveled": 4.104 + } + }, + { + "model": "gtfs.shape", + "pk": 314, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94516741015652, + "shape_pt_lon": -84.0455418078417, + "shape_pt_sequence": 162, + "shape_dist_traveled": 4.113 + } + }, + { + "model": "gtfs.shape", + "pk": 315, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94569411437748, + "shape_pt_lon": -84.0455036631251, + "shape_pt_sequence": 163, + "shape_dist_traveled": 4.171 + } + }, + { + "model": "gtfs.shape", + "pk": 316, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94576235686358, + "shape_pt_lon": -84.0454645549726, + "shape_pt_sequence": 164, + "shape_dist_traveled": 4.18 + } + }, + { + "model": "gtfs.shape", + "pk": 317, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94586939851089, + "shape_pt_lon": -84.0452550477597, + "shape_pt_sequence": 165, + "shape_dist_traveled": 4.206 + } + }, + { + "model": "gtfs.shape", + "pk": 318, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94594554151604, + "shape_pt_lon": -84.0451777429595, + "shape_pt_sequence": 166, + "shape_dist_traveled": 4.218 + } + }, + { + "model": "gtfs.shape", + "pk": 319, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94629085058927, + "shape_pt_lon": -84.0451530949856, + "shape_pt_sequence": 167, + "shape_dist_traveled": 4.256 + } + }, + { + "model": "gtfs.shape", + "pk": 320, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94638848955421, + "shape_pt_lon": -84.0451636656039, + "shape_pt_sequence": 168, + "shape_dist_traveled": 4.267 + } + }, + { + "model": "gtfs.shape", + "pk": 321, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94644918315917, + "shape_pt_lon": -84.0452028781838, + "shape_pt_sequence": 169, + "shape_dist_traveled": 4.275 + } + }, + { + "model": "gtfs.shape", + "pk": 322, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "shape_pt_lat": 9.94648865740507, + "shape_pt_lon": -84.0452462913844, + "shape_pt_sequence": 170, + "shape_dist_traveled": 4.281 + } + }, + { + "model": "gtfs.shape", + "pk": 323, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93551240308205, + "shape_pt_lon": -84.052232462037, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "gtfs.shape", + "pk": 324, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93553038682294, + "shape_pt_lon": -84.0523024805564, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.008 + } + }, + { + "model": "gtfs.shape", + "pk": 325, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93554317941351, + "shape_pt_lon": -84.0523354193901, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.012 + } + }, + { + "model": "gtfs.shape", + "pk": 326, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93560006968185, + "shape_pt_lon": -84.0523952582046, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.021 + } + }, + { + "model": "gtfs.shape", + "pk": 327, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93565298376728, + "shape_pt_lon": -84.0524284133704, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.028 + } + }, + { + "model": "gtfs.shape", + "pk": 328, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93571914349433, + "shape_pt_lon": -84.0524404498132, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.035 + } + }, + { + "model": "gtfs.shape", + "pk": 329, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93583719162457, + "shape_pt_lon": -84.0524171180445, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "gtfs.shape", + "pk": 330, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93594643029256, + "shape_pt_lon": -84.0523801266021, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.061 + } + }, + { + "model": "gtfs.shape", + "pk": 331, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93608834513962, + "shape_pt_lon": -84.0523343631691, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.078 + } + }, + { + "model": "gtfs.shape", + "pk": 332, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93620422239772, + "shape_pt_lon": -84.0522977078958, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.091 + } + }, + { + "model": "gtfs.shape", + "pk": 333, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.936293049843, + "shape_pt_lon": -84.0522711599884, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.101 + } + }, + { + "model": "gtfs.shape", + "pk": 334, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93639226353531, + "shape_pt_lon": -84.0522405229359, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.113 + } + }, + { + "model": "gtfs.shape", + "pk": 335, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93653093553953, + "shape_pt_lon": -84.0522367457551, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.128 + } + }, + { + "model": "gtfs.shape", + "pk": 336, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93659589447438, + "shape_pt_lon": -84.0522590055211, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.136 + } + }, + { + "model": "gtfs.shape", + "pk": 337, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93661615058734, + "shape_pt_lon": -84.0523412639074, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.145 + } + }, + { + "model": "gtfs.shape", + "pk": 338, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9365876265418, + "shape_pt_lon": -84.0524260404882, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.155 + } + }, + { + "model": "gtfs.shape", + "pk": 339, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9365355393877, + "shape_pt_lon": -84.0524499625703, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.161 + } + }, + { + "model": "gtfs.shape", + "pk": 340, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93644867420793, + "shape_pt_lon": -84.0524473462339, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.171 + } + }, + { + "model": "gtfs.shape", + "pk": 341, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93635813864212, + "shape_pt_lon": -84.0524384481957, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.181 + } + }, + { + "model": "gtfs.shape", + "pk": 342, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93632957313295, + "shape_pt_lon": -84.052426075736, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.184 + } + }, + { + "model": "gtfs.shape", + "pk": 343, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93630067737655, + "shape_pt_lon": -84.0524254379402, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.188 + } + }, + { + "model": "gtfs.shape", + "pk": 344, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9361767385198, + "shape_pt_lon": -84.0524455386407, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.201 + } + }, + { + "model": "gtfs.shape", + "pk": 345, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93606938255121, + "shape_pt_lon": -84.0524692189919, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.214 + } + }, + { + "model": "gtfs.shape", + "pk": 346, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9358662876061, + "shape_pt_lon": -84.0525134237392, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.237 + } + }, + { + "model": "gtfs.shape", + "pk": 347, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93580530982546, + "shape_pt_lon": -84.0525277028597, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.244 + } + }, + { + "model": "gtfs.shape", + "pk": 348, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93571720324209, + "shape_pt_lon": -84.0525351455981, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.253 + } + }, + { + "model": "gtfs.shape", + "pk": 349, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93562932790421, + "shape_pt_lon": -84.0525170973821, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.263 + } + }, + { + "model": "gtfs.shape", + "pk": 350, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93552958615174, + "shape_pt_lon": -84.0524334827489, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.278 + } + }, + { + "model": "gtfs.shape", + "pk": 351, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93545575661828, + "shape_pt_lon": -84.052350672979, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.29 + } + }, + { + "model": "gtfs.shape", + "pk": 352, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93541638163459, + "shape_pt_lon": -84.0522446182099, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.302 + } + }, + { + "model": "gtfs.shape", + "pk": 353, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93541236377893, + "shape_pt_lon": -84.0520977731443, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.318 + } + }, + { + "model": "gtfs.shape", + "pk": 354, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9353609350822, + "shape_pt_lon": -84.0517673714683, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.355 + } + }, + { + "model": "gtfs.shape", + "pk": 355, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93533537431955, + "shape_pt_lon": -84.0515957473315, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.374 + } + }, + { + "model": "gtfs.shape", + "pk": 356, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93527832074849, + "shape_pt_lon": -84.0514578761312, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.39 + } + }, + { + "model": "gtfs.shape", + "pk": 357, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93537394568805, + "shape_pt_lon": -84.051051560594, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.436 + } + }, + { + "model": "gtfs.shape", + "pk": 358, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93548509593826, + "shape_pt_lon": -84.0506488451042, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.482 + } + }, + { + "model": "gtfs.shape", + "pk": 359, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93555656904013, + "shape_pt_lon": -84.0503446866737, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.516 + } + }, + { + "model": "gtfs.shape", + "pk": 360, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93560639042598, + "shape_pt_lon": -84.0501407351937, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.539 + } + }, + { + "model": "gtfs.shape", + "pk": 361, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93564014039442, + "shape_pt_lon": -84.0499188359838, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.564 + } + }, + { + "model": "gtfs.shape", + "pk": 362, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93555237106771, + "shape_pt_lon": -84.0495240741516, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.608 + } + }, + { + "model": "gtfs.shape", + "pk": 363, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9355127171103, + "shape_pt_lon": -84.0493169635181, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.631 + } + }, + { + "model": "gtfs.shape", + "pk": 364, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93544759669272, + "shape_pt_lon": -84.0490255135247, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.664 + } + }, + { + "model": "gtfs.shape", + "pk": 365, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93538988817417, + "shape_pt_lon": -84.0487899823799, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.691 + } + }, + { + "model": "gtfs.shape", + "pk": 366, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93537301317815, + "shape_pt_lon": -84.0486447689264, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.707 + } + }, + { + "model": "gtfs.shape", + "pk": 367, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93527658461171, + "shape_pt_lon": -84.0486366108669, + "shape_pt_sequence": 44, + "shape_dist_traveled": 0.718 + } + }, + { + "model": "gtfs.shape", + "pk": 368, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93529274995559, + "shape_pt_lon": -84.0483784246656, + "shape_pt_sequence": 45, + "shape_dist_traveled": 0.746 + } + }, + { + "model": "gtfs.shape", + "pk": 369, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93524694618673, + "shape_pt_lon": -84.0481238929513, + "shape_pt_sequence": 46, + "shape_dist_traveled": 0.774 + } + }, + { + "model": "gtfs.shape", + "pk": 370, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93514165787212, + "shape_pt_lon": -84.0478057230236, + "shape_pt_sequence": 47, + "shape_dist_traveled": 0.811 + } + }, + { + "model": "gtfs.shape", + "pk": 371, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93500316815773, + "shape_pt_lon": -84.0473807827294, + "shape_pt_sequence": 48, + "shape_dist_traveled": 0.86 + } + }, + { + "model": "gtfs.shape", + "pk": 372, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93492049042863, + "shape_pt_lon": -84.0470859236543, + "shape_pt_sequence": 49, + "shape_dist_traveled": 0.894 + } + }, + { + "model": "gtfs.shape", + "pk": 373, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93479657132182, + "shape_pt_lon": -84.0464195689003, + "shape_pt_sequence": 50, + "shape_dist_traveled": 0.968 + } + }, + { + "model": "gtfs.shape", + "pk": 374, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93468604728109, + "shape_pt_lon": -84.0458857020311, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.028 + } + }, + { + "model": "gtfs.shape", + "pk": 375, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9346124699569, + "shape_pt_lon": -84.0456137031377, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.059 + } + }, + { + "model": "gtfs.shape", + "pk": 376, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93481022852054, + "shape_pt_lon": -84.0456081393267, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.081 + } + }, + { + "model": "gtfs.shape", + "pk": 377, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93495379560579, + "shape_pt_lon": -84.0456083692307, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.096 + } + }, + { + "model": "gtfs.shape", + "pk": 378, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93502122053513, + "shape_pt_lon": -84.0455873976348, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.104 + } + }, + { + "model": "gtfs.shape", + "pk": 379, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93525069991888, + "shape_pt_lon": -84.0455815527507, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.13 + } + }, + { + "model": "gtfs.shape", + "pk": 380, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93533621207088, + "shape_pt_lon": -84.0455791055204, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.139 + } + }, + { + "model": "gtfs.shape", + "pk": 381, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9355796939962, + "shape_pt_lon": -84.0455277100451, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.167 + } + }, + { + "model": "gtfs.shape", + "pk": 382, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93566141737569, + "shape_pt_lon": -84.0454545424224, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.179 + } + }, + { + "model": "gtfs.shape", + "pk": 383, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93593880374486, + "shape_pt_lon": -84.0454033749615, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.21 + } + }, + { + "model": "gtfs.shape", + "pk": 384, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93617987563359, + "shape_pt_lon": -84.0453561940705, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.237 + } + }, + { + "model": "gtfs.shape", + "pk": 385, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93629878421235, + "shape_pt_lon": -84.0453622217276, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.25 + } + }, + { + "model": "gtfs.shape", + "pk": 386, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93647074793075, + "shape_pt_lon": -84.0454544077961, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.272 + } + }, + { + "model": "gtfs.shape", + "pk": 387, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9366470154013, + "shape_pt_lon": -84.0455491574187, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.294 + } + }, + { + "model": "gtfs.shape", + "pk": 388, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93667996169247, + "shape_pt_lon": -84.0455671051487, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.298 + } + }, + { + "model": "gtfs.shape", + "pk": 389, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93677076487081, + "shape_pt_lon": -84.0455923951325, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.308 + } + }, + { + "model": "gtfs.shape", + "pk": 390, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93685019478803, + "shape_pt_lon": -84.0455875957907, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.317 + } + }, + { + "model": "gtfs.shape", + "pk": 391, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93693939078323, + "shape_pt_lon": -84.0455459896891, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.328 + } + }, + { + "model": "gtfs.shape", + "pk": 392, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93708216879507, + "shape_pt_lon": -84.0454405657035, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.348 + } + }, + { + "model": "gtfs.shape", + "pk": 393, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9372417505605, + "shape_pt_lon": -84.0452791956738, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.373 + } + }, + { + "model": "gtfs.shape", + "pk": 394, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93733175001592, + "shape_pt_lon": -84.0451437718914, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.391 + } + }, + { + "model": "gtfs.shape", + "pk": 395, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93747880276838, + "shape_pt_lon": -84.0448843455207, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.423 + } + }, + { + "model": "gtfs.shape", + "pk": 396, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93759383837854, + "shape_pt_lon": -84.0446848467803, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.449 + } + }, + { + "model": "gtfs.shape", + "pk": 397, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93775722150572, + "shape_pt_lon": -84.0443877220931, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.486 + } + }, + { + "model": "gtfs.shape", + "pk": 398, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93792650160209, + "shape_pt_lon": -84.0440980878075, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.523 + } + }, + { + "model": "gtfs.shape", + "pk": 399, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93809919166979, + "shape_pt_lon": -84.0437999865192, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.561 + } + }, + { + "model": "gtfs.shape", + "pk": 400, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93796097853527, + "shape_pt_lon": -84.0436147985756, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.586 + } + }, + { + "model": "gtfs.shape", + "pk": 401, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93791115773413, + "shape_pt_lon": -84.0434434787742, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.606 + } + }, + { + "model": "gtfs.shape", + "pk": 402, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9378853721441, + "shape_pt_lon": -84.0432188653814, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.63 + } + }, + { + "model": "gtfs.shape", + "pk": 403, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93792474683056, + "shape_pt_lon": -84.0429382281456, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.661 + } + }, + { + "model": "gtfs.shape", + "pk": 404, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93798421082772, + "shape_pt_lon": -84.0425692976739, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.702 + } + }, + { + "model": "gtfs.shape", + "pk": 405, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93799717971221, + "shape_pt_lon": -84.0424760119919, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.713 + } + }, + { + "model": "gtfs.shape", + "pk": 406, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93813619639644, + "shape_pt_lon": -84.0421774270254, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.749 + } + }, + { + "model": "gtfs.shape", + "pk": 407, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93816151133474, + "shape_pt_lon": -84.0419972282554, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.769 + } + }, + { + "model": "gtfs.shape", + "pk": 408, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93815347569085, + "shape_pt_lon": -84.0418487515775, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.785 + } + }, + { + "model": "gtfs.shape", + "pk": 409, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93812695789198, + "shape_pt_lon": -84.0417223014224, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.799 + } + }, + { + "model": "gtfs.shape", + "pk": 410, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93807552975984, + "shape_pt_lon": -84.041649694696, + "shape_pt_sequence": 87, + "shape_dist_traveled": 1.809 + } + }, + { + "model": "gtfs.shape", + "pk": 411, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93801445884308, + "shape_pt_lon": -84.0416317469654, + "shape_pt_sequence": 88, + "shape_dist_traveled": 1.816 + } + }, + { + "model": "gtfs.shape", + "pk": 412, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93791897942971, + "shape_pt_lon": -84.0416350505556, + "shape_pt_sequence": 89, + "shape_dist_traveled": 1.827 + } + }, + { + "model": "gtfs.shape", + "pk": 413, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93789540463778, + "shape_pt_lon": -84.0410687729965, + "shape_pt_sequence": 90, + "shape_dist_traveled": 1.889 + } + }, + { + "model": "gtfs.shape", + "pk": 414, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93846102257875, + "shape_pt_lon": -84.0409278059346, + "shape_pt_sequence": 91, + "shape_dist_traveled": 1.953 + } + }, + { + "model": "gtfs.shape", + "pk": 415, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93868770509072, + "shape_pt_lon": -84.0409636843222, + "shape_pt_sequence": 92, + "shape_dist_traveled": 1.979 + } + }, + { + "model": "gtfs.shape", + "pk": 416, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93884702967763, + "shape_pt_lon": -84.0411317795776, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.004 + } + }, + { + "model": "gtfs.shape", + "pk": 417, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93915009329333, + "shape_pt_lon": -84.0416545090707, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.071 + } + }, + { + "model": "gtfs.shape", + "pk": 418, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93928437269097, + "shape_pt_lon": -84.0417940169538, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.092 + } + }, + { + "model": "gtfs.shape", + "pk": 419, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93942339095397, + "shape_pt_lon": -84.0418844077991, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.11 + } + }, + { + "model": "gtfs.shape", + "pk": 420, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93949992907343, + "shape_pt_lon": -84.0419066090587, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.119 + } + }, + { + "model": "gtfs.shape", + "pk": 421, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93949992907343, + "shape_pt_lon": -84.0422475569833, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.156 + } + }, + { + "model": "gtfs.shape", + "pk": 422, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.939437, + "shape_pt_lon": -84.043074, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.187 + } + }, + { + "model": "gtfs.shape", + "pk": 423, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9394249524573, + "shape_pt_lon": -84.0433290766316, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.275 + } + }, + { + "model": "gtfs.shape", + "pk": 424, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93972312001197, + "shape_pt_lon": -84.0432616940963, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.309 + } + }, + { + "model": "gtfs.shape", + "pk": 425, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9397847344284, + "shape_pt_lon": -84.0432938739159, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.317 + } + }, + { + "model": "gtfs.shape", + "pk": 426, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.9398186343525, + "shape_pt_lon": -84.0433818049407, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.327 + } + }, + { + "model": "gtfs.shape", + "pk": 427, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.93998824672434, + "shape_pt_lon": -84.0440308770623, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.401 + } + }, + { + "model": "gtfs.shape", + "pk": 428, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94015974971341, + "shape_pt_lon": -84.0446658158992, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.473 + } + }, + { + "model": "gtfs.shape", + "pk": 429, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94026910203425, + "shape_pt_lon": -84.0448245474961, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.494 + } + }, + { + "model": "gtfs.shape", + "pk": 430, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94036490303632, + "shape_pt_lon": -84.0451873514683, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.535 + } + }, + { + "model": "gtfs.shape", + "pk": 431, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94048769323097, + "shape_pt_lon": -84.0456290389484, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.586 + } + }, + { + "model": "gtfs.shape", + "pk": 432, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94063635155576, + "shape_pt_lon": -84.0455931434884, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.602 + } + }, + { + "model": "gtfs.shape", + "pk": 433, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94079234514589, + "shape_pt_lon": -84.0450690355552, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.662 + } + }, + { + "model": "gtfs.shape", + "pk": 434, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94094918383372, + "shape_pt_lon": -84.0447505513004, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.701 + } + }, + { + "model": "gtfs.shape", + "pk": 435, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94104532842372, + "shape_pt_lon": -84.0446520351469, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.717 + } + }, + { + "model": "gtfs.shape", + "pk": 436, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94113081479986, + "shape_pt_lon": -84.0446571934664, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.726 + } + }, + { + "model": "gtfs.shape", + "pk": 437, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94144321527622, + "shape_pt_lon": -84.0446770863329, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.761 + } + }, + { + "model": "gtfs.shape", + "pk": 438, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94195499816524, + "shape_pt_lon": -84.0447142198439, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.817 + } + }, + { + "model": "gtfs.shape", + "pk": 439, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94233948335795, + "shape_pt_lon": -84.0447371192727, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.86 + } + }, + { + "model": "gtfs.shape", + "pk": 440, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94270561942093, + "shape_pt_lon": -84.0447624203313, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.901 + } + }, + { + "model": "gtfs.shape", + "pk": 441, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94282741926446, + "shape_pt_lon": -84.0447662997461, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.914 + } + }, + { + "model": "gtfs.shape", + "pk": 442, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94300876520552, + "shape_pt_lon": -84.0447342405736, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.934 + } + }, + { + "model": "gtfs.shape", + "pk": 443, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94322619282253, + "shape_pt_lon": -84.044661630678, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.96 + } + }, + { + "model": "gtfs.shape", + "pk": 444, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94336188947768, + "shape_pt_lon": -84.0446070756693, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.976 + } + }, + { + "model": "gtfs.shape", + "pk": 445, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94366938860733, + "shape_pt_lon": -84.0444664621215, + "shape_pt_sequence": 122, + "shape_dist_traveled": 3.013 + } + }, + { + "model": "gtfs.shape", + "pk": 446, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94379763572232, + "shape_pt_lon": -84.0447499441632, + "shape_pt_sequence": 123, + "shape_dist_traveled": 3.047 + } + }, + { + "model": "gtfs.shape", + "pk": 447, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94387703073651, + "shape_pt_lon": -84.0448781808515, + "shape_pt_sequence": 124, + "shape_dist_traveled": 3.064 + } + }, + { + "model": "gtfs.shape", + "pk": 448, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94396544788927, + "shape_pt_lon": -84.0449496270056, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.077 + } + }, + { + "model": "gtfs.shape", + "pk": 449, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94454435151914, + "shape_pt_lon": -84.0450074182673, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.141 + } + }, + { + "model": "gtfs.shape", + "pk": 450, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94494922686726, + "shape_pt_lon": -84.0450098494603, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.186 + } + }, + { + "model": "gtfs.shape", + "pk": 451, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94503488859595, + "shape_pt_lon": -84.0450726102459, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.197 + } + }, + { + "model": "gtfs.shape", + "pk": 452, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94506635931216, + "shape_pt_lon": -84.0453994971357, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.233 + } + }, + { + "model": "gtfs.shape", + "pk": 453, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94509373573383, + "shape_pt_lon": -84.0454999143925, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.245 + } + }, + { + "model": "gtfs.shape", + "pk": 454, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94516587977827, + "shape_pt_lon": -84.0455384857143, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.254 + } + }, + { + "model": "gtfs.shape", + "pk": 455, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94569334489241, + "shape_pt_lon": -84.045501640108, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.312 + } + }, + { + "model": "gtfs.shape", + "pk": 456, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94576818120904, + "shape_pt_lon": -84.0454572011088, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.322 + } + }, + { + "model": "gtfs.shape", + "pk": 457, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94581918999885, + "shape_pt_lon": -84.0453571624431, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.334 + } + }, + { + "model": "gtfs.shape", + "pk": 458, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94586821736523, + "shape_pt_lon": -84.0452494124261, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.347 + } + }, + { + "model": "gtfs.shape", + "pk": 459, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94594549545337, + "shape_pt_lon": -84.0451749917014, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.359 + } + }, + { + "model": "gtfs.shape", + "pk": 460, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94628917517751, + "shape_pt_lon": -84.045149887399, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.397 + } + }, + { + "model": "gtfs.shape", + "pk": 461, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.946387887887, + "shape_pt_lon": -84.0451617577946, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.408 + } + }, + { + "model": "gtfs.shape", + "pk": 462, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94644528982524, + "shape_pt_lon": -84.0451994142665, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.416 + } + }, + { + "model": "gtfs.shape", + "pk": 463, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "shape_pt_lat": 9.94649012442296, + "shape_pt_lon": -84.0452511227568, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.423 + } + }, + { + "model": "gtfs.shape", + "pk": 464, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93551129613598, + "shape_pt_lon": -84.0522203008732, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "gtfs.shape", + "pk": 465, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9355310767404, + "shape_pt_lon": -84.0522927059177, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.008 + } + }, + { + "model": "gtfs.shape", + "pk": 466, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93554722789095, + "shape_pt_lon": -84.0523347118824, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.013 + } + }, + { + "model": "gtfs.shape", + "pk": 467, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93559998927965, + "shape_pt_lon": -84.0523891977038, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.022 + } + }, + { + "model": "gtfs.shape", + "pk": 468, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93565665681396, + "shape_pt_lon": -84.0524266115309, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.029 + } + }, + { + "model": "gtfs.shape", + "pk": 469, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93572400544303, + "shape_pt_lon": -84.0524387877407, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.037 + } + }, + { + "model": "gtfs.shape", + "pk": 470, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93583791088976, + "shape_pt_lon": -84.0524163085106, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "gtfs.shape", + "pk": 471, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93589348533485, + "shape_pt_lon": -84.0524004247557, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.056 + } + }, + { + "model": "gtfs.shape", + "pk": 472, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93594773879152, + "shape_pt_lon": -84.0523801824105, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.062 + } + }, + { + "model": "gtfs.shape", + "pk": 473, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93618639604332, + "shape_pt_lon": -84.052302832233, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.09 + } + }, + { + "model": "gtfs.shape", + "pk": 474, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93639684624757, + "shape_pt_lon": -84.0522406782275, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.114 + } + }, + { + "model": "gtfs.shape", + "pk": 475, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93653551980098, + "shape_pt_lon": -84.0522361299255, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.13 + } + }, + { + "model": "gtfs.shape", + "pk": 476, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93673682209909, + "shape_pt_lon": -84.0523076585187, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.153 + } + }, + { + "model": "gtfs.shape", + "pk": 477, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93708559662569, + "shape_pt_lon": -84.05243186663, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.194 + } + }, + { + "model": "gtfs.shape", + "pk": 478, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93733577696727, + "shape_pt_lon": -84.0525288520072, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.224 + } + }, + { + "model": "gtfs.shape", + "pk": 479, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93757969853555, + "shape_pt_lon": -84.0526438746271, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.253 + } + }, + { + "model": "gtfs.shape", + "pk": 480, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9377485826659, + "shape_pt_lon": -84.0527043524954, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.273 + } + }, + { + "model": "gtfs.shape", + "pk": 481, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93779188190045, + "shape_pt_lon": -84.0527107981436, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.278 + } + }, + { + "model": "gtfs.shape", + "pk": 482, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93787132360124, + "shape_pt_lon": -84.0527199326082, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.287 + } + }, + { + "model": "gtfs.shape", + "pk": 483, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93795076530203, + "shape_pt_lon": -84.0527243732062, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.296 + } + }, + { + "model": "gtfs.shape", + "pk": 484, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93802242474458, + "shape_pt_lon": -84.0527168419396, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.304 + } + }, + { + "model": "gtfs.shape", + "pk": 485, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93809408418712, + "shape_pt_lon": -84.0527036109785, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.312 + } + }, + { + "model": "gtfs.shape", + "pk": 486, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93815622170643, + "shape_pt_lon": -84.0526341385986, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.322 + } + }, + { + "model": "gtfs.shape", + "pk": 487, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93824866125399, + "shape_pt_lon": -84.0524441849862, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.345 + } + }, + { + "model": "gtfs.shape", + "pk": 488, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93840212874288, + "shape_pt_lon": -84.0521210493447, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.385 + } + }, + { + "model": "gtfs.shape", + "pk": 489, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93859022704029, + "shape_pt_lon": -84.0518711468269, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.419 + } + }, + { + "model": "gtfs.shape", + "pk": 490, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9387164365478, + "shape_pt_lon": -84.0517146035903, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.441 + } + }, + { + "model": "gtfs.shape", + "pk": 491, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93883769238516, + "shape_pt_lon": -84.0515516901066, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.463 + } + }, + { + "model": "gtfs.shape", + "pk": 492, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93890538473733, + "shape_pt_lon": -84.0514467461262, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.477 + } + }, + { + "model": "gtfs.shape", + "pk": 493, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93897774723731, + "shape_pt_lon": -84.051298218969, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.495 + } + }, + { + "model": "gtfs.shape", + "pk": 494, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93901864778466, + "shape_pt_lon": -84.0511281313016, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.514 + } + }, + { + "model": "gtfs.shape", + "pk": 495, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93905404247567, + "shape_pt_lon": -84.0509181170952, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.538 + } + }, + { + "model": "gtfs.shape", + "pk": 496, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93908393146568, + "shape_pt_lon": -84.0503591447661, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.599 + } + }, + { + "model": "gtfs.shape", + "pk": 497, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93910272348104, + "shape_pt_lon": -84.0501183551865, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.626 + } + }, + { + "model": "gtfs.shape", + "pk": 498, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93910706388403, + "shape_pt_lon": -84.0499402779348, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.645 + } + }, + { + "model": "gtfs.shape", + "pk": 499, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93910711111161, + "shape_pt_lon": -84.0497648828928, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.664 + } + }, + { + "model": "gtfs.shape", + "pk": 500, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93906715286185, + "shape_pt_lon": -84.0496439745831, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.678 + } + }, + { + "model": "gtfs.shape", + "pk": 501, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93897699483947, + "shape_pt_lon": -84.0494999920866, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.697 + } + }, + { + "model": "gtfs.shape", + "pk": 502, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93879865248422, + "shape_pt_lon": -84.0492839130465, + "shape_pt_sequence": 38, + "shape_dist_traveled": 0.728 + } + }, + { + "model": "gtfs.shape", + "pk": 503, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93852631535243, + "shape_pt_lon": -84.0489259634067, + "shape_pt_sequence": 39, + "shape_dist_traveled": 0.777 + } + }, + { + "model": "gtfs.shape", + "pk": 504, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9383125595628, + "shape_pt_lon": -84.0486415140485, + "shape_pt_sequence": 40, + "shape_dist_traveled": 0.817 + } + }, + { + "model": "gtfs.shape", + "pk": 505, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93816149920894, + "shape_pt_lon": -84.0484645585026, + "shape_pt_sequence": 41, + "shape_dist_traveled": 0.842 + } + }, + { + "model": "gtfs.shape", + "pk": 506, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93801276292967, + "shape_pt_lon": -84.0483041187788, + "shape_pt_sequence": 42, + "shape_dist_traveled": 0.866 + } + }, + { + "model": "gtfs.shape", + "pk": 507, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93767314890347, + "shape_pt_lon": -84.0479456361923, + "shape_pt_sequence": 43, + "shape_dist_traveled": 0.921 + } + }, + { + "model": "gtfs.shape", + "pk": 508, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93762896738312, + "shape_pt_lon": -84.0479035036496, + "shape_pt_sequence": 44, + "shape_dist_traveled": 0.927 + } + }, + { + "model": "gtfs.shape", + "pk": 509, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9375818136517, + "shape_pt_lon": -84.0478664002497, + "shape_pt_sequence": 45, + "shape_dist_traveled": 0.934 + } + }, + { + "model": "gtfs.shape", + "pk": 510, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9375407094932, + "shape_pt_lon": -84.0478370279249, + "shape_pt_sequence": 46, + "shape_dist_traveled": 0.94 + } + }, + { + "model": "gtfs.shape", + "pk": 511, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93749795410686, + "shape_pt_lon": -84.0478110083611, + "shape_pt_sequence": 47, + "shape_dist_traveled": 0.945 + } + }, + { + "model": "gtfs.shape", + "pk": 512, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93745496587906, + "shape_pt_lon": -84.0477901145765, + "shape_pt_sequence": 48, + "shape_dist_traveled": 0.95 + } + }, + { + "model": "gtfs.shape", + "pk": 513, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93736508273494, + "shape_pt_lon": -84.0477598330601, + "shape_pt_sequence": 49, + "shape_dist_traveled": 0.961 + } + }, + { + "model": "gtfs.shape", + "pk": 514, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93726069019733, + "shape_pt_lon": -84.047759267964, + "shape_pt_sequence": 50, + "shape_dist_traveled": 0.972 + } + }, + { + "model": "gtfs.shape", + "pk": 515, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93707479279145, + "shape_pt_lon": -84.047793713066, + "shape_pt_sequence": 51, + "shape_dist_traveled": 0.993 + } + }, + { + "model": "gtfs.shape", + "pk": 516, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93681544721791, + "shape_pt_lon": -84.0478715216077, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.023 + } + }, + { + "model": "gtfs.shape", + "pk": 517, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93657305173134, + "shape_pt_lon": -84.0479476285628, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.051 + } + }, + { + "model": "gtfs.shape", + "pk": 518, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93622234344519, + "shape_pt_lon": -84.0480642553351, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.092 + } + }, + { + "model": "gtfs.shape", + "pk": 519, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93602464016541, + "shape_pt_lon": -84.0481251956082, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.115 + } + }, + { + "model": "gtfs.shape", + "pk": 520, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93585590049247, + "shape_pt_lon": -84.0481829479595, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.135 + } + }, + { + "model": "gtfs.shape", + "pk": 521, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9357089398831, + "shape_pt_lon": -84.0482522936584, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.153 + } + }, + { + "model": "gtfs.shape", + "pk": 522, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93563189742607, + "shape_pt_lon": -84.0482869664637, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.162 + } + }, + { + "model": "gtfs.shape", + "pk": 523, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93556048694849, + "shape_pt_lon": -84.0483531600847, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.173 + } + }, + { + "model": "gtfs.shape", + "pk": 524, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93549839086817, + "shape_pt_lon": -84.048435114092, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.184 + } + }, + { + "model": "gtfs.shape", + "pk": 525, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93546527295384, + "shape_pt_lon": -84.0485569944104, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.198 + } + }, + { + "model": "gtfs.shape", + "pk": 526, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9354549236054, + "shape_pt_lon": -84.0486547088036, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.209 + } + }, + { + "model": "gtfs.shape", + "pk": 527, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93528001900853, + "shape_pt_lon": -84.048634745016, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.228 + } + }, + { + "model": "gtfs.shape", + "pk": 528, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93529761291067, + "shape_pt_lon": -84.0483794267626, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.256 + } + }, + { + "model": "gtfs.shape", + "pk": 529, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9352527346308, + "shape_pt_lon": -84.0481286733116, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.284 + } + }, + { + "model": "gtfs.shape", + "pk": 530, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93512765815873, + "shape_pt_lon": -84.0477461762194, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.328 + } + }, + { + "model": "gtfs.shape", + "pk": 531, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93492703280895, + "shape_pt_lon": -84.0471055797031, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.402 + } + }, + { + "model": "gtfs.shape", + "pk": 532, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93478949058113, + "shape_pt_lon": -84.046354626689, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.486 + } + }, + { + "model": "gtfs.shape", + "pk": 533, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93469070939338, + "shape_pt_lon": -84.0458746565008, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.539 + } + }, + { + "model": "gtfs.shape", + "pk": 534, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93462060674132, + "shape_pt_lon": -84.0456143293, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.569 + } + }, + { + "model": "gtfs.shape", + "pk": 535, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93489289845325, + "shape_pt_lon": -84.0456070252698, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.599 + } + }, + { + "model": "gtfs.shape", + "pk": 536, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93495950947043, + "shape_pt_lon": -84.045606154414, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.606 + } + }, + { + "model": "gtfs.shape", + "pk": 537, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93502573261312, + "shape_pt_lon": -84.0455877894747, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.614 + } + }, + { + "model": "gtfs.shape", + "pk": 538, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93533984703067, + "shape_pt_lon": -84.0455793808645, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.649 + } + }, + { + "model": "gtfs.shape", + "pk": 539, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93553106245252, + "shape_pt_lon": -84.0455366983597, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.67 + } + }, + { + "model": "gtfs.shape", + "pk": 540, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93558489672501, + "shape_pt_lon": -84.0455256779408, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.677 + } + }, + { + "model": "gtfs.shape", + "pk": 541, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93566584972937, + "shape_pt_lon": -84.0454519050346, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.689 + } + }, + { + "model": "gtfs.shape", + "pk": 542, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93603020143902, + "shape_pt_lon": -84.0453870153627, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.73 + } + }, + { + "model": "gtfs.shape", + "pk": 543, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93619941008339, + "shape_pt_lon": -84.0453504149565, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.749 + } + }, + { + "model": "gtfs.shape", + "pk": 544, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93630011253566, + "shape_pt_lon": -84.0453617663184, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.76 + } + }, + { + "model": "gtfs.shape", + "pk": 545, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93651948121636, + "shape_pt_lon": -84.0454755016038, + "shape_pt_sequence": 81, + "shape_dist_traveled": 1.787 + } + }, + { + "model": "gtfs.shape", + "pk": 546, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93668368683727, + "shape_pt_lon": -84.0455653411938, + "shape_pt_sequence": 82, + "shape_dist_traveled": 1.808 + } + }, + { + "model": "gtfs.shape", + "pk": 547, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93677258981834, + "shape_pt_lon": -84.045589182648, + "shape_pt_sequence": 83, + "shape_dist_traveled": 1.818 + } + }, + { + "model": "gtfs.shape", + "pk": 548, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93685310570445, + "shape_pt_lon": -84.0455874796866, + "shape_pt_sequence": 84, + "shape_dist_traveled": 1.827 + } + }, + { + "model": "gtfs.shape", + "pk": 549, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93694508327091, + "shape_pt_lon": -84.0455437249918, + "shape_pt_sequence": 85, + "shape_dist_traveled": 1.838 + } + }, + { + "model": "gtfs.shape", + "pk": 550, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93708383542657, + "shape_pt_lon": -84.0454400845081, + "shape_pt_sequence": 86, + "shape_dist_traveled": 1.857 + } + }, + { + "model": "gtfs.shape", + "pk": 551, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93721635101928, + "shape_pt_lon": -84.045309807991, + "shape_pt_sequence": 87, + "shape_dist_traveled": 1.878 + } + }, + { + "model": "gtfs.shape", + "pk": 552, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93724819645461, + "shape_pt_lon": -84.0452761874456, + "shape_pt_sequence": 88, + "shape_dist_traveled": 1.883 + } + }, + { + "model": "gtfs.shape", + "pk": 553, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93734716375109, + "shape_pt_lon": -84.0451229209554, + "shape_pt_sequence": 89, + "shape_dist_traveled": 1.903 + } + }, + { + "model": "gtfs.shape", + "pk": 554, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93752119585777, + "shape_pt_lon": -84.0448187291416, + "shape_pt_sequence": 90, + "shape_dist_traveled": 1.941 + } + }, + { + "model": "gtfs.shape", + "pk": 555, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93767426097248, + "shape_pt_lon": -84.0445416760749, + "shape_pt_sequence": 91, + "shape_dist_traveled": 1.976 + } + }, + { + "model": "gtfs.shape", + "pk": 556, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93785833808635, + "shape_pt_lon": -84.0442186256065, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.017 + } + }, + { + "model": "gtfs.shape", + "pk": 557, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93810435753431, + "shape_pt_lon": -84.0437983732383, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.07 + } + }, + { + "model": "gtfs.shape", + "pk": 558, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93796632120651, + "shape_pt_lon": -84.0436125738981, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.096 + } + }, + { + "model": "gtfs.shape", + "pk": 559, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93791432144543, + "shape_pt_lon": -84.0434414999464, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.116 + } + }, + { + "model": "gtfs.shape", + "pk": 560, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93788832161072, + "shape_pt_lon": -84.0432184120559, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.14 + } + }, + { + "model": "gtfs.shape", + "pk": 561, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93792789506808, + "shape_pt_lon": -84.042939145496, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.171 + } + }, + { + "model": "gtfs.shape", + "pk": 562, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93799597108977, + "shape_pt_lon": -84.0425252959219, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.217 + } + }, + { + "model": "gtfs.shape", + "pk": 563, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93800488549925, + "shape_pt_lon": -84.0424724302894, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.223 + } + }, + { + "model": "gtfs.shape", + "pk": 564, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9381395635656, + "shape_pt_lon": -84.0421750587842, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.259 + } + }, + { + "model": "gtfs.shape", + "pk": 565, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93816556338036, + "shape_pt_lon": -84.0419988023209, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.278 + } + }, + { + "model": "gtfs.shape", + "pk": 566, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93815877702913, + "shape_pt_lon": -84.0418468568672, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.295 + } + }, + { + "model": "gtfs.shape", + "pk": 567, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93812774499086, + "shape_pt_lon": -84.0417208377531, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.309 + } + }, + { + "model": "gtfs.shape", + "pk": 568, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93810465445374, + "shape_pt_lon": -84.0416827286396, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.314 + } + }, + { + "model": "gtfs.shape", + "pk": 569, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93807826146448, + "shape_pt_lon": -84.0416493133915, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.319 + } + }, + { + "model": "gtfs.shape", + "pk": 570, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93804738144964, + "shape_pt_lon": -84.0416349312544, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.323 + } + }, + { + "model": "gtfs.shape", + "pk": 571, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93801451996184, + "shape_pt_lon": -84.0416322837814, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.326 + } + }, + { + "model": "gtfs.shape", + "pk": 572, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93792436774485, + "shape_pt_lon": -84.0416346601389, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.336 + } + }, + { + "model": "gtfs.shape", + "pk": 573, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93790082410227, + "shape_pt_lon": -84.041067340985, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.399 + } + }, + { + "model": "gtfs.shape", + "pk": 574, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93846425290711, + "shape_pt_lon": -84.0409284047187, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.463 + } + }, + { + "model": "gtfs.shape", + "pk": 575, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93868651413261, + "shape_pt_lon": -84.0409624274215, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.488 + } + }, + { + "model": "gtfs.shape", + "pk": 576, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93885247660523, + "shape_pt_lon": -84.0411341586918, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.514 + } + }, + { + "model": "gtfs.shape", + "pk": 577, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93915539473273, + "shape_pt_lon": -84.0416474460876, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.579 + } + }, + { + "model": "gtfs.shape", + "pk": 578, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93928861127028, + "shape_pt_lon": -84.0417889786806, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.601 + } + }, + { + "model": "gtfs.shape", + "pk": 579, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9394354239606, + "shape_pt_lon": -84.0418813247414, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.62 + } + }, + { + "model": "gtfs.shape", + "pk": 580, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93950244712471, + "shape_pt_lon": -84.0419056263361, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.628 + } + }, + { + "model": "gtfs.shape", + "pk": 581, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93950244613303, + "shape_pt_lon": -84.042239368576, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.664 + } + }, + { + "model": "gtfs.shape", + "pk": 582, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93949446718606, + "shape_pt_lon": -84.0425196469705, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.695 + } + }, + { + "model": "gtfs.shape", + "pk": 583, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93945457168453, + "shape_pt_lon": -84.0429991991022, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.748 + } + }, + { + "model": "gtfs.shape", + "pk": 584, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93942712460796, + "shape_pt_lon": -84.043331873611, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.784 + } + }, + { + "model": "gtfs.shape", + "pk": 585, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93972789866721, + "shape_pt_lon": -84.0432605742965, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.819 + } + }, + { + "model": "gtfs.shape", + "pk": 586, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93979051078508, + "shape_pt_lon": -84.0432941313524, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.826 + } + }, + { + "model": "gtfs.shape", + "pk": 587, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93982252793726, + "shape_pt_lon": -84.0433753940134, + "shape_pt_sequence": 123, + "shape_dist_traveled": 2.836 + } + }, + { + "model": "gtfs.shape", + "pk": 588, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.93991292983544, + "shape_pt_lon": -84.0437147893588, + "shape_pt_sequence": 124, + "shape_dist_traveled": 2.875 + } + }, + { + "model": "gtfs.shape", + "pk": 589, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94002028140903, + "shape_pt_lon": -84.0441287509128, + "shape_pt_sequence": 125, + "shape_dist_traveled": 2.922 + } + }, + { + "model": "gtfs.shape", + "pk": 590, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94016644833328, + "shape_pt_lon": -84.0446669802431, + "shape_pt_sequence": 126, + "shape_dist_traveled": 2.983 + } + }, + { + "model": "gtfs.shape", + "pk": 591, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94027078687104, + "shape_pt_lon": -84.044823754755, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.003 + } + }, + { + "model": "gtfs.shape", + "pk": 592, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94048864067421, + "shape_pt_lon": -84.0456295904777, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.095 + } + }, + { + "model": "gtfs.shape", + "pk": 593, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9406416703034, + "shape_pt_lon": -84.045594280927, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.112 + } + }, + { + "model": "gtfs.shape", + "pk": 594, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94079771456593, + "shape_pt_lon": -84.0450692602221, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.172 + } + }, + { + "model": "gtfs.shape", + "pk": 595, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9409503711104, + "shape_pt_lon": -84.0447481499267, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.212 + } + }, + { + "model": "gtfs.shape", + "pk": 596, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94105192700053, + "shape_pt_lon": -84.0446521079484, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.227 + } + }, + { + "model": "gtfs.shape", + "pk": 597, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94171142158802, + "shape_pt_lon": -84.0446962954808, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.3 + } + }, + { + "model": "gtfs.shape", + "pk": 598, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94281915936154, + "shape_pt_lon": -84.0447683576565, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.423 + } + }, + { + "model": "gtfs.shape", + "pk": 599, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94301266464211, + "shape_pt_lon": -84.0447317924328, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.445 + } + }, + { + "model": "gtfs.shape", + "pk": 600, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94326484610015, + "shape_pt_lon": -84.0446461368594, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.474 + } + }, + { + "model": "gtfs.shape", + "pk": 601, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94367235170777, + "shape_pt_lon": -84.0444664659679, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.523 + } + }, + { + "model": "gtfs.shape", + "pk": 602, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94380140312083, + "shape_pt_lon": -84.044752272012, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.558 + } + }, + { + "model": "gtfs.shape", + "pk": 603, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9438796367465, + "shape_pt_lon": -84.0448814333755, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.574 + } + }, + { + "model": "gtfs.shape", + "pk": 604, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94396952509255, + "shape_pt_lon": -84.0449503878825, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.587 + } + }, + { + "model": "gtfs.shape", + "pk": 605, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94433433418409, + "shape_pt_lon": -84.044987908675, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.627 + } + }, + { + "model": "gtfs.shape", + "pk": 606, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94457411376674, + "shape_pt_lon": -84.0450080280451, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.654 + } + }, + { + "model": "gtfs.shape", + "pk": 607, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94495390060397, + "shape_pt_lon": -84.0450080280451, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.696 + } + }, + { + "model": "gtfs.shape", + "pk": 608, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94504571713547, + "shape_pt_lon": -84.0450786471473, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.709 + } + }, + { + "model": "gtfs.shape", + "pk": 609, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94507075688808, + "shape_pt_lon": -84.0453964329445, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.744 + } + }, + { + "model": "gtfs.shape", + "pk": 610, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94509858007239, + "shape_pt_lon": -84.0454995368328, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.755 + } + }, + { + "model": "gtfs.shape", + "pk": 611, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94517301639726, + "shape_pt_lon": -84.0455360879379, + "shape_pt_sequence": 147, + "shape_dist_traveled": 3.764 + } + }, + { + "model": "gtfs.shape", + "pk": 612, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94569599438186, + "shape_pt_lon": -84.0455012141288, + "shape_pt_sequence": 148, + "shape_dist_traveled": 3.822 + } + }, + { + "model": "gtfs.shape", + "pk": 613, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94576731883437, + "shape_pt_lon": -84.0454579354822, + "shape_pt_sequence": 149, + "shape_dist_traveled": 3.832 + } + }, + { + "model": "gtfs.shape", + "pk": 614, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94587443785238, + "shape_pt_lon": -84.0452474905592, + "shape_pt_sequence": 150, + "shape_dist_traveled": 3.858 + } + }, + { + "model": "gtfs.shape", + "pk": 615, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94594677794762, + "shape_pt_lon": -84.0451754590753, + "shape_pt_sequence": 151, + "shape_dist_traveled": 3.869 + } + }, + { + "model": "gtfs.shape", + "pk": 616, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94629204599402, + "shape_pt_lon": -84.0451469719024, + "shape_pt_sequence": 152, + "shape_dist_traveled": 3.907 + } + }, + { + "model": "gtfs.shape", + "pk": 617, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.9463908179176, + "shape_pt_lon": -84.0451610957222, + "shape_pt_sequence": 153, + "shape_dist_traveled": 3.918 + } + }, + { + "model": "gtfs.shape", + "pk": 618, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94645063751956, + "shape_pt_lon": -84.0451992300371, + "shape_pt_sequence": 154, + "shape_dist_traveled": 3.926 + } + }, + { + "model": "gtfs.shape", + "pk": 619, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "shape_pt_lat": 9.94649738913102, + "shape_pt_lon": -84.0452562192863, + "shape_pt_sequence": 155, + "shape_dist_traveled": 3.934 + } + }, + { + "model": "gtfs.shape", + "pk": 620, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94651450274987, + "shape_pt_lon": -84.0452709224469, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "gtfs.shape", + "pk": 621, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9465713930344, + "shape_pt_lon": -84.0453586296957, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.011 + } + }, + { + "model": "gtfs.shape", + "pk": 622, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94670523135418, + "shape_pt_lon": -84.0455321860811, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.036 + } + }, + { + "model": "gtfs.shape", + "pk": 623, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94685977487793, + "shape_pt_lon": -84.0457428830683, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.064 + } + }, + { + "model": "gtfs.shape", + "pk": 624, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94692114024093, + "shape_pt_lon": -84.0458252584096, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.076 + } + }, + { + "model": "gtfs.shape", + "pk": 625, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94699848130395, + "shape_pt_lon": -84.045874911642, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.086 + } + }, + { + "model": "gtfs.shape", + "pk": 626, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94709174550324, + "shape_pt_lon": -84.0458702927366, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.096 + } + }, + { + "model": "gtfs.shape", + "pk": 627, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94733286724273, + "shape_pt_lon": -84.0456762984049, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.13 + } + }, + { + "model": "gtfs.shape", + "pk": 628, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94734992775087, + "shape_pt_lon": -84.0455816108455, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.141 + } + }, + { + "model": "gtfs.shape", + "pk": 629, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94731694409985, + "shape_pt_lon": -84.0454811496546, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.152 + } + }, + { + "model": "gtfs.shape", + "pk": 630, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94706331033958, + "shape_pt_lon": -84.0451520526366, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.198 + } + }, + { + "model": "gtfs.shape", + "pk": 631, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94695639770921, + "shape_pt_lon": -84.044934964086, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.225 + } + }, + { + "model": "gtfs.shape", + "pk": 632, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94685739750313, + "shape_pt_lon": -84.0447940381815, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.244 + } + }, + { + "model": "gtfs.shape", + "pk": 633, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94674934743632, + "shape_pt_lon": -84.0447120526121, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.259 + } + }, + { + "model": "gtfs.shape", + "pk": 634, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94663902259388, + "shape_pt_lon": -84.0446901128118, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.271 + } + }, + { + "model": "gtfs.shape", + "pk": 635, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94658480665502, + "shape_pt_lon": -84.0447036688627, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.277 + } + }, + { + "model": "gtfs.shape", + "pk": 636, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94652566341521, + "shape_pt_lon": -84.0447440842844, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.285 + } + }, + { + "model": "gtfs.shape", + "pk": 637, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94631063663281, + "shape_pt_lon": -84.0447956225084, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.31 + } + }, + { + "model": "gtfs.shape", + "pk": 638, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94607861289951, + "shape_pt_lon": -84.0448175623087, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.335 + } + }, + { + "model": "gtfs.shape", + "pk": 639, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94606268969643, + "shape_pt_lon": -84.0448198717614, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.337 + } + }, + { + "model": "gtfs.shape", + "pk": 640, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94607633849742, + "shape_pt_lon": -84.0451616705072, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.375 + } + }, + { + "model": "gtfs.shape", + "pk": 641, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94594816328299, + "shape_pt_lon": -84.0451794721398, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.389 + } + }, + { + "model": "gtfs.shape", + "pk": 642, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94587650883204, + "shape_pt_lon": -84.0452499104458, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.4 + } + }, + { + "model": "gtfs.shape", + "pk": 643, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94577755742257, + "shape_pt_lon": -84.0454566064596, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.425 + } + }, + { + "model": "gtfs.shape", + "pk": 644, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94570040854178, + "shape_pt_lon": -84.0455092507792, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.435 + } + }, + { + "model": "gtfs.shape", + "pk": 645, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94516698035057, + "shape_pt_lon": -84.0455392738468, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.494 + } + }, + { + "model": "gtfs.shape", + "pk": 646, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94508917283893, + "shape_pt_lon": -84.0455023654374, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.504 + } + }, + { + "model": "gtfs.shape", + "pk": 647, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94505732633557, + "shape_pt_lon": -84.045382273899, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.518 + } + }, + { + "model": "gtfs.shape", + "pk": 648, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94502889195332, + "shape_pt_lon": -84.0450808903258, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.551 + } + }, + { + "model": "gtfs.shape", + "pk": 649, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94495155042415, + "shape_pt_lon": -84.0450173803773, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.562 + } + }, + { + "model": "gtfs.shape", + "pk": 650, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94472000465252, + "shape_pt_lon": -84.045015769873, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.587 + } + }, + { + "model": "gtfs.shape", + "pk": 651, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94425679788889, + "shape_pt_lon": -84.0449868892884, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.639 + } + }, + { + "model": "gtfs.shape", + "pk": 652, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94389594579139, + "shape_pt_lon": -84.0449568041774, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.679 + } + }, + { + "model": "gtfs.shape", + "pk": 653, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9433847319748, + "shape_pt_lon": -84.0449197895004, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.736 + } + }, + { + "model": "gtfs.shape", + "pk": 654, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94261500079999, + "shape_pt_lon": -84.0448773383005, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.821 + } + }, + { + "model": "gtfs.shape", + "pk": 655, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94204155986042, + "shape_pt_lon": -84.0448390343892, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.884 + } + }, + { + "model": "gtfs.shape", + "pk": 656, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94137698645447, + "shape_pt_lon": -84.0448024388483, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.958 + } + }, + { + "model": "gtfs.shape", + "pk": 657, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94096102380372, + "shape_pt_lon": -84.0447771566035, + "shape_pt_sequence": 37, + "shape_dist_traveled": 1.004 + } + }, + { + "model": "gtfs.shape", + "pk": 658, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94082181962447, + "shape_pt_lon": -84.0450446175143, + "shape_pt_sequence": 38, + "shape_dist_traveled": 1.037 + } + }, + { + "model": "gtfs.shape", + "pk": 659, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94065523781238, + "shape_pt_lon": -84.0456053336701, + "shape_pt_sequence": 39, + "shape_dist_traveled": 1.101 + } + }, + { + "model": "gtfs.shape", + "pk": 660, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94048314593914, + "shape_pt_lon": -84.045634999557, + "shape_pt_sequence": 40, + "shape_dist_traveled": 1.121 + } + }, + { + "model": "gtfs.shape", + "pk": 661, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9403780406827, + "shape_pt_lon": -84.0452283043053, + "shape_pt_sequence": 41, + "shape_dist_traveled": 1.167 + } + }, + { + "model": "gtfs.shape", + "pk": 662, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9402703855621, + "shape_pt_lon": -84.04482278961, + "shape_pt_sequence": 42, + "shape_dist_traveled": 1.213 + } + }, + { + "model": "gtfs.shape", + "pk": 663, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94016328794055, + "shape_pt_lon": -84.0446641785108, + "shape_pt_sequence": 43, + "shape_dist_traveled": 1.234 + } + }, + { + "model": "gtfs.shape", + "pk": 664, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.94010181117775, + "shape_pt_lon": -84.0444165990228, + "shape_pt_sequence": 44, + "shape_dist_traveled": 1.262 + } + }, + { + "model": "gtfs.shape", + "pk": 665, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93971666992378, + "shape_pt_lon": -84.0445263287881, + "shape_pt_sequence": 45, + "shape_dist_traveled": 1.306 + } + }, + { + "model": "gtfs.shape", + "pk": 666, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93932936015097, + "shape_pt_lon": -84.0446221116145, + "shape_pt_sequence": 46, + "shape_dist_traveled": 1.35 + } + }, + { + "model": "gtfs.shape", + "pk": 667, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93920408915902, + "shape_pt_lon": -84.0446545394456, + "shape_pt_sequence": 47, + "shape_dist_traveled": 1.364 + } + }, + { + "model": "gtfs.shape", + "pk": 668, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9391568243881, + "shape_pt_lon": -84.0446456512568, + "shape_pt_sequence": 48, + "shape_dist_traveled": 1.37 + } + }, + { + "model": "gtfs.shape", + "pk": 669, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93912509354336, + "shape_pt_lon": -84.0446159514984, + "shape_pt_sequence": 49, + "shape_dist_traveled": 1.375 + } + }, + { + "model": "gtfs.shape", + "pk": 670, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93911021843789, + "shape_pt_lon": -84.0445637722231, + "shape_pt_sequence": 50, + "shape_dist_traveled": 1.381 + } + }, + { + "model": "gtfs.shape", + "pk": 671, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93919615665697, + "shape_pt_lon": -84.0443354246074, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.407 + } + }, + { + "model": "gtfs.shape", + "pk": 672, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.939024, + "shape_pt_lon": -84.043697, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.459 + } + }, + { + "model": "gtfs.shape", + "pk": 673, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9389589108528, + "shape_pt_lon": -84.0434647440871, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.506 + } + }, + { + "model": "gtfs.shape", + "pk": 674, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93927926961302, + "shape_pt_lon": -84.0433689657322, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.543 + } + }, + { + "model": "gtfs.shape", + "pk": 675, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9394214266361, + "shape_pt_lon": -84.0433251613281, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.56 + } + }, + { + "model": "gtfs.shape", + "pk": 676, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.939438, + "shape_pt_lon": -84.043078, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.597 + } + }, + { + "model": "gtfs.shape", + "pk": 677, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93949676004582, + "shape_pt_lon": -84.0424704121516, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.654 + } + }, + { + "model": "gtfs.shape", + "pk": 678, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950197815545, + "shape_pt_lon": -84.0423387592283, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.668 + } + }, + { + "model": "gtfs.shape", + "pk": 679, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950471943605, + "shape_pt_lon": -84.042195874555, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.684 + } + }, + { + "model": "gtfs.shape", + "pk": 680, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950937287681, + "shape_pt_lon": -84.0420595652431, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.699 + } + }, + { + "model": "gtfs.shape", + "pk": 681, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93950560510053, + "shape_pt_lon": -84.0419237588459, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.714 + } + }, + { + "model": "gtfs.shape", + "pk": 682, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93932694656827, + "shape_pt_lon": -84.0418526043861, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.735 + } + }, + { + "model": "gtfs.shape", + "pk": 683, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93916441674404, + "shape_pt_lon": -84.0416871226965, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.761 + } + }, + { + "model": "gtfs.shape", + "pk": 684, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93904364750639, + "shape_pt_lon": -84.0415030389796, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.785 + } + }, + { + "model": "gtfs.shape", + "pk": 685, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93882652989536, + "shape_pt_lon": -84.0411360631089, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.832 + } + }, + { + "model": "gtfs.shape", + "pk": 686, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93877761093714, + "shape_pt_lon": -84.0410711382821, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.841 + } + }, + { + "model": "gtfs.shape", + "pk": 687, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93872439879922, + "shape_pt_lon": -84.0410192892248, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.849 + } + }, + { + "model": "gtfs.shape", + "pk": 688, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93860739420377, + "shape_pt_lon": -84.0409548622543, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.863 + } + }, + { + "model": "gtfs.shape", + "pk": 689, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93847712489684, + "shape_pt_lon": -84.0409464827492, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.878 + } + }, + { + "model": "gtfs.shape", + "pk": 690, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93831748290179, + "shape_pt_lon": -84.0409847362632, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.896 + } + }, + { + "model": "gtfs.shape", + "pk": 691, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93790526804534, + "shape_pt_lon": -84.0410975311932, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.943 + } + }, + { + "model": "gtfs.shape", + "pk": 692, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93791543483811, + "shape_pt_lon": -84.0413721007657, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.973 + } + }, + { + "model": "gtfs.shape", + "pk": 693, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93792971313351, + "shape_pt_lon": -84.0416234000621, + "shape_pt_sequence": 73, + "shape_dist_traveled": 2.001 + } + }, + { + "model": "gtfs.shape", + "pk": 694, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93801943406157, + "shape_pt_lon": -84.0416214268987, + "shape_pt_sequence": 74, + "shape_dist_traveled": 2.011 + } + }, + { + "model": "gtfs.shape", + "pk": 695, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93808013647371, + "shape_pt_lon": -84.0416385167757, + "shape_pt_sequence": 75, + "shape_dist_traveled": 2.018 + } + }, + { + "model": "gtfs.shape", + "pk": 696, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9381333560273, + "shape_pt_lon": -84.0417143841426, + "shape_pt_sequence": 76, + "shape_dist_traveled": 2.028 + } + }, + { + "model": "gtfs.shape", + "pk": 697, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9381491692212, + "shape_pt_lon": -84.0417661717713, + "shape_pt_sequence": 77, + "shape_dist_traveled": 2.034 + } + }, + { + "model": "gtfs.shape", + "pk": 698, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93816498245021, + "shape_pt_lon": -84.0418402279053, + "shape_pt_sequence": 78, + "shape_dist_traveled": 2.042 + } + }, + { + "model": "gtfs.shape", + "pk": 699, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93817110369939, + "shape_pt_lon": -84.041955196169, + "shape_pt_sequence": 79, + "shape_dist_traveled": 2.055 + } + }, + { + "model": "gtfs.shape", + "pk": 700, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93816447211196, + "shape_pt_lon": -84.0420620743374, + "shape_pt_sequence": 80, + "shape_dist_traveled": 2.067 + } + }, + { + "model": "gtfs.shape", + "pk": 701, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93814558312971, + "shape_pt_lon": -84.042172549653, + "shape_pt_sequence": 81, + "shape_dist_traveled": 2.079 + } + }, + { + "model": "gtfs.shape", + "pk": 702, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93806546361139, + "shape_pt_lon": -84.0423590295751, + "shape_pt_sequence": 82, + "shape_dist_traveled": 2.101 + } + }, + { + "model": "gtfs.shape", + "pk": 703, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93800868895506, + "shape_pt_lon": -84.0424754995415, + "shape_pt_sequence": 83, + "shape_dist_traveled": 2.116 + } + }, + { + "model": "gtfs.shape", + "pk": 704, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93798455282835, + "shape_pt_lon": -84.0426277550985, + "shape_pt_sequence": 84, + "shape_dist_traveled": 2.132 + } + }, + { + "model": "gtfs.shape", + "pk": 705, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93793303246509, + "shape_pt_lon": -84.0429680898401, + "shape_pt_sequence": 85, + "shape_dist_traveled": 2.17 + } + }, + { + "model": "gtfs.shape", + "pk": 706, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93789255913571, + "shape_pt_lon": -84.0431865014681, + "shape_pt_sequence": 86, + "shape_dist_traveled": 2.195 + } + }, + { + "model": "gtfs.shape", + "pk": 707, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93792278510311, + "shape_pt_lon": -84.0434262188335, + "shape_pt_sequence": 87, + "shape_dist_traveled": 2.221 + } + }, + { + "model": "gtfs.shape", + "pk": 708, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93793612530689, + "shape_pt_lon": -84.0435140997635, + "shape_pt_sequence": 88, + "shape_dist_traveled": 2.231 + } + }, + { + "model": "gtfs.shape", + "pk": 709, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93796843588535, + "shape_pt_lon": -84.0436045719397, + "shape_pt_sequence": 89, + "shape_dist_traveled": 2.241 + } + }, + { + "model": "gtfs.shape", + "pk": 710, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93811029202329, + "shape_pt_lon": -84.0437946545471, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.267 + } + }, + { + "model": "gtfs.shape", + "pk": 711, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93796317506452, + "shape_pt_lon": -84.044044224914, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.299 + } + }, + { + "model": "gtfs.shape", + "pk": 712, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93778888741941, + "shape_pt_lon": -84.0443497474269, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.338 + } + }, + { + "model": "gtfs.shape", + "pk": 713, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93759056212761, + "shape_pt_lon": -84.0447040111923, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.383 + } + }, + { + "model": "gtfs.shape", + "pk": 714, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93743889754011, + "shape_pt_lon": -84.0449773758339, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.417 + } + }, + { + "model": "gtfs.shape", + "pk": 715, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93734106177819, + "shape_pt_lon": -84.0451442319336, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.438 + } + }, + { + "model": "gtfs.shape", + "pk": 716, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93725220134541, + "shape_pt_lon": -84.0452700748287, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.455 + } + }, + { + "model": "gtfs.shape", + "pk": 717, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93710383236486, + "shape_pt_lon": -84.0454232410009, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.479 + } + }, + { + "model": "gtfs.shape", + "pk": 718, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93703302156643, + "shape_pt_lon": -84.045480287002, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.489 + } + }, + { + "model": "gtfs.shape", + "pk": 719, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93692669580576, + "shape_pt_lon": -84.0455559204937, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.503 + } + }, + { + "model": "gtfs.shape", + "pk": 720, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93685320196694, + "shape_pt_lon": -84.0455868138288, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.512 + } + }, + { + "model": "gtfs.shape", + "pk": 721, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93677214106483, + "shape_pt_lon": -84.045591032246, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.521 + } + }, + { + "model": "gtfs.shape", + "pk": 722, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93667892839703, + "shape_pt_lon": -84.0455673986725, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.531 + } + }, + { + "model": "gtfs.shape", + "pk": 723, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93652937757293, + "shape_pt_lon": -84.0454873867401, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.55 + } + }, + { + "model": "gtfs.shape", + "pk": 724, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93646683969579, + "shape_pt_lon": -84.0454491600057, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.558 + } + }, + { + "model": "gtfs.shape", + "pk": 725, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93640033885562, + "shape_pt_lon": -84.0454129449283, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.567 + } + }, + { + "model": "gtfs.shape", + "pk": 726, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93634297166293, + "shape_pt_lon": -84.0453776127618, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.574 + } + }, + { + "model": "gtfs.shape", + "pk": 727, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93629576054226, + "shape_pt_lon": -84.0453623778292, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.579 + } + }, + { + "model": "gtfs.shape", + "pk": 728, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93624363287526, + "shape_pt_lon": -84.0453512637102, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.585 + } + }, + { + "model": "gtfs.shape", + "pk": 729, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9361862212533, + "shape_pt_lon": -84.0453538959122, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.592 + } + }, + { + "model": "gtfs.shape", + "pk": 730, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93603883510741, + "shape_pt_lon": -84.0453890269646, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.608 + } + }, + { + "model": "gtfs.shape", + "pk": 731, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93580414505913, + "shape_pt_lon": -84.0454308854351, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.635 + } + }, + { + "model": "gtfs.shape", + "pk": 732, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93565385732093, + "shape_pt_lon": -84.0454587046985, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.652 + } + }, + { + "model": "gtfs.shape", + "pk": 733, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93558390036268, + "shape_pt_lon": -84.0455252542674, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.662 + } + }, + { + "model": "gtfs.shape", + "pk": 734, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93547184500151, + "shape_pt_lon": -84.0455798539966, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.676 + } + }, + { + "model": "gtfs.shape", + "pk": 735, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93533906172064, + "shape_pt_lon": -84.0456377473207, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.692 + } + }, + { + "model": "gtfs.shape", + "pk": 736, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93501118853525, + "shape_pt_lon": -84.0456383288227, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.728 + } + }, + { + "model": "gtfs.shape", + "pk": 737, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93495718975151, + "shape_pt_lon": -84.0456086223286, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.735 + } + }, + { + "model": "gtfs.shape", + "pk": 738, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93465006354252, + "shape_pt_lon": -84.0456168978697, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.769 + } + }, + { + "model": "gtfs.shape", + "pk": 739, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93477095640989, + "shape_pt_lon": -84.0461340991613, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.827 + } + }, + { + "model": "gtfs.shape", + "pk": 740, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93490403346722, + "shape_pt_lon": -84.0468176973466, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.904 + } + }, + { + "model": "gtfs.shape", + "pk": 741, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93495932029753, + "shape_pt_lon": -84.0471113963055, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.937 + } + }, + { + "model": "gtfs.shape", + "pk": 742, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93505827498137, + "shape_pt_lon": -84.0474601236579, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.976 + } + }, + { + "model": "gtfs.shape", + "pk": 743, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93519897363926, + "shape_pt_lon": -84.0478899692808, + "shape_pt_sequence": 123, + "shape_dist_traveled": 3.026 + } + }, + { + "model": "gtfs.shape", + "pk": 744, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93527449143981, + "shape_pt_lon": -84.0481284685146, + "shape_pt_sequence": 124, + "shape_dist_traveled": 3.053 + } + }, + { + "model": "gtfs.shape", + "pk": 745, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93531543817006, + "shape_pt_lon": -84.0483778894022, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.081 + } + }, + { + "model": "gtfs.shape", + "pk": 746, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93529755715117, + "shape_pt_lon": -84.0486249437023, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.108 + } + }, + { + "model": "gtfs.shape", + "pk": 747, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.93545425079317, + "shape_pt_lon": -84.0486430566726, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.126 + } + }, + { + "model": "gtfs.shape", + "pk": 748, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9354703595261, + "shape_pt_lon": -84.0488000764969, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.143 + } + }, + { + "model": "gtfs.shape", + "pk": 749, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "shape_pt_lat": 9.9355323422866, + "shape_pt_lon": -84.0490437766179, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.171 + } + }, + { + "model": "gtfs.shape", + "pk": 750, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94651439468106, + "shape_pt_lon": -84.0452793145875, + "shape_pt_sequence": 0, + "shape_dist_traveled": 0.0 + } + }, + { + "model": "gtfs.shape", + "pk": 751, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94656979269062, + "shape_pt_lon": -84.0453635889366, + "shape_pt_sequence": 1, + "shape_dist_traveled": 0.011 + } + }, + { + "model": "gtfs.shape", + "pk": 752, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94668819013391, + "shape_pt_lon": -84.0455133598416, + "shape_pt_sequence": 2, + "shape_dist_traveled": 0.032 + } + }, + { + "model": "gtfs.shape", + "pk": 753, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94677813595565, + "shape_pt_lon": -84.0456333624982, + "shape_pt_sequence": 3, + "shape_dist_traveled": 0.049 + } + }, + { + "model": "gtfs.shape", + "pk": 754, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94692110409536, + "shape_pt_lon": -84.0458288226395, + "shape_pt_sequence": 4, + "shape_dist_traveled": 0.075 + } + }, + { + "model": "gtfs.shape", + "pk": 755, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94699667079666, + "shape_pt_lon": -84.0458784281265, + "shape_pt_sequence": 5, + "shape_dist_traveled": 0.085 + } + }, + { + "model": "gtfs.shape", + "pk": 756, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94709290535486, + "shape_pt_lon": -84.0458729567443, + "shape_pt_sequence": 6, + "shape_dist_traveled": 0.096 + } + }, + { + "model": "gtfs.shape", + "pk": 757, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94722193423012, + "shape_pt_lon": -84.0457747817661, + "shape_pt_sequence": 7, + "shape_dist_traveled": 0.114 + } + }, + { + "model": "gtfs.shape", + "pk": 758, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94733469552996, + "shape_pt_lon": -84.0456766067879, + "shape_pt_sequence": 8, + "shape_dist_traveled": 0.13 + } + }, + { + "model": "gtfs.shape", + "pk": 759, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94735240267321, + "shape_pt_lon": -84.0455812484176, + "shape_pt_sequence": 9, + "shape_dist_traveled": 0.141 + } + }, + { + "model": "gtfs.shape", + "pk": 760, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94731698838683, + "shape_pt_lon": -84.0454835451677, + "shape_pt_sequence": 10, + "shape_dist_traveled": 0.152 + } + }, + { + "model": "gtfs.shape", + "pk": 761, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94706401578786, + "shape_pt_lon": -84.045155482603, + "shape_pt_sequence": 11, + "shape_dist_traveled": 0.198 + } + }, + { + "model": "gtfs.shape", + "pk": 762, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94695753981341, + "shape_pt_lon": -84.0449388905875, + "shape_pt_sequence": 12, + "shape_dist_traveled": 0.224 + } + }, + { + "model": "gtfs.shape", + "pk": 763, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94685591607748, + "shape_pt_lon": -84.0447927265256, + "shape_pt_sequence": 13, + "shape_dist_traveled": 0.244 + } + }, + { + "model": "gtfs.shape", + "pk": 764, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94674691466528, + "shape_pt_lon": -84.0447132911805, + "shape_pt_sequence": 14, + "shape_dist_traveled": 0.259 + } + }, + { + "model": "gtfs.shape", + "pk": 765, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94663836196663, + "shape_pt_lon": -84.0446929689046, + "shape_pt_sequence": 15, + "shape_dist_traveled": 0.271 + } + }, + { + "model": "gtfs.shape", + "pk": 766, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9465853910728, + "shape_pt_lon": -84.0447054750041, + "shape_pt_sequence": 16, + "shape_dist_traveled": 0.277 + } + }, + { + "model": "gtfs.shape", + "pk": 767, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94652457073993, + "shape_pt_lon": -84.0447469011822, + "shape_pt_sequence": 17, + "shape_dist_traveled": 0.285 + } + }, + { + "model": "gtfs.shape", + "pk": 768, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94630948675802, + "shape_pt_lon": -84.0447977068717, + "shape_pt_sequence": 18, + "shape_dist_traveled": 0.31 + } + }, + { + "model": "gtfs.shape", + "pk": 769, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94606507414992, + "shape_pt_lon": -84.0448235005163, + "shape_pt_sequence": 19, + "shape_dist_traveled": 0.337 + } + }, + { + "model": "gtfs.shape", + "pk": 770, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94607893196729, + "shape_pt_lon": -84.0451642894519, + "shape_pt_sequence": 20, + "shape_dist_traveled": 0.374 + } + }, + { + "model": "gtfs.shape", + "pk": 771, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94594726623906, + "shape_pt_lon": -84.0451842895768, + "shape_pt_sequence": 21, + "shape_dist_traveled": 0.389 + } + }, + { + "model": "gtfs.shape", + "pk": 772, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94587566747948, + "shape_pt_lon": -84.0452538542911, + "shape_pt_sequence": 22, + "shape_dist_traveled": 0.4 + } + }, + { + "model": "gtfs.shape", + "pk": 773, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94577795917383, + "shape_pt_lon": -84.0454601695233, + "shape_pt_sequence": 23, + "shape_dist_traveled": 0.425 + } + }, + { + "model": "gtfs.shape", + "pk": 774, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94569943146, + "shape_pt_lon": -84.0455125384658, + "shape_pt_sequence": 24, + "shape_dist_traveled": 0.435 + } + }, + { + "model": "gtfs.shape", + "pk": 775, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94545154684154, + "shape_pt_lon": -84.0455252458136, + "shape_pt_sequence": 25, + "shape_dist_traveled": 0.463 + } + }, + { + "model": "gtfs.shape", + "pk": 776, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94516751299271, + "shape_pt_lon": -84.0455414357082, + "shape_pt_sequence": 26, + "shape_dist_traveled": 0.494 + } + }, + { + "model": "gtfs.shape", + "pk": 777, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94508849180003, + "shape_pt_lon": -84.0455037479672, + "shape_pt_sequence": 27, + "shape_dist_traveled": 0.504 + } + }, + { + "model": "gtfs.shape", + "pk": 778, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94505511036374, + "shape_pt_lon": -84.0453835472561, + "shape_pt_sequence": 28, + "shape_dist_traveled": 0.518 + } + }, + { + "model": "gtfs.shape", + "pk": 779, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94502739484005, + "shape_pt_lon": -84.045084965639, + "shape_pt_sequence": 29, + "shape_dist_traveled": 0.55 + } + }, + { + "model": "gtfs.shape", + "pk": 780, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94499479036127, + "shape_pt_lon": -84.0450504044021, + "shape_pt_sequence": 30, + "shape_dist_traveled": 0.556 + } + }, + { + "model": "gtfs.shape", + "pk": 781, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94494963682908, + "shape_pt_lon": -84.0450208723069, + "shape_pt_sequence": 31, + "shape_dist_traveled": 0.562 + } + }, + { + "model": "gtfs.shape", + "pk": 782, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94467428591231, + "shape_pt_lon": -84.0450154011338, + "shape_pt_sequence": 32, + "shape_dist_traveled": 0.592 + } + }, + { + "model": "gtfs.shape", + "pk": 783, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94435778151253, + "shape_pt_lon": -84.0450041637077, + "shape_pt_sequence": 33, + "shape_dist_traveled": 0.627 + } + }, + { + "model": "gtfs.shape", + "pk": 784, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94347268380579, + "shape_pt_lon": -84.0449287137552, + "shape_pt_sequence": 34, + "shape_dist_traveled": 0.725 + } + }, + { + "model": "gtfs.shape", + "pk": 785, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94295817880508, + "shape_pt_lon": -84.0448982678798, + "shape_pt_sequence": 35, + "shape_dist_traveled": 0.782 + } + }, + { + "model": "gtfs.shape", + "pk": 786, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94230048632557, + "shape_pt_lon": -84.0448587644203, + "shape_pt_sequence": 36, + "shape_dist_traveled": 0.855 + } + }, + { + "model": "gtfs.shape", + "pk": 787, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94171228683352, + "shape_pt_lon": -84.0448222996627, + "shape_pt_sequence": 37, + "shape_dist_traveled": 0.92 + } + }, + { + "model": "gtfs.shape", + "pk": 788, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94096530647596, + "shape_pt_lon": -84.0447760219723, + "shape_pt_sequence": 38, + "shape_dist_traveled": 1.003 + } + }, + { + "model": "gtfs.shape", + "pk": 789, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94090663320268, + "shape_pt_lon": -84.0448740739734, + "shape_pt_sequence": 39, + "shape_dist_traveled": 1.016 + } + }, + { + "model": "gtfs.shape", + "pk": 790, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94084406020503, + "shape_pt_lon": -84.0449871934796, + "shape_pt_sequence": 40, + "shape_dist_traveled": 1.03 + } + }, + { + "model": "gtfs.shape", + "pk": 791, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94077751897418, + "shape_pt_lon": -84.0452171289551, + "shape_pt_sequence": 41, + "shape_dist_traveled": 1.056 + } + }, + { + "model": "gtfs.shape", + "pk": 792, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94072156165138, + "shape_pt_lon": -84.0453974813657, + "shape_pt_sequence": 42, + "shape_dist_traveled": 1.077 + } + }, + { + "model": "gtfs.shape", + "pk": 793, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94066022328121, + "shape_pt_lon": -84.0456042948351, + "shape_pt_sequence": 43, + "shape_dist_traveled": 1.101 + } + }, + { + "model": "gtfs.shape", + "pk": 794, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94049309734092, + "shape_pt_lon": -84.0456331735173, + "shape_pt_sequence": 44, + "shape_dist_traveled": 1.119 + } + }, + { + "model": "gtfs.shape", + "pk": 795, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94043960234258, + "shape_pt_lon": -84.0454384499972, + "shape_pt_sequence": 45, + "shape_dist_traveled": 1.142 + } + }, + { + "model": "gtfs.shape", + "pk": 796, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94037244769911, + "shape_pt_lon": -84.0451953028132, + "shape_pt_sequence": 46, + "shape_dist_traveled": 1.169 + } + }, + { + "model": "gtfs.shape", + "pk": 797, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94027492444419, + "shape_pt_lon": -84.0448203307503, + "shape_pt_sequence": 47, + "shape_dist_traveled": 1.212 + } + }, + { + "model": "gtfs.shape", + "pk": 798, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94022435173391, + "shape_pt_lon": -84.0447437519701, + "shape_pt_sequence": 48, + "shape_dist_traveled": 1.222 + } + }, + { + "model": "gtfs.shape", + "pk": 799, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94016681408322, + "shape_pt_lon": -84.0446621944019, + "shape_pt_sequence": 49, + "shape_dist_traveled": 1.233 + } + }, + { + "model": "gtfs.shape", + "pk": 800, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.94010200702146, + "shape_pt_lon": -84.044417503094, + "shape_pt_sequence": 50, + "shape_dist_traveled": 1.261 + } + }, + { + "model": "gtfs.shape", + "pk": 801, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93987745974345, + "shape_pt_lon": -84.0444809655781, + "shape_pt_sequence": 51, + "shape_dist_traveled": 1.286 + } + }, + { + "model": "gtfs.shape", + "pk": 802, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93971459423953, + "shape_pt_lon": -84.0445245874922, + "shape_pt_sequence": 52, + "shape_dist_traveled": 1.305 + } + }, + { + "model": "gtfs.shape", + "pk": 803, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93927560616025, + "shape_pt_lon": -84.0446392902696, + "shape_pt_sequence": 53, + "shape_dist_traveled": 1.355 + } + }, + { + "model": "gtfs.shape", + "pk": 804, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93920545121652, + "shape_pt_lon": -84.0446560771702, + "shape_pt_sequence": 54, + "shape_dist_traveled": 1.363 + } + }, + { + "model": "gtfs.shape", + "pk": 805, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93916110643307, + "shape_pt_lon": -84.0446448875091, + "shape_pt_sequence": 55, + "shape_dist_traveled": 1.368 + } + }, + { + "model": "gtfs.shape", + "pk": 806, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93912385292449, + "shape_pt_lon": -84.0446191813258, + "shape_pt_sequence": 56, + "shape_dist_traveled": 1.373 + } + }, + { + "model": "gtfs.shape", + "pk": 807, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93911625815432, + "shape_pt_lon": -84.0445525134932, + "shape_pt_sequence": 57, + "shape_dist_traveled": 1.38 + } + }, + { + "model": "gtfs.shape", + "pk": 808, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93919941590806, + "shape_pt_lon": -84.0443337547524, + "shape_pt_sequence": 58, + "shape_dist_traveled": 1.406 + } + }, + { + "model": "gtfs.shape", + "pk": 809, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93911055274011, + "shape_pt_lon": -84.044006444136, + "shape_pt_sequence": 59, + "shape_dist_traveled": 1.443 + } + }, + { + "model": "gtfs.shape", + "pk": 810, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9390190082839, + "shape_pt_lon": -84.0436747724812, + "shape_pt_sequence": 60, + "shape_dist_traveled": 1.481 + } + }, + { + "model": "gtfs.shape", + "pk": 811, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93895911426052, + "shape_pt_lon": -84.0434673567427, + "shape_pt_sequence": 61, + "shape_dist_traveled": 1.505 + } + }, + { + "model": "gtfs.shape", + "pk": 812, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9392879865273, + "shape_pt_lon": -84.0433689432454, + "shape_pt_sequence": 62, + "shape_dist_traveled": 1.543 + } + }, + { + "model": "gtfs.shape", + "pk": 813, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93942115014918, + "shape_pt_lon": -84.0433274860744, + "shape_pt_sequence": 63, + "shape_dist_traveled": 1.558 + } + }, + { + "model": "gtfs.shape", + "pk": 814, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93944755512195, + "shape_pt_lon": -84.0429942406062, + "shape_pt_sequence": 64, + "shape_dist_traveled": 1.595 + } + }, + { + "model": "gtfs.shape", + "pk": 815, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93946810072644, + "shape_pt_lon": -84.0427365454686, + "shape_pt_sequence": 65, + "shape_dist_traveled": 1.623 + } + }, + { + "model": "gtfs.shape", + "pk": 816, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93949017843466, + "shape_pt_lon": -84.0424561880641, + "shape_pt_sequence": 66, + "shape_dist_traveled": 1.654 + } + }, + { + "model": "gtfs.shape", + "pk": 817, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93949896641922, + "shape_pt_lon": -84.0421337910545, + "shape_pt_sequence": 67, + "shape_dist_traveled": 1.689 + } + }, + { + "model": "gtfs.shape", + "pk": 818, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93950631475532, + "shape_pt_lon": -84.0419274245262, + "shape_pt_sequence": 68, + "shape_dist_traveled": 1.712 + } + }, + { + "model": "gtfs.shape", + "pk": 819, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93932958005353, + "shape_pt_lon": -84.0418524186819, + "shape_pt_sequence": 69, + "shape_dist_traveled": 1.733 + } + }, + { + "model": "gtfs.shape", + "pk": 820, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93916814008368, + "shape_pt_lon": -84.041691039804, + "shape_pt_sequence": 70, + "shape_dist_traveled": 1.758 + } + }, + { + "model": "gtfs.shape", + "pk": 821, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93900519121203, + "shape_pt_lon": -84.0414413521148, + "shape_pt_sequence": 71, + "shape_dist_traveled": 1.791 + } + }, + { + "model": "gtfs.shape", + "pk": 822, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93882565486029, + "shape_pt_lon": -84.0411391429389, + "shape_pt_sequence": 72, + "shape_dist_traveled": 1.83 + } + }, + { + "model": "gtfs.shape", + "pk": 823, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93878072700935, + "shape_pt_lon": -84.0410728454411, + "shape_pt_sequence": 73, + "shape_dist_traveled": 1.839 + } + }, + { + "model": "gtfs.shape", + "pk": 824, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93872490109004, + "shape_pt_lon": -84.0410213000932, + "shape_pt_sequence": 74, + "shape_dist_traveled": 1.847 + } + }, + { + "model": "gtfs.shape", + "pk": 825, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93861004710345, + "shape_pt_lon": -84.0409544792739, + "shape_pt_sequence": 75, + "shape_dist_traveled": 1.862 + } + }, + { + "model": "gtfs.shape", + "pk": 826, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93847396797512, + "shape_pt_lon": -84.0409494403816, + "shape_pt_sequence": 76, + "shape_dist_traveled": 1.877 + } + }, + { + "model": "gtfs.shape", + "pk": 827, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93814652860348, + "shape_pt_lon": -84.0410341635524, + "shape_pt_sequence": 77, + "shape_dist_traveled": 1.914 + } + }, + { + "model": "gtfs.shape", + "pk": 828, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93790671250708, + "shape_pt_lon": -84.0411014405278, + "shape_pt_sequence": 78, + "shape_dist_traveled": 1.942 + } + }, + { + "model": "gtfs.shape", + "pk": 829, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93791663555238, + "shape_pt_lon": -84.0413834314017, + "shape_pt_sequence": 79, + "shape_dist_traveled": 1.973 + } + }, + { + "model": "gtfs.shape", + "pk": 830, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93793079347671, + "shape_pt_lon": -84.0416285810649, + "shape_pt_sequence": 80, + "shape_dist_traveled": 1.999 + } + }, + { + "model": "gtfs.shape", + "pk": 831, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93801967154644, + "shape_pt_lon": -84.0416254546011, + "shape_pt_sequence": 81, + "shape_dist_traveled": 2.009 + } + }, + { + "model": "gtfs.shape", + "pk": 832, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93807996226397, + "shape_pt_lon": -84.0416431189912, + "shape_pt_sequence": 82, + "shape_dist_traveled": 2.016 + } + }, + { + "model": "gtfs.shape", + "pk": 833, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93810791480517, + "shape_pt_lon": -84.0416788253891, + "shape_pt_sequence": 83, + "shape_dist_traveled": 2.021 + } + }, + { + "model": "gtfs.shape", + "pk": 834, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93813256489417, + "shape_pt_lon": -84.0417178845482, + "shape_pt_sequence": 84, + "shape_dist_traveled": 2.026 + } + }, + { + "model": "gtfs.shape", + "pk": 835, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9381630635316, + "shape_pt_lon": -84.0418440755105, + "shape_pt_sequence": 85, + "shape_dist_traveled": 2.041 + } + }, + { + "model": "gtfs.shape", + "pk": 836, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93816840355805, + "shape_pt_lon": -84.0419580950124, + "shape_pt_sequence": 86, + "shape_dist_traveled": 2.053 + } + }, + { + "model": "gtfs.shape", + "pk": 837, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93816233402513, + "shape_pt_lon": -84.0420632597521, + "shape_pt_sequence": 87, + "shape_dist_traveled": 2.065 + } + }, + { + "model": "gtfs.shape", + "pk": 838, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93814321123235, + "shape_pt_lon": -84.0421742120474, + "shape_pt_sequence": 88, + "shape_dist_traveled": 2.077 + } + }, + { + "model": "gtfs.shape", + "pk": 839, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93803086770445, + "shape_pt_lon": -84.042431585693, + "shape_pt_sequence": 89, + "shape_dist_traveled": 2.108 + } + }, + { + "model": "gtfs.shape", + "pk": 840, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93800811636062, + "shape_pt_lon": -84.0424780922361, + "shape_pt_sequence": 90, + "shape_dist_traveled": 2.113 + } + }, + { + "model": "gtfs.shape", + "pk": 841, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93798034157711, + "shape_pt_lon": -84.0426586032431, + "shape_pt_sequence": 91, + "shape_dist_traveled": 2.134 + } + }, + { + "model": "gtfs.shape", + "pk": 842, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93791715763552, + "shape_pt_lon": -84.0430584128099, + "shape_pt_sequence": 92, + "shape_dist_traveled": 2.178 + } + }, + { + "model": "gtfs.shape", + "pk": 843, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93789378213828, + "shape_pt_lon": -84.0431955755255, + "shape_pt_sequence": 93, + "shape_dist_traveled": 2.193 + } + }, + { + "model": "gtfs.shape", + "pk": 844, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9379228858361, + "shape_pt_lon": -84.0434355505527, + "shape_pt_sequence": 94, + "shape_dist_traveled": 2.22 + } + }, + { + "model": "gtfs.shape", + "pk": 845, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93793324365073, + "shape_pt_lon": -84.0435100147268, + "shape_pt_sequence": 95, + "shape_dist_traveled": 2.228 + } + }, + { + "model": "gtfs.shape", + "pk": 846, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93796925623814, + "shape_pt_lon": -84.0436073742708, + "shape_pt_sequence": 96, + "shape_dist_traveled": 2.239 + } + }, + { + "model": "gtfs.shape", + "pk": 847, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93811129632628, + "shape_pt_lon": -84.0437957690067, + "shape_pt_sequence": 97, + "shape_dist_traveled": 2.265 + } + }, + { + "model": "gtfs.shape", + "pk": 848, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93796149488666, + "shape_pt_lon": -84.0440534496211, + "shape_pt_sequence": 98, + "shape_dist_traveled": 2.298 + } + }, + { + "model": "gtfs.shape", + "pk": 849, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93777133769974, + "shape_pt_lon": -84.0443836171542, + "shape_pt_sequence": 99, + "shape_dist_traveled": 2.34 + } + }, + { + "model": "gtfs.shape", + "pk": 850, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9375818272445, + "shape_pt_lon": -84.0447196978834, + "shape_pt_sequence": 100, + "shape_dist_traveled": 2.382 + } + }, + { + "model": "gtfs.shape", + "pk": 851, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93745018852863, + "shape_pt_lon": -84.0449635706007, + "shape_pt_sequence": 101, + "shape_dist_traveled": 2.413 + } + }, + { + "model": "gtfs.shape", + "pk": 852, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93734180767617, + "shape_pt_lon": -84.0451463546949, + "shape_pt_sequence": 102, + "shape_dist_traveled": 2.436 + } + }, + { + "model": "gtfs.shape", + "pk": 853, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93725372200282, + "shape_pt_lon": -84.0452714142582, + "shape_pt_sequence": 103, + "shape_dist_traveled": 2.453 + } + }, + { + "model": "gtfs.shape", + "pk": 854, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.937108322267, + "shape_pt_lon": -84.0454262175884, + "shape_pt_sequence": 104, + "shape_dist_traveled": 2.476 + } + }, + { + "model": "gtfs.shape", + "pk": 855, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93692719931924, + "shape_pt_lon": -84.0455586526682, + "shape_pt_sequence": 105, + "shape_dist_traveled": 2.501 + } + }, + { + "model": "gtfs.shape", + "pk": 856, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93685401442958, + "shape_pt_lon": -84.0455873611916, + "shape_pt_sequence": 106, + "shape_dist_traveled": 2.51 + } + }, + { + "model": "gtfs.shape", + "pk": 857, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93677373653686, + "shape_pt_lon": -84.0455923110153, + "shape_pt_sequence": 107, + "shape_dist_traveled": 2.519 + } + }, + { + "model": "gtfs.shape", + "pk": 858, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93668019604487, + "shape_pt_lon": -84.0455680674162, + "shape_pt_sequence": 108, + "shape_dist_traveled": 2.529 + } + }, + { + "model": "gtfs.shape", + "pk": 859, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93646480148586, + "shape_pt_lon": -84.0454482787829, + "shape_pt_sequence": 109, + "shape_dist_traveled": 2.556 + } + }, + { + "model": "gtfs.shape", + "pk": 860, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93636588688585, + "shape_pt_lon": -84.0453892763726, + "shape_pt_sequence": 110, + "shape_dist_traveled": 2.569 + } + }, + { + "model": "gtfs.shape", + "pk": 861, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93632308831075, + "shape_pt_lon": -84.0453697036442, + "shape_pt_sequence": 111, + "shape_dist_traveled": 2.574 + } + }, + { + "model": "gtfs.shape", + "pk": 862, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93629762770389, + "shape_pt_lon": -84.0453615303045, + "shape_pt_sequence": 112, + "shape_dist_traveled": 2.577 + } + }, + { + "model": "gtfs.shape", + "pk": 863, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93624652235345, + "shape_pt_lon": -84.0453532765511, + "shape_pt_sequence": 113, + "shape_dist_traveled": 2.583 + } + }, + { + "model": "gtfs.shape", + "pk": 864, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93618732594838, + "shape_pt_lon": -84.0453570927397, + "shape_pt_sequence": 114, + "shape_dist_traveled": 2.59 + } + }, + { + "model": "gtfs.shape", + "pk": 865, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93603538344972, + "shape_pt_lon": -84.0453927689936, + "shape_pt_sequence": 115, + "shape_dist_traveled": 2.607 + } + }, + { + "model": "gtfs.shape", + "pk": 866, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93577991764324, + "shape_pt_lon": -84.045437957483, + "shape_pt_sequence": 116, + "shape_dist_traveled": 2.636 + } + }, + { + "model": "gtfs.shape", + "pk": 867, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93565154581259, + "shape_pt_lon": -84.0454621421002, + "shape_pt_sequence": 117, + "shape_dist_traveled": 2.65 + } + }, + { + "model": "gtfs.shape", + "pk": 868, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93558482499322, + "shape_pt_lon": -84.0455294509499, + "shape_pt_sequence": 118, + "shape_dist_traveled": 2.66 + } + }, + { + "model": "gtfs.shape", + "pk": 869, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93533787082614, + "shape_pt_lon": -84.0456405554627, + "shape_pt_sequence": 119, + "shape_dist_traveled": 2.69 + } + }, + { + "model": "gtfs.shape", + "pk": 870, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9350109333037, + "shape_pt_lon": -84.0456410811815, + "shape_pt_sequence": 120, + "shape_dist_traveled": 2.727 + } + }, + { + "model": "gtfs.shape", + "pk": 871, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93495968412818, + "shape_pt_lon": -84.0456087998837, + "shape_pt_sequence": 121, + "shape_dist_traveled": 2.733 + } + }, + { + "model": "gtfs.shape", + "pk": 872, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93464858697721, + "shape_pt_lon": -84.0456196757956, + "shape_pt_sequence": 122, + "shape_dist_traveled": 2.768 + } + }, + { + "model": "gtfs.shape", + "pk": 873, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93480225304748, + "shape_pt_lon": -84.046294734079, + "shape_pt_sequence": 123, + "shape_dist_traveled": 2.844 + } + }, + { + "model": "gtfs.shape", + "pk": 874, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93495610721508, + "shape_pt_lon": -84.0470992295944, + "shape_pt_sequence": 124, + "shape_dist_traveled": 2.933 + } + }, + { + "model": "gtfs.shape", + "pk": 875, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93514466639919, + "shape_pt_lon": -84.047738281775, + "shape_pt_sequence": 125, + "shape_dist_traveled": 3.007 + } + }, + { + "model": "gtfs.shape", + "pk": 876, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93527584609242, + "shape_pt_lon": -84.048128961463, + "shape_pt_sequence": 126, + "shape_dist_traveled": 3.052 + } + }, + { + "model": "gtfs.shape", + "pk": 877, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93531583349863, + "shape_pt_lon": -84.0483847176419, + "shape_pt_sequence": 127, + "shape_dist_traveled": 3.08 + } + }, + { + "model": "gtfs.shape", + "pk": 878, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93529983825585, + "shape_pt_lon": -84.0486296483808, + "shape_pt_sequence": 128, + "shape_dist_traveled": 3.107 + } + }, + { + "model": "gtfs.shape", + "pk": 879, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93545520267059, + "shape_pt_lon": -84.0486491888617, + "shape_pt_sequence": 129, + "shape_dist_traveled": 3.124 + } + }, + { + "model": "gtfs.shape", + "pk": 880, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9354703980085, + "shape_pt_lon": -84.0488055127148, + "shape_pt_sequence": 130, + "shape_dist_traveled": 3.142 + } + }, + { + "model": "gtfs.shape", + "pk": 881, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93553667972237, + "shape_pt_lon": -84.0490832368349, + "shape_pt_sequence": 131, + "shape_dist_traveled": 3.173 + } + }, + { + "model": "gtfs.shape", + "pk": 882, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.9355977604479, + "shape_pt_lon": -84.0493162487417, + "shape_pt_sequence": 132, + "shape_dist_traveled": 3.199 + } + }, + { + "model": "gtfs.shape", + "pk": 883, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93570243695239, + "shape_pt_lon": -84.0495918083302, + "shape_pt_sequence": 133, + "shape_dist_traveled": 3.232 + } + }, + { + "model": "gtfs.shape", + "pk": 884, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93571038517426, + "shape_pt_lon": -84.0496787768477, + "shape_pt_sequence": 134, + "shape_dist_traveled": 3.241 + } + }, + { + "model": "gtfs.shape", + "pk": 885, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93571038484225, + "shape_pt_lon": -84.0499696558076, + "shape_pt_sequence": 135, + "shape_dist_traveled": 3.273 + } + }, + { + "model": "gtfs.shape", + "pk": 886, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93570321714193, + "shape_pt_lon": -84.0500954158227, + "shape_pt_sequence": 136, + "shape_dist_traveled": 3.287 + } + }, + { + "model": "gtfs.shape", + "pk": 887, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93566700857604, + "shape_pt_lon": -84.0503419760518, + "shape_pt_sequence": 137, + "shape_dist_traveled": 3.314 + } + }, + { + "model": "gtfs.shape", + "pk": 888, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93560674646944, + "shape_pt_lon": -84.0506470296121, + "shape_pt_sequence": 138, + "shape_dist_traveled": 3.348 + } + }, + { + "model": "gtfs.shape", + "pk": 889, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93553343216217, + "shape_pt_lon": -84.0510737676674, + "shape_pt_sequence": 139, + "shape_dist_traveled": 3.396 + } + }, + { + "model": "gtfs.shape", + "pk": 890, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93549263100849, + "shape_pt_lon": -84.0513075140395, + "shape_pt_sequence": 140, + "shape_dist_traveled": 3.422 + } + }, + { + "model": "gtfs.shape", + "pk": 891, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93546272803463, + "shape_pt_lon": -84.0515459542782, + "shape_pt_sequence": 141, + "shape_dist_traveled": 3.448 + } + }, + { + "model": "gtfs.shape", + "pk": 892, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93544955548966, + "shape_pt_lon": -84.0516525931019, + "shape_pt_sequence": 142, + "shape_dist_traveled": 3.46 + } + }, + { + "model": "gtfs.shape", + "pk": 893, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93544794162221, + "shape_pt_lon": -84.0517605730299, + "shape_pt_sequence": 143, + "shape_dist_traveled": 3.472 + } + }, + { + "model": "gtfs.shape", + "pk": 894, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93547169143514, + "shape_pt_lon": -84.0519830595855, + "shape_pt_sequence": 144, + "shape_dist_traveled": 3.496 + } + }, + { + "model": "gtfs.shape", + "pk": 895, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93548892832953, + "shape_pt_lon": -84.0521081889526, + "shape_pt_sequence": 145, + "shape_dist_traveled": 3.51 + } + }, + { + "model": "gtfs.shape", + "pk": 896, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "shape_pt_lat": 9.93550175796293, + "shape_pt_lon": -84.0521827017793, + "shape_pt_sequence": 146, + "shape_dist_traveled": 3.519 + } + }, + { + "model": "gtfs.geoshape", + "pk": 1, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_sin_milla", + "geometry": "SRID=4326;LINESTRING(-84.04899295728595 9.935610136323218, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939451647823137, -84.04450675690296 9.940155168862551, -84.04468346245408 9.943761220391434, -84.0451915613564 9.946441050827925)", + "has_altitude": false + } + }, + { + "model": "gtfs.geoshape", + "pk": 2, + "fields": { + "feed": "1", + "shape_id": "desde_educacion_con_milla", + "geometry": "SRID=4326;LINESTRING(-84.04899295728595 9.935610136323218, -84.0517499001992 9.93860832346218, -84.04876049840074 9.93832361909286, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939461647823137, -84.04450675690296 9.940155168862551, -84.04475066837327 9.94119204389136, -84.04488346245408 9.943413920391434, -84.0451915613564 9.946441050827925)", + "has_altitude": false + } + }, + { + "model": "gtfs.geoshape", + "pk": 3, + "fields": { + "feed": "1", + "shape_id": "desde_artes_sin_milla", + "geometry": "SRID=4326;LINESTRING(-84.05217559901489 9.935501598287884, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939461647823137, -84.04450675690296 9.940155168862551, -84.04475066837327 9.94119204389136, -84.04488346245408 9.943413920391434, -84.0451915613564 9.946441050827925)", + "has_altitude": false + } + }, + { + "model": "gtfs.geoshape", + "pk": 4, + "fields": { + "feed": "1", + "shape_id": "desde_artes_con_milla", + "geometry": "SRID=4326;LINESTRING(-84.05217559901489 9.935501598287884, -84.0517499001992 9.93860832346218, -84.04876049840074 9.93832361909286, -84.04537504744147 9.935903915437937, -84.04467644300775 9.937467311441507, -84.04237892478906 9.938029607676915, -84.04307776266035 9.939461647823137, -84.04450675690296 9.940155168862551, -84.04475066837327 9.94119204389136, -84.04488346245408 9.943413920391434, -84.0451915613564 9.946441050827925)", + "has_altitude": false + } + }, + { + "model": "gtfs.geoshape", + "pk": 5, + "fields": { + "feed": "1", + "shape_id": "hacia_artes", + "geometry": "SRID=4326;LINESTRING(-84.0451915613564 9.946441050827925, -84.04495180739714 9.943381444081362, -84.04483991497501 9.941220574743566, -84.04468654565294 9.939134591559855, -84.0436758508172 9.938980381389706, -84.042189216776 9.939472792042086, -84.04229551510366 9.938130529026141, -84.04501822768842 9.937468669419962, -84.04546950911886 9.93589305371453, -84.05217559901489 9.935501598287884)", + "has_altitude": false + } + }, + { + "model": "gtfs.geoshape", + "pk": 6, + "fields": { + "feed": "1", + "shape_id": "hacia_educacion", + "geometry": "SRID=4326;LINESTRING(-84.0451915613564 9.946441050827925, -84.04495180739714 9.943381444081362, -84.04483991497501 9.941220574743566, -84.04468654565294 9.939134591559855, -84.0436758508172 9.938980381389706, -84.042189216776 9.939472792042086, -84.04229551510366 9.938130529026141, -84.04501822768842 9.937468669419962, -84.04546950911886 9.93589305371453, -84.04899295728595 9.935610136323218)", + "has_altitude": false + } + }, + { + "model": "gtfs.gtfsprovider", + "pk": 1, + "fields": { + "code": "bUCR", + "name": "bUCR", + "description": "Bus de la UCR", + "website": "https://bucr.digital", + "schedule_url": null, + "trip_updates_url": null, + "vehicle_positions_url": null, + "service_alerts_url": null, + "timezone": "America/costa_rica", + "is_active": true + } + }, + { + "model": "gtfs.feed", + "pk": 1, + "fields": { + "feed_publisher": 1, + "http_etag": null, + "http_last_modified": "2024-07-11T00:00:00Z", + "is_current": true, + "retrieved_at": "2024-07-11T04:28:41.332Z" + } + } +] diff --git a/backend/feed/fixtures/shape2geoshape.py b/backend/feed/fixtures/shape2geoshape.py deleted file mode 100644 index c81c150..0000000 --- a/backend/feed/fixtures/shape2geoshape.py +++ /dev/null @@ -1,43 +0,0 @@ -import json -from collections import defaultdict - -# Read the shapes.json file -with open("shapes.json", "r") as file: - shapes_data = json.load(file) - -# Group entries by shape_id -shapes_dict = defaultdict(list) -for entry in shapes_data: - shape_id = entry["fields"]["shape_id"] - lat = entry["fields"]["shape_pt_lat"] - lon = entry["fields"]["shape_pt_lon"] - shapes_dict[shape_id].append((lon, lat)) - -# Create the new JSON structure -new_shapes_data = [] -pk_counter = 1 - -for shape_id, points in shapes_dict.items(): - geometry = ( - "SRID=4326;LINESTRING (" - + ", ".join(f"{lon} {lat}" for lon, lat in points) - + ")" - ) - new_entry = { - "model": "gtfs.geoshape", - "pk": pk_counter, - "fields": { - "feed": shapes_data[0]["fields"][ - "feed" - ], # Assuming all entries have the same feed - "shape_id": shape_id, - "geometry": geometry, - "has_altitude": False, - }, - } - new_shapes_data.append(new_entry) - pk_counter += 1 - -# Write the new JSON structure to a new file -with open("geoshapes.json", "w") as file: - json.dump(new_shapes_data, file, indent=4) diff --git a/backend/feed/fixtures/translator_single.py b/backend/feed/fixtures/translator_single.py deleted file mode 100644 index b41637d..0000000 --- a/backend/feed/fixtures/translator_single.py +++ /dev/null @@ -1,930 +0,0 @@ -import csv -import json - - -# The CSV input data -csv_data = """shape_id,shape_pt_lat,shape_pt_lon,shape_pt_sequence,shape_dist_traveled -desde_educacion_sin_milla,9.93554944,-84.0491139,0,0 -desde_educacion_sin_milla,9.935558901,-84.04915826,1,0.005 -desde_educacion_sin_milla,9.935573543,-84.04922412,2,0.012 -desde_educacion_sin_milla,9.935600065,-84.04932486,3,0.024 -desde_educacion_sin_milla,9.935637735,-84.04941678,4,0.035 -desde_educacion_sin_milla,9.935683995,-84.04953688,5,0.049 -desde_educacion_sin_milla,9.93570316,-84.04959458,6,0.056 -desde_educacion_sin_milla,9.935711091,-84.04968716,7,0.066 -desde_educacion_sin_milla,9.935712925,-84.04984645,8,0.083 -desde_educacion_sin_milla,9.935703932,-84.05008772,9,0.11 -desde_educacion_sin_milla,9.935665393,-84.05035117,10,0.139 -desde_educacion_sin_milla,9.935617862,-84.05059375,11,0.166 -desde_educacion_sin_milla,9.935565192,-84.05087806,12,0.198 -desde_educacion_sin_milla,9.935529223,-84.0511089,13,0.223 -desde_educacion_sin_milla,9.935481691,-84.05139322,14,0.255 -desde_educacion_sin_milla,9.935453429,-84.05164101,15,0.282 -desde_educacion_sin_milla,9.935447411,-84.05169439,16,0.288 -desde_educacion_sin_milla,9.935447006,-84.05175448,17,0.295 -desde_educacion_sin_milla,9.935466276,-84.05195793,18,0.317 -desde_educacion_sin_milla,9.935489399,-84.05213139,19,0.336 -desde_educacion_sin_milla,9.935505174,-84.05222398,20,0.347 -desde_educacion_sin_milla,9.93554618,-84.05233401,21,0.36 -desde_educacion_sin_milla,9.935599878,-84.05239149,22,0.368 -desde_educacion_sin_milla,9.935655529,-84.05242817,23,0.376 -desde_educacion_sin_milla,9.935720942,-84.05244105,24,0.383 -desde_educacion_sin_milla,9.935836149,-84.05241826,25,0.396 -desde_educacion_sin_milla,9.936033366,-84.05235284,26,0.419 -desde_educacion_sin_milla,9.936256916,-84.05228329,27,0.445 -desde_educacion_sin_milla,9.936393072,-84.05224319,28,0.46 -desde_educacion_sin_milla,9.936535615,-84.05223725,29,0.476 -desde_educacion_sin_milla,9.936600052,-84.05226004,30,0.484 -desde_educacion_sin_milla,9.936619579,-84.05234231,31,0.493 -desde_educacion_sin_milla,9.936591265,-84.05242756,32,0.503 -desde_educacion_sin_milla,9.936538544,-84.05245035,33,0.509 -desde_educacion_sin_milla,9.936453604,-84.05244837,34,0.519 -desde_educacion_sin_milla,9.936360853,-84.05243945,35,0.529 -desde_educacion_sin_milla,9.93633386,-84.0524268,36,0.532 -desde_educacion_sin_milla,9.936304226,-84.05242656,37,0.535 -desde_educacion_sin_milla,9.936181209,-84.05244738,38,0.549 -desde_educacion_sin_milla,9.936007424,-84.05248405,39,0.569 -desde_educacion_sin_milla,9.935811182,-84.05252767,40,0.591 -desde_educacion_sin_milla,9.935718762,-84.05253557,41,0.601 -desde_educacion_sin_milla,9.935631538,-84.05251775,42,0.611 -desde_educacion_sin_milla,9.935533109,-84.05243347,43,0.626 -desde_educacion_sin_milla,9.935459705,-84.05235123,44,0.638 -desde_educacion_sin_milla,9.935420652,-84.05224518,45,0.65 -desde_educacion_sin_milla,9.935416747,-84.05210145,46,0.666 -desde_educacion_sin_milla,9.935377694,-84.05185564,47,0.693 -desde_educacion_sin_milla,9.935337664,-84.05159601,48,0.722 -desde_educacion_sin_milla,9.935313644,-84.05152777,49,0.73 -desde_educacion_sin_milla,9.935281037,-84.05146121,50,0.738 -desde_educacion_sin_milla,9.935379646,-84.05104491,51,0.785 -desde_educacion_sin_milla,9.935492289,-84.05063858,52,0.831 -desde_educacion_sin_milla,9.935608535,-84.05014283,53,0.887 -desde_educacion_sin_milla,9.935645232,-84.04991538,54,0.912 -desde_educacion_sin_milla,9.935559316,-84.04954368,55,0.954 -desde_educacion_sin_milla,9.935494251,-84.04920339,56,0.992 -desde_educacion_sin_milla,9.935392526,-84.04878501,57,1.039 -desde_educacion_sin_milla,9.935375928,-84.04864624,58,1.055 -desde_educacion_sin_milla,9.935280248,-84.04863732,59,1.065 -desde_educacion_sin_milla,9.935297551,-84.04838248,60,1.093 -desde_educacion_sin_milla,9.935248856,-84.04812367,61,1.122 -desde_educacion_sin_milla,9.935125688,-84.04775145,62,1.165 -desde_educacion_sin_milla,9.935005383,-84.04738504,63,1.208 -desde_educacion_sin_milla,9.934924127,-84.04709543,64,1.241 -desde_educacion_sin_milla,9.934806687,-84.04644113,65,1.314 -desde_educacion_sin_milla,9.934680202,-84.04584851,66,1.38 -desde_educacion_sin_milla,9.934615706,-84.04561458,67,1.407 -desde_educacion_sin_milla,9.934956133,-84.04560806,68,1.444 -desde_educacion_sin_milla,9.935025339,-84.0455873,69,1.452 -desde_educacion_sin_milla,9.935336384,-84.04558067,70,1.487 -desde_educacion_sin_milla,9.935581749,-84.0455285,71,1.514 -desde_educacion_sin_milla,9.935663965,-84.04545547,72,1.527 -desde_educacion_sin_milla,9.935912396,-84.04541189,73,1.554 -desde_educacion_sin_milla,9.936183452,-84.04535711,74,1.585 -desde_educacion_sin_milla,9.936302922,-84.04536494,75,1.598 -desde_educacion_sin_milla,9.936444231,-84.04543667,76,1.616 -desde_educacion_sin_milla,9.936683318,-84.04556757,77,1.646 -desde_educacion_sin_milla,9.936771957,-84.04559235,78,1.656 -desde_educacion_sin_milla,9.936852889,-84.04558713,79,1.665 -desde_educacion_sin_milla,9.936941528,-84.0455467,80,1.676 -desde_educacion_sin_milla,9.937085405,-84.04544237,81,1.695 -desde_educacion_sin_milla,9.937245934,-84.04527872,82,1.721 -desde_educacion_sin_milla,9.937338427,-84.04513786,83,1.739 -desde_educacion_sin_milla,9.937560263,-84.04475282,84,1.788 -desde_educacion_sin_milla,9.937776528,-84.0443585,85,1.837 -desde_educacion_sin_milla,9.938104105,-84.04380161,86,1.908 -desde_educacion_sin_milla,9.937964767,-84.04361665,87,1.934 -desde_educacion_sin_milla,9.937914736,-84.0434458,88,1.953 -desde_educacion_sin_milla,9.937890478,-84.0432203,89,1.978 -desde_educacion_sin_milla,9.937919706,-84.04298946,90,2.004 -desde_educacion_sin_milla,9.937980084,-84.04260081,91,2.047 -desde_educacion_sin_milla,9.938004491,-84.04247952,92,2.06 -desde_educacion_sin_milla,9.938138092,-84.04217826,93,2.097 -desde_educacion_sin_milla,9.938164733,-84.04199645,94,2.117 -desde_educacion_sin_milla,9.938158309,-84.04185038,95,2.133 -desde_educacion_sin_milla,9.938128763,-84.04172518,96,2.147 -desde_educacion_sin_milla,9.938071764,-84.0416449,97,2.158 -desde_educacion_sin_milla,9.938017001,-84.0416365,98,2.164 -desde_educacion_sin_milla,9.937921888,-84.0416378,99,2.174 -desde_educacion_sin_milla,9.937901385,-84.04113626,100,2.229 -desde_educacion_sin_milla,9.937896503,-84.04106847,101,2.237 -desde_educacion_sin_milla,9.938463993,-84.04092897,102,2.301 -desde_educacion_sin_milla,9.938689998,-84.04096455,103,2.327 -desde_educacion_sin_milla,9.938852205,-84.04113434,104,2.353 -desde_educacion_sin_milla,9.939157757,-84.04165518,105,2.419 -desde_educacion_sin_milla,9.939288662,-84.04179423,106,2.44 -desde_educacion_sin_milla,9.939433265,-84.04188359,107,2.459 -desde_educacion_sin_milla,9.939502946,-84.04190722,108,2.467 -desde_educacion_sin_milla,9.939503932,-84.04222693,109,2.502 -desde_educacion_sin_milla,9.939492123,-84.04251171,110,2.533 -desde_educacion_sin_milla,9.939456844,-84.04291815,111,2.578 -desde_educacion_sin_milla,9.939425032,-84.04333313,112,2.624 -desde_educacion_sin_milla,9.939727706,-84.04326312,113,2.658 -desde_educacion_sin_milla,9.939790246,-84.04329572,114,2.666 -desde_educacion_sin_milla,9.93981898,-84.04337294,115,2.675 -desde_educacion_sin_milla,9.940071084,-84.0443133,116,2.782 -desde_educacion_sin_milla,9.940166055,-84.04466933,117,2.822 -desde_educacion_sin_milla,9.940272446,-84.04482737,118,2.843 -desde_educacion_sin_milla,9.940462111,-84.04554009,119,2.924 -desde_educacion_sin_milla,9.940490566,-84.04563027,120,2.934 -desde_educacion_sin_milla,9.940638225,-84.04559788,121,2.951 -desde_educacion_sin_milla,9.940797172,-84.04506887,122,3.012 -desde_educacion_sin_milla,9.940954387,-84.04474671,123,3.051 -desde_educacion_sin_milla,9.941052623,-84.04465273,124,3.066 -desde_educacion_sin_milla,9.941415097,-84.04467728,125,3.106 -desde_educacion_sin_milla,9.942227833,-84.04473169,126,3.196 -desde_educacion_sin_milla,9.942824306,-84.04476927,127,3.262 -desde_educacion_sin_milla,9.943007219,-84.04473612,128,3.283 -desde_educacion_sin_milla,9.943253279,-84.04465365,129,3.311 -desde_educacion_sin_milla,9.943673774,-84.04446585,130,3.362 -desde_educacion_sin_milla,9.943804727,-84.0447575,131,3.397 -desde_educacion_sin_milla,9.943881035,-84.04488395,132,3.414 -desde_educacion_sin_milla,9.9439687,-84.04495221,133,3.426 -desde_educacion_sin_milla,9.944400187,-84.04499919,134,3.474 -desde_educacion_sin_milla,9.944575754,-84.04501108,135,3.493 -desde_educacion_sin_milla,9.944953412,-84.04500722,136,3.535 -desde_educacion_sin_milla,9.945037906,-84.04508044,137,3.547 -desde_educacion_sin_milla,9.945072623,-84.04540789,138,3.584 -desde_educacion_sin_milla,9.945096637,-84.04550183,139,3.594 -desde_educacion_sin_milla,9.94516495,-84.04553708,140,3.603 -desde_educacion_sin_milla,9.945354211,-84.04552798,141,3.624 -desde_educacion_sin_milla,9.945696094,-84.0455007,142,3.662 -desde_educacion_sin_milla,9.945760199,-84.04546362,143,3.67 -desde_educacion_sin_milla,9.945809013,-84.04537838,144,3.681 -desde_educacion_sin_milla,9.94587052,-84.04525051,145,3.696 -desde_educacion_sin_milla,9.945945798,-84.0451768,146,3.708 -desde_educacion_sin_milla,9.946292524,-84.04514987,147,3.746 -desde_educacion_sin_milla,9.946389771,-84.04516208,148,3.757 -desde_educacion_sin_milla,9.946450027,-84.04520167,149,3.765 -desde_educacion_sin_milla,9.946484041,-84.04523875,150,3.771 -desde_educacion_con_milla,9.93554616,-84.0491115,0,0 -desde_educacion_con_milla,9.935572539,-84.04923244,1,0.014 -desde_educacion_con_milla,9.935597197,-84.04932439,2,0.024 -desde_educacion_con_milla,9.935668325,-84.04950396,3,0.045 -desde_educacion_con_milla,9.935702467,-84.04959831,4,0.056 -desde_educacion_con_milla,9.93570958,-84.04969074,5,0.066 -desde_educacion_con_milla,9.935711476,-84.04984913,6,0.084 -desde_educacion_con_milla,9.935702467,-84.05008935,7,0.11 -desde_educacion_con_milla,9.935667851,-84.0503238,8,0.136 -desde_educacion_con_milla,9.935628019,-84.05053623,9,0.16 -desde_educacion_con_milla,9.935585816,-84.05075913,10,0.185 -desde_educacion_con_milla,9.935539345,-84.05103546,11,0.215 -desde_educacion_con_milla,9.935487184,-84.05135351,12,0.251 -desde_educacion_con_milla,9.935445908,-84.05169444,13,0.288 -desde_educacion_con_milla,9.935444064,-84.05176837,14,0.297 -desde_educacion_con_milla,9.935497526,-84.05219135,15,0.343 -desde_educacion_con_milla,9.935521492,-84.05227463,16,0.353 -desde_educacion_con_milla,9.935545458,-84.05234201,17,0.361 -desde_educacion_con_milla,9.935601685,-84.05239816,18,0.369 -desde_educacion_con_milla,9.935657912,-84.05243184,19,0.377 -desde_educacion_con_milla,9.935720591,-84.05244307,20,0.384 -desde_educacion_con_milla,9.935838575,-84.05241874,21,0.397 -desde_educacion_con_milla,9.936055059,-84.05234669,22,0.422 -desde_educacion_con_milla,9.936274436,-84.05228025,23,0.448 -desde_educacion_con_milla,9.936394369,-84.05224375,24,0.461 -desde_educacion_con_milla,9.936532632,-84.05223907,25,0.477 -desde_educacion_con_milla,9.936798021,-84.05233495,26,0.508 -desde_educacion_con_milla,9.937069102,-84.05243134,27,0.54 -desde_educacion_con_milla,9.937350236,-84.05253802,28,0.573 -desde_educacion_con_milla,9.937571456,-84.05264376,29,0.6 -desde_educacion_con_milla,9.937741058,-84.05270272,30,0.62 -desde_educacion_con_milla,9.93778978,-84.05271515,31,0.625 -desde_educacion_con_milla,9.937946478,-84.05272731,32,0.643 -desde_educacion_con_milla,9.93809151,-84.05270766,33,0.659 -desde_educacion_con_milla,9.93815511,-84.05263561,34,0.67 -desde_educacion_con_milla,9.938401217,-84.05212467,35,0.732 -desde_educacion_con_milla,9.938571428,-84.05189448,36,0.763 -desde_educacion_con_milla,9.938791768,-84.0516156,37,0.802 -desde_educacion_con_milla,9.938901063,-84.05145553,38,0.824 -desde_educacion_con_milla,9.938975075,-84.05130203,39,0.842 -desde_educacion_con_milla,9.939014196,-84.05113458,40,0.861 -desde_educacion_con_milla,9.939051176,-84.05092244,41,0.885 -desde_educacion_con_milla,9.939065978,-84.05060149,42,0.92 -desde_educacion_con_milla,9.939098565,-84.05012438,43,0.973 -desde_educacion_con_milla,9.939103186,-84.04976564,44,1.012 -desde_educacion_con_milla,9.939065122,-84.04965293,45,1.025 -desde_educacion_con_milla,9.938977366,-84.04951339,46,1.043 -desde_educacion_con_milla,9.938814539,-84.04931158,47,1.072 -desde_educacion_con_milla,9.938604134,-84.0490282,48,1.11 -desde_educacion_con_milla,9.938476074,-84.04886478,49,1.133 -desde_educacion_con_milla,9.938307961,-84.04864259,50,1.164 -desde_educacion_con_milla,9.938127751,-84.0484369,51,1.194 -desde_educacion_con_milla,9.937981001,-84.04827683,52,1.218 -desde_educacion_con_milla,9.937680223,-84.0479567,53,1.266 -desde_educacion_con_milla,9.937632866,-84.04791113,54,1.274 -desde_educacion_con_milla,9.937583198,-84.04787226,55,1.28 -desde_educacion_con_milla,9.937538702,-84.04784041,56,1.287 -desde_educacion_con_milla,9.937494207,-84.04781393,57,1.292 -desde_educacion_con_milla,9.937450242,-84.04779234,58,1.298 -desde_educacion_con_milla,9.937359382,-84.04776069,59,1.308 -desde_educacion_con_milla,9.937249167,-84.04776069,60,1.32 -desde_educacion_con_milla,9.937151778,-84.04777843,61,1.331 -desde_educacion_con_milla,9.937057102,-84.04779876,62,1.342 -desde_educacion_con_milla,9.936728667,-84.04790016,63,1.38 -desde_educacion_con_milla,9.936438736,-84.04799403,64,1.414 -desde_educacion_con_milla,9.936054594,-84.04812091,65,1.458 -desde_educacion_con_milla,9.93594785,-84.04814976,66,1.471 -desde_educacion_con_milla,9.935846721,-84.04819269,67,1.483 -desde_educacion_con_milla,9.93562415,-84.0482903,68,1.51 -desde_educacion_con_milla,9.935555633,-84.04835414,69,1.52 -desde_educacion_con_milla,9.935523773,-84.04839554,70,1.526 -desde_educacion_con_milla,9.935493234,-84.04843593,71,1.531 -desde_educacion_con_milla,9.935459241,-84.04855626,72,1.545 -desde_educacion_con_milla,9.93545411,-84.04860846,73,1.551 -desde_educacion_con_milla,9.935452611,-84.0486583,74,1.556 -desde_educacion_con_milla,9.935277145,-84.04863814,75,1.576 -desde_educacion_con_milla,9.935293699,-84.04838494,76,1.604 -desde_educacion_con_milla,9.935248453,-84.04812501,77,1.633 -desde_educacion_con_milla,9.935104907,-84.04768765,78,1.683 -desde_educacion_con_milla,9.934923096,-84.04710497,79,1.75 -desde_educacion_con_milla,9.934787952,-84.04637105,80,1.832 -desde_educacion_con_milla,9.934687129,-84.04588104,81,1.887 -desde_educacion_con_milla,9.934617165,-84.04561501,82,1.917 -desde_educacion_con_milla,9.934664535,-84.04561573,83,1.922 -desde_educacion_con_milla,9.934954116,-84.04560987,84,1.954 -desde_educacion_con_milla,9.935018672,-84.04558933,85,1.962 -desde_educacion_con_milla,9.935332557,-84.04558285,86,1.996 -desde_educacion_con_milla,9.935581742,-84.04553109,87,2.025 -desde_educacion_con_milla,9.935653544,-84.04545872,88,2.036 -desde_educacion_con_milla,9.936014278,-84.04539356,89,2.076 -desde_educacion_con_milla,9.936182507,-84.04535742,90,2.095 -desde_educacion_con_milla,9.936240561,-84.04535681,91,2.102 -desde_educacion_con_milla,9.936297954,-84.04536426,92,2.108 -desde_educacion_con_milla,9.936593183,-84.04552151,93,2.145 -desde_educacion_con_milla,9.936679768,-84.04557034,94,2.156 -desde_educacion_con_milla,9.93676924,-84.04559574,95,2.166 -desde_educacion_con_milla,9.936852939,-84.04558792,96,2.176 -desde_educacion_con_milla,9.936941736,-84.04554913,97,2.186 -desde_educacion_con_milla,9.937081235,-84.04544462,98,2.206 -desde_educacion_con_milla,9.937243131,-84.04528172,99,2.231 -desde_educacion_con_milla,9.937346071,-84.04512544,100,2.251 -desde_educacion_con_milla,9.937487494,-84.04487247,101,2.283 -desde_educacion_con_milla,9.937618608,-84.04464841,102,2.312 -desde_educacion_con_milla,9.937810982,-84.04430023,103,2.355 -desde_educacion_con_milla,9.937991463,-84.04399346,104,2.395 -desde_educacion_con_milla,9.93810165,-84.04380346,105,2.419 -desde_educacion_con_milla,9.937964076,-84.04361691,106,2.444 -desde_educacion_con_milla,9.937911163,-84.04344403,107,2.464 -desde_educacion_con_milla,9.93788615,-84.04321938,108,2.489 -desde_educacion_con_milla,9.937926556,-84.04293614,109,2.52 -desde_educacion_con_milla,9.938000992,-84.04248125,110,2.571 -desde_educacion_con_milla,9.938138184,-84.04217726,111,2.607 -desde_educacion_con_milla,9.938164159,-84.04199852,112,2.627 -desde_educacion_con_milla,9.938154539,-84.04185104,113,2.643 -desde_educacion_con_milla,9.938125677,-84.04172602,114,2.657 -desde_educacion_con_milla,9.93807565,-84.04165276,115,2.667 -desde_educacion_con_milla,9.938042897,-84.04163843,116,2.671 -desde_educacion_con_milla,9.938013116,-84.04163616,117,2.675 -desde_educacion_con_milla,9.937921721,-84.04163811,118,2.685 -desde_educacion_con_milla,9.93790248,-84.04121227,119,2.731 -desde_educacion_con_milla,9.937894783,-84.04106869,120,2.747 -desde_educacion_con_milla,9.938300469,-84.0409691,121,2.793 -desde_educacion_con_milla,9.938461686,-84.04092984,122,2.812 -desde_educacion_con_milla,9.93868873,-84.04096793,123,2.837 -desde_educacion_con_milla,9.938848154,-84.04113702,124,2.863 -desde_educacion_con_milla,9.939153836,-84.04165686,125,2.929 -desde_educacion_con_milla,9.939285212,-84.04179358,126,2.95 -desde_educacion_con_milla,9.939429776,-84.04188769,127,2.969 -desde_educacion_con_milla,9.939501507,-84.04190897,128,2.977 -desde_educacion_con_milla,9.939503714,-84.04224284,129,3.014 -desde_educacion_con_milla,9.939486133,-84.04252047,130,3.044 -desde_educacion_con_milla,9.939445293,-84.04302463,131,3.1 -desde_educacion_con_milla,9.939423275,-84.04333563,132,3.134 -desde_educacion_con_milla,9.939724422,-84.04326556,133,3.168 -desde_educacion_con_milla,9.939787324,-84.04329917,134,3.176 -desde_educacion_con_milla,9.939817119,-84.04338096,135,3.186 -desde_educacion_con_milla,9.939919748,-84.04375964,136,3.229 -desde_educacion_con_milla,9.940070432,-84.04431707,137,3.292 -desde_educacion_con_milla,9.940165337,-84.04467447,138,3.332 -desde_educacion_con_milla,9.940270173,-84.04482683,139,3.353 -desde_educacion_con_milla,9.940381696,-84.04524409,140,3.4 -desde_educacion_con_milla,9.940488739,-84.04563286,141,3.444 -desde_educacion_con_milla,9.940638821,-84.04559924,142,3.461 -desde_educacion_con_milla,9.940796627,-84.04506819,143,3.522 -desde_educacion_con_milla,9.940950712,-84.04475033,144,3.561 -desde_educacion_con_milla,9.941052861,-84.04465543,145,3.576 -desde_educacion_con_milla,9.941574113,-84.04469186,146,3.634 -desde_educacion_con_milla,9.942422273,-84.04474747,147,3.728 -desde_educacion_con_milla,9.942831072,-84.0447699,148,3.773 -desde_educacion_con_milla,9.943006971,-84.04473506,149,3.793 -desde_educacion_con_milla,9.943260092,-84.04465448,150,3.823 -desde_educacion_con_milla,9.943514688,-84.04454073,151,3.853 -desde_educacion_con_milla,9.943669135,-84.04447104,152,3.872 -desde_educacion_con_milla,9.943799985,-84.04475416,153,3.906 -desde_educacion_con_milla,9.943881499,-84.04488483,154,3.923 -desde_educacion_con_milla,9.943966007,-84.0449552,155,3.935 -desde_educacion_con_milla,9.944334192,-84.04499327,156,3.976 -desde_educacion_con_milla,9.944573988,-84.04501381,157,4.003 -desde_educacion_con_milla,9.944952213,-84.0450105,158,4.045 -desde_educacion_con_milla,9.945036988,-84.04508333,159,4.057 -desde_educacion_con_milla,9.945067963,-84.04538953,160,4.091 -desde_educacion_con_milla,9.945094048,-84.04550208,161,4.104 -desde_educacion_con_milla,9.94516741,-84.04554181,162,4.113 -desde_educacion_con_milla,9.945694114,-84.04550366,163,4.171 -desde_educacion_con_milla,9.945762357,-84.04546455,164,4.18 -desde_educacion_con_milla,9.945869399,-84.04525505,165,4.206 -desde_educacion_con_milla,9.945945542,-84.04517774,166,4.218 -desde_educacion_con_milla,9.946290851,-84.04515309,167,4.256 -desde_educacion_con_milla,9.94638849,-84.04516367,168,4.267 -desde_educacion_con_milla,9.946449183,-84.04520288,169,4.275 -desde_educacion_con_milla,9.946488657,-84.04524629,170,4.281 -desde_artes_sin_milla,9.935512403,-84.05223246,0,0 -desde_artes_sin_milla,9.935530387,-84.05230248,1,0.008 -desde_artes_sin_milla,9.935543179,-84.05233542,2,0.012 -desde_artes_sin_milla,9.93560007,-84.05239526,3,0.021 -desde_artes_sin_milla,9.935652984,-84.05242841,4,0.028 -desde_artes_sin_milla,9.935719143,-84.05244045,5,0.035 -desde_artes_sin_milla,9.935837192,-84.05241712,6,0.049 -desde_artes_sin_milla,9.93594643,-84.05238013,7,0.061 -desde_artes_sin_milla,9.936088345,-84.05233436,8,0.078 -desde_artes_sin_milla,9.936204222,-84.05229771,9,0.091 -desde_artes_sin_milla,9.93629305,-84.05227116,10,0.101 -desde_artes_sin_milla,9.936392264,-84.05224052,11,0.113 -desde_artes_sin_milla,9.936530936,-84.05223675,12,0.128 -desde_artes_sin_milla,9.936595894,-84.05225901,13,0.136 -desde_artes_sin_milla,9.936616151,-84.05234126,14,0.145 -desde_artes_sin_milla,9.936587627,-84.05242604,15,0.155 -desde_artes_sin_milla,9.936535539,-84.05244996,16,0.161 -desde_artes_sin_milla,9.936448674,-84.05244735,17,0.171 -desde_artes_sin_milla,9.936358139,-84.05243845,18,0.181 -desde_artes_sin_milla,9.936329573,-84.05242608,19,0.184 -desde_artes_sin_milla,9.936300677,-84.05242544,20,0.188 -desde_artes_sin_milla,9.936176739,-84.05244554,21,0.201 -desde_artes_sin_milla,9.936069383,-84.05246922,22,0.214 -desde_artes_sin_milla,9.935866288,-84.05251342,23,0.237 -desde_artes_sin_milla,9.93580531,-84.0525277,24,0.244 -desde_artes_sin_milla,9.935717203,-84.05253515,25,0.253 -desde_artes_sin_milla,9.935629328,-84.0525171,26,0.263 -desde_artes_sin_milla,9.935529586,-84.05243348,27,0.278 -desde_artes_sin_milla,9.935455757,-84.05235067,28,0.29 -desde_artes_sin_milla,9.935416382,-84.05224462,29,0.302 -desde_artes_sin_milla,9.935412364,-84.05209777,30,0.318 -desde_artes_sin_milla,9.935360935,-84.05176737,31,0.355 -desde_artes_sin_milla,9.935335374,-84.05159575,32,0.374 -desde_artes_sin_milla,9.935278321,-84.05145788,33,0.39 -desde_artes_sin_milla,9.935373946,-84.05105156,34,0.436 -desde_artes_sin_milla,9.935485096,-84.05064885,35,0.482 -desde_artes_sin_milla,9.935556569,-84.05034469,36,0.516 -desde_artes_sin_milla,9.93560639,-84.05014074,37,0.539 -desde_artes_sin_milla,9.93564014,-84.04991884,38,0.564 -desde_artes_sin_milla,9.935552371,-84.04952407,39,0.608 -desde_artes_sin_milla,9.935512717,-84.04931696,40,0.631 -desde_artes_sin_milla,9.935447597,-84.04902551,41,0.664 -desde_artes_sin_milla,9.935389888,-84.04878998,42,0.691 -desde_artes_sin_milla,9.935373013,-84.04864477,43,0.707 -desde_artes_sin_milla,9.935276585,-84.04863661,44,0.718 -desde_artes_sin_milla,9.93529275,-84.04837842,45,0.746 -desde_artes_sin_milla,9.935246946,-84.04812389,46,0.774 -desde_artes_sin_milla,9.935141658,-84.04780572,47,0.811 -desde_artes_sin_milla,9.935003168,-84.04738078,48,0.86 -desde_artes_sin_milla,9.93492049,-84.04708592,49,0.894 -desde_artes_sin_milla,9.934796571,-84.04641957,50,0.968 -desde_artes_sin_milla,9.934686047,-84.0458857,51,1.028 -desde_artes_sin_milla,9.93461247,-84.0456137,52,1.059 -desde_artes_sin_milla,9.934810229,-84.04560814,53,1.081 -desde_artes_sin_milla,9.934953796,-84.04560837,54,1.096 -desde_artes_sin_milla,9.935021221,-84.0455874,55,1.104 -desde_artes_sin_milla,9.9352507,-84.04558155,56,1.13 -desde_artes_sin_milla,9.935336212,-84.04557911,57,1.139 -desde_artes_sin_milla,9.935579694,-84.04552771,58,1.167 -desde_artes_sin_milla,9.935661417,-84.04545454,59,1.179 -desde_artes_sin_milla,9.935938804,-84.04540337,60,1.21 -desde_artes_sin_milla,9.936179876,-84.04535619,61,1.237 -desde_artes_sin_milla,9.936298784,-84.04536222,62,1.25 -desde_artes_sin_milla,9.936470748,-84.04545441,63,1.272 -desde_artes_sin_milla,9.936647015,-84.04554916,64,1.294 -desde_artes_sin_milla,9.936679962,-84.04556711,65,1.298 -desde_artes_sin_milla,9.936770765,-84.0455924,66,1.308 -desde_artes_sin_milla,9.936850195,-84.0455876,67,1.317 -desde_artes_sin_milla,9.936939391,-84.04554599,68,1.328 -desde_artes_sin_milla,9.937082169,-84.04544057,69,1.348 -desde_artes_sin_milla,9.937241751,-84.0452792,70,1.373 -desde_artes_sin_milla,9.93733175,-84.04514377,71,1.391 -desde_artes_sin_milla,9.937478803,-84.04488435,72,1.423 -desde_artes_sin_milla,9.937593838,-84.04468485,73,1.449 -desde_artes_sin_milla,9.937757222,-84.04438772,74,1.486 -desde_artes_sin_milla,9.937926502,-84.04409809,75,1.523 -desde_artes_sin_milla,9.938099192,-84.04379999,76,1.561 -desde_artes_sin_milla,9.937960979,-84.0436148,77,1.586 -desde_artes_sin_milla,9.937911158,-84.04344348,78,1.606 -desde_artes_sin_milla,9.937885372,-84.04321887,79,1.63 -desde_artes_sin_milla,9.937924747,-84.04293823,80,1.661 -desde_artes_sin_milla,9.937984211,-84.0425693,81,1.702 -desde_artes_sin_milla,9.93799718,-84.04247601,82,1.713 -desde_artes_sin_milla,9.938136196,-84.04217743,83,1.749 -desde_artes_sin_milla,9.938161511,-84.04199723,84,1.769 -desde_artes_sin_milla,9.938153476,-84.04184875,85,1.785 -desde_artes_sin_milla,9.938126958,-84.0417223,86,1.799 -desde_artes_sin_milla,9.93807553,-84.04164969,87,1.809 -desde_artes_sin_milla,9.938014459,-84.04163175,88,1.816 -desde_artes_sin_milla,9.937918979,-84.04163505,89,1.827 -desde_artes_sin_milla,9.937895405,-84.04106877,90,1.889 -desde_artes_sin_milla,9.938461023,-84.04092781,91,1.953 -desde_artes_sin_milla,9.938687705,-84.04096368,92,1.979 -desde_artes_sin_milla,9.93884703,-84.04113178,93,2.004 -desde_artes_sin_milla,9.939150093,-84.04165451,94,2.071 -desde_artes_sin_milla,9.939284373,-84.04179402,95,2.092 -desde_artes_sin_milla,9.939423391,-84.04188441,96,2.11 -desde_artes_sin_milla,9.939499929,-84.04190661,97,2.119 -desde_artes_sin_milla,9.939499929,-84.04224756,98,2.156 -desde_artes_sin_milla,9.939492119,-84.04252349,99,2.187 -desde_artes_sin_milla,9.939424952,-84.04332908,100,2.275 -desde_artes_sin_milla,9.93972312,-84.04326169,101,2.309 -desde_artes_sin_milla,9.939784734,-84.04329387,102,2.317 -desde_artes_sin_milla,9.939818634,-84.0433818,103,2.327 -desde_artes_sin_milla,9.939988247,-84.04403088,104,2.401 -desde_artes_sin_milla,9.94015975,-84.04466582,105,2.473 -desde_artes_sin_milla,9.940269102,-84.04482455,106,2.494 -desde_artes_sin_milla,9.940364903,-84.04518735,107,2.535 -desde_artes_sin_milla,9.940487693,-84.04562904,108,2.586 -desde_artes_sin_milla,9.940636352,-84.04559314,109,2.602 -desde_artes_sin_milla,9.940792345,-84.04506904,110,2.662 -desde_artes_sin_milla,9.940949184,-84.04475055,111,2.701 -desde_artes_sin_milla,9.941045328,-84.04465204,112,2.717 -desde_artes_sin_milla,9.941130815,-84.04465719,113,2.726 -desde_artes_sin_milla,9.941443215,-84.04467709,114,2.761 -desde_artes_sin_milla,9.941954998,-84.04471422,115,2.817 -desde_artes_sin_milla,9.942339483,-84.04473712,116,2.86 -desde_artes_sin_milla,9.942705619,-84.04476242,117,2.901 -desde_artes_sin_milla,9.942827419,-84.0447663,118,2.914 -desde_artes_sin_milla,9.943008765,-84.04473424,119,2.934 -desde_artes_sin_milla,9.943226193,-84.04466163,120,2.96 -desde_artes_sin_milla,9.943361889,-84.04460708,121,2.976 -desde_artes_sin_milla,9.943669389,-84.04446646,122,3.013 -desde_artes_sin_milla,9.943797636,-84.04474994,123,3.047 -desde_artes_sin_milla,9.943877031,-84.04487818,124,3.064 -desde_artes_sin_milla,9.943965448,-84.04494963,125,3.077 -desde_artes_sin_milla,9.944544352,-84.04500742,126,3.141 -desde_artes_sin_milla,9.944949227,-84.04500985,127,3.186 -desde_artes_sin_milla,9.945034889,-84.04507261,128,3.197 -desde_artes_sin_milla,9.945066359,-84.0453995,129,3.233 -desde_artes_sin_milla,9.945093736,-84.04549991,130,3.245 -desde_artes_sin_milla,9.94516588,-84.04553849,131,3.254 -desde_artes_sin_milla,9.945693345,-84.04550164,132,3.312 -desde_artes_sin_milla,9.945768181,-84.0454572,133,3.322 -desde_artes_sin_milla,9.94581919,-84.04535716,134,3.334 -desde_artes_sin_milla,9.945868217,-84.04524941,135,3.347 -desde_artes_sin_milla,9.945945495,-84.04517499,136,3.359 -desde_artes_sin_milla,9.946289175,-84.04514989,137,3.397 -desde_artes_sin_milla,9.946387888,-84.04516176,138,3.408 -desde_artes_sin_milla,9.94644529,-84.04519941,139,3.416 -desde_artes_sin_milla,9.946490124,-84.04525112,140,3.423 -desde_artes_con_milla,9.935511296,-84.0522203,0,0 -desde_artes_con_milla,9.935531077,-84.05229271,1,0.008 -desde_artes_con_milla,9.935547228,-84.05233471,2,0.013 -desde_artes_con_milla,9.935599989,-84.0523892,3,0.022 -desde_artes_con_milla,9.935656657,-84.05242661,4,0.029 -desde_artes_con_milla,9.935724005,-84.05243879,5,0.037 -desde_artes_con_milla,9.935837911,-84.05241631,6,0.049 -desde_artes_con_milla,9.935893485,-84.05240042,7,0.056 -desde_artes_con_milla,9.935947739,-84.05238018,8,0.062 -desde_artes_con_milla,9.936186396,-84.05230283,9,0.09 -desde_artes_con_milla,9.936396846,-84.05224068,10,0.114 -desde_artes_con_milla,9.93653552,-84.05223613,11,0.13 -desde_artes_con_milla,9.936736822,-84.05230766,12,0.153 -desde_artes_con_milla,9.937085597,-84.05243187,13,0.194 -desde_artes_con_milla,9.937335777,-84.05252885,14,0.224 -desde_artes_con_milla,9.937579699,-84.05264387,15,0.253 -desde_artes_con_milla,9.937748583,-84.05270435,16,0.273 -desde_artes_con_milla,9.937791882,-84.0527108,17,0.278 -desde_artes_con_milla,9.937871324,-84.05271993,18,0.287 -desde_artes_con_milla,9.937950765,-84.05272437,19,0.296 -desde_artes_con_milla,9.938022425,-84.05271684,20,0.304 -desde_artes_con_milla,9.938094084,-84.05270361,21,0.312 -desde_artes_con_milla,9.938156222,-84.05263414,22,0.322 -desde_artes_con_milla,9.938248661,-84.05244418,23,0.345 -desde_artes_con_milla,9.938402129,-84.05212105,24,0.385 -desde_artes_con_milla,9.938590227,-84.05187115,25,0.419 -desde_artes_con_milla,9.938716437,-84.0517146,26,0.441 -desde_artes_con_milla,9.938837692,-84.05155169,27,0.463 -desde_artes_con_milla,9.938905385,-84.05144675,28,0.477 -desde_artes_con_milla,9.938977747,-84.05129822,29,0.495 -desde_artes_con_milla,9.939018648,-84.05112813,30,0.514 -desde_artes_con_milla,9.939054042,-84.05091812,31,0.538 -desde_artes_con_milla,9.939083931,-84.05035914,32,0.599 -desde_artes_con_milla,9.939102723,-84.05011836,33,0.626 -desde_artes_con_milla,9.939107064,-84.04994028,34,0.645 -desde_artes_con_milla,9.939107111,-84.04976488,35,0.664 -desde_artes_con_milla,9.939067153,-84.04964397,36,0.678 -desde_artes_con_milla,9.938976995,-84.04949999,37,0.697 -desde_artes_con_milla,9.938798652,-84.04928391,38,0.728 -desde_artes_con_milla,9.938526315,-84.04892596,39,0.777 -desde_artes_con_milla,9.93831256,-84.04864151,40,0.817 -desde_artes_con_milla,9.938161499,-84.04846456,41,0.842 -desde_artes_con_milla,9.938012763,-84.04830412,42,0.866 -desde_artes_con_milla,9.937673149,-84.04794564,43,0.921 -desde_artes_con_milla,9.937628967,-84.0479035,44,0.927 -desde_artes_con_milla,9.937581814,-84.0478664,45,0.934 -desde_artes_con_milla,9.937540709,-84.04783703,46,0.94 -desde_artes_con_milla,9.937497954,-84.04781101,47,0.945 -desde_artes_con_milla,9.937454966,-84.04779011,48,0.95 -desde_artes_con_milla,9.937365083,-84.04775983,49,0.961 -desde_artes_con_milla,9.93726069,-84.04775927,50,0.972 -desde_artes_con_milla,9.937074793,-84.04779371,51,0.993 -desde_artes_con_milla,9.936815447,-84.04787152,52,1.023 -desde_artes_con_milla,9.936573052,-84.04794763,53,1.051 -desde_artes_con_milla,9.936222343,-84.04806426,54,1.092 -desde_artes_con_milla,9.93602464,-84.0481252,55,1.115 -desde_artes_con_milla,9.9358559,-84.04818295,56,1.135 -desde_artes_con_milla,9.93570894,-84.04825229,57,1.153 -desde_artes_con_milla,9.935631897,-84.04828697,58,1.162 -desde_artes_con_milla,9.935560487,-84.04835316,59,1.173 -desde_artes_con_milla,9.935498391,-84.04843511,60,1.184 -desde_artes_con_milla,9.935465273,-84.04855699,61,1.198 -desde_artes_con_milla,9.935454924,-84.04865471,62,1.209 -desde_artes_con_milla,9.935280019,-84.04863475,63,1.228 -desde_artes_con_milla,9.935297613,-84.04837943,64,1.256 -desde_artes_con_milla,9.935252735,-84.04812867,65,1.284 -desde_artes_con_milla,9.935127658,-84.04774618,66,1.328 -desde_artes_con_milla,9.934927033,-84.04710558,67,1.402 -desde_artes_con_milla,9.934789491,-84.04635463,68,1.486 -desde_artes_con_milla,9.934690709,-84.04587466,69,1.539 -desde_artes_con_milla,9.934620607,-84.04561433,70,1.569 -desde_artes_con_milla,9.934892898,-84.04560703,71,1.599 -desde_artes_con_milla,9.934959509,-84.04560615,72,1.606 -desde_artes_con_milla,9.935025733,-84.04558779,73,1.614 -desde_artes_con_milla,9.935339847,-84.04557938,74,1.649 -desde_artes_con_milla,9.935531062,-84.0455367,75,1.67 -desde_artes_con_milla,9.935584897,-84.04552568,76,1.677 -desde_artes_con_milla,9.93566585,-84.04545191,77,1.689 -desde_artes_con_milla,9.936030201,-84.04538702,78,1.73 -desde_artes_con_milla,9.93619941,-84.04535041,79,1.749 -desde_artes_con_milla,9.936300113,-84.04536177,80,1.76 -desde_artes_con_milla,9.936519481,-84.0454755,81,1.787 -desde_artes_con_milla,9.936683687,-84.04556534,82,1.808 -desde_artes_con_milla,9.93677259,-84.04558918,83,1.818 -desde_artes_con_milla,9.936853106,-84.04558748,84,1.827 -desde_artes_con_milla,9.936945083,-84.04554372,85,1.838 -desde_artes_con_milla,9.937083835,-84.04544008,86,1.857 -desde_artes_con_milla,9.937216351,-84.04530981,87,1.878 -desde_artes_con_milla,9.937248196,-84.04527619,88,1.883 -desde_artes_con_milla,9.937347164,-84.04512292,89,1.903 -desde_artes_con_milla,9.937521196,-84.04481873,90,1.941 -desde_artes_con_milla,9.937674261,-84.04454168,91,1.976 -desde_artes_con_milla,9.937858338,-84.04421863,92,2.017 -desde_artes_con_milla,9.938104358,-84.04379837,93,2.07 -desde_artes_con_milla,9.937966321,-84.04361257,94,2.096 -desde_artes_con_milla,9.937914321,-84.0434415,95,2.116 -desde_artes_con_milla,9.937888322,-84.04321841,96,2.14 -desde_artes_con_milla,9.937927895,-84.04293915,97,2.171 -desde_artes_con_milla,9.937995971,-84.0425253,98,2.217 -desde_artes_con_milla,9.938004885,-84.04247243,99,2.223 -desde_artes_con_milla,9.938139564,-84.04217506,100,2.259 -desde_artes_con_milla,9.938165563,-84.0419988,101,2.278 -desde_artes_con_milla,9.938158777,-84.04184686,102,2.295 -desde_artes_con_milla,9.938127745,-84.04172084,103,2.309 -desde_artes_con_milla,9.938104654,-84.04168273,104,2.314 -desde_artes_con_milla,9.938078261,-84.04164931,105,2.319 -desde_artes_con_milla,9.938047381,-84.04163493,106,2.323 -desde_artes_con_milla,9.93801452,-84.04163228,107,2.326 -desde_artes_con_milla,9.937924368,-84.04163466,108,2.336 -desde_artes_con_milla,9.937900824,-84.04106734,109,2.399 -desde_artes_con_milla,9.938464253,-84.0409284,110,2.463 -desde_artes_con_milla,9.938686514,-84.04096243,111,2.488 -desde_artes_con_milla,9.938852477,-84.04113416,112,2.514 -desde_artes_con_milla,9.939155395,-84.04164745,113,2.579 -desde_artes_con_milla,9.939288611,-84.04178898,114,2.601 -desde_artes_con_milla,9.939435424,-84.04188132,115,2.62 -desde_artes_con_milla,9.939502447,-84.04190563,116,2.628 -desde_artes_con_milla,9.939502446,-84.04223937,117,2.664 -desde_artes_con_milla,9.939494467,-84.04251965,118,2.695 -desde_artes_con_milla,9.939454572,-84.0429992,119,2.748 -desde_artes_con_milla,9.939427125,-84.04333187,120,2.784 -desde_artes_con_milla,9.939727899,-84.04326057,121,2.819 -desde_artes_con_milla,9.939790511,-84.04329413,122,2.826 -desde_artes_con_milla,9.939822528,-84.04337539,123,2.836 -desde_artes_con_milla,9.93991293,-84.04371479,124,2.875 -desde_artes_con_milla,9.940020281,-84.04412875,125,2.922 -desde_artes_con_milla,9.940166448,-84.04466698,126,2.983 -desde_artes_con_milla,9.940270787,-84.04482375,127,3.003 -desde_artes_con_milla,9.940488641,-84.04562959,128,3.095 -desde_artes_con_milla,9.94064167,-84.04559428,129,3.112 -desde_artes_con_milla,9.940797715,-84.04506926,130,3.172 -desde_artes_con_milla,9.940950371,-84.04474815,131,3.212 -desde_artes_con_milla,9.941051927,-84.04465211,132,3.227 -desde_artes_con_milla,9.941711422,-84.0446963,133,3.3 -desde_artes_con_milla,9.942819159,-84.04476836,134,3.423 -desde_artes_con_milla,9.943012665,-84.04473179,135,3.445 -desde_artes_con_milla,9.943264846,-84.04464614,136,3.474 -desde_artes_con_milla,9.943672352,-84.04446647,137,3.523 -desde_artes_con_milla,9.943801403,-84.04475227,138,3.558 -desde_artes_con_milla,9.943879637,-84.04488143,139,3.574 -desde_artes_con_milla,9.943969525,-84.04495039,140,3.587 -desde_artes_con_milla,9.944334334,-84.04498791,141,3.627 -desde_artes_con_milla,9.944574114,-84.04500803,142,3.654 -desde_artes_con_milla,9.944953901,-84.04500803,143,3.696 -desde_artes_con_milla,9.945045717,-84.04507865,144,3.709 -desde_artes_con_milla,9.945070757,-84.04539643,145,3.744 -desde_artes_con_milla,9.94509858,-84.04549954,146,3.755 -desde_artes_con_milla,9.945173016,-84.04553609,147,3.764 -desde_artes_con_milla,9.945695994,-84.04550121,148,3.822 -desde_artes_con_milla,9.945767319,-84.04545794,149,3.832 -desde_artes_con_milla,9.945874438,-84.04524749,150,3.858 -desde_artes_con_milla,9.945946778,-84.04517546,151,3.869 -desde_artes_con_milla,9.946292046,-84.04514697,152,3.907 -desde_artes_con_milla,9.946390818,-84.0451611,153,3.918 -desde_artes_con_milla,9.946450638,-84.04519923,154,3.926 -desde_artes_con_milla,9.946497389,-84.04525622,155,3.934 -hacia_educacion,9.946514503,-84.04527092,0,0 -hacia_educacion,9.946571393,-84.04535863,1,0.011 -hacia_educacion,9.946705231,-84.04553219,2,0.036 -hacia_educacion,9.946859775,-84.04574288,3,0.064 -hacia_educacion,9.94692114,-84.04582526,4,0.076 -hacia_educacion,9.946998481,-84.04587491,5,0.086 -hacia_educacion,9.947091746,-84.04587029,6,0.096 -hacia_educacion,9.947332867,-84.0456763,7,0.13 -hacia_educacion,9.947349928,-84.04558161,8,0.141 -hacia_educacion,9.947316944,-84.04548115,9,0.152 -hacia_educacion,9.94706331,-84.04515205,10,0.198 -hacia_educacion,9.946956398,-84.04493496,11,0.225 -hacia_educacion,9.946857398,-84.04479404,12,0.244 -hacia_educacion,9.946749347,-84.04471205,13,0.259 -hacia_educacion,9.946639023,-84.04469011,14,0.271 -hacia_educacion,9.946584807,-84.04470367,15,0.277 -hacia_educacion,9.946525663,-84.04474408,16,0.285 -hacia_educacion,9.946310637,-84.04479562,17,0.31 -hacia_educacion,9.946078613,-84.04481756,18,0.335 -hacia_educacion,9.94606269,-84.04481987,19,0.337 -hacia_educacion,9.946076338,-84.04516167,20,0.375 -hacia_educacion,9.945948163,-84.04517947,21,0.389 -hacia_educacion,9.945876509,-84.04524991,22,0.4 -hacia_educacion,9.945777557,-84.04545661,23,0.425 -hacia_educacion,9.945700409,-84.04550925,24,0.435 -hacia_educacion,9.94516698,-84.04553927,25,0.494 -hacia_educacion,9.945089173,-84.04550237,26,0.504 -hacia_educacion,9.945057326,-84.04538227,27,0.518 -hacia_educacion,9.945028892,-84.04508089,28,0.551 -hacia_educacion,9.94495155,-84.04501738,29,0.562 -hacia_educacion,9.944720005,-84.04501577,30,0.587 -hacia_educacion,9.944256798,-84.04498689,31,0.639 -hacia_educacion,9.943895946,-84.0449568,32,0.679 -hacia_educacion,9.943384732,-84.04491979,33,0.736 -hacia_educacion,9.942615001,-84.04487734,34,0.821 -hacia_educacion,9.94204156,-84.04483903,35,0.884 -hacia_educacion,9.941376986,-84.04480244,36,0.958 -hacia_educacion,9.940961024,-84.04477716,37,1.004 -hacia_educacion,9.94082182,-84.04504462,38,1.037 -hacia_educacion,9.940655238,-84.04560533,39,1.101 -hacia_educacion,9.940483146,-84.045635,40,1.121 -hacia_educacion,9.940378041,-84.0452283,41,1.167 -hacia_educacion,9.940270386,-84.04482279,42,1.213 -hacia_educacion,9.940163288,-84.04466418,43,1.234 -hacia_educacion,9.940101811,-84.0444166,44,1.262 -hacia_educacion,9.93971667,-84.04452633,45,1.306 -hacia_educacion,9.93932936,-84.04462211,46,1.35 -hacia_educacion,9.939204089,-84.04465454,47,1.364 -hacia_educacion,9.939156824,-84.04464565,48,1.37 -hacia_educacion,9.939125094,-84.04461595,49,1.375 -hacia_educacion,9.939110218,-84.04456377,50,1.381 -hacia_educacion,9.939196157,-84.04433542,51,1.407 -hacia_educacion,9.93907879,-84.04388058,52,1.459 -hacia_educacion,9.938958911,-84.04346474,53,1.506 -hacia_educacion,9.93927927,-84.04336897,54,1.543 -hacia_educacion,9.939421427,-84.04332516,55,1.56 -hacia_educacion,9.939448166,-84.04298885,56,1.597 -hacia_educacion,9.93949676,-84.04247041,57,1.654 -hacia_educacion,9.939501978,-84.04233876,58,1.668 -hacia_educacion,9.939504719,-84.04219587,59,1.684 -hacia_educacion,9.939509373,-84.04205957,60,1.699 -hacia_educacion,9.939505605,-84.04192376,61,1.714 -hacia_educacion,9.939326947,-84.0418526,62,1.735 -hacia_educacion,9.939164417,-84.04168712,63,1.761 -hacia_educacion,9.939043648,-84.04150304,64,1.785 -hacia_educacion,9.93882653,-84.04113606,65,1.832 -hacia_educacion,9.938777611,-84.04107114,66,1.841 -hacia_educacion,9.938724399,-84.04101929,67,1.849 -hacia_educacion,9.938607394,-84.04095486,68,1.863 -hacia_educacion,9.938477125,-84.04094648,69,1.878 -hacia_educacion,9.938317483,-84.04098474,70,1.896 -hacia_educacion,9.937905268,-84.04109753,71,1.943 -hacia_educacion,9.937915435,-84.0413721,72,1.973 -hacia_educacion,9.937929713,-84.0416234,73,2.001 -hacia_educacion,9.938019434,-84.04162143,74,2.011 -hacia_educacion,9.938080136,-84.04163852,75,2.018 -hacia_educacion,9.938133356,-84.04171438,76,2.028 -hacia_educacion,9.938149169,-84.04176617,77,2.034 -hacia_educacion,9.938164982,-84.04184023,78,2.042 -hacia_educacion,9.938171104,-84.0419552,79,2.055 -hacia_educacion,9.938164472,-84.04206207,80,2.067 -hacia_educacion,9.938145583,-84.04217255,81,2.079 -hacia_educacion,9.938065464,-84.04235903,82,2.101 -hacia_educacion,9.938008689,-84.0424755,83,2.116 -hacia_educacion,9.937984553,-84.04262776,84,2.132 -hacia_educacion,9.937933032,-84.04296809,85,2.17 -hacia_educacion,9.937892559,-84.0431865,86,2.195 -hacia_educacion,9.937922785,-84.04342622,87,2.221 -hacia_educacion,9.937936125,-84.0435141,88,2.231 -hacia_educacion,9.937968436,-84.04360457,89,2.241 -hacia_educacion,9.938110292,-84.04379465,90,2.267 -hacia_educacion,9.937963175,-84.04404422,91,2.299 -hacia_educacion,9.937788887,-84.04434975,92,2.338 -hacia_educacion,9.937590562,-84.04470401,93,2.383 -hacia_educacion,9.937438898,-84.04497738,94,2.417 -hacia_educacion,9.937341062,-84.04514423,95,2.438 -hacia_educacion,9.937252201,-84.04527007,96,2.455 -hacia_educacion,9.937103832,-84.04542324,97,2.479 -hacia_educacion,9.937033022,-84.04548029,98,2.489 -hacia_educacion,9.936926696,-84.04555592,99,2.503 -hacia_educacion,9.936853202,-84.04558681,100,2.512 -hacia_educacion,9.936772141,-84.04559103,101,2.521 -hacia_educacion,9.936678928,-84.0455674,102,2.531 -hacia_educacion,9.936529378,-84.04548739,103,2.55 -hacia_educacion,9.93646684,-84.04544916,104,2.558 -hacia_educacion,9.936400339,-84.04541294,105,2.567 -hacia_educacion,9.936342972,-84.04537761,106,2.574 -hacia_educacion,9.936295761,-84.04536238,107,2.579 -hacia_educacion,9.936243633,-84.04535126,108,2.585 -hacia_educacion,9.936186221,-84.0453539,109,2.592 -hacia_educacion,9.936038835,-84.04538903,110,2.608 -hacia_educacion,9.935804145,-84.04543089,111,2.635 -hacia_educacion,9.935653857,-84.0454587,112,2.652 -hacia_educacion,9.9355839,-84.04552525,113,2.662 -hacia_educacion,9.935471845,-84.04557985,114,2.676 -hacia_educacion,9.935339062,-84.04563775,115,2.692 -hacia_educacion,9.935011189,-84.04563833,116,2.728 -hacia_educacion,9.93495719,-84.04560862,117,2.735 -hacia_educacion,9.934650064,-84.0456169,118,2.769 -hacia_educacion,9.934770956,-84.0461341,119,2.827 -hacia_educacion,9.934904033,-84.0468177,120,2.904 -hacia_educacion,9.93495932,-84.0471114,121,2.937 -hacia_educacion,9.935058275,-84.04746012,122,2.976 -hacia_educacion,9.935198974,-84.04788997,123,3.026 -hacia_educacion,9.935274491,-84.04812847,124,3.053 -hacia_educacion,9.935315438,-84.04837789,125,3.081 -hacia_educacion,9.935297557,-84.04862494,126,3.108 -hacia_educacion,9.935454251,-84.04864306,127,3.126 -hacia_educacion,9.93547036,-84.04880008,128,3.143 -hacia_educacion,9.935532342,-84.04904378,129,3.171 -hacia_artes,9.946514395,-84.04527931,0,0 -hacia_artes,9.946569793,-84.04536359,1,0.011 -hacia_artes,9.94668819,-84.04551336,2,0.032 -hacia_artes,9.946778136,-84.04563336,3,0.049 -hacia_artes,9.946921104,-84.04582882,4,0.075 -hacia_artes,9.946996671,-84.04587843,5,0.085 -hacia_artes,9.947092905,-84.04587296,6,0.096 -hacia_artes,9.947221934,-84.04577478,7,0.114 -hacia_artes,9.947334696,-84.04567661,8,0.13 -hacia_artes,9.947352403,-84.04558125,9,0.141 -hacia_artes,9.947316988,-84.04548355,10,0.152 -hacia_artes,9.947064016,-84.04515548,11,0.198 -hacia_artes,9.94695754,-84.04493889,12,0.224 -hacia_artes,9.946855916,-84.04479273,13,0.244 -hacia_artes,9.946746915,-84.04471329,14,0.259 -hacia_artes,9.946638362,-84.04469297,15,0.271 -hacia_artes,9.946585391,-84.04470548,16,0.277 -hacia_artes,9.946524571,-84.0447469,17,0.285 -hacia_artes,9.946309487,-84.04479771,18,0.31 -hacia_artes,9.946065074,-84.0448235,19,0.337 -hacia_artes,9.946078932,-84.04516429,20,0.374 -hacia_artes,9.945947266,-84.04518429,21,0.389 -hacia_artes,9.945875667,-84.04525385,22,0.4 -hacia_artes,9.945777959,-84.04546017,23,0.425 -hacia_artes,9.945699431,-84.04551254,24,0.435 -hacia_artes,9.945451547,-84.04552525,25,0.463 -hacia_artes,9.945167513,-84.04554144,26,0.494 -hacia_artes,9.945088492,-84.04550375,27,0.504 -hacia_artes,9.94505511,-84.04538355,28,0.518 -hacia_artes,9.945027395,-84.04508497,29,0.55 -hacia_artes,9.94499479,-84.0450504,30,0.556 -hacia_artes,9.944949637,-84.04502087,31,0.562 -hacia_artes,9.944674286,-84.0450154,32,0.592 -hacia_artes,9.944357782,-84.04500416,33,0.627 -hacia_artes,9.943472684,-84.04492871,34,0.725 -hacia_artes,9.942958179,-84.04489827,35,0.782 -hacia_artes,9.942300486,-84.04485876,36,0.855 -hacia_artes,9.941712287,-84.0448223,37,0.92 -hacia_artes,9.940965306,-84.04477602,38,1.003 -hacia_artes,9.940906633,-84.04487407,39,1.016 -hacia_artes,9.94084406,-84.04498719,40,1.03 -hacia_artes,9.940777519,-84.04521713,41,1.056 -hacia_artes,9.940721562,-84.04539748,42,1.077 -hacia_artes,9.940660223,-84.04560429,43,1.101 -hacia_artes,9.940493097,-84.04563317,44,1.119 -hacia_artes,9.940439602,-84.04543845,45,1.142 -hacia_artes,9.940372448,-84.0451953,46,1.169 -hacia_artes,9.940274924,-84.04482033,47,1.212 -hacia_artes,9.940224352,-84.04474375,48,1.222 -hacia_artes,9.940166814,-84.04466219,49,1.233 -hacia_artes,9.940102007,-84.0444175,50,1.261 -hacia_artes,9.93987746,-84.04448097,51,1.286 -hacia_artes,9.939714594,-84.04452459,52,1.305 -hacia_artes,9.939275606,-84.04463929,53,1.355 -hacia_artes,9.939205451,-84.04465608,54,1.363 -hacia_artes,9.939161106,-84.04464489,55,1.368 -hacia_artes,9.939123853,-84.04461918,56,1.373 -hacia_artes,9.939116258,-84.04455251,57,1.38 -hacia_artes,9.939199416,-84.04433375,58,1.406 -hacia_artes,9.939110553,-84.04400644,59,1.443 -hacia_artes,9.939019008,-84.04367477,60,1.481 -hacia_artes,9.938959114,-84.04346736,61,1.505 -hacia_artes,9.939287987,-84.04336894,62,1.543 -hacia_artes,9.93942115,-84.04332749,63,1.558 -hacia_artes,9.939447555,-84.04299424,64,1.595 -hacia_artes,9.939468101,-84.04273655,65,1.623 -hacia_artes,9.939490178,-84.04245619,66,1.654 -hacia_artes,9.939498966,-84.04213379,67,1.689 -hacia_artes,9.939506315,-84.04192742,68,1.712 -hacia_artes,9.93932958,-84.04185242,69,1.733 -hacia_artes,9.93916814,-84.04169104,70,1.758 -hacia_artes,9.939005191,-84.04144135,71,1.791 -hacia_artes,9.938825655,-84.04113914,72,1.83 -hacia_artes,9.938780727,-84.04107285,73,1.839 -hacia_artes,9.938724901,-84.0410213,74,1.847 -hacia_artes,9.938610047,-84.04095448,75,1.862 -hacia_artes,9.938473968,-84.04094944,76,1.877 -hacia_artes,9.938146529,-84.04103416,77,1.914 -hacia_artes,9.937906713,-84.04110144,78,1.942 -hacia_artes,9.937916636,-84.04138343,79,1.973 -hacia_artes,9.937930793,-84.04162858,80,1.999 -hacia_artes,9.938019672,-84.04162545,81,2.009 -hacia_artes,9.938079962,-84.04164312,82,2.016 -hacia_artes,9.938107915,-84.04167883,83,2.021 -hacia_artes,9.938132565,-84.04171788,84,2.026 -hacia_artes,9.938163064,-84.04184408,85,2.041 -hacia_artes,9.938168404,-84.0419581,86,2.053 -hacia_artes,9.938162334,-84.04206326,87,2.065 -hacia_artes,9.938143211,-84.04217421,88,2.077 -hacia_artes,9.938030868,-84.04243159,89,2.108 -hacia_artes,9.938008116,-84.04247809,90,2.113 -hacia_artes,9.937980342,-84.0426586,91,2.134 -hacia_artes,9.937917158,-84.04305841,92,2.178 -hacia_artes,9.937893782,-84.04319558,93,2.193 -hacia_artes,9.937922886,-84.04343555,94,2.22 -hacia_artes,9.937933244,-84.04351001,95,2.228 -hacia_artes,9.937969256,-84.04360737,96,2.239 -hacia_artes,9.938111296,-84.04379577,97,2.265 -hacia_artes,9.937961495,-84.04405345,98,2.298 -hacia_artes,9.937771338,-84.04438362,99,2.34 -hacia_artes,9.937581827,-84.0447197,100,2.382 -hacia_artes,9.937450189,-84.04496357,101,2.413 -hacia_artes,9.937341808,-84.04514635,102,2.436 -hacia_artes,9.937253722,-84.04527141,103,2.453 -hacia_artes,9.937108322,-84.04542622,104,2.476 -hacia_artes,9.936927199,-84.04555865,105,2.501 -hacia_artes,9.936854014,-84.04558736,106,2.51 -hacia_artes,9.936773737,-84.04559231,107,2.519 -hacia_artes,9.936680196,-84.04556807,108,2.529 -hacia_artes,9.936464801,-84.04544828,109,2.556 -hacia_artes,9.936365887,-84.04538928,110,2.569 -hacia_artes,9.936323088,-84.0453697,111,2.574 -hacia_artes,9.936297628,-84.04536153,112,2.577 -hacia_artes,9.936246522,-84.04535328,113,2.583 -hacia_artes,9.936187326,-84.04535709,114,2.59 -hacia_artes,9.936035383,-84.04539277,115,2.607 -hacia_artes,9.935779918,-84.04543796,116,2.636 -hacia_artes,9.935651546,-84.04546214,117,2.65 -hacia_artes,9.935584825,-84.04552945,118,2.66 -hacia_artes,9.935337871,-84.04564056,119,2.69 -hacia_artes,9.935010933,-84.04564108,120,2.727 -hacia_artes,9.934959684,-84.0456088,121,2.733 -hacia_artes,9.934648587,-84.04561968,122,2.768 -hacia_artes,9.934802253,-84.04629473,123,2.844 -hacia_artes,9.934956107,-84.04709923,124,2.933 -hacia_artes,9.935144666,-84.04773828,125,3.007 -hacia_artes,9.935275846,-84.04812896,126,3.052 -hacia_artes,9.935315833,-84.04838472,127,3.08 -hacia_artes,9.935299838,-84.04862965,128,3.107 -hacia_artes,9.935455203,-84.04864919,129,3.124 -hacia_artes,9.935470398,-84.04880551,130,3.142 -hacia_artes,9.93553668,-84.04908324,131,3.173 -hacia_artes,9.93559776,-84.04931625,132,3.199 -hacia_artes,9.935702437,-84.04959181,133,3.232 -hacia_artes,9.935710385,-84.04967878,134,3.241 -hacia_artes,9.935710385,-84.04996966,135,3.273 -hacia_artes,9.935703217,-84.05009542,136,3.287 -hacia_artes,9.935667009,-84.05034198,137,3.314 -hacia_artes,9.935606746,-84.05064703,138,3.348 -hacia_artes,9.935533432,-84.05107377,139,3.396 -hacia_artes,9.935492631,-84.05130751,140,3.422 -hacia_artes,9.935462728,-84.05154595,141,3.448 -hacia_artes,9.935449555,-84.05165259,142,3.46 -hacia_artes,9.935447942,-84.05176057,143,3.472 -hacia_artes,9.935471691,-84.05198306,144,3.496 -hacia_artes,9.935488928,-84.05210819,145,3.51 -hacia_artes,9.935501758,-84.0521827,146,3.519""" - -# Split the CSV data into lines and read it -csv_reader = csv.DictReader(csv_data.splitlines()) - -# Convert CSV to a structured JSON format -json_data = [] -for i, row in enumerate(csv_reader, start=1): - json_data.append( - { - "model": "gtfs.Shape", - "pk": i, - "fields": { - "feed": "1234", - "shape_id": row["shape_id"], - "shape_pt_lat": row["shape_pt_lat"], - "shape_pt_lon": row["shape_pt_lon"], - "shape_pt_sequence": row["shape_pt_sequence"], - "shape_dist_traveled": row["shape_dist_traveled"], - }, - } - ) - -# Convert the structured data into JSON format -json_output = json.dumps(json_data, indent=4) - -# Save the output in .json file -with open("shapes.json", "w", encoding="utf-8") as json_file: - json.dump(json_data, json_file, ensure_ascii=False, indent=4) diff --git a/backend/feed/management/__init__.py b/backend/feed/management/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/feed/management/commands/__init__.py b/backend/feed/management/commands/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/feed/management/commands/export_gtfs.py b/backend/feed/management/commands/export_gtfs.py new file mode 100644 index 0000000..c8742a3 --- /dev/null +++ b/backend/feed/management/commands/export_gtfs.py @@ -0,0 +1,30 @@ +"""Management command: export the current GTFS feed to feed/files/gtfs.zip.""" + +from typing import Any + +from django.core.management.base import BaseCommand, CommandError + +from feed.models import Feed +from feed.schedule.exporter import publish_gtfs_zip + + +class Command(BaseCommand): + """Export the current GTFS feed (is_current=True) to feed/files/gtfs.zip.""" + + help = "Export the current GTFS feed (is_current=True) to feed/files/gtfs.zip" + + def handle(self, *args: Any, **options: Any) -> None: + """Locate the current Feed and publish its GTFS Schedule zip to disk.""" + feed = Feed.objects.filter(is_current=True).first() + if feed is None: + raise CommandError( + "No Feed with is_current=True found. " + "Load the fixture first: manage.py loaddata gtfs.json" + ) + + dest = publish_gtfs_zip(feed) + self.stdout.write( + self.style.SUCCESS( + f"GTFS Schedule zip exported: {dest} ({dest.stat().st_size} bytes)" + ) + ) diff --git a/backend/feed/models.py b/backend/feed/models.py index 4c753e0..71ec9e0 100644 --- a/backend/feed/models.py +++ b/backend/feed/models.py @@ -1,4 +1,8 @@ +"""GTFS Schedule Django models, plus FeedPublisher/Feed for feed versioning.""" + import re +from typing import TYPE_CHECKING, Any + from django.db.models import UniqueConstraint from django.core.exceptions import ValidationError from django.contrib.gis.db import models @@ -17,64 +21,90 @@ BaseFeedInfo, ) +if TYPE_CHECKING: + from django.db.models.fields.related_descriptors import RelatedManager + -def validate_no_spaces_or_special_symbols(value): +def validate_no_spaces_or_special_symbols(value: str) -> None: + """Reject values containing spaces or characters outside alphanumerics and underscores.""" if re.search(r"[^a-zA-Z0-9_]", value): raise ValidationError( "Este campo no puede contener espacios ni símbolos especiales, solamente letras, números y guiones bajos." ) -class GTFSProvider(models.Model): - """A provider provides transportation services GTFS data. +class TransitSystem(models.Model): + """A transit system is a collection of GTFS providers that serve a common purpose, for example, the public transportation system of a city or country.""" - It might or might not be the same as the agency in the GTFS feed. A GTFS provider can serve multiple agencies. - """ - - provider_id = models.BigAutoField(primary_key=True) + name = models.CharField(max_length=255, help_text="Name of the transit system.") code = models.CharField( max_length=31, - help_text="Código (típicamente el acrónimo) de la empresa. No debe tener espacios ni símbolos especiales.", + help_text="Transit system code (typically its acronym). It must not contain spaces or special characters.", validators=[validate_no_spaces_or_special_symbols], + unique=True, ) - name = models.CharField(max_length=255, help_text="Nombre de la empresa.") description = models.TextField( - blank=True, null=True, help_text="Descripción de la institución o empresa." + blank=True, null=True, help_text="Description of the transit system." ) - website = models.URLField( - blank=True, null=True, help_text="Sitio web de la empresa." + is_active = models.BooleanField( + default=False, help_text="Whether the transit system is active." ) - schedule_url = models.URLField( - blank=True, - null=True, - help_text="URL del suministro (Feed) de GTFS Schedule (.zip).", + + def __str__(self): + """Return the transit system code and name.""" + return f"{self.code}: {self.name}" + + +class FeedPublisher(models.Model): + """Represent a GTFS data publisher for one transit system, potentially distinct from and serving multiple feed agencies, with schedule and realtime endpoints.""" + + transit_system = models.ForeignKey( + TransitSystem, + help_text="Transit system served by the feed publisher.", + on_delete=models.CASCADE, + ) + code = models.CharField( + max_length=31, + help_text="Company code (typically its acronym). It must not contain spaces or special characters.", + validators=[validate_no_spaces_or_special_symbols], + unique=True, ) - trip_updates_url = models.URLField( + name = models.CharField(max_length=255, help_text="Name of the company.") + description = models.TextField( + blank=True, null=True, help_text="Description of the institution or company." + ) + lang = models.CharField( + max_length=15, blank=True, null=True, - help_text="URL del suministro (FeedMessage) de la entidad GTFS Realtime TripUpdates (.pb).", + help_text="Language of the data provided by the publisher, in ISO 639-1 alpha-2 or alpha-3 format. Examples: es, en, fr.", ) - vehicle_positions_url = models.URLField( + contact_email = models.EmailField( blank=True, null=True, - help_text="URL del suministro (FeedMessage) de la entidad GTFS Realtime VehiclePositions (.pb).", + help_text="Contact email address for the data publisher.", + ) + contact_url = models.URLField( + blank=True, null=True, help_text="Contact URL for the data publisher." ) - service_alerts_url = models.URLField( + website = models.URLField(blank=True, null=True, help_text="Company website.") + schedule_url = models.URLField( blank=True, null=True, - help_text="URL del suministro (FeedMessage) de la entidad GTFS Realtime ServiceAlerts (.pb).", + help_text="URL of the GTFS Schedule feed (.zip).", ) timezone = models.CharField( max_length=63, - help_text="Zona horaria del proveedor de datos (asume misma zona horaria para todas las agencias). Ejemplo: America/Costa_Rica.", + help_text="Time zone of the data publisher (assumed to be the same for all agencies). Example: America/Costa_Rica.", ) is_active = models.BooleanField( default=False, - help_text="¿Está activo el proveedor de datos? Si no, no se importarán los datos de este proveedor.", + help_text="Whether the data publisher is active. If inactive, data from this publisher will not be imported.", ) def __str__(self): - return f"{self.name} ({self.code})" + """Return a string representation of the GTFS provider.""" + return f"{self.transit_system.code}: {self.name} ({self.code})" # ------------- @@ -82,17 +112,43 @@ def __str__(self): # ------------- -class Feed(models.Model): +# mypy_django_plugin can't resolve the reverse managers below (agency_set, +# stop_set, ...): each FK owner (Agency, Stop, Route, Calendar, CalendarDate, +# Shape, Trip, StopTime, FareAttribute, FareRule, FeedInfo) is a concrete +# subclass of an *abstract* Base* model imported from the separate `gtfs` +# package (gtfs-django), and the plugin's `_default_manager` resolution for +# such cross-package abstract-base subclasses never completes (confirmed: +# neither an explicit `if TYPE_CHECKING: agency_set: RelatedManager[...]` +# stub nor an explicit `objects = models.Manager()` on the FK owner changes +# the outcome). This looks like an upstream django-stubs limitation, not a +# real bug in these models. +class Feed(models.Model): # type: ignore[django-manager-missing] + """One retrieved version of a GTFS Schedule feed from a provider.""" + feed_id = models.CharField(max_length=100, primary_key=True, unique=True) - gtfs_provider = models.ForeignKey( - GTFSProvider, on_delete=models.SET_NULL, blank=True, null=True + feed_publisher = models.ForeignKey( + FeedPublisher, on_delete=models.SET_NULL, blank=True, null=True ) http_etag = models.CharField(max_length=1023, blank=True, null=True) http_last_modified = models.DateTimeField(blank=True, null=True) is_current = models.BooleanField(blank=True, null=True) retrieved_at = models.DateTimeField(auto_now_add=True) - def __str__(self): + if TYPE_CHECKING: + agency_set: RelatedManager["Agency"] + stop_set: RelatedManager["Stop"] + route_set: RelatedManager["Route"] + calendar_set: RelatedManager["Calendar"] + calendardate_set: RelatedManager["CalendarDate"] + shape_set: RelatedManager["Shape"] + trip_set: RelatedManager["Trip"] + stoptime_set: RelatedManager["StopTime"] + fareattribute_set: RelatedManager["FareAttribute"] + farerule_set: RelatedManager["FareRule"] + feedinfo_set: RelatedManager["FeedInfo"] + + def __str__(self) -> str: + """Return the feed's identifier.""" return self.feed_id @@ -109,7 +165,8 @@ class Meta: ] verbose_name_plural = "agencies" - def __str__(self): + def __str__(self) -> str: + """Return the agency's name.""" return self.agency_name @@ -144,7 +201,8 @@ class Meta: ] # Build stop_point or stop_lat and stop_lon - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Populate stop_lat/stop_lon from stop_point, or stop_point from stop_lat/stop_lon, before saving.""" if self.stop_point: self.stop_lat = self.stop_point.y self.stop_lon = self.stop_point.x @@ -152,7 +210,8 @@ def save(self, *args, **kwargs): self.stop_point = Point(self.stop_lon, self.stop_lat) super(Stop, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the stop's ID and name.""" return f"{self.stop_id}: {self.stop_name}" @@ -173,13 +232,15 @@ class Meta: UniqueConstraint(fields=["feed", "route_id"], name="unique_route_in_feed") ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Agency for this route before saving.""" self.linked_agency = Agency.objects.get( feed=self.feed, agency_id=self.agency_id ) super(Route, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the route's short and long names.""" return f"{self.route_short_name}: {self.route_long_name}" @@ -197,7 +258,8 @@ class Meta: ) ] - def __str__(self): + def __str__(self) -> str: + """Return the service's identifier.""" return self.service_id @@ -223,13 +285,15 @@ class Meta: ) ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Calendar for this exception before saving.""" self.linked_service = Calendar.objects.get( feed=self.feed, service_id=self.service_id ) super(CalendarDate, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the holiday name and service ID.""" return f"{self.holiday_name} ({self.service_id})" @@ -248,7 +312,8 @@ class Meta: ) ] - def __str__(self): + def __str__(self) -> str: + """Return the shape's ID and point sequence.""" return f"{self.shape_id}: {self.shape_pt_sequence}" @@ -273,14 +338,16 @@ class Meta: UniqueConstraint(fields=["feed", "trip_id"], name="unique_trip_in_feed") ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Route and Calendar for this trip before saving.""" self.linked_route = Route.objects.get(feed=self.feed, route_id=self.route_id) self.linked_service = Calendar.objects.get( feed=self.feed, service_id=self.service_id ) super(Trip, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the trip's identifier.""" return self.trip_id @@ -305,12 +372,14 @@ class Meta: ) ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Trip and Stop for this stop time before saving.""" self.linked_trip = Trip.objects.get(feed=self.feed, trip_id=self.trip_id) self.linked_stop = Stop.objects.get(feed=self.feed, stop_id=self.stop_id) super(StopTime, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the trip ID, stop ID, and stop sequence.""" return f"{self.trip_id}: {self.stop_id} ({self.stop_sequence})" @@ -331,14 +400,16 @@ class Meta: ) ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Agency for this fare, if any, before saving.""" if self.agency_id: self.linked_agency = Agency.objects.get( feed=self.feed, agency_id=self.agency_id ) super(FareAttribute, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the fare's identifier.""" return self.fare_id @@ -370,14 +441,16 @@ class Meta: ) ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked FareAttribute and Route for this rule before saving.""" self.linked_fare = FareAttribute.objects.get( feed=self.feed, fare_id=self.fare_id ) self.linked_route = Route.objects.get(feed=self.feed, route_id=self.route_id) super(FareRule, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the fare ID and route ID.""" return f"{self.fare_id}: {self.route_id}" @@ -388,7 +461,8 @@ class FeedInfo(BaseFeedInfo): feed = models.ForeignKey(Feed, on_delete=models.CASCADE) - def __str__(self): + def __str__(self) -> str: + """Return the feed publisher name and version.""" return f"{self.feed_publisher_name}: {self.feed_version}" @@ -397,7 +471,10 @@ def __str__(self): # ---------------- -class GeoShape(models.Model): +# Same mypy_django_plugin limitation as Feed above: Trip (the FK owner via +# Trip.geoshape) subclasses the cross-package abstract BaseTrip, so the +# plugin can't resolve GeoShape's reverse `trip_set` manager either. +class GeoShape(models.Model): # type: ignore[django-manager-missing] """Rules for drawing lines on a map to represent a transit organization's routes. Maps to shapes.txt in the GTFS feed. """ @@ -425,7 +502,11 @@ class Meta: ) ] - def __str__(self): + if TYPE_CHECKING: + trip_set: RelatedManager["Trip"] + + def __str__(self) -> str: + """Return the geoshape's identifier.""" return self.shape_id @@ -457,13 +538,15 @@ class Meta: ) ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Route, GeoShape, and Stop for this entry before saving.""" self.linked_route = Route.objects.get(feed=self.feed, route_id=self.route_id) self.linked_shape = GeoShape.objects.get(feed=self.feed, shape_id=self.shape_id) self.linked_stop = Stop.objects.get(feed=self.feed, stop_id=self.stop_id) super(RouteStop, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the route, stop, shape, and sequence.""" return f"{self.route_id}: {self.stop_id} ({self.shape_id} {self.stop_sequence})" @@ -503,7 +586,8 @@ class Meta: ) ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Route, Shape, and Calendar for this duration before saving.""" self.linked_route = Route.objects.get(feed=self.feed, route_id=self.route_id) self.linked_shape = Shape.objects.get(feed=self.feed, shape_id=self.shape_id) self.linked_service = Calendar.objects.get( @@ -511,7 +595,8 @@ def save(self, *args, **kwargs): ) super(TripDuration, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the route, service, and time window.""" return ( f"{self.route_id}: {self.service_id} ({self.start_time} - {self.end_time})" ) @@ -543,12 +628,14 @@ class Meta: ) ] - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Resolve and cache the linked Trip and Stop for this timepoint before saving.""" self.linked_trip = Trip.objects.get(feed=self.feed, trip_id=self.trip_id) self.linked_stop = Stop.objects.get(feed=self.feed, stop_id=self.stop_id) super(TripTime, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the trip ID, stop ID, and departure time.""" return f"{self.trip_id}: {self.stop_id} ({self.departure_time})" @@ -571,8 +658,8 @@ class FeedMessage(models.Model): ) feed_message_id = models.CharField(max_length=63, primary_key=True) - provider = models.ForeignKey( - GTFSProvider, on_delete=models.SET_NULL, blank=True, null=True + feed_publisher = models.ForeignKey( + FeedPublisher, on_delete=models.SET_NULL, blank=True, null=True ) entity_type = models.CharField(max_length=63, choices=ENTITY_TYPE_CHOICES) timestamp = models.DateTimeField(auto_now=True) @@ -582,7 +669,8 @@ class FeedMessage(models.Model): class Meta: ordering = ["-timestamp"] - def __str__(self): + def __str__(self) -> str: + """Return the entity type and timestamp.""" return f"{self.entity_type} ({self.timestamp})" @@ -623,7 +711,8 @@ class TripUpdate(models.Model): # Delay (int32) delay = models.IntegerField(blank=True, null=True) - def __str__(self): + def __str__(self) -> str: + """Return the entity ID and source feed message.""" return f"{self.entity_id} ({self.feed_message})" @@ -660,7 +749,8 @@ class StopTimeUpdate(models.Model): # ScheduleRelationship (enum) schedule_relationship = models.CharField(max_length=255, blank=True, null=True) - def __str__(self): + def __str__(self) -> str: + """Return the stop ID and parent trip update.""" return f"{self.stop_id} ({self.trip_update})" @@ -730,13 +820,15 @@ class VehiclePosition(models.Model): # CarriageDetails (message): not implemented - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Derive vehicle_position_point from the vehicle's latitude and longitude before saving.""" self.vehicle_position_point = Point( self.vehicle_position_longitude, self.vehicle_position_latitude ) super(VehiclePosition, self).save(*args, **kwargs) - def __str__(self): + def __str__(self) -> str: + """Return the entity ID and source feed message.""" return f"{self.entity_id} ({self.feed_message})" @@ -814,5 +906,6 @@ class Alert(models.Model): ) informed_entity = models.JSONField(help_text="Entidades informadas por la alerta.") - def __str__(self): + def __str__(self) -> str: + """Return the alert's identifier.""" return self.alert_id diff --git a/backend/feed/realtime/__init__.py b/backend/feed/realtime/__init__.py deleted file mode 100644 index 23a2f3d..0000000 --- a/backend/feed/realtime/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -from .runs import ( - process_submission, - process_confirmation, - process_completion, - process_interruption, -) - -__all__ = [ - "process_submission", - "process_confirmation", - "process_completion", - "process_interruption", -] diff --git a/backend/feed/realtime/runs.py b/backend/feed/realtime/runs.py deleted file mode 100644 index 473fb17..0000000 --- a/backend/feed/realtime/runs.py +++ /dev/null @@ -1,67 +0,0 @@ -from runs.models import Run -from messages import publish_event -from realtime_engine.tasks import register_run, start_run, end_run -from feed.utils import validate_run_request_data - - -def process_submission(payload): - publish_event("RUN_SUBMISSION_REQUESTED", payload) - is_valid, error_code = validate_run_request_data(payload) - if is_valid: - publish_event("RUN_SUBMISSION_SUCCEEDED", payload) - registration_result, run_id = register_run.delay(payload).get(timeout=15) - if registration_result: - publish_event("RUN_REGISTRATION_SUCCEEDED", payload) - return {"run_id": run_id}, 200 - else: - publish_event("RUN_REGISTRATION_FAILED", payload) - return ( - { - "error": { - "code": "Run registration failed", - "message": "Failed to register run", - } - }, - 400, - ) - else: - publish_event("RUN_SUBMISSION_FAILED", payload) - return ( - { - "error": { - "code": "Run request validation failed", - "message": error_code, - } - }, - 400, - ) - - -def process_confirmation(payload): - start_run_result = start_run.delay(payload).get(timeout=15) - if start_run_result: - updated = Run.objects.filter(id=payload.get("run_id")).update( - run_lifecycle_state="IN_PROGRESS" - ) - if not updated: - return {"error": "run_id no encontrado"}, 404 - publish_event("RUN_START_SUCCEEDED", payload) - return {"run_lifecycle_state": "IN_PROGRESS"}, 200 - else: - publish_event("RUN_CONFIRMATION_FAILED", payload) - return {"error": "No funcionó :("}, 400 - - -def process_completion(payload): - end_run_result = end_run.delay(payload).get(timeout=15) - if end_run_result: # Si end run se cumple: - publish_event("RUN_COMPLETION_SUCCEEDED", payload) - return {"run_lifecycle_state": "COMPLETED"}, 200 - else: # Si end run no se cumple: - publish_event("RUN_COMPLETION_FAILED", payload) - return {"error": "No se pudo completar el run"}, 400 - - -def process_interruption(payload): - publish_event("RUN_INTERRUPTED", payload) - return {"run_lifecycle_state": "INTERRUPTED"}, 200 diff --git a/backend/feed/schedule/exporter.py b/backend/feed/schedule/exporter.py new file mode 100644 index 0000000..62f57f2 --- /dev/null +++ b/backend/feed/schedule/exporter.py @@ -0,0 +1,187 @@ +"""GTFS Schedule zip exporter. + +Reads the Django ORM (the Django-coupled analog of builders.py) and serialises +one Feed instance's rows into a standards-compliant GTFS .zip archive returned +as bytes. Also exposes ``publish_gtfs_zip`` to write the archive to disk +atomically; this shared helper is used by both the Celery task and the +management command. +""" + +from __future__ import annotations + +import csv +import io +import zipfile +from datetime import date, time +from pathlib import Path +from typing import TYPE_CHECKING, cast + +from django.db import models as db_models + +from feed.models import ( + Agency, + Calendar, + CalendarDate, + FareAttribute, + FareRule, + FeedInfo, + Route, + Shape, + Stop, + StopTime, + Trip, +) + +if TYPE_CHECKING: + from feed.models import Feed + + +# --------------------------------------------------------------------------- +# Field introspection helpers +# --------------------------------------------------------------------------- + +_EXCLUDE_NAMES: frozenset[str] = frozenset( + {"id", "feed", "geoshape", "stop_point", "stop_heading", "holiday_name"} +) + + +def _gtfs_fields(model: type[db_models.Model]) -> list[tuple[str, db_models.Field]]: + """Return ``(column_name, field)`` pairs for GTFS output in declaration order. + + Excluded: the internal auto-pk, the ``feed`` FK, any field whose name + starts with ``linked_``, and the app-specific augmentation fields listed + in ``_EXCLUDE_NAMES``. All remaining fields after exclusion are concrete + non-FK fields, so ``field.attname == field.name`` and equals the GTFS + column name. + """ + result: list[tuple[str, db_models.Field]] = [] + for field in model._meta.local_fields: + if field.name in _EXCLUDE_NAMES or field.name.startswith("linked_"): + continue + result.append((field.attname, field)) + return result + + +def _format_value(field: db_models.Field, value: object) -> str: + """Format a model field value as a GTFS CSV cell string.""" + if value is None: + return "" + # DateField (but NOT DateTimeField which subclasses DateField) + if isinstance(field, db_models.DateField) and not isinstance( + field, db_models.DateTimeField + ): + # `field`'s isinstance check narrows the *field* type, not `value` + # (declared `object` for genericity); cast reflects what the field + # type guarantees about the value Django hands us at this column. + return cast(date, value).strftime("%Y%m%d") + if isinstance(field, db_models.TimeField): + return cast(time, value).strftime("%H:%M:%S") + if isinstance(field, db_models.BooleanField): + return "1" if value else "0" + return str(value) + + +# --------------------------------------------------------------------------- +# Zip assembly +# --------------------------------------------------------------------------- + + +def _write_txt( + zf: zipfile.ZipFile, + filename: str, + model: type[db_models.Model], + queryset: db_models.QuerySet[db_models.Model], +) -> None: + """Write one GTFS ``.txt`` file into *zf*. + + The file is omitted from the archive if the queryset has zero rows. + """ + fields = _gtfs_fields(model) + columns = [col for col, _ in fields] + + buf = io.StringIO() + writer = csv.writer(buf) + writer.writerow(columns) + + count = 0 + for obj in queryset.iterator(): + row = [_format_value(fld, getattr(obj, col)) for col, fld in fields] + writer.writerow(row) + count += 1 + + if count > 0: + zf.writestr(filename, buf.getvalue()) + + +# --------------------------------------------------------------------------- +# Public API +# --------------------------------------------------------------------------- + + +def build_gtfs_zip(feed: "Feed") -> bytes: + """Serialise one ``Feed`` instance into a GTFS zip and return the raw bytes.""" + buf = io.BytesIO() + with zipfile.ZipFile(buf, "w", compression=zipfile.ZIP_DEFLATED) as zf: + _write_txt(zf, "agency.txt", Agency, Agency.objects.filter(feed=feed)) + _write_txt(zf, "stops.txt", Stop, Stop.objects.filter(feed=feed)) + _write_txt(zf, "routes.txt", Route, Route.objects.filter(feed=feed)) + _write_txt(zf, "calendar.txt", Calendar, Calendar.objects.filter(feed=feed)) + _write_txt( + zf, + "calendar_dates.txt", + CalendarDate, + CalendarDate.objects.filter(feed=feed), + ) + _write_txt( + zf, + "shapes.txt", + Shape, + Shape.objects.filter(feed=feed).order_by("shape_id", "shape_pt_sequence"), + ) + _write_txt(zf, "trips.txt", Trip, Trip.objects.filter(feed=feed)) + _write_txt( + zf, + "stop_times.txt", + StopTime, + StopTime.objects.filter(feed=feed).order_by("trip_id", "stop_sequence"), + ) + _write_txt( + zf, + "fare_attributes.txt", + FareAttribute, + FareAttribute.objects.filter(feed=feed), + ) + _write_txt( + zf, + "fare_rules.txt", + FareRule, + FareRule.objects.filter(feed=feed), + ) + _write_txt( + zf, + "feed_info.txt", + FeedInfo, + FeedInfo.objects.filter(feed=feed), + ) + return buf.getvalue() + + +def publish_gtfs_zip(feed: "Feed", output_dir: Path | None = None) -> Path: + """Build the GTFS zip and write it atomically to ``/gtfs.zip``. + + If *output_dir* is ``None``, defaults to ``settings.BASE_DIR / "feed" / "files"``. + Uses a ``.tmp`` staging file and ``Path.replace`` (atomic rename) to avoid + partially-written files being served. Returns the final ``Path``. + """ + from django.conf import settings + + if output_dir is None: + output_dir = settings.BASE_DIR / "feed" / "files" + + output_dir.mkdir(parents=True, exist_ok=True) + dest = output_dir / "gtfs.zip" + tmp = output_dir / "gtfs.zip.tmp" + + tmp.write_bytes(build_gtfs_zip(feed)) + tmp.replace(dest) + return dest diff --git a/backend/feed/schedule/importer.py b/backend/feed/schedule/importer.py new file mode 100644 index 0000000..461f52a --- /dev/null +++ b/backend/feed/schedule/importer.py @@ -0,0 +1,318 @@ +"""GTFS Schedule zip importer. + +Ported from infobús's ``save_schedule_to_database``, adapted for databús's +``FeedPublisher``/``Feed`` schema. HEAD-checks a provider's upstream +``schedule_url`` ETag; if it differs from the current ``Feed``'s, downloads +and bulk-imports the new GTFS zip table-by-table, flips ``is_current``, and +returns ``True``. + +Core ``linked_*`` FKs (e.g. ``Trip.linked_route``) are intentionally left +``NULL`` here: they're normally resolved in each model's custom ``save()``, +which ``bulk_create`` bypasses for performance, and nothing downstream reads +them (the exporter re-derives GTFS columns from natural keys and already +excludes ``linked_*``). ``Stop.stop_point`` is the one exception: it's built +inline via ``Point(lon, lat)`` because it's needed for geo queries and +``Stop.save()`` is bypassed too. +""" + +from __future__ import annotations + +import io +import logging +import zipfile +from datetime import date, datetime, timezone + +import pandas as pd +import requests +from django.contrib.gis.geos import Point +from django.db import models as db_models +from django.db import transaction + +from feed.models import ( + Agency, + Calendar, + CalendarDate, + Feed, + FeedInfo, + FeedPublisher, + Route, + Shape, + Stop, + StopTime, + Trip, +) + +logger = logging.getLogger(__name__) + +_REQUEST_TIMEOUT = 30 # seconds + +# Mirrors feed.schedule.exporter._EXCLUDE_NAMES so importer/exporter agree on +# which columns are GTFS data vs. internal/app-specific augmentation fields. +_EXCLUDE_FIELD_NAMES = frozenset( + {"id", "feed", "geoshape", "stop_point", "stop_heading", "holiday_name"} +) + +# Columns holding GTFS "YYYYMMDD" dates, which must be converted to `date` +# objects before construction (Django's DateField.to_python expects ISO +# "YYYY-MM-DD", not GTFS's compact format). +_DATE_FIELDS: dict[type[db_models.Model], frozenset[str]] = { + Calendar: frozenset({"start_date", "end_date"}), + CalendarDate: frozenset({"date"}), + FeedInfo: frozenset({"feed_start_date", "feed_end_date"}), +} + +# Import order matters: GTFS tables have no cross-table FK constraints in +# this schema (linked_* are left NULL), so order here just mirrors the GTFS +# reference table listing for readability/parity with infobús and the +# exporter. Fare tables are intentionally out of scope (see plan). +_TABLES: list[tuple[str, type[db_models.Model]]] = [ + ("agency", Agency), + ("stops", Stop), + ("shapes", Shape), + ("calendar", Calendar), + ("calendar_dates", CalendarDate), + ("routes", Route), + ("trips", Trip), + ("stop_times", StopTime), + ("feed_info", FeedInfo), +] + + +def normalize_gtfs_value(value: object) -> str | None: + """Normalize a raw CSV cell: blank/whitespace-only/NaN -> None, else stripped string.""" + if value is None: + return None + # pandas keeps genuinely-missing cells as float NaN even under + # dtype=str (a str column can't hold NaN, so it stays a float); + # str(nan) == "nan", which would otherwise pass through as a bogus value. + if isinstance(value, float) and pd.isna(value): + return None + text = str(value).strip() + return text or None + + +def gtfs_date(value: object) -> date | None: + """Parse a GTFS ``YYYYMMDD`` string into a ``date``. None-safe.""" + text = normalize_gtfs_value(value) + if text is None: + return None + return datetime.strptime(text, "%Y%m%d").date() + + +def _importable_fields(model: type[db_models.Model]) -> list[db_models.Field]: + """Return the concrete, importable fields for *model* (excludes FKs/augmentation fields).""" + return [ + field + for field in model._meta.local_fields + if field.name not in _EXCLUDE_FIELD_NAMES + and not field.name.startswith("linked_") + ] + + +def _model_fields(model: type[db_models.Model]) -> list[str]: + """Return the concrete, importable column names for *model*.""" + return [field.attname for field in _importable_fields(model)] + + +def _empty_value_for(field: db_models.Field) -> object: + """Return a safe non-NULL substitute for a blank cell on a non-nullable *field*. + + Priority: the field's own Django-level default (if any) > 0 for numeric + fields > "" for text fields > None as a last resort (which will surface + as a NOT NULL violation, but only for fields we truly can't infer a safe + empty value for -- better a loud DB error than a silently wrong guess). + """ + if field.has_default(): + return field.get_default() + if isinstance( + field, (db_models.IntegerField, db_models.FloatField, db_models.DecimalField) + ): + return 0 + if isinstance(field, (db_models.CharField, db_models.TextField)): + return "" + return None + + +def _coerce_row( + model: type[db_models.Model], row: dict[str, object] +) -> dict[str, object]: + """Normalize one CSV row's raw string values into model constructor kwargs. + + Iterates *model*'s full importable field set -- not just the columns + present in *row* -- because a lean GTFS feed can omit an entire column + (e.g. a stop_times.txt with no pickup_type/drop_off_type columns at + all). A column that's present-but-blank and a column that's absent + entirely must be treated the same way: if the resulting value is None + and the Django field is non-nullable, substitute a safe empty value + (see `_empty_value_for`) instead of leaving/passing None. + """ + date_fields = _DATE_FIELDS.get(model, frozenset()) + + kwargs: dict[str, object] = {} + for field in _importable_fields(model): + column = field.attname + value: object + if column in row: + raw_value = row[column] + value = ( + gtfs_date(raw_value) + if column in date_fields + else normalize_gtfs_value(raw_value) + ) + else: + value = None + + if value is None and not field.null: + value = _empty_value_for(field) + + kwargs[column] = value + return kwargs + + +def _build_stop_point(row: dict[str, object]) -> Point | None: + """Build a ``Point(lon, lat)`` from a stops.txt row, or None if lat/lon is missing.""" + lat = normalize_gtfs_value(row.get("stop_lat")) + lon = normalize_gtfs_value(row.get("stop_lon")) + if lat is None or lon is None: + return None + try: + return Point(float(lon), float(lat)) + except (TypeError, ValueError) as exc: + logger.warning( + "Skipping stop_point for row with bad lat/lon (%s, %s): %s", lat, lon, exc + ) + return None + + +def _import_table( + table_name: str, model: type[db_models.Model], zf: zipfile.ZipFile, feed: Feed +) -> int: + """Import one GTFS ``.txt`` file from *zf* into *model*, tagged with *feed*.""" + filename = f"{table_name}.txt" + if filename not in zf.namelist(): + return 0 + + fields = _model_fields(model) + table = pd.read_csv( + zf.open(filename), dtype=str, keep_default_na=False, na_values="" + ) + columns = [c for c in fields if c in table.columns] + table = table[columns] + + instances: list[db_models.Model] = [] + for raw_row in table.to_dict(orient="records"): + try: + kwargs = _coerce_row(model, raw_row) + kwargs["feed"] = feed + if model is Stop: + kwargs["stop_point"] = _build_stop_point(raw_row) + instances.append(model(**kwargs)) + except (ValueError, TypeError) as exc: + # E.g. a GTFS time hour >= 24 (TimeField can't hold it), or a + # malformed date/decimal. Logged and skipped rather than + # aborting the whole table/import for one bad row. + logger.warning("Skipping malformed %s row %r: %s", table_name, raw_row, exc) + + # `model` is a `type[db_models.Model]` parameter (any of the concrete + # feed.models classes at call sites below); django-stubs can't resolve + # `.objects` on the generic base-class type here even though every + # concrete subclass has it via Django's default manager. + model.objects.bulk_create(instances, batch_size=2000) # type: ignore[attr-defined] + return len(instances) + + +def _resolve_new_etag(resp: requests.Response) -> str | None: + """Prefer the ETag header; fall back to Last-Modified. None means 'always import'.""" + etag = resp.headers.get("ETag") + if etag: + return etag + return resp.headers.get("Last-Modified") + + +def _parse_last_modified(resp: requests.Response) -> datetime: + """Parse the Last-Modified header into a UTC datetime, defaulting to now() if absent/invalid.""" + raw = resp.headers.get("Last-Modified") + if not raw: + return datetime.now(timezone.utc) + try: + return datetime.strptime(raw, "%a, %d %b %Y %H:%M:%S %Z").replace( + tzinfo=timezone.utc + ) + except ValueError: + logger.warning("Unparseable Last-Modified header %r; using now()", raw) + return datetime.now(timezone.utc) + + +def import_schedule_if_changed(provider: FeedPublisher) -> bool: + """Import *provider*'s GTFS Schedule zip when its upstream ETag changed. + + Returns True if a new Feed was imported, False if unchanged or on error. + """ + if not provider.schedule_url: + logger.warning("FeedPublisher %s has no schedule_url; skipping", provider.code) + return False + + current_feed = ( + Feed.objects.filter(feed_publisher=provider, is_current=True) + .order_by("-retrieved_at") + .first() + ) + current_tag = current_feed.http_etag if current_feed else None + + try: + head_resp = requests.head(provider.schedule_url, timeout=_REQUEST_TIMEOUT) + head_resp.raise_for_status() + except requests.RequestException: + logger.exception("HEAD request failed for provider %s", provider.code) + return False + + new_tag = _resolve_new_etag(head_resp) + if new_tag is not None and new_tag == current_tag: + logger.info("Provider %s schedule up to date (etag=%s)", provider.code, new_tag) + return False + + try: + get_resp = requests.get(provider.schedule_url, timeout=_REQUEST_TIMEOUT) + get_resp.raise_for_status() + schedule_zip = zipfile.ZipFile(io.BytesIO(get_resp.content)) + except requests.RequestException, zipfile.BadZipFile: + logger.exception( + "Failed to download/parse schedule zip for provider %s", provider.code + ) + return False + + last_modified = _parse_last_modified(head_resp) + feed_id = f"{provider.code} ({last_modified.strftime('%Y-%m-%d %H:%M:%S %Z')})" + + # Everything from here on mutates the DB: flipping the previous current + # feed, creating the new one, and importing every table. Wrap it all in + # one transaction so a failure partway through (e.g. a table that fails + # bulk_create) rolls back cleanly instead of leaving a half-imported + # Feed marked is_current=True. The HTTP + etag comparison above stays + # outside the transaction since it does no DB writes. + try: + with transaction.atomic(): + if current_feed is not None: + current_feed.is_current = False + current_feed.save(update_fields=["is_current"]) + + feed = Feed.objects.create( + feed_id=feed_id, + http_etag=new_tag, + http_last_modified=last_modified, + is_current=True, + feed_publisher=provider, + ) + + for table_name, model in _TABLES: + count = _import_table(table_name, model, schedule_zip, feed) + logger.info( + "Imported %d rows into %s for feed %s", count, table_name, feed_id + ) + except Exception: + logger.exception( + "Import failed for provider %s; rolled back feed %s", provider.code, feed_id + ) + return False + + return True diff --git a/backend/feed/tests.py b/backend/feed/tests.py deleted file mode 100644 index 7ce503c..0000000 --- a/backend/feed/tests.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.test import TestCase - -# Create your tests here. diff --git a/backend/feed/tests/__init__.py b/backend/feed/tests/__init__.py new file mode 100644 index 0000000..12e8a01 --- /dev/null +++ b/backend/feed/tests/__init__.py @@ -0,0 +1 @@ +"""Tests for the feed app.""" diff --git a/backend/feed/tests/test_schedule_exporter.py b/backend/feed/tests/test_schedule_exporter.py new file mode 100644 index 0000000..237a4f5 --- /dev/null +++ b/backend/feed/tests/test_schedule_exporter.py @@ -0,0 +1,50 @@ +import io +import zipfile + +from django.test import TestCase + +from feed.models import Feed +from feed.schedule.exporter import build_gtfs_zip + + +class TestBuildGtfsZip(TestCase): + """Minimal smoke tests for the GTFS Schedule zip exporter. + + Requires a PostGIS-enabled test database (models use PointField / + LineStringField). The fixture loads ~22 stops and 1117 stop_times. + """ + + fixtures = ["gtfs.json"] + + def _feed(self) -> Feed: + feed = Feed.objects.filter(is_current=True).first() + self.assertIsNotNone(feed, "Fixture must contain a Feed with is_current=True") + return feed # type: ignore[return-value] + + def test_returns_valid_zip_with_required_files(self) -> None: + data = build_gtfs_zip(self._feed()) + self.assertIsInstance(data, bytes) + self.assertGreater(len(data), 0) + with zipfile.ZipFile(io.BytesIO(data)) as zf: + names = zf.namelist() + for required in ("agency.txt", "stops.txt", "stop_times.txt"): + self.assertIn(required, names, f"{required} missing from zip") + + def test_stops_txt_header_and_row_count(self) -> None: + data = build_gtfs_zip(self._feed()) + with zipfile.ZipFile(io.BytesIO(data)) as zf: + text = zf.read("stops.txt").decode() + lines = [line for line in text.splitlines() if line.strip()] + header_cols = lines[0].split(",") + self.assertIn("stop_id", header_cols) + self.assertIn("stop_lat", header_cols) + # 1 header + 22 data rows + self.assertEqual(len(lines), 23, f"Expected 23 lines, got {len(lines)}") + + def test_stop_times_row_count(self) -> None: + data = build_gtfs_zip(self._feed()) + with zipfile.ZipFile(io.BytesIO(data)) as zf: + text = zf.read("stop_times.txt").decode() + lines = [line for line in text.splitlines() if line.strip()] + # 1 header + 1117 data rows + self.assertEqual(len(lines), 1118, f"Expected 1118 lines, got {len(lines)}") diff --git a/backend/feed/tests/test_schedule_importer.py b/backend/feed/tests/test_schedule_importer.py new file mode 100644 index 0000000..05bd2a6 --- /dev/null +++ b/backend/feed/tests/test_schedule_importer.py @@ -0,0 +1,326 @@ +"""Tests for the GTFS Schedule zip importer. + +Requires a PostGIS-enabled test database (models use PointField). HTTP is +mocked at the module boundary (`feed.schedule.importer.requests`) since +there's no `responses`/`requests-mock` dependency in this project. +""" + +import io +import zipfile +from unittest.mock import Mock, patch + +from django.test import TestCase + +from feed.models import ( + Agency, + Calendar, + CalendarDate, + Feed, + FeedPublisher, + Route, + Shape, + Stop, + StopTime, + Trip, +) +from feed.schedule.importer import import_schedule_if_changed +from schedule_engine.tasks import fetch_schedule + + +def _build_gtfs_zip_bytes(*, lean_stop_times: bool = False) -> bytes: + """Build a tiny but complete in-memory GTFS zip covering all imported tables. + + With ``lean_stop_times=True``, stop_times.txt mirrors the real bUCR feed's + columns exactly (no pickup_type/drop_off_type at all) -- the shape that + exposed the "column absent entirely" NOT NULL bug. + """ + stop_times_txt = ( + "trip_id,arrival_time,departure_time,stop_id,stop_sequence,timepoint," + "shape_dist_traveled,stop_headsign\n" + "T1,08:00:00,08:00:00,S1,1,1,0.0,\n" + "T1,08:10:00,08:10:00,S2,2,1,1.2,\n" + if lean_stop_times + else ( + "trip_id,arrival_time,departure_time,stop_id,stop_sequence,pickup_type,drop_off_type\n" + "T1,08:00:00,08:00:00,S1,1,,\n" + "T1,08:10:00,08:10:00,S2,2,,\n" + ) + ) + files = { + "agency.txt": ( + "agency_id,agency_name,agency_url,agency_timezone\n" + "A1,Test Agency,https://example.com,America/Costa_Rica\n" + ), + "stops.txt": ( + "stop_id,stop_name,stop_lat,stop_lon,parent_station\n" + "S1,Stop One,9.930000,-84.080000,\n" + "S2,Stop Two,9.935000,-84.085000,\n" + ), + "shapes.txt": ( + "shape_id,shape_pt_lat,shape_pt_lon,shape_pt_sequence\n" + "SH1,9.930000,-84.080000,1\n" + "SH1,9.935000,-84.085000,2\n" + ), + "calendar.txt": ( + "service_id,monday,tuesday,wednesday,thursday,friday,saturday,sunday," + "start_date,end_date\n" + "WD,1,1,1,1,1,0,0,20260101,20261231\n" + ), + "calendar_dates.txt": ("service_id,date,exception_type\nWD,20260101,2\n"), + "routes.txt": ( + "route_id,agency_id,route_short_name,route_long_name,route_type\n" + "R1,A1,1,Route One,3\n" + ), + "trips.txt": ( + "route_id,service_id,trip_id,direction_id,wheelchair_accessible,bikes_allowed\n" + "R1,WD,T1,0,,\n" + ), + "stop_times.txt": stop_times_txt, + "feed_info.txt": ( + "feed_publisher_name,feed_publisher_url,feed_lang\n" + "Test Publisher,https://example.com,es\n" + ), + } + buf = io.BytesIO() + with zipfile.ZipFile(buf, "w") as zf: + for name, content in files.items(): + zf.writestr(name, content) + return buf.getvalue() + + +def _mock_head_response( + etag: str | None = '"abc123"', last_modified: str | None = None +) -> Mock: + headers = {} + if etag is not None: + headers["ETag"] = etag + if last_modified is not None: + headers["Last-Modified"] = last_modified + resp = Mock() + resp.headers = headers + resp.raise_for_status = Mock() + return resp + + +def _mock_get_response(content: bytes) -> Mock: + resp = Mock() + resp.content = content + resp.raise_for_status = Mock() + return resp + + +class TestImportScheduleIfChanged(TestCase): + """Cover new-import, unchanged, and missing-header cases for import_schedule_if_changed.""" + + def _provider(self, **kwargs: object) -> FeedPublisher: + defaults: dict[str, object] = { + "code": "TESTP", + "name": "Test Provider", + "schedule_url": "https://example.com/gtfs.zip", + "timezone": "America/Costa_Rica", + "is_active": True, + } + defaults.update(kwargs) + return FeedPublisher.objects.create(**defaults) + + @patch("feed.schedule.importer.requests.get") + @patch("feed.schedule.importer.requests.head") + def test_new_etag_imports_and_populates_tables( + self, mock_head: Mock, mock_get: Mock + ) -> None: + provider = self._provider() + mock_head.return_value = _mock_head_response(etag='"new-etag"') + mock_get.return_value = _mock_get_response(_build_gtfs_zip_bytes()) + + result = import_schedule_if_changed(provider) + + self.assertTrue(result) + feeds = Feed.objects.filter(feed_publisher=provider, is_current=True) + self.assertEqual(feeds.count(), 1) + feed = feeds.first() + self.assertEqual(feed.http_etag, '"new-etag"') + + self.assertEqual(Route.objects.filter(feed=feed).count(), 1) + self.assertEqual(Trip.objects.filter(feed=feed).count(), 1) + self.assertEqual(Stop.objects.filter(feed=feed).count(), 2) + self.assertEqual(StopTime.objects.filter(feed=feed).count(), 2) + self.assertEqual(Shape.objects.filter(feed=feed).count(), 2) + self.assertEqual(Calendar.objects.filter(feed=feed).count(), 1) + self.assertEqual(CalendarDate.objects.filter(feed=feed).count(), 1) + + stop = Stop.objects.filter(feed=feed).first() + self.assertIsNotNone(stop.stop_point) + # parent_station is a non-nullable CharField with a blank cell in the + # CSV; it must be coerced to "" (not None) or bulk_create would raise + # a NotNullViolation. + self.assertEqual(stop.parent_station, "") + + trip = Trip.objects.filter(feed=feed).first() + self.assertIsNone(trip.linked_route) + # blank direction_id/wheelchair_accessible/bikes_allowed -> coerced to 0 + self.assertEqual(trip.direction_id, 0) + self.assertEqual(trip.wheelchair_accessible, 0) + self.assertEqual(trip.bikes_allowed, 0) + + stop_time = StopTime.objects.filter(feed=feed, stop_id="S1").first() + self.assertEqual(stop_time.pickup_type, 0) + self.assertEqual(stop_time.drop_off_type, 0) + + @patch("feed.schedule.importer.requests.get") + @patch("feed.schedule.importer.requests.head") + def test_lean_stop_times_missing_pickup_drop_off_columns_imports_as_zero( + self, mock_head: Mock, mock_get: Mock + ) -> None: + """Real bUCR feed shape: stop_times.txt has no pickup_type/drop_off_type + + columns at all (not just blank cells). Those StopTime fields are + non-nullable with no default, so an entirely-absent column must still + be coerced to 0, not left as None. + """ + provider = self._provider() + mock_head.return_value = _mock_head_response(etag='"lean-etag"') + mock_get.return_value = _mock_get_response( + _build_gtfs_zip_bytes(lean_stop_times=True) + ) + + result = import_schedule_if_changed(provider) + + self.assertTrue(result) + feed = Feed.objects.filter(feed_publisher=provider, is_current=True).first() + self.assertIsNotNone(feed) + stop_times = StopTime.objects.filter(feed=feed) + self.assertEqual(stop_times.count(), 2) + for stop_time in stop_times: + self.assertEqual(stop_time.pickup_type, 0) + self.assertEqual(stop_time.drop_off_type, 0) + + @patch("feed.schedule.importer.requests.get") + @patch("feed.schedule.importer.requests.head") + def test_same_etag_skips_import(self, mock_head: Mock, mock_get: Mock) -> None: + provider = self._provider() + current_feed = Feed.objects.create( + feed_id="TESTP (existing)", + feed_publisher=provider, + http_etag='"same-etag"', + is_current=True, + ) + mock_head.return_value = _mock_head_response(etag='"same-etag"') + + result = import_schedule_if_changed(provider) + + self.assertFalse(result) + mock_get.assert_not_called() + self.assertEqual(Feed.objects.count(), 1) + current_feed.refresh_from_db() + self.assertTrue(current_feed.is_current) + + @patch("feed.schedule.importer.requests.get") + @patch("feed.schedule.importer.requests.head") + def test_changed_etag_flips_previous_current_feed( + self, mock_head: Mock, mock_get: Mock + ) -> None: + provider = self._provider() + old_feed = Feed.objects.create( + feed_id="TESTP (old)", + feed_publisher=provider, + http_etag='"old-etag"', + is_current=True, + ) + mock_head.return_value = _mock_head_response(etag='"new-etag"') + mock_get.return_value = _mock_get_response(_build_gtfs_zip_bytes()) + + result = import_schedule_if_changed(provider) + + self.assertTrue(result) + old_feed.refresh_from_db() + self.assertFalse(old_feed.is_current) + self.assertEqual(Feed.objects.filter(is_current=True).count(), 1) + + @patch("feed.schedule.importer.requests.get") + @patch("feed.schedule.importer.requests.head") + def test_missing_etag_header_falls_back_and_still_imports( + self, mock_head: Mock, mock_get: Mock + ) -> None: + provider = self._provider() + Feed.objects.create( + feed_id="TESTP (existing)", + feed_publisher=provider, + http_etag=None, + is_current=True, + ) + # No ETag, no Last-Modified -> can't prove unchanged -> proceed with import. + mock_head.return_value = _mock_head_response(etag=None, last_modified=None) + mock_get.return_value = _mock_get_response(_build_gtfs_zip_bytes()) + + result = import_schedule_if_changed(provider) + + self.assertTrue(result) + self.assertEqual(Feed.objects.filter(is_current=True).count(), 1) + + def test_no_schedule_url_returns_false(self) -> None: + provider = self._provider(schedule_url="") + result = import_schedule_if_changed(provider) + self.assertFalse(result) + self.assertEqual(Feed.objects.count(), 0) + + @patch("feed.models.StopTime.objects.bulk_create") + @patch("feed.schedule.importer.requests.get") + @patch("feed.schedule.importer.requests.head") + def test_mid_import_failure_rolls_back_whole_feed( + self, mock_head: Mock, mock_get: Mock, mock_bulk_create: Mock + ) -> None: + """A failure partway through (here, stop_times) must leave no trace: no new + Feed, and none of the earlier tables' rows (agency, stops, ...) persisted. + """ + provider = self._provider() + mock_head.return_value = _mock_head_response(etag='"new-etag"') + mock_get.return_value = _mock_get_response(_build_gtfs_zip_bytes()) + mock_bulk_create.side_effect = RuntimeError("simulated mid-import DB failure") + + result = import_schedule_if_changed(provider) + + self.assertFalse(result) + self.assertEqual(Feed.objects.count(), 0) + self.assertEqual(Agency.objects.count(), 0) + self.assertEqual(Stop.objects.count(), 0) + self.assertEqual(Route.objects.count(), 0) + self.assertEqual(Trip.objects.count(), 0) + + +class TestFetchScheduleTask(TestCase): + """Cover the fetch_schedule Celery task's provider iteration.""" + + def test_no_active_providers_returns_message(self) -> None: + FeedPublisher.objects.create( + code="INACTIVE", + name="Inactive Provider", + schedule_url="https://example.com/gtfs.zip", + timezone="America/Costa_Rica", + is_active=False, + ) + result = fetch_schedule() + self.assertIn("no active providers", result) + self.assertEqual(Feed.objects.count(), 0) + + @patch("feed.schedule.importer.requests.get") + @patch("feed.schedule.importer.requests.head") + def test_active_provider_gets_updated( + self, mock_head: Mock, mock_get: Mock + ) -> None: + provider = FeedPublisher.objects.create( + code="ACTIVEP", + name="Active Provider", + schedule_url="https://example.com/gtfs.zip", + timezone="America/Costa_Rica", + is_active=True, + ) + mock_head.return_value = _mock_head_response(etag='"etag-1"') + mock_get.return_value = _mock_get_response(_build_gtfs_zip_bytes()) + + result = fetch_schedule() + + self.assertIn("ACTIVEP", result) + self.assertIn("updated=", result) + self.assertEqual( + Feed.objects.filter(feed_publisher=provider, is_current=True).count(), 1 + ) diff --git a/backend/feed/urls.py b/backend/feed/urls.py index 25b6dfc..d61929f 100644 --- a/backend/feed/urls.py +++ b/backend/feed/urls.py @@ -1,3 +1,5 @@ +"""URL routes for the feed app's schedule and realtime endpoints.""" + from django.urls import path from . import views diff --git a/backend/feed/utils.py b/backend/feed/utils.py deleted file mode 100644 index 1dfd5d3..0000000 --- a/backend/feed/utils.py +++ /dev/null @@ -1,83 +0,0 @@ -from .models import Feed, Trip -from operations.models import Vehicle, Operator -from runs.models import Run - - -def validate_run_request_data(run_data) -> tuple[bool, str | None]: - """ - Validate incoming run payload against system state and current GTFS feed. - - Args: - run_data (dict): Run request payload to validate. Expected keys include - ``vehicle_id``, ``operator_id``, ``route_id``, ``trip_id``, - ``direction_id``, ``shape_id``, and ``schedule_relationship``. - - Returns: - tuple[bool, str | None]: A tuple where the first value is ``True`` when - the payload is valid. The second value is ``None`` on success, or an - error code string on failure. - - Example: - >>> run_data = { - ... "vehicle_id": "BUS-01", - ... "operator_id": "OP-10", - ... "route_id": "10", - ... "trip_id": "10_20260427_1", - ... "direction_id": "1", - ... "shape_id": "shape_10_1", - ... "schedule_relationship": "SCHEDULED", - ... } - >>> validate_run_request_data(run_data) - (True, None) - """ - feed = Feed.objects.filter(is_current=True).first() - trip = Trip.objects.filter(feed=feed, trip_id=run_data.get("trip_id")).count() - if run_data.get("schedule_relationship") == "SCHEDULED" and trip > 0: - return (True, None) - # Are all required fields present and non-empty? - required = [ - "vehicle_id", - "operator_id", - "route_id", - "trip_id", - "direction_id", - "shape_id", - "schedule_relationship", - ] - if any(run_data.get(field) in (None, "") for field in required): - return (False, "MISSING_REQUIRED_FIELDS") - # JSON often sends numbers as strings ("0" instead of 0). The database stores it as an integer, so we convert. If the value can't be converted (e.g. "abc"), reject. - try: - direction_id = int(run_data["direction_id"]) - except (TypeError, ValueError): - return (False, "INVALID_DIRECTION_ID") - if direction_id not in (0, 1): - return (False, "INVALID_DIRECTION_ID") - # Does the vehicle exist? - if not Vehicle.objects.filter(id=run_data["vehicle_id"]).exists(): - return (False, "VEHICLE_NOT_FOUND") - # Does the operator exist? - if not Operator.objects.filter(id=run_data["operator_id"]).exists(): - return (False, "OPERATOR_NOT_FOUND") - # Is the bus in another active run? - if Run.objects.filter( - vehicle_id=run_data["vehicle_id"], - run_lifecycle_state="IN_PROGRESS", - ).exists(): - return (False, "VEHICLE_ALREADY_IN_PROGRESS") - # Is there a current GTFS Feed? - feed = Feed.objects.filter(is_current=True).first() - if feed is None: - return (False, "CURRENT_FEED_NOT_FOUND") - # Does the trip exist in the current GTFS feed? - trip_exists = Trip.objects.filter( - feed=feed, - trip_id=run_data["trip_id"], - route_id=run_data["route_id"], - direction_id=direction_id, - shape_id=run_data["shape_id"], - ).exists() - if not trip_exists: - return (False, "TRIP_NOT_FOUND_IN_CURRENT_FEED") - - return (True, None) diff --git a/backend/feed/views.py b/backend/feed/views.py index eec06cb..4a856a2 100644 --- a/backend/feed/views.py +++ b/backend/feed/views.py @@ -1,28 +1,45 @@ +"""Views serving the published GTFS Schedule zip and GTFS Realtime feed files.""" + from django.shortcuts import render from django.conf import settings -from django.http import FileResponse +from django.http import ( + FileResponse, + HttpRequest, + HttpResponse, + HttpResponseBase, + HttpResponseNotFound, +) from django.views.decorators.clickjacking import xframe_options_exempt # Create your views here. -def status(request): +def status(request: HttpRequest) -> HttpResponse: + """Render the feed status page.""" return render(request, "status.html") -def schedule(request): - file_path = settings.BASE_DIR / "feed" / "files" / "bUCR_GTFS.zip" - return FileResponse(open(file_path, "rb"), filename="bUCR_GTFS.zip") +def schedule(request: HttpRequest) -> HttpResponseBase: + """Serve the published GTFS Schedule zip, or 404 if it hasn't been exported yet.""" + file_path = settings.BASE_DIR / "feed" / "files" / "gtfs.zip" + if not file_path.exists(): + return HttpResponseNotFound( + "GTFS Schedule zip not yet available. " + "Run 'manage.py export_gtfs' or wait for the hourly Celery task." + ) + return FileResponse(open(file_path, "rb"), as_attachment=True, filename="gtfs.zip") @xframe_options_exempt -def vehicle_json(request): +def vehicle_json(request: HttpRequest) -> HttpResponseBase: + """Serve the published VehiclePositions feed as JSON.""" file_path = settings.BASE_DIR / "feed" / "files" / "vehicle_positions.json" return FileResponse(open(file_path, "rb"), filename="vehicle_positions.json") @xframe_options_exempt -def vehicle_pb(request): +def vehicle_pb(request: HttpRequest) -> HttpResponseBase: + """Serve the published VehiclePositions feed as a protobuf.""" file_path = settings.BASE_DIR / "feed" / "files" / "vehicle_positions.pb" return FileResponse( open(file_path, "rb"), as_attachment=True, filename="vehicle_positions.pb" @@ -30,13 +47,15 @@ def vehicle_pb(request): @xframe_options_exempt -def trip_updates_json(request): +def trip_updates_json(request: HttpRequest) -> HttpResponseBase: + """Serve the published TripUpdates feed as JSON.""" file_path = settings.BASE_DIR / "feed" / "files" / "trip_updates.json" return FileResponse(open(file_path, "rb"), filename="trip_updates.json") @xframe_options_exempt -def trip_updates_pb(request): +def trip_updates_pb(request: HttpRequest) -> HttpResponseBase: + """Serve the published TripUpdates feed as a protobuf.""" file_path = settings.BASE_DIR / "feed" / "files" / "trip_updates.pb" return FileResponse( open(file_path, "rb"), as_attachment=True, filename="trip_updates.pb" diff --git a/backend/gtfs-eta b/backend/gtfs-eta new file mode 160000 index 0000000..7381efa --- /dev/null +++ b/backend/gtfs-eta @@ -0,0 +1 @@ +Subproject commit 7381efa3dcfa5351c9068ee875ee8d29520b59e2 diff --git a/backend/messages/README.md b/backend/messages/README.md new file mode 100644 index 0000000..84005d3 --- /dev/null +++ b/backend/messages/README.md @@ -0,0 +1,76 @@ +# Messages · AMQP domain-event publisher + +- **Purpose**: fire-and-forget publisher for run lifecycle domain events, used by + `runs.services.lifecycle.RunLifecycleService` so every completed FSM transition is broadcast to + other services over RabbitMQ. Publishing failures are logged and swallowed — they never affect + the caller's lifecycle path (`messages/publisher.py:1-9`). +- **Key modules**: `publisher.py` — the entire app (no models, no views, no URLs). + +## Transport + +- Broker: kombu over the same RabbitMQ instance Celery uses as its broker + (`Connection(settings.CELERY_BROKER_URL)`, built lazily on first publish — + `messages/publisher.py:66-73` — never at import time, so importing the module never opens a + socket). +- Exchange: `databus.events`, a **durable topic exchange** (`messages/publisher.py:21,27`). +- Routing key: `runs.lifecycle.`, lowercased (`routing_key_for`, `publisher.py:41-43`) — + e.g. `runs.lifecycle.run_confirmed_by_operator`. +- Publishing goes through kombu's `producers` connection pool (`kombu.pools.producers`), with a + bounded retry policy (`max_retries=2`, `interval_start=0`, `interval_step=0.2`, + `interval_max=0.5`) passed to `Producer.publish(retry=True, ...)` (`publisher.py:29-35, 86-97`). + +## Envelope + +`build_envelope` (`publisher.py:46-63`) produces: + +```json +{ + "event": "run_confirmed_by_operator", + "version": 1, + "occurred_at": "2026-08-19T00:00:00+00:00", + "producer": "databus", + "run_id": "", + "from_state": "Initialized", + "to_state": "Confirmed", + "data": { "vehicle_id": "...", "trip_id": "...", "route_id": "..." } +} +``` + +`event`/`from_state`/`to_state` are the enum `.value`s from `RunLifecycleEvents` / +`RunLifecycleStates`. `data` is populated by the caller — for the lifecycle service it includes +whatever of `vehicle_id`, `trip_id`, `route_id` are available on the `Run` +(`runs/services/lifecycle.py:112-132`). + +## Consumer contract + +An external consumer should: +1. Declare (or rely on this publisher declaring) the `databus.events` topic exchange, durable. +2. Bind its own durable queue to that exchange with a topic pattern under `runs.lifecycle.*` + (e.g. `runs.lifecycle.run_completed` for one event, `runs.lifecycle.#` for all run lifecycle + events). +3. Deserialize the body as JSON and expect the envelope shape above — `version` is included so + consumers can branch on schema changes. +4. Not expect delivery guarantees beyond the small retry policy above: this publisher is + fire-and-forget and does not use publisher confirms, so a consumer that needs strict + at-least-once semantics should treat `messages` as best-effort and reconcile via + `GET /api/runs//history/` (the authoritative audit log) rather than relying on AMQP alone. + +## Configuration + +- `CELERY_BROKER_URL` — read indirectly via `settings.CELERY_BROKER_URL`, itself built from + `RABBITMQ_HOST`/`RABBITMQ_PORT`/`RABBITMQ_USER`/`RABBITMQ_PASS` (see `backend/databus/README.md`). + +## Tests + +``` +docker compose -f compose.dev.yml run --rm orchestrator uv run pytest messages/ -q +``` +`messages/tests/test_publisher.py` covers routing-key derivation, envelope shape, the +publish-with-mocked-pool happy path, error-swallowing on connection/publish failures, and lazy +connection caching. `make test` runs the full suite. + +## See also + +`docs/content/interfaces/amqp-events.md` documents this publisher's exchange, routing-key +namespace, envelope schema, and error policy in more detail, including a sequence diagram of the +publish path. diff --git a/backend/messages/publisher.py b/backend/messages/publisher.py index a69fe46..58f839e 100644 --- a/backend/messages/publisher.py +++ b/backend/messages/publisher.py @@ -1,24 +1,105 @@ -from kombu import Connection, Exchange, Producer +"""Fire-and-forget AMQP publisher for run lifecycle domain events. -connection = Connection("amqp://guest:guest@localhost/") -exchange = Exchange("databus.events", type="direct") -producer = Producer(connection, exchange=exchange) +Publishes to the durable ``databus.events`` topic exchange, keyed by +``runs.lifecycle.``. The broker connection is built lazily on first +use (never at import time) so importing this module never opens a socket, +and it is safe to import from both the Daphne/ASGI process and Celery +workers. Publishing is best-effort: any broker/connection error is caught, +logged, and dropped -- it must never propagate into the caller's lifecycle +path. +""" +import logging +from datetime import UTC, datetime +from typing import Any -def publish_event(name: str, data: dict): - """Publish an event to the databus.events exchange.""" - print(f"Printing event {name} with data: {data}") +from kombu import Connection, Exchange +from kombu.pools import producers +logger = logging.getLogger(__name__) -""" -runs.submission.requested -runs.submission.succeeded -runs.submission.failed -runs.validation.succeeded -runs.validation.failed -runs.initialization.succeeded -runs.initialization.failed - -Client: -runs.* -""" +EXCHANGE_NAME = "databus.events" +ROUTING_KEY_PREFIX = "runs.lifecycle" +PRODUCER_NAME = "databus" +ENVELOPE_VERSION = 1 + +#: Durable topic exchange all domain events are published to. +events_exchange = Exchange(EXCHANGE_NAME, type="topic", durable=True) + +#: Small bounded retry policy handed to kombu's ``ensure()`` via ``Producer.publish(retry=True, ...)``. +_RETRY_POLICY: dict[str, float] = { + "max_retries": 2, + "interval_start": 0, + "interval_step": 0.2, + "interval_max": 0.5, +} + +# Process-wide broker connection, built lazily by `_get_connection`. +_connection: Connection | None = None + + +def routing_key_for(event: str) -> str: + """Derive the topic routing key `runs.lifecycle.` for a lowercase lifecycle event name.""" + return f"{ROUTING_KEY_PREFIX}.{event.lower()}" + + +def build_envelope( + event: str, + run_id: Any, + from_state: str, + to_state: str, + data: dict[str, Any] | None = None, +) -> dict[str, Any]: + """Build the JSON-serializable envelope for a run lifecycle domain event.""" + return { + "event": event, + "version": ENVELOPE_VERSION, + "occurred_at": datetime.now(UTC).isoformat(), + "producer": PRODUCER_NAME, + "run_id": str(run_id), + "from_state": from_state, + "to_state": to_state, + "data": data or {}, + } + + +def _get_connection() -> Connection: + """Return the lazily-initialized, process-wide broker connection built from Django settings.""" + global _connection + if _connection is None: + from django.conf import settings + + _connection = Connection(settings.CELERY_BROKER_URL) + return _connection + + +def publish_event( + event: str, + run_id: Any, + from_state: str, + to_state: str, + data: dict[str, Any] | None = None, +) -> None: + """Publish a run lifecycle domain event; broker errors are logged and swallowed, never raised.""" + envelope = build_envelope(event, run_id, from_state, to_state, data) + routing_key = routing_key_for(event) + try: + connection = _get_connection() + with producers[connection].acquire(block=True) as producer: + producer.publish( + envelope, + exchange=events_exchange, + routing_key=routing_key, + declare=[events_exchange], + serializer="json", + retry=True, + retry_policy=_RETRY_POLICY, + ) + except Exception: + logger.warning( + "Failed to publish run lifecycle event %r for run %s (routing_key=%s)", + event, + run_id, + routing_key, + exc_info=True, + ) diff --git a/backend/messages/tests/__init__.py b/backend/messages/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/messages/tests/test_publisher.py b/backend/messages/tests/test_publisher.py new file mode 100644 index 0000000..3cae081 --- /dev/null +++ b/backend/messages/tests/test_publisher.py @@ -0,0 +1,211 @@ +"""Unit tests for messages.publisher. + +No real broker: `kombu.pools.producers` is monkeypatched with an in-memory +fake pool so `publish_event` never touches the network, and `_get_connection` +is monkeypatched directly where the test only cares about the publish call +(avoiding a dependency on real RabbitMQ settings). Errors raised anywhere in +the publish path must be swallowed -- publishing must never propagate into +the caller. +""" + +import logging + +import pytest + +from messages import publisher + + +# --------------------------------------------------------------------------- +# routing_key_for +# --------------------------------------------------------------------------- + + +@pytest.mark.parametrize( + "event,expected", + [ + ("run_confirmed_by_operator", "runs.lifecycle.run_confirmed_by_operator"), + ("run_completed", "runs.lifecycle.run_completed"), + ("RUN_STARTED", "runs.lifecycle.run_started"), + ], +) +def test_routing_key_for(event, expected): + assert publisher.routing_key_for(event) == expected + + +# --------------------------------------------------------------------------- +# build_envelope +# --------------------------------------------------------------------------- + + +def test_build_envelope_has_expected_shape(): + envelope = publisher.build_envelope( + event="run_completed", + run_id="run-1", + from_state="IN_PROGRESS", + to_state="COMPLETED", + data={"trip_id": "T1"}, + ) + + assert envelope["event"] == "run_completed" + assert envelope["version"] == 1 + assert envelope["producer"] == "databus" + assert envelope["run_id"] == "run-1" + assert envelope["from_state"] == "IN_PROGRESS" + assert envelope["to_state"] == "COMPLETED" + assert envelope["data"] == {"trip_id": "T1"} + # occurred_at must be a parseable ISO-8601 UTC timestamp. + from datetime import datetime + + parsed = datetime.fromisoformat(envelope["occurred_at"]) + assert parsed.utcoffset() is not None + + +def test_build_envelope_defaults_data_to_empty_dict(): + envelope = publisher.build_envelope( + event="run_started", run_id="run-2", from_state="TRACKING", to_state="IN_PROGRESS" + ) + assert envelope["data"] == {} + + +def test_build_envelope_stringifies_run_id(): + envelope = publisher.build_envelope( + event="run_started", run_id=12345, from_state="A", to_state="B" + ) + assert envelope["run_id"] == "12345" + + +# --------------------------------------------------------------------------- +# publish_event -- happy path +# --------------------------------------------------------------------------- + + +class _FakeAcquireCtx: + """Context manager standing in for kombu's ProducerPool.acquire() result.""" + + def __init__(self, producer): + self._producer = producer + + def __enter__(self): + return self._producer + + def __exit__(self, *exc_info): + return False + + +class _FakePool: + def __init__(self, producer): + self._producer = producer + + def acquire(self, block=True): + return _FakeAcquireCtx(self._producer) + + +class _FakeProducers: + """Stand-in for kombu.pools.producers: a dict keyed by connection.""" + + def __init__(self, producer): + self._producer = producer + + def __getitem__(self, connection): + return _FakePool(self._producer) + + +def test_publish_event_uses_correct_exchange_routing_key_and_body(monkeypatch): + from unittest.mock import MagicMock + + fake_producer = MagicMock() + monkeypatch.setattr(publisher, "producers", _FakeProducers(fake_producer)) + monkeypatch.setattr(publisher, "_get_connection", lambda: object()) + + publisher.publish_event( + event="run_confirmed_by_operator", + run_id="run-42", + from_state="INITIALIZED", + to_state="CONFIRMED", + data={"vehicle_id": "veh-1"}, + ) + + fake_producer.publish.assert_called_once() + _, kwargs = fake_producer.publish.call_args + body = fake_producer.publish.call_args.args[0] + + assert body["event"] == "run_confirmed_by_operator" + assert body["run_id"] == "run-42" + assert body["from_state"] == "INITIALIZED" + assert body["to_state"] == "CONFIRMED" + assert body["data"] == {"vehicle_id": "veh-1"} + assert kwargs["exchange"] is publisher.events_exchange + assert kwargs["routing_key"] == "runs.lifecycle.run_confirmed_by_operator" + assert kwargs["serializer"] == "json" + assert kwargs["retry"] is True + + +def test_publish_event_declares_the_exchange(monkeypatch): + from unittest.mock import MagicMock + + fake_producer = MagicMock() + monkeypatch.setattr(publisher, "producers", _FakeProducers(fake_producer)) + monkeypatch.setattr(publisher, "_get_connection", lambda: object()) + + publisher.publish_event( + event="run_completed", run_id="run-1", from_state="IN_PROGRESS", to_state="COMPLETED" + ) + + _, kwargs = fake_producer.publish.call_args + assert kwargs["declare"] == [publisher.events_exchange] + + +# --------------------------------------------------------------------------- +# publish_event -- errors are swallowed, never propagated +# --------------------------------------------------------------------------- + + +def test_publish_event_swallows_connection_errors(monkeypatch, caplog): + def _boom(): + raise ConnectionRefusedError("broker unreachable") + + monkeypatch.setattr(publisher, "_get_connection", _boom) + + with caplog.at_level(logging.WARNING): + # Must not raise. + publisher.publish_event( + event="run_completed", run_id="run-1", from_state="IN_PROGRESS", to_state="COMPLETED" + ) + + assert any("Failed to publish run lifecycle event" in msg for msg in caplog.messages) + + +def test_publish_event_swallows_producer_publish_errors(monkeypatch, caplog): + from unittest.mock import MagicMock + + fake_producer = MagicMock() + fake_producer.publish.side_effect = RuntimeError("channel closed") + monkeypatch.setattr(publisher, "producers", _FakeProducers(fake_producer)) + monkeypatch.setattr(publisher, "_get_connection", lambda: object()) + + with caplog.at_level(logging.WARNING): + # Must not raise. + publisher.publish_event( + event="run_completed", run_id="run-1", from_state="IN_PROGRESS", to_state="COMPLETED" + ) + + assert any("Failed to publish run lifecycle event" in msg for msg in caplog.messages) + + +# --------------------------------------------------------------------------- +# _get_connection -- lazy, cached, built from Django settings +# --------------------------------------------------------------------------- + + +def test_get_connection_is_lazily_cached(monkeypatch, settings): + monkeypatch.setattr(publisher, "_connection", None) + settings.CELERY_BROKER_URL = "amqp://guest:guest@message-broker:5672//" + + first = publisher._get_connection() + second = publisher._get_connection() + + assert first is second + assert first.as_uri().startswith("amqp://") + + # Cleanup so other tests build a fresh connection from their own settings. + monkeypatch.setattr(publisher, "_connection", None) diff --git a/backend/operations/README.md b/backend/operations/README.md new file mode 100644 index 0000000..b34f28f --- /dev/null +++ b/backend/operations/README.md @@ -0,0 +1,49 @@ +# Operations · fleet & operator domain + +- **Purpose**: owns the fleet/operator domain models — companies, operators, telemetry equipment, + and vehicles — that `runs` and `api` reference. No views of its own (`operations/views.py` is a + placeholder; reads/writes go through `api`'s router-registered ViewSets). +- **Key modules**: `models.py` (all domain models), `admin.py` (Django admin registration). + +## Models + +| Model | Role | +| --- | --- | +| `Company` | The legal entity behind a GTFS `Agency` (via `linked_agency` M2M). | +| `Operator` | A driver/dispatcher/administrator; one-to-one with a Django `User`, M2M to `Company`. | +| `DataProvider` | Owner of telemetry `Equipment`, M2M to `Company`. | +| `Vehicle` | A fleet vehicle; FK to `Company`; amenity/accessibility/status choice fields. | +| `Equipment` | An onboard telemetry device (GPS/sensor unit); FK to `DataProvider` and `Vehicle`. Every `save()` appends a snapshot to `EquipmentLog` (`models.py:162-175`). | +| `Sensor` | A logical data feed registered on an `Equipment`, flagged by what it provides (`provides_position`, `provides_occupancy`, ...). `source_type` is one of `mqtt` / `http` / `both`; `source_http_url` is the polled URL and `source_json_mapping` its field mapping. | +| `EquipmentLog` | Immutable audit trail — one row per `Equipment.save()`. | + +## `Sensor.source_type=http` → `fetch_positions` + +`Sensor` rows with `status="ACTIVE"`, `provides_position=True`, and `source_type in {"http", +"both"}` are exactly what `realtime_engine.tasks.fetch_positions` polls every 10 seconds +(`realtime_engine/tasks.py:177-182`): it fetches each sensor's `source_http_url` through the +`"http"` adapter, filters to vehicles with an active run, and republishes readings on +`transit/vehicle//position` for the MQTT consumer path. `Equipment.vehicle` is what resolves a +sensor to a vehicle for the in-service filter. + +## Data in / data out + +- PostgreSQL only via the ORM — no Redis keys, no queues, no HTTP endpoints of its own. +- `logo`/`photo` `ImageField`s are written under `MEDIA_ROOT` (`companies/`, `operators/`, + `data-providers/`). + +## Configuration + +No app-specific env vars. + +## Tests + +``` +docker compose -f compose.dev.yml run --rm orchestrator uv run pytest operations/ -q +``` +`operations/tests.py` is currently empty (Django's generated stub); coverage of this app's +behavior lives in `realtime_engine`'s `fetch_positions` tests. `make test` runs the full suite. + +## Docs + +- [Django Models](../../docs/content/data-model/django-models.md) diff --git a/backend/operations/admin.py b/backend/operations/admin.py index 5dd46d4..dc2c0c0 100644 --- a/backend/operations/admin.py +++ b/backend/operations/admin.py @@ -1,3 +1,5 @@ +"""Register operations domain models with the Django admin site.""" + from django.contrib.gis import admin from .models import ( Vehicle, @@ -6,6 +8,7 @@ Company, Equipment, EquipmentLog, + Sensor, ) # Register your models here. @@ -16,3 +19,4 @@ admin.site.register(Company, admin.GISModelAdmin) admin.site.register(Equipment) admin.site.register(EquipmentLog) +admin.site.register(Sensor) diff --git a/backend/operations/apps.py b/backend/operations/apps.py index 59e720f..8075fa5 100644 --- a/backend/operations/apps.py +++ b/backend/operations/apps.py @@ -1,5 +1,9 @@ +"""Django AppConfig for the operations app.""" + from django.apps import AppConfig class OperationsConfig(AppConfig): + """Django app configuration for `operations` (fleet/operator/vehicle/equipment domain models).""" + name = "operations" diff --git a/backend/operations/fixtures/operations.json b/backend/operations/fixtures/operations.json index d2f8ede..f494db8 100644 --- a/backend/operations/fixtures/operations.json +++ b/backend/operations/fixtures/operations.json @@ -1,247 +1,615 @@ [ { - "model": "operation.dataprovider", - "pk": "1964", + "model": "operations.company", + "pk": "ST", "fields": { - "name": "EIE", - "description": "Escuela de Ingeniería Eléctrica", - "agency": [] + "name": "Sección Transportes", + "description": "Sección Transportes de la Oficina de Servicios Generales de la Universidad de Costa Rica", + "legal_id": null, + "phone": null, + "email": null, + "website": null, + "location": "SRID=4326;POINT (-84.06167418885983 9.953682854982432)", + "logo": "", + "linked_agency": [2] } }, { - "model": "operation.company", - "pk": "OSG", + "model": "operations.operator", + "pk": "123456", "fields": { - "agency": 1, - "name": "Sección Transportes", - "description": "", + "user": 1, + "phone": null, + "photo": "", + "is_driver": true, + "is_dispatcher": true, + "is_administrator": true, + "company": ["ST"] + } + }, + { + "model": "operations.dataprovider", + "pk": "navsat", + "fields": { + "name": "NavSat", + "description": "NavSat", + "email": "navsat@navsat.com", "phone": null, - "email": null, - "website": null, - "location": "SRID=4326;POINT (-84.04256870656747 9.943725615890358)", "logo": "" } }, { - "model": "operation.vehicle", - "pk": "SJB1234", + "model": "operations.vehicle", + "pk": "299-1014", + "fields": { + "company": "ST", + "label": "299-1014", + "license_plate": "299-1014", + "wheelchair_accessible": "NO_VALUE", + "wifi": "NO_VALUE", + "air_conditioning": "NO_VALUE", + "mobile_charging": "NO_VALUE", + "bike_rack": "NO_VALUE", + "has_screen": false, + "has_headsign_screen": false, + "has_audio": false, + "status": "IN_SERVICE" + } + }, + { + "model": "operations.vehicle", + "pk": "299-1015", + "fields": { + "company": "ST", + "label": "299-1015", + "license_plate": "299-1015", + "wheelchair_accessible": "NO_VALUE", + "wifi": "NO_VALUE", + "air_conditioning": "NO_VALUE", + "mobile_charging": "NO_VALUE", + "bike_rack": "NO_VALUE", + "has_screen": false, + "has_headsign_screen": false, + "has_audio": false, + "status": "IN_SERVICE" + } + }, + { + "model": "operations.vehicle", + "pk": "299-604", "fields": { - "agency": 1, - "label": "SJB1234", - "license_plate": "SJB1234", - "wheelchair_accessible": "WHEELCHAIR_ACCESIBLE", + "company": "ST", + "label": "299-604", + "license_plate": "299-604", + "wheelchair_accessible": "NO_VALUE", "wifi": "NO_VALUE", - "air_conditioning": "UNKNOWN", - "mobile_charging": "AVAILABLE", - "bike_rack": "UNAVAILABLE", + "air_conditioning": "NO_VALUE", + "mobile_charging": "NO_VALUE", + "bike_rack": "NO_VALUE", "has_screen": false, "has_headsign_screen": false, - "has_audio": false + "has_audio": false, + "status": "IN_SERVICE" } }, { - "model": "operation.vehicle", - "pk": "SJB5678", + "model": "operations.vehicle", + "pk": "299-921", "fields": { - "agency": 1, - "label": "SJB5678", - "license_plate": "SJB5678", - "wheelchair_accessible": "UNKNOWN", - "wifi": "AVAILABLE", + "company": "ST", + "label": "299-921", + "license_plate": "299-921", + "wheelchair_accessible": "NO_VALUE", + "wifi": "NO_VALUE", "air_conditioning": "NO_VALUE", - "mobile_charging": "UNAVAILABLE", - "bike_rack": "UNKNOWN", + "mobile_charging": "NO_VALUE", + "bike_rack": "NO_VALUE", "has_screen": false, - "has_headsign_screen": true, - "has_audio": false + "has_headsign_screen": false, + "has_audio": false, + "status": "IN_SERVICE" + } + }, + { + "model": "operations.vehicle", + "pk": "299-922", + "fields": { + "company": "ST", + "label": "299-922", + "license_plate": "299-922", + "wheelchair_accessible": "NO_VALUE", + "wifi": "NO_VALUE", + "air_conditioning": "NO_VALUE", + "mobile_charging": "NO_VALUE", + "bike_rack": "NO_VALUE", + "has_screen": false, + "has_headsign_screen": false, + "has_audio": false, + "status": "IN_SERVICE" + } + }, + { + "model": "operations.vehicle", + "pk": "299-987", + "fields": { + "company": "ST", + "label": "299-987", + "license_plate": "299-987", + "wheelchair_accessible": "NO_VALUE", + "wifi": "NO_VALUE", + "air_conditioning": "NO_VALUE", + "mobile_charging": "NO_VALUE", + "bike_rack": "NO_VALUE", + "has_screen": false, + "has_headsign_screen": false, + "has_audio": false, + "status": "IN_SERVICE" + } + }, + { + "model": "operations.equipment", + "pk": "0c50dc1b-0773-42e2-b5cf-514eaf192cdb", + "fields": { + "data_provider": "navsat", + "name": "OBE 299-922", + "vehicle": "299-922", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "created_at": "2026-09-04T19:00:40.817Z", + "updated_at": "2026-09-04T19:00:40.817Z" + } + }, + { + "model": "operations.equipment", + "pk": "2cec183d-d037-402a-9f88-0da4aed5ff05", + "fields": { + "data_provider": "navsat", + "name": "OBE 299-987", + "vehicle": "299-987", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "created_at": "2026-09-04T19:01:28.274Z", + "updated_at": "2026-09-04T19:01:28.274Z" + } + }, + { + "model": "operations.equipment", + "pk": "3b3ff721-be7c-40b7-85ac-a631b6216cb1", + "fields": { + "data_provider": "navsat", + "name": "OBE 299-604", + "vehicle": "299-604", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "created_at": "2026-09-04T19:01:09.234Z", + "updated_at": "2026-09-04T19:01:09.234Z" + } + }, + { + "model": "operations.equipment", + "pk": "5dc3b2f3-067f-424c-8f17-a74fcfc74bcd", + "fields": { + "data_provider": "navsat", + "name": "OBE 299-921", + "vehicle": "299-921", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "created_at": "2026-09-04T19:00:53.877Z", + "updated_at": "2026-09-04T19:00:53.877Z" } }, { - "model": "operation.equipment", - "pk": "16736b9e-43d6-49f0-a269-6f71573d7730", + "model": "operations.equipment", + "pk": "7cc8495d-8440-4024-a334-6d1cadc09e87", "fields": { - "data_provider": "1964", - "vehicle": "SJB5678", - "serial_number": "H4939GNE9", - "brand": "Hertz", - "model": "LM741", - "software_version": "v2.4", + "data_provider": "navsat", + "name": "OBE 299-1014", + "vehicle": "299-1014", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "created_at": "2026-09-04T18:58:15.732Z", + "updated_at": "2026-09-04T18:59:25.025Z" + } + }, + { + "model": "operations.equipment", + "pk": "b444a3e6-80c6-4f5f-9783-ae4919bb473e", + "fields": { + "data_provider": "navsat", + "name": "OBE 299-1015", + "vehicle": "299-1015", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "created_at": "2026-09-04T19:00:21.463Z", + "updated_at": "2026-09-04T19:00:21.463Z" + } + }, + { + "model": "operations.sensor", + "pk": "43e5c5f3-5205-450c-8b90-95acdd8c6cd1", + "fields": { + "name": "GPS 299-987", + "equipment": "2cec183d-d037-402a-9f88-0da4aed5ff05", "provides_vehicle": true, - "provides_operator": true, - "provides_run": true, + "provides_operator": false, + "provides_run": false, "provides_position": true, - "provides_progression": true, - "provides_occupancy": true, + "provides_progression": false, + "provides_occupancy": false, "provides_conditions": false, "provides_emissions": false, "provides_travelers": false, "provides_authorizations": false, "provides_fares": false, "provides_transfers": false, - "provides_alerts": true, - "created_at": "2024-08-29T19:43:20.404Z", - "updated_at": "2024-08-29T19:43:20.404Z" + "provides_alerts": false, + "source_type": "http", + "source_http_url": "https://wsclientes.navsat.com/ws/navsatbi/laststatenavmi/rcu/bdxFtpLuYSfi/114700/0/todos", + "source_json_mapping": { + "type": "array", + "paths": { + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer", + "timestamp": "crDateTime", + "vehicle_id": "plateNumber" + }, + "units": { "speed": "kmh", "odometer": "km" }, + "timestamp": { + "tz": "America/Costa_Rica", + "format": "%Y-%m-%d %H:%M:%S" + } + }, + "status": "ACTIVE", + "created_at": "2026-09-04T19:10:02.406Z", + "updated_at": "2026-09-04T19:10:02.406Z" } }, { - "model": "operation.equipment", - "pk": "2d01a00e-6287-4bfe-8a2b-7bc8a4e2aa5c", + "model": "operations.sensor", + "pk": "a816095d-f9b3-4572-8970-4faa9edf0f93", "fields": { - "data_provider": "1964", - "vehicle": "SJB1234", - "serial_number": "JE3984GW9", - "brand": "Faraday", - "model": "555", - "software_version": "v1.2", + "name": "GPS 299-1014", + "equipment": "7cc8495d-8440-4024-a334-6d1cadc09e87", "provides_vehicle": true, - "provides_operator": true, - "provides_run": true, + "provides_operator": false, + "provides_run": false, "provides_position": true, - "provides_progression": true, - "provides_occupancy": true, + "provides_progression": false, + "provides_occupancy": false, "provides_conditions": false, "provides_emissions": false, "provides_travelers": false, "provides_authorizations": false, "provides_fares": false, "provides_transfers": false, - "provides_alerts": true, - "created_at": "2024-08-27T17:52:29.271Z", - "updated_at": "2024-08-27T17:52:29.271Z" + "provides_alerts": false, + "source_type": "http", + "source_http_url": "https://wsclientes.navsat.com/ws/navsatbi/laststatenavmi/rcu/bdxFtpLuYSfi/114700/0/todos", + "source_json_mapping": { + "type": "array", + "paths": { + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer", + "timestamp": "crDateTime", + "vehicle_id": "plateNumber" + }, + "units": { "speed": "kmh", "odometer": "km" }, + "timestamp": { + "tz": "America/Costa_Rica", + "format": "%Y-%m-%d %H:%M:%S" + } + }, + "status": "ACTIVE", + "created_at": "2026-09-04T19:06:57.212Z", + "updated_at": "2026-09-04T19:06:57.212Z" } }, { - "model": "operation.operator", - "pk": "1-1234-5678", + "model": "operations.sensor", + "pk": "cad09daa-8782-45b0-87e6-13063df4e6dd", "fields": { - "user": 2, - "vehicle": null, - "equipment": null, - "phone": "87654321", - "photo": "", - "agency": [1, 2], - "data_provider": [] + "name": "GPS 299-604", + "equipment": "3b3ff721-be7c-40b7-85ac-a631b6216cb1", + "provides_vehicle": true, + "provides_operator": false, + "provides_run": false, + "provides_position": true, + "provides_progression": false, + "provides_occupancy": false, + "provides_conditions": false, + "provides_emissions": false, + "provides_travelers": false, + "provides_authorizations": false, + "provides_fares": false, + "provides_transfers": false, + "provides_alerts": false, + "source_type": "http", + "source_http_url": "https://wsclientes.navsat.com/ws/navsatbi/laststatenavmi/rcu/bdxFtpLuYSfi/114700/0/todos", + "source_json_mapping": { + "type": "array", + "paths": { + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer", + "timestamp": "crDateTime", + "vehicle_id": "plateNumber" + }, + "units": { "speed": "kmh", "odometer": "km" }, + "timestamp": { + "tz": "America/Costa_Rica", + "format": "%Y-%m-%d %H:%M:%S" + } + }, + "status": "ACTIVE", + "created_at": "2026-09-04T19:09:04.324Z", + "updated_at": "2026-09-04T19:09:04.324Z" } }, { - "model": "operation.operator", - "pk": "2-1234-5678", + "model": "operations.sensor", + "pk": "d50d1fb4-607c-4497-b226-9c40cea9c4d6", "fields": { - "user": 3, - "vehicle": null, - "equipment": null, - "phone": "87654321", - "photo": "", - "agency": [1, 2], - "data_provider": [] + "name": "GPS 299-921", + "equipment": "5dc3b2f3-067f-424c-8f17-a74fcfc74bcd", + "provides_vehicle": true, + "provides_operator": false, + "provides_run": false, + "provides_position": true, + "provides_progression": false, + "provides_occupancy": false, + "provides_conditions": false, + "provides_emissions": false, + "provides_travelers": false, + "provides_authorizations": false, + "provides_fares": false, + "provides_transfers": false, + "provides_alerts": false, + "source_type": "http", + "source_http_url": "https://wsclientes.navsat.com/ws/navsatbi/laststatenavmi/rcu/bdxFtpLuYSfi/114700/0/todos", + "source_json_mapping": { + "type": "array", + "paths": { + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer", + "timestamp": "crDateTime", + "vehicle_id": "plateNumber" + }, + "units": { "speed": "kmh", "odometer": "km" }, + "timestamp": { + "tz": "America/Costa_Rica", + "format": "%Y-%m-%d %H:%M:%S" + } + }, + "status": "ACTIVE", + "created_at": "2026-09-04T19:08:34.591Z", + "updated_at": "2026-09-04T19:08:34.591Z" } }, { - "model": "operation.run", - "pk": 2, + "model": "operations.sensor", + "pk": "d74ce819-6d3f-4d7a-9ddc-a76c2dc0ecd0", "fields": { - "equipment": "2d01a00e-6287-4bfe-8a2b-7bc8a4e2aa5c", - "vehicle": "SJB1234", - "operator": "1-1234-5678", - "route_id": "bUCR_L1", - "trip_id": "desde_educacion_con_milla_entresemana_13:30", - "direction_id": 0, - "shape_id": "desde_educacion_con_milla", - "start_date": "2024-08-29", - "start_time": "13:30:06", - "schedule_relationship": "SCHEDULED", - "run_lifecycle_state": "IN_PROGRESS" + "name": "GPS 299-922", + "equipment": "0c50dc1b-0773-42e2-b5cf-514eaf192cdb", + "provides_vehicle": true, + "provides_operator": false, + "provides_run": false, + "provides_position": true, + "provides_progression": false, + "provides_occupancy": false, + "provides_conditions": false, + "provides_emissions": false, + "provides_travelers": false, + "provides_authorizations": false, + "provides_fares": false, + "provides_transfers": false, + "provides_alerts": false, + "source_type": "http", + "source_http_url": "https://wsclientes.navsat.com/ws/navsatbi/laststatenavmi/rcu/bdxFtpLuYSfi/114700/0/todos", + "source_json_mapping": { + "type": "array", + "paths": { + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer", + "timestamp": "crDateTime", + "vehicle_id": "plateNumber" + }, + "units": { "speed": "kmh", "odometer": "km" }, + "timestamp": { + "tz": "America/Costa_Rica", + "format": "%Y-%m-%d %H:%M:%S" + } + }, + "status": "ACTIVE", + "created_at": "2026-09-04T19:08:05.563Z", + "updated_at": "2026-09-04T19:08:05.563Z" } }, { - "model": "operation.run", - "pk": 3, + "model": "operations.sensor", + "pk": "f530dd7c-59d6-41a5-bae0-a45744776401", "fields": { - "equipment": "16736b9e-43d6-49f0-a269-6f71573d7730", - "vehicle": "SJB5678", - "operator": "2-1234-5678", - "route_id": "bUCR_L2", - "trip_id": "desde_educacion_sin_milla_entresemana_13:35", - "direction_id": 0, - "shape_id": "desde_educacion_sin_milla", - "start_date": "2024-08-29", - "start_time": "13:35:12", - "schedule_relationship": "SCHEDULED", - "run_lifecycle_state": "IN_PROGRESS" + "name": "GPS 299-1015", + "equipment": "b444a3e6-80c6-4f5f-9783-ae4919bb473e", + "provides_vehicle": true, + "provides_operator": false, + "provides_run": false, + "provides_position": true, + "provides_progression": false, + "provides_occupancy": false, + "provides_conditions": false, + "provides_emissions": false, + "provides_travelers": false, + "provides_authorizations": false, + "provides_fares": false, + "provides_transfers": false, + "provides_alerts": false, + "source_type": "http", + "source_http_url": "https://wsclientes.navsat.com/ws/navsatbi/laststatenavmi/rcu/bdxFtpLuYSfi/114700/0/todos", + "source_json_mapping": { + "type": "array", + "paths": { + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer", + "timestamp": "crDateTime", + "vehicle_id": "plateNumber" + }, + "units": { "speed": "kmh", "odometer": "km" }, + "timestamp": { + "tz": "America/Costa_Rica", + "format": "%Y-%m-%d %H:%M:%S" + } + }, + "status": "ACTIVE", + "created_at": "2026-09-04T19:07:36.065Z", + "updated_at": "2026-09-04T19:07:36.065Z" } }, { - "model": "operation.position", + "model": "operations.equipmentlog", "pk": 2, "fields": { - "run": 2, - "timestamp": "2024-08-29T19:35:48Z", - "point": "SRID=4326;POINT (-84.04555530733563 9.93540698388418)", - "altitude": null, - "speed": 12.0, - "bearing": 0.0, - "odometer": 9.0 + "equipment": "7cc8495d-8440-4024-a334-6d1cadc09e87", + "data_provider": "navsat", + "vehicle": "299-1014", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "updated_at": "2026-09-04T18:58:15.733Z" } }, { - "model": "operation.position", + "model": "operations.equipmentlog", "pk": 3, "fields": { - "run": 3, - "timestamp": "2024-08-29T19:35:52Z", - "point": "SRID=4326;POINT (-84.05215754678477 9.935495431066292)", - "altitude": null, - "speed": 25.0, - "bearing": 75.0, - "odometer": 479.0 + "equipment": "7cc8495d-8440-4024-a334-6d1cadc09e87", + "data_provider": "navsat", + "vehicle": "299-1014", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "updated_at": "2026-09-04T18:59:25.026Z" } }, { - "model": "operation.progression", - "pk": 2, + "model": "operations.equipmentlog", + "pk": 4, "fields": { - "run": 2, - "timestamp": "2024-08-29T20:03:29.055Z", - "current_stop_sequence": 3, - "stop_id": "bUCR_0_04", - "current_status": "INCOMING_AT", - "congestion_level": "RUNNING_SMOOTHLY" + "equipment": "b444a3e6-80c6-4f5f-9783-ae4919bb473e", + "data_provider": "navsat", + "vehicle": "299-1015", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "updated_at": "2026-09-04T19:00:21.463Z" } }, { - "model": "operation.progression", - "pk": 3, + "model": "operations.equipmentlog", + "pk": 5, "fields": { - "run": 3, - "timestamp": "2024-08-29T20:03:57.208Z", - "current_stop_sequence": 1, - "stop_id": "bUCR_0_04", - "current_status": "IN_TRANSIT_TO", - "congestion_level": "STOP_AND_GO" + "equipment": "0c50dc1b-0773-42e2-b5cf-514eaf192cdb", + "data_provider": "navsat", + "vehicle": "299-922", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "updated_at": "2026-09-04T19:00:40.818Z" } }, { - "model": "operation.occupancy", - "pk": 2, + "model": "operations.equipmentlog", + "pk": 6, "fields": { - "run": 2, - "timestamp": "2024-08-29T20:04:44.101Z", - "occupancy_status": "CRUSHED_STANDING_ROOM_ONLY", - "occupancy_percentage": 90, - "occupancy_count": 43, - "is_wheelchair_accesible": "WHEELCHAIR_INACCESIBLE" + "equipment": "5dc3b2f3-067f-424c-8f17-a74fcfc74bcd", + "data_provider": "navsat", + "vehicle": "299-921", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "updated_at": "2026-09-04T19:00:53.878Z" } }, { - "model": "operation.occupancy", - "pk": 3, + "model": "operations.equipmentlog", + "pk": 7, + "fields": { + "equipment": "3b3ff721-be7c-40b7-85ac-a631b6216cb1", + "data_provider": "navsat", + "vehicle": "299-604", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "updated_at": "2026-09-04T19:01:09.234Z" + } + }, + { + "model": "operations.equipmentlog", + "pk": 8, "fields": { - "run": 3, - "timestamp": "2024-08-29T20:05:09.166Z", - "occupancy_status": "MANY_SEATS_AVAILABLE", - "occupancy_percentage": 60, - "occupancy_count": 26, - "is_wheelchair_accesible": "WHEELCHAIR_ACCESIBLE" + "equipment": "2cec183d-d037-402a-9f88-0da4aed5ff05", + "data_provider": "navsat", + "vehicle": "299-987", + "serial_number": null, + "brand": null, + "model": null, + "os_version": null, + "app_version": null, + "status": "ACTIVE", + "updated_at": "2026-09-04T19:01:28.274Z" } } ] diff --git a/backend/operations/models.py b/backend/operations/models.py index 2bc0bd2..94fc92b 100644 --- a/backend/operations/models.py +++ b/backend/operations/models.py @@ -1,3 +1,7 @@ +"""Fleet/operator/vehicle/equipment domain models: Company, Operator, Vehicle, Equipment, Sensor, EquipmentLog.""" + +from typing import Any + from django.contrib.gis.db import models from django.contrib.auth.models import User import uuid @@ -9,54 +13,70 @@ class Company(models.Model): """ - A wrapper for the Agency model from GTFS. + A wrapper for the Agency model from GTFS. The legal entity behind it. """ id = models.CharField(max_length=100, primary_key=True) - linked_agency = models.OneToOneField( - Agency, on_delete=models.SET_NULL, blank=True, null=True + # django-stubs can't infer the implicit through-model type parameter for + # this M2M from the call alone; the explicit annotation resolves it. + linked_agency: models.ManyToManyField[Agency, Any] = models.ManyToManyField( + Agency, blank=True ) name = models.CharField(max_length=100) description = models.TextField(blank=True, null=True) + legal_id = models.CharField(max_length=100, blank=True, null=True) phone = models.CharField(max_length=100, blank=True, null=True) email = models.EmailField(blank=True, null=True) website = models.URLField(blank=True, null=True) location = models.PointField(blank=True, null=True) logo = models.ImageField(upload_to="companies/", blank=True, null=True) - def __str__(self): + def __str__(self) -> str: + """Return the company's name.""" return self.name class Operator(models.Model): + """ + A person. A driver, dispatcher or administrator of a given company. + """ + id = models.CharField(max_length=100, primary_key=True, unique=True) user = models.OneToOneField(User, on_delete=models.CASCADE) company = models.ManyToManyField(Company) phone = models.CharField(max_length=100, blank=True, null=True) photo = models.ImageField(upload_to="operators/", blank=True, null=True) + is_driver = models.BooleanField(default=False) + is_dispatcher = models.BooleanField(default=False) + is_administrator = models.BooleanField(default=False) - def __str__(self): + def __str__(self) -> str: + """Return the operator's full name and ID.""" return f"{self.user.first_name} {self.user.last_name} ({self.id})" class DataProvider(models.Model): """ - A GTFS and telemetry data provider for a given company. + A GTFS and telemetry data provider for a given company. Owner of the equipments. """ id = models.CharField(max_length=127, primary_key=True) - company = models.ManyToManyField(Company, blank=True) name = models.CharField(max_length=255) description = models.TextField(blank=True, null=True) email = models.EmailField(blank=True, null=True) phone = models.CharField(max_length=100, blank=True, null=True) logo = models.ImageField(upload_to="data-providers/", blank=True, null=True) - def __str__(self): + def __str__(self) -> str: + """Return the data provider's name.""" return self.name class Vehicle(models.Model): + """ + A vehicle belonging to a company. Used in GTFS. + """ + AMENITIES_CHOICES = [ ("NO_VALUE", "No hay información"), ("UNKNOWN", "Desconocido"), @@ -103,45 +123,33 @@ class Vehicle(models.Model): choices=[ ("IN_SERVICE", "En servicio"), ("OUT_OF_SERVICE", "Fuera de servicio"), - ("SOLD", "Vendido"), ("ON_FIRE", "En llamas"), ], ) - def __str__(self): + def __str__(self) -> str: + """Return the vehicle's company and license plate.""" return f"{self.company}: {self.license_plate}" class Equipment(models.Model): - id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) + """An onboard telemetry device (GPS/sensor unit) installed in a vehicle.""" + id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) data_provider = models.ForeignKey( DataProvider, on_delete=models.PROTECT, blank=True, null=True ) + name = models.CharField(max_length=100, blank=True, null=True) vehicle = models.ForeignKey( Vehicle, on_delete=models.PROTECT, blank=True, null=True ) - # Equipment information + # Hardware/firmware information serial_number = models.CharField(max_length=100, blank=True, null=True) - brand = models.CharField(max_length=100) - model = models.CharField(max_length=100) + brand = models.CharField(max_length=100, blank=True, null=True) + model = models.CharField(max_length=100, blank=True, null=True) os_version = models.CharField(max_length=100, blank=True, null=True) app_version = models.CharField(max_length=100, blank=True, null=True) - # Data provided - provides_vehicle = models.BooleanField(default=False) - provides_operator = models.BooleanField(default=False) - provides_run = models.BooleanField(default=False) - provides_position = models.BooleanField(default=False) - provides_progression = models.BooleanField(default=False) - provides_occupancy = models.BooleanField(default=False) - provides_conditions = models.BooleanField(default=False) - provides_emissions = models.BooleanField(default=False) - provides_travelers = models.BooleanField(default=False) - provides_authorizations = models.BooleanField(default=False) - provides_fares = models.BooleanField(default=False) - provides_transfers = models.BooleanField(default=False) - provides_alerts = models.BooleanField(default=False) - # Registration + status = models.CharField( max_length=100, choices=[("ACTIVE", "Activo"), ("INACTIVE", "Inactivo")], @@ -150,7 +158,8 @@ class Equipment(models.Model): created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) - def save(self, *args, **kwargs): + def save(self, *args: Any, **kwargs: Any) -> None: + """Save the equipment, then append a snapshot of its current fields to EquipmentLog.""" super(Equipment, self).save(*args, **kwargs) EquipmentLog.objects.create( equipment=self, @@ -161,41 +170,23 @@ def save(self, *args, **kwargs): model=self.model, os_version=self.os_version, app_version=self.app_version, - provides_vehicle=self.provides_vehicle, - provides_operator=self.provides_operator, - provides_run=self.provides_run, - provides_position=self.provides_position, - provides_progression=self.provides_progression, - provides_occupancy=self.provides_occupancy, - provides_conditions=self.provides_conditions, - provides_emissions=self.provides_emissions, - provides_travelers=self.provides_travelers, - provides_authorizations=self.provides_authorizations, - provides_fares=self.provides_fares, - provides_transfers=self.provides_transfers, - provides_alerts=self.provides_alerts, status=self.status, ) - def _str_(self): - return f"{self.data_provider}: {self.brand} {self.model} ({self.id})" + def __str__(self) -> str: + """Return the equipment's data provider, brand, model, and ID.""" + return f"{self.data_provider}: {self.name} ({self.id})" -class EquipmentLog(models.Model): - equipment = models.ForeignKey(Equipment, on_delete=models.PROTECT) - data_provider = models.ForeignKey( - DataProvider, on_delete=models.PROTECT, blank=True, null=True - ) - vehicle = models.ForeignKey( - Vehicle, on_delete=models.PROTECT, blank=True, null=True +class Sensor(models.Model): + """A logical data feed (of one or more telemetry types) registered on a piece of Equipment.""" + + id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) + name = models.CharField(max_length=100, blank=True, null=True) + equipment = models.ForeignKey( + Equipment, on_delete=models.PROTECT, blank=True, null=True ) - # Equipment information - serial_number = models.CharField(max_length=100, blank=True, null=True) - brand = models.CharField(max_length=100) - model = models.CharField(max_length=100) - os_version = models.CharField(max_length=100, blank=True, null=True) - app_version = models.CharField(max_length=100, blank=True, null=True) - # Data provided + # Data provided (type of sensor) provides_vehicle = models.BooleanField(default=False) provides_operator = models.BooleanField(default=False) provides_run = models.BooleanField(default=False) @@ -210,12 +201,51 @@ class EquipmentLog(models.Model): provides_transfers = models.BooleanField(default=False) provides_alerts = models.BooleanField(default=False) # Registration + source_type = models.CharField( + max_length=16, + blank=True, + null=True, + choices=[("mqtt", "MQTT"), ("http", "HTTP"), ("both", "Both")], + ) + source_http_url = models.URLField(blank=True, null=True) + source_json_mapping = models.JSONField(blank=True, null=True) + status = models.CharField( max_length=100, choices=[("ACTIVE", "Activo"), ("INACTIVE", "Inactivo")], default="ACTIVE", ) - updated_at = models.DateTimeField(auto_now_add=True) + created_at = models.DateTimeField(auto_now_add=True) + updated_at = models.DateTimeField(auto_now=True) + + def __str__(self) -> str: + """Return the sensor's name and ID.""" + return f"{self.name} ({self.id})" + + +class EquipmentLog(models.Model): + """An immutable snapshot of an Equipment's fields, written each time the equipment is saved.""" + + equipment = models.ForeignKey(Equipment, on_delete=models.PROTECT) + data_provider = models.ForeignKey( + DataProvider, on_delete=models.PROTECT, blank=True, null=True + ) + vehicle = models.ForeignKey( + Vehicle, on_delete=models.PROTECT, blank=True, null=True + ) + # Equipment information + serial_number = models.CharField(max_length=100, blank=True, null=True) + brand = models.CharField(max_length=100, blank=True, null=True) + model = models.CharField(max_length=100, blank=True, null=True) + os_version = models.CharField(max_length=100, blank=True, null=True) + app_version = models.CharField(max_length=100, blank=True, null=True) + status = models.CharField( + max_length=100, + choices=[("ACTIVE", "Activo"), ("INACTIVE", "Inactivo")], + default="ACTIVE", + ) + updated_at = models.DateTimeField(auto_now=True) - def _str_(self): + def __str__(self) -> str: + """Return the log entry's data provider, brand, model, and timestamp.""" return f"{self.data_provider}: {self.brand} {self.model} ({self.updated_at})" diff --git a/backend/operations/tests.py b/backend/operations/tests.py deleted file mode 100644 index 7ce503c..0000000 --- a/backend/operations/tests.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.test import TestCase - -# Create your tests here. diff --git a/backend/operations/views.py b/backend/operations/views.py index 91ea44a..e999fcd 100644 --- a/backend/operations/views.py +++ b/backend/operations/views.py @@ -1,3 +1,3 @@ -from django.shortcuts import render +"""Placeholder for operations app HTTP views (none defined yet — reads/writes go through the API app).""" # Create your views here. diff --git a/backend/pyproject.toml b/backend/pyproject.toml index 38a8d0c..6115069 100644 --- a/backend/pyproject.toml +++ b/backend/pyproject.toml @@ -10,6 +10,7 @@ dependencies = [ "channels-redis>=4.3.0", "daphne>=4.2.1", "django==6.0.4", + "django-cors-headers>=4.9.0", "django-celery-beat>=2.8.1", "django-celery-results>=2.6.0", "django-filter>=25.1", @@ -19,6 +20,7 @@ dependencies = [ "flower>=2.0.1", "geopandas>=1.1.1", "gtfs-django", + "gtfs-eta", "gtfs-io", "gtfs-realtime-bindings>=1.0.0", "gunicorn>=23.0.0", @@ -37,18 +39,99 @@ dependencies = [ [dependency-groups] dev = [ "django-debug-toolbar>=6.0.0", + "django-stubs[compatible-mypy]>=6.0.4", + "mypy>=2.0.0", "pytest>=8.4.1", "pytest-django>=4.11.1", "ruff>=0.12.11", "watchfiles>=0.24.0", ] +[tool.ruff] +# gtfs-eta is a symlink to the sibling repo (see [tool.uv.sources] below), a +# separately-maintained codebase with its own lint baseline — not databus's +# to fix here. Config-level exclude so `ruff check .` stays clean without +# every caller needing to remember a CLI --exclude flag. +extend-exclude = ["gtfs-eta"] + +[tool.ruff.lint] +# Missing-docstring rules only (D100-D107 family): we want *presence* of +# docstrings, not pydocstyle's style nitpicks. extend-select (not select) so +# ruff's default E/F rules stay active alongside this. +extend-select = ["D1"] +# D106 (missing docstring in nested class) is noise for Django's ubiquitous +# `class Meta:` inner classes — ignored globally rather than per-file. +ignore = ["D106"] + +[tool.ruff.lint.pydocstyle] +convention = "pep257" + +[tool.ruff.lint.per-file-ignores] +"**/migrations/**" = ["D"] +"**/tests/**" = ["D"] +"**/tests.py" = ["D"] +"**/test_*.py" = ["D"] +"manage.py" = ["D"] +"**/__init__.py" = ["D104"] + +[tool.mypy] +plugins = ["mypy_django_plugin.main"] +ignore_missing_imports = true +check_untyped_defs = false +# api/tests.py (a namespace package: no __init__.py, matching Django 6's +# implicit-namespace app style) and gtfs-django/tests/ both resolve to the +# bare module name "tests" without this — explicit_package_bases makes mypy +# derive each module's qualified name from its position under mypy_path +# instead of collapsing to the top-level basename. +explicit_package_bases = true +mypy_path = "." +# migrations are gitignored/regenerated at container start; gtfs-eta is the +# sibling repo's own codebase (see [tool.ruff] above for the full rationale); +# .venv is the local virtualenv, not project code. +exclude = "(^|/)(migrations|gtfs-eta|\\.venv)(/|$)" + +[tool.django-stubs] +django_settings_module = "databus.settings" + +[tool.pytest.ini_options] +DJANGO_SETTINGS_MODULE = "databus.settings" +# gtfs-eta is a symlink to the sibling repo (see [tool.uv.sources] below), +# not a databus package: it carries its own full test suite (collector / +# training tests needing duckdb, sch_pipeline, its own Django app config, +# etc.) that has nothing to do with databus and fails to even collect here. +# The previous vendored copy was a trimmed subset with no tests, so this +# exclude wasn't needed before. +addopts = "--ignore=gtfs-eta" + [tool.uv.workspace] -members = [ - "gtfs-io", - "gtfs-django", -] +members = ["gtfs-io", "gtfs-django"] [tool.uv.sources] +# gtfs-eta lives in the sibling repo (simovilab/gtfs-eta), not in this +# workspace. `path` below is deliberately a bare, dot-free segment +# ("gtfs-eta"), not a literal "../../gtfs-eta": uv normalizes `path` sources +# itself before touching the filesystem, and rejects any string that walks +# above the *container's* root (uv error: "cannot normalize a relative path +# beyond the base directory") — which "../../gtfs-eta" does once /app (this +# file's directory inside the container) is only one level below the +# container's filesystem root. A literal ".." string therefore cannot work +# identically on host and in-container. +# +# Fix: "gtfs-eta" here is a symlink (see backend/gtfs-eta -> ../../gtfs-eta) +# committed in this directory. uv only ever normalizes the single path +# segment "gtfs-eta"; walking past the symlink is then the OS's job, and the +# OS clamps ".." at the filesystem root instead of erroring: +# host : backend/gtfs-eta -> ../../gtfs-eta -> git.no_sync/gtfs-eta +# compose: ./backend bind-mounted at /app, so /app/gtfs-eta carries the +# same symlink; compose.dev.yml separately bind-mounts +# ../gtfs-eta:/gtfs-eta so the OS-resolved target exists there too. +# `uv sync` runs at container start (docker-entrypoint.sh), after that mount +# exists, not at image build time, so no build-context change is needed. +# +# Prod assumption: the deployment host must check out simovilab/gtfs-eta at +# the same relative path (sibling of the databus checkout) and compose.prod.yml +# must bind-mount it the same way as compose.dev.yml, OR this source must be +# swapped to the published `gtfs-eta` PyPI package once it ships at release. +gtfs-eta = { path = "gtfs-eta", editable = true } gtfs-io = { workspace = true, editable = true } gtfs-django = { workspace = true, editable = true } diff --git a/backend/realtime_engine/README.md b/backend/realtime_engine/README.md index 63a27d9..b57239d 100644 --- a/backend/realtime_engine/README.md +++ b/backend/realtime_engine/README.md @@ -1,7 +1,9 @@ # realtime_engine -Celery worker that processes lifecycle events and hosts the MQTT telemetry -consumer as an in-process bootstep. +Celery worker (queue `realtime_engine`) that ingests vehicle telemetry (MQTT +push + HTTP poll), runs detection/progression on it, and drives the run +lifecycle FSM. It is the **sole writer of the real-time Redis state** +(`vehicle:*`, `run:*`, `runs:*`) — `schedule_engine` only ever reads it. ## MQTT consumer: Celery bootstep approach @@ -26,29 +28,126 @@ extra container, Dockerfile target, and bind-mount on the backend tree. ``` transit/vehicle/+/position QoS 0 -transit/vehicle/+/progression QoS 0 transit/vehicle/+/occupancy QoS 0 ``` -The `data` leaf (static metadata) is not subscribed here — vehicle metadata is -written to Redis by `RunLifecycleActions.update_system_state` when a run is -initialized. +`progression` is intentionally **not** subscribed — it's decommissioned +server-side (the simulator may still publish it, but the consumer ignores +any leaf it doesn't recognize). Server-side stop status is computed instead +by `runs.domain.progression.producer.produce_stop_status` (real GPS→polyline +map-matching), triggered from `process_position_update` after every position +write. The `data` leaf (static vehicle metadata) is not subscribed here +either — it's written to Redis by `RunLifecycleActions.update_system_state` +when a run is initialized. -## Lifecycle events fired by the consumer +## Ingestion pipeline (`mqtt.py`) -| Run state | Trigger condition | Event fired | -| ------------- | --------------------------------------------------------- | ----------------------- | -| `Confirmed` | Any valid ping received | `run_tracking_started` | -| `Tracking` | `position.speed > 0.5` m/s | `run_started` | -| `No Signal` | Any valid ping received | `run_tracking_restored` | -| `In Progress` | `progression.current_status == STOPPED_AT` with `stop_id` | `run_completed` | +For each incoming message on `position` or `occupancy`, `_handle_telemetry`: -## Stale run scanning +1. Drops the message if the vehicle has no `vehicle::current_run` key + (no active run assigned). +2. `position`: validates and writes `vehicle::position`, then enqueues + `realtime_engine.tasks.process_position_update` — heavy work (map-matching, + ETA projection, detection) runs off the MQTT network thread. +3. `occupancy`: discards any edge-sent `occupancy_status` and recomputes it + server-side from the raw percentage (`occupancy.classify_status`), then + writes `vehicle::occupancy`. +4. Updates `runs:last_seen:` synchronously (never delayed by queue + latency) so staleness detection stays accurate even under a slow worker. +5. For `occupancy` only, runs `detect_from_telemetry` inline (cheap; and + `RunTrackingStartedDetector`/`RunTrackingRestoredDetector` match any + leaf, so occupancy pings must still be able to drive those transitions). + `position`-leaf detection happens asynchronously inside + `process_position_update` instead. -`scan_stale_runs` runs every 30 s via Celery Beat: +### `process_position_update(run_id, vehicle_id)` (queue `realtime_engine`) -- `IN_PROGRESS` + staleness > 60 s → `run_tracking_lost` -- `NO_SIGNAL` + staleness > 300 s → `run_tracking_expired` +Re-reads the latest `vehicle::position` from Redis (idempotent, +last-write-wins; no retries — a retried tick is stale, the next ping +recovers). In order: + +1. `produce_stop_status` — server-side map-matching, writes + `run::vehicle_stop_status`. +2. If a stop status was computed, re-feeds it into + `detect_from_telemetry(run_id, vehicle_id, "progression", ...)` — + this is what fires `RunCompletedDetector` now that raw `progression` + telemetry is no longer consumed. +3. `produce_stop_times` — ETA stop-time-updates projection, writes + `run::stop_time_updates`. +4. `detect_from_telemetry(run_id, vehicle_id, "position", ...)` — position-leaf + detection (`RunStartedDetector`, `RunTrackingStartedDetector`, etc.). + +Each step is wrapped independently in `try/except`, logged, and never +propagated — one failing step doesn't block the others. + +## `run_lifecycle_event` task (queue `realtime_engine`) + +Dispatches a fired event to `RunLifecycleService.process_event`. A +`RunLifecycleError` is treated two ways: + +- If the run has **already reached the event's target state** + (`target_state_for_event`) — a benign idempotent re-fire (a detector's + dispatch lost a race against an in-flight transition for the same run) — + logged as a `WARNING`, not an error. +- Otherwise — a genuine invalid transition — logged with `logger.exception`. + +## `fetch_positions` task (queue `realtime_engine`, `soft_time_limit=25`) + +Polls active HTTP telemetry sources every **10 s** (Celery Beat, +`options={"expires": 10}` — a task that couldn't even start within its own +10 s cycle is revoked rather than queuing up behind a slow source): + +1. Builds the in-service vehicle-id set from every `vehicle::current_run` + key — the same gate the MQTT consumer uses, so poller and consumer agree + on which vehicles count. (Gating on `runs:in_progress` instead would + deadlock a `CONFIRMED` run, since it only reaches `IN_PROGRESS` once + telemetry proves it's moving — delivering that telemetry is this task's + job.) +2. Queries `ACTIVE` sensors with `provides_position=True` and + `source_type` in `("http", "both")`. +3. Pre-fetch filters out any sensor whose own `equipment.vehicle` isn't in + the in-service set, to avoid paying the HTTP cost of every active sensor + on every tick. (Caveat: a fleet endpoint like NavSat can return readings + for vehicles other than the sensor's own — those are only caught by the + post-fetch filter, so an out-of-service sensor's fleet endpoint is + skipped entirely rather than partially used.) +4. Fetches each remaining sensor independently (own try/except; one failing + source can't sink the rest), keeps only in-service vehicles' readings + (post-fetch filter), and publishes survivors on + `transit/vehicle//position` via `MqttPublisher`. + +`soft_time_limit=25` bounds a single pathological source (e.g. a host that +hangs on every request): on `SoftTimeLimitExceeded` the task logs and +returns early instead of propagating. + +## `scan_stale_runs` task (queue `realtime_engine`) + +Runs every **30 s** via Celery Beat. Computes each tracked run's staleness +and hands it to `runs.domain.detection.dispatch.detect_from_scan`, which +evaluates the periodic detectors in `runs.domain.detection.periodic_detectors` +against the shared thresholds in `runs.domain.detection.thresholds`: + +- `IN_PROGRESS` + `60 s < staleness ≤ 600 s` → `run_tracking_lost` +- `NO_SIGNAL` + `staleness > 600 s` → `run_tracking_expired` + +(`TELEMETRY_GRACE_S = 60`, `TELEMETRY_EXPIRY_S = 600` — +`runs/domain/detection/thresholds.py`. These were previously duplicated and +disagreeing — 300 s here vs. 600 s in the lifecycle guards — both now import +the same constants.) + +## `sources/` — pluggable HTTP telemetry adapter registry + +`sources/base.py` defines the `SourceAdapter` protocol +(`fetch(sensor) -> list[(vehicle_id, payload)]`) and a tiny +`register(kind)` / `get_adapter(kind)` registry, kept dependency-free +(no Django, no requests, no paho) so adapters are unit-testable without I/O. +`sources/http_json.py` registers the generic `"http"` adapter — driven +entirely by a `Sensor`'s `source_http_url` + `source_json_mapping` fields, no +per-provider code needed for JSON-over-HTTP feeds that fit the mapping +schema. HTTP requests use a **5 s timeout** +(`DEFAULT_TIMEOUT_S`). `sources/publisher.py`'s `MqttPublisher` republishes +fetched readings onto the same `transit/vehicle//position` topic the +MQTT consumer subscribes to. ## Environment variables diff --git a/backend/realtime_engine/admin.py b/backend/realtime_engine/admin.py index 8c38f3f..101bd5a 100644 --- a/backend/realtime_engine/admin.py +++ b/backend/realtime_engine/admin.py @@ -1,3 +1 @@ -from django.contrib import admin - -# Register your models here. +"""Django admin registrations for realtime_engine (none: state lives in Redis, not the ORM).""" diff --git a/backend/realtime_engine/apps.py b/backend/realtime_engine/apps.py index b52565e..47be53a 100644 --- a/backend/realtime_engine/apps.py +++ b/backend/realtime_engine/apps.py @@ -1,5 +1,9 @@ +"""Django AppConfig for the realtime_engine app.""" + from django.apps import AppConfig class RealtimeEngineConfig(AppConfig): + """Configure the realtime_engine Django app.""" + name = "realtime_engine" diff --git a/backend/realtime_engine/models.py b/backend/realtime_engine/models.py index 71a8362..5c735c6 100644 --- a/backend/realtime_engine/models.py +++ b/backend/realtime_engine/models.py @@ -1,3 +1 @@ -from django.db import models - -# Create your models here. +"""Django models for realtime_engine (none: state lives in Redis, not the ORM).""" diff --git a/backend/realtime_engine/mqtt.py b/backend/realtime_engine/mqtt.py index 3ea5703..ed63ac4 100644 --- a/backend/realtime_engine/mqtt.py +++ b/backend/realtime_engine/mqtt.py @@ -23,12 +23,13 @@ import logging import os import socket +from typing import Any, cast import paho.mqtt.client as mqtt -import redis from celery import bootsteps from django.utils.timezone import now +from databus.redis_client import create_redis_client from runs.domain.telemetry import keys, occupancy, position logger = logging.getLogger(__name__) @@ -41,12 +42,7 @@ "yes", ) -r = redis.Redis( - host=os.getenv("REDIS_HOST", "state"), - port=int(os.getenv("REDIS_PORT", "6379")), - db=0, - decode_responses=True, -) +r = create_redis_client() def _vehicle_id_from_topic(topic: str) -> str | None: @@ -58,10 +54,22 @@ def _vehicle_id_from_topic(topic: str) -> str | None: def _leaf_from_topic(topic: str) -> str | None: + """Extract the leaf segment (e.g. 'position') from transit/vehicle//.""" parts = topic.split("/") return parts[-1] if len(parts) == 4 else None +def _get(key: str) -> str | None: + """Read a Redis string value, narrowing away redis-py's shared Awaitable stub. + + `r` here is always the synchronous, `decode_responses=True` client, but + redis-py's `CoreCommands` mixin types every command `Awaitable[X] | X` + since it's shared with the async client — this cast narrows to the sync + branch that's actually returned. + """ + return cast("str | None", r.get(key)) + + def _handle_telemetry(vehicle_id: str, leaf: str, payload_bytes: bytes) -> None: try: data = json.loads(payload_bytes) @@ -69,7 +77,7 @@ def _handle_telemetry(vehicle_id: str, leaf: str, payload_bytes: bytes) -> None: logger.warning("Non-JSON payload on vehicle %s/%s — ignored", vehicle_id, leaf) return - run_id = r.get(keys.current_run_key(vehicle_id)) + run_id = _get(keys.current_run_key(vehicle_id)) if not run_id: logger.debug("No active run for vehicle %s — dropping %s", vehicle_id, leaf) return @@ -142,7 +150,10 @@ def _handle_telemetry(vehicle_id: str, leaf: str, payload_bytes: bytes) -> None: detect_from_telemetry(run_id, vehicle_id, leaf, data) -def _on_connect(client: mqtt.Client, userdata, flags, rc) -> None: +def _on_connect( + client: mqtt.Client, userdata: Any, flags: dict[str, Any], rc: mqtt.MQTTErrorCode +) -> None: + """Subscribe to the vehicle telemetry topics once the broker connection is up.""" if rc == 0: logger.info("MQTT connected: %s:%s", MQTT_HOST, MQTT_PORT) client.subscribe("transit/vehicle/+/position", qos=0) @@ -152,7 +163,8 @@ def _on_connect(client: mqtt.Client, userdata, flags, rc) -> None: logger.error("MQTT connection refused: rc=%d", rc) -def _on_message(client: mqtt.Client, userdata, msg: mqtt.MQTTMessage) -> None: +def _on_message(client: mqtt.Client, userdata: Any, msg: mqtt.MQTTMessage) -> None: + """Route an incoming MQTT message to `_handle_telemetry`, logging any failure.""" vehicle_id = _vehicle_id_from_topic(msg.topic) leaf = _leaf_from_topic(msg.topic) if not vehicle_id or not leaf: @@ -164,6 +176,7 @@ def _on_message(client: mqtt.Client, userdata, msg: mqtt.MQTTMessage) -> None: def build_client() -> mqtt.Client: + """Build a paho MQTT client wired to the telemetry callbacks, unconnected.""" # Unique per process: a fixed client_id makes a second consumer (e.g. another # worker that also has MQTT_CONSUMER_ENABLED) collide on the broker and trigger # an endless reconnect war. Single-consumer gating is still the real guarantee; @@ -186,11 +199,13 @@ class MQTTConsumerStep(bootsteps.StartStopStep): requires = {"celery.worker.components:Pool"} - def __init__(self, worker, **kwargs): + def __init__(self, worker: Any, **kwargs: Any) -> None: + """Initialize the bootstep with no MQTT client connected yet.""" super().__init__(worker, **kwargs) self.client: mqtt.Client | None = None - def start(self, worker) -> None: + def start(self, worker: Any) -> None: + """Connect and start the MQTT client's background loop, if enabled.""" if not MQTT_CONSUMER_ENABLED: logger.info( "MQTT consumer bootstep disabled (MQTT_CONSUMER_ENABLED=%s)", @@ -207,7 +222,8 @@ def start(self, worker) -> None: logger.exception("MQTT consumer failed to start") self.client = None - def stop(self, worker) -> None: + def stop(self, worker: Any) -> None: + """Stop the MQTT client's background loop and disconnect, if running.""" if self.client is None: return logger.info("Stopping MQTT consumer bootstep") diff --git a/backend/realtime_engine/sources/__init__.py b/backend/realtime_engine/sources/__init__.py new file mode 100644 index 0000000..e0ce08b --- /dev/null +++ b/backend/realtime_engine/sources/__init__.py @@ -0,0 +1,12 @@ +"""Pluggable telemetry source adapters. + +Importing this package registers all built-in adapters (currently the +generic HTTP+JSON adapter, kind ``"http"``) with the ``base`` registry, so +``get_adapter("http")`` works immediately after +``import realtime_engine.sources``. +""" + +from . import http_json # noqa: F401 -- import for its registration side effect +from .base import get_adapter, register + +__all__ = ["get_adapter", "register"] diff --git a/backend/realtime_engine/sources/base.py b/backend/realtime_engine/sources/base.py new file mode 100644 index 0000000..3785f5b --- /dev/null +++ b/backend/realtime_engine/sources/base.py @@ -0,0 +1,63 @@ +"""Pluggable telemetry source adapter contract + registry. + +A ``SourceAdapter`` fetches raw vehicle telemetry from wherever a Sensor is +configured to read from (HTTP endpoint today; MQTT bridge, file, etc. could +follow) and normalizes it into ``(vehicle_id, position_payload)`` tuples +ready to be published on the MQTT topic ``transit/vehicle//position`` +(see ``publisher.py``). + +Kept tiny and dependency-free — no Django, no requests, no paho — so +importing this module never has side effects and adapters can be unit +tested without any I/O. +""" + +from __future__ import annotations + +from collections.abc import Callable +from typing import TYPE_CHECKING, Any, Protocol + +if TYPE_CHECKING: + # Type-checking only: the runtime import graph stays Django-free (see + # module docstring), but the real model gives accurate hover/mypy types. + from operations.models import Sensor + + +class SourceAdapter(Protocol): + """Structural contract for a telemetry source adapter.""" + + def fetch(self, sensor: "Sensor") -> list[tuple[str, dict]]: + """Fetch and normalize telemetry for a sensor. + + Returns a list of ``(vehicle_id, position_payload)`` tuples. Each + payload is a dict shaped for + ``runs.domain.telemetry.position.validate_for_write`` (i.e. at + least ``latitude``/``longitude``, with any of ``bearing``, + ``speed``, ``odometer``, ``timestamp`` included only when known). + """ + ... + + +_REGISTRY: dict[str, SourceAdapter] = {} + + +def register(kind: str) -> Callable[[Any], Any]: + """Class/function decorator registering an adapter under ``kind``. + + Usable on a class (instantiated once at registration time) or on an + already-constructed adapter instance/function. + """ + + def _decorator(adapter: Any) -> Any: + """Register `adapter` (instantiating it first if it's a class) under `kind`.""" + _REGISTRY[kind] = adapter() if isinstance(adapter, type) else adapter + return adapter + + return _decorator + + +def get_adapter(kind: str) -> SourceAdapter: + """Look up a registered adapter by kind. Raises ``KeyError`` if unknown.""" + try: + return _REGISTRY[kind] + except KeyError as exc: + raise KeyError(f"No source adapter registered for kind={kind!r}") from exc diff --git a/backend/realtime_engine/sources/http_json.py b/backend/realtime_engine/sources/http_json.py new file mode 100644 index 0000000..73cf802 --- /dev/null +++ b/backend/realtime_engine/sources/http_json.py @@ -0,0 +1,195 @@ +"""Generic HTTP+JSON telemetry source adapter. + +Registered under kind ``"http"``. Driven entirely by a Sensor's +``source_http_url`` and ``source_json_mapping`` fields — no per-provider +code is needed for JSON-over-HTTP feeds that fit the mapping schema below. + +Mapping schema (NavSat is the first concrete instance):: + + { + "type": "array", # or anything else for a single object + "paths": { + "vehicle_id": "plateNumber", + "timestamp": "crDateTime", + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer" + }, + "units": {"speed": "kmh", "odometer": "km"}, + "timestamp": {"format": "%Y-%m-%d %H:%M:%S", "tz": "America/Costa_Rica"} + } + +Only ``lat``/``lon`` are effectively required in ``paths`` — a record that +can't yield both is skipped. ``vehicle_id`` is resolved from the mapped +path when present; otherwise the adapter falls back to the sensor's own +equipment/vehicle association. Any malformed record is logged and skipped +rather than failing the whole batch. + +Django models are never imported here; ``sensor`` is accessed structurally +(duck-typed) and only inside ``fetch``, so this module stays importable and +testable without Django configured. +""" + +from __future__ import annotations + +import logging +from typing import TYPE_CHECKING, Any + +import requests + +from . import base +from .transforms import get_by_path, km_to_m, kmh_to_ms, parse_cr_datetime + +if TYPE_CHECKING: + # Type-checking only: the runtime import graph stays Django-free (see + # module docstring), but the real model gives accurate hover/mypy types. + from operations.models import Sensor + +logger = logging.getLogger(__name__) + +DEFAULT_TIMEOUT_S = 5 + + +def _convert_unit(field: str, value: Any, units: dict) -> Any: + """Convert `value` from the unit declared for `field` in `units` to SI, if known.""" + if value is None: + return None + unit = units.get(field) + if unit == "kmh": + return kmh_to_ms(float(value)) + if unit == "km": + return km_to_m(float(value)) + return value + + +def _extract_record(record: dict, mapping: dict) -> dict | None: + """Extract a position payload + vehicle_id (if mapped) from one record. + + Returns ``None`` when latitude/longitude can't be resolved — the caller + treats that as "skip this record". + """ + paths = mapping.get("paths", {}) + units = mapping.get("units", {}) + ts_cfg = mapping.get("timestamp", {}) + + lat_path = paths.get("lat") + lon_path = paths.get("lon") + lat = get_by_path(record, lat_path) if lat_path else None + lon = get_by_path(record, lon_path) if lon_path else None + if lat is None or lon is None: + return None + + payload: dict = { + "latitude": float(lat), + "longitude": float(lon), + } + + speed_path = paths.get("speed") + if speed_path: + raw_speed = get_by_path(record, speed_path) + converted = _convert_unit("speed", raw_speed, units) + if converted is not None: + payload["speed"] = converted + + odometer_path = paths.get("odometer") + if odometer_path: + raw_odometer = get_by_path(record, odometer_path) + converted = _convert_unit("odometer", raw_odometer, units) + if converted is not None: + payload["odometer"] = converted + + bearing_path = paths.get("bearing") + if bearing_path: + raw_bearing = get_by_path(record, bearing_path) + if raw_bearing is not None: + payload["bearing"] = float(raw_bearing) + + timestamp_path = paths.get("timestamp") + if timestamp_path: + raw_ts = get_by_path(record, timestamp_path) + if raw_ts is not None: + fmt = ts_cfg.get("format", "%Y-%m-%d %H:%M:%S") + tz = ts_cfg.get("tz", "America/Costa_Rica") + try: + payload["timestamp"] = parse_cr_datetime(str(raw_ts), fmt=fmt, tz=tz) + except (ValueError, TypeError): + logger.warning("Could not parse timestamp %r — omitting field", raw_ts) + + vehicle_id = None + vehicle_id_path = paths.get("vehicle_id") + if vehicle_id_path: + raw_vehicle_id = get_by_path(record, vehicle_id_path) + if raw_vehicle_id is not None: + vehicle_id = str(raw_vehicle_id) + + return {"vehicle_id": vehicle_id, "payload": payload} + + +@base.register("http") +class HttpJsonSourceAdapter: + """Fetches vehicle positions from a generic HTTP+JSON endpoint.""" + + def fetch(self, sensor: "Sensor") -> list[tuple[str, dict]]: + """Fetch and normalize position records from `sensor`'s HTTP+JSON endpoint.""" + url = sensor.source_http_url + mapping = sensor.source_json_mapping or {} + + if not url: + logger.warning( + "sensor %s has source_type=http but no source_http_url; skipping", + getattr(sensor, "id", "?"), + ) + return [] + + try: + response = requests.get(url, timeout=DEFAULT_TIMEOUT_S) + response.raise_for_status() + body = response.json() + except Exception: + logger.exception("HTTP telemetry fetch failed for url=%s", url) + return [] + + records = body if mapping.get("type", "array") == "array" else [body] + if not isinstance(records, list): + logger.warning( + "Expected a list of records for url=%s, got %s — skipping", + url, + type(records), + ) + return [] + + results: list[tuple[str, dict]] = [] + for record in records: + try: + if not isinstance(record, dict): + logger.warning("Skipping non-dict record: %r", record) + continue + + extracted = _extract_record(record, mapping) + if extracted is None: + logger.warning( + "Skipping record missing latitude/longitude: %r", record + ) + continue + + vehicle_id = extracted["vehicle_id"] + if not vehicle_id: + # Lazy access — never imported/evaluated at module scope, + # so this stays safe for isolated (non-DB) test runs. + equipment = sensor.equipment + if equipment is None: + logger.warning( + "sensor %s has no vehicle_id in record and no " + "equipment association; skipping record", + getattr(sensor, "id", "?"), + ) + continue + vehicle_id = str(equipment.vehicle_id) + + results.append((vehicle_id, extracted["payload"])) + except Exception: + logger.exception("Skipping malformed record: %r", record) + continue + + return results diff --git a/backend/realtime_engine/sources/publisher.py b/backend/realtime_engine/sources/publisher.py new file mode 100644 index 0000000..3d2dd43 --- /dev/null +++ b/backend/realtime_engine/sources/publisher.py @@ -0,0 +1,86 @@ +"""MQTT publishing for HTTP-sourced telemetry. + +Mirrors the paho-mqtt v2 client setup already used by the ingestion +consumer (``realtime_engine/mqtt.py``) so messages published from here land +on exactly the topics that consumer subscribes to: +``transit/vehicle//position``, QoS 0, not retained. +""" + +from __future__ import annotations + +import json +import logging +import os +from typing import cast + +import paho.mqtt.client as mqtt + +logger = logging.getLogger(__name__) + +MQTT_HOST = os.getenv("MQTT_HOST", "telemetry-broker") +MQTT_PORT = int(os.getenv("MQTT_PORT", "1883")) + +POSITION_TOPIC_TEMPLATE = "transit/vehicle/{vehicle_id}/position" + + +def position_topic(vehicle_id: str) -> str: + """Build the MQTT position topic for `vehicle_id`.""" + return POSITION_TOPIC_TEMPLATE.format(vehicle_id=vehicle_id) + + +def publish_position(client: mqtt.Client, vehicle_id: str, payload: dict) -> None: + """Publish a single position payload for ``vehicle_id``. + + Catches and logs publish errors per-message so one bad publish doesn't + take down the rest of a batch. + """ + topic = position_topic(vehicle_id) + try: + client.publish(topic, json.dumps(payload), qos=0, retain=False) + except Exception: + logger.exception("Failed to publish position for vehicle %s", vehicle_id) + + +class MqttPublisher: + """Thin wrapper managing a paho v2 client's connect/publish/disconnect cycle.""" + + def __init__(self, host: str | None = None, port: int | None = None) -> None: + """Configure the client's target host/port; connect() is called separately.""" + self.host = host or MQTT_HOST + self.port = port or MQTT_PORT + self._client: mqtt.Client | None = None + + def _build_client(self) -> mqtt.Client: + """Construct a fresh, unconnected paho v2-callback-API client.""" + return mqtt.Client(mqtt.CallbackAPIVersion.VERSION2) + + def connect(self) -> None: + """Build and connect the underlying MQTT client.""" + self._client = self._build_client() + self._client.connect(self.host, self.port, keepalive=60) + + def disconnect(self) -> None: + """Disconnect and discard the underlying MQTT client, if connected.""" + if self._client is None: + return + try: + self._client.disconnect() + except Exception: + logger.exception("Error disconnecting MQTT publisher client") + finally: + self._client = None + + def publish_batch(self, records: list[tuple[str, dict]]) -> None: + """Connect, publish every ``(vehicle_id, payload)`` record, then disconnect. + + Each record is published independently — a failure on one message + is logged (via ``publish_position``) without aborting the batch. + """ + self.connect() + # connect() always sets _client; cast narrows the Optional for the type checker. + client = cast("mqtt.Client", self._client) + try: + for vehicle_id, payload in records: + publish_position(client, vehicle_id, payload) + finally: + self.disconnect() diff --git a/backend/realtime_engine/sources/tests/__init__.py b/backend/realtime_engine/sources/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/realtime_engine/sources/tests/test_http_json.py b/backend/realtime_engine/sources/tests/test_http_json.py new file mode 100644 index 0000000..c3f68c6 --- /dev/null +++ b/backend/realtime_engine/sources/tests/test_http_json.py @@ -0,0 +1,256 @@ +"""Unit tests for the generic HTTP+JSON source adapter (kind="http"). + +No real HTTP, no Django ORM: ``requests.get`` is monkeypatched to return a +fake response, and the "sensor" is a lightweight ``SimpleNamespace`` rather +than the real Django model — this adapter only ever touches +``sensor.source_http_url``, ``sensor.source_json_mapping``, and (as a +fallback) ``sensor.equipment.vehicle_id``, all accessed structurally. +""" + +from types import SimpleNamespace + +import pytest + +from realtime_engine.sources import http_json +from runs.domain.telemetry import position + +NAVSAT_MAPPING = { + "type": "array", + "paths": { + "vehicle_id": "plateNumber", + "timestamp": "crDateTime", + "lat": "latitude", + "lon": "longitude", + "speed": "speed", + "odometer": "odometer", + }, + "units": {"speed": "kmh", "odometer": "km"}, + "timestamp": {"format": "%Y-%m-%d %H:%M:%S", "tz": "America/Costa_Rica"}, +} + +SAMPLE_RECORD = { + "plateNumber": "299-1014", + "crDateTime": "2026-07-21 14:19:19", + "latitude": 9.9355516, + "longitude": -84.0490749, + "odometer": 114879, + "speed": 0, +} + + +class FakeResponse: + def __init__(self, data): + self._data = data + + def raise_for_status(self): + pass + + def json(self): + return self._data + + +def _make_sensor(mapping=NAVSAT_MAPPING, url="http://navsat.example/positions", vehicle_id="fallback-veh"): + return SimpleNamespace( + source_http_url=url, + source_json_mapping=mapping, + equipment=SimpleNamespace(vehicle_id=vehicle_id), + ) + + +# --------------------------------------------------------------------------- +# Array handling, multiple records +# --------------------------------------------------------------------------- + + +def test_fetch_array_with_multiple_records(monkeypatch): + second_record = {**SAMPLE_RECORD, "plateNumber": "299-2020", "speed": 36} + + def fake_get(url, timeout): + return FakeResponse([SAMPLE_RECORD, second_record]) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor() + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + assert len(results) == 2 + vehicle_ids = {vid for vid, _ in results} + assert vehicle_ids == {"299-1014", "299-2020"} + + +# --------------------------------------------------------------------------- +# Single-object (non-array) handling +# --------------------------------------------------------------------------- + + +def test_fetch_single_object_body(monkeypatch): + mapping = {**NAVSAT_MAPPING, "type": "object"} + + def fake_get(url, timeout): + return FakeResponse(SAMPLE_RECORD) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor(mapping=mapping) + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + assert len(results) == 1 + vehicle_id, payload = results[0] + assert vehicle_id == "299-1014" + assert payload["latitude"] == pytest.approx(9.9355516) + assert payload["longitude"] == pytest.approx(-84.0490749) + + +# --------------------------------------------------------------------------- +# Field extraction + unit conversion +# --------------------------------------------------------------------------- + + +def test_fetch_converts_units_correctly(monkeypatch): + record = {**SAMPLE_RECORD, "speed": 36, "odometer": 112} + + def fake_get(url, timeout): + return FakeResponse([record]) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor() + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + assert len(results) == 1 + _, payload = results[0] + assert payload["speed"] == pytest.approx(10.0) # 36 km/h -> 10.0 m/s + assert payload["odometer"] == pytest.approx(112_000.0) # 112 km -> 112000 m + assert isinstance(payload["timestamp"], int) + assert payload["timestamp"] > 0 + + +# --------------------------------------------------------------------------- +# Malformed record skipped without killing the batch +# --------------------------------------------------------------------------- + + +def test_fetch_skips_malformed_record_without_failing_batch(monkeypatch): + good_record = SAMPLE_RECORD + missing_latlon = {"plateNumber": "BAD-1", "crDateTime": "2026-07-21 14:19:19"} + bad_timestamp = {**SAMPLE_RECORD, "plateNumber": "BAD-2", "crDateTime": "not-a-date"} + non_dict_record = "this is not a record" + + def fake_get(url, timeout): + return FakeResponse([good_record, missing_latlon, bad_timestamp, non_dict_record]) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor() + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + vehicle_ids = {vid for vid, _ in results} + # missing_latlon is dropped entirely (no lat/lon). + assert "BAD-1" not in vehicle_ids + # bad_timestamp keeps its lat/lon; only the timestamp field is omitted. + assert "BAD-2" in vehicle_ids + bad_ts_payload = next(p for vid, p in results if vid == "BAD-2") + assert "timestamp" not in bad_ts_payload + # The good record still comes through. + assert good_record["plateNumber"] in vehicle_ids + + +def test_fetch_http_error_returns_empty_list(monkeypatch): + def fake_get(url, timeout): + raise ConnectionError("boom") + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor() + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + assert results == [] + + +# --------------------------------------------------------------------------- +# vehicle_id resolution: mapped path vs. sensor fallback +# --------------------------------------------------------------------------- + + +def test_fetch_uses_vehicle_id_from_mapped_path(monkeypatch): + def fake_get(url, timeout): + return FakeResponse([SAMPLE_RECORD]) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor(vehicle_id="should-not-be-used") + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + vehicle_id, _ = results[0] + assert vehicle_id == "299-1014" + + +def test_fetch_falls_back_to_sensor_equipment_vehicle_id_when_no_mapping(monkeypatch): + mapping = {**NAVSAT_MAPPING, "paths": {k: v for k, v in NAVSAT_MAPPING["paths"].items() if k != "vehicle_id"}} + + def fake_get(url, timeout): + return FakeResponse([SAMPLE_RECORD]) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor(mapping=mapping, vehicle_id="fallback-veh-123") + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + vehicle_id, _ = results[0] + assert vehicle_id == "fallback-veh-123" + + +# --------------------------------------------------------------------------- +# Nullable Sensor fields: guarded explicitly rather than falling through to +# the generic try/except. +# --------------------------------------------------------------------------- + + +def test_fetch_skips_sensor_with_no_source_http_url(monkeypatch): + def fake_get(url, timeout): + raise AssertionError("requests.get should not be called for a None URL") + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor(url=None) + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + assert results == [] + + +def test_fetch_skips_record_when_fallback_vehicle_id_has_no_equipment(monkeypatch): + mapping = {**NAVSAT_MAPPING, "paths": {k: v for k, v in NAVSAT_MAPPING["paths"].items() if k != "vehicle_id"}} + + def fake_get(url, timeout): + return FakeResponse([SAMPLE_RECORD]) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor(mapping=mapping) + sensor.equipment = None + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + assert results == [] + + +# --------------------------------------------------------------------------- +# Contract compliance: produced payloads must pass position.validate_for_write +# --------------------------------------------------------------------------- + + +def test_fetch_produces_payloads_valid_for_position_contract(monkeypatch): + record = {**SAMPLE_RECORD, "speed": 36, "odometer": 112} + + def fake_get(url, timeout): + return FakeResponse([record]) + + monkeypatch.setattr(http_json.requests, "get", fake_get) + + sensor = _make_sensor() + results = http_json.HttpJsonSourceAdapter().fetch(sensor) + + _, payload = results[0] + # Must not raise -- validates required lat/lon and coercible optionals. + mapping = position.validate_for_write(payload) + assert "latitude" in mapping + assert "longitude" in mapping diff --git a/backend/realtime_engine/sources/tests/test_publisher.py b/backend/realtime_engine/sources/tests/test_publisher.py new file mode 100644 index 0000000..c079dfb --- /dev/null +++ b/backend/realtime_engine/sources/tests/test_publisher.py @@ -0,0 +1,124 @@ +"""Unit tests for realtime_engine.sources.publisher. + +No real MQTT broker: the paho client is a MagicMock throughout, and +``MqttPublisher._build_client`` is monkeypatched so ``connect()`` never +touches the network. +""" + +import json +from unittest.mock import MagicMock, call + +from realtime_engine.sources import publisher + + +# --------------------------------------------------------------------------- +# publish_position +# --------------------------------------------------------------------------- + + +def test_publish_position_uses_correct_topic_and_json_body(): + client = MagicMock() + payload = {"latitude": 9.93, "longitude": -84.05, "speed": 10.0} + + publisher.publish_position(client, "299-1014", payload) + + client.publish.assert_called_once_with( + "transit/vehicle/299-1014/position", + json.dumps(payload), + qos=0, + retain=False, + ) + + +def test_publish_position_swallows_client_errors(): + client = MagicMock() + client.publish.side_effect = RuntimeError("broker unreachable") + + # Must not raise. + publisher.publish_position(client, "299-1014", {"latitude": 1.0, "longitude": 2.0}) + + +def test_position_topic_format(): + assert publisher.position_topic("abc-123") == "transit/vehicle/abc-123/position" + + +# --------------------------------------------------------------------------- +# MqttPublisher lifecycle +# --------------------------------------------------------------------------- + + +def test_mqtt_publisher_connect_builds_client_and_connects(monkeypatch): + mock_client = MagicMock() + pub = publisher.MqttPublisher(host="broker-host", port=1884) + monkeypatch.setattr(pub, "_build_client", lambda: mock_client) + + pub.connect() + + mock_client.connect.assert_called_once_with("broker-host", 1884, keepalive=60) + + +def test_mqtt_publisher_disconnect_is_safe_when_not_connected(): + pub = publisher.MqttPublisher() + # Must not raise even though connect() was never called. + pub.disconnect() + + +def test_mqtt_publisher_publish_batch_connects_publishes_all_then_disconnects(monkeypatch): + mock_client = MagicMock() + pub = publisher.MqttPublisher() + monkeypatch.setattr(pub, "_build_client", lambda: mock_client) + + records = [ + ("veh-1", {"latitude": 1.0, "longitude": 2.0}), + ("veh-2", {"latitude": 3.0, "longitude": 4.0}), + ] + pub.publish_batch(records) + + mock_client.connect.assert_called_once() + assert mock_client.publish.call_count == 2 + mock_client.publish.assert_has_calls( + [ + call( + "transit/vehicle/veh-1/position", + json.dumps({"latitude": 1.0, "longitude": 2.0}), + qos=0, + retain=False, + ), + call( + "transit/vehicle/veh-2/position", + json.dumps({"latitude": 3.0, "longitude": 4.0}), + qos=0, + retain=False, + ), + ] + ) + mock_client.disconnect.assert_called_once() + + +def test_mqtt_publisher_publish_batch_disconnects_even_if_publish_raises(monkeypatch): + mock_client = MagicMock() + mock_client.publish.side_effect = RuntimeError("boom") + pub = publisher.MqttPublisher() + monkeypatch.setattr(pub, "_build_client", lambda: mock_client) + + # publish_position catches the error internally, so this must not raise, + # and disconnect must still be called. + pub.publish_batch([("veh-1", {"latitude": 1.0, "longitude": 2.0})]) + + mock_client.disconnect.assert_called_once() + + +def test_build_client_uses_paho_v2_callback_api(monkeypatch): + captured = {} + + class FakeClient: + def __init__(self, callback_api_version): + captured["callback_api_version"] = callback_api_version + + monkeypatch.setattr(publisher.mqtt, "Client", FakeClient) + + pub = publisher.MqttPublisher() + client = pub._build_client() + + assert isinstance(client, FakeClient) + assert captured["callback_api_version"] == publisher.mqtt.CallbackAPIVersion.VERSION2 diff --git a/backend/realtime_engine/sources/tests/test_transforms.py b/backend/realtime_engine/sources/tests/test_transforms.py new file mode 100644 index 0000000..2b799b1 --- /dev/null +++ b/backend/realtime_engine/sources/tests/test_transforms.py @@ -0,0 +1,94 @@ +"""Unit conversion + parsing invariants for realtime_engine.sources.transforms. + +Pure functions, no Django/Redis/HTTP required. Mirrors the coverage of the +navsat-bridge transforms tests these were ported from. +""" + +from datetime import UTC, datetime + +import pytest + +from realtime_engine.sources.transforms import get_by_path, km_to_m, kmh_to_ms, parse_cr_datetime + + +# --------------------------------------------------------------------------- +# kmh_to_ms / km_to_m +# --------------------------------------------------------------------------- + + +@pytest.mark.parametrize( + "kmh, ms", + [ + (0, 0.0), + (36, 10.0), # classic sanity pair + (90, 25.0), + (100, 27.77777777777778), + ], +) +def test_kmh_to_ms(kmh, ms): + assert kmh_to_ms(kmh) == pytest.approx(ms) + + +@pytest.mark.parametrize( + "km, m", + [ + (0, 0.0), + (1, 1000.0), + (112, 112_000.0), # NavSat odometer example + ], +) +def test_km_to_m(km, m): + assert km_to_m(km) == pytest.approx(m) + + +# --------------------------------------------------------------------------- +# parse_cr_datetime +# --------------------------------------------------------------------------- + + +def test_parse_cr_datetime_known_value(): + # 2026-07-21 14:19:19 America/Costa_Rica (UTC-6, no DST) + # = 2026-07-21 20:19:19 UTC + epoch = parse_cr_datetime("2026-07-21 14:19:19") + expected = datetime(2026, 7, 21, 20, 19, 19, tzinfo=UTC).timestamp() + assert epoch == int(expected) + + +def test_parse_cr_datetime_rejects_garbage(): + with pytest.raises(ValueError): + parse_cr_datetime("not a datetime") + + +def test_parse_cr_datetime_honors_custom_format_and_tz(): + # ISO-ish format, UTC — sanity check that fmt/tz are actually threaded through. + epoch = parse_cr_datetime("2026-01-01T00:00:00", fmt="%Y-%m-%dT%H:%M:%S", tz="UTC") + assert epoch == int(datetime(2026, 1, 1, tzinfo=UTC).timestamp()) + + +# --------------------------------------------------------------------------- +# get_by_path +# --------------------------------------------------------------------------- + + +def test_get_by_path_top_level_hit(): + assert get_by_path({"latitude": 9.93}, "latitude") == 9.93 + + +def test_get_by_path_nested_hit(): + assert get_by_path({"a": {"b": {"c": 42}}}, "a.b.c") == 42 + + +def test_get_by_path_missing_key_returns_none(): + assert get_by_path({"a": 1}, "b") is None + + +def test_get_by_path_missing_nested_key_returns_none(): + assert get_by_path({"a": {"b": 1}}, "a.x.y") is None + + +def test_get_by_path_non_dict_intermediate_returns_none(): + assert get_by_path({"a": 5}, "a.b") is None + + +def test_get_by_path_empty_path_returns_none(): + assert get_by_path({"a": 1}, "") is None diff --git a/backend/realtime_engine/sources/transforms.py b/backend/realtime_engine/sources/transforms.py new file mode 100644 index 0000000..c8271c0 --- /dev/null +++ b/backend/realtime_engine/sources/transforms.py @@ -0,0 +1,65 @@ +"""Pure data-shape helpers for HTTP telemetry sources. + +Ported from navsat-bridge's ``transforms`` module (``kmh_to_ms``, ``km_to_m``, +``parse_cr_datetime``) plus a small dotted-path getter used by the generic +HTTP+JSON adapter (``http_json.py``) to pull values out of arbitrary JSON +records. + +This module imports nothing beyond the stdlib, so it is safe to unit test +in isolation and safe to import from anywhere without pulling in Django, +requests, or paho-mqtt. +""" + +from __future__ import annotations + +from datetime import datetime +from typing import Any +from zoneinfo import ZoneInfo + +DEFAULT_TZ = "America/Costa_Rica" +DEFAULT_DATETIME_FORMAT = "%Y-%m-%d %H:%M:%S" + + +def kmh_to_ms(speed_kmh: float) -> float: + """Kilometres per hour -> metres per second.""" + return speed_kmh / 3.6 + + +def km_to_m(odometer_km: float) -> float: + """Kilometres -> metres.""" + return odometer_km * 1000.0 + + +def parse_cr_datetime( + value: str, + fmt: str = DEFAULT_DATETIME_FORMAT, + tz: str = DEFAULT_TZ, +) -> int: + """Parse a naive local datetime string to Unix epoch seconds. + + Defaults match NavSat's naive ``America/Costa_Rica`` (UTC-6, no DST) + timestamps, but ``fmt``/``tz`` are overridable so the same helper can + serve any HTTP source whose mapping config specifies its own timestamp + shape. Raises ``ValueError`` on malformed or empty input. + """ + naive = datetime.strptime(value, fmt) + aware = naive.replace(tzinfo=ZoneInfo(tz)) + return int(aware.timestamp()) + + +def get_by_path(data: dict, path: str) -> Any: + """Dotted-path getter over nested dicts, tolerant of missing keys. + + ``get_by_path({"a": {"b": 1}}, "a.b")`` -> ``1``. + Any missing key, non-dict intermediate value, or empty path yields + ``None`` instead of raising. + """ + if not path: + return None + current = data + for part in path.split("."): + if isinstance(current, dict) and part in current: + current = current[part] + else: + return None + return current diff --git a/backend/realtime_engine/tasks.py b/backend/realtime_engine/tasks.py index acf981f..5236e14 100644 --- a/backend/realtime_engine/tasks.py +++ b/backend/realtime_engine/tasks.py @@ -1,27 +1,50 @@ +"""Celery tasks for the realtime-engine worker: lifecycle events, staleness scanning, HTTP polling.""" + import logging -import os from datetime import datetime, timezone -from typing import Any +from typing import TYPE_CHECKING, Any, cast -import redis from celery import shared_task +from celery.exceptions import SoftTimeLimitExceeded from django.utils.timezone import now +from databus.redis_client import create_redis_client from runs.services.lifecycle import RunLifecycleService +if TYPE_CHECKING: + from operations.models import Sensor + logger = logging.getLogger(__name__) -redis_client = redis.Redis( - host=os.getenv("REDIS_HOST", "state"), - port=int(os.getenv("REDIS_PORT", "6379")), - db=0, - decode_responses=True, -) +redis_client = create_redis_client() + + +def _smembers(key: str) -> set[str]: + """Read a Redis set as `set[str]`, narrowing away redis-py's shared Awaitable stub. + + `redis_client` here is always the synchronous, `decode_responses=True` + client, but redis-py's `CoreCommands` mixin types every command + `Awaitable[X] | X` since it's shared with the async client — this cast + narrows to the sync branch that's actually returned. + """ + return cast("set[str]", redis_client.smembers(key)) + + +def _get(key: str) -> str | None: + """Read a Redis string value, narrowing away redis-py's shared Awaitable stub.""" + return cast("str | None", redis_client.get(key)) + + +def _hgetall(key: str) -> dict[str, str]: + """Read a Redis hash as `dict[str, str]`, narrowing away redis-py's shared Awaitable stub.""" + return cast("dict[str, str]", redis_client.hgetall(key)) @shared_task(queue="realtime_engine") def run_lifecycle_event(event: str, payload: dict[str, Any]) -> None: - from runs.domain.lifecycle import RunLifecycleEvents + """Dispatch a lifecycle event to `RunLifecycleService`, logging benign re-fires as warnings.""" + from runs.domain.lifecycle import RunLifecycleEvents, target_state_for_event + from runs.services.exceptions import RunLifecycleError service = RunLifecycleService() try: @@ -31,6 +54,27 @@ def run_lifecycle_event(event: str, payload: dict[str, Any]) -> None: return try: service.process_event(evt, payload) + except RunLifecycleError as exc: + # Detectors already gate on current run state before firing, but a + # detection can still lose a race against an in-flight transition for + # the same run (e.g. two position pings both see "Tracking" before the + # first RUN_STARTED lands). When that happens the run has already + # reached this event's target state by the time this dispatch runs — + # a harmless no-op re-fire, not a real failure. Genuine invalid + # transitions (target state unresolved/mismatched) still log loudly. + target_state = target_state_for_event(evt) + current_state = exc.errors.get("current_state") + if target_state is not None and current_state == target_state.value: + logger.warning( + "Lifecycle event %s for run %s: no-op re-fire, run already %s", + event, + payload.get("run_id"), + current_state, + ) + else: + logger.exception( + "Lifecycle event %s failed for run %s", event, payload.get("run_id") + ) except Exception: logger.exception( "Lifecycle event %s failed for run %s", event, payload.get("run_id") @@ -47,10 +91,10 @@ def scan_stale_runs() -> str: """ from runs.domain.detection.dispatch import detect_from_scan - run_ids = redis_client.smembers("runs:tracking") + run_ids = _smembers("runs:tracking") fired = 0 for run_id in run_ids: - raw_last_seen = redis_client.get(f"runs:last_seen:{run_id}") + raw_last_seen = _get(f"runs:last_seen:{run_id}") if not raw_last_seen: continue try: @@ -66,6 +110,147 @@ def scan_stale_runs() -> str: return f"scan_stale_runs: checked {len(run_ids)} runs, fired {fired} events" +@shared_task(queue="realtime_engine", soft_time_limit=25) +def fetch_positions() -> str: + """Poll active HTTP telemetry sources and publish in-service vehicle positions. + + 1. Build the in-service vehicle-id set: every vehicle with an active + (non-terminal) run assigned, i.e. a ``vehicle::current_run`` key. + This is the *same* gate the MQTT consumer uses to accept telemetry, so + the poller and the consumer agree on which vehicles count. Gating on + ``runs:in_progress`` instead would deadlock a CONFIRMED run: it only + reaches IN_PROGRESS once telemetry proves the vehicle is moving, and + delivering that telemetry is exactly this task's job. + 2. Query ACTIVE sensors that provide position data over HTTP (source_type + "http" or "both" both use the "http" adapter). + 3. Pre-fetch filter: skip a sensor entirely -- never issue the HTTP call + -- when its own ``equipment.vehicle`` is not in the in-service set (or + the sensor has no equipment, or the equipment has no vehicle). This is + what stops the task from paying the full HTTP cost of every ACTIVE + sensor on every 10s tick regardless of whether anything behind it is + actually in service; previously, e.g. 6 ACTIVE sensors pointed at a + slow/unreachable host could occupy every worker slot and starve + ``process_position_update``. + + CAVEAT (NavSat and similar fleet endpoints): some adapters can return + readings for MANY vehicles from a single sensor's URL, not only the + vehicle named by that sensor's own ``equipment.vehicle``. This + pre-fetch filter only decides whether to CALL a given sensor -- it + has no way to know what a fleet endpoint might actually return. A + sensor whose own vehicle is out of service, but whose fleet endpoint + would otherwise have served *other* in-service vehicles' positions, + is now skipped entirely, and those vehicles' positions are missed via + this sensor until it (or some other covering sensor) is in service + again. Accepted trade-off -- see the commit message / task report for + the reasoning. + 4. Fetch each remaining sensor's readings, keep only the ones for + in-service vehicles (the *post*-fetch filter -- unaffected by the + above; still required to handle the fleet-endpoint case), and publish + the survivors on ``transit/vehicle//position``. + + Each sensor is fetched independently inside its own try/except so one + failing source can't sink the rest of the poll. The task also carries a + ``soft_time_limit`` so a single pathological source (e.g. a host that + hangs on every request) can never hold a worker slot indefinitely: on + ``SoftTimeLimitExceeded`` the sensor that was in flight is logged and the + task returns early instead of propagating the exception. + """ + from operations.models import Sensor + from runs.domain.telemetry import keys + from realtime_engine.sources import get_adapter + from realtime_engine.sources.publisher import MqttPublisher + + # Derive the key prefix/suffix from the helper so we never hardcode the + # ``vehicle::current_run`` shape here. + _prefix, _suffix = keys.current_run_key("\x00").split("\x00") + in_service_vehicle_ids: set[str] = { + key[len(_prefix): len(key) - len(_suffix)] + for key in redis_client.scan_iter(match=keys.current_run_key("*")) + } + + sensors = list( + Sensor.objects.filter( + status="ACTIVE", + provides_position=True, + source_type__in=["http", "both"], + ).select_related("equipment__vehicle") + ) + + def _sensor_vehicle_id(sensor: "Sensor") -> str | None: + """Resolve the vehicle id a sensor's equipment is currently assigned to.""" + equipment = getattr(sensor, "equipment", None) + if equipment is None: + return None + vehicle_id = getattr(equipment, "vehicle_id", None) + return str(vehicle_id) if vehicle_id is not None else None + + sensors_to_fetch = [ + sensor + for sensor in sensors + if (vid := _sensor_vehicle_id(sensor)) is not None + and vid in in_service_vehicle_ids + ] + + logger.info( + "fetch_positions: %d active HTTP position sensor(s), %d have an " + "in-service vehicle and will be fetched", + len(sensors), + len(sensors_to_fetch), + ) + + readings: list[tuple[str, dict]] = [] + failure_count = 0 + in_flight_sensor_id: object = None + try: + for sensor in sensors_to_fetch: + in_flight_sensor_id = getattr(sensor, "id", "?") + try: + adapter = get_adapter("http") + fetched = adapter.fetch(sensor) + except SoftTimeLimitExceeded: + # Never let the blanket `except Exception` below swallow + # this -- it must propagate to the outer handler so the loop + # actually stops instead of moving on to the next sensor. + raise + except Exception: + failure_count += 1 + logger.exception( + "Position fetch failed for sensor %s", in_flight_sensor_id + ) + continue + + for vehicle_id, payload in fetched: + if vehicle_id in in_service_vehicle_ids: + readings.append((vehicle_id, payload)) + except SoftTimeLimitExceeded: + logger.warning( + "fetch_positions hit its soft time limit while sensor %s was " + "in flight (%d/%d sensors fetched before the limit); returning " + "early without publishing", + in_flight_sensor_id, + len(readings), + len(sensors_to_fetch), + ) + return ( + f"fetch_positions: soft time limit exceeded while fetching " + f"sensor {in_flight_sensor_id}; polled {len(sensors)} sensors, " + f"{len(sensors_to_fetch)} eligible" + ) + + if readings: + try: + MqttPublisher().publish_batch(readings) + except Exception: + failure_count += 1 + logger.exception("Failed to publish fetched positions batch") + + return ( + f"fetch_positions: polled {len(sensors)} sensors, " + f"{len(sensors_to_fetch)} fetched, " + f"{failure_count} failures, published {len(readings)} positions" + ) + + @shared_task(queue="realtime_engine") def process_position_update(run_id: str, vehicle_id: str) -> None: """Run server-side producers and detection for a position update. @@ -119,7 +304,7 @@ def process_position_update(run_id: str, vehicle_id: str) -> None: # original MQTT data since position is last-write-wins and speed survives # the validate_for_write → from_redis round-trip as a typed float. try: - raw_position = redis_client.hgetall(keys.position_key(vehicle_id)) + raw_position = _hgetall(keys.position_key(vehicle_id)) if raw_position: latest_position = position.from_redis(raw_position) from runs.domain.detection.dispatch import detect_from_telemetry diff --git a/backend/realtime_engine/tests.py b/backend/realtime_engine/tests.py deleted file mode 100644 index aca2ffd..0000000 --- a/backend/realtime_engine/tests.py +++ /dev/null @@ -1,371 +0,0 @@ -from datetime import date - -from django.contrib.auth.models import User -from django.test import TestCase - -from feed.models import Feed, Trip -from realtime_engine.tasks import end_run, initialize_run, register_run, validate_run -from operations.models import Operator, Vehicle -from runs.models import Run - - -# --------------------------------------------------------------------------- -# Base valid payload — all cases start from this and mutate one field -# --------------------------------------------------------------------------- -def valid_run(): - return { - "vehicle_id": "v-test", - "operator_id": "op-test", - "route_id": "r-test", - "trip_id": "t-test", - "direction_id": 0, - "shape_id": "s-test", - "start_date": date.today().strftime("%Y-%m-%d"), - "start_time": "07:15:00", - "schedule_relationship": "SCHEDULED", - } - - -def run(data): - """Call validate_run synchronously (no Celery broker needed).""" - return validate_run.apply(args=[data]).get() - - -def show(case_num, description, data, result, expected): - status = "PASS" if result == expected else "FAIL" - print(f"\n[{status}] Case {case_num}: {description}") - print(f" Input : {data}") - print(f" Result : {result} (expected {expected})") - - -class ValidateRunTests(TestCase): - @classmethod - def setUpTestData(cls): - cls.vehicle = Vehicle.objects.create(id="v-test", license_plate="TST-001") - - user = User.objects.create_user(username="op_test", password="pw") - cls.operator = Operator.objects.create(id="op-test", user=user) - - cls.feed = Feed.objects.create(feed_id="feed-test", is_current=True) - - # bulk_create skips the overridden save() that requires Route + Calendar to exist - Trip.objects.bulk_create( - [ - Trip( - feed=cls.feed, - trip_id="t-test", - route_id="r-test", - service_id="svc-test", - direction_id=0, - shape_id="s-test", - wheelchair_accessible=0, - bikes_allowed=0, - ) - ] - ) - - # ------------------------------------------------------------------ - # Case 1 — Happy path - # ------------------------------------------------------------------ - def test_case_01_valid(self): - data = valid_run() - result = run(data) - show(1, "All fields correct", data, result, True) - self.assertTrue(result) - - # ------------------------------------------------------------------ - # Case 2 — Required field completely absent - # ------------------------------------------------------------------ - def test_case_02_missing_vehicle_id(self): - data = valid_run() - del data["vehicle_id"] - result = run(data) - show(2, "vehicle_id key missing from payload", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 3 — Required field present but empty string - # ------------------------------------------------------------------ - def test_case_03_empty_trip_id(self): - data = valid_run() - data["trip_id"] = "" - result = run(data) - show(3, "trip_id is empty string", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 4 — direction_id cannot be cast to int - # ------------------------------------------------------------------ - def test_case_04_invalid_direction_id(self): - data = valid_run() - data["direction_id"] = "norte" - result = run(data) - show(4, "direction_id is non-numeric string 'norte'", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 5 — start_date has wrong format - # ------------------------------------------------------------------ - def test_case_05_bad_date_format(self): - data = valid_run() - data["start_date"] = "26/04/2026" # dd/mm/yyyy instead of yyyy-mm-dd - result = run(data) - show(5, "start_date format is dd/mm/yyyy (invalid)", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 6 — start_date is not today - # ------------------------------------------------------------------ - def test_case_06_date_not_today(self): - data = valid_run() - data["start_date"] = "2024-05-03" - result = run(data) - show(6, "start_date is a past date (not today)", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 7 — vehicle does not exist in DB - # ------------------------------------------------------------------ - def test_case_07_vehicle_not_found(self): - data = valid_run() - data["vehicle_id"] = "ghost-vehicle" - result = run(data) - show(7, "vehicle_id not in Vehicle table", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 8 — operator does not exist in DB - # ------------------------------------------------------------------ - def test_case_08_operator_not_found(self): - data = valid_run() - data["operator_id"] = "ghost-operator" - result = run(data) - show(8, "operator_id not in Operator table", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 9 — vehicle already in an active run - # ------------------------------------------------------------------ - def test_case_09_vehicle_already_in_progress(self): - Run.objects.create( - vehicle=self.vehicle, - operator=self.operator, - route_id="r-test", - trip_id="t-test", - direction_id=0, - shape_id="s-test", - start_date=date.today(), - run_lifecycle_state="IN_PROGRESS", - ) - data = valid_run() - result = run(data) - show(9, "vehicle already has a run IN_PROGRESS", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 10 — no feed with is_current=True - # ------------------------------------------------------------------ - def test_case_10_no_current_feed(self): - Feed.objects.filter(feed_id="feed-test").update(is_current=False) - data = valid_run() - result = run(data) - show(10, "no Feed with is_current=True exists", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 11 — trip not found in current feed - # ------------------------------------------------------------------ - def test_case_11_trip_not_in_feed(self): - data = valid_run() - data["trip_id"] = "trip-fantasma" - result = run(data) - show(11, "trip_id does not exist in current feed", data, result, False) - self.assertFalse(result) - - -class InitializeRunTests(TestCase): - @classmethod - def setUpTestData(cls): - cls.vehicle = Vehicle.objects.create(id="v-test", license_plate="TST-001") - user = User.objects.create_user(username="op_test", password="pw") - cls.operator = Operator.objects.create(id="op-test", user=user) - - # ------------------------------------------------------------------ - # Case 1 — Happy path: Run is created and its id is returned - # ------------------------------------------------------------------ - def test_case_01_creates_run_and_returns_id(self): - data = valid_run() - ok, run_id = initialize_run.apply(args=[data]).get() - show( - 1, - "Valid data → Run created in DB", - data, - (ok, run_id is not None), - (True, True), - ) - self.assertTrue(ok) - self.assertIsNotNone(run_id) - self.assertTrue(Run.objects.filter(id=run_id).exists()) - - # ------------------------------------------------------------------ - # Case 2 — Bad start_time format → exception caught → (False, None) - # ------------------------------------------------------------------ - def test_case_02_bad_start_time_format(self): - data = valid_run() - data["start_time"] = "7h15m" - ok, run_id = initialize_run.apply(args=[data]).get() - show( - 2, - "start_time has invalid format '7h15m'", - data, - (ok, run_id), - (False, None), - ) - self.assertFalse(ok) - self.assertIsNone(run_id) - - # ------------------------------------------------------------------ - # Case 3 — Run with same vehicle+trip already exists (duplicate) - # ------------------------------------------------------------------ - def test_case_03_run_created_with_correct_status(self): - data = valid_run() - ok, run_id = initialize_run.apply(args=[data]).get() - run = Run.objects.get(id=run_id) - show( - 3, - "Run is stored with status REGISTERED", - data, - run.run_lifecycle_state, - "REGISTERED", - ) - self.assertTrue(ok) - self.assertEqual(run.run_lifecycle_state, "REGISTERED") - - -class RegisterRunTests(TestCase): - @classmethod - def setUpTestData(cls): - cls.vehicle = Vehicle.objects.create(id="v-test", license_plate="TST-001") - user = User.objects.create_user(username="op_test", password="pw") - cls.operator = Operator.objects.create(id="op-test", user=user) - cls.feed = Feed.objects.create(feed_id="feed-test", is_current=True) - Trip.objects.bulk_create( - [ - Trip( - feed=cls.feed, - trip_id="t-test", - route_id="r-test", - service_id="svc-test", - direction_id=0, - shape_id="s-test", - wheelchair_accessible=0, - bikes_allowed=0, - ) - ] - ) - - # ------------------------------------------------------------------ - # Case 1 — Valid data: validation + initialization both succeed - # ------------------------------------------------------------------ - def test_case_01_valid_full_flow(self): - data = valid_run() - ok, run_id = register_run.apply(args=[data]).get() - show( - 1, - "Valid data → validate + initialize → Run in DB", - data, - (ok, run_id is not None), - (True, True), - ) - self.assertTrue(ok) - self.assertIsNotNone(run_id) - self.assertTrue(Run.objects.filter(id=run_id).exists()) - - # ------------------------------------------------------------------ - # Case 2 — Validation fails: register_run short-circuits → (False, None) - # ------------------------------------------------------------------ - def test_case_02_validation_fails(self): - data = valid_run() - data["start_date"] = "2024-05-03" # not today - ok, run_id = register_run.apply(args=[data]).get() - show( - 2, - "Date not today → validation fails → no Run created", - data, - (ok, run_id), - (False, None), - ) - self.assertFalse(ok) - self.assertIsNone(run_id) - self.assertFalse(Run.objects.exists()) - - -class EndRunTests(TestCase): - @classmethod - def setUpTestData(cls): - cls.vehicle = Vehicle.objects.create(id="v-test", license_plate="TST-001") - user = User.objects.create_user(username="op_test", password="pw") - cls.operator = Operator.objects.create(id="op-test", user=user) - - def make_run(self, status="IN_PROGRESS"): - return Run.objects.create( - vehicle=self.vehicle, - operator=self.operator, - route_id="r-test", - trip_id="t-test", - direction_id=0, - shape_id="s-test", - start_date=date.today(), - run_lifecycle_state=status, - ) - - def call(self, data): - return end_run.apply(args=[data]).get() - - # ------------------------------------------------------------------ - # Case 1 — IN_PROGRESS run → transitions to COMPLETED → True - # ------------------------------------------------------------------ - def test_case_01_valid(self): - run = self.make_run("IN_PROGRESS") - data = {"run_id": run.id} - result = self.call(data) - show(1, "IN_PROGRESS run → COMPLETED", data, result, True) - self.assertTrue(result) - self.assertEqual(Run.objects.get(id=run.id).run_lifecycle_state, "COMPLETED") - - # ------------------------------------------------------------------ - # Case 2 — run_id is None - # ------------------------------------------------------------------ - def test_case_02_run_id_none(self): - data = {"run_id": None} - result = self.call(data) - show(2, "run_id is None", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 3 — run_id is empty string - # ------------------------------------------------------------------ - def test_case_03_run_id_empty(self): - data = {"run_id": ""} - result = self.call(data) - show(3, "run_id is empty string", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 4 — run_id does not exist in DB - # ------------------------------------------------------------------ - def test_case_04_run_not_found(self): - data = {"run_id": 99999} - result = self.call(data) - show(4, "run_id 99999 does not exist in DB", data, result, False) - self.assertFalse(result) - - # ------------------------------------------------------------------ - # Case 5 — Run exists but is already COMPLETED (non-completable state) - # ------------------------------------------------------------------ - def test_case_05_already_completed(self): - run = self.make_run("COMPLETED") - data = {"run_id": run.id} - result = self.call(data) - show(5, "Run is already COMPLETED → cannot complete again", data, result, False) - self.assertFalse(result) diff --git a/backend/realtime_engine/tests/test_fetch_positions.py b/backend/realtime_engine/tests/test_fetch_positions.py new file mode 100644 index 0000000..91fdc96 --- /dev/null +++ b/backend/realtime_engine/tests/test_fetch_positions.py @@ -0,0 +1,324 @@ +"""Unit tests for realtime_engine.tasks.fetch_positions. + +No live database and no real MQTT broker: ``Sensor.objects`` is monkeypatched +to return fake ``SimpleNamespace`` sensors (never touching Postgres), the +adapter registry (``realtime_engine.sources.get_adapter``) and the publisher +(``realtime_engine.sources.publisher.MqttPublisher``) are monkeypatched, and +the module-level ``redis_client`` is replaced with a ``MagicMock`` — matching +the same patch targets already used by ``test_mqtt_ingestion.py`` for this +module. + +Importing ``realtime_engine.tasks`` pulls in the full Django app registry +(pre-existing, via ``runs.services.lifecycle.RunLifecycleService`` at module +scope) so this file needs ``DEBUG`` and ``DJANGO_SETTINGS_MODULE`` set, same +as ``test_mqtt_ingestion.py`` in this same directory -- run it with e.g. +``DEBUG=True DJANGO_SETTINGS_MODULE=databus.settings uv run pytest +realtime_engine/tests/test_fetch_positions.py``. No test here ever queries a +real database. +""" + +from types import SimpleNamespace +from unittest.mock import MagicMock + +from celery.exceptions import SoftTimeLimitExceeded + +from operations.models import Sensor + +import realtime_engine.sources as sources_module +import realtime_engine.sources.publisher as publisher_module +import realtime_engine.tasks as tasks_module +from realtime_engine.tasks import fetch_positions +from runs.domain.telemetry import keys + +IN_SERVICE_VEHICLE_ID = "veh-in-service" +OUT_OF_SERVICE_VEHICLE_ID = "veh-out-of-service" + + +def _make_sensor(sensor_id="sensor-1"): + return SimpleNamespace( + id=sensor_id, + source_http_url="http://example.test/positions", + source_json_mapping={}, + equipment=SimpleNamespace(vehicle_id=IN_SERVICE_VEHICLE_ID), + ) + + +def _fake_redis(in_service=(IN_SERVICE_VEHICLE_ID,)) -> MagicMock: + """Redis mock: ``scan_iter`` over ``vehicle:*:current_run`` yields one key + per in-service vehicle -- the same ``current_run`` gate the task uses.""" + r = MagicMock() + r.scan_iter.return_value = [keys.current_run_key(vid) for vid in in_service] + return r + + +def _fake_sensor_manager(sensors): + """A MagicMock standing in for Sensor.objects supporting filter().select_related().""" + manager = MagicMock() + manager.filter.return_value.select_related.return_value = sensors + return manager + + +# --------------------------------------------------------------------------- +# Only in-service vehicles get published; out-of-service readings are dropped +# --------------------------------------------------------------------------- + + +def test_fetch_positions_filters_out_of_service_vehicles(monkeypatch): + fake_r = _fake_redis() + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + sensor = _make_sensor() + monkeypatch.setattr(Sensor, "objects", _fake_sensor_manager([sensor])) + + fake_adapter = MagicMock() + fake_adapter.fetch.return_value = [ + (IN_SERVICE_VEHICLE_ID, {"latitude": 1.0, "longitude": 2.0}), + (OUT_OF_SERVICE_VEHICLE_ID, {"latitude": 3.0, "longitude": 4.0}), + ] + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: fake_adapter) + + fake_publisher = MagicMock() + monkeypatch.setattr( + publisher_module, "MqttPublisher", lambda: fake_publisher + ) + + result = fetch_positions() + + fake_publisher.publish_batch.assert_called_once() + (published_records,), _ = fake_publisher.publish_batch.call_args + published_vehicle_ids = {vid for vid, _ in published_records} + assert published_vehicle_ids == {IN_SERVICE_VEHICLE_ID} + assert "published 1" in result + + +def test_fetch_positions_skips_publish_when_no_in_service_readings(monkeypatch): + fake_r = _fake_redis() + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + sensor = _make_sensor() + monkeypatch.setattr(Sensor, "objects", _fake_sensor_manager([sensor])) + + fake_adapter = MagicMock() + fake_adapter.fetch.return_value = [ + (OUT_OF_SERVICE_VEHICLE_ID, {"latitude": 3.0, "longitude": 4.0}), + ] + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: fake_adapter) + + fake_publisher = MagicMock() + monkeypatch.setattr( + publisher_module, "MqttPublisher", lambda: fake_publisher + ) + + result = fetch_positions() + + fake_publisher.publish_batch.assert_not_called() + assert "published 0" in result + + +# --------------------------------------------------------------------------- +# A raising source is isolated -- the task still succeeds and other sensors' +# readings still get published. +# --------------------------------------------------------------------------- + + +def test_fetch_positions_isolates_a_raising_sensor(monkeypatch): + fake_r = _fake_redis() + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + good_sensor = _make_sensor(sensor_id="sensor-good") + bad_sensor = _make_sensor(sensor_id="sensor-bad") + monkeypatch.setattr( + Sensor, "objects", _fake_sensor_manager([bad_sensor, good_sensor]) + ) + + fake_adapter = MagicMock() + + def _fetch(sensor): + if sensor.id == "sensor-bad": + raise ConnectionError("upstream is down") + return [(IN_SERVICE_VEHICLE_ID, {"latitude": 1.0, "longitude": 2.0})] + + fake_adapter.fetch.side_effect = _fetch + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: fake_adapter) + + fake_publisher = MagicMock() + monkeypatch.setattr( + publisher_module, "MqttPublisher", lambda: fake_publisher + ) + + # Must not raise even though one sensor's fetch blows up. + result = fetch_positions() + + fake_publisher.publish_batch.assert_called_once() + (published_records,), _ = fake_publisher.publish_batch.call_args + assert [vid for vid, _ in published_records] == [IN_SERVICE_VEHICLE_ID] + assert "polled 2 sensors" in result + assert "1 failures" in result + + +def test_fetch_positions_queries_only_active_http_position_sensors(monkeypatch): + """Sanity-check the filter kwargs passed to Sensor.objects.filter.""" + fake_r = _fake_redis(in_service=()) + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + manager = _fake_sensor_manager([]) + monkeypatch.setattr(Sensor, "objects", manager) + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: MagicMock()) + monkeypatch.setattr(publisher_module, "MqttPublisher", lambda: MagicMock()) + + fetch_positions() + + manager.filter.assert_called_once_with( + status="ACTIVE", + provides_position=True, + source_type__in=["http", "both"], + ) + manager.filter.return_value.select_related.assert_called_once_with( + "equipment__vehicle" + ) + + +# --------------------------------------------------------------------------- +# Pre-fetch filter: a sensor is never even called over HTTP unless its own +# equipment/vehicle is in service. +# --------------------------------------------------------------------------- + + +def test_fetch_positions_never_fetches_sensor_with_out_of_service_vehicle(monkeypatch): + fake_r = _fake_redis() # only IN_SERVICE_VEHICLE_ID is in service + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + out_of_service_sensor = SimpleNamespace( + id="sensor-oos", + source_http_url="http://example.test/positions", + source_json_mapping={}, + equipment=SimpleNamespace(vehicle_id=OUT_OF_SERVICE_VEHICLE_ID), + ) + monkeypatch.setattr( + Sensor, "objects", _fake_sensor_manager([out_of_service_sensor]) + ) + + fake_adapter = MagicMock() + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: fake_adapter) + + fake_publisher = MagicMock() + monkeypatch.setattr(publisher_module, "MqttPublisher", lambda: fake_publisher) + + result = fetch_positions() + + fake_adapter.fetch.assert_not_called() + fake_publisher.publish_batch.assert_not_called() + assert "polled 1 sensors" in result + assert "0 fetched" in result + + +def test_fetch_positions_skips_sensor_with_no_equipment_or_vehicle(monkeypatch): + fake_r = _fake_redis() + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + no_equipment_sensor = SimpleNamespace( + id="sensor-no-equipment", + source_http_url="http://example.test/positions", + source_json_mapping={}, + equipment=None, + ) + no_vehicle_sensor = SimpleNamespace( + id="sensor-no-vehicle", + source_http_url="http://example.test/positions", + source_json_mapping={}, + equipment=SimpleNamespace(vehicle_id=None), + ) + monkeypatch.setattr( + Sensor, + "objects", + _fake_sensor_manager([no_equipment_sensor, no_vehicle_sensor]), + ) + + fake_adapter = MagicMock() + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: fake_adapter) + + fake_publisher = MagicMock() + monkeypatch.setattr(publisher_module, "MqttPublisher", lambda: fake_publisher) + + result = fetch_positions() + + fake_adapter.fetch.assert_not_called() + fake_publisher.publish_batch.assert_not_called() + assert "polled 2 sensors" in result + assert "0 fetched" in result + + +def test_fetch_positions_still_fetches_and_publishes_in_service_sensor(monkeypatch): + """An in-service sensor is fetched and published even when another, + out-of-service sensor is present and correctly skipped.""" + fake_r = _fake_redis() + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + in_service_sensor = _make_sensor(sensor_id="sensor-in-service") + out_of_service_sensor = SimpleNamespace( + id="sensor-oos", + source_http_url="http://example.test/positions", + source_json_mapping={}, + equipment=SimpleNamespace(vehicle_id=OUT_OF_SERVICE_VEHICLE_ID), + ) + monkeypatch.setattr( + Sensor, + "objects", + _fake_sensor_manager([in_service_sensor, out_of_service_sensor]), + ) + + fake_adapter = MagicMock() + fake_adapter.fetch.return_value = [ + (IN_SERVICE_VEHICLE_ID, {"latitude": 1.0, "longitude": 2.0}), + ] + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: fake_adapter) + + fake_publisher = MagicMock() + monkeypatch.setattr(publisher_module, "MqttPublisher", lambda: fake_publisher) + + result = fetch_positions() + + fake_adapter.fetch.assert_called_once_with(in_service_sensor) + fake_publisher.publish_batch.assert_called_once() + (published_records,), _ = fake_publisher.publish_batch.call_args + assert [vid for vid, _ in published_records] == [IN_SERVICE_VEHICLE_ID] + assert "polled 2 sensors" in result + assert "1 fetched" in result + + +# --------------------------------------------------------------------------- +# soft_time_limit: a pathological source can't hold the task open forever. +# --------------------------------------------------------------------------- + + +def test_fetch_positions_handles_soft_time_limit_mid_loop(monkeypatch, caplog): + fake_r = _fake_redis() + monkeypatch.setattr(tasks_module, "redis_client", fake_r) + + sensor_a = _make_sensor(sensor_id="sensor-a") + sensor_b = _make_sensor(sensor_id="sensor-b") + monkeypatch.setattr( + Sensor, "objects", _fake_sensor_manager([sensor_a, sensor_b]) + ) + + fake_adapter = MagicMock() + + def _fetch(sensor): + if sensor.id == "sensor-a": + raise SoftTimeLimitExceeded() + return [(IN_SERVICE_VEHICLE_ID, {"latitude": 1.0, "longitude": 2.0})] + + fake_adapter.fetch.side_effect = _fetch + monkeypatch.setattr(sources_module, "get_adapter", lambda kind: fake_adapter) + + fake_publisher = MagicMock() + monkeypatch.setattr(publisher_module, "MqttPublisher", lambda: fake_publisher) + + with caplog.at_level("WARNING"): + result = fetch_positions() + + # The loop stopped at sensor-a; sensor-b was never reached. + assert fake_adapter.fetch.call_count == 1 + fake_publisher.publish_batch.assert_not_called() + assert "sensor-a" in caplog.text + assert "soft time limit" in result.lower() diff --git a/backend/realtime_engine/tests/test_lifecycle_event_task.py b/backend/realtime_engine/tests/test_lifecycle_event_task.py new file mode 100644 index 0000000..ab2d694 --- /dev/null +++ b/backend/realtime_engine/tests/test_lifecycle_event_task.py @@ -0,0 +1,82 @@ +"""Unit tests for ``run_lifecycle_event``'s WARNING-vs-ERROR branching. + +Detectors already gate on the run's current state before firing (see +``runs/domain/detection/tests/``), but a detection can still lose a race +against an in-flight transition for the same run — two detections both read +the pre-transition state before the first one's ``run_lifecycle_event`` task +lands. When the *second* one is then processed, the run has already reached +its target state and ``RunLifecycleService.process_event`` rejects it as +"no valid transition". That rejection is a harmless no-op, not a bug, so it +must log at WARNING with a concise message — not ERROR with a traceback. +A rejection where the run is nowhere near the event's target state is a +genuine invalid transition and must stay loud. + +``RunLifecycleService.process_event`` is mocked; only the task's own +exception handling is under test here. +""" + +import logging +from unittest.mock import patch + +import realtime_engine.tasks as tasks_module +from runs.services.exceptions import RunLifecycleError + +RUN_ID = "run-flood-1" +LOGGER_NAME = "realtime_engine.tasks" + + +def _rejection(current_state: str) -> RunLifecycleError: + return RunLifecycleError( + { + "detail": "No valid transition for event 'run_started' from state " + f"'{current_state}'.", + "attempts": [], + "current_state": current_state, + } + ) + + +def test_idempotent_refire_logs_warning_not_error(caplog): + """run_started rejected because the run is already IN_PROGRESS (its own + target state) is a race-condition no-op.""" + with patch.object( + tasks_module.RunLifecycleService, + "process_event", + side_effect=_rejection("In Progress"), + ): + with caplog.at_level(logging.WARNING, logger=LOGGER_NAME): + tasks_module.run_lifecycle_event("run_started", {"run_id": RUN_ID}) + + levels = [r.levelno for r in caplog.records] + assert logging.WARNING in levels + assert logging.ERROR not in levels and logging.CRITICAL not in levels + + +def test_genuine_invalid_transition_still_logs_error(caplog): + """run_started rejected while the run is somewhere run_started could + never have led it (still CONFIRMED, never TRACKING) is a real bug.""" + with patch.object( + tasks_module.RunLifecycleService, + "process_event", + side_effect=_rejection("Confirmed"), + ): + with caplog.at_level(logging.WARNING, logger=LOGGER_NAME): + tasks_module.run_lifecycle_event("run_started", {"run_id": RUN_ID}) + + levels = [r.levelno for r in caplog.records] + assert logging.ERROR in levels + + +def test_unrelated_exception_still_logs_error(caplog): + """Non-lifecycle failures (e.g. the run row vanished) are unaffected by + the idempotent-refire carve-out.""" + with patch.object( + tasks_module.RunLifecycleService, + "process_event", + side_effect=RuntimeError("boom"), + ): + with caplog.at_level(logging.WARNING, logger=LOGGER_NAME): + tasks_module.run_lifecycle_event("run_started", {"run_id": RUN_ID}) + + levels = [r.levelno for r in caplog.records] + assert logging.ERROR in levels diff --git a/backend/realtime_engine/tests/test_mqtt_ingestion.py b/backend/realtime_engine/tests/test_mqtt_ingestion.py index 3d12347..52c9be1 100644 --- a/backend/realtime_engine/tests/test_mqtt_ingestion.py +++ b/backend/realtime_engine/tests/test_mqtt_ingestion.py @@ -26,8 +26,10 @@ import pytest import realtime_engine.mqtt as mqtt_module +import realtime_engine.tasks as tasks_module from realtime_engine.mqtt import _handle_telemetry -from runs.domain.telemetry import keys, occupancy, position +from realtime_engine.tasks import process_position_update +from runs.domain.telemetry import keys, occupancy # --------------------------------------------------------------------------- @@ -313,9 +315,6 @@ def test_on_connect_subscribes_position_and_occupancy_only(): # --------------------------------------------------------------------------- -import realtime_engine.tasks as tasks_module -from realtime_engine.tasks import process_position_update - _POSITION_RAW_REDIS = { "latitude": "51.5074", "longitude": "-0.1278", diff --git a/backend/realtime_engine/views.py b/backend/realtime_engine/views.py index 91ea44a..9035dee 100644 --- a/backend/realtime_engine/views.py +++ b/backend/realtime_engine/views.py @@ -1,3 +1 @@ -from django.shortcuts import render - -# Create your views here. +"""Django views for realtime_engine (none: this app exposes no HTTP endpoints).""" diff --git a/backend/runs/README.md b/backend/runs/README.md index b3ba48f..a6c2194 100644 --- a/backend/runs/README.md +++ b/backend/runs/README.md @@ -1,14 +1,29 @@ # Run +`runs` owns the run lifecycle FSM, the detectors that drive it from telemetry, +map-matching/ETA progression, and the Redis telemetry contracts shared with +`realtime_engine` and `schedule_engine`. + ## Run lifecycle states +`runs/domain/lifecycle/states.py` (`RunLifecycleStates`): + +`Requested`, `Validated`, `Initialized`, `Confirmed`, `Tracking`, +`In Progress`, `No Signal`, `Completed`, `Cancelled`, `Interrupted`, +`Short Turned`. + +## Run lifecycle events + +`runs/domain/lifecycle/events.py` (`RunLifecycleEvents`) — REST commands and +telemetry-detected facts that drive transitions between the states above: + - `RUN_REQUESTED` = a "POST /create-run" API call request happened (an implicit run request) -- `VALIDATE_RUN` = apply the transition guards to check GTFS consistency -- `INITIALIZE_RUN` = execute actions to update the system state +- `VALIDATE_RUN` = apply the transition guards checking GTFS validity (route/trip/shape/schedule_relationship against the current feed) and resource availability (vehicle/trip/operator not already claimed by another run) +- `INITIALIZE_RUN` = execute actions to update the system state, gated by `is_run_validated` — a real revalidation guard that re-checks resource availability and re-confirms the run's trip against whichever GTFS feed is current *now* (closes the race window against a nightly `build_schedule` feed rotation between VALIDATE_RUN and INITIALIZE_RUN) - `RUN_CONFIRMED_BY_OPERATOR` = the operator (driver, dispatcher) re-confirmed the run - `RUN_TRACKING_STARTED` = GPS pings are detected and valid -- `RUN_STARTED` = the run actually started (vehicle is moving along a valid path) -- `RUN_COMPLETED` = manual or automatic request to complete a successful run (e.g. vehicle reached the end of the route or the run was completed by the operator) +- `RUN_STARTED` = the run actually started (vehicle is moving along a valid path; guard `is_vehicle_moving` checks reported speed > 0.5 m/s) +- `RUN_COMPLETED` = manual or automatic request to complete a successful run (e.g. vehicle reached the end of the route or the run was completed by the operator); guard `is_at_terminal_stop` checks the reported `stop_id` against the trip's last `stop_time` - `RUN_REJECTED` = validation or initialization failed - `CANCEL_RUN` = a cancellation request by the operator (driver, administrator, dispatcher) or the system before it started @@ -17,3 +32,113 @@ - `RUN_TRACKING_LOST` = the run tracking was lost (automatic, async) - `RUN_TRACKING_RESTORED` = the run tracking was restored (automatic, async) - `RUN_TRACKING_EXPIRED` = the run tracking expired (e.g. no telemetry for a long time) (automatic, async) + +## `domain/lifecycle` — the table-driven FSM + +- `states.py` / `events.py` — the enums above. +- `transitions.py` — the static `TRANSITIONS` table: each entry is a + `(from_state, event) -> (to_state, guards, actions)` `Transition`. Also + exposes `target_state_for_event`, used by + `realtime_engine.tasks.run_lifecycle_event` to tell an idempotent re-fire + (a detection that lost a race and the run already reached the target + state) apart from a genuine invalid transition. +- `guards.py` — `RunLifecycleGuards`, pure-ish predicate functions + `(run, transition, payload) -> bool` that either return a verdict or raise + `RunLifecycleError` with field-level detail. Includes GTFS validity + (`is_gtfs_valid`), resource-claim checks (`is_vehicle_available`, + `is_trip_available`, `is_operator_available`), the `is_run_validated` + revalidation guard, authorization checks for cancel/interrupt/short-turn, + and telemetry-freshness guards (`is_telemetry_stale`, `is_telemetry_fresh`, + `is_telemetry_grace_period_exceeded`) built on the shared thresholds in + `runs.domain.detection.thresholds`. +- `actions.py` — `RunLifecycleActions`, the Redis side-effects a successful + transition performs: writing/clearing the `run:` hash and its + `run::trip` GTFS-RT projection, claiming/releasing + `vehicle|operator|trip::current_run` assignment keys, and maintaining + the `runs:tracking` / `runs:in_progress` sets. +- Submodules are lazy-loaded via `__getattr__` in `__init__.py` so importing + `runs.domain.lifecycle` doesn't eagerly pull in the Redis/Django-touching + `actions`/`guards` modules. + +## `domain/detection` — telemetry/staleness → lifecycle events + +Detectors are pure functions of state + one signal; a dispatch layer wires +them to Redis and the Celery lifecycle task. + +- `lifecycle_detectors.py` — evaluated per incoming telemetry message: + `RunTrackingStartedDetector` (any telemetry while `Confirmed`), + `RunStartedDetector` (`Tracking` + `position.speed > 0.5` m/s), + `RunTrackingRestoredDetector` (any telemetry while `No Signal`), + `RunCompletedDetector` (`In Progress` + `progression` leaf reporting + `STOPPED_AT` with a `stop_id`). +- `periodic_detectors.py` — evaluated by the periodic staleness scan: + `RunTrackingLostDetector` (`In Progress`, `60 s < staleness ≤ 600 s`), + `RunTrackingExpiredDetector` (`No Signal`, `staleness > 600 s`). Thresholds + come from the single source `thresholds.py` + (`TELEMETRY_GRACE_S = 60`, `TELEMETRY_EXPIRY_S = 600`) — previously these + lived duplicated in `realtime_engine/tasks.py` (300 s) and + `runs/domain/lifecycle/guards.py` (600 s) and disagreed; both now import + from here. +- `registry.py` — ordered `TELEMETRY_DETECTORS` / `PERIODIC_DETECTORS` lists; + the planner fires at most one event per FSM per evaluation (first match). +- `dispatch.py` — pure planners (`plan_telemetry_events`, `plan_scan_events`, + unit-testable, no I/O) plus impure wrappers (`detect_from_telemetry`, + `detect_from_scan`) that read run state from Redis, seed `runs:tracking` + membership for `run_tracking_started`/`run_tracking_restored`, and queue + the fired event onto `realtime_engine.tasks.run_lifecycle_event`. + `realtime_engine/mqtt.py` and `scan_stale_runs` call only the wrappers. + +## `domain/progression` — map-matching + ETA + +- `compute.py` / `producer.py` — server-side stop-status: `produce_stop_status` + (called from `realtime_engine.tasks.process_position_update` after every + position write) reads the latest position + run hash, delegates to + `compute_stop_status` for real GPS→polyline map-matching (projects onto the + cached shape geometry, picks the upcoming stop, applies `STOPPED_AT` / + `INCOMING_AT` / `IN_TRANSIT_TO` radius rules with a monotonic + stop-sequence floor), and writes `run::vehicle_stop_status`. Falls back + to `IN_TRANSIT_TO` + carry-forward of the previous state on any exception + (missing shape, ORM error, bad payload) — this producer must never raise. +- `stop_times.py` — `produce_stop_times` derives and writes + `run::stop_time_updates` (TTL 60 s). Calls the ETA estimator through a + **lazy import seam** — `gtfs_eta.eta_service.estimator` and + `gtfs_eta.feature_engineering.spatial` are imported inside the function, + not at module scope, so Django/Celery startup stays clean even when the + editable `gtfs-eta` path dependency isn't fully set up. No predictions + (e.g. no trained model) leaves the last-good projection to expire via TTL + rather than overwriting it. +- `geo.py` / `shapes.py` — pure geometry helpers (`haversine_m`, + `project_point_to_polyline`) and cached GTFS shape-geometry loading. + +## `domain/telemetry` — Redis key parsers/writers + +`keys.py` is the single source of truth for every Redis key template used +across `runs`, `realtime_engine`, and `schedule_engine` — no other module +should hardcode these strings. Each entity module (`position.py`, +`occupancy.py`, `vehicle_stop_status.py`, `stop_time_updates.py`, `trip.py`, +`congestion_level.py`) defines the field-name constants, a `from_redis` / +`validate_for_write` (or `to_redis`) pair, and documents its producer and +consumer. `congestion_level.py` is a stub — the key is reserved, no producer +exists yet. + +## `services/lifecycle.py` — driving the FSM + +`RunLifecycleService.process_event(event, payload)`: + +1. Loads the `Run` named by `payload["run_id"]`. +2. Looks up candidate transitions via `services/registry.py`'s + `TransitionRegistry.find(state, event)`. +3. Runs each candidate's guards; on the first fully-passing candidate, + executes its actions, updates `Run.run_lifecycle_state`/`last_event_at`, + and publishes the transition as a domain event via `messages.publisher` + to the durable `databus.events` topic exchange (routing key + `runs.lifecycle.`) — fire-and-forget; broker errors are logged and + swallowed, never raised into the lifecycle path. +4. Persists an immutable `RunLifecycleTransition` audit record (guards + + actions results) for every attempt, successful or not. +5. Raises `RunLifecycleError` (with the full attempt history) if no + candidate transition succeeds. + +Called from `realtime_engine.tasks.run_lifecycle_event`, which treats a +`RunLifecycleError` where the run already reached the event's target state +as a benign idempotent re-fire (logged as a warning), not a failure. diff --git a/backend/runs/admin.py b/backend/runs/admin.py index be9c64a..2fc55ee 100644 --- a/backend/runs/admin.py +++ b/backend/runs/admin.py @@ -1,3 +1,5 @@ +"""Register run and per-tick telemetry snapshot models with the Django admin site.""" + from django.contrib.gis import admin from .models import Run, Position, VehicleStopStatus, CongestionLevel, OccupancyStatus diff --git a/backend/runs/apps.py b/backend/runs/apps.py index b3fa904..d51ca31 100644 --- a/backend/runs/apps.py +++ b/backend/runs/apps.py @@ -1,5 +1,9 @@ +"""Django AppConfig for the runs app.""" + from django.apps import AppConfig class RunsConfig(AppConfig): + """Django app configuration for `runs` (run lifecycle, detection, progression, telemetry contracts).""" + name = 'runs' diff --git a/backend/runs/domain/detection/dispatch.py b/backend/runs/domain/detection/dispatch.py index a911a53..28f2b45 100644 --- a/backend/runs/domain/detection/dispatch.py +++ b/backend/runs/domain/detection/dispatch.py @@ -12,21 +12,15 @@ logic of their own. """ -import os -from typing import Any +from typing import Any, cast -import redis from django.utils.timezone import now +from databus.redis_client import create_redis_client from runs.domain.detection.result import DetectionResult from runs.domain.detection import registry -r = redis.Redis( - host=os.getenv("REDIS_HOST", "state"), - port=int(os.getenv("REDIS_PORT", "6379")), - db=0, - decode_responses=True, -) +r = create_redis_client() # Lifecycle events whose guard (``is_vehicle_tracked``) requires the run to # already be in ``runs:tracking``. The arrival of telemetry is precisely the @@ -45,7 +39,7 @@ def plan_telemetry_events( leaf: str, data: dict[str, Any], base_payload: dict[str, Any], - detectors=registry.TELEMETRY_DETECTORS, + detectors: list[Any] = registry.TELEMETRY_DETECTORS, ) -> list[DetectionResult]: """Plan at most one event per FSM for a telemetry message.""" results: list[DetectionResult] = [] @@ -66,7 +60,7 @@ def plan_scan_events( lifecycle_state: str | None, staleness_s: float, payload: dict[str, Any], - detectors=registry.PERIODIC_DETECTORS, + detectors: list[Any] = registry.PERIODIC_DETECTORS, ) -> list[DetectionResult]: """Plan at most one lifecycle event for a staleness scan tick.""" if lifecycle_state is None: @@ -95,7 +89,10 @@ def _fire(result: DetectionResult, base_payload: dict[str, Any]) -> None: def detect_from_telemetry( run_id: str, vehicle_id: str, leaf: str, data: dict[str, Any] ) -> None: - lifecycle_state = r.hget(f"run:{run_id}", "run_lifecycle_state") + """Evaluate telemetry detectors for one message and queue any fired lifecycle events.""" + # r has decode_responses=True, so hget really returns str | None; cast narrows + # away the Awaitable branch that redis-py's shared sync/async stub attaches. + lifecycle_state = cast("str | None", r.hget(f"run:{run_id}", "run_lifecycle_state")) if not lifecycle_state: return @@ -111,7 +108,7 @@ def detect_from_telemetry( def detect_from_scan(run_id: str, staleness_s: float, raw_last_seen: str) -> int: """Evaluate periodic detectors for one run; returns number of events fired.""" - lifecycle_state = r.hget(f"run:{run_id}", "run_lifecycle_state") + lifecycle_state = cast("str | None", r.hget(f"run:{run_id}", "run_lifecycle_state")) base_payload = { "run_id": run_id, "last_seen_at": raw_last_seen, diff --git a/backend/runs/domain/detection/lifecycle_detectors.py b/backend/runs/domain/detection/lifecycle_detectors.py index 4eaa8f2..62fc335 100644 --- a/backend/runs/domain/detection/lifecycle_detectors.py +++ b/backend/runs/domain/detection/lifecycle_detectors.py @@ -25,6 +25,7 @@ class RunTrackingStartedDetector: def detect( self, run_state: str, leaf: str, data: dict[str, Any], payload: dict[str, Any] ) -> DetectionResult | None: + """Fire RUN_TRACKING_STARTED when a CONFIRMED run receives any telemetry.""" if run_state == RunLifecycleStates.CONFIRMED.value: return DetectionResult(self.fsm, RunLifecycleEvents.RUN_TRACKING_STARTED) return None @@ -38,6 +39,7 @@ class RunStartedDetector: def detect( self, run_state: str, leaf: str, data: dict[str, Any], payload: dict[str, Any] ) -> DetectionResult | None: + """Fire RUN_STARTED when a TRACKING run's position shows it moving faster than MIN_MOVING_SPEED.""" if run_state == RunLifecycleStates.TRACKING.value and leaf == "position": if float(data.get("speed", 0) or 0) > MIN_MOVING_SPEED: return DetectionResult(self.fsm, RunLifecycleEvents.RUN_STARTED) @@ -52,6 +54,7 @@ class RunTrackingRestoredDetector: def detect( self, run_state: str, leaf: str, data: dict[str, Any], payload: dict[str, Any] ) -> DetectionResult | None: + """Fire RUN_TRACKING_RESTORED when a NO_SIGNAL run receives any telemetry.""" if run_state == RunLifecycleStates.NO_SIGNAL.value: return DetectionResult(self.fsm, RunLifecycleEvents.RUN_TRACKING_RESTORED) return None @@ -69,6 +72,7 @@ class RunCompletedDetector: def detect( self, run_state: str, leaf: str, data: dict[str, Any], payload: dict[str, Any] ) -> DetectionResult | None: + """Fire RUN_COMPLETED when an IN_PROGRESS run reports STOPPED_AT with a stop_id.""" if run_state == RunLifecycleStates.IN_PROGRESS.value and leaf == "progression": stop_id = data.get("stop_id") if data.get("current_status") == "STOPPED_AT" and stop_id: @@ -79,8 +83,8 @@ def detect( class RunInterruptedDetector: - pass + """Placeholder — not registered in `registry.TELEMETRY_DETECTORS`; interruption is triggered externally via the RUN_INTERRUPTED command, not detected from telemetry.""" class RunShortTurnedDetector: - pass + """Placeholder — not registered in `registry.TELEMETRY_DETECTORS`; short-turning is triggered externally via the RUN_SHORT_TURNED command, not detected from telemetry.""" diff --git a/backend/runs/domain/detection/periodic_detectors.py b/backend/runs/domain/detection/periodic_detectors.py index f96cc99..aa6c876 100644 --- a/backend/runs/domain/detection/periodic_detectors.py +++ b/backend/runs/domain/detection/periodic_detectors.py @@ -24,6 +24,7 @@ class RunTrackingLostDetector: def detect( self, run_state: str, staleness_s: float, payload: dict[str, Any] ) -> DetectionResult | None: + """Fire RUN_TRACKING_LOST when an IN_PROGRESS run's staleness falls in the grace-to-expiry window.""" if ( run_state == RunLifecycleStates.IN_PROGRESS.value and TELEMETRY_GRACE_S < staleness_s <= TELEMETRY_EXPIRY_S @@ -42,6 +43,7 @@ class RunTrackingExpiredDetector: def detect( self, run_state: str, staleness_s: float, payload: dict[str, Any] ) -> DetectionResult | None: + """Fire RUN_TRACKING_EXPIRED when a NO_SIGNAL run's staleness exceeds the expiry window.""" if ( run_state == RunLifecycleStates.NO_SIGNAL.value and staleness_s > TELEMETRY_EXPIRY_S diff --git a/backend/runs/domain/detection/tests/test_dispatch_impure.py b/backend/runs/domain/detection/tests/test_dispatch_impure.py new file mode 100644 index 0000000..3bcc631 --- /dev/null +++ b/backend/runs/domain/detection/tests/test_dispatch_impure.py @@ -0,0 +1,105 @@ +"""Regression coverage for the impure dispatch wrapper's state gate. + +Detectors are pure functions of (state, telemetry) and already refuse to +recognize an event that the run's current lifecycle state makes invalid +(see ``test_detectors.py``). This module checks the same guarantee one layer +up, at the impure wrapper that actually reads Redis and enqueues the +lifecycle Celery task — i.e. that a run which already reached an event's +target state does not get that event re-dispatched by further telemetry or +scan ticks. This is the exact "flood of ERROR logs" symptom the gate closes: +without it, ``run_lifecycle_event`` would repeatedly reject the event with +``RunLifecycleError`` for a state the run has already left behind. + +Redis is mocked (module-level ``dispatch.r``); ``run_lifecycle_event.delay`` +is mocked so no Celery broker/Django DB access is needed. +""" + +from unittest.mock import MagicMock, patch + +import runs.domain.detection.dispatch as dispatch_module +from runs.domain.detection.dispatch import detect_from_scan, detect_from_telemetry +from runs.domain.lifecycle.states import RunLifecycleStates + +RUN_ID = "run-1" +VEHICLE_ID = "veh-1" + + +def _fake_redis(lifecycle_state: str) -> MagicMock: + r = MagicMock() + r.hget.return_value = lifecycle_state + return r + + +def test_run_started_not_redispatched_when_already_in_progress(monkeypatch): + """A moving-speed position update for a run already IN_PROGRESS must not + re-fire run_started (the reported defect).""" + monkeypatch.setattr( + dispatch_module, "r", _fake_redis(RunLifecycleStates.IN_PROGRESS.value) + ) + + with patch("realtime_engine.tasks.run_lifecycle_event.delay") as mock_delay: + detect_from_telemetry(RUN_ID, VEHICLE_ID, "position", {"speed": 12.0}) + + mock_delay.assert_not_called() + + +def test_run_started_still_fires_from_tracking(monkeypatch): + """Sanity check: the legitimate predecessor state still fires — the gate + above isn't vacuously true.""" + monkeypatch.setattr( + dispatch_module, "r", _fake_redis(RunLifecycleStates.TRACKING.value) + ) + + with patch("realtime_engine.tasks.run_lifecycle_event.delay") as mock_delay: + detect_from_telemetry(RUN_ID, VEHICLE_ID, "position", {"speed": 12.0}) + + mock_delay.assert_called_once() + args, _ = mock_delay.call_args + assert args[0] == "run_started" + + +def test_run_tracking_started_not_redispatched_when_already_tracking(monkeypatch): + """Any telemetry for a run already TRACKING must not re-fire + run_tracking_started.""" + monkeypatch.setattr( + dispatch_module, "r", _fake_redis(RunLifecycleStates.TRACKING.value) + ) + + with patch("realtime_engine.tasks.run_lifecycle_event.delay") as mock_delay: + detect_from_telemetry(RUN_ID, VEHICLE_ID, "occupancy", {}) + + mock_delay.assert_not_called() + + +def test_run_completed_not_redispatched_when_already_completed(monkeypatch): + """A STOPPED_AT-at-terminal progression update for a run already + COMPLETED must not re-fire run_completed.""" + monkeypatch.setattr( + dispatch_module, "r", _fake_redis(RunLifecycleStates.COMPLETED.value) + ) + + with patch("realtime_engine.tasks.run_lifecycle_event.delay") as mock_delay: + detect_from_telemetry( + RUN_ID, + VEHICLE_ID, + "progression", + {"current_status": "STOPPED_AT", "stop_id": "TERM-1"}, + ) + + mock_delay.assert_not_called() + + +def test_scan_no_periodic_event_once_run_is_terminal(monkeypatch): + """A stray staleness-scan tick for a run that already reached a terminal + state (e.g. CANCELLED after expiry) must not fire any periodic event.""" + monkeypatch.setattr( + dispatch_module, "r", _fake_redis(RunLifecycleStates.CANCELLED.value) + ) + + with patch("realtime_engine.tasks.run_lifecycle_event.delay") as mock_delay: + fired = detect_from_scan( + RUN_ID, staleness_s=9999, raw_last_seen="2026-01-01T00:00:00+00:00" + ) + + assert fired == 0 + mock_delay.assert_not_called() diff --git a/backend/runs/domain/lifecycle/__init__.py b/backend/runs/domain/lifecycle/__init__.py index 88f3cf1..43be934 100644 --- a/backend/runs/domain/lifecycle/__init__.py +++ b/backend/runs/domain/lifecycle/__init__.py @@ -1,4 +1,12 @@ +"""Table-driven FSM for the run lifecycle: states, events, guards, actions, and transitions. + +Submodules are lazy-loaded via module `__getattr__` below so importing this +package does not eagerly pull in the Redis/Django-touching `actions` and +`guards` modules unless a caller actually needs them. +""" + from importlib import import_module +from typing import Any from .states import RunLifecycleStates, choices from .events import RunLifecycleEvents @@ -11,21 +19,25 @@ "RunLifecycleGuards", "Transition", "TRANSITIONS", + "target_state_for_event", ] -def __getattr__(name: str): +def __getattr__(name: str) -> Any: + """Lazily resolve `RunLifecycleActions`/`RunLifecycleGuards`/`Transition`/`TRANSITIONS`/`target_state_for_event` from their owning submodule.""" if name in { "RunLifecycleActions", "RunLifecycleGuards", "Transition", "TRANSITIONS", + "target_state_for_event", }: module_name = { "RunLifecycleActions": "actions", "RunLifecycleGuards": "guards", "Transition": "transitions", "TRANSITIONS": "transitions", + "target_state_for_event": "transitions", }[name] module = import_module(f"{__name__}.{module_name}") return getattr(module, name) @@ -33,4 +45,5 @@ def __getattr__(name: str): def __dir__() -> list[str]: + """Include the lazily-loaded names in `dir()` output for REPL/IDE discoverability.""" return sorted(set(globals()) | set(__all__)) diff --git a/backend/runs/domain/lifecycle/actions.py b/backend/runs/domain/lifecycle/actions.py index 37a77fc..76316ac 100644 --- a/backend/runs/domain/lifecycle/actions.py +++ b/backend/runs/domain/lifecycle/actions.py @@ -1,12 +1,19 @@ +"""Action functions executed by successful run lifecycle transitions — Redis state mutation and cleanup.""" + from typing import Any, TYPE_CHECKING from runs.models import Run -import redis +from databus.redis_client import create_redis_client from runs.domain.telemetry import keys, trip if TYPE_CHECKING: from runs.domain.lifecycle import Transition -r = redis.Redis(host="state", port=6379, db=0) +# decode_responses=False preserves this module's prior hardcoded +# `redis.Redis(host="state", port=6379, db=0)` default — this module never +# reads back string values (only writes via hset/sadd/srem/delete), so the +# bytes-vs-str distinction is behaviorally inert here, but kept explicit and +# consistent with guards.py, which does depend on raw bytes. +r = create_redis_client(decode_responses=False) class RunLifecycleActions: @@ -108,6 +115,7 @@ def sync_lifecycle_state( def add_to_tracking_set( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Add the run to the `runs:tracking` Redis set.""" r.sadd("runs:tracking", str(run.id)) return True @@ -115,6 +123,7 @@ def add_to_tracking_set( def remove_from_tracking_set( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Remove the run from the `runs:tracking` Redis set.""" r.srem("runs:tracking", str(run.id)) return True @@ -122,6 +131,7 @@ def remove_from_tracking_set( def add_to_in_progress_set( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Add the run to the `runs:in_progress` Redis set.""" r.sadd("runs:in_progress", str(run.id)) return True @@ -129,6 +139,7 @@ def add_to_in_progress_set( def remove_from_in_progress_set( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Remove the run from the `runs:in_progress` Redis set.""" r.srem("runs:in_progress", str(run.id)) return True @@ -136,6 +147,7 @@ def remove_from_in_progress_set( def remove_from_system_state( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Delete the run's Redis hash and remove it from both the tracking and in-progress sets.""" pipe = r.pipeline() pipe.delete(f"run:{run.id}") pipe.srem("runs:tracking", str(run.id)) diff --git a/backend/runs/domain/lifecycle/events.py b/backend/runs/domain/lifecycle/events.py index 2534eb5..ad54505 100644 --- a/backend/runs/domain/lifecycle/events.py +++ b/backend/runs/domain/lifecycle/events.py @@ -1,3 +1,5 @@ +"""Enumeration of events driving run lifecycle transitions — REST commands and telemetry-detected facts.""" + from enum import Enum diff --git a/backend/runs/domain/lifecycle/guards.py b/backend/runs/domain/lifecycle/guards.py index 0adcc22..db8e10c 100644 --- a/backend/runs/domain/lifecycle/guards.py +++ b/backend/runs/domain/lifecycle/guards.py @@ -1,15 +1,30 @@ -from typing import Any, TYPE_CHECKING +"""Guard functions gating run lifecycle transitions on GTFS validity, resource availability, and telemetry freshness.""" + +from typing import Any, TYPE_CHECKING, cast from datetime import datetime, timezone from django.utils.timezone import now from runs.models import Run from runs.services.exceptions import RunLifecycleError from runs.domain.detection.thresholds import TELEMETRY_GRACE_S, TELEMETRY_EXPIRY_S -import redis +from databus.redis_client import create_redis_client if TYPE_CHECKING: from runs.domain.lifecycle import Transition -r = redis.Redis(host="state", port=6379, db=0) +# decode_responses=False preserves this module's prior hardcoded +# `redis.Redis(host="state", port=6379, db=0)` default — `_get_bytes` below +# relies on raw bytes (`.decode()` is called explicitly by callers). +r = create_redis_client(decode_responses=False) + + +def _get_bytes(key: str) -> bytes | None: + """Read a Redis string value as bytes. + + Narrows away the `Awaitable[...]` branch that redis-py's stubs attach to + every command (shared between the sync and async client mixins) — `r` here + is always the synchronous client, so the result is never a coroutine. + """ + return cast("bytes | None", r.get(key)) def _parse_last_seen(payload: dict[str, Any]) -> datetime | None: @@ -28,11 +43,14 @@ def _parse_last_seen(payload: dict[str, Any]) -> datetime | None: class RunLifecycleGuards: + """Namespace of guard functions; each returns a bool verdict or raises RunLifecycleError with field-level detail.""" + @staticmethod def is_gtfs_valid( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: - from feed.models import Feed, Route, Trip, Shape + """Validate the run's GTFS fields against the current feed, raising RunLifecycleError with per-field detail on any mismatch.""" + from feed.models import Feed, Route, Trip route_id = payload.get("route_id") trip_id = payload.get("trip_id") @@ -43,7 +61,10 @@ def is_gtfs_valid( errors: dict[str, str] = {} direction_id_int: int | None try: - direction_id_int = int(direction_id) + # `direction_id is not None` narrows `Any | None` to `Any` for mypy; + # int(None) would otherwise be flagged even though it is already + # caught by the except clause below (no behavior change). + direction_id_int = int(direction_id) if direction_id is not None else None except (TypeError, ValueError): direction_id_int = None @@ -101,12 +122,13 @@ def is_gtfs_valid( def is_vehicle_available( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Check that the run's vehicle is not already claimed by a different active run in Redis.""" vehicle_id = payload.get("vehicle_id") or ( run.vehicle.values_list("id", flat=True).first() ) if not vehicle_id: return True - existing = r.get(f"vehicle:{vehicle_id}:current_run") + existing = _get_bytes(f"vehicle:{vehicle_id}:current_run") if existing and existing.decode() != str(run.id): raise RunLifecycleError( { @@ -119,10 +141,11 @@ def is_vehicle_available( def is_trip_available( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Check that the run's trip_id is not already claimed by a different active run in Redis.""" trip_id = payload.get("trip_id") or run.trip_id if not trip_id: return True - existing = r.get(f"trip:{trip_id}:current_run") + existing = _get_bytes(f"trip:{trip_id}:current_run") if existing and existing.decode() != str(run.id): raise RunLifecycleError( { @@ -135,12 +158,13 @@ def is_trip_available( def is_operator_available( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Check that the run's operator is not already claimed by a different active run in Redis.""" operator_id = payload.get("operator_id") or ( run.operator.values_list("id", flat=True).first() ) if not operator_id: return True - existing = r.get(f"operator:{operator_id}:current_run") + existing = _get_bytes(f"operator:{operator_id}:current_run") if existing and existing.decode() != str(run.id): raise RunLifecycleError( { @@ -153,18 +177,48 @@ def is_operator_available( def is_vehicle_tracked( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Return whether the run is currently a member of the `runs:tracking` Redis set.""" return bool(r.sismember("runs:tracking", str(run.id))) @staticmethod def is_run_validated( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Revalidate resource availability and the run's trip against the *current* feed before INITIALIZE_RUN. + + Closes the VALIDATE_RUN -> INITIALIZE_RUN race window: re-runs the + same vehicle/trip/operator availability checks performed at + VALIDATE_RUN (each raises only when the resource is claimed by a + *different* run, so a re-fire where this run already holds its own + claims still passes), then re-confirms the run's trip still exists + in whichever feed is current *now* -- the successor of the old + validate_schedule check, covering the nightly build_schedule feed + rotation that may have happened between validation and + initialization. Raises RunLifecycleError with field-keyed detail on + any failure. + """ + from feed.models import Feed, Trip + + RunLifecycleGuards.is_vehicle_available(run, transition, payload) + RunLifecycleGuards.is_trip_available(run, transition, payload) + RunLifecycleGuards.is_operator_available(run, transition, payload) + + trip_id = payload.get("trip_id") or run.trip_id + feed = Feed.objects.filter(is_current=True).first() + if not feed: + raise RunLifecycleError({"feed": "No current GTFS feed found"}) + if not trip_id or not Trip.objects.filter(feed=feed, trip_id=trip_id).exists(): + raise RunLifecycleError( + {"trip_id": f"trip_id '{trip_id}' not found in current GTFS feed"} + ) + return True @staticmethod def is_vehicle_moving( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Return whether the payload's reported speed exceeds the moving threshold (0.5 m/s).""" return float(payload.get("speed", 0)) > 0.5 # ------------------------------------------------------------------ @@ -175,6 +229,7 @@ def is_vehicle_moving( def is_cancellation_authorized( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Check that the requesting actor_role is permitted to cancel a run, raising RunLifecycleError otherwise.""" actor_role = payload.get("actor_role", "") if actor_role == "system": return True @@ -190,6 +245,7 @@ def is_cancellation_authorized( def is_interruption_authorized( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Check that the requesting actor_role is permitted to interrupt a run, raising RunLifecycleError otherwise.""" actor_role = payload.get("actor_role", "") if actor_role in ("system", "dispatcher", "operator"): return True @@ -203,6 +259,7 @@ def is_interruption_authorized( def is_short_turn_authorized( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Check that the requesting actor_role is permitted to short-turn a run, raising RunLifecycleError otherwise.""" actor_role = payload.get("actor_role", "") if actor_role in ("dispatcher", "system"): return True @@ -216,6 +273,7 @@ def is_short_turn_authorized( def is_short_turn_geometrically_valid( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Verify the requested short-turn stop belongs to the run's trip and is not the terminal stop, raising RunLifecycleError otherwise.""" from feed.models import Feed, StopTime short_turn_stop_id = payload.get("short_turn_stop_id") @@ -240,7 +298,8 @@ def is_short_turn_geometrically_valid( {"trip_id": f"No stop times found for trip '{trip_id}'"} ) - terminal = stop_times.last() + # `.exists()` above already guarantees `.last()` is non-None here. + terminal = cast(StopTime, stop_times.last()) stop_ids = list(stop_times.values_list("stop_id", flat=True)) if short_turn_stop_id not in stop_ids: @@ -263,6 +322,7 @@ def is_short_turn_geometrically_valid( def is_telemetry_stale( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Return whether the run's last-seen telemetry is older than the staleness grace period.""" last_seen = _parse_last_seen(payload) if last_seen is None: last_seen = run.last_event_at @@ -275,6 +335,7 @@ def is_telemetry_stale( def is_telemetry_fresh( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Return whether the run's last-seen telemetry is within the staleness grace period.""" last_seen = _parse_last_seen(payload) if last_seen is None: last_seen = run.last_event_at @@ -287,6 +348,7 @@ def is_telemetry_fresh( def is_telemetry_grace_period_exceeded( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Return whether the run's last-seen telemetry is older than the expiry window.""" last_seen = _parse_last_seen(payload) if last_seen is None: last_seen = run.last_event_at @@ -303,6 +365,7 @@ def is_telemetry_grace_period_exceeded( def is_at_terminal_stop( run: Run, transition: "Transition", payload: dict[str, Any] ) -> bool: + """Verify the reported stop_id is the trip's terminal stop, raising RunLifecycleError otherwise.""" from feed.models import Feed, StopTime stop_id = payload.get("stop_id") diff --git a/backend/runs/domain/lifecycle/states.py b/backend/runs/domain/lifecycle/states.py index c3c8f36..6d7c616 100644 --- a/backend/runs/domain/lifecycle/states.py +++ b/backend/runs/domain/lifecycle/states.py @@ -1,3 +1,5 @@ +"""Enumeration of run lifecycle states and their Django model choices.""" + from enum import Enum @@ -19,5 +21,6 @@ class RunLifecycleStates(str, Enum): SHORT_TURNED = "Short Turned" -def choices(): +def choices() -> list[tuple[str, str]]: + """Return the (value, name) choices list for the `Run.run_lifecycle_state` model field.""" return [(status.value, status.name) for status in RunLifecycleStates] diff --git a/backend/runs/domain/lifecycle/tests/test_guards_is_run_validated.py b/backend/runs/domain/lifecycle/tests/test_guards_is_run_validated.py new file mode 100644 index 0000000..6c9d3a5 --- /dev/null +++ b/backend/runs/domain/lifecycle/tests/test_guards_is_run_validated.py @@ -0,0 +1,200 @@ +"""Unit tests for RunLifecycleGuards.is_run_validated. + +The VALIDATE_RUN -> INITIALIZE_RUN revalidation guard: re-runs the resource +availability checks and re-confirms the run's trip against whichever feed is +current *now*, closing the race window between validation and +initialization (including the nightly build_schedule feed rotation). + +Real Postgres is used for the Feed/Trip/Run rows (guards.py already needs +Django DB access for these lookups); the module-level Redis client is +swapped for an in-memory fake since only `.get` is exercised by the guards +under test. +""" + +from datetime import date + +import pytest +from django.contrib.auth.models import User + +from feed.models import Agency, Calendar, Feed, Route, Trip +from operations.models import Operator, Vehicle +from runs.domain.lifecycle import guards as guards_module +from runs.domain.lifecycle.events import RunLifecycleEvents +from runs.domain.lifecycle.guards import RunLifecycleGuards +from runs.domain.lifecycle.states import RunLifecycleStates +from runs.domain.lifecycle.transitions import Transition +from runs.models import Run +from runs.services.exceptions import RunLifecycleError + + +class _FakeRedis: + """Stand-in for the module-level Redis client: only `.get` is used by the guards under test.""" + + def __init__(self) -> None: + self.store: dict[str, str] = {} + + def get(self, key: str) -> bytes | None: + """Return the stored value for `key` as bytes, or None if absent (mirrors redis-py's `.get`).""" + value = self.store.get(key) + return value.encode() if value is not None else None + + +@pytest.fixture +def fake_redis(monkeypatch: pytest.MonkeyPatch) -> _FakeRedis: + """Swap the guards module's real Redis client for an in-memory fake.""" + fake = _FakeRedis() + monkeypatch.setattr(guards_module, "r", fake) + return fake + + +@pytest.fixture +def feed(db) -> Feed: + """Create and return a Feed marked as the current GTFS feed.""" + return Feed.objects.create(feed_id="feed-1", is_current=True) + + +@pytest.fixture +def vehicle(db) -> Vehicle: + """Create a Vehicle.""" + return Vehicle.objects.create(id="veh-1", license_plate="ABC-123") + + +@pytest.fixture +def operator(db) -> Operator: + """Create an Operator backed by a fresh auth User.""" + user = User.objects.create_user(username="op-test", password="pw") + return Operator.objects.create(id="op-1", user=user) + + +@pytest.fixture +def calendar(feed: Feed) -> Calendar: + """Create a Calendar (service) valid all of 2026 in `feed`.""" + return Calendar.objects.create( + feed=feed, + service_id="svc-1", + monday=True, + tuesday=True, + wednesday=True, + thursday=True, + friday=True, + saturday=False, + sunday=False, + start_date=date(2026, 1, 1), + end_date=date(2026, 12, 31), + ) + + +@pytest.fixture +def route(feed: Feed) -> Route: + """Create a Route in `feed`, with its required Agency.""" + agency = Agency.objects.create( + feed=feed, + agency_id="ag-1", + agency_name="Test Agency", + agency_url="https://example.com", + agency_timezone="America/Costa_Rica", + ) + return Route.objects.create(feed=feed, route_id="r-1", agency_id=agency.agency_id) + + +@pytest.fixture +def trip(feed: Feed, route: Route, calendar: Calendar) -> Trip: + """Create a Trip in `feed` for `route`/`calendar`.""" + return Trip.objects.create( + feed=feed, + route_id=route.route_id, + service_id=calendar.service_id, + trip_id="t-1", + direction_id=0, + shape_id="s-1", + wheelchair_accessible=0, + bikes_allowed=0, + ) + + +@pytest.fixture +def run(vehicle: Vehicle, operator: Operator, trip: Trip) -> Run: + """Create a VALIDATED Run for `trip`, claimed by `vehicle`/`operator`.""" + run = Run.objects.create( + trip_id=trip.trip_id, + route_id=trip.route_id, + direction_id=trip.direction_id, + shape_id=trip.shape_id, + start_date=date.today(), + run_lifecycle_state=RunLifecycleStates.VALIDATED, + ) + run.vehicle.set([vehicle]) + run.operator.set([operator]) + return run + + +def _transition() -> Transition: + return Transition( + from_state=RunLifecycleStates.VALIDATED, + event=RunLifecycleEvents.INITIALIZE_RUN, + to_state=RunLifecycleStates.INITIALIZED, + guards=[RunLifecycleGuards.is_run_validated], + actions=[], + ) + + +def test_passes_when_resources_free(fake_redis: _FakeRedis, run: Run) -> None: + """No Redis claims at all: every availability check and the trip lookup pass.""" + assert RunLifecycleGuards.is_run_validated(run, _transition(), {}) is True + + +def test_passes_when_claims_belong_to_this_run( + fake_redis: _FakeRedis, run: Run, vehicle: Vehicle, operator: Operator, trip: Trip +) -> None: + """A re-fire where this run already holds its own vehicle/trip/operator claims still passes.""" + fake_redis.store[f"vehicle:{vehicle.id}:current_run"] = str(run.id) + fake_redis.store[f"trip:{trip.trip_id}:current_run"] = str(run.id) + fake_redis.store[f"operator:{operator.id}:current_run"] = str(run.id) + + assert RunLifecycleGuards.is_run_validated(run, _transition(), {}) is True + + +def test_raises_when_vehicle_claimed_by_another_run( + fake_redis: _FakeRedis, run: Run, vehicle: Vehicle +) -> None: + """A vehicle claimed by a different run's ID raises with vehicle_id detail.""" + fake_redis.store[f"vehicle:{vehicle.id}:current_run"] = "some-other-run-id" + + with pytest.raises(RunLifecycleError) as exc_info: + RunLifecycleGuards.is_run_validated(run, _transition(), {}) + assert "vehicle_id" in exc_info.value.errors + + +def test_raises_when_trip_claimed_by_another_run( + fake_redis: _FakeRedis, run: Run, trip: Trip +) -> None: + """A trip claimed by a different run's ID raises with trip_id detail.""" + fake_redis.store[f"trip:{trip.trip_id}:current_run"] = "some-other-run-id" + + with pytest.raises(RunLifecycleError) as exc_info: + RunLifecycleGuards.is_run_validated(run, _transition(), {}) + assert "trip_id" in exc_info.value.errors + + +def test_raises_when_operator_claimed_by_another_run( + fake_redis: _FakeRedis, run: Run, operator: Operator +) -> None: + """An operator claimed by a different run's ID raises with operator_id detail.""" + fake_redis.store[f"operator:{operator.id}:current_run"] = "some-other-run-id" + + with pytest.raises(RunLifecycleError) as exc_info: + RunLifecycleGuards.is_run_validated(run, _transition(), {}) + assert "operator_id" in exc_info.value.errors + + +def test_raises_when_trip_absent_from_current_feed( + fake_redis: _FakeRedis, run: Run, trip: Trip, feed: Feed +) -> None: + """If the feed rotated (nightly build_schedule) and the run's trip isn't in the new current feed, raise.""" + feed.is_current = False + feed.save() + Feed.objects.create(feed_id="feed-2", is_current=True) + + with pytest.raises(RunLifecycleError) as exc_info: + RunLifecycleGuards.is_run_validated(run, _transition(), {}) + assert "trip_id" in exc_info.value.errors diff --git a/backend/runs/domain/lifecycle/tests/test_transitions.py b/backend/runs/domain/lifecycle/tests/test_transitions.py new file mode 100644 index 0000000..f8a5b5b --- /dev/null +++ b/backend/runs/domain/lifecycle/tests/test_transitions.py @@ -0,0 +1,46 @@ +"""Unit tests for ``target_state_for_event``. + +Used by ``realtime_engine.tasks.run_lifecycle_event`` to recognize an +idempotent event re-fire (the run already reached the event's target state +via a race-winning duplicate detection) versus a genuinely invalid +transition. Pure function over the ``TRANSITIONS`` table — no Redis/DB. +""" + +import pytest + +from runs.domain.lifecycle.events import RunLifecycleEvents +from runs.domain.lifecycle.states import RunLifecycleStates +from runs.domain.lifecycle.transitions import target_state_for_event + + +@pytest.mark.parametrize( + "event,expected", + [ + (RunLifecycleEvents.VALIDATE_RUN, RunLifecycleStates.VALIDATED), + (RunLifecycleEvents.INITIALIZE_RUN, RunLifecycleStates.INITIALIZED), + ( + RunLifecycleEvents.RUN_CONFIRMED_BY_OPERATOR, + RunLifecycleStates.CONFIRMED, + ), + (RunLifecycleEvents.RUN_TRACKING_STARTED, RunLifecycleStates.TRACKING), + (RunLifecycleEvents.RUN_STARTED, RunLifecycleStates.IN_PROGRESS), + (RunLifecycleEvents.RUN_COMPLETED, RunLifecycleStates.COMPLETED), + (RunLifecycleEvents.RUN_TRACKING_RESTORED, RunLifecycleStates.IN_PROGRESS), + (RunLifecycleEvents.RUN_TRACKING_LOST, RunLifecycleStates.NO_SIGNAL), + (RunLifecycleEvents.RUN_TRACKING_EXPIRED, RunLifecycleStates.CANCELLED), + (RunLifecycleEvents.RUN_INTERRUPTED, RunLifecycleStates.INTERRUPTED), + (RunLifecycleEvents.RUN_SHORT_TURNED, RunLifecycleStates.SHORT_TURNED), + # Appears from three different from_states but always lands CANCELLED + # — still unambiguous. + (RunLifecycleEvents.RUN_REJECTED, RunLifecycleStates.CANCELLED), + (RunLifecycleEvents.CANCEL_RUN, RunLifecycleStates.CANCELLED), + ], +) +def test_target_state_for_event_unambiguous(event, expected): + assert target_state_for_event(event) == expected + + +def test_target_state_for_event_returns_none_when_event_has_no_transitions(): + # RUN_REQUESTED never appears in TRANSITIONS — REQUESTED is the model's + # own default, not reached via a transition. + assert target_state_for_event(RunLifecycleEvents.RUN_REQUESTED) is None diff --git a/backend/runs/domain/lifecycle/transitions.py b/backend/runs/domain/lifecycle/transitions.py index 535cfe0..12fbe11 100644 --- a/backend/runs/domain/lifecycle/transitions.py +++ b/backend/runs/domain/lifecycle/transitions.py @@ -1,5 +1,7 @@ +"""Static transition table mapping (state, event) pairs to their guards, actions, and resulting state.""" + from dataclasses import dataclass -from typing import Callable, List +from typing import Callable from .actions import RunLifecycleActions from .guards import RunLifecycleGuards @@ -14,8 +16,8 @@ class Transition: from_state: RunLifecycleStates event: RunLifecycleEvents to_state: RunLifecycleStates - guards: List[Callable] - actions: List[Callable] + guards: list[Callable] + actions: list[Callable] TRANSITIONS = [ @@ -240,3 +242,18 @@ class Transition: ], ), ] + + +def target_state_for_event(event: RunLifecycleEvents) -> RunLifecycleStates | None: + """The state ``event`` deterministically leads to, if unambiguous. + + Used to tell an idempotent re-fire (the event's dispatch lost a race and + the run already reached this event's target state) apart from a genuine + invalid transition. Returns ``None`` when ``event`` has no transitions, or + maps to more than one distinct ``to_state`` — callers should not guess in + that case. + """ + to_states = {t.to_state for t in TRANSITIONS if t.event == event} + if len(to_states) == 1: + return next(iter(to_states)) + return None diff --git a/backend/runs/domain/progress/__init__.py b/backend/runs/domain/progress/__init__.py deleted file mode 100644 index 408ff62..0000000 --- a/backend/runs/domain/progress/__init__.py +++ /dev/null @@ -1,36 +0,0 @@ -from importlib import import_module - -from .states import RunProgressStates, choices -from .events import RunProgressEvents - -__all__ = [ - "RunProgressStates", - "choices", - "RunProgressEvents", - "RunProgressActions", - "RunProgressGuards", - "Transition", - "TRANSITIONS", -] - - -def __getattr__(name: str): - if name in { - "RunProgressActions", - "RunProgressGuards", - "Transition", - "TRANSITIONS", - }: - module_name = { - "RunProgressActions": "actions", - "RunProgressGuards": "guards", - "Transition": "transitions", - "TRANSITIONS": "transitions", - }[name] - module = import_module(f"{__name__}.{module_name}") - return getattr(module, name) - raise AttributeError(f"module {__name__!r} has no attribute {name!r}") - - -def __dir__() -> list[str]: - return sorted(set(globals()) | set(__all__)) diff --git a/backend/runs/domain/progress/actions.py b/backend/runs/domain/progress/actions.py deleted file mode 100644 index 3c50031..0000000 --- a/backend/runs/domain/progress/actions.py +++ /dev/null @@ -1,158 +0,0 @@ -from typing import Any, TYPE_CHECKING -from runs.models import Run -import redis - -if TYPE_CHECKING: - from runs.domain.lifecycle import Transition - -r = redis.Redis(host="state", port=6379, db=0) - - -class RunProgressActions: - """ - Ordering convention: every transition should list persist_lifecycle_event - first so the audit record is written before any external side-effects. State - is saved last via update_run_lifecycle_state so the Run row always reflects - the final outcome of a fully-executed transition. - """ - - @staticmethod - def update_system_state( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - """Write run metadata to run:{run.id} hash and claim vehicle/operator/trip keys.""" - vehicle_id = ( - payload.get("vehicle_id") - or run.vehicle.values_list("id", flat=True).first() - ) - operator_id = ( - payload.get("operator_id") - or run.operator.values_list("id", flat=True).first() - ) - run_key = f"run:{run.id}" - mapping: dict[str, str] = { - "run_id": str(run.id), - "route_id": run.route_id or "", - "trip_id": run.trip_id or "", - "direction_id": "" if run.direction_id is None else str(run.direction_id), - "shape_id": run.shape_id or "", - "schedule_relationship": run.schedule_relationship or "", - # Use transition.to_state because the action fires before _update_run_lifecycle_state - "run_lifecycle_state": transition.to_state.value, - } - if vehicle_id: - mapping["vehicle"] = str(vehicle_id) - if operator_id: - mapping["operator"] = str(operator_id) - if run.start_date: - mapping["start_date"] = run.start_date.strftime("%Y%m%d") - if run.start_time: - total_seconds = int(run.start_time.total_seconds()) - h, rem = divmod(total_seconds, 3600) - m, s = divmod(rem, 60) - mapping["start_time"] = f"{h:02d}:{m:02d}:{s:02d}" - - pipe = r.pipeline() - pipe.hset(run_key, mapping=mapping) - - # Claim assignment keys so availability guards have a signal to read - if vehicle_id: - pipe.set(f"vehicle:{vehicle_id}:current_run", str(run.id)) - if operator_id: - pipe.set(f"operator:{operator_id}:current_run", str(run.id)) - if run.trip_id: - pipe.set(f"trip:{run.trip_id}:current_run", str(run.id)) - - # Write vehicle metadata so the GTFS-RT builders can populate VehicleDescriptor - if vehicle_id: - from operations.models import Vehicle as VehicleModel - - try: - v = VehicleModel.objects.get(id=vehicle_id) - vehicle_meta: dict[str, str] = { - "id": str(v.id), - "label": v.label or str(v.id), - } - if v.license_plate: - vehicle_meta["license_plate"] = v.license_plate - if v.wheelchair_accessible: - vehicle_meta["wheelchair_accessible"] = v.wheelchair_accessible - pipe.hset(f"vehicle:{vehicle_id}:metadata", mapping=vehicle_meta) - except Exception: - pass - - pipe.execute() - return True - - # ------------------------------------------------------------------ - # Redis set mutations - # ------------------------------------------------------------------ - - @staticmethod - def sync_lifecycle_state( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - """Keep the Redis run hash's run_lifecycle_state in sync with the DB transition.""" - r.hset(f"run:{run.id}", "run_lifecycle_state", transition.to_state.value) - return True - - @staticmethod - def add_to_tracking_set( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - r.sadd("runs:tracking", str(run.id)) - return True - - @staticmethod - def remove_from_tracking_set( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - r.srem("runs:tracking", str(run.id)) - return True - - @staticmethod - def add_to_in_progress_set( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - r.sadd("runs:in_progress", str(run.id)) - return True - - @staticmethod - def remove_from_in_progress_set( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - r.srem("runs:in_progress", str(run.id)) - return True - - @staticmethod - def remove_from_system_state( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - pipe = r.pipeline() - pipe.delete(f"run:{run.id}") - pipe.srem("runs:tracking", str(run.id)) - pipe.srem("runs:in_progress", str(run.id)) - pipe.execute() - return True - - # ------------------------------------------------------------------ - # Resource release - # ------------------------------------------------------------------ - - @staticmethod - def release_resources( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - """Free vehicle, operator, and trip assignment keys.""" - vehicle_id = run.vehicle.values_list("id", flat=True).first() - operator_id = run.operator.values_list("id", flat=True).first() - keys_to_delete = [] - if vehicle_id: - keys_to_delete.append(f"vehicle:{vehicle_id}:current_run") - if operator_id: - keys_to_delete.append(f"operator:{operator_id}:current_run") - if run.trip_id: - keys_to_delete.append(f"trip:{run.trip_id}:current_run") - if keys_to_delete: - r.delete(*keys_to_delete) - return True diff --git a/backend/runs/domain/progress/events.py b/backend/runs/domain/progress/events.py deleted file mode 100644 index 707a1f5..0000000 --- a/backend/runs/domain/progress/events.py +++ /dev/null @@ -1,24 +0,0 @@ -from enum import Enum - - -class RunProgressEvents(str, Enum): - """ - Defines all possible events that can trigger state transitions in the run lifecycle. - """ - - # Lifecycle progression events - RUN_REQUESTED = "run_requested" # initial: record creation puts run in REQUESTED - VALIDATE_RUN = "validate_run" - INITIALIZE_RUN = "initialize_run" - RUN_CONFIRMED_BY_OPERATOR = "run_confirmed_by_operator" - RUN_TRACKING_STARTED = "run_tracking_started" - RUN_STARTED = "run_started" - RUN_COMPLETED = "run_completed" - # Operational deviation events - RUN_REJECTED = "run_rejected" - CANCEL_RUN = "cancel_run" - RUN_INTERRUPTED = "run_interrupted" - RUN_SHORT_TURNED = "run_short_turned" - RUN_TRACKING_LOST = "run_tracking_lost" - RUN_TRACKING_RESTORED = "run_tracking_restored" - RUN_TRACKING_EXPIRED = "run_tracking_expired" diff --git a/backend/runs/domain/progress/guards.py b/backend/runs/domain/progress/guards.py deleted file mode 100644 index 5d57643..0000000 --- a/backend/runs/domain/progress/guards.py +++ /dev/null @@ -1,333 +0,0 @@ -from typing import Any, TYPE_CHECKING -from datetime import datetime, timezone -from django.utils.timezone import now -from runs.models import Run -from runs.services.exceptions import RunLifecycleError -import redis - -if TYPE_CHECKING: - from runs.domain.lifecycle import Transition - -r = redis.Redis(host="state", port=6379, db=0) - -TELEMETRY_GRACE_S = 60 -TELEMETRY_EXPIRY_S = 600 - - -def _parse_last_seen(payload: dict[str, Any]) -> datetime | None: - raw = payload.get("last_seen_at") - if raw is None: - return None - if isinstance(raw, datetime): - return raw - try: - dt = datetime.fromisoformat(str(raw)) - if dt.tzinfo is None: - dt = dt.replace(tzinfo=timezone.utc) - return dt - except (ValueError, TypeError): - return None - - -class RunProgressGuards: - @staticmethod - def is_gtfs_valid( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - from feed.models import Feed, Route, Trip, Shape - - route_id = payload.get("route_id") - trip_id = payload.get("trip_id") - direction_id = payload.get("direction_id") - shape_id = payload.get("shape_id") - schedule_relationship = payload.get("schedule_relationship") - - errors: dict[str, str] = {} - - if not route_id: - errors["route_id"] = "route_id is required" - if not trip_id: - errors["trip_id"] = "trip_id is required" - if direction_id not in [0, 1]: - errors["direction_id"] = ( - f"direction_id must be 0 or 1, got '{direction_id}'" - ) - if not shape_id: - errors["shape_id"] = "shape_id is required" - if not schedule_relationship: - errors["schedule_relationship"] = "schedule_relationship is required" - elif schedule_relationship != "SCHEDULED": - errors["schedule_relationship"] = ( - f"schedule_relationship '{schedule_relationship}' is not valid" - ) - - if errors: - raise RunLifecycleError(errors) - - feed = Feed.objects.filter(is_current=True).first() - if not feed: - raise RunLifecycleError({"feed": "No current GTFS feed found"}) - - lookup_errors: dict[str, str] = {} - - if not Route.objects.filter(feed=feed, route_id=route_id).exists(): - lookup_errors["route_id"] = ( - f"route_id '{route_id}' not found in current GTFS feed" - ) - - trip = Trip.objects.filter(feed=feed, trip_id=trip_id).first() - if not trip: - lookup_errors["trip_id"] = ( - f"trip_id '{trip_id}' not found in current GTFS feed" - ) - elif trip.direction_id != direction_id: - lookup_errors["direction_id"] = ( - f"direction_id '{direction_id}' does not match trip '{trip_id}'" - ) - elif shape_id and trip.shape_id != shape_id: - lookup_errors["shape_id"] = ( - f"shape_id '{shape_id}' does not match trip '{trip_id}'" - ) - - if lookup_errors: - raise RunLifecycleError(lookup_errors) - - return True - - @staticmethod - def is_vehicle_available( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - vehicle_id = payload.get("vehicle_id") or ( - run.vehicle.values_list("id", flat=True).first() - ) - if not vehicle_id: - return True - existing = r.get(f"vehicle:{vehicle_id}:current_run") - if existing and existing.decode() != str(run.id): - raise RunLifecycleError( - { - "vehicle_id": f"Vehicle '{vehicle_id}' is already assigned to run {existing.decode()}" - } - ) - return True - - @staticmethod - def is_trip_available( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - trip_id = payload.get("trip_id") or run.trip_id - if not trip_id: - return True - existing = r.get(f"trip:{trip_id}:current_run") - if existing and existing.decode() != str(run.id): - raise RunLifecycleError( - { - "trip_id": f"Trip '{trip_id}' is already assigned to run {existing.decode()}" - } - ) - return True - - @staticmethod - def is_operator_available( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - operator_id = payload.get("operator_id") or ( - run.operator.values_list("id", flat=True).first() - ) - if not operator_id: - return True - existing = r.get(f"operator:{operator_id}:current_run") - if existing and existing.decode() != str(run.id): - raise RunLifecycleError( - { - "operator_id": f"Operator '{operator_id}' is already assigned to run {existing.decode()}" - } - ) - return True - - @staticmethod - def is_vehicle_tracked( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - return bool(r.sismember("runs:tracking", str(run.id))) - - @staticmethod - def is_run_validated( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - return True - - @staticmethod - def is_vehicle_moving( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - return float(payload.get("speed", 0)) > 0.5 - - # ------------------------------------------------------------------ - # Cancellation / interruption / short-turn authority guards - # ------------------------------------------------------------------ - - @staticmethod - def is_cancellation_authorized( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - actor_role = payload.get("actor_role", "") - if actor_role == "system": - return True - if actor_role in ("dispatcher", "operator"): - return True - raise RunLifecycleError( - { - "actor_role": f"actor_role '{actor_role}' is not authorized to cancel runs" - } - ) - - @staticmethod - def is_interruption_authorized( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - actor_role = payload.get("actor_role", "") - if actor_role in ("system", "dispatcher", "operator"): - return True - raise RunLifecycleError( - { - "actor_role": f"actor_role '{actor_role}' is not authorized to interrupt runs" - } - ) - - @staticmethod - def is_short_turn_authorized( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - actor_role = payload.get("actor_role", "") - if actor_role in ("dispatcher", "system"): - return True - raise RunLifecycleError( - { - "actor_role": f"actor_role '{actor_role}' must be 'dispatcher' or 'system' to short-turn" - } - ) - - @staticmethod - def is_short_turn_geometrically_valid( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - from feed.models import Feed, StopTime - - short_turn_stop_id = payload.get("short_turn_stop_id") - if not short_turn_stop_id: - raise RunLifecycleError( - {"short_turn_stop_id": "short_turn_stop_id is required"} - ) - - trip_id = run.trip_id - if not trip_id: - raise RunLifecycleError({"trip_id": "Run has no trip_id"}) - - feed = Feed.objects.filter(is_current=True).first() - if not feed: - raise RunLifecycleError({"feed": "No current GTFS feed found"}) - - stop_times = StopTime.objects.filter(feed=feed, trip_id=trip_id).order_by( - "stop_sequence" - ) - if not stop_times.exists(): - raise RunLifecycleError( - {"trip_id": f"No stop times found for trip '{trip_id}'"} - ) - - terminal = stop_times.last() - stop_ids = list(stop_times.values_list("stop_id", flat=True)) - - if short_turn_stop_id not in stop_ids: - raise RunLifecycleError( - { - "short_turn_stop_id": f"Stop '{short_turn_stop_id}' not on trip '{trip_id}'" - } - ) - if short_turn_stop_id == terminal.stop_id: - raise RunLifecycleError( - {"short_turn_stop_id": "Short-turn stop cannot be the terminal stop"} - ) - return True - - # ------------------------------------------------------------------ - # Telemetry freshness guards - # ------------------------------------------------------------------ - - @staticmethod - def is_telemetry_stale( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - last_seen = _parse_last_seen(payload) - if last_seen is None: - last_seen = run.last_event_at - if last_seen is None: - return True - staleness = (now() - last_seen).total_seconds() - return staleness > TELEMETRY_GRACE_S - - @staticmethod - def is_telemetry_fresh( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - last_seen = _parse_last_seen(payload) - if last_seen is None: - last_seen = run.last_event_at - if last_seen is None: - return False - staleness = (now() - last_seen).total_seconds() - return staleness <= TELEMETRY_GRACE_S - - @staticmethod - def is_telemetry_grace_period_exceeded( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - last_seen = _parse_last_seen(payload) - if last_seen is None: - last_seen = run.last_event_at - if last_seen is None: - return True - staleness = (now() - last_seen).total_seconds() - return staleness > TELEMETRY_EXPIRY_S - - # ------------------------------------------------------------------ - # Completion guard - # ------------------------------------------------------------------ - - @staticmethod - def is_at_terminal_stop( - run: Run, transition: "Transition", payload: dict[str, Any] - ) -> bool: - from feed.models import Feed, StopTime - - stop_id = payload.get("stop_id") - if not stop_id: - raise RunLifecycleError({"stop_id": "stop_id is required"}) - - trip_id = run.trip_id - if not trip_id: - raise RunLifecycleError({"trip_id": "Run has no trip_id"}) - - feed = Feed.objects.filter(is_current=True).first() - if not feed: - raise RunLifecycleError({"feed": "No current GTFS feed found"}) - - terminal = ( - StopTime.objects.filter(feed=feed, trip_id=trip_id) - .order_by("-stop_sequence") - .first() - ) - if not terminal: - raise RunLifecycleError( - {"trip_id": f"No stop times found for trip '{trip_id}'"} - ) - - if stop_id != terminal.stop_id: - raise RunLifecycleError( - { - "stop_id": f"Stop '{stop_id}' is not the terminal stop '{terminal.stop_id}'" - } - ) - return True diff --git a/backend/runs/domain/progress/states.py b/backend/runs/domain/progress/states.py deleted file mode 100644 index ea8dad6..0000000 --- a/backend/runs/domain/progress/states.py +++ /dev/null @@ -1,23 +0,0 @@ -from enum import Enum - - -class RunProgressStates(str, Enum): - """ - Defines the possible lifecycle states of a run. - """ - - REQUESTED = "Requested" - VALIDATED = "Validated" - INITIALIZED = "Initialized" - CONFIRMED = "Confirmed" - TRACKING = "Tracking" - CANCELLED = "Cancelled" - IN_PROGRESS = "In Progress" - NO_SIGNAL = "No Signal" - COMPLETED = "Completed" - INTERRUPTED = "Interrupted" - SHORT_TURNED = "Short Turned" - - -def choices(): - return [(status.value, status.name) for status in RunProgressStates] diff --git a/backend/runs/domain/progress/transitions.py b/backend/runs/domain/progress/transitions.py deleted file mode 100644 index 2b76741..0000000 --- a/backend/runs/domain/progress/transitions.py +++ /dev/null @@ -1,242 +0,0 @@ -from dataclasses import dataclass -from typing import Callable, List - -from .actions import RunProgressActions -from .guards import RunProgressGuards -from .states import RunProgressStates -from .events import RunProgressEvents - - -@dataclass -class Transition: - """Represents a state transition in the run lifecycle.""" - - from_state: RunProgressStates - event: RunProgressEvents - to_state: RunProgressStates - guards: List[Callable] - actions: List[Callable] - - -TRANSITIONS = [ - # ------------------------------------------------------------------ - # Registration: REQUESTED → VALIDATED - # ------------------------------------------------------------------ - Transition( - from_state=RunProgressStates.REQUESTED, - event=RunProgressEvents.VALIDATE_RUN, - to_state=RunProgressStates.VALIDATED, - guards=[ - RunProgressGuards.is_gtfs_valid, - RunProgressGuards.is_trip_available, - RunProgressGuards.is_vehicle_available, - RunProgressGuards.is_operator_available, - ], - actions=[], - ), - # Registration rejected at validation stage - Transition( - from_state=RunProgressStates.REQUESTED, - event=RunProgressEvents.RUN_REJECTED, - to_state=RunProgressStates.CANCELLED, - guards=[], - actions=[], - ), - # ------------------------------------------------------------------ - # Initialization: VALIDATED → INITIALIZED - # ------------------------------------------------------------------ - Transition( - from_state=RunProgressStates.VALIDATED, - event=RunProgressEvents.INITIALIZE_RUN, - to_state=RunProgressStates.INITIALIZED, - guards=[ - RunProgressGuards.is_run_validated, - ], - actions=[ - RunProgressActions.update_system_state, - ], - ), - # Initialization failed after validation passed - Transition( - from_state=RunProgressStates.VALIDATED, - event=RunProgressEvents.RUN_REJECTED, - to_state=RunProgressStates.CANCELLED, - guards=[], - actions=[ - RunProgressActions.release_resources, - ], - ), - # ------------------------------------------------------------------ - # Operator confirmation: INITIALIZED → CONFIRMED - # ------------------------------------------------------------------ - Transition( - from_state=RunProgressStates.INITIALIZED, - event=RunProgressEvents.RUN_CONFIRMED_BY_OPERATOR, - to_state=RunProgressStates.CONFIRMED, - guards=[], - actions=[ - RunProgressActions.sync_lifecycle_state, - ], - ), - # Cancelled before operator confirmation - Transition( - from_state=RunProgressStates.INITIALIZED, - event=RunProgressEvents.RUN_REJECTED, - to_state=RunProgressStates.CANCELLED, - guards=[ - RunProgressGuards.is_cancellation_authorized, - ], - actions=[ - RunProgressActions.remove_from_system_state, - RunProgressActions.release_resources, - ], - ), - # ------------------------------------------------------------------ - # Tracking started: CONFIRMED → TRACKING - # ------------------------------------------------------------------ - Transition( - from_state=RunProgressStates.CONFIRMED, - event=RunProgressEvents.RUN_TRACKING_STARTED, - to_state=RunProgressStates.TRACKING, - guards=[ - RunProgressGuards.is_vehicle_tracked, - ], - actions=[ - RunProgressActions.sync_lifecycle_state, - RunProgressActions.add_to_tracking_set, - ], - ), - # Cancelled after confirmation but before tracking - Transition( - from_state=RunProgressStates.CONFIRMED, - event=RunProgressEvents.CANCEL_RUN, - to_state=RunProgressStates.CANCELLED, - guards=[ - RunProgressGuards.is_cancellation_authorized, - ], - actions=[ - RunProgressActions.remove_from_system_state, - RunProgressActions.release_resources, - ], - ), - # ------------------------------------------------------------------ - # Run started: TRACKING → IN_PROGRESS - # ------------------------------------------------------------------ - Transition( - from_state=RunProgressStates.TRACKING, - event=RunProgressEvents.RUN_STARTED, - to_state=RunProgressStates.IN_PROGRESS, - guards=[ - RunProgressGuards.is_vehicle_moving, - ], - actions=[ - RunProgressActions.sync_lifecycle_state, - RunProgressActions.add_to_in_progress_set, - ], - ), - # Cancelled while tracking (before run started) - Transition( - from_state=RunProgressStates.TRACKING, - event=RunProgressEvents.CANCEL_RUN, - to_state=RunProgressStates.CANCELLED, - guards=[ - RunProgressGuards.is_cancellation_authorized, - ], - actions=[ - RunProgressActions.remove_from_tracking_set, - RunProgressActions.remove_from_system_state, - RunProgressActions.release_resources, - ], - ), - # ------------------------------------------------------------------ - # In progress: deviation events - # ------------------------------------------------------------------ - Transition( - from_state=RunProgressStates.IN_PROGRESS, - event=RunProgressEvents.RUN_TRACKING_LOST, - to_state=RunProgressStates.NO_SIGNAL, - guards=[ - RunProgressGuards.is_telemetry_stale, - ], - actions=[ - # Keep the run in `runs:tracking` so scan_stale_runs can fire - # RUN_TRACKING_EXPIRED later. The set is the work queue, not a - # status flag — only fully-terminal transitions should remove from it. - RunProgressActions.sync_lifecycle_state, - ], - ), - Transition( - from_state=RunProgressStates.IN_PROGRESS, - event=RunProgressEvents.RUN_INTERRUPTED, - to_state=RunProgressStates.INTERRUPTED, - guards=[ - RunProgressGuards.is_interruption_authorized, - ], - actions=[ - RunProgressActions.sync_lifecycle_state, - RunProgressActions.remove_from_tracking_set, - RunProgressActions.remove_from_in_progress_set, - RunProgressActions.release_resources, - ], - ), - Transition( - from_state=RunProgressStates.IN_PROGRESS, - event=RunProgressEvents.RUN_SHORT_TURNED, - to_state=RunProgressStates.SHORT_TURNED, - guards=[ - RunProgressGuards.is_short_turn_authorized, - RunProgressGuards.is_short_turn_geometrically_valid, - ], - actions=[ - RunProgressActions.sync_lifecycle_state, - RunProgressActions.remove_from_tracking_set, - RunProgressActions.remove_from_in_progress_set, - RunProgressActions.release_resources, - ], - ), - Transition( - from_state=RunProgressStates.IN_PROGRESS, - event=RunProgressEvents.RUN_COMPLETED, - to_state=RunProgressStates.COMPLETED, - guards=[ - RunProgressGuards.is_at_terminal_stop, - ], - actions=[ - RunProgressActions.sync_lifecycle_state, - RunProgressActions.remove_from_tracking_set, - RunProgressActions.remove_from_in_progress_set, - RunProgressActions.release_resources, - ], - ), - # ------------------------------------------------------------------ - # No signal: recovery or expiry - # ------------------------------------------------------------------ - Transition( - from_state=RunProgressStates.NO_SIGNAL, - event=RunProgressEvents.RUN_TRACKING_RESTORED, - to_state=RunProgressStates.IN_PROGRESS, - guards=[ - RunProgressGuards.is_telemetry_fresh, - RunProgressGuards.is_vehicle_tracked, - ], - actions=[ - RunProgressActions.sync_lifecycle_state, - RunProgressActions.add_to_tracking_set, - RunProgressActions.add_to_in_progress_set, - ], - ), - Transition( - from_state=RunProgressStates.NO_SIGNAL, - event=RunProgressEvents.RUN_TRACKING_EXPIRED, - to_state=RunProgressStates.CANCELLED, - guards=[ - RunProgressGuards.is_telemetry_grace_period_exceeded, - ], - actions=[ - RunProgressActions.sync_lifecycle_state, - RunProgressActions.remove_from_tracking_set, - RunProgressActions.remove_from_in_progress_set, - RunProgressActions.release_resources, - ], - ), -] diff --git a/backend/runs/domain/progression/producer.py b/backend/runs/domain/progression/producer.py index 50e0722..01c3693 100644 --- a/backend/runs/domain/progression/producer.py +++ b/backend/runs/domain/progression/producer.py @@ -13,21 +13,26 @@ """ import logging -import os - -import redis +from typing import cast +from databus.redis_client import create_redis_client from runs.domain.telemetry import keys, position, vehicle_stop_status from runs.domain.progression.compute import compute_stop_status logger = logging.getLogger(__name__) -r = redis.Redis( - host=os.getenv("REDIS_HOST", "state"), - port=int(os.getenv("REDIS_PORT", "6379")), - db=0, - decode_responses=True, -) +r = create_redis_client() + + +def _hgetall(key: str) -> dict[str, str]: + """Read a Redis hash as `dict[str, str]`. + + Narrows away the `Awaitable[...]` branch that redis-py's stubs attach to + every command (shared between the sync and async client mixins) — `r` + here is always the synchronous, `decode_responses=True` client, so the + result is always a plain string-keyed, string-valued dict. + """ + return cast("dict[str, str]", r.hgetall(key)) def produce_stop_status(run_id: str, vehicle_id: str) -> dict | None: @@ -55,16 +60,16 @@ def produce_stop_status(run_id: str, vehicle_id: str) -> dict | None: when position data is available, or ``None`` when there is no position data to derive from. """ - pos_raw = r.hgetall(keys.position_key(vehicle_id)) + pos_raw = _hgetall(keys.position_key(vehicle_id)) if not pos_raw: # No position data yet — nothing to derive stop status from. return None position_hash = position.from_redis(pos_raw) - run_hash = r.hgetall(keys.run_key(run_id)) + run_hash = _hgetall(keys.run_key(run_id)) - prev_raw = r.hgetall(keys.stop_status_key(run_id)) + prev_raw = _hgetall(keys.stop_status_key(run_id)) prev_state = vehicle_stop_status.from_redis(prev_raw) if prev_raw else None computed = compute_stop_status(run_hash, position_hash, prev_state=prev_state) diff --git a/backend/runs/domain/progression/shapes.py b/backend/runs/domain/progression/shapes.py index e5a692d..7a066fe 100644 --- a/backend/runs/domain/progression/shapes.py +++ b/backend/runs/domain/progression/shapes.py @@ -24,7 +24,7 @@ from runs.domain.progression.geo import ( haversine_m, - project_point_to_polyline, + project_point_to_polyline, # noqa: F401 - used as shapes.project_point_to_polyline in compute.py project_point_to_segment, ) @@ -101,16 +101,17 @@ def build_polyline( # ---- cumulative haversine (always computed; used as fallback) ----------- haversine_result: list[tuple[float, float, float]] = [] cum = 0.0 - prev_lat: float | None = None - prev_lon: float | None = None + # A single Optional pair (rather than two parallel Optionals) lets mypy + # narrow both coordinates together from one `is None` check. + prev_point: tuple[float, float] | None = None for lat, lon, _seq in points: - if prev_lat is None: + if prev_point is None: cum = 0.0 else: - cum += haversine_m(prev_lat, prev_lon, lat, lon) + cum += haversine_m(prev_point[0], prev_point[1], lat, lon) haversine_result.append((lat, lon, cum)) - prev_lat, prev_lon = lat, lon + prev_point = (lat, lon) # ---- decide whether to use provided dists_m ---------------------------- if dists_m is not None: @@ -121,6 +122,10 @@ def build_polyline( if not use_provided: return haversine_result + # use_provided is only True when dists_m is not None (see the branch + # above); this assert makes that invariant explicit for mypy. + assert dists_m is not None + # Normalise so first entry is 0.0. offset = dists_m[0] result: list[tuple[float, float, float]] = [] @@ -427,7 +432,10 @@ def load_shape_geometry( stop_ids = [sid for sid, _seq in st_rows] stop_coord_map = { - row["stop_id"]: (float(row["stop_lat"]), float(row["stop_lon"])) + row["stop_id"]: ( + float(row["stop_lat"]), # type: ignore[arg-type] + float(row["stop_lon"]), # type: ignore[arg-type] + ) for row in Stop.objects.filter(feed=feed, stop_id__in=stop_ids).values( "stop_id", "stop_lat", "stop_lon" ) diff --git a/backend/runs/domain/progression/stop_times.py b/backend/runs/domain/progression/stop_times.py index c02eb01..2bf3f01 100644 --- a/backend/runs/domain/progression/stop_times.py +++ b/backend/runs/domain/progression/stop_times.py @@ -1,83 +1,324 @@ -"""Redis glue for the server-side stop-time-updates producer (seam / placeholder). +"""Real ETA stop-time-updates producer — impure/pure split. -This module is the impure counterpart to the pure computation in -``schedule_engine/fake_stop_times.py``. It reads from Redis, delegates to the -existing fake builder, maps the fake output to the typed contract, and writes the -projection back to Redis as a JSON string under ``run::stop_time_updates``. +Pure computation lives in :func:`compute_stop_time_updates`; all Redis I/O +lives in :func:`produce_stop_times`. The split mirrors +``compute.py`` / ``producer.py`` in this package. -Called by ``realtime_engine/mqtt.py`` after every successful position write so -that ``run::stop_time_updates`` is kept current for the GTFS-RT builder. +Called by ``realtime_engine/tasks.py`` after every successful position write +so that ``run::stop_time_updates`` is kept current for the GTFS-RT +builder. -The Redis client mirrors the pattern used in ``producer.py``: module-level client -configured from environment variables. - -Do NOT export ``produce_stop_times`` from ``runs.domain.progression.__init__``. -Import it by full module path:: - - from runs.domain.progression.stop_times import produce_stop_times +Environment variables +--------------------- +MODEL_REGISTRY_DIR + Directory where the ETA model registry is stored. Read by + ``gtfs_eta`` itself from the environment — just set it before + starting the worker. Example: ``eta_models/``. +ETA_MAX_STOPS + Maximum number of upcoming stops to predict. Default: 3. +ETA_DEFAULT_UNCERTAINTY_S + Uncertainty value (seconds) attached to every predicted arrival. + Default: 120. """ import logging import os +from datetime import datetime, timezone +from typing import cast -import redis - -from runs.domain.telemetry import keys, stop_time_updates +from databus.redis_client import create_redis_client +from runs.domain.telemetry import keys, stop_time_updates, vehicle_stop_status +from runs.domain.progression.geo import project_point_to_polyline +from runs.domain.progression.shapes import ShapeGeometry, get_shape_geometry logger = logging.getLogger(__name__) -# Comfortably above the position-update interval (~1-5 s) so a stalled producer -# expires the projection instead of serving stale arrivals; run lifecycle still -# owns hard cleanup. +# --------------------------------------------------------------------------- +# Module-level config +# --------------------------------------------------------------------------- + +# Comfortably above the position-update interval (~1-5 s) so a stalled +# producer expires the projection instead of serving stale arrivals; run +# lifecycle still owns hard cleanup. STOP_TIME_UPDATES_TTL_S = 60 -r = redis.Redis( - host=os.getenv("REDIS_HOST", "state"), - port=int(os.getenv("REDIS_PORT", "6379")), - db=0, - decode_responses=True, -) +# Maximum upcoming stops to pass to the estimator per position tick. +ETA_MAX_STOPS = int(os.getenv("ETA_MAX_STOPS", "3")) + +# Uncertainty (seconds) attached to every prediction. Passed through to the +# GTFS-RT feed; callers (e.g. apps) can use it for confidence UX. +ETA_DEFAULT_UNCERTAINTY_S = int(os.getenv("ETA_DEFAULT_UNCERTAINTY_S", "120")) + +r = create_redis_client() + + +def _hgetall(key: str) -> dict[str, str]: + """Read a Redis hash as `dict[str, str]`. + + Narrows away the `Awaitable[...]` branch that redis-py's stubs attach to + every command (shared between the sync and async client mixins) — `r` + here is always the synchronous, `decode_responses=True` client, so the + result is always a plain string-keyed, string-valued dict. + """ + return cast("dict[str, str]", r.hgetall(key)) + + +# --------------------------------------------------------------------------- +# Pure helper +# --------------------------------------------------------------------------- + + +def compute_stop_time_updates( + *, + run_hash: dict, + position: dict, + stop_status: dict, + geom: ShapeGeometry, + max_stops: int = ETA_MAX_STOPS, + default_uncertainty_s: int = ETA_DEFAULT_UNCERTAINTY_S, +) -> list[dict]: + """Derive stop-time-update contract entries from run state and geometry. + + Pure: no Redis, no ORM, no side effects. The ``geom`` is passed in so + the caller can decide when to skip (and leave last-good in Redis to TTL). + + Parameters + ---------- + run_hash: + Raw Redis hash for ``run:`` — all string values. + position: + Typed position dict as returned by ``position.from_redis``. + Keys: ``latitude``, ``longitude``, optionally ``speed``, ``timestamp``. + stop_status: + Typed stop-status dict as returned by ``vehicle_stop_status.from_redis``. + geom: + Pre-loaded :class:`ShapeGeometry` for the trip's shape. + max_stops: + Maximum number of upcoming stops to predict. + default_uncertainty_s: + Uncertainty (seconds) attached to every predicted arrival. + + Returns + ------- + list[dict] + Zero or more contract dicts, each with exactly the five fields + required by :func:`stop_time_updates.to_redis`: + ``stop_sequence``, ``stop_id``, ``arrival_time``, + ``departure_time``, ``uncertainty``. + Empty list when no predictions are available or the estimator + returns a top-level error. + """ + # ------------------------------------------------------------------ + # 1. Determine current stop sequence and status + # ------------------------------------------------------------------ + current_stop_sequence: int = stop_status.get( + vehicle_stop_status.CURRENT_STOP_SEQUENCE, 0 + ) or 0 + status: str = stop_status.get(vehicle_stop_status.CURRENT_STATUS, "") + + # ------------------------------------------------------------------ + # 2. Project vehicle onto polyline → vehicle_progress_m + # ------------------------------------------------------------------ + lat = position.get("latitude") + lon = position.get("longitude") + if lat is None or lon is None: + return [] + proj = project_point_to_polyline(float(lat), float(lon), list(geom.polyline)) + vehicle_progress_m: float = proj["progress_m"] -def produce_stop_times(run_id: str, vehicle_id: str) -> None: # noqa: ARG001 - """Derive and write ``run::stop_time_updates`` from the current run state. + # ------------------------------------------------------------------ + # 3. Build upcoming_stops list (filter by sequence, compute distances) + # ------------------------------------------------------------------ + upcoming_stops: list[dict] = [] + for stop in geom.stops: + seq: int = stop["stop_sequence"] + if status == "STOPPED_AT": + if seq <= current_stop_sequence: + continue + else: + if seq < current_stop_sequence: + continue + shape_dist = max(0.0, stop["progress_m"] - vehicle_progress_m) + upcoming_stops.append( + { + "stop_id": stop["stop_id"], + "stop_sequence": seq, + "lat": stop["lat"], + "lon": stop["lon"], + "total_stop_sequence": len(geom.stops), + "shape_distance_to_stop": shape_dist, + } + ) - Reads the run hash and the current stop-status progression hash from Redis, - delegates to the fake stop-time builder, maps each fake entry to the typed - contract, and writes the JSON projection back to Redis with a staleness TTL. + if not upcoming_stops: + return [] - Returns immediately without writing anything if the run hash is absent (nothing - to derive from). + # ------------------------------------------------------------------ + # 4. Build vehicle_position dict in estimator contract format + # ------------------------------------------------------------------ + raw_ts = position.get("timestamp") + if raw_ts is not None: + ts_iso = datetime.fromtimestamp(int(raw_ts), tz=timezone.utc).isoformat() + else: + ts_iso = datetime.now(tz=timezone.utc).isoformat() + + vehicle_position = { + "vehicle_id": run_hash.get("vehicle", ""), + "lat": float(lat), + "lon": float(lon), + "speed": float(position.get("speed", 0.0) or 0.0), + "timestamp": ts_iso, + "route": run_hash.get("route_id", ""), + } + + # ------------------------------------------------------------------ + # 5. Build ShapePolyline for the estimator (lazy import → clean startup) + # ------------------------------------------------------------------ + from gtfs_eta.feature_engineering.spatial import ShapePolyline # noqa: PLC0415 + + shape = ShapePolyline([(pt[0], pt[1]) for pt in geom.polyline]) + + # ------------------------------------------------------------------ + # 6. Call estimator (lazy import keeps Django startup clean). + # We import the *module* and call via attribute so tests can patch + # ``gtfs_eta.eta_service.estimator.estimate_stop_times`` reliably. + # ------------------------------------------------------------------ + import gtfs_eta.eta_service.estimator as _estimator_mod # noqa: PLC0415 + + result = _estimator_mod.estimate_stop_times( + vehicle_position, + upcoming_stops, + route_id=run_hash.get("route_id"), + trip_id=run_hash.get("trip_id"), + prefer_route_model=True, + max_stops=max_stops, + shape=shape, + ) + + # Top-level error or empty predictions → safe to return [] + if result.get("error") or not result.get("predictions"): + if result.get("error"): + logger.debug( + "compute_stop_time_updates: estimator error: %s", result["error"] + ) + return [] + + # ------------------------------------------------------------------ + # 7. Output adapter: predictions → contract dicts + # ------------------------------------------------------------------ + entries: list[dict] = [] + for pred in result["predictions"]: + # Skip per-stop failures + if pred.get("error"): + logger.debug( + "compute_stop_time_updates: per-stop error for seq=%s: %s", + pred.get("stop_sequence"), + pred["error"], + ) + continue + eta_ts_str: str | None = pred.get("eta_timestamp") + if not eta_ts_str: + continue + try: + # Handle trailing Z (Python < 3.11 fromisoformat doesn't accept it) + if eta_ts_str.endswith("Z"): + eta_ts_str = eta_ts_str[:-1] + "+00:00" + eta_posix = int(datetime.fromisoformat(eta_ts_str).timestamp()) + except (ValueError, TypeError) as exc: + logger.debug( + "compute_stop_time_updates: bad eta_timestamp %r: %s", eta_ts_str, exc + ) + continue + + entries.append( + { + stop_time_updates.STOP_SEQUENCE: int(pred["stop_sequence"]), + stop_time_updates.STOP_ID: str(pred["stop_id"]), + stop_time_updates.ARRIVAL_TIME: eta_posix, + stop_time_updates.DEPARTURE_TIME: eta_posix, + stop_time_updates.UNCERTAINTY: default_uncertainty_s, + } + ) + + # ------------------------------------------------------------------ + # 8. Dedup by stop_sequence (keep first) + sort ascending + # ------------------------------------------------------------------ + seen: set[int] = set() + deduped: list[dict] = [] + for entry in entries: + seq = entry[stop_time_updates.STOP_SEQUENCE] + if seq not in seen: + seen.add(seq) + deduped.append(entry) + + deduped.sort(key=lambda e: e[stop_time_updates.STOP_SEQUENCE]) + return deduped + + +# --------------------------------------------------------------------------- +# Impure producer (Redis glue) +# --------------------------------------------------------------------------- + + +def produce_stop_times(run_id: str, vehicle_id: str) -> None: + """Derive and write ``run::stop_time_updates`` from current run state. + + 1. Reads the run hash; returns immediately if absent. + 2. Reads the position hash; returns without overwriting if no position. + 3. Reads the stop-status hash. + 4. Resolves shape geometry; returns without overwriting if unavailable + (leaves last-good projection to TTL-expire naturally). + 5. Calls :func:`compute_stop_time_updates`; writes to Redis only when a + non-empty list is returned (no-models case leaves last-good intact). Parameters ---------- run_id: The active run id (string, as stored in ``vehicle::current_run``). vehicle_id: - The vehicle id whose position was just updated (reserved for future use). + The vehicle id whose position was just updated. """ - run_hash = r.hgetall(keys.run_key(run_id)) + # Step 1 — run hash + run_hash = _hgetall(keys.run_key(run_id)) if not run_hash: return - prev_raw = r.hgetall(keys.stop_status_key(run_id)) + # Step 2 — position hash (required; exit without overwriting if absent) + from runs.domain.telemetry import position as position_module # noqa: PLC0415 + + pos_raw = _hgetall(keys.position_key(vehicle_id)) + if not pos_raw: + return + pos = position_module.from_redis(pos_raw) + if pos.get("latitude") is None or pos.get("longitude") is None: + return - from schedule_engine.fake_stop_times import build_stop_time_updates + # Step 3 — stop-status hash (tolerate absence) + stop_status_raw = _hgetall(keys.stop_status_key(run_id)) + stop_status = vehicle_stop_status.from_redis(stop_status_raw) if stop_status_raw else {} - fake_entries = build_stop_time_updates(run=run_hash, progression=prev_raw) + # Step 4 — shape geometry (exit without overwriting if unavailable) + shape_id = run_hash.get("shape_id", "") + trip_id = run_hash.get("trip_id", "") + if not shape_id or not trip_id: + return + geom = get_shape_geometry(shape_id, trip_id) + if geom is None: + return - # Map fake entries {stop_sequence, stop_id, eta_posix, uncertainty} - # → contract entries {stop_sequence, stop_id, arrival_time, departure_time, uncertainty} - mapped = [ - { - stop_time_updates.STOP_SEQUENCE: entry["stop_sequence"], - stop_time_updates.STOP_ID: entry["stop_id"], - stop_time_updates.ARRIVAL_TIME: entry["eta_posix"], - stop_time_updates.DEPARTURE_TIME: entry["eta_posix"], - stop_time_updates.UNCERTAINTY: entry["uncertainty"], - } - for entry in fake_entries - ] + # Step 5 — compute and conditionally write + entries = compute_stop_time_updates( + run_hash=run_hash, + position=pos, + stop_status=stop_status, + geom=geom, + max_stops=ETA_MAX_STOPS, + default_uncertainty_s=ETA_DEFAULT_UNCERTAINTY_S, + ) + if not entries: + # No predictions (no models trained, etc.) — leave last-good intact. + return - payload = stop_time_updates.to_redis(mapped) + payload = stop_time_updates.to_redis(entries) r.set(keys.stop_time_updates_key(run_id), payload, ex=STOP_TIME_UPDATES_TTL_S) diff --git a/backend/runs/domain/progression/tests/test_compute.py b/backend/runs/domain/progression/tests/test_compute.py index c4d322a..804c05e 100644 --- a/backend/runs/domain/progression/tests/test_compute.py +++ b/backend/runs/domain/progression/tests/test_compute.py @@ -247,8 +247,6 @@ def test_far_from_stop_is_in_transit_to(self): def test_incoming_at_when_within_incoming_radius(self): """Place vehicle just under INCOMING_AT_RADIUS_M before S1.""" - from runs.domain.progression.geo import haversine_m as hav - # Find lat just inside INCOMING_AT_RADIUS_M of S1 (2.0, 0.0). # 1° ≈ 111 195 m. INCOMING_AT_RADIUS_M = 50 m → Δlat ≈ 50/111195. delta_lat = (INCOMING_AT_RADIUS_M - 5) / 111_195.0 # a little inside diff --git a/backend/runs/domain/progression/tests/test_producer.py b/backend/runs/domain/progression/tests/test_producer.py index 77591f6..b1c5c1f 100644 --- a/backend/runs/domain/progression/tests/test_producer.py +++ b/backend/runs/domain/progression/tests/test_producer.py @@ -6,9 +6,7 @@ Patch target: ``runs.domain.progression.producer.r`` """ -from unittest.mock import MagicMock, call - -import pytest +from unittest.mock import MagicMock import runs.domain.progression.producer as producer_module from runs.domain.progression.producer import produce_stop_status diff --git a/backend/runs/domain/progression/tests/test_stop_times_producer.py b/backend/runs/domain/progression/tests/test_stop_times_producer.py index 4beaf68..187f96c 100644 --- a/backend/runs/domain/progression/tests/test_stop_times_producer.py +++ b/backend/runs/domain/progression/tests/test_stop_times_producer.py @@ -1,187 +1,715 @@ -"""Unit tests for produce_stop_times — monkeypatched Redis, no I/O. - -The module-level ``r`` object in stop_times.py is replaced with a MagicMock so -all tests run entirely in-process without a live Redis instance. - -Patch target: ``runs.domain.progression.stop_times.r`` +"""Tests for the real ETA stop-time-updates producer. + +Coverage: +- Pure helper unit tests (ShapeGeometry constructed directly, temp MODEL_REGISTRY_DIR) +- Bug regression: no duplicate stop_sequence; list shrinks as vehicle advances +- Output-adapter edge cases: top-level error, per-stop error, STOPPED_AT +- Impure produce_stop_times: monkeypatched Redis + get_shape_geometry +- Builder hardening: unsorted/duplicate projection is sorted+deduped """ -import json +import os +import subprocess +import sys +import tempfile +from datetime import datetime, timezone from unittest.mock import MagicMock, patch import pytest import runs.domain.progression.stop_times as stop_times_module +from runs.domain.progression.shapes import ShapeGeometry, assemble_geometry from runs.domain.progression.stop_times import ( STOP_TIME_UPDATES_TTL_S, + compute_stop_time_updates, produce_stop_times, ) -from runs.domain.telemetry import keys, stop_time_updates +from runs.domain.telemetry import keys, stop_time_updates, vehicle_stop_status +from schedule_engine.builders import build_trip_update_entity # --------------------------------------------------------------------------- -# Helpers +# Shared geometry fixture helpers # --------------------------------------------------------------------------- -VEHICLE_ID = "v-42" -RUN_ID = "run-99" +# A simple straight N–S line: 6 stops spaced ~111 m apart (1 arc-second of lat). +# Shape: 7 points at lon = -84.0, lat from 9.900 to 9.906. +_LAT_BASE = 9.900 +_LON = -84.0 +_D_LAT = 0.001 # ≈ 111 m per step -_RUN_RAW = { - "trip_id": "trip-1", - "route_id": "route-1", - "shape_id": "shape-1", - "vehicle": VEHICLE_ID, -} -_STOP_STATUS_RAW = { - "current_stop_sequence": "3", - "stop_id": "STOP-42", - "current_status": "IN_TRANSIT_TO", -} +def _straight_shape_points(n_points: int = 7) -> list[tuple[float, float, int]]: + """Return (lat, lon, seq) tuples for a straight N–S polyline.""" + return [(_LAT_BASE + i * _D_LAT, _LON, i) for i in range(n_points)] -# Two fake entries that build_stop_time_updates might return -_FAKE_STOP_ENTRIES = [ - { - "stop_sequence": 3, - "stop_id": "stop-1", - "eta_posix": 1700001000, - "uncertainty": 120, - }, - { - "stop_sequence": 4, - "stop_id": "stop-2", - "eta_posix": 1700001300, - "uncertainty": 120, - }, -] - - -def _fake_redis(run_raw=None, stop_status_raw=None) -> MagicMock: - r = MagicMock() - def hgetall_side_effect(key: str) -> dict: - if key == keys.run_key(RUN_ID): - return run_raw if run_raw is not None else _RUN_RAW - if key == keys.stop_status_key(RUN_ID): - return stop_status_raw if stop_status_raw is not None else {} - return {} +def _straight_stop_rows(n_stops: int = 6) -> list[dict]: + """Return stop rows snapped to the first n_stops polyline vertices.""" + return [ + { + "stop_id": f"S{i}", + "stop_sequence": i, + "lat": _LAT_BASE + i * _D_LAT, + "lon": _LON, + } + for i in range(n_stops) + ] - r.hgetall.side_effect = hgetall_side_effect - return r + +def make_straight_geom(n_stops: int = 6) -> ShapeGeometry: + """Build a ShapeGeometry from the straight test polyline.""" + return assemble_geometry( + shape_id="test-shape", + trip_id="test-trip", + shape_points=_straight_shape_points(n_stops + 1), + stop_rows=_straight_stop_rows(n_stops), + ) # --------------------------------------------------------------------------- -# Test 1 — Empty run hash: returns early, no r.set called +# Fixture: seed a baseline model into a temp directory # --------------------------------------------------------------------------- -def test_returns_early_when_run_hash_is_empty(monkeypatch): - fake_r = _fake_redis(run_raw={}) - monkeypatch.setattr(stop_times_module, "r", fake_r) - - produce_stop_times(RUN_ID, VEHICLE_ID) - - fake_r.set.assert_not_called() +@pytest.fixture(scope="module") +def model_dir(): + """Seed the baseline ETA model into a temp directory once per module.""" + with tempfile.TemporaryDirectory() as tmpdir: + env = {**os.environ, "MODEL_REGISTRY_DIR": tmpdir} + result = subprocess.run( + [sys.executable, "-m", "gtfs_eta.seed_baseline_model"], + env=env, + capture_output=True, + text=True, + cwd=os.path.dirname(os.path.dirname(os.path.abspath(__file__))), + ) + assert result.returncode == 0, ( + f"seed_baseline_model failed:\nstdout: {result.stdout}\nstderr: {result.stderr}" + ) + yield tmpdir # --------------------------------------------------------------------------- -# Test 2 — Happy path: maps fake entries to contract and writes JSON +# Helper: build a minimal position dict (typed, as from position.from_redis) # --------------------------------------------------------------------------- -def test_happy_path_writes_stop_time_updates_key(monkeypatch): - fake_r = _fake_redis() - monkeypatch.setattr(stop_times_module, "r", fake_r) +def _pos(lat: float, lon: float, speed: float = 4.5, ts: int = 1_700_000_000) -> dict: + return { + "latitude": lat, + "longitude": lon, + "speed": speed, + "timestamp": ts, + } - with patch( - "schedule_engine.fake_stop_times.build_stop_time_updates", - return_value=_FAKE_STOP_ENTRIES, - ): - produce_stop_times(RUN_ID, VEHICLE_ID) - fake_r.set.assert_called_once() - call_args = fake_r.set.call_args - written_key = call_args.args[0] if call_args.args else call_args.kwargs.get("name") - assert written_key == keys.stop_time_updates_key(RUN_ID) +def _run_hash(vehicle: str = "V1", route_id: str = "R1", trip_id: str = "T1") -> dict: + return { + "vehicle": vehicle, + "route_id": route_id, + "trip_id": trip_id, + "shape_id": "test-shape", + } -def test_happy_path_payload_is_valid_json(monkeypatch): - fake_r = _fake_redis() - monkeypatch.setattr(stop_times_module, "r", fake_r) +# --------------------------------------------------------------------------- +# Pure helper — happy path +# --------------------------------------------------------------------------- - with patch( - "schedule_engine.fake_stop_times.build_stop_time_updates", - return_value=_FAKE_STOP_ENTRIES, - ): - produce_stop_times(RUN_ID, VEHICLE_ID) - payload_str = fake_r.set.call_args.args[1] - parsed = json.loads(payload_str) - assert isinstance(parsed, list) - assert len(parsed) == 2 +class TestComputeStopTimeUpdatesHappyPath: + """Predictions map correctly; ARRIVAL_TIME is int POSIX; ETAs increase.""" + + def test_returns_list_of_dicts(self, model_dir): + geom = make_straight_geom() + # Vehicle at the very start of the route (before stop 0) + pos = _pos(_LAT_BASE - 0.0005, _LON) + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + max_stops=3, + default_uncertainty_s=120, + ) + assert isinstance(result, list) + if result: # may be empty if model not loaded but seed should work + assert all(isinstance(e, dict) for e in result) + + def test_arrival_time_is_int_posix(self, model_dir): + geom = make_straight_geom() + pos = _pos(_LAT_BASE - 0.0005, _LON) + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + max_stops=3, + default_uncertainty_s=120, + ) + for entry in result: + assert isinstance(entry[stop_time_updates.ARRIVAL_TIME], int) + assert isinstance(entry[stop_time_updates.DEPARTURE_TIME], int) + # Sanity: POSIX in a plausible range (year 2000 → 2100) + assert 946_684_800 < entry[stop_time_updates.ARRIVAL_TIME] < 4_102_444_800 + + def test_uncertainty_equals_default(self, model_dir): + geom = make_straight_geom() + pos = _pos(_LAT_BASE - 0.0005, _LON) + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + max_stops=3, + default_uncertainty_s=99, + ) + for entry in result: + assert entry[stop_time_updates.UNCERTAINTY] == 99 + + def test_etas_are_non_decreasing(self, model_dir): + """ETAs must increase (or stay equal) as distance increases.""" + geom = make_straight_geom() + pos = _pos(_LAT_BASE - 0.0005, _LON) + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + max_stops=6, + default_uncertainty_s=120, + ) + times = [e[stop_time_updates.ARRIVAL_TIME] for e in result] + for i in range(1, len(times)): + assert times[i] >= times[i - 1], ( + f"ETA decreased: entry[{i - 1}]={times[i - 1]} > entry[{i}]={times[i]}" + ) + + def test_stop_id_and_sequence_match_geom(self, model_dir): + geom = make_straight_geom(n_stops=6) + pos = _pos(_LAT_BASE - 0.0005, _LON) + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + max_stops=3, + default_uncertainty_s=120, + ) + geom_stop_ids = {s["stop_id"] for s in geom.stops} + for entry in result: + assert entry[stop_time_updates.STOP_ID] in geom_stop_ids -def test_fake_to_contract_mapping(monkeypatch): - """Each fake entry {eta_posix} must map to contract {arrival_time, departure_time}.""" - fake_r = _fake_redis() - monkeypatch.setattr(stop_times_module, "r", fake_r) +# --------------------------------------------------------------------------- +# Bug regression: no duplicates; list shrinks as vehicle advances +# --------------------------------------------------------------------------- - with patch( - "schedule_engine.fake_stop_times.build_stop_time_updates", - return_value=_FAKE_STOP_ENTRIES, - ): - produce_stop_times(RUN_ID, VEHICLE_ID) - payload_str = fake_r.set.call_args.args[1] - entries = stop_time_updates.from_redis(payload_str) - assert len(entries) == 2 - # Verify the eta_posix → arrival_time / departure_time mapping - assert entries[0][stop_time_updates.ARRIVAL_TIME] == 1700001000 - assert entries[0][stop_time_updates.DEPARTURE_TIME] == 1700001000 - assert entries[0][stop_time_updates.STOP_SEQUENCE] == 3 - assert entries[0][stop_time_updates.STOP_ID] == "stop-1" - assert entries[0][stop_time_updates.UNCERTAINTY] == 120 - - -def test_writes_with_ttl(monkeypatch): - """r.set must be called with ex=STOP_TIME_UPDATES_TTL_S.""" - fake_r = _fake_redis() - monkeypatch.setattr(stop_times_module, "r", fake_r) - - with patch( - "schedule_engine.fake_stop_times.build_stop_time_updates", - return_value=_FAKE_STOP_ENTRIES, - ): - produce_stop_times(RUN_ID, VEHICLE_ID) +class TestBugRegressions: + def test_no_duplicate_stop_sequence_in_output(self, model_dir): + """Output must never contain duplicate stop_sequence values.""" + geom = make_straight_geom(n_stops=6) + pos = _pos(_LAT_BASE - 0.0005, _LON) + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + max_stops=6, + default_uncertainty_s=120, + ) + seqs = [e[stop_time_updates.STOP_SEQUENCE] for e in result] + assert len(seqs) == len(set(seqs)), f"Duplicate sequences: {seqs}" + + def test_list_length_non_increasing_as_sequence_advances(self, model_dir): + """As current_stop_sequence advances 0→3→5, the result length must not grow.""" + geom = make_straight_geom(n_stops=6) + # Vehicle mid-route + pos = _pos(_LAT_BASE + 2 * _D_LAT + 0.0005, _LON) + + def _count(current_seq: int, status: str = "IN_TRANSIT_TO") -> int: + ss = { + vehicle_stop_status.CURRENT_STOP_SEQUENCE: current_seq, + vehicle_stop_status.CURRENT_STATUS: status, + } + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + res = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status=ss, + geom=geom, + max_stops=6, + default_uncertainty_s=120, + ) + return len(res) + + c0 = _count(0) + c3 = _count(3) + c5 = _count(5) + assert c0 >= c3 >= c5, ( + f"List grew as sequence advanced: seq0={c0}, seq3={c3}, seq5={c5}" + ) + + def test_output_contains_only_sequences_gte_current(self, model_dir): + """All returned sequences must be >= current_stop_sequence.""" + geom = make_straight_geom(n_stops=6) + pos = _pos(_LAT_BASE, _LON) + current_seq = 3 + ss = { + vehicle_stop_status.CURRENT_STOP_SEQUENCE: current_seq, + vehicle_stop_status.CURRENT_STATUS: "IN_TRANSIT_TO", + } + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status=ss, + geom=geom, + max_stops=6, + default_uncertainty_s=120, + ) + for entry in result: + assert entry[stop_time_updates.STOP_SEQUENCE] >= current_seq - call_kwargs = fake_r.set.call_args.kwargs - assert call_kwargs.get("ex") == STOP_TIME_UPDATES_TTL_S + +# --------------------------------------------------------------------------- +# Output-adapter edge cases +# --------------------------------------------------------------------------- + + +class TestOutputAdapterEdgeCases: + def test_top_level_error_returns_empty(self): + """When estimator returns a top-level error, result must be [].""" + geom = make_straight_geom() + pos = _pos(_LAT_BASE, _LON) + error_result = { + "predictions": [], + "error": "No trained models found for model_type", + "model_key": None, + } + # estimate_stop_times is lazily imported inside compute_stop_time_updates; + # patch the function in its source module (gtfs_eta.eta_service.estimator). + with patch( + "gtfs_eta.eta_service.estimator.estimate_stop_times", + return_value=error_result, + ): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + ) + assert result == [] + + def test_per_stop_error_is_skipped(self): + """A prediction with per-stop error must be excluded from the output.""" + geom = make_straight_geom(n_stops=3) + pos = _pos(_LAT_BASE - 0.0005, _LON) + now_ts = datetime.now(tz=timezone.utc) + estimator_result = { + "predictions": [ + { + "stop_id": "S0", + "stop_sequence": 0, + "distance_to_stop_m": 50.0, + "eta_seconds": None, + "eta_minutes": None, + "eta_formatted": None, + "eta_timestamp": None, + "error": "prediction failed", + }, + { + "stop_id": "S1", + "stop_sequence": 1, + "distance_to_stop_m": 160.0, + "eta_seconds": 36.0, + "eta_minutes": 0.6, + "eta_formatted": "0m 36s", + "eta_timestamp": now_ts.isoformat(), + }, + ], + } + with patch( + "gtfs_eta.eta_service.estimator.estimate_stop_times", + return_value=estimator_result, + ): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + ) + # Only S1 should be in the output (S0 has an error) + assert len(result) == 1 + assert result[0][stop_time_updates.STOP_ID] == "S1" + + def test_stopped_at_excludes_current_stop(self, model_dir): + """When status is STOPPED_AT, the current stop must not appear in output.""" + geom = make_straight_geom(n_stops=6) + pos = _pos(_LAT_BASE + 2 * _D_LAT, _LON) + current_seq = 2 + ss = { + vehicle_stop_status.CURRENT_STOP_SEQUENCE: current_seq, + vehicle_stop_status.CURRENT_STATUS: "STOPPED_AT", + } + with patch.dict(os.environ, {"MODEL_REGISTRY_DIR": model_dir}): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status=ss, + geom=geom, + max_stops=6, + default_uncertainty_s=120, + ) + seqs = [e[stop_time_updates.STOP_SEQUENCE] for e in result] + assert current_seq not in seqs, ( + f"STOPPED_AT: current_seq={current_seq} found in output seqs {seqs}" + ) + for seq in seqs: + assert seq > current_seq + + def test_empty_upcoming_stops_returns_empty(self): + """When no upcoming stops remain, result is [].""" + geom = make_straight_geom(n_stops=3) + pos = _pos(_LAT_BASE, _LON) + ss = { + # All stops are behind the vehicle (seq 100 > any stop) + vehicle_stop_status.CURRENT_STOP_SEQUENCE: 100, + vehicle_stop_status.CURRENT_STATUS: "IN_TRANSIT_TO", + } + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status=ss, + geom=geom, + ) + assert result == [] + + def test_empty_predictions_returns_empty(self): + """When estimator returns empty predictions list (no error), result is [].""" + geom = make_straight_geom(n_stops=3) + pos = _pos(_LAT_BASE - 0.0005, _LON) + with patch( + "gtfs_eta.eta_service.estimator.estimate_stop_times", + return_value={"predictions": []}, + ): + result = compute_stop_time_updates( + run_hash=_run_hash(), + position=pos, + stop_status={}, + geom=geom, + ) + assert result == [] # --------------------------------------------------------------------------- -# Test 3 — Empty fake entries: writes empty JSON array +# Impure produce_stop_times tests (monkeypatched Redis) # --------------------------------------------------------------------------- +VEHICLE_ID = "V-test" +RUN_ID = "run-test" + +_RUN_RAW = { + "trip_id": "T1", + "route_id": "R1", + "shape_id": "shape-1", + "vehicle": VEHICLE_ID, +} + +_POS_RAW = { + "latitude": str(_LAT_BASE), + "longitude": str(_LON), + "speed": "4.5", + "timestamp": "1700000000", +} + +_STOP_STATUS_RAW = { + "current_stop_sequence": "2", + "stop_id": "S2", + "current_status": "IN_TRANSIT_TO", +} + + +def _fake_redis(run_raw=None, pos_raw=None, stop_status_raw=None) -> MagicMock: + r = MagicMock() + + def hgetall_side_effect(key: str) -> dict: + if key == keys.run_key(RUN_ID): + return run_raw if run_raw is not None else _RUN_RAW + if key == keys.position_key(VEHICLE_ID): + return pos_raw if pos_raw is not None else _POS_RAW + if key == keys.stop_status_key(RUN_ID): + return stop_status_raw if stop_status_raw is not None else _STOP_STATUS_RAW + return {} + + r.hgetall.side_effect = hgetall_side_effect + return r -def test_empty_fake_entries_writes_empty_array(monkeypatch): - fake_r = _fake_redis() - monkeypatch.setattr(stop_times_module, "r", fake_r) - with patch( - "schedule_engine.fake_stop_times.build_stop_time_updates", - return_value=[], - ): +class TestProduceStopTimesImpure: + def test_returns_early_when_run_hash_empty(self, monkeypatch): + fake_r = _fake_redis(run_raw={}) + monkeypatch.setattr(stop_times_module, "r", fake_r) produce_stop_times(RUN_ID, VEHICLE_ID) + fake_r.set.assert_not_called() - fake_r.set.assert_called_once() - payload_str = fake_r.set.call_args.args[1] - assert json.loads(payload_str) == [] + def test_returns_early_when_no_position(self, monkeypatch): + fake_r = _fake_redis(pos_raw={}) + monkeypatch.setattr(stop_times_module, "r", fake_r) + produce_stop_times(RUN_ID, VEHICLE_ID) + fake_r.set.assert_not_called() + + def test_does_not_write_when_no_shape(self, monkeypatch): + fake_r = _fake_redis() + monkeypatch.setattr(stop_times_module, "r", fake_r) + with patch( + "runs.domain.progression.stop_times.get_shape_geometry", + return_value=None, + ): + produce_stop_times(RUN_ID, VEHICLE_ID) + fake_r.set.assert_not_called() + + def test_does_not_write_when_compute_returns_empty(self, monkeypatch): + geom = make_straight_geom() + fake_r = _fake_redis() + monkeypatch.setattr(stop_times_module, "r", fake_r) + with ( + patch( + "runs.domain.progression.stop_times.get_shape_geometry", + return_value=geom, + ), + patch( + "runs.domain.progression.stop_times.compute_stop_time_updates", + return_value=[], + ), + ): + produce_stop_times(RUN_ID, VEHICLE_ID) + fake_r.set.assert_not_called() + + def test_writes_correct_key_with_ttl(self, monkeypatch): + geom = make_straight_geom() + fake_r = _fake_redis() + monkeypatch.setattr(stop_times_module, "r", fake_r) + + now_ts = int(datetime.now(tz=timezone.utc).timestamp()) + fake_entries = [ + { + stop_time_updates.STOP_SEQUENCE: 2, + stop_time_updates.STOP_ID: "S2", + stop_time_updates.ARRIVAL_TIME: now_ts + 60, + stop_time_updates.DEPARTURE_TIME: now_ts + 60, + stop_time_updates.UNCERTAINTY: 120, + }, + ] + with ( + patch( + "runs.domain.progression.stop_times.get_shape_geometry", + return_value=geom, + ), + patch( + "runs.domain.progression.stop_times.compute_stop_time_updates", + return_value=fake_entries, + ), + ): + produce_stop_times(RUN_ID, VEHICLE_ID) + + fake_r.set.assert_called_once() + call_args = fake_r.set.call_args + written_key = call_args.args[0] if call_args.args else call_args.kwargs.get("name") + assert written_key == keys.stop_time_updates_key(RUN_ID) + assert call_args.kwargs.get("ex") == STOP_TIME_UPDATES_TTL_S + + def test_written_payload_parses_to_unique_ascending_sequences(self, monkeypatch): + geom = make_straight_geom() + fake_r = _fake_redis() + monkeypatch.setattr(stop_times_module, "r", fake_r) + + now_ts = int(datetime.now(tz=timezone.utc).timestamp()) + fake_entries = [ + { + stop_time_updates.STOP_SEQUENCE: 2, + stop_time_updates.STOP_ID: "S2", + stop_time_updates.ARRIVAL_TIME: now_ts + 60, + stop_time_updates.DEPARTURE_TIME: now_ts + 60, + stop_time_updates.UNCERTAINTY: 120, + }, + { + stop_time_updates.STOP_SEQUENCE: 3, + stop_time_updates.STOP_ID: "S3", + stop_time_updates.ARRIVAL_TIME: now_ts + 120, + stop_time_updates.DEPARTURE_TIME: now_ts + 120, + stop_time_updates.UNCERTAINTY: 120, + }, + ] + with ( + patch( + "runs.domain.progression.stop_times.get_shape_geometry", + return_value=geom, + ), + patch( + "runs.domain.progression.stop_times.compute_stop_time_updates", + return_value=fake_entries, + ), + ): + produce_stop_times(RUN_ID, VEHICLE_ID) + + payload_str = fake_r.set.call_args.args[1] + parsed = stop_time_updates.from_redis(payload_str) + seqs = [e["stop_sequence"] for e in parsed] + assert len(seqs) == len(set(seqs)), f"Duplicate sequences: {seqs}" + assert seqs == sorted(seqs), f"Not ascending: {seqs}" # --------------------------------------------------------------------------- -# Test 4 — TTL constant is 60 +# Builder hardening: unsorted/duplicate projection is sorted+deduped # --------------------------------------------------------------------------- -def test_ttl_constant_is_60(): - assert STOP_TIME_UPDATES_TTL_S == 60 +class FakeRedis: + """Minimal dict-backed Redis stub for builder tests.""" + + def __init__(self, data: dict): + self._data = data + + def hgetall(self, key: str) -> dict: + val = self._data.get(key, {}) + return dict(val) if isinstance(val, dict) else {} + + def smembers(self, key: str) -> set: + val = self._data.get(key, set()) + return set(val) if isinstance(val, set) else set() + + def get(self, key: str) -> str | None: + val = self._data.get(key) + return val if isinstance(val, str) else None + + +_BUILDER_RUN_ID = "run-b1" +_BUILDER_VID = "V-b1" + + +def _builder_redis_data(projection_entries: list[dict]) -> dict: + return { + "runs:in_progress": {_BUILDER_RUN_ID}, + f"run:{_BUILDER_RUN_ID}": { + "vehicle": _BUILDER_VID, + "trip_id": "trip-x", + "route_id": "route-x", + "schedule_relationship": "SCHEDULED", + }, + f"run:{_BUILDER_RUN_ID}:trip": { + "trip_id": "trip-x", + "route_id": "route-x", + "schedule_relationship": "SCHEDULED", + }, + f"vehicle:{_BUILDER_VID}:position": { + "latitude": "9.900", + "longitude": "-84.0", + "timestamp": "1700000000", + }, + f"vehicle:{_BUILDER_VID}:metadata": { + "id": _BUILDER_VID, + "label": "Bus B1", + }, + f"run:{_BUILDER_RUN_ID}:vehicle_stop_status": { + "current_stop_sequence": "1", + "current_status": "IN_TRANSIT_TO", + }, + keys.stop_time_updates_key(_BUILDER_RUN_ID): stop_time_updates.to_redis( + projection_entries + ), + } + + +class TestBuilderHardening: + def test_unsorted_projection_is_sorted_ascending(self): + now = int(datetime.now(tz=timezone.utc).timestamp()) + # Deliberately reverse order: seq 5 before seq 2 + entries = [ + { + stop_time_updates.STOP_SEQUENCE: 5, + stop_time_updates.STOP_ID: "S5", + stop_time_updates.ARRIVAL_TIME: now + 200, + stop_time_updates.DEPARTURE_TIME: now + 200, + stop_time_updates.UNCERTAINTY: 120, + }, + { + stop_time_updates.STOP_SEQUENCE: 2, + stop_time_updates.STOP_ID: "S2", + stop_time_updates.ARRIVAL_TIME: now + 100, + stop_time_updates.DEPARTURE_TIME: now + 100, + stop_time_updates.UNCERTAINTY: 120, + }, + ] + r = FakeRedis(_builder_redis_data(entries)) + entity = build_trip_update_entity(r, _BUILDER_RUN_ID) + assert entity is not None + updates = entity["trip_update"]["stop_time_update"] + seqs = [u["stop_sequence"] for u in updates] + assert seqs == sorted(seqs), f"Not sorted: {seqs}" + + def test_duplicate_sequences_are_deduped(self): + now = int(datetime.now(tz=timezone.utc).timestamp()) + # Two entries with same stop_sequence=3 + entries = [ + { + stop_time_updates.STOP_SEQUENCE: 3, + stop_time_updates.STOP_ID: "S3-a", + stop_time_updates.ARRIVAL_TIME: now + 100, + stop_time_updates.DEPARTURE_TIME: now + 100, + stop_time_updates.UNCERTAINTY: 120, + }, + { + stop_time_updates.STOP_SEQUENCE: 3, + stop_time_updates.STOP_ID: "S3-b", + stop_time_updates.ARRIVAL_TIME: now + 110, + stop_time_updates.DEPARTURE_TIME: now + 110, + stop_time_updates.UNCERTAINTY: 120, + }, + { + stop_time_updates.STOP_SEQUENCE: 5, + stop_time_updates.STOP_ID: "S5", + stop_time_updates.ARRIVAL_TIME: now + 200, + stop_time_updates.DEPARTURE_TIME: now + 200, + stop_time_updates.UNCERTAINTY: 120, + }, + ] + r = FakeRedis(_builder_redis_data(entries)) + entity = build_trip_update_entity(r, _BUILDER_RUN_ID) + assert entity is not None + updates = entity["trip_update"]["stop_time_update"] + seqs = [u["stop_sequence"] for u in updates] + assert len(seqs) == len(set(seqs)), f"Duplicates remain: {seqs}" + assert len(seqs) == 2 # seq 3 (first kept) + seq 5 + + def test_first_of_duplicate_is_kept(self): + """When two entries share a stop_sequence, the first (lower arrival) is kept.""" + now = int(datetime.now(tz=timezone.utc).timestamp()) + entries = [ + { + stop_time_updates.STOP_SEQUENCE: 3, + stop_time_updates.STOP_ID: "S3-first", + stop_time_updates.ARRIVAL_TIME: now + 100, + stop_time_updates.DEPARTURE_TIME: now + 100, + stop_time_updates.UNCERTAINTY: 120, + }, + { + stop_time_updates.STOP_SEQUENCE: 3, + stop_time_updates.STOP_ID: "S3-second", + stop_time_updates.ARRIVAL_TIME: now + 110, + stop_time_updates.DEPARTURE_TIME: now + 110, + stop_time_updates.UNCERTAINTY: 120, + }, + ] + r = FakeRedis(_builder_redis_data(entries)) + entity = build_trip_update_entity(r, _BUILDER_RUN_ID) + updates = entity["trip_update"]["stop_time_update"] + assert updates[0]["stop_id"] == "S3-first" diff --git a/backend/runs/models.py b/backend/runs/models.py index 1ee4e40..94e8b70 100644 --- a/backend/runs/models.py +++ b/backend/runs/models.py @@ -1,3 +1,5 @@ +"""Django ORM models for run assignment, lifecycle audit trail, and per-tick telemetry snapshots.""" + from django.contrib.gis.db import models from operations.models import Vehicle, Operator from runs.domain.lifecycle import RunLifecycleStates, choices @@ -47,11 +49,14 @@ class Run(models.Model): ) last_event_at = models.DateTimeField(blank=True, null=True) - def __str__(self): + def __str__(self) -> str: + """Return a human-readable "route/trip (date)" label for admin and logs.""" return f"{self.route_id} / {self.trip_id} ({self.start_date})" class RunLifecycleTransition(models.Model): + """Immutable audit record of one FSM transition attempt (successful or rejected) for a run.""" + id = models.UUIDField(primary_key=True, default=uuid.uuid7, editable=False) run = models.ForeignKey(Run, on_delete=models.CASCADE) event_name = models.CharField(max_length=128) @@ -69,23 +74,9 @@ class Meta: ] -class RunProgressEvent(models.Model): - id = models.UUIDField(primary_key=True, default=uuid.uuid7, editable=False) - run = models.ForeignKey(Run, on_delete=models.CASCADE) - event_type = models.CharField(max_length=128) - stop_id = models.CharField(max_length=64, null=True) - payload = models.JSONField(default=dict) - timestamp = models.DateTimeField() - created_at = models.DateTimeField(auto_now_add=True) - - class Meta: - indexes = [ - models.Index(fields=["run", "timestamp"]), - models.Index(fields=["event_type"]), - ] - - class Position(models.Model): + """One GPS/motion sample for a vehicle at a point in time.""" + vehicle = models.ForeignKey(Vehicle, on_delete=models.PROTECT) timestamp = models.DateTimeField() point = models.PointField(blank=True, null=True) @@ -97,6 +88,8 @@ class Position(models.Model): class VehicleStopStatus(models.Model): + """Snapshot of a vehicle's relationship to its current/next stop (GTFS-RT VehicleStopStatus).""" + vehicle = models.ForeignKey(Vehicle, on_delete=models.PROTECT) timestamp = models.DateTimeField(auto_now_add=True) current_stop_sequence = models.PositiveIntegerField(blank=True, null=True) @@ -114,6 +107,8 @@ class VehicleStopStatus(models.Model): class CongestionLevel(models.Model): + """Snapshot of a vehicle's congestion level (GTFS-RT CongestionLevel; producer not yet implemented).""" + vehicle = models.ForeignKey(Vehicle, on_delete=models.PROTECT) timestamp = models.DateTimeField(auto_now_add=True) congestion_level = models.CharField( @@ -131,6 +126,8 @@ class CongestionLevel(models.Model): class OccupancyStatus(models.Model): + """Snapshot of a vehicle's passenger occupancy (GTFS-RT OccupancyStatus).""" + vehicle = models.ForeignKey(Vehicle, on_delete=models.PROTECT) timestamp = models.DateTimeField(auto_now_add=True) occupancy_status = models.CharField( diff --git a/backend/runs/services/exceptions.py b/backend/runs/services/exceptions.py index 949e448..e415344 100644 --- a/backend/runs/services/exceptions.py +++ b/backend/runs/services/exceptions.py @@ -1,6 +1,11 @@ +"""Domain exception raised when a run lifecycle guard or action rejects a transition.""" + from typing import Any class RunLifecycleError(Exception): - def __init__(self, errors: dict[str, Any]): + """Raised when a guard rejects a transition or an action fails, carrying field-level error detail.""" + + def __init__(self, errors: dict[str, Any]) -> None: + """Store the field-level error detail dict for the caller (e.g. DRF serialization).""" self.errors = errors diff --git a/backend/runs/services/lifecycle.py b/backend/runs/services/lifecycle.py index 97b9653..b7a5e9c 100644 --- a/backend/runs/services/lifecycle.py +++ b/backend/runs/services/lifecycle.py @@ -1,5 +1,8 @@ -from typing import Any +"""Drive Run FSM transitions: find candidates, check guards, execute actions, and persist the outcome.""" + +from typing import Any, cast from django.utils.timezone import now +from messages.publisher import publish_event from runs.domain.lifecycle import RunLifecycleEvents from runs.domain.lifecycle import RunLifecycleStates from runs.domain.lifecycle import Transition @@ -9,12 +12,16 @@ class RunLifecycleService: + """Execute run lifecycle events against the table-driven FSM, auditing every attempt.""" + def __init__(self) -> None: + """Initialize the transition registry used to look up candidate transitions.""" self.registry: TransitionRegistry = TransitionRegistry() def process_event( self, event: RunLifecycleEvents, payload: dict[str, Any] ) -> tuple[RunLifecycleStates, dict[str, bool], dict[str, bool]]: + """Apply `event` to the run's current state, or raise RunLifecycleError if no transition succeeds.""" run = self._load_run(payload) candidates = self.registry.find(run.run_lifecycle_state, event) attempts: list[dict[str, Any]] = [] @@ -39,12 +46,23 @@ def process_event( { "detail": f"No valid transition for event '{event}' from state '{run.run_lifecycle_state}'.", "attempts": attempts, + "current_state": run.run_lifecycle_state, } ) def _load_run(self, payload: dict[str, Any]) -> Run: + """Look up the Run named by payload["run_id"], failing fast if it's absent.""" run_id = payload.get("run_id") - return Run.objects.get(id=run_id) + if not run_id: + # Without this, a payload missing run_id falls through to + # Run.objects.get(id=None), which never matches and surfaces as a + # confusing Run.DoesNotExist. Raise the app's own lifecycle error + # instead so existing RunLifecycleError handlers (API views, + # realtime_engine.tasks.run_lifecycle_event) already catch it. + raise RunLifecycleError({"detail": "lifecycle event payload missing run_id"}) + # payload is dict[str, Any], so .get() is typed as Any | None; cast is a + # static-only narrowing — run_id is confirmed truthy by the check above. + return Run.objects.get(id=cast(str, run_id)) def _check_guards( self, run: Run, transition: Transition, payload: dict[str, Any] @@ -81,7 +99,7 @@ def _apply_transition( except RunLifecycleError as exc: raise RunLifecycleError({"detail": str(exc)}) from exc self._update_run_lifecycle_state(run, transition, payload) - self._publish_run_lifecycle_transition(run, transition.to_state) + self._publish_run_lifecycle_transition(run, transition, payload) return transition.to_state, actions def _update_run_lifecycle_state( @@ -92,9 +110,26 @@ def _update_run_lifecycle_state( run.save() def _publish_run_lifecycle_transition( - self, run: Run, new: RunLifecycleStates + self, run: Run, transition: "Transition", payload: dict[str, Any] ) -> None: - pass + """Publish the completed transition as a run lifecycle domain event (fire-and-forget).""" + data: dict[str, Any] = {} + vehicle_id = payload.get("vehicle_id") or run.vehicle.values_list( + "id", flat=True + ).first() + if vehicle_id: + data["vehicle_id"] = str(vehicle_id) + if run.trip_id: + data["trip_id"] = run.trip_id + if run.route_id: + data["route_id"] = run.route_id + publish_event( + event=transition.event.value, + run_id=run.id, + from_state=transition.from_state.value, + to_state=transition.to_state.value, + data=data, + ) def _persist_run_lifecycle_transition( self, diff --git a/backend/runs/services/progress.py b/backend/runs/services/progress.py deleted file mode 100644 index 15004a0..0000000 --- a/backend/runs/services/progress.py +++ /dev/null @@ -1,61 +0,0 @@ -from runs.models import Run - - -class RunProgressService: - def process_event(self, event, payload): - run = self._load_run(payload) - if not self._is_active(run): - return None - context = self._build_context(run, payload) - detected_events = self._detect_events(run, event, payload, context) - return self._persist_events(run, detected_events) - - def _load_run(self, payload): - run_id = payload.get("run_id") - return Run.objects.get(id=run_id) - - def _is_active(self, run): - return run.run_lifecycle_state == "IN_PROGRESS" - - def _build_context(self, run, payload): - context = { - "timestamp": payload.get("timestamp"), - "position": payload.get("position"), - "speed": payload.get("speed"), - # TODO: - # - last known position (Redis) - # - stop sequence (GTFS) - # - shape - } - return context - - def _detect_events(self, run, event, payload, context): - detected = [] - if event == "vehicle_position_updated": - detected.extend(self._detect_stop_events(run, context)) - detected.extend(self._detect_movement_events(run, context)) - return detected - - def _detect_stop_events(self, run, context): - events = [] - current_stop = 1 # self._infer_current_stop(run, context) - if current_stop and not self._was_at_stop(run, current_stop): - events.append( - { - "type": "vehicle_arrived_at_stop", - "stop_id": current_stop, - "timestamp": context["timestamp"], - } - ) - return events - - def _detect_movement_events(self, run, context): - events = [] - if context["speed"] > 5: - events.append( - { - "type": "vehicle_moving", - "timestamp": context["timestamp"], - } - ) - return events diff --git a/backend/runs/services/registry.py b/backend/runs/services/registry.py index 8d71b2a..a33c5fa 100644 --- a/backend/runs/services/registry.py +++ b/backend/runs/services/registry.py @@ -1,6 +1,17 @@ -from runs.domain.lifecycle import TRANSITIONS +"""Look up FSM transitions for a given run lifecycle state and event.""" + +from runs.domain.lifecycle import TRANSITIONS, RunLifecycleEvents, Transition class TransitionRegistry: - def find(self, state, event): + """Query the static TRANSITIONS table for candidate run lifecycle transitions.""" + + def find(self, state: str | None, event: RunLifecycleEvents) -> list[Transition]: + """Return the transitions whose from_state and event match, in table order. + + `state` accepts a plain string because callers pass the Run model's raw + `run_lifecycle_state` CharField value; `RunLifecycleStates` is itself a + `str` subclass so the `==` comparison against `Transition.from_state` + works for either a raw string or an enum member. + """ return [t for t in TRANSITIONS if t.from_state == state and t.event == event] diff --git a/backend/runs/services/tests/__init__.py b/backend/runs/services/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/runs/services/tests/test_lifecycle.py b/backend/runs/services/tests/test_lifecycle.py new file mode 100644 index 0000000..ba5cba4 --- /dev/null +++ b/backend/runs/services/tests/test_lifecycle.py @@ -0,0 +1,145 @@ +"""Unit tests for RunLifecycleService._publish_run_lifecycle_transition. + +No database access: a bare `RunLifecycleService()` only builds a +`TransitionRegistry` in `__init__`, and `_publish_run_lifecycle_transition` +only reads attributes off `run`/`transition`/`payload` before delegating to +`messages.publisher.publish_event`, which is monkeypatched here. Real +`Transition`/`RunLifecycleEvents`/`RunLifecycleStates` domain objects are +used (they carry no DB dependency); `run` is a lightweight fake standing in +for a `Run` model instance. +""" + +from unittest.mock import MagicMock + +import pytest + +from runs.domain.lifecycle import RunLifecycleEvents, RunLifecycleStates, Transition +from runs.services.exceptions import RunLifecycleError +from runs.services.lifecycle import RunLifecycleService + + +class _FakeVehicleManager: + """Stands in for Run.vehicle (a ManyToManyField manager).""" + + def __init__(self, vehicle_ids): + self._vehicle_ids = list(vehicle_ids) + + def values_list(self, *args, **kwargs): + return self + + def first(self): + return self._vehicle_ids[0] if self._vehicle_ids else None + + +class _FakeRun: + def __init__(self, run_id="run-1", trip_id=None, route_id=None, vehicle_ids=()): + self.id = run_id + self.trip_id = trip_id + self.route_id = route_id + self.vehicle = _FakeVehicleManager(vehicle_ids) + + +def _transition(event=RunLifecycleEvents.RUN_CONFIRMED_BY_OPERATOR): + return Transition( + from_state=RunLifecycleStates.INITIALIZED, + event=event, + to_state=RunLifecycleStates.CONFIRMED, + guards=[], + actions=[], + ) + + +def _service() -> RunLifecycleService: + return RunLifecycleService() + + +def test_publish_composes_event_and_states(monkeypatch): + mock_publish = MagicMock() + monkeypatch.setattr("runs.services.lifecycle.publish_event", mock_publish) + + run = _FakeRun(run_id="run-1") + transition = _transition() + + _service()._publish_run_lifecycle_transition(run, transition, {}) + + mock_publish.assert_called_once_with( + event="run_confirmed_by_operator", + run_id="run-1", + from_state=RunLifecycleStates.INITIALIZED.value, + to_state=RunLifecycleStates.CONFIRMED.value, + data={}, + ) + + +def test_publish_includes_trip_and_route_ids_when_present(monkeypatch): + mock_publish = MagicMock() + monkeypatch.setattr("runs.services.lifecycle.publish_event", mock_publish) + + run = _FakeRun(run_id="run-1", trip_id="T1", route_id="R1") + transition = _transition() + + _service()._publish_run_lifecycle_transition(run, transition, {}) + + _, kwargs = mock_publish.call_args + assert kwargs["data"] == {"trip_id": "T1", "route_id": "R1"} + + +def test_publish_falls_back_to_run_vehicle_when_payload_has_no_vehicle_id(monkeypatch): + mock_publish = MagicMock() + monkeypatch.setattr("runs.services.lifecycle.publish_event", mock_publish) + + run = _FakeRun(run_id="run-1", vehicle_ids=["veh-9"]) + transition = _transition() + + _service()._publish_run_lifecycle_transition(run, transition, {}) + + _, kwargs = mock_publish.call_args + assert kwargs["data"]["vehicle_id"] == "veh-9" + + +def test_publish_prefers_payload_vehicle_id_over_run_vehicle(monkeypatch): + mock_publish = MagicMock() + monkeypatch.setattr("runs.services.lifecycle.publish_event", mock_publish) + + run = _FakeRun(run_id="run-1", vehicle_ids=["veh-9"]) + transition = _transition() + + _service()._publish_run_lifecycle_transition( + run, transition, {"vehicle_id": "veh-override"} + ) + + _, kwargs = mock_publish.call_args + assert kwargs["data"]["vehicle_id"] == "veh-override" + + +def test_publish_omits_absent_fields(monkeypatch): + mock_publish = MagicMock() + monkeypatch.setattr("runs.services.lifecycle.publish_event", mock_publish) + + run = _FakeRun(run_id="run-1") + transition = _transition() + + _service()._publish_run_lifecycle_transition(run, transition, {}) + + _, kwargs = mock_publish.call_args + assert "vehicle_id" not in kwargs["data"] + assert "trip_id" not in kwargs["data"] + assert "route_id" not in kwargs["data"] + + +# --------------------------------------------------------------------------- +# _load_run: a payload missing run_id must fail fast with a clear error +# instead of a confusing Run.DoesNotExist from `WHERE id IS NULL`. +# --------------------------------------------------------------------------- + + +def test_load_run_raises_lifecycle_error_when_run_id_absent(): + with pytest.raises(RunLifecycleError) as exc_info: + _service()._load_run({}) + assert "missing run_id" in exc_info.value.errors["detail"] + + +def test_load_run_raises_lifecycle_error_when_run_id_falsy(): + with pytest.raises(RunLifecycleError) as exc_info: + _service()._load_run({"run_id": None}) + assert "missing run_id" in exc_info.value.errors["detail"] diff --git a/backend/runs/tests.py b/backend/runs/tests.py deleted file mode 100644 index 7ce503c..0000000 --- a/backend/runs/tests.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.test import TestCase - -# Create your tests here. diff --git a/backend/runs/views.py b/backend/runs/views.py index 91ea44a..83efdd0 100644 --- a/backend/runs/views.py +++ b/backend/runs/views.py @@ -1,3 +1,3 @@ -from django.shortcuts import render +"""Placeholder for runs app HTTP views (none defined yet — run mutations go through the API app).""" # Create your views here. diff --git a/backend/schedule_engine/README.md b/backend/schedule_engine/README.md index ba7d3d7..6efd198 100644 --- a/backend/schedule_engine/README.md +++ b/backend/schedule_engine/README.md @@ -1,14 +1,40 @@ -# MQTT topics and Redis keys - -```mermaid -mindmap - root((transit)) - vehicle - vehicle_id - data - position - progression - occupancy -``` - -MQTT topics are mapped 1:1 into Redis keys. +# schedule_engine + +Celery worker (queue `schedule_engine`) that builds the GTFS-RT feeds and the +GTFS Schedule zip. It only ever **reads** the real-time Redis state — +`realtime_engine` is the sole writer. + +## Tasks (`tasks.py`) + +| Task | Beat schedule | What it does | +|---|---|---| +| `build_vehicle_positions` | every 15 s | Reads Redis via `builders.build_vehicle_positions_feed`, writes `feed/files/vehicle_positions.json` + `.pb` (GTFS-RT `FeedMessage`, protobuf). | +| `build_trip_updates` | every 15 s | Same, via `build_trip_updates_feed` → `feed/files/trip_updates.json` + `.pb`. Also broadcasts a build-status message (`last_update`, count of `runs:in_progress`) to the `status` WebSocket group. | +| `build_schedule` | daily | Exports the current GTFS `Feed` (`is_current=True`) to a zip via `feed.schedule.exporter.publish_gtfs_zip`; skips (returns `None`, logs a warning) if no current feed exists. | +| `build_alerts` | **not scheduled** | Placeholder — returns a fixed string. The ServiceAlert feed builder is not yet implemented and this task is deliberately not registered in `databus/celery.py`'s `beat_schedule`. | + +Beat schedule is defined in `databus/celery.py` (`app.conf.beat_schedule`), +not Django admin. + +`build_vehicle_positions_feed` / `build_trip_updates_feed` +(`builders.py`) read the entity hashes `realtime_engine` writes — +`run:` / `run::trip` / `run::vehicle_stop_status` / +`run::stop_time_updates`, `vehicle::position` / +`vehicle::occupancy` / `vehicle::metadata` — over the run IDs in +`runs:in_progress`. See `runs/domain/telemetry/keys.py` for the canonical +key templates. + +## WebSocket consumer (`consumers.py`, `routing.py`) + +`StatusConsumer` (`AsyncWebsocketConsumer`) joins/broadcasts on the `status` +channel-layer group at `ws/status/`. `build_trip_updates` sends a status +message to that group after each build; `StatusConsumer.receive` also +re-broadcasts any client-sent message to the group, and `status_message` +forwards group events out to each connected socket. + +## Notes + +- `filters.py` has been removed from this app; there are no remaining + references to it. +- No feed-building code runs inline in the WebSocket path — `consumers.py` + only relays status, it never reads Redis or writes feed files itself. diff --git a/backend/schedule_engine/admin.py b/backend/schedule_engine/admin.py index 8c38f3f..9b66e7f 100644 --- a/backend/schedule_engine/admin.py +++ b/backend/schedule_engine/admin.py @@ -1,3 +1,3 @@ -from django.contrib import admin +"""Django admin registrations for schedule_engine (none; the app has no models).""" # Register your models here. diff --git a/backend/schedule_engine/apps.py b/backend/schedule_engine/apps.py index 74bc222..5713ad4 100644 --- a/backend/schedule_engine/apps.py +++ b/backend/schedule_engine/apps.py @@ -1,6 +1,10 @@ +"""Django app configuration for schedule_engine.""" + from django.apps import AppConfig class ScheduleEngineConfig(AppConfig): + """Django app config for schedule_engine, the GTFS-RT feed-projection app.""" + default_auto_field = "django.db.models.BigAutoField" name = "schedule_engine" diff --git a/backend/schedule_engine/aux_files/route_stops.csv b/backend/schedule_engine/aux_files/route_stops.csv deleted file mode 100644 index a04bad2..0000000 --- a/backend/schedule_engine/aux_files/route_stops.csv +++ /dev/null @@ -1,61 +0,0 @@ -route_id,shape_id,direction_id,stop_id,stop_sequence,timepoint -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_00,0,1 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_04,1,0 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_05,2,0 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_06,3,0 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_07,4,0 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_08,5,0 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_09,6,0 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_10,7,0 -bUCR_L2,desde_educacion_sin_milla,0,UCR_0_11,8,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_00,0,1 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_02,1,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_03,2,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_04,3,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_05,4,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_06,5,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_07,6,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_08,7,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_09,8,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_10,9,0 -bUCR_L1,desde_educacion_con_milla,0,UCR_0_11,10,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_01,0,1 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_04,1,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_05,2,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_06,3,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_07,4,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_08,5,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_09,6,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_10,7,0 -bUCR_L2,desde_artes_sin_milla,0,UCR_0_11,8,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_01,0,1 -bUCR_L1,desde_artes_con_milla,0,UCR_0_02,1,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_03,2,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_04,3,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_05,4,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_06,5,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_07,6,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_08,7,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_09,8,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_10,9,0 -bUCR_L1,desde_artes_con_milla,0,UCR_0_11,10,0 -bUCR_L1,hacia_educacion,1,UCR_1_00,0,1 -bUCR_L1,hacia_educacion,1,UCR_1_01,1,0 -bUCR_L1,hacia_educacion,1,UCR_1_02,2,0 -bUCR_L1,hacia_educacion,1,UCR_1_03,3,0 -bUCR_L1,hacia_educacion,1,UCR_1_04,4,0 -bUCR_L1,hacia_educacion,1,UCR_1_05,5,0 -bUCR_L1,hacia_educacion,1,UCR_1_06,6,0 -bUCR_L1,hacia_educacion,1,UCR_1_07,7,0 -bUCR_L1,hacia_educacion,1,UCR_1_08,8,0 -bUCR_L1,hacia_educacion,1,UCR_1_09,9,0 -bUCR_L1,hacia_artes,1,UCR_1_00,0,1 -bUCR_L1,hacia_artes,1,UCR_1_01,1,0 -bUCR_L1,hacia_artes,1,UCR_1_02,2,0 -bUCR_L1,hacia_artes,1,UCR_1_03,3,0 -bUCR_L1,hacia_artes,1,UCR_1_04,4,0 -bUCR_L1,hacia_artes,1,UCR_1_05,5,0 -bUCR_L1,hacia_artes,1,UCR_1_06,6,0 -bUCR_L1,hacia_artes,1,UCR_1_07,7,0 -bUCR_L1,hacia_artes,1,UCR_1_08,8,0 -bUCR_L1,hacia_artes,1,UCR_1_10,10,0 \ No newline at end of file diff --git a/backend/schedule_engine/builders.py b/backend/schedule_engine/builders.py index 8af9acc..a92ed29 100644 --- a/backend/schedule_engine/builders.py +++ b/backend/schedule_engine/builders.py @@ -14,6 +14,7 @@ """ from datetime import datetime +from typing import Protocol from runs.domain.telemetry import ( congestion_level, @@ -26,6 +27,33 @@ ) +class RedisLike(Protocol): + """Structural type for the Redis client surface these builders call. + + Declared with plain (non-``Awaitable``) return types on purpose: redis-py's + stubs type every command ``Awaitable[X] | X`` since the mixin is shared + with the async client, but callers here always pass the synchronous, + ``decode_responses=True`` client. Typing the parameter against this + narrower structural protocol — rather than ``redis.Redis`` directly — + resolves calls like ``r.hgetall(...)`` to the plain ``X`` branch without + per-call casts, and lets tests pass a dict-backed fake instead of a real + client. Real callers narrow at the boundary (see ``tasks.py``), mirroring + the cast-helper idiom in ``runs/domain/progression/producer.py``. + """ + + def hgetall(self, key: str) -> dict[str, str]: + """Return the hash stored at ``key`` as a string-keyed, string-valued dict.""" + ... + + def smembers(self, key: str) -> set[str]: + """Return the members of the set stored at ``key``.""" + ... + + def get(self, key: str) -> str | None: + """Return the string value stored at ``key``, or ``None`` if absent.""" + ... + + # --------------------------------------------------------------------------- # Shared helpers # --------------------------------------------------------------------------- @@ -46,7 +74,7 @@ def get_entity_id(vehicle_id: str) -> str: # --------------------------------------------------------------------------- -def build_vehicle_position_entity(r, run_id: str) -> dict | None: +def build_vehicle_position_entity(r: RedisLike, run_id: str) -> dict | None: """Assemble one GTFS-RT VehiclePosition entity dict from Redis. Reads the per-entity hashes (written by the MQTT consumer and lifecycle @@ -135,7 +163,7 @@ def build_vehicle_position_entity(r, run_id: str) -> dict | None: return entity -def build_trip_update_entity(r, run_id: str) -> dict | None: +def build_trip_update_entity(r: RedisLike, run_id: str) -> dict | None: """Assemble one GTFS-RT TripUpdate entity dict from Redis. Returns ``None`` when neither position nor stop-status data are present @@ -201,8 +229,20 @@ def build_trip_update_entity(r, run_id: str) -> dict | None: # entries in the feed). raw = r.get(keys.stop_time_updates_key(run_id)) entries = stop_time_updates.from_redis(raw) + + # Defensive sort + dedup: the producer already guarantees ordering and + # uniqueness, but belt-and-suspenders here ensures a corrupt projection + # never produces an invalid GTFS-RT feed. + seen_seqs: set[int] = set() + deduped_entries: list[dict] = [] + for entry in sorted(entries, key=lambda e: e["stop_sequence"]): + seq = entry["stop_sequence"] + if seq not in seen_seqs: + seen_seqs.add(seq) + deduped_entries.append(entry) + tu["stop_time_update"] = [] - for u in entries: + for u in deduped_entries: tu["stop_time_update"].append( { "stop_sequence": u["stop_sequence"], @@ -226,7 +266,7 @@ def build_trip_update_entity(r, run_id: str) -> dict | None: # --------------------------------------------------------------------------- -def build_vehicle_positions_feed(r) -> dict: +def build_vehicle_positions_feed(r: RedisLike) -> dict: """Build a complete GTFS-RT VehiclePositions FeedMessage dict. Iterates ``runs:in_progress``, assembles one entity per run via @@ -260,7 +300,7 @@ def build_vehicle_positions_feed(r) -> dict: return feed -def build_trip_updates_feed(r) -> dict: +def build_trip_updates_feed(r: RedisLike) -> dict: """Build a complete GTFS-RT TripUpdates FeedMessage dict. Iterates ``runs:in_progress``, assembles one entity per run via diff --git a/backend/schedule_engine/consumers.py b/backend/schedule_engine/consumers.py index 050b410..a47b6c6 100644 --- a/backend/schedule_engine/consumers.py +++ b/backend/schedule_engine/consumers.py @@ -1,25 +1,35 @@ +"""ASGI WebSocket consumer broadcasting schedule_engine build status to clients.""" + import json +from typing import Any + from channels.generic.websocket import AsyncWebsocketConsumer class StatusConsumer(AsyncWebsocketConsumer): - async def connect(self): + """WebSocket consumer that joins the ``status`` group and relays build-status messages.""" + + async def connect(self) -> None: + """Join the ``status`` broadcast group and accept the WebSocket connection.""" self.status_group_name = "status" await self.channel_layer.group_add(self.status_group_name, self.channel_name) await self.accept() - async def disconnect(self, close_code): + async def disconnect(self, close_code: int) -> None: + """Leave the ``status`` broadcast group when the socket disconnects.""" await self.channel_layer.group_discard( self.status_group_name, self.channel_name ) - async def receive(self, text_data): + async def receive(self, text_data: str) -> None: + """Re-broadcast an incoming client message to the ``status`` group.""" text_data_json = json.loads(text_data) message = text_data_json["message"] await self.channel_layer.group_send( self.status_group_name, {"type": "status_message", "message": message} ) - async def status_message(self, event): + async def status_message(self, event: dict[str, Any]) -> None: + """Forward a ``status_message`` group event to this consumer's socket.""" message = event["message"] await self.send(text_data=json.dumps({"message": message})) diff --git a/backend/schedule_engine/fake_stop_times.py b/backend/schedule_engine/fake_stop_times.py deleted file mode 100644 index fa26369..0000000 --- a/backend/schedule_engine/fake_stop_times.py +++ /dev/null @@ -1,163 +0,0 @@ -# For the _fake_stop_times method (temporary!) -import logging -import random -from datetime import datetime, timedelta -from pathlib import Path -from typing import Any - -import numpy as np -import pandas as pd - -logger = logging.getLogger(__name__) - -_CSV_FILE_PATH = Path(__file__).resolve().parent / "aux_files" / "route_stops.csv" -# Time in seconds -_UNCERTAINTY_S = 120 -_TIME_OFFSET_MIN_S = 150 -_TIME_OFFSET_MAX_S = 300 -_ARRIVAL_MAX_MIN = 5 - - -def _load_route_stops(csv_file_path) -> pd.DataFrame: - """Load route stops from a CSV file. - - Parameters: - csv_file_path: Name of CSV file with route stops. - - Returns: - pd.DataFrame: Information of CSV file as a Pandas DataFrame. - """ - return pd.read_csv(csv_file_path, dtype={"stop_sequence": np.uint32}) - - -def _generate_stop_entry( - arrival_time, stop_sequence, stop_id, uncertainty -) -> dict[str, Any]: - """Generate a stop entry with given parameters. - - Parameters: - arrival_time: Estimated time of arrival to stop as absolute time. In POSIX time. - stop_sequence: Order of stops in route. - stop_id: ID of stop. - uncertainty: Margin of error in the estimated time of arrival. - - Returns: - dict[str, Any]: A dictionary entry with stop time updates. - """ - return { - "stop_sequence": int(stop_sequence), - "stop_id": str(stop_id), - "eta_posix": int(arrival_time.timestamp()), - "uncertainty": uncertainty, - } - - -def _safe_int(value, default: int = -1) -> int: - """Coerce a Redis-string value to int, returning ``default`` on failure.""" - try: - return int(value) - except (TypeError, ValueError): - return default - - -def build_stop_time_updates(run, progression) -> list[dict[str, Any]]: - """Generate fake stop times for the given run. - - Parameters: - run: Mapping with at least ``route_id`` and ``shape_id`` keys - (typically a Redis hash dict). - progression: Mapping with ``current_stop_sequence`` and - ``current_status`` keys (typically a Redis hash dict). - - Returns: - list[dict[str, Any]]: A list of dictionaries with stop time updates. - """ - stop_time_update: list[dict[str, Any]] = [] - - run = run or {} - progression = progression or {} - - route_id = str(run.get("route_id") or "").strip() - shape_id = str(run.get("shape_id") or "").strip() - if not route_id: - logger.warning("build_stop_time_updates: run missing route_id (run=%s)", run) - return stop_time_update - - try: - route_stops = _load_route_stops(csv_file_path=_CSV_FILE_PATH) - except FileNotFoundError: - logger.exception("Route stops CSV not found at %s", _CSV_FILE_PATH) - return stop_time_update - - # Primary match: route_id AND shape_id - filtered_stops = route_stops[ - (route_stops["route_id"].astype(str) == route_id) - & (route_stops["shape_id"].astype(str) == shape_id) - ] - - # Fallback: match on route_id only (if shape_id is unknown or unmapped) - if filtered_stops.empty: - logger.info( - "No CSV rows for route_id=%r shape_id=%r — falling back to route_id only", - route_id, - shape_id, - ) - filtered_stops = route_stops[ - route_stops["route_id"].astype(str) == route_id - ] - - if filtered_stops.empty: - logger.warning( - "build_stop_time_updates: no stops for route_id=%r (CSV has routes=%s)", - route_id, - sorted(route_stops["route_id"].astype(str).unique().tolist()), - ) - return stop_time_update - - # Ensure ascending order so we walk stops in sequence - filtered_stops = filtered_stops.sort_values("stop_sequence") - - current_stop_sequence = _safe_int( - progression.get("current_stop_sequence"), default=-1 - ) - current_status = (progression.get("current_status") or "").upper() - - arrival_time = datetime.now() + timedelta( - minutes=random.randint(0, _ARRIVAL_MAX_MIN) - ) - - for _, row in filtered_stops.iterrows(): - stop_sequence = int(row["stop_sequence"]) - - # Skip stops the vehicle has already passed - if stop_sequence < current_stop_sequence: - continue - - # If the bus is currently stopped at this sequence, the next ETA is - # the following stop, so skip the current one. - if ( - current_status == "STOPPED_AT" - and stop_sequence == current_stop_sequence - ): - continue - - stop_entry = _generate_stop_entry( - arrival_time=arrival_time, - stop_sequence=stop_sequence, - stop_id=row["stop_id"], - uncertainty=_UNCERTAINTY_S, - ) - stop_time_update.append(stop_entry) - arrival_time += timedelta( - seconds=random.randint(_TIME_OFFSET_MIN_S, _TIME_OFFSET_MAX_S) - ) - - logger.debug( - "build_stop_time_updates: route_id=%s shape_id=%s current_seq=%s status=%s -> %d stops", - route_id, - shape_id, - current_stop_sequence, - current_status, - len(stop_time_update), - ) - return stop_time_update diff --git a/backend/schedule_engine/filters.py b/backend/schedule_engine/filters.py deleted file mode 100644 index 7671eb4..0000000 --- a/backend/schedule_engine/filters.py +++ /dev/null @@ -1,10 +0,0 @@ -import django_filters -from .models import EquipmentLog - - -class EquipmentLogFilter(django_filters.FilterSet): - class Meta: - model = EquipmentLog - fields = { - "equipment": ["exact"], - } diff --git a/backend/schedule_engine/models.py b/backend/schedule_engine/models.py index 71a8362..c4cb023 100644 --- a/backend/schedule_engine/models.py +++ b/backend/schedule_engine/models.py @@ -1,3 +1,3 @@ -from django.db import models +"""Django models for schedule_engine (none; GTFS-RT builders read Redis, not the ORM).""" # Create your models here. diff --git a/backend/schedule_engine/routing.py b/backend/schedule_engine/routing.py index f815d60..079da91 100644 --- a/backend/schedule_engine/routing.py +++ b/backend/schedule_engine/routing.py @@ -1,3 +1,5 @@ +"""ASGI WebSocket URL routing for schedule_engine's status broadcast channel.""" + from django.urls import re_path from .consumers import StatusConsumer diff --git a/backend/schedule_engine/tasks.py b/backend/schedule_engine/tasks.py index fdea835..03684d9 100644 --- a/backend/schedule_engine/tasks.py +++ b/backend/schedule_engine/tasks.py @@ -1,47 +1,60 @@ +"""Celery tasks that build and publish the GTFS-RT/Schedule feed artifacts. + +Reads Redis state (written by ``realtime_engine`` only) via ``builders.py`` +and serializes the result to JSON + protobuf under ``feed/files/``. Also +publishes the daily GTFS Schedule zip via ``feed.schedule.exporter``. +""" + +import json import os +from datetime import datetime +from typing import TYPE_CHECKING, cast + +import redis +from asgiref.sync import async_to_sync from celery import shared_task from channels.layers import get_channel_layer -from asgiref.sync import async_to_sync -import json -import redis -from datetime import datetime from django.conf import settings -from google.transit import gtfs_realtime_pb2 as gtfs_rt from google.protobuf import json_format +from google.transit import gtfs_realtime_pb2 as gtfs_rt +from databus.redis_client import create_redis_client from .builders import ( - build_vehicle_positions_feed, build_trip_updates_feed, - get_current_timestamp, - get_entity_id, + build_vehicle_positions_feed, ) +if TYPE_CHECKING: + from .builders import RedisLike + -_redis = None +_redis: redis.Redis | None = None -def get_redis(): +def get_redis() -> redis.Redis: + """Return the module-level Redis client, lazily creating it on first use.""" global _redis if _redis is None: - _redis = redis.Redis( - host=os.environ.get("REDIS_HOST", "state"), - port=int(os.environ.get("REDIS_PORT", "6379")), - db=int(os.environ.get("REDIS_DB", "0")), - decode_responses=True, - ) + _redis = create_redis_client(db=int(os.environ.get("REDIS_DB", "0"))) return _redis -def get_feed_version(): +def get_feed_version() -> str: + """Return the static schedule_engine GTFS-RT feed format version string.""" return "1.0.0" +def _smembers(r: redis.Redis, key: str) -> set[str]: + """Read a Redis set as `set[str]`, narrowing away redis-py's shared Awaitable stub.""" + return cast("set[str]", r.smembers(key)) + + @shared_task(queue="schedule_engine") -def build_vehicle_positions(): - """Build the VehiclePosition feed message.""" +def build_vehicle_positions() -> str: + """Build the VehiclePositions GTFS-RT feed and write it as JSON and protobuf.""" r = get_redis() - feed_message = build_vehicle_positions_feed(r) + feed_message = build_vehicle_positions_feed(cast("RedisLike", r)) output_dir = settings.BASE_DIR / "feed" / "files" output_dir.mkdir(parents=True, exist_ok=True) @@ -59,12 +72,13 @@ def build_vehicle_positions(): @shared_task(queue="schedule_engine") -def build_trip_updates(): +def build_trip_updates() -> str: + """Build the TripUpdates GTFS-RT feed, write it as JSON/protobuf, and broadcast status.""" r = get_redis() - feed_message = build_trip_updates_feed(r) + feed_message = build_trip_updates_feed(cast("RedisLike", r)) - runs_in_progress = r.smembers("runs:in_progress") + runs_in_progress = _smembers(r, "runs:in_progress") output_dir = settings.BASE_DIR / "feed" / "files" output_dir.mkdir(parents=True, exist_ok=True) @@ -98,5 +112,72 @@ def build_trip_updates(): @shared_task(queue="schedule_engine") -def build_alerts(): +def build_alerts() -> str: + """Return a placeholder string; the ServiceAlert feed builder is not yet implemented. + + Deliberately NOT registered in the Celery beat schedule (see periodic_engine / + Django admin) — this task is a stub, not a working feed producer. + """ return "Feed ServiceAlert built" + + +@shared_task(queue="schedule_engine") +def build_schedule() -> str | None: + """Export the current GTFS Schedule to a zip and publish it under feed/files/.""" + import logging + + logger = logging.getLogger(__name__) + + from feed.models import Feed + from feed.schedule.exporter import publish_gtfs_zip + + feed = Feed.objects.filter(is_current=True).first() + if feed is None: + logger.warning("build_schedule: no current Feed found, skipping") + return None + + dest = publish_gtfs_zip(feed) + return f"GTFS Schedule zip published: {dest} ({dest.stat().st_size} bytes)" + + +@shared_task(queue="schedule_engine") +def fetch_schedule() -> str: + """HEAD-check active providers' GTFS Schedule ETags and import any that changed.""" + import logging + + logger = logging.getLogger(__name__) + + from feed.models import TransitSystem, FeedPublisher + from feed.schedule.importer import import_schedule_if_changed + + transit_systems = list(TransitSystem.objects.filter(is_active=True)) + if not transit_systems: + logger.warning("fetch_schedule: no active TransitSystem rows found") + return "fetch_schedule: no active transit systems" + + updated: list[str] = [] + unchanged: list[str] = [] + errored: list[str] = [] + for transit_system in transit_systems: + providers = list( + FeedPublisher.objects.filter(is_active=True, transit_system=transit_system) + ) + if not providers: + logger.warning( + "fetch_schedule: no active FeedPublisher rows found for TransitSystem %s", + transit_system.code, + ) + return f"fetch_schedule: no active feed providers for TransitSystem {transit_system.code}" + for provider in providers: + try: + if import_schedule_if_changed(provider): + updated.append(provider.code) + else: + unchanged.append(provider.code) + except Exception: + logger.exception( + "fetch_schedule: error importing provider %s", provider.code + ) + errored.append(provider.code) + + return f"fetch_schedule: updated={updated} unchanged={unchanged} errored={errored}" diff --git a/backend/schedule_engine/tests.py b/backend/schedule_engine/tests.py deleted file mode 100644 index 7ce503c..0000000 --- a/backend/schedule_engine/tests.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.test import TestCase - -# Create your tests here. diff --git a/backend/schedule_engine/urls.py b/backend/schedule_engine/urls.py index e69de29..32533c7 100644 --- a/backend/schedule_engine/urls.py +++ b/backend/schedule_engine/urls.py @@ -0,0 +1 @@ +"""HTTP URL patterns for schedule_engine (none; the app exposes Celery tasks and a WebSocket only).""" diff --git a/backend/schedule_engine/views.py b/backend/schedule_engine/views.py index e69de29..8913706 100644 --- a/backend/schedule_engine/views.py +++ b/backend/schedule_engine/views.py @@ -0,0 +1 @@ +"""HTTP views for schedule_engine (none; the app exposes Celery tasks and a WebSocket only).""" diff --git a/backend/scripts/README.md b/backend/scripts/README.md new file mode 100644 index 0000000..e808a51 --- /dev/null +++ b/backend/scripts/README.md @@ -0,0 +1,77 @@ +# scripts + +## `cleanup_runs.py` + +Wipes run state from PostgreSQL and/or Redis so you can start fresh without +restarting any services. + +```bash +docker compose -f compose.dev.yml exec -it orchestrator uv run scripts/cleanup_runs.py [options] +``` + +### PostgreSQL tables touched + +- `runs_run` — Run records. +- `runs_runlifecycletransition`, `runs_run_vehicle`, `runs_run_operator` — + cascade-deleted with the run (Django's `on_delete=CASCADE` is ORM-level + only, so the script deletes these child tables explicitly before + `runs_run`). +- With `--telemetry`: `runs_position`, `runs_progression`, `runs_occupancy` + (`runs_progression` is decommissioned — no longer written, but old rows + may still exist and are still cleaned up here). + +### Redis keys touched + +- `runs:tracking`, `runs:in_progress` (set membership). +- `run:` (flat hash), `run::trip`, `run::vehicle_stop_status`, + `run::congestion_level`, `runs:last_seen:`. +- `vehicle::position`, `vehicle::occupancy`, `vehicle::metadata`. +- `vehicle|operator|trip::current_run` assignment keys. +- `vehicle::progression` is decommissioned and intentionally not touched. + +### Modes (mutually exclusive) + +| Flag | Effect | +|---|---| +| *(default)* | Delete all runs from DB + purge all run state from Redis. | +| `--run ` | Delete one run by ID (DB + Redis). | +| `--vehicle ` | Delete all runs for a vehicle (DB + Redis); also frees the vehicle's `current_run` key if it has no matching run. | +| `--db-only` | Only clean PostgreSQL, skip Redis. | +| `--redis-only` | Only clean Redis, skip PostgreSQL. | + +### Options + +| Flag | Effect | +|---|---| +| `--telemetry` | Also wipe `runs_position` / `runs_progression` / `runs_occupancy` rows. | +| `--dry-run` | Preview only (counts what *would* be deleted/removed); touches nothing. | +| `--yes` | Skip the confirmation prompt (only prompted for the bulk default mode, not `--run`/`--vehicle`). | +| `--db-host`, `--db-port`, `--db-name`, `--db-user`, `--db-pass` | PostgreSQL connection overrides (default from `DB_HOST`/`DB_PORT`/`DB_NAME`/`DB_USER`/`DB_PASSWORD` env vars, else `localhost`). | +| `--redis-host`, `--redis-port`, `--redis-db` | Redis connection overrides (default from `REDIS_HOST`/`REDIS_PORT`/`REDIS_DB` env vars, else `localhost`). | + +### Examples + +```bash +# Preview only +uv run scripts/cleanup_runs.py --dry-run + +# Full reset: wipe all runs from DB + Redis +uv run scripts/cleanup_runs.py --yes + +# Also wipe position/occupancy telemetry rows +uv run scripts/cleanup_runs.py --yes --telemetry + +# Clear one specific run +uv run scripts/cleanup_runs.py --run + +# Clear all runs for one vehicle +uv run scripts/cleanup_runs.py --vehicle + +# DB only / Redis only +uv run scripts/cleanup_runs.py --yes --db-only +uv run scripts/cleanup_runs.py --redis-only +``` + +The script auto-loads a `.env` file (walking up from `scripts/` to the +project root) before resolving connection defaults; shell env vars take +precedence over `.env` values. diff --git a/backend/scripts/cleanup_runs.py b/backend/scripts/cleanup_runs.py index 030e7ba..4a91dad 100644 --- a/backend/scripts/cleanup_runs.py +++ b/backend/scripts/cleanup_runs.py @@ -46,9 +46,10 @@ import sys from datetime import datetime from pathlib import Path -from typing import Any +from typing import Any, cast import psycopg2 +import psycopg2.extensions import psycopg2.extras import redis @@ -94,14 +95,20 @@ def _load_dotenv() -> None: # --------------------------------------------------------------------------- -def get_db(host: str, port: int, name: str, user: str, password: str): +def get_db( + host: str, port: int, name: str, user: str, password: str +) -> psycopg2.extensions.connection: + """Open a PostgreSQL connection with the given connection parameters.""" return psycopg2.connect( host=host, port=port, dbname=name, user=user, password=password, ) -def get_redis(host: str, port: int, db: int) -> redis.Redis: - return redis.Redis(host=host, port=port, db=db, decode_responses=True) +def get_redis(host: str, port: int, db: int, password: str | None = None) -> redis.Redis: + """Open a Redis client with the given connection parameters.""" + return redis.Redis( + host=host, port=port, db=db, password=password or None, decode_responses=True + ) # --------------------------------------------------------------------------- @@ -109,7 +116,13 @@ def get_redis(host: str, port: int, db: int) -> redis.Redis: # --------------------------------------------------------------------------- -def _count(cur, table: str, where: str = "", params: tuple = ()) -> int: +def _count( + cur: psycopg2.extensions.cursor, + table: str, + where: str = "", + params: tuple[Any, ...] = (), +) -> int: + """Count rows in `table`, optionally filtered by a WHERE clause.""" sql = f"SELECT COUNT(*) FROM {table}" if where: sql += f" WHERE {where}" @@ -117,7 +130,14 @@ def _count(cur, table: str, where: str = "", params: tuple = ()) -> int: return cur.fetchone()[0] -def _delete(cur, table: str, where: str = "", params: tuple = (), dry_run: bool = False) -> int: +def _delete( + cur: psycopg2.extensions.cursor, + table: str, + where: str = "", + params: tuple[Any, ...] = (), + dry_run: bool = False, +) -> int: + """Delete rows from `table` (or just count them under --dry-run); returns the affected row count.""" n = _count(cur, table, where, params) if n and not dry_run: sql = f"DELETE FROM {table}" @@ -132,7 +152,39 @@ def _delete(cur, table: str, where: str = "", params: tuple = (), dry_run: bool # --------------------------------------------------------------------------- +def _get(r: redis.Redis, key: str) -> str | None: + """Read a Redis string value, narrowing away redis-py's shared Awaitable stub. + + `r` here is always a synchronous, `decode_responses=True` client built by + `get_redis`, but redis-py's `CoreCommands` mixin types every command + `Awaitable[X] | X` since it's shared with the async client -- this cast + narrows to the sync branch that's actually returned. + """ + return cast("str | None", r.get(key)) + + +def _hgetall(r: redis.Redis, key: str) -> dict[str, str]: + """Read a Redis hash as `dict[str, str]`, narrowing away redis-py's shared Awaitable stub.""" + return cast("dict[str, str]", r.hgetall(key)) + + +def _smembers(r: redis.Redis, key: str) -> set[str]: + """Read a Redis set as `set[str]`, narrowing away redis-py's shared Awaitable stub.""" + return cast("set[str]", r.smembers(key)) + + +def _rkeys(r: redis.Redis, pattern: str) -> list[str]: + """Read Redis keys matching a pattern as `list[str]`, narrowing away redis-py's shared Awaitable stub.""" + return cast("list[str]", r.keys(pattern)) + + +def _srem(r: redis.Redis, set_key: str, *members: str) -> int: + """Remove members from a Redis set, narrowing srem's Awaitable-union return to int.""" + return cast(int, r.srem(set_key, *members)) + + def _rdel(r: redis.Redis, keys: list[str], dry_run: bool) -> int: + """Delete the given Redis keys that exist (or count them under --dry-run); returns the count.""" targets = [k for k in keys if r.exists(k)] if targets and not dry_run: r.delete(*targets) @@ -140,15 +192,17 @@ def _rdel(r: redis.Redis, keys: list[str], dry_run: bool) -> int: def _rsrem(r: redis.Redis, set_key: str, members: list[str], dry_run: bool) -> int: + """Remove members from a Redis set (or count matches under --dry-run); returns the removed/matched count.""" if not members: return 0 if dry_run: return sum(1 for m in members if r.sismember(set_key, m)) - return int(r.srem(set_key, *members)) + return _srem(r, set_key, *members) def _purge_redis_run(r: redis.Redis, run_id: str, dry_run: bool) -> dict[str, int]: - hash_data = r.hgetall(_keys.run_key(run_id)) + """Delete (or count, under --dry-run) one run's Redis state: entity hashes, assignment keys, and set memberships.""" + hash_data = _hgetall(r, _keys.run_key(run_id)) vehicle_id = hash_data.get("vehicle") operator_id = hash_data.get("operator") trip_id = hash_data.get("trip_id") @@ -186,16 +240,17 @@ def _purge_redis_run(r: redis.Redis, run_id: str, dry_run: bool) -> dict[str, in def purge_redis_all_runs(r: redis.Redis, dry_run: bool) -> dict[str, Any]: + """Purge all run state from Redis (or preview it under --dry-run); returns a summary of what changed.""" actions: list[str] = [] keys_removed = 0 set_removals = 0 all_run_ids: set[str] = set() - all_run_ids.update(r.smembers("runs:tracking")) - all_run_ids.update(r.smembers("runs:in_progress")) - for key in r.keys("run:*"): + all_run_ids.update(_smembers(r, "runs:tracking")) + all_run_ids.update(_smembers(r, "runs:in_progress")) + for key in _rkeys(r, "run:*"): all_run_ids.add(key.split(":", 1)[1]) - for key in r.keys("runs:last_seen:*"): + for key in _rkeys(r, "runs:last_seen:*"): all_run_ids.add(key.split(":", 2)[2]) for run_id in sorted(all_run_ids): @@ -212,7 +267,7 @@ def purge_redis_all_runs(r: redis.Redis, dry_run: bool) -> dict[str, Any]: "runs:last_seen:*", "run:*", ): - for key in r.keys(pattern): + for key in _rkeys(r, pattern): n = _rdel(r, [key], dry_run) if n: keys_removed += n @@ -220,7 +275,7 @@ def purge_redis_all_runs(r: redis.Redis, dry_run: bool) -> dict[str, Any]: for set_key in ("runs:tracking", "runs:in_progress"): if r.exists(set_key): - members = list(r.smembers(set_key)) + members = list(_smembers(r, set_key)) if members: if not dry_run: r.delete(set_key) @@ -231,6 +286,7 @@ def purge_redis_all_runs(r: redis.Redis, dry_run: bool) -> dict[str, Any]: def purge_redis_one_run(r: redis.Redis, run_id: str, dry_run: bool) -> dict[str, Any]: + """Purge (or preview, under --dry-run) one run's Redis state; returns a summary of what changed.""" result = _purge_redis_run(r, run_id, dry_run) return { "keys_removed": result["keys"], @@ -242,7 +298,7 @@ def purge_redis_one_run(r: redis.Redis, run_id: str, dry_run: bool) -> dict[str, def purge_redis_vehicle(r: redis.Redis, vehicle_id: str, dry_run: bool) -> dict[str, Any]: """Free the Redis assignment for one vehicle and cascade-purge its run.""" current_run_key = f"vehicle:{vehicle_id}:current_run" - run_id = r.get(current_run_key) + run_id = _get(r, current_run_key) if run_id: return purge_redis_one_run(r, run_id, dry_run) n = _rdel(r, [current_run_key], dry_run) @@ -263,7 +319,10 @@ def purge_redis_vehicle(r: redis.Redis, vehicle_id: str, dry_run: bool) -> dict[ ) -def db_purge_all_runs(conn, include_telemetry: bool, dry_run: bool) -> dict[str, Any]: +def db_purge_all_runs( + conn: psycopg2.extensions.connection, include_telemetry: bool, dry_run: bool +) -> dict[str, Any]: + """Delete (or count, under --dry-run) all runs and their child rows from PostgreSQL.""" counts: dict[str, int] = {} with conn.cursor() as cur: if include_telemetry: @@ -277,7 +336,13 @@ def db_purge_all_runs(conn, include_telemetry: bool, dry_run: bool) -> dict[str, return counts -def db_purge_one_run(conn, run_id: str, include_telemetry: bool, dry_run: bool) -> dict[str, Any]: +def db_purge_one_run( + conn: psycopg2.extensions.connection, + run_id: str, + include_telemetry: bool, + dry_run: bool, +) -> dict[str, Any]: + """Delete (or count, under --dry-run) one run and its child rows from PostgreSQL.""" counts: dict[str, int] = {} with conn.cursor() as cur: if include_telemetry: @@ -299,7 +364,13 @@ def db_purge_one_run(conn, run_id: str, include_telemetry: bool, dry_run: bool) return counts -def db_purge_vehicle_runs(conn, vehicle_id: str, include_telemetry: bool, dry_run: bool) -> dict[str, Any]: +def db_purge_vehicle_runs( + conn: psycopg2.extensions.connection, + vehicle_id: str, + include_telemetry: bool, + dry_run: bool, +) -> dict[str, Any]: + """Delete (or count, under --dry-run) all of a vehicle's runs and their child rows from PostgreSQL.""" counts: dict[str, int] = {} with conn.cursor() as cur: if include_telemetry: @@ -330,6 +401,7 @@ def db_purge_vehicle_runs(conn, vehicle_id: str, include_telemetry: bool, dry_ru def _print_db_section(counts: dict[str, int], dry_run: bool) -> None: + """Print the per-table row counts deleted (or that would be deleted) from PostgreSQL.""" verb = "would delete" if dry_run else "deleted" total = sum(counts.values()) if total == 0: @@ -343,6 +415,7 @@ def _print_db_section(counts: dict[str, int], dry_run: bool) -> None: def _print_redis_section(result: dict[str, Any], dry_run: bool) -> None: + """Print the Redis keys and set memberships removed (or that would be removed).""" verb = "would remove" if dry_run else "removed" actions = result.get("actions", []) if not actions: @@ -362,6 +435,7 @@ def print_report( redis_result: dict[str, Any] | None, dry_run: bool, ) -> None: + """Print a summary header plus the DB and/or Redis sections for whichever cleanups ran.""" label = "DRY RUN" if dry_run else "EXECUTED" print(f"\n{SEP}\n{label}\n{SEP}\n") if db_counts is not None: @@ -376,6 +450,7 @@ def print_report( def main() -> None: + """Parse CLI args, connect to PostgreSQL and/or Redis, run the selected cleanup mode, and print a report.""" parser = argparse.ArgumentParser( description="Clean run state from PostgreSQL and Redis", formatter_class=argparse.RawDescriptionHelpFormatter, @@ -432,6 +507,7 @@ def main() -> None: parser.add_argument("--redis-host", default=os.getenv("REDIS_HOST", "localhost")) parser.add_argument("--redis-port", default=int(os.getenv("REDIS_PORT", "6379")), type=int) parser.add_argument("--redis-db", default=int(os.getenv("REDIS_DB", "0")), type=int) + parser.add_argument("--redis-password", default=os.getenv("REDIS_PASSWORD", "")) args = parser.parse_args() @@ -448,17 +524,17 @@ def main() -> None: except Exception as e: print(f"\n⚠️ Cannot connect to PostgreSQL at {args.db_host}:{args.db_port}/{args.db_name}") print(f"Error: {e}") - print(f"\nTip: if running on the host, pass --db-host localhost\n") + print("\nTip: if running on the host, pass --db-host localhost\n") sys.exit(1) if need_redis: try: - r = get_redis(args.redis_host, args.redis_port, args.redis_db) + r = get_redis(args.redis_host, args.redis_port, args.redis_db, args.redis_password) r.ping() except Exception as e: print(f"\n⚠️ Cannot connect to Redis at {args.redis_host}:{args.redis_port}") print(f"Error: {e}") - print(f"\nTip: if running on the host, pass --redis-host localhost\n") + print("\nTip: if running on the host, pass --redis-host localhost\n") sys.exit(1) # --- Confirmation --- @@ -481,6 +557,8 @@ def main() -> None: redis_result: dict[str, Any] | None = None if need_db: + # need_db implies get_db() above succeeded (its except branch exits the process). + assert conn is not None if args.run: db_counts = db_purge_one_run(conn, args.run, args.telemetry, args.dry_run) elif args.vehicle: @@ -489,6 +567,8 @@ def main() -> None: db_counts = db_purge_all_runs(conn, args.telemetry, args.dry_run) if need_redis: + # need_redis implies get_redis() above succeeded (its except branch exits the process). + assert r is not None if args.run: redis_result = purge_redis_one_run(r, args.run, args.dry_run) elif args.vehicle: diff --git a/backend/tests/api_tester.py b/backend/tests/api_tester.py deleted file mode 100644 index 1304dcf..0000000 --- a/backend/tests/api_tester.py +++ /dev/null @@ -1,23 +0,0 @@ -import requests -from decouple import config - -url = "http://localhost:3456/api/path/" - -token = config("API_TOKEN") -data = { - "trip": 1, - "current_stop_sequence": 5, - "stop_id": "5", - "current_status": "INCOMING_AT", - "congestion_level": "STOP_AND_GO", -} -headers = { - "Authorization": f"Token {token}", - "Content-Type": "application/json", -} -response = requests.post(url, json=data, headers=headers) - -if response.status_code == 201: - print("POST was successful.") -else: - print(f"POST failed. Status code: {response.status_code}.") diff --git a/backend/tests/backup.md b/backend/tests/backup.md deleted file mode 100644 index 3c9d939..0000000 --- a/backend/tests/backup.md +++ /dev/null @@ -1,47 +0,0 @@ -# Databús - -Implementación de GTFS Realtime - -### Especificación del formato de transmisión de datos de telemetría - -> "¿Cómo se van a transmitir los datos por la red desde los buses hasta el servidor en tiempo real?" - -Esto es independiente de GTFS Realtime, en cuanto al formato. Debe incluir las variables deseadas en GTFS Realtime pero también contemplar todas las variables posibles para un sistema inteligente de transporte público, en general, según la referencia de ARC-IT o las necesidades del sistema en Costa Rica. - -Según GTFS: - -- Ubicación geográfica -- Dirección -- Velocidad -- Ocupación - -Según ARC-IT: - -- Presión de las llantas -- Etc. - -Según necesidades específicas: - -- Presión barométrica -- Contaminación del aire -- Etc. - -(Ver issue #1) - -### Recopilación de datos de telemetría para GTFS Realtime - -> "¿Cuáles datos vamos a mostrar en el prototipo?" - -Para nuestra implementación del prototipo, esto puede ser de varias formas: - -- Con una implementación a escala real en conjunto con RACSA -- Con una implementación de prueba con una plataforma de desarrollo -- Con datos sintéticos generados para mostrar la visualización (_hardcoded_) - -Es necesario revisar la plataforma para recolección de datos en tiempo real. Podría ser Apache Pulsar. - -### Construcción y entrega del `FeedMessage` de GTFS Realtime - -Un _script_ para tomar las variables de interés de GTFS Realtime y construir un archivo binario `.pb` para distribución (será recopilado por el proyecto `gtfs-screens`). - -Seguir la secuencia: diccionario de Python --> JSON (publicación de cortesía) --> (paquete de Google que lo hace) --> Protobuf --> colocar en el servidor para ser recopilado. diff --git a/backend/tests/fake_trip.py b/backend/tests/fake_trip.py deleted file mode 100644 index 7c55999..0000000 --- a/backend/tests/fake_trip.py +++ /dev/null @@ -1,63 +0,0 @@ -import requests - -api = "https://realtime.bucr.digital/api/" -token = "ad936c7ae11a9b96e55bc3c54a91972f9896a854" -headers = { - "Authorization": f"Token {token}", - "Content-Type": "application/x-www-form-urlencoded", -} - -run = { - "vehicle": "SJB1234", - "equipment": "2d01a00e-6287-4bfe-8a2b-7bc8a4e2aa5c", - "operator": "1-1234-5678", - "trip_id": "desde_educacion_con_milla_entresemana_13:33", - "route_id": "bUCR_L1", - "direction_id": 0, - "start_time": "13:33:06", - "start_date": "2024-08-29", - "schedule_relationship": "SCHEDULED", - "shape_id": "desde_educacion_con_milla", - "run_lifecycle_state": "IN_PROGRESS", -} - -api_url = f"{api}run/" -response = requests.post(api_url, data=run, headers=headers) -run_id = response.json()["id"] -print(f"Run: {run_id}") - -endpoints = {} - -endpoints["position"] = { - "run": run_id, - "timestamp": "2024-08-29T13:35:55-06:00", - # "point": "SRID=4326;POINT (-84.04555530733563 9.93540698388418)", - "latitude": 9.93540698388418, - "longitude": -84.04555530733563, - "bearing": 0.0, - "odometer": 9.0, - "speed": 12.0, -} - -endpoints["progression"] = { - "run": run_id, - "timestamp": "2024-08-29T13:36:29.055000-06:00", - "current_stop_sequence": 3, - "stop_id": "bUCR_0_04", - "current_status": "INCOMING_AT", - "congestion_level": "RUNNING_SMOOTHLY", -} - -endpoints["occupancy"] = { - "run": run_id, - "timestamp": "2024-08-29T13:36:44.101000-06:00", - "occupancy_status": "CRUSHED_STANDING_ROOM_ONLY", - "occupancy_percentage": 81, - "occupancy_count": 35, -} - -for endpoint in endpoints: - api_url = f"{api}{endpoint}/" - response = requests.post(api_url, data=endpoints[endpoint], headers=headers) - # Show response code - print(f"{endpoint}: {response.status_code}") diff --git a/backend/uv.lock b/backend/uv.lock index 7c253d4..9898686 100644 --- a/backend/uv.lock +++ b/backend/uv.lock @@ -3,10 +3,10 @@ revision = 3 requires-python = ">=3.14" resolution-markers = [ "python_full_version >= '3.15' and sys_platform == 'win32'", - "python_full_version < '3.15' and sys_platform == 'win32'", "python_full_version >= '3.15' and sys_platform == 'emscripten'", - "python_full_version < '3.15' and sys_platform == 'emscripten'", "python_full_version >= '3.15' and sys_platform != 'emscripten' and sys_platform != 'win32'", + "python_full_version < '3.15' and sys_platform == 'win32'", + "python_full_version < '3.15' and sys_platform == 'emscripten'", "python_full_version < '3.15' and sys_platform != 'emscripten' and sys_platform != 'win32'", ] @@ -689,6 +689,7 @@ dependencies = [ { name = "django" }, { name = "django-celery-beat" }, { name = "django-celery-results" }, + { name = "django-cors-headers" }, { name = "django-filter" }, { name = "djangorestframework" }, { name = "djangorestframework-gis" }, @@ -696,6 +697,7 @@ dependencies = [ { name = "flower" }, { name = "geopandas" }, { name = "gtfs-django" }, + { name = "gtfs-eta" }, { name = "gtfs-io" }, { name = "gtfs-realtime-bindings" }, { name = "gunicorn" }, @@ -714,6 +716,8 @@ dependencies = [ [package.dev-dependencies] dev = [ { name = "django-debug-toolbar" }, + { name = "django-stubs", extra = ["compatible-mypy"] }, + { name = "mypy" }, { name = "pytest" }, { name = "pytest-django" }, { name = "ruff" }, @@ -729,6 +733,7 @@ requires-dist = [ { name = "django", specifier = "==6.0.4" }, { name = "django-celery-beat", specifier = ">=2.8.1" }, { name = "django-celery-results", specifier = ">=2.6.0" }, + { name = "django-cors-headers", specifier = ">=4.9.0" }, { name = "django-filter", specifier = ">=25.1" }, { name = "djangorestframework", specifier = ">=3.16.1" }, { name = "djangorestframework-gis", specifier = ">=1.2.0" }, @@ -736,6 +741,7 @@ requires-dist = [ { name = "flower", specifier = ">=2.0.1" }, { name = "geopandas", specifier = ">=1.1.1" }, { name = "gtfs-django", editable = "gtfs-django" }, + { name = "gtfs-eta", editable = "gtfs-eta" }, { name = "gtfs-io", editable = "gtfs-io" }, { name = "gtfs-realtime-bindings", specifier = ">=1.0.0" }, { name = "gunicorn", specifier = ">=23.0.0" }, @@ -754,6 +760,8 @@ requires-dist = [ [package.metadata.requires-dev] dev = [ { name = "django-debug-toolbar", specifier = ">=6.0.0" }, + { name = "django-stubs", extras = ["compatible-mypy"], specifier = ">=6.0.4" }, + { name = "mypy", specifier = ">=2.0.0" }, { name = "pytest", specifier = ">=8.4.1" }, { name = "pytest-django", specifier = ">=4.11.1" }, { name = "ruff", specifier = ">=0.12.11" }, @@ -837,6 +845,19 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/2c/da/70f0f3c5364735344c4bc89e53413bcaae95b4fc1de4e98a7a3b9fb70c88/django_celery_results-2.6.0-py3-none-any.whl", hash = "sha256:b9ccdca2695b98c7cbbb8dea742311ba9a92773d71d7b4944a676e69a7df1c73", size = 38351, upload-time = "2025-04-10T08:23:49.965Z" }, ] +[[package]] +name = "django-cors-headers" +version = "4.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "asgiref" }, + { name = "django" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/21/39/55822b15b7ec87410f34cd16ce04065ff390e50f9e29f31d6d116fc80456/django_cors_headers-4.9.0.tar.gz", hash = "sha256:fe5d7cb59fdc2c8c646ce84b727ac2bca8912a247e6e68e1fb507372178e59e8", size = 21458, upload-time = "2025-09-18T10:40:52.326Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/30/d8/19ed1e47badf477d17fb177c1c19b5a21da0fd2d9f093f23be3fb86c5fab/django_cors_headers-4.9.0-py3-none-any.whl", hash = "sha256:15c7f20727f90044dcee2216a9fd7303741a864865f0c3657e28b7056f61b449", size = 12809, upload-time = "2025-09-18T10:40:50.843Z" }, +] + [[package]] name = "django-debug-toolbar" version = "6.3.0" @@ -877,6 +898,11 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ba/e7/5128914ada94dd6277626ef5a4a5680a4def7d2f9366214d26c1cd86723b/django_stubs-6.0.4-py3-none-any.whl", hash = "sha256:e991c68f77239663577a5f4fc75e99c84f867f378cafc97cbf4acc5aff378279", size = 543791, upload-time = "2026-05-09T21:24:28.218Z" }, ] +[package.optional-dependencies] +compatible-mypy = [ + { name = "mypy" }, +] + [[package]] name = "django-stubs-ext" version = "6.0.4" @@ -1202,6 +1228,46 @@ testing = [ { name = "tox", specifier = ">=4.30.2" }, ] +[[package]] +name = "gtfs-eta" +version = "0.1.0" +source = { editable = "gtfs-eta" } +dependencies = [ + { name = "holidays" }, + { name = "numpy" }, + { name = "pandas" }, + { name = "scikit-learn" }, +] + +[package.metadata] +requires-dist = [ + { name = "celery", marker = "extra == 'collect'", specifier = ">=5.4" }, + { name = "django", marker = "extra == 'collect'", specifier = ">=5.0" }, + { name = "django", marker = "extra == 'train'", specifier = ">=5.0" }, + { name = "django-environ", marker = "extra == 'collect'", specifier = ">=0.11" }, + { name = "django-environ", marker = "extra == 'train'", specifier = ">=0.11" }, + { name = "fastparquet", marker = "extra == 'train'", specifier = ">=2024.11.0" }, + { name = "gtfs-eta", extras = ["train", "collect", "viz"], marker = "extra == 'all'" }, + { name = "gtfs-realtime-bindings", marker = "extra == 'collect'", specifier = ">=1.0.0" }, + { name = "holidays", specifier = ">=0.40" }, + { name = "matplotlib", marker = "extra == 'viz'", specifier = ">=3.9.4" }, + { name = "numpy", specifier = ">=1.26" }, + { name = "pandas", specifier = ">=2.3.3" }, + { name = "psycopg", extras = ["binary", "pool"], marker = "extra == 'collect'", specifier = ">=3.2.11" }, + { name = "psycopg", extras = ["binary", "pool"], marker = "extra == 'train'", specifier = ">=3.2.11" }, + { name = "python-dotenv", marker = "extra == 'collect'", specifier = ">=1.0" }, + { name = "python-dotenv", marker = "extra == 'train'", specifier = ">=1.0" }, + { name = "redis", marker = "extra == 'collect'", specifier = ">=5.0" }, + { name = "requests", marker = "extra == 'collect'", specifier = ">=2.32" }, + { name = "requests", marker = "extra == 'train'", specifier = ">=2.32" }, + { name = "scikit-learn", specifier = ">=1.7.2" }, + { name = "xgboost", marker = "extra == 'train'", specifier = ">=3.1.2" }, +] +provides-extras = ["train", "collect", "viz", "all"] + +[package.metadata.requires-dev] +bucr = [{ name = "etaval", directory = "etaval" }] + [[package]] name = "gtfs-io" version = "0.0.1" @@ -1267,6 +1333,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/69/b2/119f6e6dcbd96f9069ce9a2665e0146588dc9f88f29549711853645e736a/h2-4.3.0-py3-none-any.whl", hash = "sha256:c438f029a25f7945c69e0ccf0fb951dc3f73a5f6412981daee861431b70e2bdd", size = 61779, upload-time = "2025-08-23T18:12:17.779Z" }, ] +[[package]] +name = "holidays" +version = "0.99" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "python-dateutil" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/37/69/7626f743128513c919ed058530d62a86902099532a86222260b0cfc70d7c/holidays-0.99.tar.gz", hash = "sha256:9ef8278cdfb67dbd93309ec9b30c30609ab35fd57cb207ce4593f80dc91196f5", size = 931630, upload-time = "2026-06-15T20:39:42.38Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3f/f9/263e875ca954c44dbd29000a840b43bf875fbf4fdacf9430cd8fc92ad45e/holidays-0.99-py3-none-any.whl", hash = "sha256:bc47cefa781dbc6415e782767dea013794146cc629845354b393c53cdee90c64", size = 1503023, upload-time = "2026-06-15T20:39:40.575Z" }, +] + [[package]] name = "hpack" version = "4.1.0" @@ -1403,6 +1481,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/26/b4/08c9d297edd5e1182506edecccbb88a92e1122a057953068cadac420ca5d/jinja2_humanize_extension-0.4.0-py3-none-any.whl", hash = "sha256:b6326e2da0f7d425338bebf58848e830421defbce785f12ae812e65128518156", size = 4769, upload-time = "2023-09-01T12:52:41.098Z" }, ] +[[package]] +name = "joblib" +version = "1.5.3" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/41/f2/d34e8b3a08a9cc79a50b2208a93dce981fe615b64d5a4d4abee421d898df/joblib-1.5.3.tar.gz", hash = "sha256:8561a3269e6801106863fd0d6d84bb737be9e7631e33aaed3fb9ce5953688da3", size = 331603, upload-time = "2025-12-15T08:41:46.427Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/7b/91/984aca2ec129e2757d1e4e3c81c3fcda9d0f85b74670a094cc443d9ee949/joblib-1.5.3-py3-none-any.whl", hash = "sha256:5fc3c5039fc5ca8c0276333a188bbd59d6b7ab37fe6632daa76bc7f9ec18e713", size = 309071, upload-time = "2025-12-15T08:41:44.973Z" }, +] + [[package]] name = "jsonpatch" version = "1.33" @@ -1723,7 +1810,7 @@ wheels = [ [[package]] name = "mypy" -version = "2.1.0" +version = "2.0.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "ast-serialize" }, @@ -1732,23 +1819,23 @@ dependencies = [ { name = "pathspec" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/82/15/cca9d88503549ed6fedeaa1d448cdddd542ee8a490232d732e278036fbf2/mypy-2.1.0.tar.gz", hash = "sha256:81e76ad12c2d804512e9b13240d1588316531bfba07558286078bfbce9613633", size = 3898359, upload-time = "2026-05-11T18:37:36.237Z" } +sdist = { url = "https://files.pythonhosted.org/packages/cf/dc/7e6d49f04fca40b9dd5c752a51a432ffe67fb45200702bc9eee0cb4bbb26/mypy-2.0.0.tar.gz", hash = "sha256:1a9e3900ac5c40f1fe813506c7739da6e6f0eab2729067ebd94bfb0bbba53532", size = 3869036, upload-time = "2026-05-06T19:26:43.22Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/b0/ca/b279a672e874aedd5498ae25f722dacc8aa86bbffb939b3f97cbb1cf6686/mypy-2.1.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:7354c5a7f69d9345c3d6e69921d57088eea3ddeeb6b20d34c1b3855b02c36ec2", size = 14848422, upload-time = "2026-05-11T18:35:45.984Z" }, - { url = "https://files.pythonhosted.org/packages/27/e6/3efe56c631d959b9b4454e208b0ac4b7f4f58b404c89f8bec7b49efdfc21/mypy-2.1.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:49890d4f76ac9e06ec117f9e09f3174da70a620a0c300953d8595c926e80947f", size = 13677374, upload-time = "2026-05-11T18:36:57.188Z" }, - { url = "https://files.pythonhosted.org/packages/84/7f/8107ea87a44fd1f1b59882442f033c9c3488c127201b1d1d15f1cbd6022e/mypy-2.1.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:761be68e023ef5d94678772396a8af1220030f80837a3afd8d0aef3b419666f4", size = 14055743, upload-time = "2026-05-11T18:35:18.361Z" }, - { url = "https://files.pythonhosted.org/packages/51/4d/b6d34db183133b83761b9199a82d31557cdbb70a380d8c3b3438e11882a3/mypy-2.1.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c90345fc182dc363b891350457ec69c35140858538f38b4540845afcc32b1aef", size = 15020937, upload-time = "2026-05-11T18:34:59.618Z" }, - { url = "https://files.pythonhosted.org/packages/ff/d7/f08360c691d758acb02f45022c34d98b92892f4ea756644e1000d4b9f3d8/mypy-2.1.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b84802e7b5a6daf1f5e15bc9fcd7ddae77be13981ffab037f1c67bb84d67d135", size = 15253371, upload-time = "2026-05-11T18:36:41.081Z" }, - { url = "https://files.pythonhosted.org/packages/67/1b/09460a13719530a19bce27bd3bc8449e83569dd2ba7faf51c9c3c30c0b61/mypy-2.1.0-cp314-cp314-win_amd64.whl", hash = "sha256:022c771234936ceac541ebaf836fe9e2abeb3f5e09aff21588fe543ff006fe21", size = 11326429, upload-time = "2026-05-11T18:34:13.526Z" }, - { url = "https://files.pythonhosted.org/packages/40/62/75dbf0f82f7b6680340efc614af29dd0b3c17b8a4f1cd09b8bd2fd6bc814/mypy-2.1.0-cp314-cp314-win_arm64.whl", hash = "sha256:498207db725cec88829a6a5c2fc771205fd043719ef98bc49aba8fb9fc4e6d57", size = 10218799, upload-time = "2026-05-11T18:32:23.491Z" }, - { url = "https://files.pythonhosted.org/packages/b2/66/caca04ed7d972fb6eb6dd1ccd6df1de5c38fae8c5b3dc1c4e8e0d85ee6b9/mypy-2.1.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:7d5e5cad0efeba72b93cd17490cc0d69c5ac9ca132994fe3fb0314808aeeb83e", size = 15923458, upload-time = "2026-05-11T18:35:28.64Z" }, - { url = "https://files.pythonhosted.org/packages/ed/52/2d90cbe49d014b13ed7ff337930c30bad35893fe38a1e4641e756bb62191/mypy-2.1.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:ff715050c127d724fd260a2e666e7747fdd83511c0c47d449d98238970aef780", size = 14757697, upload-time = "2026-05-11T18:36:14.208Z" }, - { url = "https://files.pythonhosted.org/packages/ac/37/d98f4a14e081b238992d0ed96b6d39c7cc0148c9699eb71eaa68629665ea/mypy-2.1.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:82208da9e09414d520e912d3e462d454854bed0810b71540bb016dcbca7308fd", size = 15405638, upload-time = "2026-05-11T18:33:48.249Z" }, - { url = "https://files.pythonhosted.org/packages/a3/c2/15c46613b24a84fad2aea1248bf9619b99c2767ae9071fe224c179a0b7d4/mypy-2.1.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e79ebc1b904b84f0310dff7469655a9c36c7a68bddb37bdd42b67a332df61d08", size = 16215852, upload-time = "2026-05-11T18:32:50.296Z" }, - { url = "https://files.pythonhosted.org/packages/5c/90/9c16a57f482c76d25f6379762b56bbf65c711d8158cf271fb2802cfb0640/mypy-2.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:e583edc957cfb0deb142079162ae826f58449b116c1d442f2d91c69d9fced081", size = 16452695, upload-time = "2026-05-11T18:33:38.182Z" }, - { url = "https://files.pythonhosted.org/packages/0f/4c/215a4eeb63cacc5f17f516691ea7285d11e249802b942476bff15922a314/mypy-2.1.0-cp314-cp314t-win_amd64.whl", hash = "sha256:b33b6cd332695bba180d55e717a79d3038e479a2c49cc5eb3d53603409b9a5d7", size = 12866622, upload-time = "2026-05-11T18:34:39.945Z" }, - { url = "https://files.pythonhosted.org/packages/4b/50/1043e1db5f455ffe4c9ab22747cd8ca2bc492b1e4f4e21b130a44ee2b217/mypy-2.1.0-cp314-cp314t-win_arm64.whl", hash = "sha256:4f910fe825376a7b66ef7ca8c98e5a149e8cd64c19ae71d84047a74ee060d4e6", size = 10610798, upload-time = "2026-05-11T18:36:31.444Z" }, - { url = "https://files.pythonhosted.org/packages/0d/2a/13ca1f292f6db1b98ff495ef3467736b331621c5917cad984b7043e7348d/mypy-2.1.0-py3-none-any.whl", hash = "sha256:a663814603a5c563fb87a4f96fb473eeb30d1f5a4885afcf44f9db000a366289", size = 2693302, upload-time = "2026-05-11T18:31:29.246Z" }, + { url = "https://files.pythonhosted.org/packages/ce/2c/6fefe954207860aed6eeb91776795e64a257d3ce0360862288984ce121f5/mypy-2.0.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:c918c64e8ce36557851b0347f84eb12f1965d3a06813c36df253eb0c0afd1d82", size = 14729633, upload-time = "2026-05-06T19:24:53.383Z" }, + { url = "https://files.pythonhosted.org/packages/23/d6/d336f5b820af189eb0390cce21de62d264c0a4e64713dfbe81bfc4fc7739/mypy-2.0.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:301f1a8ccc7d79b542ee218b28bb49443a83e194eb3d10da63ff1649e5aa5d34", size = 13559524, upload-time = "2026-05-06T19:22:24.906Z" }, + { url = "https://files.pythonhosted.org/packages/af/a6/d7bb54fde1770f0484e5fbdbdce37a41e95ed0a1cd493ec60ead111e356c/mypy-2.0.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fdf4ef489d44ce350bac3fd699907834e551d4c934e9cc862ef201215ab1558d", size = 13936018, upload-time = "2026-05-06T19:25:02.992Z" }, + { url = "https://files.pythonhosted.org/packages/7d/ba/5be51316b91e6a6bf6e3a8adb3de500e7e1fb5bf9491743b8cbc81a34a2c/mypy-2.0.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9cde2d0989f912fc850890f727d0d76495e7a6c5bdd9912a1efdb64952b4398d", size = 14910712, upload-time = "2026-05-06T19:25:21.83Z" }, + { url = "https://files.pythonhosted.org/packages/b7/37/e2c8c3b373e20ebfb66e6c83a99027fd67df4ec43b08879f74e822d2dc4c/mypy-2.0.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:cdf05693c231a14fe37dbfce192a3a1372c26a833af4a80f550547742952e719", size = 15141499, upload-time = "2026-05-06T19:20:50.924Z" }, + { url = "https://files.pythonhosted.org/packages/12/36/07756f933e00416d912e35878cfcf89a593a3350a885691c0bb85ae0226a/mypy-2.0.0-cp314-cp314-win_amd64.whl", hash = "sha256:73aee2da33a2237e66cbe84a94780e53599847e86bb3aa7b93e405e8cd9905f2", size = 11240511, upload-time = "2026-05-06T19:21:32.39Z" }, + { url = "https://files.pythonhosted.org/packages/70/05/79ac1f20f2397353f3845f7b8bb5d8006cda7c8ef9092f04f9de3c6135f2/mypy-2.0.0-cp314-cp314-win_arm64.whl", hash = "sha256:1f6dcd8f39971f41edab2728c877c4ac8b50ad3c387ff2770423b79a05d23910", size = 10149336, upload-time = "2026-05-06T19:22:08.383Z" }, + { url = "https://files.pythonhosted.org/packages/53/e0/0db84e0ebbad6e99e566c68e4b465784f2a2294f7719e8db9d509ef23087/mypy-2.0.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:a04e980b9275c76159da66c6e1723c7798306f9802b31bdaf9358d0c84030ce8", size = 15797362, upload-time = "2026-05-06T19:22:00.835Z" }, + { url = "https://files.pythonhosted.org/packages/0a/a4/14cc0768164dd53bec48aa41a20270b18df9bf72aa5054278bf133608315/mypy-2.0.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:33f9cf4825469b2bc73c53ba55f6d9a9b4cdb60f9e6e228745581520f29b8771", size = 14635914, upload-time = "2026-05-06T19:23:43.675Z" }, + { url = "https://files.pythonhosted.org/packages/08/48/d866a3e23b4dc5974c77d9cf65a435bf22de01a84dd4620917950e233960/mypy-2.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:191675c3c7dc2a5c7722a035a6909c277f14046c5e4e02aa5fbf65f8524f08ad", size = 15270866, upload-time = "2026-05-06T19:22:34.756Z" }, + { url = "https://files.pythonhosted.org/packages/71/eb/de9ef94958eb2078a6b908ceb247757dc384d3a238d3bd6ed7d81de5eaf8/mypy-2.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c3d26c4321a3b06fc9f04c741e0733af693f82d823f8e64e47b2e63b7f19fa84", size = 16093131, upload-time = "2026-05-06T19:23:56.541Z" }, + { url = "https://files.pythonhosted.org/packages/ad/07/0ab2c1a9d26e90942612724cbd5788f16b7810c5dd39bfcf79286c6c4524/mypy-2.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:bbcbc4d5917ca6ce12de70e051de7f533e3bf92d548b41a38a2232a6fe356525", size = 16330685, upload-time = "2026-05-06T19:21:42.037Z" }, + { url = "https://files.pythonhosted.org/packages/a6/8f/46f85d1371a5be642dad263828118ae1efd536d91d8bd2000c68acff3920/mypy-2.0.0-cp314-cp314t-win_amd64.whl", hash = "sha256:dbc6ba6d40572ae49268531565793a8f07eac7fc65ad76d482c9b4c8765b6043", size = 12752017, upload-time = "2026-05-06T19:22:44.002Z" }, + { url = "https://files.pythonhosted.org/packages/7a/e6/94ca48800cac19eb28a58188a768aaec0d16cac0f373915f073058ab0855/mypy-2.0.0-cp314-cp314t-win_arm64.whl", hash = "sha256:77926029dfcb7e1a3ecb0acb2ddbb24ca36be03f7d623e1759ad5376be8f6c01", size = 10527097, upload-time = "2026-05-06T19:20:58.973Z" }, + { url = "https://files.pythonhosted.org/packages/5c/14/fd0694aa594d6e9f9fd16ce821be2eff295197a273262ef56ddcc1388d68/mypy-2.0.0-py3-none-any.whl", hash = "sha256:8a92b2be3146b4fa1f062af7eb05574cbf3e6eb8e1f14704af1075423144e4e5", size = 2673434, upload-time = "2026-05-06T19:26:32.856Z" }, ] [[package]] @@ -1760,6 +1847,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl", hash = "sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505", size = 4963, upload-time = "2025-04-22T14:54:22.983Z" }, ] +[[package]] +name = "narwhals" +version = "2.22.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/62/3c/c4ef2164a71c1a63d7f1ae411c4082c5fa872405106db60a4b7114989ad7/narwhals-2.22.1.tar.gz", hash = "sha256:d62920805a0a43b7ff8b54b0c0d3142d796f8a9301836ada37e573d6a33cbcd9", size = 647493, upload-time = "2026-06-05T12:34:34.051Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/48/ca/36339329c4604adbcc99c899b7eb1ce1a555c499b6a6860757dc9bfed36d/narwhals-2.22.1-py3-none-any.whl", hash = "sha256:60567d774edf77db53906f89d9fbd164e66e56d66d388e1e6990f17ac33cfb53", size = 454815, upload-time = "2026-06-05T12:34:32.289Z" }, +] + [[package]] name = "numpy" version = "2.4.6" @@ -2744,6 +2840,64 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/9b/36/9c015cd052fca743dae8cb2aeb16b551444787467db42ceab0fc968865af/ruff-0.15.13-py3-none-win_arm64.whl", hash = "sha256:2471da9bd1068c8c064b5fd9c0c4b6dddffd6369cb1cd68b29993b1709ff1b21", size = 11179336, upload-time = "2026-05-14T13:44:33.026Z" }, ] +[[package]] +name = "scikit-learn" +version = "1.9.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "joblib" }, + { name = "narwhals" }, + { name = "numpy" }, + { name = "scipy" }, + { name = "threadpoolctl" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/fa/6f/37092bdb25f712817231799fc5674d8e704066a8a70c1d2d40517e18b4ab/scikit_learn-1.9.0.tar.gz", hash = "sha256:8833266989d3a5110178a9fae30783675460724d0e1efb13b14901d2c660c557", size = 7750767, upload-time = "2026-06-02T11:54:32.706Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f4/7d/c9a35cf59b20a86fec24d306f1547b78dec194b08d367ce2a3e4854169d9/scikit_learn-1.9.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:9656acd4e93f74e0b66c8a36c88830a99252dfa900044d36bc2212ae89a47162", size = 8713289, upload-time = "2026-06-02T11:53:58.788Z" }, + { url = "https://files.pythonhosted.org/packages/3c/a7/552a7821597c632b907f7bfe8f36f9f572777af8ef8a48353041cf8e091a/scikit_learn-1.9.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:24360002ae845e7866522b0a5bbf690802e7bc388cac8663502e78aa98598aa2", size = 8245141, upload-time = "2026-06-02T11:54:01.694Z" }, + { url = "https://files.pythonhosted.org/packages/7d/79/f4a0c4fe9711154cddabf913471153af79056382ddc612cfe5ee0ff4b72e/scikit_learn-1.9.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5162ad10a418c8a282dde04c9aa06965de3e9a65f33c1440c0ae69bb1a09d913", size = 8847671, upload-time = "2026-06-02T11:54:04.448Z" }, + { url = "https://files.pythonhosted.org/packages/f0/af/4d72d9e475ac83719160c662619e4bf7b95c19507cd582e7d0167a3c3dae/scikit_learn-1.9.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1fea2cc5677ab49d6f5bade978c866da44957b712d92e9635e8b4f723013c3cb", size = 9118104, upload-time = "2026-06-02T11:54:07.205Z" }, + { url = "https://files.pythonhosted.org/packages/a2/d5/6a58eea2cb9abbb9b3f2bb8b2cfb3243d1152d69f442d256c7af71304769/scikit_learn-1.9.0-cp314-cp314-win_amd64.whl", hash = "sha256:64fa347efc1c839c487433e40c5144d38c336e8a2b59c81aa8660373945c2673", size = 8290674, upload-time = "2026-06-02T11:54:10.087Z" }, + { url = "https://files.pythonhosted.org/packages/65/5b/d4c879cf358f1187141cf90ced473f087183489090244f50c124a2ee478b/scikit_learn-1.9.0-cp314-cp314-win_arm64.whl", hash = "sha256:1b944b6db288f6b926e3650026ddafb988929de95d11fc2cc5fa117773c9ba42", size = 7978807, upload-time = "2026-06-02T11:54:12.769Z" }, + { url = "https://files.pythonhosted.org/packages/8a/43/bfae3121ec67ae09150d453c442c7c1cc166e9aefe056e6ab3b7728a5cfc/scikit_learn-1.9.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:4ccacf04ca5f4b492158a5f28afe0ace43f81b2571e4b9a66d34848b46128949", size = 9031941, upload-time = "2026-06-02T11:54:15.436Z" }, + { url = "https://files.pythonhosted.org/packages/75/b0/20a4546eb17f3b25d3c66df15810411c14ed5065bcfab50b53c96fb627b2/scikit_learn-1.9.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:ee1a8db2c18c08e34c7412d4b10be1cac214cd4ea7dc9715a6a327eb49a37c96", size = 8613528, upload-time = "2026-06-02T11:54:18.842Z" }, + { url = "https://files.pythonhosted.org/packages/18/3c/e440e039bb82cd19004edaaad00acbde0fb9b461083c3ecf37941c557312/scikit_learn-1.9.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:147e9329ef0e39f75d4cffa02b2aa48d827832684926cd5210d9a2cb5c57246b", size = 8855050, upload-time = "2026-06-02T11:54:21.699Z" }, + { url = "https://files.pythonhosted.org/packages/43/26/b341b8dab5998da6270a3a42c2152c578501354d36f944b5856757035ef8/scikit_learn-1.9.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5bad8f8b9950321b54c965fdcbac6c6c55e79e16646b49977bcf3668d3870a1a", size = 9097190, upload-time = "2026-06-02T11:54:24.454Z" }, + { url = "https://files.pythonhosted.org/packages/fb/de/b650b4d69b84468cfa2e28a3ff7b8103743029e6446ce1a97fe060ef688c/scikit_learn-1.9.0-cp314-cp314t-win_amd64.whl", hash = "sha256:78fc56eafd4edb9575d2d8950d1dd152061abb573341a1cb7e099fc40f6c6666", size = 8963204, upload-time = "2026-06-02T11:54:27.428Z" }, + { url = "https://files.pythonhosted.org/packages/ee/f3/ff83d76d7418112e5a61326443cdda87be3545dd8d6599c95b2481a4419e/scikit_learn-1.9.0-cp314-cp314t-win_arm64.whl", hash = "sha256:051075bda8b7aab87b1906ab3d4740a1e1224a19d7b3781a576736edc94e76aa", size = 8222661, upload-time = "2026-06-02T11:54:30.192Z" }, +] + +[[package]] +name = "scipy" +version = "1.18.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "numpy" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a7/25/c2700dfaf6442b4effaa91af24ebce5dc9d31bb4a69706313aae70d72cd0/scipy-1.18.0.tar.gz", hash = "sha256:67b2ad2ad54c72ca6d04975a9b2df8c3638c34ddd5b28738e94fc2b57929d378", size = 30774447, upload-time = "2026-06-19T15:01:43.456Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/78/b5/915a19b3de2f7430062b509653563db1633ddbb6f021b06731521115d4e2/scipy-1.18.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:4c256ee70c0d1a8a2ace807e199ccd4e3f57037433842abb3fb36bc17eaa9578", size = 31036253, upload-time = "2026-06-19T15:00:43.216Z" }, + { url = "https://files.pythonhosted.org/packages/d7/88/b72def7262e150d16be13fca37a96481138d624e700340bc3362a7588929/scipy-1.18.0-cp314-cp314-macosx_12_0_arm64.whl", hash = "sha256:2ef3abc54a4ffc53765374b0d5728532dfdd2585ed23f6b11c206a1f0b1b9af8", size = 28673758, upload-time = "2026-06-19T15:00:46.663Z" }, + { url = "https://files.pythonhosted.org/packages/91/02/2e636a61a525632c373cf6a9c24442a3ffb79e364d38e98b32042964ac32/scipy-1.18.0-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:f2a6af57bd9e4a75d70e4117e78a1bbee84f79ae3fbb6d0111005d6ebcc4cb8d", size = 20415514, upload-time = "2026-06-19T15:00:49.399Z" }, + { url = "https://files.pythonhosted.org/packages/c9/b6/2135974442f6aba159d9d39d774a1c8cb19947016725d69fecc685df45bf/scipy-1.18.0-cp314-cp314-macosx_14_0_x86_64.whl", hash = "sha256:3f1ac564d3bf6c03d861d2cd87a1bea0da2887136f7fb1bf519c05a8971452d6", size = 23034398, upload-time = "2026-06-19T15:00:51.941Z" }, + { url = "https://files.pythonhosted.org/packages/f6/e6/ba89ec5abf6ee9257c0d1ec985573f3ae32742c24bc03e016388a40b1b15/scipy-1.18.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:40395a5fcd1abee49a5c7aaa98c29db393eedc835138560a588c47ec16156690", size = 33998032, upload-time = "2026-06-19T15:00:54.838Z" }, + { url = "https://files.pythonhosted.org/packages/7f/c4/bc41eb19b0fd0db868f4132920879019318d80cc522ad8f2bca4611af808/scipy-1.18.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8ca01e8ae69f1b18e9a58d91afead31be3cef0dd905a10249dac559ee15460a0", size = 35283333, upload-time = "2026-06-19T15:00:58.152Z" }, + { url = "https://files.pythonhosted.org/packages/53/a4/cbdeef6eb3830a8462a9d4ada814de5fc984345cc9ecf17cbec51a036f1e/scipy-1.18.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7a7f3b01647384dbc3a711e8c6778e0aabbe93959249fef5c7393396bcac0867", size = 35610216, upload-time = "2026-06-19T15:01:01.155Z" }, + { url = "https://files.pythonhosted.org/packages/80/4d/b2b82502b65f661d1b789c1665dcdf315d5f12194e06fc0b37946294ebae/scipy-1.18.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:6aa94e78ec192a30063a5e72e561c28af769dc311190b24fe91774eff1969709", size = 37418960, upload-time = "2026-06-19T15:01:04.155Z" }, + { url = "https://files.pythonhosted.org/packages/93/3e/902d836831474b0ab5a37d16404f7bc5fafd9efba632890e271ba952635f/scipy-1.18.0-cp314-cp314-win_amd64.whl", hash = "sha256:2d8bbdc6c817f5b4006a54d799d4f5bab6f910193cbb9a1ff310833d4d270f61", size = 37288845, upload-time = "2026-06-19T15:01:07.822Z" }, + { url = "https://files.pythonhosted.org/packages/b6/43/8d73b337a3bdb14daa0314f0434210747c02d79d729ce1777574a817dcf6/scipy-1.18.0-cp314-cp314-win_arm64.whl", hash = "sha256:18e9575f1569b2c54174e6159d32942e03731177f63dce7975f0a0c88d102f5b", size = 24988971, upload-time = "2026-06-19T15:01:11.076Z" }, + { url = "https://files.pythonhosted.org/packages/b4/b4/f11918b0508a2787031a0499a03fbe3546f3bb5ca05d01038c45b278c09a/scipy-1.18.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:f351e0dd702687d12a402b867a1b4146a256923e1c38317cbc472f6372b94707", size = 31399325, upload-time = "2026-06-19T15:01:13.723Z" }, + { url = "https://files.pythonhosted.org/packages/7b/d1/1f287b57c0ff0ee5185dff3946d92c8017d39b0e431f0ae79a3ff1859512/scipy-1.18.0-cp314-cp314t-macosx_12_0_arm64.whl", hash = "sha256:7c7a51b33ce387193c97f228320cf8e87361daa1bba750638677729598b3e677", size = 29092110, upload-time = "2026-06-19T15:01:16.908Z" }, + { url = "https://files.pythonhosted.org/packages/ff/1a/7b74eb6c392fdcb27d414c0e7558a6d0231eb3b6d73571f479bb81ea8794/scipy-1.18.0-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:84031d7b052a54fae2f8632e0ec802073d385476eb9a63079bce6e23ef9283d4", size = 20833811, upload-time = "2026-06-19T15:01:20.488Z" }, + { url = "https://files.pythonhosted.org/packages/7c/ad/f3941716320a7b9cb4d68734a903b45fe16eff5fb7da7e16f2e619304979/scipy-1.18.0-cp314-cp314t-macosx_14_0_x86_64.whl", hash = "sha256:56abf29a7c067dde59be8b9a22d606a4ea1b2f2a4b756d9d903c62818f5dacce", size = 23396644, upload-time = "2026-06-19T15:01:23.364Z" }, + { url = "https://files.pythonhosted.org/packages/22/22/1446b62ffe07f9719b7d9b1b6a4e05a772833ae8f441fe4c22c34c9b250f/scipy-1.18.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1ad44305cfa24b1ba5803cbbebf033590ccbac1aa5d612d727b785325ab408b0", size = 34079318, upload-time = "2026-06-19T15:01:26.002Z" }, + { url = "https://files.pythonhosted.org/packages/56/3b/b87da667098bb470fa30c7011b0ba351ee976dd395c78798c66e941665a3/scipy-1.18.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:945c1761b93f38d7f99ae81ae80c63e621471608c7eeead563f6df025585cd58", size = 35324320, upload-time = "2026-06-19T15:01:28.881Z" }, + { url = "https://files.pythonhosted.org/packages/f8/a1/c7932f91909759b0267f75fdea34e91309f96b895757534b76a90b6b4344/scipy-1.18.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:1a4441f15d620578772a49e5ab48c0ee1f7a0220e387110283062729136b2553", size = 35699541, upload-time = "2026-06-19T15:01:31.968Z" }, + { url = "https://files.pythonhosted.org/packages/f7/86/5185061a1fcc41d18c5dc2463969b3a3964b31d9ac67b2fb05d4c7ff7670/scipy-1.18.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:9aac6192fac56bf2ca534389d24623f07b39ff83317d58287285e7fbd622ff76", size = 37472480, upload-time = "2026-06-19T15:01:35.136Z" }, + { url = "https://files.pythonhosted.org/packages/31/8e/f04c68e39919a010d34f2ee1367fd705b0a25a02f609d755f0bfbc0a15fc/scipy-1.18.0-cp314-cp314t-win_amd64.whl", hash = "sha256:e40baea28ae7f5475c779741e2d90b1247c78531207b49c7030e698ff81cee3f", size = 37365390, upload-time = "2026-06-19T15:01:38.091Z" }, + { url = "https://files.pythonhosted.org/packages/d5/19/969dc072906c84dd0a3b05dcf57ea750936087d7873549e408b35cfc3f97/scipy-1.18.0-cp314-cp314t-win_arm64.whl", hash = "sha256:368e0a705903c466aa5f08eefb39e6b1b6b2d659e7352a31fd9e2438365be0f8", size = 25279661, upload-time = "2026-06-19T15:01:40.817Z" }, +] + [[package]] name = "semver" version = "3.0.4" @@ -2883,6 +3037,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a6/a5/c0b6468d3824fe3fde30dbb5e1f687b291608f9473681bbf7dabbf5a87d7/text_unidecode-1.3-py2.py3-none-any.whl", hash = "sha256:1311f10e8b895935241623731c2ba64f4c455287888b18189350b67134a822e8", size = 78154, upload-time = "2019-08-30T21:37:03.543Z" }, ] +[[package]] +name = "threadpoolctl" +version = "3.6.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/b7/4d/08c89e34946fce2aec4fbb45c9016efd5f4d7f24af8e5d93296e935631d8/threadpoolctl-3.6.0.tar.gz", hash = "sha256:8ab8b4aa3491d812b623328249fab5302a68d2d71745c8a4c719a2fcaba9f44e", size = 21274, upload-time = "2025-03-13T13:49:23.031Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/32/d5/f9a850d79b0851d1d4ef6456097579a9005b31fea68726a4ae5f2d82ddd9/threadpoolctl-3.6.0-py3-none-any.whl", hash = "sha256:43a0b8fd5a2928500110039e43a5eed8480b918967083ea48dc3ab9f13c4a7fb", size = 18638, upload-time = "2025-03-13T13:49:21.846Z" }, +] + [[package]] name = "toml" version = "0.10.2" diff --git a/backend/website/README.md b/backend/website/README.md new file mode 100644 index 0000000..bf0301a --- /dev/null +++ b/backend/website/README.md @@ -0,0 +1,28 @@ +# Website · public landing page + +- **Purpose**: this is deliberately tiny. It is a single static Bootstrap landing page mounted at + the site root (`/`), linking out to the external docs site and the API's ReDoc page. There is no + domain logic here. +- **Key modules**: + - `views.py` — one function, `index`, renders `templates/index.html` + - `urls.py` — one route: `path("", views.index, name="inicio")` + - `models.py` — empty (no models) + - `fixtures/auth.json` — seed auth fixture (unrelated to the page itself) + +## Data in / data out + +- No database reads/writes, no Redis, no queues. +- Serves `GET /` → renders `index.html`, which links to `https://databus.simovilab.org/` (docs) + and `{% url 'api_docs' %}` (`api`'s ReDoc page). + +## Configuration + +No app-specific env vars. + +## Tests + +``` +docker compose -f compose.dev.yml run --rm orchestrator uv run pytest website/ -q +``` +`website/tests.py` is the empty Django-generated stub — there is nothing to test beyond template +rendering. `make test` runs the full suite. diff --git a/backend/website/admin.py b/backend/website/admin.py index 8c38f3f..f2308d7 100644 --- a/backend/website/admin.py +++ b/backend/website/admin.py @@ -1,3 +1,3 @@ -from django.contrib import admin +"""Django admin registration for the website app (none; no models defined).""" # Register your models here. diff --git a/backend/website/apps.py b/backend/website/apps.py index bc26c09..cfac2d8 100644 --- a/backend/website/apps.py +++ b/backend/website/apps.py @@ -1,6 +1,10 @@ +"""Django AppConfig for the website app.""" + from django.apps import AppConfig class WebsiteConfig(AppConfig): + """Django app configuration for `website` (public landing pages).""" + default_auto_field = "django.db.models.BigAutoField" name = "website" diff --git a/backend/website/models.py b/backend/website/models.py index 71a8362..91aff4c 100644 --- a/backend/website/models.py +++ b/backend/website/models.py @@ -1,3 +1,3 @@ -from django.db import models +"""Django models for the website app (none; the site is static template rendering).""" # Create your models here. diff --git a/backend/website/tests.py b/backend/website/tests.py deleted file mode 100644 index 7ce503c..0000000 --- a/backend/website/tests.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.test import TestCase - -# Create your tests here. diff --git a/backend/website/urls.py b/backend/website/urls.py index fd7d2ab..e378ebc 100644 --- a/backend/website/urls.py +++ b/backend/website/urls.py @@ -1,3 +1,5 @@ +"""URL routes for the website app.""" + from django.urls import path from . import views diff --git a/backend/website/views.py b/backend/website/views.py index fed8a3e..25b5e44 100644 --- a/backend/website/views.py +++ b/backend/website/views.py @@ -1,7 +1,11 @@ +"""HTTP views for the website app.""" + +from django.http import HttpRequest, HttpResponse from django.shortcuts import render # Create your views here. -def index(request): +def index(request: HttpRequest) -> HttpResponse: + """Render the public landing page.""" return render(request, "index.html") diff --git a/compose.dev.yml b/compose.dev.yml index 0344208..a4c17fa 100644 --- a/compose.dev.yml +++ b/compose.dev.yml @@ -17,6 +17,13 @@ services: volumes: - ./backend:/app - backend_venv:/home/app/.venv + # Sibling repo consumed as a uv path dependency (see + # backend/pyproject.toml [tool.uv.sources] gtfs-eta comment). Mounted + # read-write because uv's setuptools editable build writes/touches + # gtfs_eta.egg-info/ inside the source tree on install (a gitignored + # build artifact, not tracked repo content) — a read-only mount makes + # `uv sync` fail. databus code never otherwise writes into gtfs-eta. + - ../gtfs-eta:/gtfs-eta depends_on: database: condition: service_healthy @@ -40,6 +47,7 @@ services: volumes: - ./backend:/app - backend_venv:/home/app/.venv + - ../gtfs-eta:/gtfs-eta depends_on: database: condition: service_healthy @@ -64,6 +72,7 @@ services: volumes: - ./backend:/app - backend_venv:/home/app/.venv + - ../gtfs-eta:/gtfs-eta depends_on: database: condition: service_healthy @@ -86,6 +95,7 @@ services: volumes: - ./backend:/app - backend_venv:/home/app/.venv + - ../gtfs-eta:/gtfs-eta depends_on: database: condition: service_healthy diff --git a/docs/API.json b/docs/API.json deleted file mode 100644 index 10ee5bd..0000000 --- a/docs/API.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "vehicle_id": "1234", - "route_id": "bUCR_L1", - "trip_id": "EYU94JE743", - "start_date": "20231112", - "start_time": "10:03:00", - "location": { - "latitude": 42.0, - "longitude": -71.0 - }, - "inertial": { - "bearing": 225, - "speed": 23, - }, - "vehicle_health": { - "fuel_level": 0.5, - "oil_level": 0.5, - "tire_pressure": 0.5, - "battery_voltage": 12.5 - }, - "environmental": { - "temperature": 72, - "humidity": 0.5, - "pressure": 1013 - } -} \ No newline at end of file diff --git a/docs/api.md b/docs/api.md deleted file mode 100644 index 30c8837..0000000 --- a/docs/api.md +++ /dev/null @@ -1,55 +0,0 @@ -# Especificación del API - -# APIs - -- Publicar datos en tiempo real -(requiere autenticación) -```http -POST /api/datos {"vehicle_id": ...} -``` - -- Obtener GTFS Schedule -(no requiere autenticación) -```http -GET /api/gtfs -``` - -- Obtener GTFS Realtime - Actualizaciones de viaje (`TripUpdates`) -```http -GET /api/realtime/trip-updates -``` - -- Obtener GTFS Realtime - Posiciones del vehículo (`VehiclePositions`) -```http -GET /api/realtime/vehicle-positions -``` - - -`bus.ucr.ac.cr/api/datos` - -## Especificación de los datos de los vehículos - -La siguiente especificación de datos fue construida con base en: - -- La especificación de datos abiertos de transporte público GTFS Schedule y GTFS Realtime v2.0 -- La Arquitectura de Referencia para Transporte Inteligente y Colaborativo (ARC-IT) del Departamento de Transportes de los Estados Unidos - -Su objetivo primario es la construcción de un *feed* (o "suministro de datos") en tiempo real para consumo de aplicaciones compatibles con GTFS. Esto es de utilidad, especialmente, para usuarios del servicio. - -Pero también está diseñado para prever necesidades y aplicaciones futuras con base en la amplia especificación de "paquetes de servicio" para transporte público de ARC-IT. Esto podría de uso primario para operadores, gestores, planificadores, reguladores y otras partes interesadas. - -```json -{ - "vehicle_id": "1234", - "route_id": "bUCR_L1", - "trip_id": "EYU94JE743", - "location": { - "latitude": 9.98363, - "longitude": -84.9474573 - } -} -``` - -``` title="Ejemplo de JSON" ---8<-- "./API.json" -``` \ No newline at end of file diff --git a/docs/assets/diagram.png b/docs/assets/diagram.png deleted file mode 100644 index 6ccbf67..0000000 Binary files a/docs/assets/diagram.png and /dev/null differ diff --git a/docs/content/architecture/deployment-topology.md b/docs/content/architecture/deployment-topology.md index 462ba35..c11827a 100644 --- a/docs/content/architecture/deployment-topology.md +++ b/docs/content/architecture/deployment-topology.md @@ -49,11 +49,13 @@ realtime_engine queue → realtime-engine worker - process_position_update - run_lifecycle_event - scan_stale_runs + - fetch_positions schedule_engine queue → schedule-engine worker - build_vehicle_positions - build_trip_updates - - build_alerts + - build_schedule + - build_alerts (routed here if ever called, but not in the beat schedule — see services.md) ``` Tasks are routed by the `queue=` argument on the `@shared_task` decorator in the respective `tasks.py` modules. diff --git a/docs/content/architecture/index.md b/docs/content/architecture/index.md index d94ebd7..0859a4f 100644 --- a/docs/content/architecture/index.md +++ b/docs/content/architecture/index.md @@ -31,11 +31,11 @@ flowchart TD subgraph realtime_worker["realtime-engine (Celery worker)"] mqtt_bootstep[MQTT bootstep] - re_tasks[process_position_update\nrun_lifecycle_event\nscan_stale_runs] + re_tasks[process_position_update\nrun_lifecycle_event\nscan_stale_runs\nfetch_positions] end subgraph schedule_worker["schedule-engine (Celery worker)"] - se_tasks[build_vehicle_positions\nbuild_trip_updates\nbuild_alerts] + se_tasks[build_vehicle_positions\nbuild_trip_updates\nbuild_schedule] end scheduler_node(("scheduler\n(Celery Beat)")) diff --git a/docs/content/architecture/messaging.md b/docs/content/architecture/messaging.md index 416d9cf..80bcf26 100644 --- a/docs/content/architecture/messaging.md +++ b/docs/content/architecture/messaging.md @@ -20,39 +20,15 @@ See [../runs/commands-vs-detections.md](../runs/commands-vs-detections.md) for a ## AMQP layout -The designed exchange topology is: +The publisher module `backend/messages/publisher.py` is fully implemented — not a stub. It is called from a single seam, `RunLifecycleService._publish_run_lifecycle_transition` (`backend/runs/services/lifecycle.py`), immediately after every successful FSM transition except `run_requested` (that event enters `Requested` at record creation, outside `process_event`). -- **Exchange:** `databus.events` (type: `direct`) -- **Routing key namespace:** `runs.*` +- **Exchange:** `databus.events` — a durable **topic** exchange (not `direct`). +- **Routing key:** `runs.lifecycle.`, where `` is the lowercased `.value` of the `RunLifecycleEvents` member for the transition that just completed (`routing_key_for`, `publisher.py`) — e.g. `runs.lifecycle.run_confirmed_by_operator`. +- **Binding:** subscribers interested in every run lifecycle event bind `runs.lifecycle.#`. +- **Envelope:** a versioned JSON body — `event`, `version`, `occurred_at`, `producer`, `run_id`, `from_state`, `to_state`, `data` (`build_envelope`, `publisher.py`). `from_state`/`to_state` carry the FSM's display-style values (e.g. `"Initialized"`, `"Confirmed"`), not upper-snake enum member names. +- **Delivery:** fire-and-forget. Publishing goes through kombu's connection pool with a small bounded retry (`max_retries=2`), but there are no publisher confirms — any broker/connection error is caught, logged, and dropped. This is deliberate: telemetry and lifecycle processing must never block or fail because RabbitMQ is unavailable. The durable audit trail is `GET /api/runs//history/`, not the AMQP stream. -Routing keys sketched in `backend/messages/publisher.py`: - -``` -runs.submission.requested -runs.submission.succeeded -runs.submission.failed -runs.validation.succeeded -runs.validation.failed -runs.initialization.succeeded -runs.initialization.failed -``` - -Subscribers interested in all run events bind with `runs.*`. - -## Implementation status - -!!! warning "AMQP publisher is a stub" - The publisher module at `backend/messages/publisher.py` is **not yet wired**. The `publish_event` function currently only prints to stdout: - - ```python - def publish_event(name: str, data: dict): - """Publish an event to the databus.events exchange.""" - print(f"Printing event {name} with data: {data}") - ``` - - The `Connection`, `Exchange`, and `Producer` objects are instantiated at module import but `publish_event` does not use them. Domain event emission via AMQP is designed and the routing-key namespace is settled, but the actual publish call and delivery guarantees are not yet implemented. - - Celery task routing (the RabbitMQ backbone that drives `realtime-engine` and `schedule-engine`) is fully operational and unaffected by this stub. The stub only concerns application-level domain events that other systems might subscribe to. +Full contract details (the complete routing-key table, envelope field reference, sequence diagram, and integration guidance for consumers) live on [Interfaces › AMQP event semantics](../interfaces/amqp-events.md). This page stays at the architectural level; that page is the authoritative reference. ## Current inter-service communication @@ -61,12 +37,14 @@ In the current implementation, inter-service coordination happens via: 1. **Celery tasks over RabbitMQ** — `scheduler` fires beat tasks; `realtime-engine` and `schedule-engine` consume them. This is the primary coordination mechanism and is fully operational. 2. **Redis** — `realtime-engine` writes state; `schedule-engine` reads snapshots. No pub/sub; pure key-value reads. 3. **Django ORM (PostgreSQL)** — `orchestrator` persists domain records; `realtime-engine` reads run metadata during lifecycle service calls. - -The AMQP domain event layer (`databus.events` exchange) sits alongside this and will emit structured domain events for external subscribers once the stub is replaced. +4. **AMQP domain events** (`databus.events` topic exchange) — live, not designed-but-pending. Every run lifecycle transition is broadcast fire-and-forget for external subscribers, alongside (not instead of) the three mechanisms above. ## Message envelope -All internal messages share a common envelope that includes correlation metadata (run_id, vehicle_id, actor_role, last_seen_at). The Celery payload dict is the current concrete form of this envelope — see `backend/runs/domain/detection/dispatch.py` for how the dispatcher assembles it. +Two distinct "envelope" concepts exist in the system — don't conflate them: + +- **AMQP domain-event envelope** — the JSON body described under [AMQP layout](#amqp-layout) above, built by `build_envelope` in `backend/messages/publisher.py`. See [Interfaces › AMQP event semantics](../interfaces/amqp-events.md) for the full field reference. +- **Celery task payload** — the internal dict passed between the detection layer and `run_lifecycle_event`, carrying correlation metadata (`run_id`, `vehicle_id`, `actor_role`, `last_seen_at`). This is not published anywhere external; it only exists for the duration of one Celery task dispatch. See `backend/runs/domain/detection/dispatch.py` for how the dispatcher assembles it. ## External telemetry diff --git a/docs/content/architecture/overview.md b/docs/content/architecture/overview.md index 8b95525..2fbebb5 100644 --- a/docs/content/architecture/overview.md +++ b/docs/content/architecture/overview.md @@ -23,12 +23,13 @@ External signals enter the platform at two surfaces: - **REST API** — the `api` Django app accepts operator commands (create-run, confirm, complete, interrupt, short-turn). Authenticated via DRF token auth. - **MQTT telemetry** — vehicles publish GPS and occupancy to the `telemetry-broker` (NanoMQ) on topics of the form `transit/vehicle//{position,occupancy}`. The `realtime-engine` Celery worker picks these up via its embedded MQTT bootstep. +- **HTTP telemetry (polled)** — some vehicles are only reachable via a third-party HTTP+JSON endpoint rather than native MQTT. The `fetch_positions` beat task (every 10 s) polls ACTIVE `operations.Sensor` rows configured for HTTP, then republishes the readings onto the same `transit/vehicle//position` MQTT topic — so from the MQTT bootstep's point of view, HTTP-sourced and natively-MQTT vehicles are indistinguishable. ### Processing The `realtime-engine` worker converts raw telemetry into domain state: -1. Parses and validates each MQTT message. +1. Parses and validates each MQTT message (whether device-originated or bridged in by `fetch_positions`). 2. Writes the telemetry leaf to Redis (`vehicle::position` or `:occupancy`). 3. Enqueues `process_position_update` as a Celery task, which runs server-side map-matching and detection off the paho network thread. 4. Fires lifecycle events (`run_tracking_started`, `run_started`, `run_completed`, …) via `run_lifecycle_event` tasks. @@ -39,7 +40,7 @@ Redis (`state` service) holds the **authoritative real-time picture** of every a ### Projection -Every 15 seconds the `scheduler` fires `build_vehicle_positions` and `build_trip_updates` on the `schedule-engine` worker. That worker reads the Redis snapshot, converts it to protobuf and JSON, and writes GTFS-RT files to `backend/feed/files/`. Alerts are rebuilt every 10 seconds (currently a stub returning an empty feed). See [../data-flow/gtfs-rt-publishing.md](../data-flow/gtfs-rt-publishing.md). +Every 15 seconds the `scheduler` fires `build_vehicle_positions` and `build_trip_updates` on the `schedule-engine` worker. That worker reads the Redis snapshot, converts it to protobuf and JSON, and writes GTFS-RT files to `backend/feed/files/`. A `build_alerts` task exists but is a stub (returns a placeholder string, writes no feed file) and is **not** registered in the beat schedule — it is not currently fired periodically. Separately, `build_schedule` runs once a day to export the current GTFS Schedule zip. See [../data-flow/gtfs-rt-publishing.md](../data-flow/gtfs-rt-publishing.md). ### Persistence diff --git a/docs/content/architecture/services.md b/docs/content/architecture/services.md index 421064d..9c4e489 100644 --- a/docs/content/architecture/services.md +++ b/docs/content/architecture/services.md @@ -25,7 +25,7 @@ Every Databús component has exactly one role and a hard "Does NOT" boundary. Th - `feed` — GTFS data models (Agency, Route, Trip, Stop, StopTime, Shape, Calendar). - `operations` — Vehicle and operator models. - `website` — UI-facing views. -- `messages` — AMQP event publisher (see caveat below). +- `messages` — AMQP domain-event publisher. Not registered in `INSTALLED_APPS` (no `apps.py`, no models) — it is a plain module (`backend/messages/publisher.py`) imported directly by `runs.services.lifecycle.RunLifecycleService`. Fully implemented (durable topic exchange, JSON envelope); see [Messaging model](messaging.md). - `gtfs` — GTFS submodule. **Responsibilities:** @@ -69,6 +69,7 @@ Every Databús component has exactly one role and a hard "Does NOT" boundary. Th 4. Re-reads the latest position from Redis and runs position-leaf detection (`RunStartedDetector`, etc.). - Processes `run_lifecycle_event(event, payload)` tasks — these call `RunLifecycleService.process_event` which executes FSM guards and actions. - Runs `scan_stale_runs` every 30 seconds (scheduled by the `scheduler`) to detect telemetry silence. +- Runs `fetch_positions` every 10 seconds (scheduled by the `scheduler`) to poll HTTP telemetry sources: it builds the in-service vehicle-id set from `vehicle::current_run` keys, queries ACTIVE `operations.Sensor` rows with `source_type` `http`/`both` and `provides_position=True`, fetches each remaining sensor via the registered `"http"` adapter (`realtime_engine/sources/http_json.py`), keeps only readings for in-service vehicles, and republishes the survivors onto `transit/vehicle//position` via `realtime_engine/sources/publisher.py::MqttPublisher`. This re-enters the same NanoMQ topic the MQTT bootstep subscribes to — `fetch_positions` is an HTTP→MQTT bridge, not a separate ingestion path. A `soft_time_limit=25` bounds a single pathological source; the beat entry itself carries `expires=10` so a stale run is revoked rather than queued behind a slow source. **Does NOT:** @@ -82,6 +83,7 @@ Every Databús component has exactly one role and a hard "Does NOT" boundary. Th - `process_position_update(run_id, vehicle_id)` - `run_lifecycle_event(event, payload)` - `scan_stale_runs()` +- `fetch_positions()` --- @@ -96,9 +98,10 @@ Every Databús component has exactly one role and a hard "Does NOT" boundary. Th **Responsibilities:** - Reads Redis snapshots of active runs and vehicles. -- Builds GTFS-RT protobuf and JSON outputs for VehiclePositions, TripUpdates, and Alerts. -- Writes output files to `backend/feed/files/` (`vehicle_positions.{pb,json}`, `trip_updates.{pb,json}`, `alerts.{pb,json}`). +- Builds GTFS-RT protobuf and JSON outputs for VehiclePositions and TripUpdates. +- Writes output files to `backend/feed/files/` (`vehicle_positions.{pb,json}`, `trip_updates.{pb,json}`). - Pushes a WebSocket `"status"` group message via Django Channels after each `build_trip_updates` call. +- Exports the current GTFS Schedule zip daily via `build_schedule()`, which publishes it under `backend/feed/files/` through `feed.schedule.exporter.publish_gtfs_zip`. **Does NOT:** @@ -111,7 +114,8 @@ Every Databús component has exactly one role and a hard "Does NOT" boundary. Th **Key tasks** (`backend/schedule_engine/tasks.py`): - `build_vehicle_positions()` — every 15 s - `build_trip_updates()` — every 15 s -- `build_alerts()` — every 10 s (currently stub: returns `"Feed ServiceAlert built"`) +- `build_schedule()` — daily +- `build_alerts()` — defined but **not registered in the Celery beat schedule** (see its own docstring: "Deliberately NOT registered in the Celery beat schedule"). It is routed to the `schedule_engine` queue if invoked, and currently just returns the placeholder string `"Feed ServiceAlert built"` without writing a feed file. !!! note "AGENTS.md calls this the 'Publisher'" `ARCHITECTURE.md §5` and `AGENTS.md` describe a separate "Publisher" service. In the actual code the projection role is fulfilled by `schedule_engine` running inside the `schedule-engine` Celery worker. There is no standalone publisher process. @@ -134,8 +138,11 @@ Every Databús component has exactly one role and a hard "Does NOT" boundary. Th |---|---| | `schedule_engine.tasks.build_vehicle_positions` | every 15 s | | `schedule_engine.tasks.build_trip_updates` | every 15 s | -| `schedule_engine.tasks.build_alerts` | every 10 s | | `realtime_engine.tasks.scan_stale_runs` | every 30 s | +| `realtime_engine.tasks.fetch_positions` | every 10 s (`expires=10`) | +| `schedule_engine.tasks.build_schedule` | daily | + +`schedule_engine.tasks.build_alerts` is **not** in this schedule — it is a stub task, callable but never fired by beat. !!! note "Beat schedule is in code, not admin" `AGENTS.md` states that the beat schedule is managed via `django_celery_beat` in the admin UI. This is incorrect. The schedule is hardcoded in `app.conf.beat_schedule` in `backend/databus/celery.py` and requires a code change to modify. @@ -193,7 +200,7 @@ In production, Traefik terminates TLS on port 8883 and forwards plain MQTT to Na **Primary use:** Celery task routing between `scheduler`, `realtime-engine`, and `schedule-engine`. -**Designed use (not yet implemented):** AMQP domain events on exchange `databus.events`. See [messaging.md](messaging.md). +**Also carries:** AMQP domain events on the durable topic exchange `databus.events` — live, published by `backend/messages/publisher.py` on every run lifecycle transition. See [messaging.md](messaging.md). --- diff --git a/docs/content/architecture/state-and-persistence.md b/docs/content/architecture/state-and-persistence.md index f137c84..2e8f2bf 100644 --- a/docs/content/architecture/state-and-persistence.md +++ b/docs/content/architecture/state-and-persistence.md @@ -58,16 +58,19 @@ runs:* — index sets and timestamps (realtime-engine) | `run::trip` | Hash | `trip_id`, `route_id`, `direction_id?`, `schedule_relationship?`, `start_time?`, `start_date?` | `update_system_state` action | | `run::vehicle_stop_status` | Hash | `current_status`, `current_stop_sequence?`, `stop_id?` | `produce_stop_status` (progression producer) | | `run::congestion_level` | Hash | `congestion_level` | Producer TBD | -| `run::stop_time_updates` | String (JSON) | JSON array of stop-time-update entries | `produce_stop_times` | +| `run::stop_time_updates` | String (JSON) | JSON array of stop-time-update entries | `produce_stop_times` (60 s staleness TTL) | #### Index and timestamp keys | Key | Type | Purpose | Writer | |---|---|---|---| -| `runs:tracking` | Set | Run IDs currently being tracked (scope for stale scan) | `add_to_tracking_set` / `remove_from_tracking_set` actions | -| `runs:in_progress` | Set | Run IDs in the IN_PROGRESS state | `add_to_in_progress_set` / `remove_from_in_progress_set` actions | +| `runs:tracking` | Set | Scan work queue for `scan_stale_runs`, not a state flag (see note below) | `add_to_tracking_set` / `remove_from_tracking_set` actions | +| `runs:in_progress` | Set | Run IDs in `In Progress` **or** `No Signal` state (see note below) | `add_to_in_progress_set` / `remove_from_in_progress_set` actions | | `runs:last_seen:` | String | ISO-8601 timestamp of last telemetry | MQTT consumer | +!!! note "`runs:tracking` and `runs:in_progress` both outlive `run_tracking_lost`" + The `IN_PROGRESS → NO_SIGNAL` transition (`run_tracking_lost`, `backend/runs/domain/lifecycle/transitions.py`) only runs `sync_lifecycle_state` — it does **not** call `remove_from_tracking_set` or `remove_from_in_progress_set`. A `No Signal` run therefore stays in both sets until it reaches a fully-terminal outcome: `run_tracking_expired` (→ Cancelled), `run_interrupted`, `run_short_turned`, or `run_completed`, all of which do remove it from both. This is deliberate — the code comment on the transition calls `runs:tracking` "the work queue, not a status flag": staying in the set is what lets `scan_stale_runs` later fire `run_tracking_expired` for that same run. One consequence: the GTFS-RT feed builders, which iterate `runs:in_progress`, will still emit an entity for a `No Signal` run (using its last-written Redis snapshot) until it is removed by one of the terminal transitions above. + !!! note "stop_time_updates is a string, not a hash" `run::stop_time_updates` is a Redis **string** key holding a JSON-encoded array, not a hash. It is written with a staleness TTL so a stalled producer lets it expire cleanly rather than serving stale arrival estimates. The GTFS-RT builder treats a missing or empty value as "skip stop_time_update entries." diff --git a/docs/content/concepts/glossary.md b/docs/content/concepts/glossary.md index b646851..f0f56c6 100644 --- a/docs/content/concepts/glossary.md +++ b/docs/content/concepts/glossary.md @@ -83,7 +83,9 @@ A message produced by the realtime-engine when it detects a meaningful state change from telemetry — e.g., `run_tracking_started` or `run_completed`. In the ARCHITECTURE.md messaging model, observations are "derived facts" emitted by the engine and consumed by the orchestrator. The AMQP event publisher -(`backend/messages/publisher.py`) is the intended transport. +(`backend/messages/publisher.py`) is now live and carries these: every FSM +transition (whether command- or detection-triggered) is broadcast on the +`databus.events` topic exchange. See [Interfaces › AMQP event semantics](../interfaces/amqp-events.md). @@ -105,7 +107,12 @@ the lifecycle. See [Run lifecycle › Commands vs detected facts](../runs/comman A message type in the ARCHITECTURE.md model: a claim by the schedule-engine about the published GTFS-RT output (e.g., "VehiclePositions feed written with -N entities"). Currently not emitted (the publisher is a stub). +N entities"). Not currently emitted as an AMQP message — the publisher +(`backend/messages/publisher.py`) is fully implemented but is only called from +the run lifecycle service (see [Observation](#observation)), not from +`schedule_engine`. The closest existing analog is the WebSocket `"status"` +group message `build_trip_updates` pushes via Django Channels after each +build. --- diff --git a/docs/content/concepts/gtfs.md b/docs/content/concepts/gtfs.md index c573b3e..de830bf 100644 --- a/docs/content/concepts/gtfs.md +++ b/docs/content/concepts/gtfs.md @@ -89,11 +89,13 @@ Output file: `backend/feed/files/trip_updates.{pb,json}` — refreshed every 15 ## Feed assembly Both feeds are assembled by the `schedule_engine` app. The beat fires -`build_vehicle_positions` and `build_trip_updates` every 15 seconds, and -`build_alerts` every 10 seconds. The builders read the Redis snapshot via -the telemetry contract `from_redis` helpers, assemble a Python dict in GTFS-RT -shape, convert it with `json_format.ParseDict`, and write both `.json` and -`.pb` variants to `backend/feed/files/`. +`build_vehicle_positions` and `build_trip_updates` every 15 seconds (`build_alerts` +is a stub and is not on the beat schedule — see the warning above). The builders +read the Redis snapshot via the telemetry contract `from_redis` helpers, assemble +a Python dict in GTFS-RT shape, convert it with `json_format.ParseDict`, and write +both `.json` and `.pb` variants to `backend/feed/files/`. Separately, a daily +`build_schedule` task exports the current GTFS Schedule zip via +`feed.schedule.exporter.publish_gtfs_zip`. See [Data flow › GTFS Realtime publishing](../data-flow/gtfs-rt-publishing.md) for the full pipeline and diff --git a/docs/content/concepts/principles.md b/docs/content/concepts/principles.md index cd69249..bc95a97 100644 --- a/docs/content/concepts/principles.md +++ b/docs/content/concepts/principles.md @@ -80,14 +80,26 @@ possible. Meaningful derived facts are preserved; raw signals are transient. -Raw GPS pings are not persisted individually. What is persisted is: +Raw GPS pings are not persisted individually. What is actually persisted +today is: - The `RunLifecycleTransition` record for every FSM state change (with event, - from-state, to-state, guards, actions, and timestamp). -- The `RunProgressEvent` record for stop-arrival events. + from-state, to-state, guards, actions, and timestamp) — this is the one + table with a live writer (`RunLifecycleService`). - GTFS-RT feed blobs (retained approximately one year) as durable snapshots of what was published. -- Position and occupancy records for historical analysis. + +`backend/runs/models.py` also defines `Position`, `VehicleStopStatus`, +`CongestionLevel`, and `OccupancyStatus` tables intended for historical +position/occupancy analysis, but no current code path writes to them (the +`Position.objects.create(...)` call in the API serializer is commented out) — +treat them as reserved schema, not an active audit trail, until a producer +exists. + +!!! note "`RunProgressEvent` does not exist in current code" + Earlier docs and the single checked-in migration (`runs/migrations/0001_initial.py`) + reference a `RunProgressEvent` model. It is not defined in the current + `backend/runs/models.py` — do not rely on it. This keeps the database size manageable and keeps the audit trail focused on what the system concluded, not every raw byte it received. diff --git a/docs/content/concepts/what-is-databus.md b/docs/content/concepts/what-is-databus.md index 5a597f2..905d2cc 100644 --- a/docs/content/concepts/what-is-databus.md +++ b/docs/content/concepts/what-is-databus.md @@ -41,7 +41,7 @@ Vehicle (GPS + occupancy) `trip_updates.pb` — refreshed every 15 seconds, written to `backend/feed/files/`. 4. **Manages** run lifecycle: from a dispatcher creating a run - (`POST /api/create-run`) through detection of tracking, motion, + (`POST /api/create-run/`) through detection of tracking, motion, completion, and eventual expiry. 5. **Persists** durable operational traces in PostgreSQL (with PostGIS for geospatial queries) for auditing and analytics. diff --git a/docs/content/data-flow/gtfs-rt-publishing.md b/docs/content/data-flow/gtfs-rt-publishing.md index f012ad4..b6eb426 100644 --- a/docs/content/data-flow/gtfs-rt-publishing.md +++ b/docs/content/data-flow/gtfs-rt-publishing.md @@ -23,26 +23,46 @@ app.conf.beat_schedule = { "task": "schedule_engine.tasks.build_trip_updates", "schedule": timedelta(seconds=15), }, - "build-alerts-every-10s": { - "task": "schedule_engine.tasks.build_alerts", - "schedule": timedelta(seconds=10), - }, "scan-stale-runs-every-30s": { "task": "realtime_engine.tasks.scan_stale_runs", "schedule": timedelta(seconds=30), }, + "fetch-positions": { + "task": "realtime_engine.tasks.fetch_positions", + "schedule": timedelta(seconds=10), + # A task that couldn't even start within its own 10s cycle is stale + # by the time a worker slot frees up -- revoke it instead of letting + # queued fetch_positions runs pile up behind a slow/unreachable + # source. + "options": {"expires": 10}, + }, + "build-schedule-daily": { + "task": "schedule_engine.tasks.build_schedule", + "schedule": timedelta(days=1), + }, } ``` +`build_alerts` (`schedule_engine.tasks.build_alerts`) is **not** in this dict — +it is deliberately excluded from beat, see the warning below. + | Task | Queue | Cadence | Output | |---|---|---|---| | `build_vehicle_positions` | `schedule_engine` | 15 s | `vehicle_positions.{pb,json}` | | `build_trip_updates` | `schedule_engine` | 15 s | `trip_updates.{pb,json}` + WebSocket push | -| `build_alerts` | `schedule_engine` | 10 s | stub (returns `"Feed ServiceAlert built"`) | -| `scan_stale_runs` | `realtime_engine` | 30 s | lifecycle events only | +| `build_schedule` | `schedule_engine` | daily | GTFS Schedule zip, via `feed.schedule.exporter.publish_gtfs_zip` | + +Two more beat entries fire on this same schedule but are **not** part of the +feed-building pipeline — they belong to `realtime_engine` ingestion and are +covered on [Telemetry ingestion](telemetry-ingestion.md), not here: -!!! warning "Alerts are a stub" - `build_alerts` returns a string and does not write any file. ServiceAlert support is designed but not yet implemented. +| Task | Queue | Cadence | Role | +|---|---|---|---| +| `scan_stale_runs` | `realtime_engine` | 30 s | Fires lifecycle events for quiet runs; writes no feed output. | +| `fetch_positions` | `realtime_engine` | 10 s (`expires=10`) | Polls HTTP telemetry sources and republishes onto MQTT — an ingestion task, not a publisher. | + +!!! warning "Alerts are a stub, and it is not beat-scheduled" + `build_alerts` (`backend/schedule_engine/tasks.py`) still exists as a Celery task — it returns the string `"Feed ServiceAlert built"` and writes no file — but it was removed from `app.conf.beat_schedule`. It only runs if invoked manually (shell, Django admin); nothing calls it on a cadence. ServiceAlert support is designed but not yet implemented. ## Feed assembly: pure builders @@ -120,7 +140,7 @@ backend/feed/files/ └── trip_updates.json # Debug JSON, same content ``` -The `feed` Django app serves these files via a static-file route. In production the `static_files` nginx service (see [Deployment](../operations/deployment.md)) serves them from a shared volume. +These files are served by explicit `feed` app views (`backend/feed/views.py`, routed in `backend/feed/urls.py`) — `GET /realtime/vehicle_positions.{json,pb}` and `/realtime/trip_updates.{json,pb}` each `FileResponse` the corresponding file — not by a generic static-file/nginx route. In `compose.dev.yml` all three backend services bind-mount the same `./backend` host directory, so `feed/files/` written by `schedule-engine` is immediately visible to `orchestrator`. See [Deployment](../operations/deployment.md) for how the output directory is exposed in other environments. ## Feed cadence diagram @@ -143,12 +163,18 @@ sequenceDiagram W-->>W: group_send("status", …) end - loop Every 10 s - B->>W: build_alerts - W-->>W: return stub string + loop Once a day + B->>W: build_schedule + W->>F: gtfs.zip end ``` +`build_alerts` fires on no schedule — it is not in `app.conf.beat_schedule`. +`fetch_positions` (every 10 s, `expires=10`) and `scan_stale_runs` (every 30 s) +also fire on Celery Beat, but on the `realtime_engine` worker, as ingestion +tasks — see [Telemetry ingestion](telemetry-ingestion.md) rather than this +diagram, which covers feed *publishing* only. + ## Related pages - [Live updates (WebSocket)](live-updates.md) — the `group_send` call inside `build_trip_updates`. diff --git a/docs/content/data-flow/index.md b/docs/content/data-flow/index.md index 4ecb89d..f6964c6 100644 --- a/docs/content/data-flow/index.md +++ b/docs/content/data-flow/index.md @@ -43,9 +43,12 @@ sequenceDiagram S->>W: channel_layer.group_send("status", …) ``` +!!! note "This diagram shows the MQTT-native path" + Devices that only expose an HTTP+JSON endpoint don't publish MQTT directly. Instead `realtime_engine.tasks.fetch_positions` polls them every 10 s and republishes onto the same `transit/vehicle//position` topic — from step 2 onward the pipeline is identical either way. See [Telemetry ingestion](telemetry-ingestion.md#http-polling-a-second-producer). + | Page | What it covers | |---|---| -| [Telemetry ingestion](telemetry-ingestion.md) | MQTT consumer bootstep, topic subscriptions, per-leaf pipeline | +| [Telemetry ingestion](telemetry-ingestion.md) | MQTT consumer bootstep, topic subscriptions, per-leaf pipeline, HTTP-polling ingestion path | | [Server-side processing](server-processing.md) | `process_position_update` Celery task and its four steps | | [Map-matching & progression](map-matching.md) | GPS→polyline projection, three-state radius rules, monotonic guard | | [GTFS Realtime publishing](gtfs-rt-publishing.md) | Beat schedule, builders, output files | diff --git a/docs/content/data-flow/map-matching.md b/docs/content/data-flow/map-matching.md index 77885f6..e005d82 100644 --- a/docs/content/data-flow/map-matching.md +++ b/docs/content/data-flow/map-matching.md @@ -160,9 +160,24 @@ Defined at the top of `compute.py`: This dict is written to `run::vehicle_stop_status` by `producer.py` and then re-fed into the detection layer as the synthetic `"progression"` leaf to drive `RunCompletedDetector`. +## Downstream: the ETA / stop-time-updates projection + +`run::vehicle_stop_status` (produced above) feeds a second projection: predicted arrival/departure times for upcoming stops, written to `run::stop_time_updates` and consumed by the TripUpdates GTFS-RT feed (see [Server-side processing](server-processing.md), step 3, and [GTFS Realtime publishing](gtfs-rt-publishing.md)). + +The pure/impure split mirrors `compute.py` / `producer.py`: + +| Module | Role | +|---|---| +| `compute_stop_time_updates` (`backend/runs/domain/progression/stop_times.py`) | Pure: builds the `upcoming_stops` list from `geom.stops` filtered by `current_stop_sequence`/`current_status`, then calls the ETA estimator. | +| `produce_stop_times` (same file) | Impure glue: reads `run:`, `vehicle::position`, and `run::vehicle_stop_status` from Redis, resolves `ShapeGeometry` via the same `shapes.get_shape_geometry` cache used above, and conditionally writes the result. | + +The estimator call itself, `gtfs_eta.eta_service.estimator.estimate_stop_times(...)`, is imported **lazily inside the function** — this is a deliberate seam so a missing/unconfigured ETA model registry (`MODEL_REGISTRY_DIR`) never breaks Celery worker startup. `ETA_MAX_STOPS` (default `3`) caps how many upcoming stops are sent to the estimator per tick; `ETA_DEFAULT_UNCERTAINTY_S` (default `120`) is the uncertainty value attached to every prediction. + +Unlike `compute_stop_status`, which always writes a fallback, `produce_stop_times` writes **only when the estimator returns at least one prediction** — an estimator error or an untrained route leaves the previous `run::stop_time_updates` value untouched, to expire on its own 60-second TTL rather than being overwritten with an empty array. + ## Related pages -- [Server-side processing](server-processing.md) — where `produce_stop_status` is called in the task pipeline. +- [Server-side processing](server-processing.md) — where `produce_stop_status` and `produce_stop_times` are called in the task pipeline. - [Detection layer](../runs/detection.md) — how the computed stop status drives the run lifecycle. - [Data model: telemetry contracts](../data-model/telemetry-contracts.md) — `vehicle_stop_status` contract definition. -- [GTFS Realtime publishing](gtfs-rt-publishing.md) — how the computed status appears in GTFS-RT feeds. +- [GTFS Realtime publishing](gtfs-rt-publishing.md) — how the computed status and stop-time-updates appear in GTFS-RT feeds. diff --git a/docs/content/data-flow/server-processing.md b/docs/content/data-flow/server-processing.md index bbe0c70..10a6296 100644 --- a/docs/content/data-flow/server-processing.md +++ b/docs/content/data-flow/server-processing.md @@ -63,21 +63,28 @@ This is how `RunCompletedDetector` works post-decommission: it no longer reads a !!! note "Why the leaf name is still 'progression'" `RunCompletedDetector` was written to match the `"progression"` leaf and inspect `current_status`. Passing the server-computed dict under the same leaf name preserved backward compatibility with the detector contract without touching the detection layer. The leaf is now synthetic (server-generated), not edge-sent. -### Step 3: stop-time-updates projection +### Step 3: stop-time-updates projection (real ETA estimation) ```python from runs.domain.progression.stop_times import produce_stop_times produce_stop_times(run_id, vehicle_id) ``` -`produce_stop_times` (`backend/runs/domain/progression/stop_times.py`) reads the current run hash and stop-status progression from Redis, delegates to `schedule_engine.fake_stop_times.build_stop_time_updates`, maps the output to the typed contract, and writes the JSON array to `run::stop_time_updates` with a 60-second TTL: +`produce_stop_times` (`backend/runs/domain/progression/stop_times.py`) is the impure glue layer for a real ETA estimator — not a fake/placeholder generator: + +1. Read the run hash and the latest position from Redis. Exit without writing if the run hash is missing, or the position has no `latitude`/`longitude`. +2. Resolve `shape_id`/`trip_id` from the run hash and load the cached `ShapeGeometry` (`runs/domain/progression/shapes.py`, the same geometry map-matching uses). Exit without writing if either id is missing or the geometry can't be loaded — this leaves the last-good projection in Redis to expire naturally via its TTL rather than clobbering it with an empty result. +3. Project the vehicle onto the polyline and build the `upcoming_stops` list: stops at/after the current `current_stop_sequence` (strictly after it when `current_status == "STOPPED_AT"`). +4. Call `gtfs_eta.eta_service.estimator.estimate_stop_times(...)`, imported lazily inside the function so a missing/unconfigured ETA model registry never breaks Celery worker startup. `MODEL_REGISTRY_DIR` (read by `gtfs_eta` itself), `ETA_MAX_STOPS` (default `3`), and `ETA_DEFAULT_UNCERTAINTY_S` (default `120`) control the call. +5. Map each prediction to the `stop_time_updates` contract (`stop_sequence`, `stop_id`, `arrival_time`, `departure_time`, `uncertainty`), dedup by `stop_sequence`, sort ascending. +6. **Write only when the estimator returns at least one prediction.** If the estimator errors, or the route has no trained model, `produce_stop_times` returns without touching Redis at all — the previous projection is left in place to TTL-expire on its own, rather than being overwritten with an empty array. ```python STOP_TIME_UPDATES_TTL_S = 60 r.set(keys.stop_time_updates_key(run_id), payload, ex=STOP_TIME_UPDATES_TTL_S) ``` -The TTL ensures that if a vehicle goes silent, the GTFS-RT builder reads an empty/expired key rather than serving stale arrival predictions. +The TTL ensures that if a vehicle goes silent and nothing refreshes the key, the GTFS-RT builder eventually reads an empty/expired key rather than serving indefinitely stale arrival predictions. ### Step 4: position-leaf detection @@ -107,6 +114,17 @@ flowchart TD Each step is wrapped in its own `try/except`. A failure in any one step is logged and does not abort the remaining steps — the task always attempts all four phases. +## Downstream: `run_lifecycle_event` and idempotent re-fires + +Steps 2 and 4 call `detect_from_telemetry` (`backend/runs/domain/detection/dispatch.py`). When a detector matches, the dispatcher itself queues `realtime_engine.tasks.run_lifecycle_event.delay(event, payload)` — that task, not `process_position_update`, is what actually calls `RunLifecycleService.process_event` and commits the FSM transition. + +Detectors already gate on the run's current lifecycle state before firing, but a detection can still lose a race against an in-flight transition for the same run — e.g. two position pings both observe `Tracking` before the first `RUN_STARTED` transition has landed, so both queue a `run_started` event. `run_lifecycle_event` (`backend/realtime_engine/tasks.py`) tells that harmless re-fire apart from a genuine invalid transition using `target_state_for_event()` (`backend/runs/domain/lifecycle/transitions.py`), which resolves the single `to_state` an event deterministically leads to (or `None` if the event has no transitions or maps to more than one distinct target): + +- If the event's target state resolves unambiguously and the run has *already* reached it, the re-fire is logged at `WARNING` ("no-op re-fire, run already ``") and swallowed — not a failure. +- Any other `RunLifecycleError` — a real invalid transition, or a target state that can't be resolved unambiguously — is logged at `ERROR` via `logger.exception`. + +(commit `452ce10`, which downgraded these benign re-fires from `ERROR` to `WARNING`.) + ## Occupancy: inline, not off-thread Occupancy processing (`HSET vehicle::occupancy` + lifecycle detection) remains inline in the MQTT callback and is not delegated to a Celery task. There are two reasons: @@ -117,6 +135,7 @@ Occupancy processing (`HSET vehicle::occupancy` + lifecycle detection) remai ## Related pages - [Telemetry ingestion](telemetry-ingestion.md) — the MQTT callback that enqueues this task. -- [Map-matching & progression](map-matching.md) — step 1 in detail. +- [Map-matching & progression](map-matching.md) — step 1 in detail, plus the ETA/stop-time projection covered in step 3. - [Celery workers, queues & beat](../operations/celery.md) — queue routing and worker configuration. - [Detection layer](../runs/detection.md) — how `detect_from_telemetry` works. +- [Lifecycle states](../runs/lifecycle-states.md) — the FSM `run_lifecycle_event` drives. diff --git a/docs/content/data-flow/telemetry-ingestion.md b/docs/content/data-flow/telemetry-ingestion.md index 356d4d1..c8e27e6 100644 --- a/docs/content/data-flow/telemetry-ingestion.md +++ b/docs/content/data-flow/telemetry-ingestion.md @@ -2,9 +2,9 @@ icon: lucide/radio --- -# Telemetry ingestion (MQTT) +# Telemetry ingestion (MQTT + HTTP polling) -Vehicles publish telemetry to NanoMQ over MQTT. The `realtime-engine` Celery worker picks it up through an in-process bootstep and routes it into Redis. +Vehicles publish telemetry to NanoMQ over MQTT. The `realtime-engine` Celery worker picks it up through an in-process bootstep and routes it into Redis. A second path exists for devices that only expose an HTTP+JSON endpoint: the `fetch_positions` Celery Beat task polls them and republishes onto the same MQTT topic, so everything below this point in the pipeline is identical regardless of which path produced the message (see [HTTP polling: a second producer](#http-polling-a-second-producer) below). ## The MQTT consumer is a Celery bootstep @@ -132,6 +132,20 @@ r.set(keys.last_seen_key(run_id), now().isoformat()) This key drives the stale-run scanner (`scan_stale_runs`, every 30 s). Writing it synchronously ensures staleness detection is never delayed by queue backlog, even when the `realtime_engine` Celery queue is under load. +## HTTP polling: a second producer + +Not every telemetry device speaks MQTT. `realtime_engine.tasks.fetch_positions` (`backend/realtime_engine/tasks.py`) is a Celery Beat task — scheduled every 10 s as `fetch-positions` in `backend/databus/celery.py`, with `expires=10` so a poll that couldn't even start within its own cycle is revoked instead of queuing up behind a slow/unreachable source — that polls HTTP+JSON telemetry sources (`backend/realtime_engine/sources/http_json.py`) and republishes what it fetches onto the same `transit/vehicle//position` topic this bootstep subscribes to. From that point on, ingestion is indistinguishable from a native MQTT publish. + +Key behaviors: + +- **Same in-service gate as the MQTT consumer.** Only sensors whose assigned vehicle has a `vehicle::current_run` Redis key are fetched at all (commit `6936b30`) — gating on `runs:in_progress` instead would deadlock a `CONFIRMED` run, since it only reaches `IN_PROGRESS` once telemetry proves the vehicle is moving. +- **`soft_time_limit=25`** on the task: a single pathological source (a host that hangs on every request) can't hold a worker slot indefinitely. On `SoftTimeLimitExceeded` the in-flight sensor is logged and the task returns early without publishing. +- **`DEFAULT_TIMEOUT_S = 5`** on the underlying HTTP adapter's own request (`http_json.py`), independent of the task-level soft limit. +- **Misconfigured sensors are skipped with explicit guards, not exceptions** (commit `ee39467`): a sensor with `source_type="http"`/`"both"` but no `source_http_url` is skipped and logged; a record whose mapping doesn't resolve a `vehicle_id` and whose sensor has no `equipment` association is skipped and logged. +- Fetched readings are filtered down to in-service vehicles a second time after the HTTP call returns (a fleet endpoint can report many vehicles from one sensor's URL), then published via `MqttPublisher.publish_batch` (`backend/realtime_engine/sources/publisher.py`) — QoS 0, not retained, same topic and payload shape as a direct device publish. + +This page only summarizes the ingestion mechanics; the full field-by-field mapping contract (JSON-path mapping schema, unit conversions, pre-fetch vs. post-fetch filtering) is documented on [MQTT telemetry contract → HTTP polling ingestion path](../interfaces/mqtt-telemetry.md#http-polling-ingestion-path) — read that page rather than duplicating it here. + ## Consumer pipeline summary ```mermaid diff --git a/docs/content/data-model/django-models.md b/docs/content/data-model/django-models.md index b076018..4a08639 100644 --- a/docs/content/data-model/django-models.md +++ b/docs/content/data-model/django-models.md @@ -15,21 +15,21 @@ following apps each own their model layer. All apps live under `backend/`. The central domain entity. One row per real-world trip execution. -| Field | Type | Notes | -| --- | --- | --- | -| `id` | `UUIDField` (primary key) | Auto-generated with `uuid.uuid7` | -| `vehicle` | `ManyToManyField(Vehicle)` | Typically one vehicle per run | -| `operator` | `ManyToManyField(Operator)` | Typically one operator per run | -| `route_id` | `CharField` | GTFS route_id | -| `trip_id` | `CharField` | GTFS trip_id | -| `direction_id` | `PositiveSmallIntegerField` | GTFS direction_id | -| `shape_id` | `CharField` | GTFS shape_id | -| `request_timestamp` | `DateTimeField` | Auto-set at creation | -| `start_date` | `DateField` | Service date | -| `start_time` | `DurationField` | Scheduled start time | -| `schedule_relationship` | `CharField` | SCHEDULED / ADDED / UNSCHEDULED / CANCELED / DUPLICATED / DELETED | -| `run_lifecycle_state` | `CharField` | Current FSM state; choices from `RunLifecycleStates` | -| `last_event_at` | `DateTimeField` | Timestamp of last lifecycle transition | +| Field | Type | Notes | +| ----------------------- | --------------------------- | ----------------------------------------------------------------- | +| `id` | `UUIDField` (primary key) | Auto-generated with `uuid.uuid7` | +| `vehicle` | `ManyToManyField(Vehicle)` | Typically one vehicle per run | +| `operator` | `ManyToManyField(Operator)` | Typically one operator per run | +| `route_id` | `CharField` | GTFS route_id | +| `trip_id` | `CharField` | GTFS trip_id | +| `direction_id` | `PositiveSmallIntegerField` | GTFS direction_id | +| `shape_id` | `CharField` | GTFS shape_id | +| `request_timestamp` | `DateTimeField` | Auto-set at creation | +| `start_date` | `DateField` | Service date | +| `start_time` | `DurationField` | Scheduled start time | +| `schedule_relationship` | `CharField` | SCHEDULED / ADDED / UNSCHEDULED / CANCELED / DUPLICATED / DELETED | +| `run_lifecycle_state` | `CharField` | Current FSM state; choices from `RunLifecycleStates` | +| `last_event_at` | `DateTimeField` | Timestamp of last lifecycle transition | The `run_lifecycle_state` field mirrors the in-memory state. On run creation it defaults to `RunLifecycleStates.REQUESTED`. The lifecycle service updates @@ -41,42 +41,41 @@ Immutable audit record written by the lifecycle service before any external side-effect. Because it is written before actions run, the log is authoritative even if a downstream action later fails. -| Field | Notes | -| --- | --- | -| `id` | UUID7 primary key | -| `run` | ForeignKey to `Run` (CASCADE) | +| Field | Notes | +| ------------ | ------------------------------------------------ | +| `id` | UUID7 primary key | +| `run` | ForeignKey to `Run` (CASCADE) | | `event_name` | Event string (e.g., `run_confirmed_by_operator`) | -| `from_state` | State before transition | -| `to_state` | State after transition | -| `guards` | JSONField — results of guard checks | -| `actions` | JSONField — results of actions executed | -| `timestamp` | Logical event time | -| `created_at` | Row insertion time | +| `from_state` | State before transition | +| `to_state` | State after transition | +| `guards` | JSONField — results of guard checks | +| `actions` | JSONField — results of actions executed | +| `timestamp` | Logical event time | +| `created_at` | Row insertion time | Indexed on `(run, timestamp)` and `event_name`. The `GET /api/runs//history/` endpoint returns this log ordered by `(timestamp, created_at)`. -### `RunProgressEvent` - -Records stop-level progress events (vehicle arrived at stop, departed, etc.) -for analytics. - -| Field | Notes | -| --- | --- | -| `run` | ForeignKey to `Run` | -| `event_type` | String event type | -| `stop_id` | GTFS stop_id (nullable) | -| `payload` | JSONField | -| `timestamp` | Event time | +!!! note "`RunProgressEvent` does not exist in current code" +The single checked-in migration (`runs/migrations/0001_initial.py`) +defines a `RunProgressEvent` model, but it is **not** present in the +current `backend/runs/models.py`. Do not document or rely on it — the +model file is the source of truth, not the migration. ### `Position`, `VehicleStopStatus`, `CongestionLevel`, `OccupancyStatus` -Normalized GTFS-RT entity records for durable persistence and analytics. -Written by the realtime-engine after processing. These are separate from the -Redis keys — Redis holds the *live* snapshot; these models hold the -*historical trace*. +Normalized GTFS-RT entity tables intended for durable persistence and +analytics, separate from the Redis keys (Redis holds the _live_ snapshot; +these models would hold the _historical trace_). All four are defined in +`backend/runs/models.py` and exposed read-only-in-practice through DRF +ViewSets in `backend/api/views.py`, but **no current code path writes rows +into them** — a repo-wide search finds no `.objects.create(...)` call for any +of the four, and the one write path that exists, +`Position.objects.create(...)` in `api/serializers.py`, is commented out. +Treat these as reserved schema until a producer is implemented, not as an +active audit trail. --- @@ -88,40 +87,63 @@ Operational domain: companies, operators, vehicles, equipment. Wrapper for a transit agency. Linked one-to-one to a `feed.Agency`. -| Field | Notes | -| --- | --- | -| `id` | CharField primary key | -| `linked_agency` | OneToOneField to `feed.Agency` | -| `name`, `description`, `phone`, `email`, `website` | Contact info | -| `location` | PointField | +| Field | Notes | +| -------------------------------------------------- | ------------------------------ | +| `id` | CharField primary key | +| `linked_agency` | OneToOneField to `feed.Agency` | +| `name`, `description`, `phone`, `email`, `website` | Contact info | +| `location` | PointField | ### `Operator` A person who drives or dispatches runs. Linked one-to-one to a Django `User`. -| Field | Notes | -| --- | --- | -| `id` | CharField primary key | -| `user` | OneToOneField to `auth.User` | -| `company` | ManyToManyField to `Company` | -| `phone`, `photo` | Contact info | +| Field | Notes | +| ---------------- | ---------------------------- | +| `id` | CharField primary key | +| `user` | OneToOneField to `auth.User` | +| `company` | ManyToManyField to `Company` | +| `phone`, `photo` | Contact info | ### `Vehicle` A physical vehicle that can be assigned to a run. -| Field | Notes | -| --- | --- | -| `id` | CharField primary key | -| `company` | ForeignKey to `Company` | -| `label` | Human-readable identifier | -| `license_plate` | Plate number | +| Field | Notes | +| ----------------------- | ------------------------------------------------------------------------- | +| `id` | CharField primary key | +| `company` | ForeignKey to `Company` | +| `label` | Human-readable identifier | +| `license_plate` | Plate number | | `wheelchair_accessible` | Enum (NO_VALUE / UNKNOWN / WHEELCHAIR_ACCESIBLE / WHEELCHAIR_INACCESIBLE) | ### `DataProvider`, `Equipment`, `EquipmentLog` Support models for on-board equipment registration and telemetry source -tracking. +tracking. `Equipment.save()` appends an immutable snapshot to `EquipmentLog` +on every save. + +### `Sensor` + +A logical telemetry feed (of one or more data types) registered on a piece of +`Equipment`. Most fields are nullable — code that reads a `Sensor` guards +against `equipment`, `equipment.vehicle`, and the `source_*` fields all being +absent. + +| Field | Notes | +| ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | +| `id` | UUID primary key | +| `equipment` | ForeignKey to `Equipment` (nullable) | +| `provides_position`, `provides_occupancy`, `provides_vehicle`, … | Booleans flagging which data types this sensor supplies | +| `source_type` | `mqtt` / `http` / `both` (nullable) | +| `source_http_url` | URL polled by the `"http"` adapter when `source_type` is `http` or `both` | +| `source_json_mapping` | JSONField describing how to extract `lat`/`lon`/`speed`/`odometer`/`timestamp`/`vehicle_id` from the endpoint's response | +| `status` | `ACTIVE` / `INACTIVE` | + +`realtime_engine.tasks.fetch_positions` (every 10 s) queries `ACTIVE` sensors +with `provides_position=True` and `source_type` in `["http", "both"]`, fetches +each via `realtime_engine/sources/http_json.py`, and republishes readings for +in-service vehicles onto MQTT. See [Architecture › Services & mandates](../architecture/services.md#realtime-engine). --- @@ -134,42 +156,42 @@ models. All extend abstract base classes from the `gtfs` submodule: -| Model | Extends | GTFS file | -| --- | --- | --- | -| `Agency` | `BaseAgency` | `agency.txt` | -| `Stop` | `BaseStop` | `stops.txt` | -| `Route` | `BaseRoute` | `routes.txt` | -| `Calendar` | `BaseCalendar` | `calendar.txt` | -| `CalendarDate` | `BaseCalendarDate` | `calendar_dates.txt` | -| `Shape` | `BaseShape` | `shapes.txt` | -| `Trip` | `BaseTrip` | `trips.txt` | -| `StopTime` | `BaseStopTime` | `stop_times.txt` | +| Model | Extends | GTFS file | +| --------------- | ------------------- | --------------------- | +| `Agency` | `BaseAgency` | `agency.txt` | +| `Stop` | `BaseStop` | `stops.txt` | +| `Route` | `BaseRoute` | `routes.txt` | +| `Calendar` | `BaseCalendar` | `calendar.txt` | +| `CalendarDate` | `BaseCalendarDate` | `calendar_dates.txt` | +| `Shape` | `BaseShape` | `shapes.txt` | +| `Trip` | `BaseTrip` | `trips.txt` | +| `StopTime` | `BaseStopTime` | `stop_times.txt` | | `FareAttribute` | `BaseFareAttribute` | `fare_attributes.txt` | -| `FareRule` | `BaseFareRule` | `fare_rules.txt` | -| `FeedInfo` | `BaseFeedInfo` | `feed_info.txt` | +| `FareRule` | `BaseFareRule` | `fare_rules.txt` | +| `FeedInfo` | `BaseFeedInfo` | `feed_info.txt` | All are scoped to a `Feed` (identified by `feed_id`) via a ForeignKey. The `is_current` flag on `Feed` identifies the active dataset. Additional Databús-specific models: -| Model | Purpose | -| --- | --- | -| `GeoShape` | PostGIS `LineStringField` geometry for route shapes — used by map-matching | -| `RouteStop` | Stop sequence per route + shape + direction | -| `TripDuration` | Trip duration metadata for scheduling | -| `TripTime` | Departure times at timepoints (for the run-scheduling UI) | -| `GTFSProvider` | Registry of GTFS data providers and feed URLs | +| Model | Purpose | +| --------------- | -------------------------------------------------------------------------- | +| `GeoShape` | PostGIS `LineStringField` geometry for route shapes — used by map-matching | +| `RouteStop` | Stop sequence per route + shape + direction | +| `TripDuration` | Trip duration metadata for scheduling | +| `TripTime` | Departure times at timepoints (for the run-scheduling UI) | +| `FeedPublisher` | Registry of GTFS data providers and feed URLs | ### GTFS Realtime persistence models -| Model | Maps to | -| --- | --- | -| `FeedMessage` | GTFS-RT FeedMessage header | -| `VehiclePosition` | Normalized VehiclePosition entity | -| `TripUpdate` | Normalized TripUpdate entity | -| `StopTimeUpdate` | Normalized StopTimeUpdate per TripUpdate | -| `Alert` | Draft Alert model (TODO: align with GTFS-RT Alert schema) | +| Model | Maps to | +| ----------------- | --------------------------------------------------------- | +| `FeedMessage` | GTFS-RT FeedMessage header | +| `VehiclePosition` | Normalized VehiclePosition entity | +| `TripUpdate` | Normalized TripUpdate entity | +| `StopTimeUpdate` | Normalized StopTimeUpdate per TripUpdate | +| `Alert` | Draft Alert model (TODO: align with GTFS-RT Alert schema) | --- diff --git a/docs/content/data-model/redis-keys.md b/docs/content/data-model/redis-keys.md index 7e5ad51..e649283 100644 --- a/docs/content/data-model/redis-keys.md +++ b/docs/content/data-model/redis-keys.md @@ -237,7 +237,7 @@ stop. See [Run lifecycle › Detection layer](../runs/detection.md). | Function | `keys.stop_time_updates_key(run_id)` | | Writer | Stop-times producer (`runs/domain/progression/stop_times.py`) | | Reader | `schedule_engine/builders.py::build_trip_update_entity` | -| TTL | Staleness TTL (set by producer; absent key = skip stop_time_update in feed) | +| TTL | 60 s (`STOP_TIME_UPDATES_TTL_S` in `runs/domain/progression/stop_times.py`); absent key = skip stop_time_update in feed | !!! warning "Not a hash" This key is a Redis **string** holding a JSON-encoded array. Do not @@ -285,8 +285,13 @@ Holds an ISO-8601 timestamp of the last telemetry received for this run. Written synchronously (not via the Celery task queue) so staleness detection is never delayed by queue latency. -Used by `scan_stale_runs` to trigger `run_tracking_lost` (> 60 s staleness -while `IN_PROGRESS`) and `run_tracking_expired` (> 300 s while `NO_SIGNAL`). +Used by `scan_stale_runs` to trigger `run_tracking_lost` (staleness beyond +`TELEMETRY_GRACE_S` = 60 s while `IN_PROGRESS`) and `run_tracking_expired` +(staleness beyond `TELEMETRY_EXPIRY_S` = 600 s while `NO_SIGNAL`). Both +constants live in `runs/domain/detection/thresholds.py` — the module's own +docstring notes these two values previously disagreed between +`realtime_engine/tasks.py` (300 s) and `runs/domain/lifecycle/guards.py` +(600 s) and were consolidated to this single source of truth at 600 s. --- @@ -295,13 +300,17 @@ while `IN_PROGRESS`) and `run_tracking_expired` (> 300 s while `NO_SIGNAL`). | Attribute | Value | | --- | --- | | Redis type | Set | -| Writer | Lifecycle action | +| Writer | Lifecycle actions `add_to_tracking_set` / `remove_from_tracking_set` (`runs/domain/lifecycle/actions.py`) | | Reader | `scan_stale_runs`, `RunTrackingStartedDetector` | | TTL | None | -Set of `run_id` values for runs that have started receiving telemetry -(i.e., have reached `Tracking` state or beyond). Used as the scan target for -stale-run detection. +Set of `run_id` values for runs that have started receiving telemetry (added +on `Confirmed → Tracking`, `run_tracking_started`). This is the **scan work +queue** for `scan_stale_runs`, not a live status flag: entering `No Signal` +(`run_tracking_lost`) does **not** remove the run — the transition's action +list is only `sync_lifecycle_state` (`runs/domain/lifecycle/transitions.py`). +A run is removed only on a fully-terminal outcome: `run_tracking_expired`, +`run_interrupted`, `run_short_turned`, or `run_completed`. --- @@ -310,13 +319,17 @@ stale-run detection. | Attribute | Value | | --- | --- | | Redis type | Set | -| Writer | Lifecycle action | +| Writer | Lifecycle actions `add_to_in_progress_set` / `remove_from_in_progress_set` (`runs/domain/lifecycle/actions.py`) | | Reader | Feed builders (`build_vehicle_positions_feed`, `build_trip_updates_feed`) | | TTL | None | -Set of `run_id` values for runs currently in `In Progress` state. The feed -builders iterate this set to determine which runs to include in the GTFS-RT -output. +Set of `run_id` values for runs in `In Progress` **or** `No Signal` state — +not `In Progress` alone. Same reasoning as `runs:tracking` above: +`run_tracking_lost` (`In Progress → No Signal`) does not call +`remove_from_in_progress_set`, so the run stays in the set until a terminal +transition removes it. The feed builders iterate this set to determine which +runs to include in the GTFS-RT output, so a `No Signal` run's last-written +Redis snapshot keeps appearing in the feed until it is removed. --- diff --git a/docs/content/data-model/schedule-engine.md b/docs/content/data-model/schedule-engine.md index 724f583..f7ec3f7 100644 --- a/docs/content/data-model/schedule-engine.md +++ b/docs/content/data-model/schedule-engine.md @@ -81,14 +81,15 @@ Key constants: ## Celery tasks -`backend/schedule_engine/tasks.py` contains the four periodic Celery tasks on -the `schedule_engine` queue: +`backend/schedule_engine/tasks.py` contains four Celery tasks routed to the +`schedule_engine` queue; three of them are on the beat schedule: | Task | Schedule | Notes | | --- | --- | --- | | `build_vehicle_positions` | Every 15 s | Writes `vehicle_positions.{pb,json}` | | `build_trip_updates` | Every 15 s | Writes `trip_updates.{pb,json}` + pushes WebSocket heartbeat | -| `build_alerts` | Every 10 s | **Stub** — returns `"Feed ServiceAlert built"` | +| `build_schedule` | Daily | Exports the current GTFS Schedule zip via `feed.schedule.exporter.publish_gtfs_zip` | +| `build_alerts` | **Not scheduled** | **Stub** — returns the placeholder string `"Feed ServiceAlert built"`, writes no feed file. Its own docstring notes it is "Deliberately NOT registered in the Celery beat schedule." Callable directly (routed to `schedule_engine`), but beat never fires it. | The schedule is configured in `backend/databus/celery.py` via `app.conf.beat_schedule` and **not** in `django_celery_beat` admin (despite what `AGENTS.md` states). diff --git a/docs/content/interfaces/amqp-events.md b/docs/content/interfaces/amqp-events.md index ab22a5d..124e069 100644 --- a/docs/content/interfaces/amqp-events.md +++ b/docs/content/interfaces/amqp-events.md @@ -4,19 +4,14 @@ icon: lucide/git-branch # AMQP Event Semantics -Databús uses RabbitMQ as its internal async message backbone. The design -defines three message types routed through a single direct exchange, and the -routing-key namespace for run-lifecycle events. +Databús uses RabbitMQ as its internal async message backbone for run lifecycle +domain events. Every completed run lifecycle FSM transition is published as a +fire-and-forget message on a durable topic exchange, so other services can +react to run state changes without polling the REST API. -!!! warning "Publisher stub — not yet wired" - The AMQP event publisher (`backend/messages/publisher.py`) is currently a - **stub**. The `publish_event` function prints to stdout instead of - publishing to RabbitMQ. The exchange declaration and producer are - instantiated at module import, but no message is actually sent. - - Domain event emission is **designed, not fully wired**. This page - documents the intended semantics so integrators can plan against the - target API. +The publisher (`backend/messages/publisher.py`) is fully implemented — it is +not a stub. It is called from a single seam in the run lifecycle service and +never blocks or fails the caller's request path. --- @@ -25,90 +20,199 @@ routing-key namespace for run-lifecycle events. | Attribute | Value | | --- | --- | | Name | `databus.events` | -| Type | `direct` | +| Type | `topic` | +| Durable | Yes | | Protocol | AMQP 0-9-1 via Kombu | -| Broker | RabbitMQ (`message-broker` service) | +| Broker | RabbitMQ (`message-broker` service), same connection Celery uses as its broker | +| Connection | `Connection(settings.CELERY_BROKER_URL)`, built lazily on first publish — importing the module never opens a socket | ---- +Source: `backend/messages/publisher.py`. -## Message types +--- -From `ARCHITECTURE.md §6`: +## Routing keys — `runs.lifecycle.*` namespace -| Type | Producer | Meaning | -| --- | --- | --- | -| **Command** | Orchestrator (REST API) | An intentional request directed at another service | -| **Observation** | Realtime-engine | A derived fact detected from telemetry | -| **Assertion** | Schedule-engine (publisher) | A claim about what was published to GTFS-RT | +Every publish is keyed `runs.lifecycle.`, where `` is the +lowercased `.value` of the `RunLifecycleEvents` enum member for the transition +that just completed (`routing_key_for`, `backend/messages/publisher.py`). -All internal messages share a common envelope and include correlation metadata -(intended; not yet enforced by the stub). +| Event (`RunLifecycleEvents`) | Routing key | +| --- | --- | +| `run_requested` | *(not published — set at record creation, not via `process_event`)* | +| `validate_run` | `runs.lifecycle.validate_run` | +| `initialize_run` | `runs.lifecycle.initialize_run` | +| `run_rejected` | `runs.lifecycle.run_rejected` | +| `run_confirmed_by_operator` | `runs.lifecycle.run_confirmed_by_operator` | +| `cancel_run` | `runs.lifecycle.cancel_run` | +| `run_tracking_started` | `runs.lifecycle.run_tracking_started` | +| `run_started` | `runs.lifecycle.run_started` | +| `run_tracking_lost` | `runs.lifecycle.run_tracking_lost` | +| `run_interrupted` | `runs.lifecycle.run_interrupted` | +| `run_short_turned` | `runs.lifecycle.run_short_turned` | +| `run_completed` | `runs.lifecycle.run_completed` | +| `run_tracking_restored` | `runs.lifecycle.run_tracking_restored` | +| `run_tracking_expired` | `runs.lifecycle.run_tracking_expired` | + +Every event in `RunLifecycleEvents` that has at least one entry in the FSM +transition table (`backend/runs/domain/lifecycle/transitions.py`) publishes a +message the moment its transition succeeds. Consumers should bind: + +- `runs.lifecycle.#` — all run lifecycle events, or +- `runs.lifecycle.run_completed` (etc.) — a single event, or +- `runs.#` — everything under the `runs` namespace (forward-compatible with + any future non-lifecycle `runs.*` routing keys). + +Source: `backend/runs/domain/lifecycle/transitions.py`, `backend/messages/publisher.py`. --- -## Routing keys — `runs.*` namespace +## Message envelope + +`build_envelope` (`backend/messages/publisher.py`) produces this JSON body: + +```json +{ + "event": "run_confirmed_by_operator", + "version": 1, + "occurred_at": "2026-08-19T00:00:00+00:00", + "producer": "databus", + "run_id": "0b2b6b2e-...-uuid", + "from_state": "Initialized", + "to_state": "Confirmed", + "data": { + "vehicle_id": "...", + "trip_id": "...", + "route_id": "..." + } +} +``` -The docstring in `backend/messages/publisher.py` sketches the intended -routing-key set: +| Field | Type | Notes | +| --- | --- | --- | +| `event` | string | `RunLifecycleEvents..value` — lowercase snake_case | +| `version` | int | Envelope schema version, currently `1`. Consumers should branch on this if the shape ever changes | +| `occurred_at` | string | ISO-8601 UTC timestamp, generated at publish time (`datetime.now(UTC)`) | +| `producer` | string | Always `"databus"` | +| `run_id` | string | The run's UUID, stringified | +| `from_state` | string | `RunLifecycleStates..value` (e.g. `"Initialized"`) — the state the run transitioned *from* | +| `to_state` | string | `RunLifecycleStates..value` (e.g. `"Confirmed"`) — the state the run transitioned *to* | +| `data` | object | Best-effort extras. The lifecycle service populates whichever of `vehicle_id`, `trip_id`, `route_id` are available on the `Run` at publish time; any missing field is simply omitted, never sent as `null` | -| Routing key | Meaning | -| --- | --- | -| `runs.submission.requested` | A run creation was requested | -| `runs.submission.succeeded` | Run creation and initialization succeeded | -| `runs.submission.failed` | Run creation or initialization failed | -| `runs.validation.succeeded` | GTFS consistency check passed | -| `runs.validation.failed` | GTFS consistency check failed | -| `runs.initialization.succeeded` | Redis state written successfully | -| `runs.initialization.failed` | Redis state write failed | +Note `from_state`/`to_state` carry the FSM's display-style state values +(`"Initialized"`, `"Confirmed"`, `"In Progress"`, …) as defined in +`RunLifecycleStates`, not the upper-snake enum member names. -Client bindings should use `runs.*` to receive all run-lifecycle events. +Source: `backend/messages/publisher.py`, `backend/runs/services/lifecycle.py`. --- -## Current stub implementation - -```python -# backend/messages/publisher.py +## Where events are emitted from + +Every event is published from a single seam: +`RunLifecycleService._publish_run_lifecycle_transition` in +`backend/runs/services/lifecycle.py`, called by `_apply_transition` +immediately after the transition's actions run and the new +`run_lifecycle_state` is persisted to Postgres — but the publish itself is a +fire-and-forget side effect that does not block the request/task path. + +```mermaid +sequenceDiagram + participant Caller as REST view / Celery task + participant Service as RunLifecycleService + participant DB as PostgreSQL (Run) + participant Publisher as messages.publisher + participant RMQ as RabbitMQ (databus.events) + + Caller->>Service: process_event(event, payload) + Service->>Service: check guards, run actions + Service->>DB: run.run_lifecycle_state = to_state; run.save() + Service->>Publisher: publish_event(event, run_id, from_state, to_state, data) + Publisher-->>RMQ: producer.publish(envelope, routing_key="runs.lifecycle.") + Note over Publisher,RMQ: On any broker error: logged and dropped.
Never raised back to Service or Caller. + Service-->>Caller: (to_state, guards, actions) +``` -from kombu import Connection, Exchange, Producer +This means every REST-triggered transition (`POST /api/runs//update/`, +`POST /api/create-run/`) and every telemetry-triggered transition (fired from +`realtime_engine.tasks.run_lifecycle_event`, driven by the detection layer) +produces the same event shape on the same exchange — there is no separate +"internal" vs "external" event path. -connection = Connection("amqp://guest:guest@localhost/") -exchange = Exchange("databus.events", type="direct") -producer = Producer(connection, exchange=exchange) +--- +## Error policy: fire-and-forget, log-and-drop + +Publishing a domain event is a deliberate best-effort side effect, not a +guaranteed delivery: + +- `publish_event` wraps the entire publish in a `try`/`except Exception`. Any + connection error, channel error, or broker rejection is caught, logged with + `logger.warning(..., exc_info=True)`, and **swallowed** — it never + propagates back into the FSM transition path. +- A small bounded retry is attempted first (`max_retries=2`, + `interval_start=0`, `interval_step=0.2`, `interval_max=0.5`, passed to + kombu's `Producer.publish(retry=True, retry_policy=...)`), but there are no + publisher confirms and no outbox/at-least-once guarantee beyond that. +- This is intentional: **telemetry and lifecycle processing must never block + or fail because RabbitMQ is unavailable.** A run's FSM transition, its + Postgres persistence, and its audit-log entry (`RunLifecycleTransition`, via + `GET /api/runs//history/`) all complete regardless of whether the AMQP + publish succeeds. +- Consequence for integrators: a consumer that needs strict at-least-once + semantics should treat these AMQP messages as a best-effort notification + stream and reconcile against `GET /api/runs//history/` — the + authoritative, durable audit log — rather than relying on AMQP delivery + alone. + +Source: `backend/messages/publisher.py`, `backend/messages/README.md`. -def publish_event(name: str, data: dict): - """Publish an event to the databus.events exchange.""" - print(f"Printing event {name} with data: {data}") -``` +--- -The `connection`, `exchange`, and `producer` objects are instantiated but -`publish_event` only prints. No `producer.publish()` call exists yet. +## Which transitions produce events + +Any transition executed through `RunLifecycleService.process_event` that +passes its guards publishes an event — this covers essentially the whole FSM: +registration (`validate_run`, `initialize_run`), rejection/cancellation +(`run_rejected`, `cancel_run`), operator confirmation +(`run_confirmed_by_operator`), tracking and progress +(`run_tracking_started`, `run_started`), deviations +(`run_tracking_lost`, `run_interrupted`, `run_short_turned`), completion +(`run_completed`), and recovery/expiry (`run_tracking_restored`, +`run_tracking_expired`). The one exception is `run_requested`: a run enters +`Requested` state at record creation (`Run.objects.create(...)` in +`CreateRunViewSet`), not through `process_event`, so no lifecycle event is +published for it. + +See the full transition table in +`backend/runs/domain/lifecycle/transitions.py` and the REST-facing surface in +[REST API › Run lifecycle endpoints](rest-api.md#run-lifecycle-endpoints). --- -## What this means for integrators +## Integration guidance - RabbitMQ (`message-broker`) is running and healthy in both dev and prod compose stacks. -- The exchange `databus.events` will need to be declared and bound before any - consumer can receive messages. -- Do not build production integrations against AMQP events until the publisher - is wired. Check the git log or CHANGELOG for the commit that replaces the - `print(...)` stub with a real `producer.publish(...)` call. -- The REST API (`POST /api/runs//update/`) and the run lifecycle audit log - (`GET /api/runs//history/`) are the stable integration points today. +- The publisher declares the `databus.events` exchange on every publish + (`declare=[events_exchange]`), so a consumer does not strictly need to + declare it first — but should still declare it (idempotent) plus its own + durable queue, to avoid depending on publish timing. +- Bind your queue with `runs.lifecycle.#` (all run lifecycle events) or a + narrower pattern for the specific events you care about. +- Deserialize the body as JSON and branch on `version` for forward + compatibility. +- Treat delivery as best-effort (see error policy above); use + `GET /api/runs//history/` to reconcile or backfill missed events. --- ## Communication boundaries -From `ARCHITECTURE.md §7`: - -- **Internal messaging** (AMQP): services within the compose network. - Spec: AsyncAPI (domain). Currently stub. +- **Internal messaging** (AMQP): services within the compose network, + currently limited to run lifecycle domain events described on this page. - **External telemetry** (MQTT): vehicles and devices. Spec: `backend/api/realtime.yml`. See [MQTT telemetry](mqtt-telemetry.md). -External telemetry is treated as untrusted signal and must be validated before -entering the domain messaging layer. +External telemetry is treated as untrusted signal and must be validated +before entering the domain messaging layer (see +[MQTT telemetry › Untrusted edge signal stance](mqtt-telemetry.md#untrusted-edge-signal-stance)). diff --git a/docs/content/interfaces/gtfs-rt-feeds.md b/docs/content/interfaces/gtfs-rt-feeds.md index de437db..fb2a23f 100644 --- a/docs/content/interfaces/gtfs-rt-feeds.md +++ b/docs/content/interfaces/gtfs-rt-feeds.md @@ -23,11 +23,13 @@ served statically in production). | `trip_updates.pb` | Protocol Buffer (binary) | `TripUpdate` | 15 s | | `trip_updates.json` | JSON (debug) | `TripUpdate` | 15 s | -!!! warning "ServiceAlert feed: stub" - `build_alerts` runs every 10 s but returns the string - `"Feed ServiceAlert built"` without producing a file. No - `service_alerts.pb` is written. ServiceAlert emission is planned for a - future release. +!!! warning "ServiceAlert feed: stub, not scheduled" + `schedule_engine.tasks.build_alerts` exists but only returns the string + `"Feed ServiceAlert built"` — it never produces a file, so no + `service_alerts.pb`/`.json` is written. It is also **not registered in + the Celery Beat schedule** (`backend/databus/celery.py`) — it never runs + automatically at all, deliberately, per its own docstring. ServiceAlert + emission is planned for a future release. --- @@ -50,10 +52,12 @@ Assembled by `schedule_engine.tasks.build_vehicle_positions` → | `vehicle.vehicle.id` | `vehicle::metadata` → `id` | | | `vehicle.vehicle.label` | `vehicle::metadata` → `label` | | | `vehicle.vehicle.license_plate` | `vehicle::metadata` → `license_plate` | Omitted if absent | +| `vehicle.vehicle.wheelchair_accessible` | `vehicle::metadata` → `wheelchair_accessible` | Omitted if absent | | `vehicle.position.latitude` | `vehicle::position` → `latitude` | | | `vehicle.position.longitude` | `vehicle::position` → `longitude` | | | `vehicle.position.bearing` | `vehicle::position` → `bearing` | Omitted if absent | | `vehicle.position.speed` | `vehicle::position` → `speed` | Omitted if absent | +| `vehicle.position.odometer` | `vehicle::position` → `odometer` | Omitted if absent | | `vehicle.timestamp` | `vehicle::position` → `timestamp` | Lifted from position hash; falls back to `now()` | | `vehicle.current_stop_sequence` | `run::vehicle_stop_status` | Omitted if absent | | `vehicle.stop_id` | `run::vehicle_stop_status` | Omitted if absent | @@ -167,6 +171,10 @@ the protobuf files for that). - `backend/schedule_engine/tasks.py` — Celery tasks - `backend/schedule_engine/builders.py` — pure assembly functions -- `backend/databus/celery.py` — beat schedule (15 s / 15 s / 10 s cadence) +- `backend/databus/celery.py` — beat schedule: `build_vehicle_positions` and + `build_trip_updates` every 15 s, `build_schedule` (GTFS Schedule zip) daily. + The other beat entries (`fetch_positions` every 10 s, `scan_stale_runs` + every 30 s) belong to `realtime_engine`, not the feed-building pipeline — + see [MQTT telemetry › HTTP polling ingestion path](mqtt-telemetry.md#http-polling-ingestion-path) - `backend/runs/domain/telemetry/` — contract modules used by builders - `backend/feed/files/` — output directory (mounted as a volume in production) diff --git a/docs/content/interfaces/mqtt-telemetry.md b/docs/content/interfaces/mqtt-telemetry.md index e1b5e77..6e544c2 100644 --- a/docs/content/interfaces/mqtt-telemetry.md +++ b/docs/content/interfaces/mqtt-telemetry.md @@ -11,6 +11,15 @@ Vehicles (or simulators) publish telemetry to the NanoMQ broker. The Broker: **NanoMQ** at `telemetry-broker:1883` (internal) / `mqtt.:8883` (TLS, production). +!!! note "Two producers, one topic contract" + Position data reaches the `transit/vehicle//position` topic through + two paths: devices/simulators that speak MQTT publish there directly, and + devices that only expose an HTTP+JSON endpoint are polled every 10 s by + the `fetch_positions` Celery task, which republishes what it fetches onto + the same topic. Both paths converge on the single MQTT contract described + below — see [HTTP polling ingestion path](#http-polling-ingestion-path) + for how the second path works. + --- ## Topic grammar @@ -116,10 +125,61 @@ Reports passenger load. 2. `classify_status(occupancy_percentage)` computes the server-policy enum value. 3. `validate_for_write(occ_payload)` validates the combined payload. 4. `r.hset(vehicle::occupancy, mapping=...)` writes the hash. -5. `detect_from_telemetry(run_id, vehicle_id, "occupancy", data)` is called +5. `r.set(runs:last_seen:, now().isoformat())` is written synchronously. +6. `detect_from_telemetry(run_id, vehicle_id, "occupancy", data)` is called inline (not via the Celery queue) — occupancy detection is cheap and must fire lifecycle events immediately for tracking-start and restore detectors. -6. `r.set(runs:last_seen:, now().isoformat())` is written synchronously. + +--- + +## HTTP polling ingestion path + +Not every telemetry device exposes an MQTT publisher — some fleet-tracking +providers (e.g. NavSat-style endpoints) only expose an HTTP+JSON polling +endpoint. For those, `realtime_engine.tasks.fetch_positions` +(`backend/realtime_engine/tasks.py`) is a Celery Beat task, scheduled every +**10 seconds** (`fetch-positions` in `backend/databus/celery.py`, with +`expires=10` so a poll that couldn't even start within its own cycle is +revoked rather than queuing up behind a slow source), that: + +1. Builds the in-service vehicle-id set from every `vehicle::current_run` + key present in Redis — the same gate the MQTT consumer itself uses. +2. Queries `operations.Sensor` rows that are `status="ACTIVE"`, + `provides_position=True`, and `source_type` in `["http", "both"]`. +3. Skips any sensor whose own `equipment.vehicle` is not in the in-service + set (avoids paying the HTTP cost for out-of-service vehicles), then + fetches the remaining sensors via the registered `"http"` adapter + (`backend/realtime_engine/sources/http_json.py`), each call independently + try/excepted so one failing source can't sink the poll. +4. Filters the fetched readings down to in-service vehicles again (a fleet + endpoint can return many vehicles from a single sensor's URL, not just the + one tied to that sensor's own equipment). +5. Publishes the survivors via `MqttPublisher.publish_batch` + (`backend/realtime_engine/sources/publisher.py`) onto + `transit/vehicle//position`, QoS 0, not retained — **the exact + same topic and payload shape** the MQTT consumer already subscribes to. + +The task carries a `soft_time_limit=25` so one pathological source (a host +that hangs on every request) can't hold a worker slot indefinitely; on +`SoftTimeLimitExceeded` it logs the in-flight sensor and returns early +without publishing. + +**HTTP+JSON adapter mapping:** a `Sensor` with `source_type="http"` (or +`"both"`) configures `source_http_url` and `source_json_mapping` — a small +schema of JSON-path mappings (`paths.lat`, `paths.lon`, optionally +`paths.speed`, `paths.odometer`, `paths.bearing`, `paths.timestamp`, +`paths.vehicle_id`) plus unit hints (`units.speed: "kmh"`, +`units.odometer: "km"`, converted to SI) and a timestamp format/timezone. +Only `lat`/`lon` are effectively required — a record that can't yield both is +skipped. If the mapping doesn't resolve a `vehicle_id`, the adapter falls +back to the sensor's own `equipment.vehicle`. + +This path only ever produces `position` leaf messages — there is no HTTP +polling equivalent for `occupancy`. + +Source: `backend/realtime_engine/tasks.py::fetch_positions`, +`backend/realtime_engine/sources/http_json.py`, +`backend/realtime_engine/sources/publisher.py`, `backend/databus/celery.py`. --- diff --git a/docs/content/interfaces/rest-api.md b/docs/content/interfaces/rest-api.md index ef4350b..4a1ef2d 100644 --- a/docs/content/interfaces/rest-api.md +++ b/docs/content/interfaces/rest-api.md @@ -12,8 +12,11 @@ layer for GTFS Schedule data. **OpenAPI / ReDoc:** `GET /api/docs/` — interactive documentation generated by `drf-spectacular`. -**Schema download:** `GET /api/docs/schema/` — returns the AsyncAPI YAML for -the realtime interface (`backend/api/realtime.yml`). +**Schema download:** `GET /api/docs/schema/` — returns the OpenAPI 3.0 YAML +that documents the realtime/telemetry submission interface +(`backend/api/realtime.yml`). This is the same file `/api/docs/` renders as +ReDoc — `get_schema` serves it as a static file rather than a dynamically +generated `drf-spectacular` schema. **Authentication:** Token authentication (`TokenAuthentication`) via the `Authorization: Token ` header. Obtain a token with `POST /api/login/`. @@ -61,20 +64,25 @@ Request creation of a new run. This is a synchronous multi-step call: 4. Applies `VALIDATE_RUN` (GTFS consistency check) → state `VALIDATED`. 5. Applies `INITIALIZE_RUN` (writes Redis state, vehicle metadata) → state `INITIALIZED`. -**Request body fields:** +**Request body fields** (validated by `CreateRunSerializer`, +`backend/api/serializers.py`): | Field | Type | Required | Notes | | --- | --- | --- | --- | | `route_id` | string | Yes | GTFS route_id | | `trip_id` | string | Yes | GTFS trip_id | | `shape_id` | string | Yes | GTFS shape_id | -| `direction_id` | int | No | GTFS direction_id | -| `start_date` | date | Yes | Service date (YYYY-MM-DD) | -| `start_time` | duration | No | Scheduled start time | -| `schedule_relationship` | string | No | SCHEDULED / ADDED / UNSCHEDULED / etc. | +| `direction_id` | int | Yes | GTFS direction_id, `>= 0` | +| `schedule_relationship` | string | Yes | One of `SCHEDULED`, `ADDED`, `UNSCHEDULED`, `CANCELED`, `DUPLICATED`, `DELETED` | | `vehicle_id` | string | Yes | Must exist in `operations.Vehicle` | | `operator_id` | string | Yes | Must exist in `operations.Operator` | +!!! note + `Run` has `start_date` and `start_time` model fields + (`backend/runs/models.py`), but `CreateRunSerializer` does not currently + accept either as input — they cannot be set through this endpoint and are + left `null` on the created `Run`. + **Response 200 (success):** ```json { @@ -132,22 +140,37 @@ used by the operator UI and the simulator to send operator commands. | `event` | string | Yes | One of the allowed event values (see below) | | `details` | object | No | Additional payload merged into the event context | -**Allowed event values** (from `RunLifecycleEvents`): +**Allowed event values:** `RunUpdateSerializer.event` is a `ChoiceField` over +every member of `RunLifecycleEvents` +(`backend/runs/domain/lifecycle/events.py`), so any of the values below pass +serializer validation. Whether the request actually succeeds still depends on +the run's current lifecycle state matching a transition for that event in +`backend/runs/domain/lifecycle/transitions.py` — an event with no matching +`(from_state, event)` transition, or one whose guards fail, returns a 422. -| Event string | Meaning | -| --- | --- | -| `run_confirmed_by_operator` | Operator confirms they are ready (`RUN_CONFIRMED`) | -| `run_completed` | Manual completion — run ended successfully (`RUN_COMPLETED`) | -| `run_interrupted` | Manual interrupt — run ended unexpectedly (`RUN_INTERRUPTED`) | -| `run_short_turned` | Manual short-turn — vehicle turned around early (`RUN_SHORT_TURNED`) | -| `cancel_run` | Cancel before the run started | -| `run_tracking_started` | (Usually detected, but can be sent manually) | -| `run_started` | (Usually detected, but can be sent manually) | +| Event string | Meaning | Typical caller | +| --- | --- | --- | +| `validate_run` | GTFS consistency check | Internal (`create-run` flow) | +| `initialize_run` | Writes Redis state | Internal (`create-run` flow) | +| `run_rejected` | Reject/cancel during registration | Internal (`create-run` flow on validation failure) | +| `run_confirmed_by_operator` | Operator confirms they are ready | Operator UI | +| `cancel_run` | Cancel after confirmation, before/while tracking | Operator UI | +| `run_tracking_started` | Vehicle telemetry confirms tracking | Usually detected; can be sent manually | +| `run_started` | Vehicle confirmed moving | Usually detected; can be sent manually | +| `run_tracking_lost` | Telemetry has gone stale | Usually detected (`scan_stale_runs`); can be sent manually | +| `run_interrupted` | Manual interrupt — run ended unexpectedly | Operator UI | +| `run_short_turned` | Manual short-turn — vehicle turned around early | Operator UI | +| `run_completed` | Run ended successfully (manual or automatic) | Operator UI or detection layer | +| `run_tracking_restored` | Telemetry resumed after `run_tracking_lost` | Usually detected; can be sent manually | +| `run_tracking_expired` | Grace period after `run_tracking_lost` exceeded | Usually detected (`scan_stale_runs`) | + +`run_requested` is also a valid enum value but has no entry in the transition +table, so sending it here always returns 422 — a run only reaches `Requested` +via `POST /api/create-run/`'s record creation, not via `process_event`. !!! note - `run_completed` is the event string for both manual and automatic completion. - Commit `54e23f3` renamed `complete_run` → `run_completed` to make clear it is - a **fact** (something that happened), not a command. The REST endpoint + `run_completed` is the event string for both manual and automatic completion — + it is a **fact** (something that happened), not a command. The REST endpoint accepts it as a command in the operator-triggered path; the detection layer fires it automatically in the telemetry-driven path. @@ -169,7 +192,16 @@ used by the operator UI and the simulator to send operator commands. ### `GET /api/runs//history/` -Return the ordered FSM transition audit log for a run. +Return the ordered FSM transition audit log for a run — every `(event, +from_state, to_state)` attempt processed through +`RunLifecycleService.process_event`, whether or not its guards passed. + +!!! note + The run's initial `Requested` state is set by `Run.objects.create(...)` + (a model field default), not by dispatching a `run_requested` event + through `process_event` — so `run_requested` never appears as a + transition here. The first entry for a run created via + `POST /api/create-run/` is its `validate_run` attempt. **Response 200:** ```json @@ -177,12 +209,17 @@ Return the ordered FSM transition audit log for a run. "run_id": "uuid", "transitions": [ { - "event": "run_requested", - "from_state": null, - "to_state": "Requested", + "event": "validate_run", + "from_state": "Requested", + "to_state": "Validated", "timestamp": "2026-06-19T12:00:00+00:00", "actions": {}, - "guards": {} + "guards": { + "is_gtfs_valid": true, + "is_trip_available": true, + "is_vehicle_available": true, + "is_operator_available": true + } } ] } @@ -197,7 +234,7 @@ unless noted. | Endpoint prefix | Model | Notes | | --- | --- | --- | -| `/api/company/` | `Company` | Token auth currently commented out | +| `/api/company/` | `Company` | Token auth currently commented out. `CompanySerializer` is a `HyperlinkedModelSerializer` with `fields = "__all__"` — the response is keyed by `url` (not a bare `id`), and `linked_agency` (the M2M to `Agency`) serializes as a list of hyperlinks | | `/api/operator/` | `Operator` | | | `/api/vehicle/` | `Vehicle` | Filterable by `company` | | `/api/data-provider/` | `DataProvider` | | @@ -249,6 +286,61 @@ Read-only schedule data. Token authentication is currently not enforced. | `GET /api/which-shapes/` | `?route_id=` | Returns GeoShapes for a route | | `GET /api/find-trips/` | `?route_id=&service_id=&shape_id=` | Returns trips with start times and run lifecycle states | +`which-shapes` and `find-trips` back the run-registration UI cascade (pick a +route → its shapes → a candidate trip). Commit `5489fe4` repaired both: the +views previously queried FK/field names that didn't exist on the models +(`RouteStop.route`/`.shape` instead of `linked_route`/`linked_shape`; +`TripTime.trip_time` instead of `departure_time`), so neither endpoint had +ever worked. + +### `GET /api/which-shapes/?route_id=` + +`WhichShapesView` looks up the current `Feed`'s `Route` for `route_id`, then +the distinct `GeoShape`s reachable from it via `RouteStop.linked_route` → +`RouteStop.linked_shape`. Returns `[]` if the route or current feed can't be +resolved. + +**Response 200** (`WhichShapesSerializer`, one object per distinct shape): +```json +[ + { + "shape_id": "string", + "shape_name": "string | null", + "shape_desc": "string | null", + "shape_from": "string | null", + "shape_to": "string | null" + } +] +``` + +### `GET /api/find-trips/?route_id=&service_id=&shape_id=` + +`FindTripsView` filters `Trip` by `route_id`/`service_id`/`shape_id` within +the current feed, resolves each trip's earliest `TripTime` via the +`TripTime.linked_trip` FK (not a bare `trip_id` string match, which could +cross-match a same-numbered trip from a different feed), and tags each result +with the matching `Run`'s current lifecycle state for today's `start_date` — +or `"UNKNOWN"` if no such run exists. All three query parameters are +required; missing any returns 400. + +**Response 200** (`FindTripsSerializer`, one object per trip): +```json +[ + { + "trip_id": "string", + "trip_time": "HH:MM:SS", + "run_lifecycle_state": "Requested | Validated | ... | UNKNOWN", + "direction_id": 0, + "trip_headsign": "string" + } +] +``` + +**Response 400** (missing parameter): +```json +{"error": "Todos los parámetros route_id, service_id, shape_id son requeridos"} +``` + --- ## URL structure diff --git a/docs/content/operations/celery.md b/docs/content/operations/celery.md index 38ac740..8024d2b 100644 --- a/docs/content/operations/celery.md +++ b/docs/content/operations/celery.md @@ -16,7 +16,8 @@ Databús runs three Celery processes: two workers consuming different queues, an │ Tasks: │ │ Tasks: │ │ • process_position_update │ │ • build_vehicle_positions │ │ • run_lifecycle_event │ │ • build_trip_updates │ -│ • scan_stale_runs │ │ • build_alerts │ +│ • scan_stale_runs │ │ • build_alerts (stub, unscheduled) │ +│ • fetch_positions │ │ • build_schedule │ │ │ │ │ │ Bootstep: MQTTConsumerStep │ │ No bootstep active │ │ (gated by MQTT_CONSUMER_ENABLED) │ │ │ @@ -35,8 +36,8 @@ All three processes load `backend/databus/celery.py` as the Celery app. The queu | Queue | Consumed by | Tasks | |---|---|---| -| `realtime_engine` | `realtime-engine` worker | `process_position_update`, `run_lifecycle_event`, `scan_stale_runs` | -| `schedule_engine` | `schedule-engine` worker | `build_vehicle_positions`, `build_trip_updates`, `build_alerts` | +| `realtime_engine` | `realtime-engine` worker | `process_position_update`, `run_lifecycle_event`, `scan_stale_runs`, `fetch_positions` | +| `schedule_engine` | `schedule-engine` worker | `build_vehicle_positions`, `build_trip_updates`, `build_alerts`, `build_schedule` | Queue separation ensures that a spike in MQTT telemetry (many `process_position_update` tasks) does not starve GTFS-RT building tasks, and vice versa. @@ -70,14 +71,24 @@ app.conf.beat_schedule = { "task": "schedule_engine.tasks.build_trip_updates", "schedule": timedelta(seconds=15), }, - "build-alerts-every-10s": { - "task": "schedule_engine.tasks.build_alerts", - "schedule": timedelta(seconds=10), - }, "scan-stale-runs-every-30s": { "task": "realtime_engine.tasks.scan_stale_runs", "schedule": timedelta(seconds=30), }, + "fetch-positions": { + "task": "realtime_engine.tasks.fetch_positions", + "schedule": timedelta(seconds=10), + # A task that couldn't even start within its own 10s cycle is stale + # by the time a worker slot frees up -- revoke it instead of letting + # queued fetch_positions runs pile up behind a slow/unreachable + # source (see fetch_positions' soft_time_limit for the in-flight + # bound on runs that DO start). + "options": {"expires": 10}, + }, + "build-schedule-daily": { + "task": "schedule_engine.tasks.build_schedule", + "schedule": timedelta(days=1), + }, } ``` @@ -85,8 +96,12 @@ app.conf.beat_schedule = { |---|---|---|---|---| | `build-vehicle-positions-every-15s` | `build_vehicle_positions` | `schedule_engine` | 15 s | Rebuild `vehicle_positions.{pb,json}` | | `build-trip-updates-every-15s` | `build_trip_updates` | `schedule_engine` | 15 s | Rebuild `trip_updates.{pb,json}`, push WebSocket heartbeat | -| `build-alerts-every-10s` | `build_alerts` | `schedule_engine` | 10 s | Stub — returns a string, writes no file | | `scan-stale-runs-every-30s` | `scan_stale_runs` | `realtime_engine` | 30 s | Detect `run_tracking_lost` / `run_tracking_expired` | +| `fetch-positions` | `fetch_positions` | `realtime_engine` | 10 s (`expires=10`) | Poll ACTIVE HTTP-source sensors for in-service vehicles and publish their readings over MQTT. Gated on `vehicle::current_run` (the same in-service test the MQTT consumer uses), not on `runs:in_progress` — see the docstring in `backend/realtime_engine/tasks.py`. A cycle that can't even start within its own 10 s window is revoked (`expires=10`) instead of queuing behind a slow/unreachable source. | +| `build-schedule-daily` | `build_schedule` | `schedule_engine` | 1 day | Export the current GTFS Schedule to a zip via `feed.schedule.exporter.publish_gtfs_zip` | + +!!! note "`build_alerts` exists but is not scheduled" + `schedule_engine.tasks.build_alerts` is a real Celery task (queue `schedule_engine`) but is **deliberately not** in `app.conf.beat_schedule`. Its docstring says why: it's a placeholder that returns a fixed string and writes no feed file — the ServiceAlert feed builder isn't implemented yet. It can still be invoked manually (e.g. from the Django admin or a shell), but nothing fires it periodically. ## Celery task monitoring: Flower @@ -107,9 +122,9 @@ Flower connects to RabbitMQ and shows: | Compose service | Celery command | Build target | |---|---|---| -| `realtime-engine` | `celery -A databus worker -Q realtime_engine -l info` | `realtime-engine` | -| `schedule-engine` | `celery -A databus worker -Q schedule_engine -l info` | `schedule-engine` | -| `scheduler` | `celery -A databus beat -l info` | `scheduler` | +| `realtime-engine` | `celery -A databus worker -Q realtime_engine --loglevel=info` | `realtime-engine` | +| `schedule-engine` | `celery -A databus worker -Q schedule_engine --loglevel=info` | `schedule-engine` | +| `scheduler` | `celery -A databus beat --loglevel=info` | `scheduler` | Build targets are defined in `backend/Dockerfile`. Each target installs the same Python environment but sets a different `CMD`. diff --git a/docs/content/operations/configuration.md b/docs/content/operations/configuration.md index 564d3dd..dfcc28b 100644 --- a/docs/content/operations/configuration.md +++ b/docs/content/operations/configuration.md @@ -12,7 +12,8 @@ Databús is configured entirely through environment variables loaded from `.env` |---|---| | `.env.example` | Template committed to the repository. Contains safe defaults and empty slots for secrets. | | `.env` | Your local configuration. **Never commit this file.** | -| `.env.prod` | Production overrides (domains, TLS, credentials). Loaded alongside `.env` by `compose.prod.yml`. | +| `.env.dev` | Development overrides (`DEBUG=True`, `DJANGO_SERVE_STATIC=True`, dev ETA-model defaults, `MQTT_HOST`/`MQTT_PORT`). Loaded alongside `.env` by `compose.dev.yml` (`env_file: [.env, .env.dev]` on every backend service). | +| `.env.prod` | Production overrides (`DEBUG=False` today; add domains/TLS/credential overrides here if they differ from `.env`). Loaded alongside `.env` by `compose.prod.yml`. | ## Variable reference @@ -25,6 +26,7 @@ Databús is configured entirely through environment variables loaded from `.env` | `DEBUG` | *(not set)* | No | Set to `True` for development. Never set in production. | | `STATIC_URL` | `/static/` | No | URL prefix for static files. | | `MEDIA_URL` | `/media/` | No | URL prefix for media files. | +| `DJANGO_SERVE_STATIC` | *(unset, i.e. falsy)* | No | When truthy (`1`/`true`/`yes`/`on`), serves `STATIC_URL`/`MEDIA_URL` through Django even outside `DEBUG` (`databus/urls.py`). `DEBUG=True` already implies this; set it explicitly to serve static/media without full `DEBUG`. `.env.dev` sets it to `True`. | ### Database (PostgreSQL / PostGIS) @@ -45,6 +47,8 @@ Databús is configured entirely through environment variables loaded from `.env` | `REDIS_PASSWORD` | `redispassword` | Yes (prod) | Redis AUTH password. Required in `compose.prod.yml` (the `state` service starts with `--requirepass`). Leave empty for bare-metal dev without auth. | | `REDIS_DB` | `0` | No | Redis database index. | +All Redis clients in `databus` — `realtime_engine/tasks.py`, `realtime_engine/mqtt.py`, `schedule_engine/tasks.py`, `runs/domain/lifecycle/{guards,actions}.py`, `runs/domain/detection/dispatch.py`, `runs/domain/progression/{producer,stop_times}.py` — are built via the shared factory in `databus/redis_client.py`, and the Channels `CHANNEL_LAYERS` config in `databus/settings.py` follows the same env vars directly. All of them honor `REDIS_PASSWORD` when it is set. Leaving it empty or unset (the dev default) connects without AUTH, so bare-metal dev without auth keeps working unchanged. + ### RabbitMQ (AMQP message broker) | Variable | Default | Required | Purpose | @@ -65,6 +69,16 @@ Databús is configured entirely through environment variables loaded from `.env` !!! warning "Do not set MQTT_CONSUMER_ENABLED=true on multiple workers" Each worker that has this variable enabled will subscribe to the broker and process every MQTT message. That means double-processing all telemetry. The compose files are pre-configured correctly; only change this if you know what you are doing. +### ETA prediction (gtfs-eta) + +Read by `backend/runs/domain/progression/stop_times.py`, which is called by `realtime_engine.tasks.process_position_update` after every position write to keep `run::stop_time_updates` current for the GTFS-RT `trip_updates` builder. + +| Variable | Default | Required | Purpose | +|---|---|---|---| +| `MODEL_REGISTRY_DIR` | *(none in databus code)* | Yes | Directory where the `gtfs_eta` model registry lives. Read directly by the `gtfs_eta` package itself, not by a `databus` default — must be set before starting a worker that runs `process_position_update`. `.env.example`/`.env.dev` set it to `eta_models`. | +| `ETA_MAX_STOPS` | `3` | No | Maximum number of upcoming stops passed to the ETA estimator per position tick. `.env.dev` overrides this to `10` for local development. | +| `ETA_DEFAULT_UNCERTAINTY_S` | `120` | No | Uncertainty (seconds) attached to every predicted arrival, passed through to the GTFS-RT feed. | + ### Production domain routing (Traefik) These variables are only meaningful when running `compose.prod.yml`. They configure Traefik router rules. @@ -87,15 +101,18 @@ These variables control which host ports the compose services bind to in develop | Variable | Default | Mapped service | |---|---|---| | `BACKEND_PORT` | `8000` | Django (orchestrator) | -| `DATABASE_PORT` | `5432` | PostgreSQL | | `STATE_PORT` | `6379` | Redis | | `MQTT_BROKER_PORT` | `1883` | NanoMQ | | `MESSAGE_BROKER_AMQP_PORT` | `5672` | RabbitMQ AMQP | | `MESSAGE_BROKER_MANAGEMENT_PORT` | `15672` | RabbitMQ management UI | +| `MESSAGE_BROKER_PROMETHEUS_PORT` | `15692` | RabbitMQ Prometheus metrics | | `ANALYTICS_PORT` | `4200` | Prefect | | `TASK_MONITORING_PORT` | `5555` | Flower | | `USER_INTERFACE_PORT` | `13000` | Nuxt frontend | +!!! note "PostgreSQL has no host port mapping in `compose.dev.yml`" + `.env.example` still defines `DATABASE_PORT=5432`, but the `database` service in `compose.dev.yml` has no `ports:` entry — it is internal-only, reachable from other containers but not from the host. `./scripts/dev.sh` prints the same thing at startup ("PostgreSQL (database) internal only"). Reach it from the host with `docker compose -f compose.dev.yml exec database psql -U postgres`. + ### Other | Variable | Default | Purpose | diff --git a/docs/content/operations/deployment.md b/docs/content/operations/deployment.md index acc3e7f..d151a05 100644 --- a/docs/content/operations/deployment.md +++ b/docs/content/operations/deployment.md @@ -27,7 +27,10 @@ cp .env.example .env ./scripts/prod.sh ``` -`prod.sh` initialises submodules, builds images, and starts `compose.prod.yml`. +`prod.sh` builds images and starts `compose.prod.yml`. + +!!! warning "gtfs-eta has no production dependency path yet" + `backend/gtfs-eta` is a committed symlink to `../../gtfs-eta` (a sibling repo, `simovilab/gtfs-eta`), and `backend/pyproject.toml` declares it as an editable `[tool.uv.sources]` path dependency. `compose.dev.yml` makes this work by bind-mounting `../gtfs-eta:/gtfs-eta` into every backend service — but `compose.prod.yml` has **no equivalent bind mount or build-context provision** for `gtfs-eta`. The `backend` build stage's `COPY --chown=app:app . .` (`backend/Dockerfile`) only has access to `./backend` as its build context, so the symlink has no target to resolve inside the image, and the `uv sync` that installs it as an editable path dependency will fail. This is a known pre-release gap — the deployment host needs a working `gtfs-eta` dependency path before a production build succeeds; how that gets resolved is not yet decided. ## Environment variables @@ -138,12 +141,14 @@ Redis runs with `--appendonly yes` for durability. The AOF journal persists the ## Common operations +`backend/docker-entrypoint.sh` already runs `manage.py migrate --noinput` automatically every time the `orchestrator` container starts (gated on `DJANGO_SETUP=True`, which only `orchestrator` sets). Unlike development, it does **not** run `makemigrations` in production — that step is gated on `DEBUG`, and `.env.prod` sets `DEBUG=False`. Migration directories are gitignored (not committed), so `manage.py migrate` in production applies whatever migration files happen to be present in the Docker build context when `compose.prod.yml build` runs — a fresh `git clone` with no prior dev build has none. In practice this means production deploys today rely on migrations already having been generated on the build machine (e.g. by a prior dev build) rather than on a committed or CI-generated set. + ```bash # Rebuild and restart after code changes docker compose -f compose.prod.yml build orchestrator user-interface docker compose -f compose.prod.yml up -d orchestrator user-interface -# Django management in production +# Django management in production (manual migrate is rarely needed — see above) docker compose -f compose.prod.yml exec orchestrator uv run python manage.py migrate docker compose -f compose.prod.yml exec orchestrator uv run python manage.py createsuperuser diff --git a/docs/content/operations/development.md b/docs/content/operations/development.md index 254d3e6..4648360 100644 --- a/docs/content/operations/development.md +++ b/docs/content/operations/development.md @@ -4,7 +4,7 @@ icon: lucide/terminal # Local development -All development is Docker-based. The `scripts/dev.sh` wrapper handles submodule initialisation, image pulls, and health-check waiting, so the recommended workflow is a single command. +All development is Docker-based. The `scripts/dev.sh` wrapper handles image pulls and health-check waiting, so the recommended workflow is a single command. (It also runs a legacy Git-submodule step that is a no-op today — see the note below.) ## Prerequisites @@ -13,7 +13,7 @@ All development is Docker-based. The `scripts/dev.sh` wrapper handles submodule For macOS/Linux bare-metal work (without Docker), you additionally need: -- Python 3.11+ +- Python 3.14+ (`backend/pyproject.toml` pins `requires-python = ">=3.14"`) - `uv` (package manager) - Redis, PostgreSQL/PostGIS, RabbitMQ, NanoMQ running locally @@ -31,7 +31,15 @@ cp .env.example .env ./scripts/dev.sh ``` -`dev.sh` initialises Git submodules (the `gtfs` submodule under `backend/`), pulls and builds images, starts all compose services, and waits for health checks to pass. On first run this takes 1–2 minutes. +`dev.sh` pulls and builds images, starts all compose services, and waits for health checks to pass. On first run this takes 1–2 minutes. + +!!! note "GTFS dependencies: three different mechanisms, not a submodule" + `scripts/dev.sh` still contains a legacy step that tries to `git submodule update --init --recursive` for a `backend/gtfs` submodule — but the repo has no `.gitmodules` file and no `backend/gtfs` directory, so that step is a no-op today. The GTFS dependencies actually come from: + + - **`gtfs-io`** and **`gtfs-django`** — cloned directly from GitHub (`simovilab/gtfs-io`, `simovilab/gtfs-django`) by `backend/docker-entrypoint.sh` the first time any backend container starts, then installed editable (`uv add --editable ./gtfs-io`, `./gtfs-django`) as part of Django setup on the `orchestrator` container (gated by `DJANGO_SETUP=True`). All four Python services share the resulting `backend_venv` volume. + - **`gtfs-eta`** — a sibling-repo path dependency, *not* cloned automatically. `backend/gtfs-eta` is a committed symlink to `../../gtfs-eta`, and `compose.dev.yml` bind-mounts `../gtfs-eta:/gtfs-eta` (read-write, since `uv sync`'s editable install writes a gitignored `.egg-info/` into the source tree) for `orchestrator`, `realtime-engine`, `schedule-engine`, and `scheduler`. You must have `simovilab/gtfs-eta` checked out as a sibling directory of `databus/` (i.e. `../gtfs-eta` relative to this repo) before `docker compose -f compose.dev.yml up` will build successfully. See `backend/pyproject.toml`'s `[tool.uv.sources]` comment for the full path-resolution rationale. + + `compose.prod.yml` has no equivalent `gtfs-eta` bind mount yet — this is a known pre-release gap, not something resolved in the current compose files. ## Daily workflow @@ -56,8 +64,11 @@ docker compose -f compose.dev.yml down All management commands run inside the `orchestrator` container: +!!! note "Migrations are regenerated automatically at container start" + `backend/docker-entrypoint.sh` runs `manage.py makemigrations feed schedule_engine realtime_engine operations` (when `DEBUG` is true) followed by `manage.py migrate --noinput` every time the `orchestrator` container starts (gated by `DJANGO_SETUP=True`, which only `orchestrator` sets in both compose files). Migration directories are gitignored (`migrations/` in the root `.gitignore`) and regenerated from current models rather than committed — you normally don't need to run `makemigrations`/`migrate` by hand in dev; the commands below are for the cases where you do (e.g. re-running after editing models without restarting the container). + ```bash -# Migrations +# Migrations (usually not needed — see note above) docker compose -f compose.dev.yml exec orchestrator uv run python manage.py makemigrations docker compose -f compose.dev.yml exec orchestrator uv run python manage.py migrate @@ -89,7 +100,17 @@ docker compose -f compose.dev.yml exec orchestrator uv run python manage.py upda ## Code quality -All quality tools run from `backend/`: +The repository root has a `Makefile` with the three canonical entry points — use these unless you have a reason not to: + +```bash +make lint # ruff check . — runs locally against backend/, no Docker needed +make typecheck # mypy . — runs inside the orchestrator container (docker compose run --rm) +make test # pytest -q — runs inside the orchestrator container (docker compose run --rm) +``` + +`lint` runs locally because `ruff` doesn't import Django settings. `typecheck` and `test` run inside the `orchestrator` container because `mypy`'s `django-stubs` plugin (and `pytest-django`) import `databus.settings`, which reads env vars via `python-decouple` and fails outside the container. See the comments in the root `Makefile` for the full rationale. + +Equivalently, from `backend/` (matches what the Makefile invokes): ```bash cd backend @@ -98,49 +119,51 @@ cd backend ruff check . ruff format . -# Type checking +# Type checking (inside the orchestrator container — see above) mypy . -# Tests +# Tests (inside the orchestrator container — see above) pytest pytest tests/ -v pytest tests/test_specific.py::test_function # single test ``` +`ruff` enforces the `D1` (missing-docstring) rule family — every module, class, and function needs a docstring (see `[tool.ruff.lint]` in `backend/pyproject.toml`). `mypy` runs with `django-stubs` and `check_untyped_defs = false`. Both exclude `gtfs-eta` (the sibling repo's own lint/type baseline) and `migrations/` (gitignored, regenerated at container start — see above). + ## Non-Docker (bare-metal) setup For situations where Docker is not available: ```bash -# Create and activate virtual environment -python -m venv .venv -source .venv/bin/activate # Linux / macOS - -# Install dependencies -uv pip install -r backend/requirements.txt - # Copy environment variables cp .env.example .env # Edit .env: set DB_HOST=localhost, REDIS_HOST=localhost, etc. -# Run migrations +# Install dependencies (creates backend/.venv from pyproject.toml + uv.lock — +# there is no backend/requirements.txt in this project) cd backend -python manage.py migrate +uv sync + +# Run migrations +uv run python manage.py migrate # Start workers separately (requires Redis, RabbitMQ, NanoMQ running locally) # Terminal 1: Django -python manage.py runserver +uv run python manage.py runserver # Terminal 2: realtime-engine Celery worker (with MQTT consumer) -MQTT_CONSUMER_ENABLED=true celery -A databus worker -Q realtime_engine -l info +MQTT_CONSUMER_ENABLED=true uv run celery -A databus worker -Q realtime_engine --loglevel=info # Terminal 3: schedule-engine Celery worker -celery -A databus worker -Q schedule_engine -l info +uv run celery -A databus worker -Q schedule_engine --loglevel=info # Terminal 4: Celery beat -celery -A databus beat -l info +uv run celery -A databus beat --loglevel=info ``` +!!! note "GTFS workspace members aren't fetched automatically outside Docker" + `backend/pyproject.toml` declares `gtfs-io` and `gtfs-django` as `[tool.uv.workspace]` members and `gtfs-eta` as an editable `[tool.uv.sources]` path dependency (`backend/gtfs-eta`). Inside Docker, `backend/docker-entrypoint.sh` clones `gtfs-io`/`gtfs-django` from GitHub automatically and `gtfs-eta` arrives via the `compose.dev.yml` bind mount (see the GTFS dependencies note above) — none of that automation runs bare-metal. For a bare-metal `uv sync` to succeed you need `backend/gtfs-io/` and `backend/gtfs-django/` cloned manually (`git clone https://github.com/simovilab/gtfs-io.git backend/gtfs-io`, same for `gtfs-django`) and a `gtfs-eta` checkout reachable at the path `backend/gtfs-eta` resolves to. + !!! note "macOS GDAL/GEOS" PostGIS/GeoDjango on macOS requires GDAL and GEOS to be installed and discoverable. A common approach is `brew install gdal geos`. If Django raises `OSError: Could not find the GDAL library`, set `GDAL_LIBRARY_PATH` and `GEOS_LIBRARY_PATH` in your environment to point to the Homebrew lib paths (e.g. `/opt/homebrew/lib/libgdal.dylib`). diff --git a/docs/content/operations/troubleshooting.md b/docs/content/operations/troubleshooting.md index f40bb4e..467df45 100644 --- a/docs/content/operations/troubleshooting.md +++ b/docs/content/operations/troubleshooting.md @@ -144,7 +144,11 @@ GET run::stop_time_updates ## Stale run cleanup -After stopping the simulator or during testing, Redis may hold state for runs that are no longer active. The `scripts/cleanup_redis.py` script (added in commit `18f9bde`) handles this. +After stopping the simulator or during testing, Redis (and PostgreSQL) may hold state for runs that are no longer active. Two scripts handle this at different scopes; commit `18f9bde` (`chore(scripts): add run-state cleanup script and refresh Redis utilities`) added `backend/scripts/cleanup_runs.py` and refreshed `scripts/cleanup_redis.py` to the current Redis key schema. + +### `scripts/cleanup_redis.py` — Redis-only, age-based + +Removes stale vehicle data from Redis based on a data-age threshold. Does not touch PostgreSQL. ```bash # Dry run — see what would be deleted @@ -177,6 +181,35 @@ run:*:stop_time_updates It does **not** delete `run:` (the run hash), `runs:in_progress`, or `runs:tracking` — those are owned by the lifecycle layer and cleaned up by the run completion/cancellation actions. +### `backend/scripts/cleanup_runs.py` — PostgreSQL + Redis, run-scoped + +A more complete reset: wipes run state from **both** PostgreSQL (`runs_run` and its cascade-deleted child tables — `runs_runlifecycletransition`, `runs_run_vehicle`, `runs_run_operator`) and Redis (`runs:tracking`/`runs:in_progress` set membership, `run:` and its sub-keys, `vehicle::*` keys, and the `vehicle|operator|trip::current_run` assignment keys) so a dev box can start fresh without restarting any service. + +```bash +docker compose -f compose.dev.yml exec -it orchestrator uv run scripts/cleanup_runs.py [options] +``` + +| Mode (mutually exclusive) | Effect | +|---|---| +| *(default)* | Delete all runs from DB + purge all run state from Redis. | +| `--run ` | Delete one run by ID (DB + Redis). | +| `--vehicle ` | Delete all runs for a vehicle (DB + Redis); also frees the vehicle's `current_run` key if it has no matching run. | +| `--db-only` / `--redis-only` | Restrict to one store. | + +Other flags: `--telemetry` (also wipe `runs_position`/`runs_progression`/`runs_occupancy` rows), `--dry-run` (preview, touches nothing), `--yes` (skip the confirmation prompt), plus `--db-*`/`--redis-*` connection overrides. Full flag reference: `backend/scripts/README.md`. + +```bash +# Preview only +uv run scripts/cleanup_runs.py --dry-run + +# Full reset: wipe all runs from DB + Redis +uv run scripts/cleanup_runs.py --yes + +# Clear one specific run / one vehicle's runs +uv run scripts/cleanup_runs.py --run +uv run scripts/cleanup_runs.py --vehicle +``` + ## GTFS-RT feeds not updating **Symptom:** `backend/feed/files/` is empty or files are not refreshing every 15 seconds. @@ -225,6 +258,8 @@ To force immediate cleanup: 2. Use `scripts/cleanup_redis.py --force-all` to clear the Redis entity hashes. 3. Verify with `inspect_redis.py` that the run is gone from `runs:tracking` and `runs:in_progress`. +For a single known run ID, `docker compose -f compose.dev.yml exec -it orchestrator uv run scripts/cleanup_runs.py --run ` is a faster alternative to steps 1–3 — it **deletes** the run row and its Redis keys outright (rather than cancelling and leaving the row), so use it only when you don't need to keep the run record. See [Stale run cleanup](#stale-run-cleanup) above. + ## Common log messages | Message | Level | Meaning | diff --git a/docs/content/runs/detection.md b/docs/content/runs/detection.md index e78d65c..048b1a6 100644 --- a/docs/content/runs/detection.md +++ b/docs/content/runs/detection.md @@ -123,7 +123,8 @@ TELEMETRY_EXPIRY_S = 600 # NO_SIGNAL + silent > 600 s → CANCELLED ```python _TRACKING_SEED_EVENTS = {"run_tracking_started", "run_tracking_restored"} -def _fire(result: DetectionResult, base_payload: dict) -> None: +def _fire(result: DetectionResult, base_payload: dict[str, Any]) -> None: + payload = {**base_payload, **result.extra_payload} if result.event in _TRACKING_SEED_EVENTS: r.sadd("runs:tracking", base_payload["run_id"]) run_lifecycle_event.delay(result.event, payload) @@ -143,7 +144,7 @@ class DetectionResult: ## Lifecycle event trigger table -From `backend/realtime_engine/README.md`: +Consistent with `backend/realtime_engine/README.md` and the detector conditions in `lifecycle_detectors.py` / `periodic_detectors.py` above: | Run state | Trigger condition | Event fired | |---|---|---| diff --git a/docs/content/runs/index.md b/docs/content/runs/index.md index 7890385..27b6152 100644 --- a/docs/content/runs/index.md +++ b/docs/content/runs/index.md @@ -6,11 +6,11 @@ icon: lucide/route A **run** is the unit of operational work in Databús: a vehicle assigned to a trip, tracked from the first GPS ping to the last stop. The run lifecycle governs how that work progresses through states and how the system reacts to events. -The lifecycle is implemented as two cooperating finite state machines: +The lifecycle is implemented as one finite state machine, plus a per-tick computation that plays a related but separate role: -1. **Lifecycle FSM** — tracks the operational phase of the run (`Requested` → `Confirmed` → `Tracking` → `In Progress` → `Completed`, plus deviation paths). Driven by commands from operators and by detected facts from telemetry. +1. **Lifecycle FSM** — tracks the operational phase of the run (`Requested` → `Confirmed` → `Tracking` → `In Progress` → `Completed`, plus deviation paths). Driven by commands from operators and by detected facts from telemetry. Implemented in `backend/runs/domain/lifecycle/`. -2. **Progress FSM** — tracks the vehicle's motion state within a run. A parallel FSM in `backend/runs/domain/progress/`. +2. **Progress FSM (motion)** — a second, separate state machine for vehicle motion (`IS_MOVING` / `IS_STOPPED` / `IS_PAUSED`) described in `MODEL.md`. This is design intent only: no such FSM exists in the code. A structural scaffold once lived at `backend/runs/domain/progress/`, but it was dead code (never wired to a live call path) and was deleted in commit `a3cbb0a`. The active stand-in is a stateless per-tick computation in `backend/runs/domain/progression/compute.py` that classifies the vehicle's relationship to its next stop (`STOPPED_AT` / `INCOMING_AT` / `IN_TRANSIT_TO`) on every position update — see [progress-fsm.md](progress-fsm.md). The detection layer sits between the MQTT telemetry stream and the lifecycle FSM. It converts raw position and occupancy signals into lifecycle events without any I/O of its own. @@ -28,5 +28,5 @@ flowchart LR | [States & transitions](lifecycle-states.md) | All 11 states, the full transition table, guards, and actions | | [Commands vs detected facts](commands-vs-detections.md) | Which events are operator-driven vs telemetry-driven; the `run_completed` rename | | [Detection layer](detection.md) | Pure planners, detector registry, impure wrappers | -| [Progress FSM (motion)](progress-fsm.md) | The separate motion-state machine (IS_MOVING / IS_STOPPED / IS_PAUSED) | +| [Progress FSM (motion)](progress-fsm.md) | Design intent for a motion-state machine (IS_MOVING / IS_STOPPED / IS_PAUSED); the active per-tick stop-status computation that stands in for it today | | [Stale-run scanning](stale-runs.md) | `scan_stale_runs` periodic task, grace/expiry thresholds | diff --git a/docs/content/runs/lifecycle-states.md b/docs/content/runs/lifecycle-states.md index 7c2da4a..b7d8c0d 100644 --- a/docs/content/runs/lifecycle-states.md +++ b/docs/content/runs/lifecycle-states.md @@ -6,8 +6,8 @@ icon: lucide/git-branch The run lifecycle FSM is defined in `backend/runs/domain/lifecycle/`. Every run moves through exactly one state at a time; every state change requires a matching event, a passing set of guards, and the execution of a set of actions. -!!! warning "State name correction" - The existing placeholder diagram in `docs/content/processes/run-lifecycle.md` uses `CANCELED`. The code uses `"Cancelled"` (British spelling, mixed case). Always use the value from `RunLifecycleStates` — never the enum member name. +!!! note "Spelling: use the enum value, not the member name" + The code spells the cancelled state `"Cancelled"` (British spelling, mixed case) as the `RunLifecycleStates.CANCELLED` value — not `CANCELED`. Always use the value from `RunLifecycleStates`, never the enum member name, when comparing against Redis or API responses. ## State set @@ -96,10 +96,10 @@ Defined in `backend/runs/domain/lifecycle/guards.py`. **Registration guards:** - `is_gtfs_valid` — checks that `route_id`, `trip_id`, `direction_id`, `shape_id`, and `schedule_relationship` are present and consistent with the current GTFS feed in PostgreSQL. -- `is_trip_available` — checks Redis `trip::current_run` is not already assigned to another run. -- `is_vehicle_available` — checks Redis `vehicle::current_run` is not assigned elsewhere. -- `is_operator_available` — checks Redis `operator::current_run` is not assigned elsewhere. -- `is_run_validated` — always returns `True`; placeholder for future validation checks. +- `is_trip_available` — checks Redis `trip::current_run` is not claimed by a *different* run, raising `RunLifecycleError` if it is. `trip_id` comes from the payload, falling back to the run record's `trip_id` when the payload omits it; if neither is set the guard passes trivially. +- `is_vehicle_available` — checks Redis `vehicle::current_run` is not claimed by a *different* run, raising `RunLifecycleError` if it is. `vehicle_id` comes from the payload, falling back to the run's assigned vehicle when the payload omits it; if neither is set the guard passes trivially. +- `is_operator_available` — checks Redis `operator::current_run` is not claimed by a *different* run, raising `RunLifecycleError` if it is. `operator_id` comes from the payload, falling back to the run's assigned operator when the payload omits it; if neither is set the guard passes trivially. +- `is_run_validated` — revalidates before `INITIALIZE_RUN`, closing the race window between `VALIDATE_RUN` and `INITIALIZE_RUN` (commit `2770788`): re-runs `is_vehicle_available`, `is_trip_available`, and `is_operator_available` (each only raises if the resource is claimed by a *different* run, so a re-fire where this run already holds its own claims still passes), then re-confirms the run's `trip_id` still exists in whichever GTFS feed is current *now* — covering the nightly `build_schedule` feed rotation that may have happened between validation and initialization. Raises `RunLifecycleError` with field-keyed detail on any failure. **Authorization guards:** @@ -112,9 +112,9 @@ Defined in `backend/runs/domain/lifecycle/guards.py`. - `is_vehicle_tracked` — checks `SISMEMBER runs:tracking ` in Redis. - `is_vehicle_moving` — checks `speed > 0.5` m/s in the payload. -- `is_telemetry_stale` — checks `staleness > TELEMETRY_GRACE_S` (60 s). -- `is_telemetry_fresh` — checks `staleness <= TELEMETRY_GRACE_S` (60 s). -- `is_telemetry_grace_period_exceeded` — checks `staleness > TELEMETRY_EXPIRY_S` (600 s). +- `is_telemetry_stale` — checks `staleness > TELEMETRY_GRACE_S` (60 s), where `staleness` is computed from the payload's `last_seen_at` (falling back to the run record's `last_event_at` if absent). +- `is_telemetry_fresh` — checks `staleness <= TELEMETRY_GRACE_S` (60 s), same `last_seen_at`/`last_event_at` fallback. +- `is_telemetry_grace_period_exceeded` — checks `staleness > TELEMETRY_EXPIRY_S` (600 s), same `last_seen_at`/`last_event_at` fallback. - `is_at_terminal_stop` — checks that the `stop_id` in the payload matches the last stop of the run's trip in the current GTFS feed. ## Actions diff --git a/docs/content/runs/progress-fsm.md b/docs/content/runs/progress-fsm.md index 9270c9c..d870dbd 100644 --- a/docs/content/runs/progress-fsm.md +++ b/docs/content/runs/progress-fsm.md @@ -6,8 +6,8 @@ icon: lucide/activity `MODEL.md` describes a second, separate state machine for vehicle motion that runs concurrently with the lifecycle FSM. This page documents the design intent and the current implementation status. -!!! warning "Implementation gap" - The motion FSM described in `MODEL.md` (`IS_MOVING` / `IS_STOPPED` / `IS_PAUSED`) does not yet exist in the code as a working service. The `backend/runs/domain/progress/` module exists as a structural scaffold, but its state enum (`RunProgressStates`) mirrors the lifecycle states rather than the motion states, and the `RunProgressService` in `backend/runs/services/progress.py` is a stub (no active call path, hardcoded `current_stop = 1`). This page describes both the design intent and the actual code state. +!!! warning "Design intent only — the scaffold was removed" + The motion FSM described in `MODEL.md` (`IS_MOVING` / `IS_STOPPED` / `IS_PAUSED`) does not exist in the code, as a working service or otherwise. A structural scaffold once lived at `backend/runs/domain/progress/` (states/events/transitions/guards/actions mirroring the lifecycle FSM) plus a stub `RunProgressService` in `backend/runs/services/progress.py`, but neither ever had a live call path — the scaffold's state enum mirrored `RunLifecycleStates` rather than the motion states, and the service hardcoded `current_stop = 1`. Both were deleted as dead code during release cleanup, commit `a3cbb0a` ("refactor(runs): drop dead RunProgress FSM chain"). This page describes the design intent and the actual active implementation of stop-state detection, which is a different, simpler mechanism than the planned motion FSM. ## Design intent (MODEL.md) @@ -35,51 +35,40 @@ stateDiagram-v2 The FSM was designed to emit a trace — a sequence of labeled transitions carrying timestamps and position data — that could be consumed by the analytics pipeline for scheduling and on-time performance analysis. -## What exists in the code +This remains future design intent. Nothing below is a step toward it; it is a separate, already-shipped mechanism that happens to answer a related question ("is the vehicle stopped at a stop right now?") without any FSM. -`backend/runs/domain/progress/` contains: +## What exists in the code: per-tick stop-status computation -- `states.py` — `RunProgressStates` enum: **identical to `RunLifecycleStates`** (Requested, Validated, …, Cancelled). Not the IS_MOVING/IS_STOPPED/IS_PAUSED states. -- `events.py` — `RunProgressEvents` enum: identical to `RunLifecycleEvents`. -- `transitions.py` — A transition table that mirrors `backend/runs/domain/lifecycle/transitions.py` exactly, using `RunProgressStates` and `RunProgressEvents`. -- `guards.py` — Copy of lifecycle guards. -- `actions.py` — Copy of lifecycle actions. +There is no motion FSM in the code, dead or otherwise — the `progress/` scaffold and `RunProgressService` described above are gone. The **active** implementation of stop-state detection is a stateless, per-tick computation in `backend/runs/domain/progression/compute.py`, function `compute_stop_status`. -The `RunProgressService` in `backend/runs/services/progress.py` is a stub: +On every position update, `compute_stop_status`: -```python -class RunProgressService: - def process_event(self, event, payload): - run = self._load_run(payload) - if not self._is_active(run): # checks run_lifecycle_state == "IN_PROGRESS" - return None - ... - def _detect_stop_events(self, run, context): - current_stop = 1 # TODO: self._infer_current_stop(run, context) - ... -``` - -No task, celery entry point, or MQTT handler calls `RunProgressService.process_event`. +1. Loads the cached GTFS shape geometry for the run's `(shape_id, trip_id)`. +2. Projects the observed GPS point onto the shape polyline to get the along-track progress distance. +3. Picks the upcoming stop (the next stop ahead by progress distance, or the last stop if the vehicle has passed all of them). +4. Applies radius/speed rules to classify the vehicle against that stop: + - `distance <= STOP_RADIUS_M` (20.0 m) AND (speed unknown OR `speed <= STATIONARY_SPEED_MPS` (0.5 m/s)) → `STOPPED_AT` + - `distance <= INCOMING_AT_RADIUS_M` (50.0 m) AND still approaching (`point_progress_m < stop.progress_m`) → `INCOMING_AT` + - otherwise → `IN_TRANSIT_TO` +5. Enforces a monotonic sequence floor: if the new candidate's `stop_sequence` would regress below the previous tick's, the previous sequence/stop_id are kept instead. -## Relationship to server-side progression +The whole computation is wrapped in `try/except Exception` and falls back to `IN_TRANSIT_TO` plus carry-forward of the previous state on any error (missing GTFS data, ORM errors, bad payloads) — it must never raise, since the caller runs it on every position tick. -The server-side map-matching in `backend/runs/domain/progression/compute.py` produces a `vehicle_stop_status` dict with three states: `STOPPED_AT`, `INCOMING_AT`, `IN_TRANSIT_TO`. These correspond loosely to the motion FSM concept but are computed per telemetry tick and written to Redis as `run::vehicle_stop_status`, not as FSM transitions. +This is a **stateless classification, not an FSM**: there are no explicit states, transitions, guards, or actions — just a pure function computing one of three status strings from the current tick's geometry. The only "memory" across ticks is the monotonic sequence floor. -The stop-status computation uses: +### Where it's called and stored -- `STOP_RADIUS_M = 20.0` m — within this distance and low speed → `STOPPED_AT` -- `INCOMING_AT_RADIUS_M = 50.0` m — within this distance and still approaching → `INCOMING_AT` -- `STATIONARY_SPEED_MPS = 0.5` m/s — speed at or below this is considered dwell +`backend/runs/domain/progression/producer.py::produce_stop_status` is the impure wrapper: it reads `vehicle::position` and `run:` from Redis, calls `compute_stop_status`, validates the result, and writes it to `run::vehicle_stop_status` (Redis hash key from `backend/runs/domain/telemetry/keys.py::stop_status_key`). -This is the active implementation of stop-state detection. The motion FSM scaffold in `progress/` is not yet connected to it. +It is invoked from `process_position_update` (`backend/realtime_engine/tasks.py`), which runs after every MQTT position write. The resulting `vehicle_stop_status` dict is then re-fed into `detect_from_telemetry(..., leaf="progression", ...)` so `RunCompletedDetector` can fire `run_completed` when `current_status == "STOPPED_AT"` — see [detection.md](detection.md) and [commands-vs-detections.md](commands-vs-detections.md) for that path. ## Summary | Aspect | Design intent (MODEL.md) | Current code | |---|---|---| | Motion states | `IS_MOVING`, `IS_STOPPED`, `IS_PAUSED` | Not implemented | -| Module location | `runs/domain/progress/` | Exists as a lifecycle mirror scaffold | -| Active service | `RunProgressService` | Stub — no live call path | -| Stop-state detection | Motion FSM transitions | Per-tick `compute.py` → `vehicle_stop_status` Redis hash | +| Scaffold module | (none planned — would be new) | `runs/domain/progress/` existed as an unused lifecycle-mirror scaffold; deleted in `a3cbb0a` | +| Stub service | (none planned — would be new) | `RunProgressService` existed as a dead stub; deleted in `a3cbb0a` | +| Stop-state detection | Motion FSM transitions with a trace | Stateless per-tick `compute_stop_status()` → `vehicle_stop_status` Redis hash (`run::vehicle_stop_status`) | -The motion FSM is planned for implementation. When implemented, it will run alongside the lifecycle FSM and produce structured traces for the analytics pipeline. +The motion FSM is still only a design idea in `MODEL.md`. If it is ever implemented, it would run alongside the lifecycle FSM and produce structured traces for the analytics pipeline — but that is unrelated to the per-tick stop-status computation described above, which already ships and already drives `run_completed` detection. diff --git a/docs/content/runs/stale-runs.md b/docs/content/runs/stale-runs.md index e1c4d55..bbea1a7 100644 --- a/docs/content/runs/stale-runs.md +++ b/docs/content/runs/stale-runs.md @@ -49,9 +49,6 @@ TELEMETRY_EXPIRY_S = 600 # seconds | `IN_PROGRESS` AND `60 < staleness <= 600` | `run_tracking_lost` | `No Signal` | | `NO_SIGNAL` AND `staleness > 600` | `run_tracking_expired` | `Cancelled` | -!!! note "README vs thresholds.py discrepancy" - `backend/realtime_engine/README.md` states the expiry threshold as 300 s. The actual code value in `backend/runs/domain/detection/thresholds.py` (the single source of truth for both detectors and guards) is **600 s**. The README predates the thresholds unification and has not been updated. Trust `thresholds.py`. - The two-stage design gives the vehicle a grace window (60 s) to reconnect before the run enters `No Signal`, and then a longer window (up to 600 s total from last seen) before it is permanently cancelled. ## Why `runs:tracking` includes NO_SIGNAL runs diff --git a/docs/deployment.md b/docs/deployment.md deleted file mode 100644 index ae11000..0000000 --- a/docs/deployment.md +++ /dev/null @@ -1,238 +0,0 @@ -# Deployment - -On a Linux Ubuntu 22.04 LTS server, this is the configuration of Celery and Celery Beat with `systemd`, following most of the instructions in the [Daemonization guide](https://docs.celeryq.dev/en/stable/userguide/daemonizing.html#daemon-systemd-generic) of Celery. - -- **Note**: this assumes that Redis is installed (`sudo apt install redis-server`) and all the Python packages in `requirements.txt`. It is possible to check if Redis is running with `sudo systemctl is-enabled redis-server`. - -## Celery Deployment - -Configuring Celery as a system service. Preliminaries: - -- The Django project is in `/home/bucr/realtime` -- The virtual environment is in `/home/bucr/realtime/realtimeenv/bin` -- The user is `bucr` and belongs to the group `bucr` - -The environment variables are located in the file `/etc/conf.d/celery`, as shown below. - -```ini title="/etc/conf.d/celery" -# Name of nodes to start -CELERYD_NODES="w1" - -# Absolute or relative path to the 'celery' command: -CELERY_BIN="/home/bucr/realtime/realtimeenv/bin/celery" - -# App instance to use -CELERY_APP="realtime" - -# How to call manage.py -CELERYD_MULTI="multi" - -# Extra command-line arguments to the worker -CELERYD_OPTS="--time-limit=300 --concurrency=1" - -# - %n will be replaced with the first part of the nodename. -# - %I will be replaced with the current child process index -# and is important when using the prefork pool to avoid race conditions. -CELERYD_PID_FILE="/var/run/celery/%n.pid" -CELERYD_LOG_FILE="/var/log/celery/%n%I.log" -CELERYD_LOG_LEVEL="INFO" - -# Celery Beat -CELERYBEAT_SCHEDULER="django_celery_beat.schedulers:DatabaseScheduler" -CELERYBEAT_PID_FILE="/var/run/celery/beat.pid" -CELERYBEAT_LOG_FILE="/var/log/celery/beat.log" -``` - -Notes: - -- Concurrency is set to 1 because current servers have single CPU(s), thread(s) per core and core(s) per socket. -- The directories `/var/run/celery/` and `/var/log/celery/` for the PID and LOG files, respectively, must first be created when configuring Celery. So: - -```bash -sudo mkdir -p /var/run/celery/ -sudo mkdir -p /var/log/celery/ -``` - -- Now the user and group `bucr:bucr` need permissions for those directories: - -```bash -sudo chown bucr:bucr /var/run/celery/ -sudo chown bucr:bucr /var/log/celery/ -``` - -- The PID file and log file must be created on each reboot with the following configuration, where `bucr bucr` is the user and group and `0755` are the permissions. - -```ini title="/etc/tmpfiles.d/celery.conf" -d /run/celery 0755 bucr bucr - -d /var/log/celery 0755 bucr bucr - -``` - -### Celery Worker - -This process is configured below. - -```ini title="/etc/systemd/system/celery.service" -[Unit] -Description=Celery Service -After=network.target - -[Service] -Type=forking -User=bucr -Group=bucr -EnvironmentFile=/etc/conf.d/celery -WorkingDirectory=/home/bucr/realtime/ -RuntimeDirectory=celery -ExecStart=/bin/sh -c '${CELERY_BIN} -A $CELERY_APP multi start $CELERYD_NODES \ - --pidfile=${CELERYD_PID_FILE} \ - --logfile=${CELERYD_LOG_FILE} \ - --loglevel="${CELERYD_LOG_LEVEL}" \ - $CELERYD_OPTS' -ExecStop=/bin/sh -c '${CELERY_BIN} multi stopwait $CELERYD_NODES \ - --pidfile=${CELERYD_PID_FILE} \ - --logfile=${CELERYD_LOG_FILE} \ - --loglevel="${CELERYD_LOG_LEVEL}"' -ExecReload=/bin/sh -c '${CELERY_BIN} -A $CELERY_APP multi restart $CELERYD_NODES \ - --pidfile=${CELERYD_PID_FILE} \ - --logfile=${CELERYD_LOG_FILE} \ - --loglevel="${CELERYD_LOG_LEVEL}" \ - $CELERYD_OPTS' -Restart=always - -[Install] -WantedBy=multi-user.target -``` - -Relevant `systemctl` commands: - -- On every change to this file: `sudo systemctl daemon-reload` -- To start: `sudo systemctl start celery` -- To stop: `sudo systemctl stop celery` -- To check status: `sudo systemctl status celery` -- To allow execution on reboot: `sudo systemctl enable celery` -- Others: `restart`/`reload`/`is-enabled`/`disable` - -### Celery Beat - -This process is configured below. - -- **Note**: the periodic tasks are configured in the Django admin panel, thanks to the package `django-celery-beat`, and as configured here with `--scheduler` as `django_celery_beat.schedulers:DatabaseScheduler`. - -```ini title="/etc/systemd/system/celerybeat.service" -[Unit] -Description=Celery Beat Service -After=network.target celery.service - -[Service] -Type=simple -User=bucr -Group=bucr -EnvironmentFile=/etc/conf.d/celery -WorkingDirectory=/home/bucr/realtime/ -ExecStart=/bin/sh -c '${CELERY_BIN} -A ${CELERY_APP} beat \ - --pidfile=${CELERYBEAT_PID_FILE} \ - --logfile=${CELERYBEAT_LOG_FILE} \ - --loglevel=${CELERYD_LOG_LEVEL} \ - --scheduler ${CELERYBEAT_SCHEDULER}' -Restart=always - -[Install] -WantedBy=multi-user.target -``` - -Relevant `systemctl` commands: - -- On every change to this file: `sudo systemctl daemon-reload` -- To start: `sudo systemctl start celerybeat` -- To stop: `sudo systemctl stop celerybeat` -- To check status: `sudo systemctl status celerybeat` -- To allow execution on reboot: `sudo systemctl enable celerybeat` -- Others: `restart`/`reload`/`is-enabled`/`disable` - -## Daphne Deployment - -For using Channels and WebSockets, it is necessary to configure the Daphne server. - -```init title="/etc/systemd/system/daphne.service" hl_lines="9" -[Unit] -Description=WebSocket Daphne Service -After=network.target - -[Service] -User=bucr -Group=www-data -WorkingDirectory=/home/bucr/realtime -ExecStart=/home/bucr/realtime/realtimeenv/bin/daphne -p 8001 realtime.asgi:application -Restart=on-failure - -[Install] -WantedBy=multi-user.target -``` - -Relevant `systemctl` commands: - -- On every change to this file: `sudo systemctl daemon-reload` -- To start: `sudo systemctl start daphne` -- To stop: `sudo systemctl stop daphne` -- To check status: `sudo systemctl status daphne` -- To allow execution on reboot: `sudo systemctl enable daphne` -- Others: `restart`/`reload`/`is-enabled`/`disable` - -It is necessary to allow execution on reboot with `sudo systemctl enable daphne`. - -Now, for Nginx to proxy pass to Daphne, the following is needed: - -```init title="/etc/nginx/sites-available/realtime" hl_lines="15-20" -server { - listen 80; - server_name server_domain_or_IP; - - location = /favicon.ico { access_log off; log_not_found off; } - location /static/ { - root /home/bucr/realtime; - } - - location / { - include proxy_params; - proxy_pass http://unix:/run/gunicorn.sock; - } - - location /ws/ { - proxy_pass http://localhost:8001; - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "upgrade"; - } - -} -``` - -## Updating the repository - -```bash -sudo nano restart_services.sh -``` - -where - -```bash -#!/bin/bash - -sudo systemctl restart celery -sudo systemctl restart celerybeat -sudo systemctl restart daphne -sudo systemctl restart gunicorn -sudo systemctl restart nginx -``` - -and make executable with - -```bash -sudo chmod +x restart_services.sh -``` - -and then execute - -```bash -./restart_services.sh -``` diff --git a/docs/development.md b/docs/development.md deleted file mode 100644 index d06e044..0000000 --- a/docs/development.md +++ /dev/null @@ -1,84 +0,0 @@ -# Desarrollo funcional - -## Especificación de los datos - -Investigar y proponer una **especificación de los datos** de telemetría (?) recopilados de los buses y transmitidos al servidor. - -- Esto será parte de nuestra propuesta de arquitectura tecnológica. -- Preliminarmente, estará inspirado en NGSI-LD para la especificación de los datos recopilados, posiblemente con JSON-LD como formato. -- La decisión de cuáles datos recopilar puede estar basada en ARC-IT (según los distintos paquetes de servicio). -- No está limitado a los datos disponibles en GTFS Realtime. -- También puede depender de las necesidades operativa de las agencias de transporte (por ejemplo: hasta la presión de las llantas puede ser un dato a enviar). -- A veces no podemos ser exhaustivos en la lista de variables pero sí podemos hacer una clasificación sensata de grandes categorías donde están esos datos. -- Asumir que para nuestro prototipo vamos a probar con datos sintéticos creados con esta especificación. - -## Posibles fuentes de datos - -- Un _feed_ GTFS Realtime de alguna agencia (ejemplo: MBTA). Pros: ya están listos y accesibles. Contras: ya son GTFS Realtime (no incluye la transformación), son masivos y ajenos a nuestras pantallas. -- Datos sintéticos para pruebas. Pros: pueden diseñarse para ser un MWE (ejemplo viable mínimo) para nuestro contexto específico. Contras: no son realistas, requieren pensar dedicadamente en la "simulación". - - _Hard-coded_ - - Simulación con [SUMO](https://eclipse.dev/sumo/). Nota: hay un proyecto con Gustavo Núñez que desarrolló algo como esto. -- Datos generados por un prototipo en la UCR (ejemplo: la implementación con RACSA). Pros: es el objetivo del proyecto. Contras: es laborioso y caro de implementar pues requiere de equipo de hardware y conexión a la red. - -El consenso es iniciar con datos sintéticos de prueba. - -## Datos sintéticos para pruebas del sistema - -Hacer un *script* de creación de **datos sintéticos** donde podamos simular datos "en tiempo real" para desplegarlos en las pantallas. - -- Posiblemente, crear un *toy model* para la prueba del prototipo, no necesariamente un modelo realista del sistema de la U, pero sí tiene que ser consistente con un GTFS Schedule. -- Considerar la aleatoriedad de los tiempos de desplazamiento y de la ocupación del bus. Para que tenga un realismo aceptable, debe ser coherente con, por ejemplo, los tiempos de subida y bajada de los pasajeros, etc. -- Como referencia, hay un proyecto en SUMO (simulador de redes de tránsito vehicular), preguntar a Gustavo Núñez. -- Los datos entre los buses son asincrónicos, es decir, llegan en cualquier momento, no están coordinados entre sí. Para que sea realista debe haber más de un bus (de preferencia muchos) circulando en cualquier momento dado. - -Premisas para hacer un modelo simplificado: - -- Utilizar el GTFS del bus UCR -- La pantalla objetivo está en Facultad de Ingeniería (la visualización sería ahí) -- Hacer salidas regulares de buses. Si un bus tarda aproximadamente de 20 a 30 minutos haciendo un viaje (depende de la trayectoria, con o sin "milla"), entonces con un tiempo de salida regular cada aproximadamente 15 minutos, siempre habría más de un bus reportando datos en el sistema. Esto es útil para probar la visualización. Dado el caso, sería posible modificar ese "headway" (tiempo entre salidas) para hacerlo menor o mayor y probar el sistema. -- Podemos asumir libremente que el sistema opera 24/7 con salidas regulares. Que no se nos olvide probar el caso en el que no hay datos (ejemplo: la pantalla debe tener un mensaje de que no hay buses actualmente o algo así). -- Elegir solamente los datos de GTFS Realtime (ocupación, velocidad, dirección, posición, odómetro) y *tal vez* algún dato complementario para enviar -- Simulación de datos: - - Posición: elegir un punto de la secuencia de puntos de la trayectoria en la tabla `shapes.txt` basados en la distancia recorrida (`shape_dist_traveled`) y algún criterio de velocidad promedio del bus (por ejemplo 15 km/h para una trayectoria de 5 km recorrida en 20 minutos). - - Velocidad: un número aleatorio elegido de una distribución normal con valor medio 15 km/h (u otra velocidad promedio) con una desviación estándar "sensata". - - Ocupación: un número aleatorio entre 0 y C (capacidad máxima del bus) pero que cambia únicamente después de pasar por una parada. Para esto hay que conocer dónde están las paradas (tabla `stops.txt`). Mejor enfocar la aleatoriedad como: "se subieron o bajaron N personas en cada parada". - - Dirección: la dirección del vector que une el punto de la trayectoria anterior con la posición actual, y según GTFS Realtime: "Bearing, in degrees, clockwise from True North, i.e., 0 is North and 90 is East." - - Odómetro: distancia recorrida en el viaje, igual a `shape_dist_traveled`. -- Luego: crear el `FeedMessage` binaro del GTFS Realtime a partir de esto. -- Sugerencia: un _script_ para la creación de los datos simulados y otro _script_ para la conversión en GTFS Realtime (usar paquetes de Google para eso). - -## Creación de GTFS Realtime - -Crear un *script* de Python para recopilar los datos enviados según la especificación propuesta (arriba) y "confeccionar" un `FeedMessage` y dejar a disposición de todos los consumidores (incluyendo el otro servidor `gtfs-screens`). - -Es necesario **dominar** [GTFS Realtime](https://gtfs.org/realtime/reference/) a profundidad. Un `FeedMessage` tiene tres posibles *entidades*: - -- *Service Alerts* -- *Trip Updates* -- *Vehicle Positions* - -> GTFS Realtime es entregado como un archivo binario Protobuf `.pb`. Referencia de [MBTA GTFS Realtime](https://github.com/mbta/gtfs-documentation/blob/master/reference/gtfs-realtime.md) para ver las actualizaciones (también disponibles en JSON). - -En este proyecto, implementaremos *Vehicle Positions* y *Trip Updates*. *Service Alerts* no porque requiere de un sistema conectado con la agencia para que sea actualizado por personas, no es telemetría automatizada. - -Secuencia prevista de esta tarea: - -- Con algún mecanismo de recepción de datos en tiempo real (por ejemplo: Apache Pulsar) es necesario recopilar los datos y guardarlos en memoria. -- Cada $N$ segundos es necesario crear el `FeedMessage`. Inicialmente, $N = 20$ (esta es una importante referencia también para los datos sintéticos). -- Es necesario "desempacar" estos datos y crear la entidad `vehicle` de GTFS Realtime dentro de `FeedMessage`. -- Finalmente, dejar el archivo `.pb` y quizá `.json` en una URL, por ejemplo: `buses.ucr.ac.cr/realtime/vehicle_positions.pb`. -- Repetir *ad infinitum* - -Nota mental: - -- `VehiclePositions` se construye a partir de los datos de los buses -- `TripUpdates` se construye a partir de cálculos hechos en el servidor -- `ServiceAlerts` se construye a partir de *input* de una plataforma de interfaz con la administración del servicio - -## Estructura del proyecto en Django - -### Aplicaciones - -- `gtfs`: maneja la base de datos con los datos GTFS -- `feed`: realiza las tareas periódicas de recolección de datos de los buses y la (futura) plataforma de `ServiceAlerts` para crear el `FeedMessage`. -- `website`: controla las páginas misceláneas del servidor como panel de administración y panel de datos, etc. \ No newline at end of file diff --git a/docs/index.md b/docs/index.md deleted file mode 100644 index 000ea34..0000000 --- a/docs/index.md +++ /dev/null @@ -1,17 +0,0 @@ -# Welcome to MkDocs - -For full documentation visit [mkdocs.org](https://www.mkdocs.org). - -## Commands - -* `mkdocs new [dir-name]` - Create a new project. -* `mkdocs serve` - Start the live-reloading docs server. -* `mkdocs build` - Build the documentation site. -* `mkdocs -h` - Print help message and exit. - -## Project layout - - mkdocs.yml # The configuration file. - docs/ - index.md # The documentation homepage. - ... # Other markdown pages, images and other files. diff --git a/docs/logos/b.png b/docs/logos/b.png deleted file mode 100644 index 4848d11..0000000 Binary files a/docs/logos/b.png and /dev/null differ diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml deleted file mode 100644 index 5020603..0000000 --- a/docs/mkdocs.yml +++ /dev/null @@ -1,40 +0,0 @@ -site_name: Servidor en tiempo real de datos GTFS - -nav: - - Inicio: index.md - - Desarrollo: development.md - - Equipo de abordo: obe.md - - Celery: deployment.md - - API: api.md - -extra_css: - - stylesheets/extra.css - -theme: - name: material - language: es - logo: assets/logos/b.png - favicon: assets/logos/b.png - palette: - scheme: ucr - features: - - navigation.expand - - navigation.tabs - - toc.integrate - - content.code.copy - - content.code.select - -markdown_extensions: - - admonition - - pymdownx.highlight: - anchor_linenums: true - line_spans: __span - pygments_lang_class: true - - pymdownx.inlinehilite - - pymdownx.snippets - - pymdownx.superfences - - pymdownx.superfences: - custom_fences: - - name: mermaid - class: mermaid - format: !!python/name:pymdownx.superfences.fence_code_format \ No newline at end of file diff --git a/docs/obe.md b/docs/obe.md deleted file mode 100644 index 4ebcfef..0000000 --- a/docs/obe.md +++ /dev/null @@ -1,52 +0,0 @@ -# Especificación del equipo de abordo - -!!! info - Trabajo en desarrollo - -Un equipo de abordo (**OBE**, del inglés *On-Board Equipment*) es una computadora/router ubicada en las unidades de autobús diseñadas para varias tareas, entre ellas: - -- Recopilar datos del bus a través de sensores, como: - - Ubicación, velocidad, dirección, con GPS y/o sensores inerciales - - Ocupación del bus, con cámaras, barras u otros - - Presión de llantas, puertas abiertas, etc. - - Datos ambientales, con sensores de todo tipo -- Enviar alertas con *input* del operador del bus (choques, quedó varado, etc.) -- Operar como *router* Wi-Fi para pasajeros del bus -- Enviar periódicamente toda la información necesaria por medio de alguna red de acceso (celular o Wi-Fi, por ejemplo) a uno o varios servidores - -## Requisitos - -### Requisitos mínimos - -- Sensor GPS -- Conectividad en red celular y/o Wi-Fi -- Interfaz para conductor - -# Requisitos deseables - -- Cámara para -- Pantalla informativa para pasajeros - -### Conectividad - -Es deseable conectividad celular, con capacidades para solicitudes HTTP - -## Especificación de los datos a enviar - -Los datos serán enviados siguiendo la especificación de los datos del API... - -### Interfaz - -Tareas: - -- Configurar el equipo para un vehículo -- Ingresar los datos de cada viaje - -Ejemplo de secuencia de inicio de viaje: - -1. [Botón de configurar nuevo viaje] -2. Seleccionar ruta del viaje -3. Seleccionar viaje, según hora (lista prestablecida en GTFS Schedule) -4. [Botón de iniciar viaje] - - Al iniciar viaje, se registran la fecha y hora - diff --git a/docs/old/API.json b/docs/old/API.json deleted file mode 100644 index 10ee5bd..0000000 --- a/docs/old/API.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "vehicle_id": "1234", - "route_id": "bUCR_L1", - "trip_id": "EYU94JE743", - "start_date": "20231112", - "start_time": "10:03:00", - "location": { - "latitude": 42.0, - "longitude": -71.0 - }, - "inertial": { - "bearing": 225, - "speed": 23, - }, - "vehicle_health": { - "fuel_level": 0.5, - "oil_level": 0.5, - "tire_pressure": 0.5, - "battery_voltage": 12.5 - }, - "environmental": { - "temperature": 72, - "humidity": 0.5, - "pressure": 1013 - } -} \ No newline at end of file diff --git a/docs/old/api.md b/docs/old/api.md deleted file mode 100644 index 30c8837..0000000 --- a/docs/old/api.md +++ /dev/null @@ -1,55 +0,0 @@ -# Especificación del API - -# APIs - -- Publicar datos en tiempo real -(requiere autenticación) -```http -POST /api/datos {"vehicle_id": ...} -``` - -- Obtener GTFS Schedule -(no requiere autenticación) -```http -GET /api/gtfs -``` - -- Obtener GTFS Realtime - Actualizaciones de viaje (`TripUpdates`) -```http -GET /api/realtime/trip-updates -``` - -- Obtener GTFS Realtime - Posiciones del vehículo (`VehiclePositions`) -```http -GET /api/realtime/vehicle-positions -``` - - -`bus.ucr.ac.cr/api/datos` - -## Especificación de los datos de los vehículos - -La siguiente especificación de datos fue construida con base en: - -- La especificación de datos abiertos de transporte público GTFS Schedule y GTFS Realtime v2.0 -- La Arquitectura de Referencia para Transporte Inteligente y Colaborativo (ARC-IT) del Departamento de Transportes de los Estados Unidos - -Su objetivo primario es la construcción de un *feed* (o "suministro de datos") en tiempo real para consumo de aplicaciones compatibles con GTFS. Esto es de utilidad, especialmente, para usuarios del servicio. - -Pero también está diseñado para prever necesidades y aplicaciones futuras con base en la amplia especificación de "paquetes de servicio" para transporte público de ARC-IT. Esto podría de uso primario para operadores, gestores, planificadores, reguladores y otras partes interesadas. - -```json -{ - "vehicle_id": "1234", - "route_id": "bUCR_L1", - "trip_id": "EYU94JE743", - "location": { - "latitude": 9.98363, - "longitude": -84.9474573 - } -} -``` - -``` title="Ejemplo de JSON" ---8<-- "./API.json" -``` \ No newline at end of file diff --git a/docs/old/assets/diagram.png b/docs/old/assets/diagram.png deleted file mode 100644 index 6ccbf67..0000000 Binary files a/docs/old/assets/diagram.png and /dev/null differ diff --git a/docs/old/deployment.md b/docs/old/deployment.md deleted file mode 100644 index ae11000..0000000 --- a/docs/old/deployment.md +++ /dev/null @@ -1,238 +0,0 @@ -# Deployment - -On a Linux Ubuntu 22.04 LTS server, this is the configuration of Celery and Celery Beat with `systemd`, following most of the instructions in the [Daemonization guide](https://docs.celeryq.dev/en/stable/userguide/daemonizing.html#daemon-systemd-generic) of Celery. - -- **Note**: this assumes that Redis is installed (`sudo apt install redis-server`) and all the Python packages in `requirements.txt`. It is possible to check if Redis is running with `sudo systemctl is-enabled redis-server`. - -## Celery Deployment - -Configuring Celery as a system service. Preliminaries: - -- The Django project is in `/home/bucr/realtime` -- The virtual environment is in `/home/bucr/realtime/realtimeenv/bin` -- The user is `bucr` and belongs to the group `bucr` - -The environment variables are located in the file `/etc/conf.d/celery`, as shown below. - -```ini title="/etc/conf.d/celery" -# Name of nodes to start -CELERYD_NODES="w1" - -# Absolute or relative path to the 'celery' command: -CELERY_BIN="/home/bucr/realtime/realtimeenv/bin/celery" - -# App instance to use -CELERY_APP="realtime" - -# How to call manage.py -CELERYD_MULTI="multi" - -# Extra command-line arguments to the worker -CELERYD_OPTS="--time-limit=300 --concurrency=1" - -# - %n will be replaced with the first part of the nodename. -# - %I will be replaced with the current child process index -# and is important when using the prefork pool to avoid race conditions. -CELERYD_PID_FILE="/var/run/celery/%n.pid" -CELERYD_LOG_FILE="/var/log/celery/%n%I.log" -CELERYD_LOG_LEVEL="INFO" - -# Celery Beat -CELERYBEAT_SCHEDULER="django_celery_beat.schedulers:DatabaseScheduler" -CELERYBEAT_PID_FILE="/var/run/celery/beat.pid" -CELERYBEAT_LOG_FILE="/var/log/celery/beat.log" -``` - -Notes: - -- Concurrency is set to 1 because current servers have single CPU(s), thread(s) per core and core(s) per socket. -- The directories `/var/run/celery/` and `/var/log/celery/` for the PID and LOG files, respectively, must first be created when configuring Celery. So: - -```bash -sudo mkdir -p /var/run/celery/ -sudo mkdir -p /var/log/celery/ -``` - -- Now the user and group `bucr:bucr` need permissions for those directories: - -```bash -sudo chown bucr:bucr /var/run/celery/ -sudo chown bucr:bucr /var/log/celery/ -``` - -- The PID file and log file must be created on each reboot with the following configuration, where `bucr bucr` is the user and group and `0755` are the permissions. - -```ini title="/etc/tmpfiles.d/celery.conf" -d /run/celery 0755 bucr bucr - -d /var/log/celery 0755 bucr bucr - -``` - -### Celery Worker - -This process is configured below. - -```ini title="/etc/systemd/system/celery.service" -[Unit] -Description=Celery Service -After=network.target - -[Service] -Type=forking -User=bucr -Group=bucr -EnvironmentFile=/etc/conf.d/celery -WorkingDirectory=/home/bucr/realtime/ -RuntimeDirectory=celery -ExecStart=/bin/sh -c '${CELERY_BIN} -A $CELERY_APP multi start $CELERYD_NODES \ - --pidfile=${CELERYD_PID_FILE} \ - --logfile=${CELERYD_LOG_FILE} \ - --loglevel="${CELERYD_LOG_LEVEL}" \ - $CELERYD_OPTS' -ExecStop=/bin/sh -c '${CELERY_BIN} multi stopwait $CELERYD_NODES \ - --pidfile=${CELERYD_PID_FILE} \ - --logfile=${CELERYD_LOG_FILE} \ - --loglevel="${CELERYD_LOG_LEVEL}"' -ExecReload=/bin/sh -c '${CELERY_BIN} -A $CELERY_APP multi restart $CELERYD_NODES \ - --pidfile=${CELERYD_PID_FILE} \ - --logfile=${CELERYD_LOG_FILE} \ - --loglevel="${CELERYD_LOG_LEVEL}" \ - $CELERYD_OPTS' -Restart=always - -[Install] -WantedBy=multi-user.target -``` - -Relevant `systemctl` commands: - -- On every change to this file: `sudo systemctl daemon-reload` -- To start: `sudo systemctl start celery` -- To stop: `sudo systemctl stop celery` -- To check status: `sudo systemctl status celery` -- To allow execution on reboot: `sudo systemctl enable celery` -- Others: `restart`/`reload`/`is-enabled`/`disable` - -### Celery Beat - -This process is configured below. - -- **Note**: the periodic tasks are configured in the Django admin panel, thanks to the package `django-celery-beat`, and as configured here with `--scheduler` as `django_celery_beat.schedulers:DatabaseScheduler`. - -```ini title="/etc/systemd/system/celerybeat.service" -[Unit] -Description=Celery Beat Service -After=network.target celery.service - -[Service] -Type=simple -User=bucr -Group=bucr -EnvironmentFile=/etc/conf.d/celery -WorkingDirectory=/home/bucr/realtime/ -ExecStart=/bin/sh -c '${CELERY_BIN} -A ${CELERY_APP} beat \ - --pidfile=${CELERYBEAT_PID_FILE} \ - --logfile=${CELERYBEAT_LOG_FILE} \ - --loglevel=${CELERYD_LOG_LEVEL} \ - --scheduler ${CELERYBEAT_SCHEDULER}' -Restart=always - -[Install] -WantedBy=multi-user.target -``` - -Relevant `systemctl` commands: - -- On every change to this file: `sudo systemctl daemon-reload` -- To start: `sudo systemctl start celerybeat` -- To stop: `sudo systemctl stop celerybeat` -- To check status: `sudo systemctl status celerybeat` -- To allow execution on reboot: `sudo systemctl enable celerybeat` -- Others: `restart`/`reload`/`is-enabled`/`disable` - -## Daphne Deployment - -For using Channels and WebSockets, it is necessary to configure the Daphne server. - -```init title="/etc/systemd/system/daphne.service" hl_lines="9" -[Unit] -Description=WebSocket Daphne Service -After=network.target - -[Service] -User=bucr -Group=www-data -WorkingDirectory=/home/bucr/realtime -ExecStart=/home/bucr/realtime/realtimeenv/bin/daphne -p 8001 realtime.asgi:application -Restart=on-failure - -[Install] -WantedBy=multi-user.target -``` - -Relevant `systemctl` commands: - -- On every change to this file: `sudo systemctl daemon-reload` -- To start: `sudo systemctl start daphne` -- To stop: `sudo systemctl stop daphne` -- To check status: `sudo systemctl status daphne` -- To allow execution on reboot: `sudo systemctl enable daphne` -- Others: `restart`/`reload`/`is-enabled`/`disable` - -It is necessary to allow execution on reboot with `sudo systemctl enable daphne`. - -Now, for Nginx to proxy pass to Daphne, the following is needed: - -```init title="/etc/nginx/sites-available/realtime" hl_lines="15-20" -server { - listen 80; - server_name server_domain_or_IP; - - location = /favicon.ico { access_log off; log_not_found off; } - location /static/ { - root /home/bucr/realtime; - } - - location / { - include proxy_params; - proxy_pass http://unix:/run/gunicorn.sock; - } - - location /ws/ { - proxy_pass http://localhost:8001; - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection "upgrade"; - } - -} -``` - -## Updating the repository - -```bash -sudo nano restart_services.sh -``` - -where - -```bash -#!/bin/bash - -sudo systemctl restart celery -sudo systemctl restart celerybeat -sudo systemctl restart daphne -sudo systemctl restart gunicorn -sudo systemctl restart nginx -``` - -and make executable with - -```bash -sudo chmod +x restart_services.sh -``` - -and then execute - -```bash -./restart_services.sh -``` diff --git a/docs/old/development.md b/docs/old/development.md deleted file mode 100644 index d06e044..0000000 --- a/docs/old/development.md +++ /dev/null @@ -1,84 +0,0 @@ -# Desarrollo funcional - -## Especificación de los datos - -Investigar y proponer una **especificación de los datos** de telemetría (?) recopilados de los buses y transmitidos al servidor. - -- Esto será parte de nuestra propuesta de arquitectura tecnológica. -- Preliminarmente, estará inspirado en NGSI-LD para la especificación de los datos recopilados, posiblemente con JSON-LD como formato. -- La decisión de cuáles datos recopilar puede estar basada en ARC-IT (según los distintos paquetes de servicio). -- No está limitado a los datos disponibles en GTFS Realtime. -- También puede depender de las necesidades operativa de las agencias de transporte (por ejemplo: hasta la presión de las llantas puede ser un dato a enviar). -- A veces no podemos ser exhaustivos en la lista de variables pero sí podemos hacer una clasificación sensata de grandes categorías donde están esos datos. -- Asumir que para nuestro prototipo vamos a probar con datos sintéticos creados con esta especificación. - -## Posibles fuentes de datos - -- Un _feed_ GTFS Realtime de alguna agencia (ejemplo: MBTA). Pros: ya están listos y accesibles. Contras: ya son GTFS Realtime (no incluye la transformación), son masivos y ajenos a nuestras pantallas. -- Datos sintéticos para pruebas. Pros: pueden diseñarse para ser un MWE (ejemplo viable mínimo) para nuestro contexto específico. Contras: no son realistas, requieren pensar dedicadamente en la "simulación". - - _Hard-coded_ - - Simulación con [SUMO](https://eclipse.dev/sumo/). Nota: hay un proyecto con Gustavo Núñez que desarrolló algo como esto. -- Datos generados por un prototipo en la UCR (ejemplo: la implementación con RACSA). Pros: es el objetivo del proyecto. Contras: es laborioso y caro de implementar pues requiere de equipo de hardware y conexión a la red. - -El consenso es iniciar con datos sintéticos de prueba. - -## Datos sintéticos para pruebas del sistema - -Hacer un *script* de creación de **datos sintéticos** donde podamos simular datos "en tiempo real" para desplegarlos en las pantallas. - -- Posiblemente, crear un *toy model* para la prueba del prototipo, no necesariamente un modelo realista del sistema de la U, pero sí tiene que ser consistente con un GTFS Schedule. -- Considerar la aleatoriedad de los tiempos de desplazamiento y de la ocupación del bus. Para que tenga un realismo aceptable, debe ser coherente con, por ejemplo, los tiempos de subida y bajada de los pasajeros, etc. -- Como referencia, hay un proyecto en SUMO (simulador de redes de tránsito vehicular), preguntar a Gustavo Núñez. -- Los datos entre los buses son asincrónicos, es decir, llegan en cualquier momento, no están coordinados entre sí. Para que sea realista debe haber más de un bus (de preferencia muchos) circulando en cualquier momento dado. - -Premisas para hacer un modelo simplificado: - -- Utilizar el GTFS del bus UCR -- La pantalla objetivo está en Facultad de Ingeniería (la visualización sería ahí) -- Hacer salidas regulares de buses. Si un bus tarda aproximadamente de 20 a 30 minutos haciendo un viaje (depende de la trayectoria, con o sin "milla"), entonces con un tiempo de salida regular cada aproximadamente 15 minutos, siempre habría más de un bus reportando datos en el sistema. Esto es útil para probar la visualización. Dado el caso, sería posible modificar ese "headway" (tiempo entre salidas) para hacerlo menor o mayor y probar el sistema. -- Podemos asumir libremente que el sistema opera 24/7 con salidas regulares. Que no se nos olvide probar el caso en el que no hay datos (ejemplo: la pantalla debe tener un mensaje de que no hay buses actualmente o algo así). -- Elegir solamente los datos de GTFS Realtime (ocupación, velocidad, dirección, posición, odómetro) y *tal vez* algún dato complementario para enviar -- Simulación de datos: - - Posición: elegir un punto de la secuencia de puntos de la trayectoria en la tabla `shapes.txt` basados en la distancia recorrida (`shape_dist_traveled`) y algún criterio de velocidad promedio del bus (por ejemplo 15 km/h para una trayectoria de 5 km recorrida en 20 minutos). - - Velocidad: un número aleatorio elegido de una distribución normal con valor medio 15 km/h (u otra velocidad promedio) con una desviación estándar "sensata". - - Ocupación: un número aleatorio entre 0 y C (capacidad máxima del bus) pero que cambia únicamente después de pasar por una parada. Para esto hay que conocer dónde están las paradas (tabla `stops.txt`). Mejor enfocar la aleatoriedad como: "se subieron o bajaron N personas en cada parada". - - Dirección: la dirección del vector que une el punto de la trayectoria anterior con la posición actual, y según GTFS Realtime: "Bearing, in degrees, clockwise from True North, i.e., 0 is North and 90 is East." - - Odómetro: distancia recorrida en el viaje, igual a `shape_dist_traveled`. -- Luego: crear el `FeedMessage` binaro del GTFS Realtime a partir de esto. -- Sugerencia: un _script_ para la creación de los datos simulados y otro _script_ para la conversión en GTFS Realtime (usar paquetes de Google para eso). - -## Creación de GTFS Realtime - -Crear un *script* de Python para recopilar los datos enviados según la especificación propuesta (arriba) y "confeccionar" un `FeedMessage` y dejar a disposición de todos los consumidores (incluyendo el otro servidor `gtfs-screens`). - -Es necesario **dominar** [GTFS Realtime](https://gtfs.org/realtime/reference/) a profundidad. Un `FeedMessage` tiene tres posibles *entidades*: - -- *Service Alerts* -- *Trip Updates* -- *Vehicle Positions* - -> GTFS Realtime es entregado como un archivo binario Protobuf `.pb`. Referencia de [MBTA GTFS Realtime](https://github.com/mbta/gtfs-documentation/blob/master/reference/gtfs-realtime.md) para ver las actualizaciones (también disponibles en JSON). - -En este proyecto, implementaremos *Vehicle Positions* y *Trip Updates*. *Service Alerts* no porque requiere de un sistema conectado con la agencia para que sea actualizado por personas, no es telemetría automatizada. - -Secuencia prevista de esta tarea: - -- Con algún mecanismo de recepción de datos en tiempo real (por ejemplo: Apache Pulsar) es necesario recopilar los datos y guardarlos en memoria. -- Cada $N$ segundos es necesario crear el `FeedMessage`. Inicialmente, $N = 20$ (esta es una importante referencia también para los datos sintéticos). -- Es necesario "desempacar" estos datos y crear la entidad `vehicle` de GTFS Realtime dentro de `FeedMessage`. -- Finalmente, dejar el archivo `.pb` y quizá `.json` en una URL, por ejemplo: `buses.ucr.ac.cr/realtime/vehicle_positions.pb`. -- Repetir *ad infinitum* - -Nota mental: - -- `VehiclePositions` se construye a partir de los datos de los buses -- `TripUpdates` se construye a partir de cálculos hechos en el servidor -- `ServiceAlerts` se construye a partir de *input* de una plataforma de interfaz con la administración del servicio - -## Estructura del proyecto en Django - -### Aplicaciones - -- `gtfs`: maneja la base de datos con los datos GTFS -- `feed`: realiza las tareas periódicas de recolección de datos de los buses y la (futura) plataforma de `ServiceAlerts` para crear el `FeedMessage`. -- `website`: controla las páginas misceláneas del servidor como panel de administración y panel de datos, etc. \ No newline at end of file diff --git a/docs/old/index.md b/docs/old/index.md deleted file mode 100644 index 000ea34..0000000 --- a/docs/old/index.md +++ /dev/null @@ -1,17 +0,0 @@ -# Welcome to MkDocs - -For full documentation visit [mkdocs.org](https://www.mkdocs.org). - -## Commands - -* `mkdocs new [dir-name]` - Create a new project. -* `mkdocs serve` - Start the live-reloading docs server. -* `mkdocs build` - Build the documentation site. -* `mkdocs -h` - Print help message and exit. - -## Project layout - - mkdocs.yml # The configuration file. - docs/ - index.md # The documentation homepage. - ... # Other markdown pages, images and other files. diff --git a/docs/old/logos/b.png b/docs/old/logos/b.png deleted file mode 100644 index 4848d11..0000000 Binary files a/docs/old/logos/b.png and /dev/null differ diff --git a/docs/old/mkdocs.yml b/docs/old/mkdocs.yml deleted file mode 100644 index 5020603..0000000 --- a/docs/old/mkdocs.yml +++ /dev/null @@ -1,40 +0,0 @@ -site_name: Servidor en tiempo real de datos GTFS - -nav: - - Inicio: index.md - - Desarrollo: development.md - - Equipo de abordo: obe.md - - Celery: deployment.md - - API: api.md - -extra_css: - - stylesheets/extra.css - -theme: - name: material - language: es - logo: assets/logos/b.png - favicon: assets/logos/b.png - palette: - scheme: ucr - features: - - navigation.expand - - navigation.tabs - - toc.integrate - - content.code.copy - - content.code.select - -markdown_extensions: - - admonition - - pymdownx.highlight: - anchor_linenums: true - line_spans: __span - pygments_lang_class: true - - pymdownx.inlinehilite - - pymdownx.snippets - - pymdownx.superfences - - pymdownx.superfences: - custom_fences: - - name: mermaid - class: mermaid - format: !!python/name:pymdownx.superfences.fence_code_format \ No newline at end of file diff --git a/docs/old/obe.md b/docs/old/obe.md deleted file mode 100644 index 4ebcfef..0000000 --- a/docs/old/obe.md +++ /dev/null @@ -1,52 +0,0 @@ -# Especificación del equipo de abordo - -!!! info - Trabajo en desarrollo - -Un equipo de abordo (**OBE**, del inglés *On-Board Equipment*) es una computadora/router ubicada en las unidades de autobús diseñadas para varias tareas, entre ellas: - -- Recopilar datos del bus a través de sensores, como: - - Ubicación, velocidad, dirección, con GPS y/o sensores inerciales - - Ocupación del bus, con cámaras, barras u otros - - Presión de llantas, puertas abiertas, etc. - - Datos ambientales, con sensores de todo tipo -- Enviar alertas con *input* del operador del bus (choques, quedó varado, etc.) -- Operar como *router* Wi-Fi para pasajeros del bus -- Enviar periódicamente toda la información necesaria por medio de alguna red de acceso (celular o Wi-Fi, por ejemplo) a uno o varios servidores - -## Requisitos - -### Requisitos mínimos - -- Sensor GPS -- Conectividad en red celular y/o Wi-Fi -- Interfaz para conductor - -# Requisitos deseables - -- Cámara para -- Pantalla informativa para pasajeros - -### Conectividad - -Es deseable conectividad celular, con capacidades para solicitudes HTTP - -## Especificación de los datos a enviar - -Los datos serán enviados siguiendo la especificación de los datos del API... - -### Interfaz - -Tareas: - -- Configurar el equipo para un vehículo -- Ingresar los datos de cada viaje - -Ejemplo de secuencia de inicio de viaje: - -1. [Botón de configurar nuevo viaje] -2. Seleccionar ruta del viaje -3. Seleccionar viaje, según hora (lista prestablecida en GTFS Schedule) -4. [Botón de iniciar viaje] - - Al iniciar viaje, se registran la fecha y hora - diff --git a/docs/old/oldHOWTO.md b/docs/old/oldHOWTO.md deleted file mode 100644 index 437b67b..0000000 --- a/docs/old/oldHOWTO.md +++ /dev/null @@ -1,170 +0,0 @@ -# Instrucciones de ejecución de la plataforma - ---- - -URGENTE LA RENOVACIÓN DE Esto - -## Development - -```sh -docker compose -f docker-compose.dev.yml build -``` - -## Production - -```sh -docker compose -f docker-compose.prod.yml build -``` - ---- - -El sistema requiere de: - -- Django / Python -- PostgreSQL / PostGIS -- Celery / Celery Beat -- Redis - -## Django - -La plataforma de Django será útil para: - -- Crear el sitio web con el panel de administración -- Administrar las tareas periódicas con su integración con Celery y Celery Beat -- Actualizar la información en tiempo real con las pantallas con WebSockets - -Es necesario instalar Django 5.0 y la extensión Django Channels: - -```bash -pip install django -pip install channels -``` - -## PostgreSQL / PostGIS - -El proyecto requiere de una base de datos con una extensión para datos geoespaciales... - -```bash -sudo apt install postgresql -(...) -sudo apt install postgis -``` - -Modificar `pg_hba.conf` de forma que sea: - -```text -local all postgres trust - -local all all trust -``` - -y así no tendrá contraseñas. Luego en la terminal: - -```bash -sudo -u postgres psql -``` - -que nos lleva a la interfaz de `psql` para configurar un nuevo usuario: - -```bash -postgres=# CREATE ROLE user_name SUPERUSER; -postgres=# ALTER ROLE user_name LOGIN; -``` - -Ahora podemos crear una base de datos, para este proyecto: - -```bash -createdb realtime -``` - -ahora hay que ingresar a esa base de datos: - -```bash -psql realtime -``` - -y ahí crear la extensión de PostGIS con: - -```bash -realtime=# CREATE EXTENSION postgis; -``` - -Con esto quedaría lista la base de datos para conectarnos desde Django. - -## Celery - -Celery es un administrador de tareas (_task manager_)... - -### Celery - -Instalar Celery... - -```bash -pip install version -``` - -y probar con `celery --version`. - -Ejecutar Celery con: - -```bash -celery -A realtime worker --loglevel=info -``` - -### Celery Beat - -Celery utiliza los paquetes de integración con Django `django-celery-results` y `django-celery-beat`, y el intermediador de mensajes Redis. - -```bash -celery -A realtime beat --scheduler django_celery_beat.schedulers:DatabaseScheduler --loglevel=info -``` - -## Redis - -```bash -sudo apt install redis-server -``` - -Nota: en macOS: - -```bash -brew install redis -``` - -Probar su estado como proceso del sistema: - -```bash -sudo systemctl status redis-server -``` - -Probar la conexión: - -```bash ->>> redis-cli ping -PONG -``` - -## Django Channels - -Para habilitar la conexión permanente y bidireccional entre cliente y servidor con WebSockets, es necesario utilizar la extensión Django [Channels](https://channels.readthedocs.io/en/latest/), con [Daphne](https://github.com/django/daphne) como servidor HTTP/WebSocket (`http://`/`ws://`) y con [Redis](https://github.com/django/channels_redis) como intermediador de mensajes nuevamente. Para esto son necesarios los paquetes: - -- `channels` -- `daphne` -- `redis` -- `channel-redis` - -Este es un modo de conexión asíncrono, y por tanto requiere de la configuración ASGI (_Asynchronous Server Gateway Interface_). Esto se hace en el archivo `asgi.py`. - -Similar a `urls.py`, Channels requiere un archivo `routing.py` donde establece los `websocket_urlpatterns`, es decir, las rutas o URLs donde se establece la conexión del WebSocket `ws://`. - -También, similar a `views.py`, Channels define un archivo `consumers.py` donde define la lógica a realizar durante la conexión. - -A diferencia de - -Al configurar `settings.py` con Daphne, el comando `python manage.py runserver` ahora ejecuta también ASGI. De hecho, ahora en la terminal se muestra: - -```bash -Starting ASGI/Daphne version 4.1.0 development server at http://127.0.0.1:8000/ -``` - -y toda la funcionalidad "regular" (WSGI) continúa operando. diff --git a/docs/old/stylesheets/extra.css b/docs/old/stylesheets/extra.css deleted file mode 100644 index 37ec2b6..0000000 --- a/docs/old/stylesheets/extra.css +++ /dev/null @@ -1,5 +0,0 @@ -[data-md-color-scheme="ucr"] { - --md-primary-fg-color: #005DA4; - --md-primary-fg-color--light: #00C0F3; - --md-primary-fg-color--dark: #008641; -} \ No newline at end of file diff --git a/docs/oldHOWTO.md b/docs/oldHOWTO.md deleted file mode 100644 index 437b67b..0000000 --- a/docs/oldHOWTO.md +++ /dev/null @@ -1,170 +0,0 @@ -# Instrucciones de ejecución de la plataforma - ---- - -URGENTE LA RENOVACIÓN DE Esto - -## Development - -```sh -docker compose -f docker-compose.dev.yml build -``` - -## Production - -```sh -docker compose -f docker-compose.prod.yml build -``` - ---- - -El sistema requiere de: - -- Django / Python -- PostgreSQL / PostGIS -- Celery / Celery Beat -- Redis - -## Django - -La plataforma de Django será útil para: - -- Crear el sitio web con el panel de administración -- Administrar las tareas periódicas con su integración con Celery y Celery Beat -- Actualizar la información en tiempo real con las pantallas con WebSockets - -Es necesario instalar Django 5.0 y la extensión Django Channels: - -```bash -pip install django -pip install channels -``` - -## PostgreSQL / PostGIS - -El proyecto requiere de una base de datos con una extensión para datos geoespaciales... - -```bash -sudo apt install postgresql -(...) -sudo apt install postgis -``` - -Modificar `pg_hba.conf` de forma que sea: - -```text -local all postgres trust - -local all all trust -``` - -y así no tendrá contraseñas. Luego en la terminal: - -```bash -sudo -u postgres psql -``` - -que nos lleva a la interfaz de `psql` para configurar un nuevo usuario: - -```bash -postgres=# CREATE ROLE user_name SUPERUSER; -postgres=# ALTER ROLE user_name LOGIN; -``` - -Ahora podemos crear una base de datos, para este proyecto: - -```bash -createdb realtime -``` - -ahora hay que ingresar a esa base de datos: - -```bash -psql realtime -``` - -y ahí crear la extensión de PostGIS con: - -```bash -realtime=# CREATE EXTENSION postgis; -``` - -Con esto quedaría lista la base de datos para conectarnos desde Django. - -## Celery - -Celery es un administrador de tareas (_task manager_)... - -### Celery - -Instalar Celery... - -```bash -pip install version -``` - -y probar con `celery --version`. - -Ejecutar Celery con: - -```bash -celery -A realtime worker --loglevel=info -``` - -### Celery Beat - -Celery utiliza los paquetes de integración con Django `django-celery-results` y `django-celery-beat`, y el intermediador de mensajes Redis. - -```bash -celery -A realtime beat --scheduler django_celery_beat.schedulers:DatabaseScheduler --loglevel=info -``` - -## Redis - -```bash -sudo apt install redis-server -``` - -Nota: en macOS: - -```bash -brew install redis -``` - -Probar su estado como proceso del sistema: - -```bash -sudo systemctl status redis-server -``` - -Probar la conexión: - -```bash ->>> redis-cli ping -PONG -``` - -## Django Channels - -Para habilitar la conexión permanente y bidireccional entre cliente y servidor con WebSockets, es necesario utilizar la extensión Django [Channels](https://channels.readthedocs.io/en/latest/), con [Daphne](https://github.com/django/daphne) como servidor HTTP/WebSocket (`http://`/`ws://`) y con [Redis](https://github.com/django/channels_redis) como intermediador de mensajes nuevamente. Para esto son necesarios los paquetes: - -- `channels` -- `daphne` -- `redis` -- `channel-redis` - -Este es un modo de conexión asíncrono, y por tanto requiere de la configuración ASGI (_Asynchronous Server Gateway Interface_). Esto se hace en el archivo `asgi.py`. - -Similar a `urls.py`, Channels requiere un archivo `routing.py` donde establece los `websocket_urlpatterns`, es decir, las rutas o URLs donde se establece la conexión del WebSocket `ws://`. - -También, similar a `views.py`, Channels define un archivo `consumers.py` donde define la lógica a realizar durante la conexión. - -A diferencia de - -Al configurar `settings.py` con Daphne, el comando `python manage.py runserver` ahora ejecuta también ASGI. De hecho, ahora en la terminal se muestra: - -```bash -Starting ASGI/Daphne version 4.1.0 development server at http://127.0.0.1:8000/ -``` - -y toda la funcionalidad "regular" (WSGI) continúa operando. diff --git a/docs/stylesheets/extra.css b/docs/stylesheets/extra.css deleted file mode 100644 index 37ec2b6..0000000 --- a/docs/stylesheets/extra.css +++ /dev/null @@ -1,5 +0,0 @@ -[data-md-color-scheme="ucr"] { - --md-primary-fg-color: #005DA4; - --md-primary-fg-color--light: #00C0F3; - --md-primary-fg-color--dark: #008641; -} \ No newline at end of file diff --git a/docs/zensical.toml b/docs/zensical.toml index 8f11130..8910547 100644 --- a/docs/zensical.toml +++ b/docs/zensical.toml @@ -35,10 +35,7 @@ edit_uri = "edit/main/docs/content/" # The site_url is the canonical URL for your site. When building online # documentation you should set this. # Read more: https://zensical.org/docs/setup/basics/#site_url -# -# TODO: set to the production docs host. In prod this is the `DOCS_DOMAIN` -# Traefik env var (compose.prod.yml). Confirm the exact host with the team, e.g.: -#site_url = "https://docs.databus.cr/" +site_url = "https://databus.simovilab.org/" # The copyright notice appears in the page footer and can contain an HTML # fragment.