o=ss.taboption('general',form.ListValue,'domain_strategy',_('Domain Strategy'),_("Whether to use IPv4 or IPv6 address if Server Hostname is a domain."));
o.value("UseIP");
o.value("UseIPv4");
o.value("UseIPv6");
o.default="UseIP";
o.modalonly=true;
o=ss.taboption('general',form.Value,'domain_resolve_dns',_('Resolve Domain via DNS'),_("Specify a DNS to resolve server hostname. Be careful of possible recursion."));
o=ss.taboption('resolving',form.ListValue,'domain_strategy',_('Domain Strategy'),_("Whether to use IPv4 or IPv6 address if Server Hostname is a domain."));
o.value("UseIP");
o.value("UseIPv4");
o.value("UseIPv6");
o.default="UseIP";
o.modalonly=true;
o=ss.taboption('resolving',form.Value,'domain_resolve_dns',_('Resolve Domain via DNS'),_("Specify a DNS to resolve server hostname. Be careful of possible recursion."));
o.datatype="or(ipaddr, ipaddrport(1))";
o.modalonly=true;
o=ss.taboption('resolving',form.ListValue,'domain_resolve_dns_method',_('Resolve Domain DNS Method'),_("Effective when DNS above is set. Direct methods will bypass Xray completely so it may get blocked."));
o.value("udp",_("UDP"));
o.value("quic+local",_("DNS over QUIC (direct)"));
o.value("tcp",_("TCP"));
o.value("tcp+local",_("TCP (direct)"));
o.value("https",_("DNS over HTTPS"));
o.value("https+local",_("DNS over HTTPS (direct)"));
letdestination=extra_inbounds.option(form.MultiValue,'destination',_('Destination'),_("Select multiple outbounds for load balancing. If none selected, requests will be sent via direct outbound."));
letbalancer_strategy=extra_inbounds.option(form.Value,'balancer_strategy',_('Balancer Strategy'),_('Strategy <code>leastPing</code> requires observatory (see "Extra Options" tab) to be enabled.'));
letfake_dns_balancer_strategy=fs.option(form.Value,'fake_dns_balancer_strategy',_('Balancer Strategy'),_('Strategy <code>leastPing</code> requires observatory (see "Extra Options" tab) to be enabled.'));