text: import textwrap
  
  from orchestra.forms.widgets import DynamicHelpTextSelect
  
  
  class RouteBackendSelect(DynamicHelpTextSelect):
      """ Updates matches input field based on selected backend """
      def __init__(self, target, help_text, route_matches, *args, **kwargs):
          kwargs['attrs'] = {
              'onfocus': "this.oldvalue = this.value;",
          }
          self.route_matches = route_matches
          super(RouteBackendSelect, self).__init__(target, help_text, *args, **kwargs)
      
      def get_dynamic_help_text(self, target, help_text):
          help_text = super(RouteBackendSelect, self).get_dynamic_help_text(target, help_text)
          return help_text + textwrap.dedent("""\
              routematches = {route_matches};
              match = $("#id_match");
              if ( this.oldvalue == "" || match.value == routematches[this.oldvalue])
                  match.value = routematches[this.options[this.selectedIndex].value];
              this.oldvalue = this.value;
              """.format(route_matches=self.route_matches)
          )
  