Open holdenhinkle opened 1 year ago
New Google sheet - master external services list, with notes about endpoint documentation
Google doc - https://docs.google.com/spreadsheets/d/1c_07bmN7YtxtWo6nAxRM-FzM501ey7bzKoRGE6nZ0UM/edit?usp=sharing
Files in app
, modules
, and lib
that call statsd
:
√ vsp-infra-application-manifests % ruby /Users/holdenhinkle/Desktop/statsd_paths.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/uploaders/log_metrics.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/models/mhv_account.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/models/saved_claim/veteran_readiness_employment_claim.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/models/token.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/models/health_care_application.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/policies/medical_copays_policy.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/policies/bgs_policy.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/policies/debt_policy.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/policies/evss_policy.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/sentry_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/form526_confirmation_email_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/sidekiq_stats_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/hca/log_email_diff_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/export_breaker_status.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/evss/disability_compensation_form/submit_form0781.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/evss/disability_compensation_form/submit_uploads.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/evss/disability_compensation_form/submit_form526_cleanup.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/evss/disability_compensation_form/upload_bdd_instructions.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/evss/disability_compensation_form/submit_form526.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/evss/disability_compensation_form/submit_form8940.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/evss/disability_compensation_form/metrics.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/mhv/account_statistics_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/structured_data/process_data_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/decision_review/submit_upload.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/form526_submission_failed_email_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/form1010cg/submission_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/education_form/create_daily_spool_files.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/education_form/send_school_certifying_officials_email.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/education_form/process10203_submissions.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/education_form/create10203_applicant_decision_letters.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/rapid_ready_for_decision/form526_asthma_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/rapid_ready_for_decision/form526_base_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/rapid_ready_for_decision/disability_compensation_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/account_login_statistics_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/workers/central_mail/submit_form4142_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v1/sessions_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/medical_copays_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/sign_in_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/coe_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/veteran_readiness_employment_claims_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/dependents_applications_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/education_career_counseling_claims_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/disability_compensation_forms_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/burial_claims_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/health_care_applications_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/dependents_verifications_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/profile/service_histories_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/post911_gi_bill_statuses_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/v0/education_benefits_claims_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/controllers/claims_base_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/services/medical_copays/vbs/invalid_vbs_request_error.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/services/medical_copays/vbs/response_data.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/services/medical_copays/request.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/services/sign_in/constants/statsd.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/services/mhv_accounts_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/app/services/form1010cg/auditor.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/facilities_api/spec/requests/facilities_api/v1/ccp_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/facilities_api/spec/requests/facilities_api/v1/va_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/facilities_api/spec/services/facilities_api/v1/lighthouse/client_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/facilities_api/spec/services/facilities_api/v1/ppms/client_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_research/app/controllers/covid_research/base_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_research/app/controllers/covid_research/volunteer/submissions_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_research/app/services/covid_research/volunteer/genisis_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_research/spec/covid_research_spec_helper.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_research/spec/requests/volunteer_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_research/spec/services/covid_research/volunteer/genisis_service_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/app/jobs/covid_vaccine/scheduled_batch_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/app/jobs/covid_vaccine/enrollment_upload_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/app/jobs/covid_vaccine/expanded_registration_email_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/app/jobs/covid_vaccine/registration_email_job.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/app/services/covid_vaccine/v0/vetext_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/config/initializers/statsd.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/spec/jobs/covid_vaccine/expanded_registration_email_job_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/spec/jobs/covid_vaccine/enrollment_upload_job_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/spec/jobs/covid_vaccine/registration_email_job_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/covid_vaccine/spec/jobs/covid_vaccine/scheduled_batch_job_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/claims_api/app/controllers/claims_api/v1/forms/disability_compensation_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/claims_api/spec/requests/v1/disability_compensation_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/va_notify/lib/va_notify/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/app/models/mobile/v0/adapters/immunizations.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/app/policies/schedule_appointment_policy.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/app/serializers/mobile/v0/claim_serializer.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/app/controllers/mobile/application_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/app/controllers/mobile/v0/letters_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/app/services/mobile/v0/profile/sync_update_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/app/services/mobile/v0/claims/proxy.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/config/initializers/statsd.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/request/v1/user_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/request/v1/immunizations_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/request/payment_history_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/request/folders_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/request/user_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/request/triage_teams_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/request/immunizations_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/mobile/spec/controllers/application_controller_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vba_documents/app/models/vba_documents/upload_submission.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vba_documents/spec/models/upload_submission_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vba_documents/spec/lib/upload_error_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vba_documents/lib/vba_documents/upload_error.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/appeals_api/spec/support/shared_examples_for_appeals_status.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/appeals_api/lib/appeals_api/upload_error.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/app/controllers/vaos/v0/appointments_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/app/controllers/vaos/v2/appointments_controller.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/app/services/vaos/v1/fhir_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/app/services/vaos/middleware/vaos_logging.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/app/services/vaos/base_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/config/initializers/statsd.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/request/v1/locations_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/request/v1/organization_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/request/v1/healthcare_service_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/request/systems_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/request/appointments_request_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/services/middleware/vaos_logging_integration_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/services/middleware/vaos_logging_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/vaos/spec/services/systems_service_spec.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/check_in/config/initializers/statsd.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/check_in/README.md:-
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/config/initializers/breakers.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/toe/sponsors_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/toe/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/letters/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/forms/service/letter_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/forms/service/sponsor_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/forms/service/submission_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/forms/service/claimant_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/enrollment/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/status/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/eligibility/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/automation/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/fry_dea/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/claimant/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/modules/meb_api/lib/dgi/submission/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/stats_d_metric.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/sm/client.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/forms/client.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/hca/enrollment_eligibility/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/hca/soap_parser.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/hca/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/mpi/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/sidekiq/form526_job_status_tracker/job_tracker.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/sidekiq/form526_job_status_tracker/metrics.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/vre/ch31_form.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/decision_review_v1/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/carma/client/mule_soft_client.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/vetext/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/pagerduty/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/bgs/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/ihub/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/preneeds/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/oidc/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/iam_ssoe_oauth/session_manager.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/evss/dependents/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/evss/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/search/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/mdot/client.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/va_profile/stats.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/va_profile/stats.rb:
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/va_profile/communication/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/va_profile/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/common/client/concerns/monitoring.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/caseflow/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/sidekiq_stats_instrumentation/client_middleware.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/sidekiq_stats_instrumentation/server_middleware.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/debt_management_center/debts_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/debt_management_center/vbs/request.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/debt_management_center/sharepoint/request.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/debt_management_center/financial_status_report_service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/statsd_middleware.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/decision_review/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/okta/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/search_click_tracking/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/bid/awards/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/gibft/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/lighthouse/benefits_reference_data/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/emis/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/lgy/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/breakers/statsd_plugin.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/apps/client.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/central_mail/upload_error.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/central_mail/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/facilities/metadata/client.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/search_typeahead/service.rb
/Users/holdenhinkle/Documents/Oddball/va_website/vets-api/lib/bip_claims/service.rb
Not moving to the next sprint due to some changes in priority
Here’s a list of 1) directories that have files that call statsd
and 2) files that call statsd
- https://docs.google.com/spreadsheets/d/1c_07bmN7YtxtWo6nAxRM-FzM501ey7bzKoRGE6nZ0UM/edit#gid=625429050
I only included apps/
, lib/
, and modules/
in this search.
Like the other lists, mapping these directories and files to known services is very difficult to do.
Removing tech team 3 label from story as we will not be working on this
Issue Description
We need a complete list of all the external services vets-api consumes. We have a list of all services that extend
Common::Client::Base
but we're not certain that's the entire list of services.Tasks
Common::Client::Base
and add them to the List of External Services spreadsheetAcceptance Criteria
[ ] The List of External Services list will be complete
How to configure this issue
product support
,analytics-insights
,operations
,service-design
,Console-Services
,tools-fe
)backend
,frontend
,devops
,design
,research
,product
,ia
,qa
,analytics
,contact center
,research
,accessibility
,content
)bug
,request
,discovery
,documentation
, etc.)