diff --git a/apps/dnet-orgs-database-application/TODO.txt b/apps/dnet-orgs-database-application/TODO.txt new file mode 100644 index 00000000..32af9846 --- /dev/null +++ b/apps/dnet-orgs-database-application/TODO.txt @@ -0,0 +1,5 @@ +1) Completare operazioni di insert/update sul db +2) Migliorare ricerca (utilizzare fulltext search di postgres) +3) Primo caricamento di organizzazioni da openaire (con prefisso openorgs____) con simrels +4) Caricamenti successivi di nuove oganizazzioni +5) Caricamenti successivi di nuove simrels diff --git a/apps/dnet-orgs-database-application/deploy.info b/apps/dnet-orgs-database-application/deploy.info new file mode 100644 index 00000000..ecd27bb2 --- /dev/null +++ b/apps/dnet-orgs-database-application/deploy.info @@ -0,0 +1,3 @@ +{"type_source": "SVN", "goal": "package -U source:jar", +"url": "http://svn-public.driver.research-infrastructures.eu/driver/dnet45/modules/dnet-orgs-database-application/trunk/", "deploy_repository": "dnet45-snapshots", "version": "4", "mail": "sandro.labruzzo@isti.cnr.it,michele.artini@isti.cnr.it, claudio.atzori@isti.cnr.it, alessia.bardi@isti.cnr.it", +"deploy_repository_url": "http://maven.research-infrastructures.eu/nexus/content/repositories/dnet45-snapshots", "name": "dnet-orgs-database-application"} \ No newline at end of file diff --git a/apps/dnet-orgs-database-application/pom.xml b/apps/dnet-orgs-database-application/pom.xml new file mode 100644 index 00000000..8a7a4d0f --- /dev/null +++ b/apps/dnet-orgs-database-application/pom.xml @@ -0,0 +1,72 @@ + + + + + eu.dnetlib + apps + 3.0.0-SNAPSHOT + + + 4.0.0 + dnet-orgs-database-application + jar + + + + org.springframework.boot + spring-boot-starter-thymeleaf + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-json + + + org.springframework.boot + spring-boot-starter-security + + + org.thymeleaf.extras + thymeleaf-extras-springsecurity4 + 3.0.4.RELEASE + + + org.postgresql + postgresql + + + com.vladmihalcea + hibernate-types-52 + 2.3.5 + + + + + org.springframework.boot + spring-boot-devtools + true + + + + + io.springfox + springfox-swagger2 + 2.9.2 + + + + io.springfox + springfox-swagger-ui + 2.9.2 + + + + + + + diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/MainApplication.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/MainApplication.java new file mode 100644 index 00000000..4a8686c6 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/MainApplication.java @@ -0,0 +1,46 @@ +package eu.dnetlib.organizations; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.context.annotation.Bean; + +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.builders.RequestHandlerSelectors; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +@SpringBootApplication +@EnableSwagger2 +@EnableCaching +public class MainApplication { + + private static final Logger log = LoggerFactory.getLogger(MainApplication.class); + + public static void main(final String[] args) { + SpringApplication.run(MainApplication.class, args); + } + + @Bean + public static Docket newSwaggerDocket() { + log.info("Initializing SWAGGER..."); + + return new Docket(DocumentationType.SWAGGER_2) + .select() + .apis(RequestHandlerSelectors.any()) + .paths(p -> p.startsWith("/api/")) + .build().apiInfo(new ApiInfoBuilder() + .title("D-Net Organizations Service APIs") + .description("APIs documentation") + .version("1.1") + .contact(ApiInfo.DEFAULT_CONTACT) + .license("Apache 2.0") + .licenseUrl("http://www.apache.org/licenses/LICENSE-2.0") + .build()); + + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/MyAccessDeniedHandler.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/MyAccessDeniedHandler.java new file mode 100644 index 00000000..396659c7 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/MyAccessDeniedHandler.java @@ -0,0 +1,41 @@ +package eu.dnetlib.organizations; + +import java.io.IOException; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.security.access.AccessDeniedException; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.security.web.access.AccessDeniedHandler; +import org.springframework.stereotype.Component; + +import eu.dnetlib.organizations.controller.UserInfo; + +@Component +public class MyAccessDeniedHandler implements AccessDeniedHandler { + + private static Logger logger = LoggerFactory.getLogger(MyAccessDeniedHandler.class); + + @Override + public void handle(final HttpServletRequest req, final HttpServletResponse res, final AccessDeniedException e) + throws IOException, ServletException { + + final Authentication auth = SecurityContextHolder.getContext().getAuthentication(); + + if (auth != null) { + logger.warn(String.format("User '%s' attempted to access the protected URL: %s", auth.getName(), req.getRequestURI())); + } + + if (UserInfo.isNotAuthorized(auth)) { + res.sendRedirect(req.getContextPath() + "/authorizationRequest"); + } else { + res.sendRedirect(req.getContextPath() + "/alreadyRegistered"); + } + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/WebSecurityConfig.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/WebSecurityConfig.java new file mode 100644 index 00000000..3c1e63e6 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/WebSecurityConfig.java @@ -0,0 +1,72 @@ +package eu.dnetlib.organizations; + +import javax.sql.DataSource; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.crypto.factory.PasswordEncoderFactories; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.security.web.access.AccessDeniedHandler; + +import eu.dnetlib.organizations.controller.UserRole; + +@Configuration +@EnableWebSecurity +public class WebSecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + private DataSource dataSource; + + @Autowired + private AccessDeniedHandler accessDeniedHandler; + + @Override + protected void configure(final HttpSecurity http) throws Exception { + + http.csrf() + .disable() + .authorizeRequests() + .antMatchers("/", "/api/**") + .hasAnyRole(UserRole.ADMIN.name(), UserRole.NATIONAL_ADMIN.name(), UserRole.USER.name()) + .antMatchers("/registration_api/**") + .hasRole(UserRole.NOT_AUTHORIZED.name()) + .antMatchers("/resources/**", "/webjars/**") + .permitAll() + .anyRequest() + .authenticated() + .and() + .formLogin() + .loginPage("/login") + .permitAll() + .and() + .logout() + .permitAll() + .and() + .exceptionHandling() + .accessDeniedHandler(accessDeniedHandler); + } + + @Autowired + public void configureGlobal(final AuthenticationManagerBuilder auth) throws Exception { + auth.jdbcAuthentication() + .dataSource(dataSource) + .usersByUsernameQuery("select ?, '{MD5}60c4a0eb167dd41e915a885f582414df', true") // TODO: this is a MOCK, the user should + // be authenticated using the openaire + // credentials + .authoritiesByUsernameQuery("with const as (SELECT ? as email) " + + "select c.email, 'ROLE_'||coalesce(u.role, '" + + UserRole.NOT_AUTHORIZED + + "') from const c left outer join users u on (u.email = c.email)"); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return PasswordEncoderFactories.createDelegatingPasswordEncoder(); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/HomeController.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/HomeController.java new file mode 100644 index 00000000..4d5ab0fa --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/HomeController.java @@ -0,0 +1,36 @@ +package eu.dnetlib.organizations.controller; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +@Controller +public class HomeController { + + @GetMapping("/") + public String home() { + return "home"; + } + + @GetMapping("/login") + public String login() { + return "login"; + } + + @GetMapping("/authorizationRequest") + public String authorizationRequest() { + return "authorizationRequest"; + } + + @GetMapping("/alreadyRegistered") + public String alreadyRegistered() { + return "alreadyRegistered"; + } + + @RequestMapping(value = { "/doc", "/swagger" }, method = RequestMethod.GET) + public String apiDoc() { + return "redirect:swagger-ui.html"; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/OrganizationController.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/OrganizationController.java new file mode 100644 index 00000000..505a9b0d --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/OrganizationController.java @@ -0,0 +1,270 @@ +package eu.dnetlib.organizations.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.Set; +import java.util.TreeMap; +import java.util.TreeSet; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Page; +import org.springframework.data.domain.PageRequest; +import org.springframework.security.core.Authentication; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import eu.dnetlib.organizations.model.OpenaireDuplicate; +import eu.dnetlib.organizations.model.Relationship; +import eu.dnetlib.organizations.model.utils.BrowseEntry; +import eu.dnetlib.organizations.model.utils.OrganizationConflict; +import eu.dnetlib.organizations.model.utils.OrganizationConflictImpl; +import eu.dnetlib.organizations.model.view.ConflictGroupView; +import eu.dnetlib.organizations.model.view.DuplicateGroupView; +import eu.dnetlib.organizations.model.view.OrganizationInfoView; +import eu.dnetlib.organizations.model.view.OrganizationSimpleView; +import eu.dnetlib.organizations.model.view.OrganizationView; +import eu.dnetlib.organizations.repository.OpenaireConflictRepository; +import eu.dnetlib.organizations.repository.OpenaireDuplicateRepository; +import eu.dnetlib.organizations.repository.UserCountryRepository; +import eu.dnetlib.organizations.repository.readonly.ConflictGroupViewRepository; +import eu.dnetlib.organizations.repository.readonly.DuplicateGroupViewRepository; +import eu.dnetlib.organizations.repository.readonly.OrganizationInfoViewRepository; +import eu.dnetlib.organizations.repository.readonly.OrganizationSimpleViewRepository; +import eu.dnetlib.organizations.repository.readonly.OrganizationViewRepository; +import eu.dnetlib.organizations.repository.readonly.SuggestionInfoViewByCountryRepository; +import eu.dnetlib.organizations.utils.DatabaseUtils; +import eu.dnetlib.organizations.utils.RelationType; + +@RestController +@RequestMapping("/api/organizations") +public class OrganizationController { + + @Autowired + private OrganizationViewRepository organizationViewRepository; + @Autowired + private OrganizationInfoViewRepository organizationInfoViewRepository; + @Autowired + private OrganizationSimpleViewRepository organizationSimpleViewRepository; + @Autowired + private OpenaireDuplicateRepository openaireDuplicateRepository; + @Autowired + private OpenaireConflictRepository openaireConflictRepository; + @Autowired + private ConflictGroupViewRepository conflictGroupViewRepository; + @Autowired + private SuggestionInfoViewByCountryRepository suggestionInfoViewByCountryRepository; + @Autowired + private UserCountryRepository userCountryRepository; + @Autowired + private DuplicateGroupViewRepository duplicateGroupViewRepository; + @Autowired + private DatabaseUtils databaseUtils; + + @RequestMapping(value = "/save", method = RequestMethod.POST) + public List save(@RequestBody final OrganizationView org, final Authentication authentication) { + if (StringUtils.isBlank(org.getName())) { + throw new RuntimeException("Missing field: name"); + } else if (StringUtils.isBlank(org.getCountry())) { + throw new RuntimeException("Missing field: country"); + } else if (StringUtils.isBlank(org.getType())) { + throw new RuntimeException("Missing field: type"); + } else if (UserInfo.isSuperAdmin(authentication) || userCountryRepository.verifyAuthorizationForCountry(org.getCountry(), authentication.getName())) { + final String orgId = databaseUtils.insertOrUpdateOrganization(org, authentication.getName(), StringUtils.isNotBlank(org.getId())); + return Arrays.asList(orgId); + } else { + throw new RuntimeException("User not authorized"); + } + } + + @RequestMapping(value = "/info", method = RequestMethod.GET) + public OrganizationInfoView infoById(@RequestParam final String id, final Authentication authentication) { + return organizationInfoViewRepository.findById(id).get(); + } + + @RequestMapping(value = "/suggestionsInfo", method = RequestMethod.GET) + public SuggestionInfo suggestionsInfo(final Authentication authentication) { + final SuggestionInfo info = new SuggestionInfo(); + + if (UserInfo.isSuperAdmin(authentication)) { + suggestionInfoViewByCountryRepository.findAll().forEach(info::add); + } else if (UserInfo.isSimpleUser(authentication) || UserInfo.isNationalAdmin(authentication)) { + userCountryRepository.getCountriesForUser(authentication.getName()) + .stream() + .map(suggestionInfoViewByCountryRepository::findById) + .filter(Optional::isPresent) + .map(Optional::get) + .forEach(info::add); + } + return info; + } + + @RequestMapping(value = "/get", method = RequestMethod.GET) + public OrganizationView findById(@RequestParam final String id, final Authentication authentication) { + final OrganizationView org = organizationViewRepository.findById(id).get(); + + if (UserInfo.isSuperAdmin(authentication) || userCountryRepository.verifyAuthorizationForCountry(org.getCountry(), authentication.getName())) { + return org; + } else { + throw new RuntimeException("User not authorized"); + } + } + + @RequestMapping(value = "/conflicts", method = RequestMethod.GET) + public List conflicts(@RequestParam final String id, final Authentication authentication) { + if (UserInfo.isSuperAdmin(authentication) || userCountryRepository.verifyAuthorizationForId(id, authentication.getName())) { + return openaireConflictRepository.getConflictsForId(id); + } else { + throw new RuntimeException("User not authorized"); + } + } + + @RequestMapping(value = "/duplicates", method = RequestMethod.GET) + public List duplicates(@RequestParam final String id, final Authentication authentication) { + if (UserInfo.isSuperAdmin(authentication) || userCountryRepository.verifyAuthorizationForId(id, authentication.getName())) { + return openaireDuplicateRepository.findByLocalId(id); + } else { + throw new RuntimeException("User not authorized"); + } + } + + @RequestMapping(value = "/conflicts/byCountry/{country}", method = RequestMethod.GET) + public Collection> findConflictsByCountry(@PathVariable final String country, final Authentication authentication) { + + databaseUtils.verifyConflictGroups(false); + + if (UserInfo.isSuperAdmin(authentication)) { + return groupConflicts(conflictGroupViewRepository.findByCountry1OrCountry2(country, country).stream()); + } else if (UserInfo.isSimpleUser(authentication) || UserInfo.isNationalAdmin(authentication)) { + final Stream list = userCountryRepository.getCountriesForUser(authentication.getName()) + .stream() + .filter(country::equalsIgnoreCase) + .map(c -> conflictGroupViewRepository.findByCountry1OrCountry2(c, c).stream()) + .findFirst() + .orElse(Stream.empty()); + return groupConflicts(list); + } else { + throw new RuntimeException("User not authorized"); + } + + } + + @RequestMapping(value = "/duplicates/byCountry/{country}", method = RequestMethod.GET) + public Iterable findDuplicatesByCountry(@PathVariable final String country, final Authentication authentication) { + + if (UserInfo.isSuperAdmin(authentication)) { + return duplicateGroupViewRepository.findByCountry(country); + } else if (UserInfo.isSimpleUser(authentication) || UserInfo.isNationalAdmin(authentication)) { + return userCountryRepository.getCountriesForUser(authentication.getName()) + .stream() + .filter(country::equalsIgnoreCase) + .map(duplicateGroupViewRepository::findByCountry) + .findFirst() + .orElse(new ArrayList()); + } else { + throw new RuntimeException("User not authorized"); + } + + } + + private Collection> groupConflicts(final Stream stream) { + final Map> map = new TreeMap<>(); + stream.forEach(c -> { + if (!map.containsKey(c.getGroup())) { + map.put(c.getGroup(), new TreeSet<>()); + } + map.get(c.getGroup()).add(new OrganizationConflictImpl(c.getId1(), c.getName1(), c.getType1(), c.getCity1(), c.getCountry1())); + map.get(c.getGroup()).add(new OrganizationConflictImpl(c.getId2(), c.getName2(), c.getType2(), c.getCity2(), c.getCountry2())); + }); + return map.values(); + } + + @RequestMapping(value = "/duplicates", method = RequestMethod.POST) + public List duplicates(@RequestBody final List simrels, final Authentication authentication) { + + final boolean b = UserInfo.isSuperAdmin(authentication) + || simrels.stream() + .map(OpenaireDuplicate::getLocalId) + .distinct() + .allMatch(id -> userCountryRepository.verifyAuthorizationForId(id, authentication.getName())); + + if (b) { + return openaireDuplicateRepository.saveAll(simrels); + } else { + throw new RuntimeException("User not authorized"); + } + } + + @RequestMapping(value = "/search/{page}/{size}", method = RequestMethod.GET) + public Page search(@PathVariable final int page, + @PathVariable final int size, + @RequestParam final String q, + final Authentication authentication) { + return UserInfo.isSuperAdmin(authentication) + ? organizationSimpleViewRepository.findByNameContainingIgnoreCase(q, PageRequest.of(page, size)) + : organizationSimpleViewRepository.findByNameForUser(q, authentication.getName(), PageRequest.of(page, size)); + } + + @RequestMapping(value = "/byCountry/{code}/{page}/{size}", method = RequestMethod.GET) + public Page findByCountry(@PathVariable final String code, + @PathVariable final int page, + @PathVariable final int size, + final Authentication authentication) { + if (UserInfo.isSuperAdmin(authentication) || userCountryRepository.verifyAuthorizationForCountry(code, authentication.getName())) { + return organizationSimpleViewRepository.findByCountry(code, PageRequest.of(page, size)); + } else { + throw new RuntimeException("User not authorized"); + } + } + + @RequestMapping(value = "/byType/{type}/{page}/{size}", method = RequestMethod.GET) + public Page findByType(@PathVariable final String type, + @PathVariable final int page, + @PathVariable final int size, + final Authentication authentication) { + return UserInfo.isSuperAdmin(authentication) + ? organizationSimpleViewRepository.findByType(type, PageRequest.of(page, size)) + : organizationSimpleViewRepository.findByTypeForUser(type, authentication.getName(), PageRequest.of(page, size)); + } + + @RequestMapping(value = "/browse/countries", method = RequestMethod.GET) + public List browseCountries(final Authentication authentication) { + return UserInfo.isSuperAdmin(authentication) + ? organizationSimpleViewRepository.browseCountries() + : organizationSimpleViewRepository.browseCountriesForUser(authentication.getName()); + } + + @RequestMapping(value = "/browse/types", method = RequestMethod.GET) + public List browseOrganizationTypes(final Authentication authentication) { + return UserInfo.isSuperAdmin(authentication) + ? organizationSimpleViewRepository.browseTypes() + : organizationSimpleViewRepository.browseTypesForUser(authentication.getName()); + } + + @RequestMapping(value = "/conflicts/fix/{masterId}", method = RequestMethod.POST) + public List fixConflicts(final Authentication authentication, @PathVariable final String masterId, @RequestBody final List otherIds) { + if (UserInfo.isSuperAdmin(authentication) || userCountryRepository.verifyAuthorizationForId(masterId, authentication.getName())) { + + return otherIds.stream() + .filter(id -> UserInfo.isSuperAdmin(authentication) || userCountryRepository.verifyAuthorizationForId(id, authentication.getName())) + .map(id -> databaseUtils.makeRelation(masterId, id, RelationType.Merges)) + .flatMap(List::stream) + .collect(Collectors.toList()); + + } else { + return new ArrayList<>(); + } + + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/SuggestionInfo.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/SuggestionInfo.java new file mode 100644 index 00000000..ca88659b --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/SuggestionInfo.java @@ -0,0 +1,53 @@ +package eu.dnetlib.organizations.controller; + +import java.util.LinkedHashMap; +import java.util.Map; + +import eu.dnetlib.organizations.model.view.SuggestionInfoViewByCountry; + +public class SuggestionInfo { + + public class SuggestionCounter { + + private long nDuplicates = 0; + + private long nConflicts = 0; + + public long getnDuplicates() { + return nDuplicates; + } + + public void setnDuplicates(final long nDuplicates) { + this.nDuplicates = nDuplicates; + } + + public long getnConflicts() { + return nConflicts; + } + + public void setnConflicts(final long nConflicts) { + this.nConflicts = nConflicts; + } + + public void add(final SuggestionInfoViewByCountry infoCountry) { + nDuplicates += infoCountry.getnDuplicates(); + nConflicts += infoCountry.getnConflicts(); + } + } + + public SuggestionCounter total = new SuggestionCounter();; + + public Map byCountry = new LinkedHashMap<>(); + + public void add(final SuggestionInfoViewByCountry infoCountry) { + final String country = infoCountry.getCountry(); + + if (!byCountry.containsKey(country)) { + byCountry.put(country, new SuggestionCounter()); + + } + byCountry.get(country).add(infoCountry); + total.add(infoCountry); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserController.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserController.java new file mode 100644 index 00000000..553654b1 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserController.java @@ -0,0 +1,85 @@ +package eu.dnetlib.organizations.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.Authentication; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import eu.dnetlib.organizations.model.view.UserView; +import eu.dnetlib.organizations.repository.UserRepository; +import eu.dnetlib.organizations.repository.readonly.UserViewRepository; +import eu.dnetlib.organizations.utils.DatabaseUtils; + +@RestController +public class UserController { + + @Autowired + private UserRepository userRepository; + + @Autowired + private UserViewRepository userViewRepository; + @Autowired + private DatabaseUtils dbUtils; + + @PostMapping(value = "/registration_api/newUser") + public Map newUser(final @RequestBody List countries, final Authentication authentication) { + + final String email = authentication.getName(); + + final Map res = new HashMap<>(); + + if (!UserInfo.isNotAuthorized(authentication) || userRepository.existsById(email)) { + res.put("status", 2); + } else { + dbUtils.newUser(email, countries); + res.put("status", 1); + } + return res; + } + + @GetMapping("/api/users") + public Iterable users(final Authentication authentication) { + if (UserInfo.isSuperAdmin(authentication)) { + return userViewRepository.findAll(); + } else if (UserInfo.isNationalAdmin(authentication)) { + + // IMPORTANT: a national admin can manage ONLY the users where ALL the countries are under his control + final List res = new ArrayList<>(); + final List myCountries = dbUtils.listCountriesForUser(authentication.getName()); + + for (final UserView uw : userViewRepository.findAll()) { + if (uw.getCountries() != null && uw.getCountries().length > 0 && myCountries.containsAll(Arrays.asList(uw.getCountries()))) { + res.add(uw); + } + } + return res; + } else { + return new ArrayList<>(); + } + } + + @PostMapping("/api/users") + public Iterable save(@RequestBody final UserView userView, final Authentication authentication) { + if (authentication.getName().equals(userView.getEmail())) { throw new RuntimeException("You can't edit your own user"); } + dbUtils.saveUser(userView); + return users(authentication); + } + + @DeleteMapping("/api/users") + public Iterable delete(final @RequestParam String email, final Authentication authentication) { + if (authentication.getName().equals(email)) { throw new RuntimeException("You can't delete your own user"); } + dbUtils.deleteUser(email); + return users(authentication); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserInfo.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserInfo.java new file mode 100644 index 00000000..cbe78a34 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserInfo.java @@ -0,0 +1,89 @@ +package eu.dnetlib.organizations.controller; + +import org.apache.commons.lang3.EnumUtils; +import org.apache.commons.lang3.StringUtils; +import org.springframework.security.core.Authentication; +import org.springframework.security.core.GrantedAuthority; + +public class UserInfo { + + private String name; + private UserRole role; + + public UserInfo() { + this.name = "anonymous"; + this.role = UserRole.NOT_AUTHORIZED; + } + + public UserInfo(final String name, final UserRole role) { + this.name = name; + this.role = role; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public UserRole getRole() { + return role; + } + + public void setRole(final UserRole role) { + this.role = role; + } + + public static UserInfo generate(final Authentication authentication) { + return new UserInfo(authentication.getName(), findRole(authentication)); + } + + public static UserRole findRole(final Authentication authentication) { + return authentication.getAuthorities() + .stream() + .map(GrantedAuthority::getAuthority) + .map(s -> StringUtils.substringAfter(s, "ROLE_")) + .filter(s -> EnumUtils.isValidEnum(UserRole.class, s)) + .map(UserRole::valueOf) + .findFirst() + .orElseGet(() -> UserRole.NOT_AUTHORIZED); + } + + public static boolean isSuperAdmin(final Authentication authentication) { + for (final GrantedAuthority aut : authentication.getAuthorities()) { + if (aut.getAuthority().equals("ROLE_" + UserRole.ADMIN)) { return true; } + } + return false; + } + + public static boolean isNationalAdmin(final Authentication authentication) { + for (final GrantedAuthority aut : authentication.getAuthorities()) { + if (aut.getAuthority().equals("ROLE_" + UserRole.NATIONAL_ADMIN)) { return true; } + } + return false; + } + + public static boolean isSimpleUser(final Authentication authentication) { + for (final GrantedAuthority aut : authentication.getAuthorities()) { + if (aut.getAuthority().equals("ROLE_" + UserRole.USER)) { return true; } + } + return false; + } + + public static boolean isPending(final Authentication authentication) { + for (final GrantedAuthority aut : authentication.getAuthorities()) { + if (aut.getAuthority().equals("ROLE_" + UserRole.PENDING)) { return true; } + } + return false; + } + + public static boolean isNotAuthorized(final Authentication authentication) { + for (final GrantedAuthority aut : authentication.getAuthorities()) { + if (aut.getAuthority().equals("ROLE_" + UserRole.NOT_AUTHORIZED)) { return true; } + } + return false; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserRole.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserRole.java new file mode 100644 index 00000000..0407fedb --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/UserRole.java @@ -0,0 +1,5 @@ +package eu.dnetlib.organizations.controller; + +public enum UserRole { + USER, ADMIN, NATIONAL_ADMIN, PENDING, NOT_AUTHORIZED +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/VocabulariesController.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/VocabulariesController.java new file mode 100644 index 00000000..d4045814 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/controller/VocabulariesController.java @@ -0,0 +1,52 @@ +package eu.dnetlib.organizations.controller; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.Authentication; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +import eu.dnetlib.organizations.utils.DatabaseUtils; +import eu.dnetlib.organizations.utils.DatabaseUtils.VocabularyTable; +import eu.dnetlib.organizations.utils.RelationType; +import eu.dnetlib.organizations.utils.SimilarityType; + +@RestController +public class VocabulariesController { + + @Autowired + private DatabaseUtils databaseUtils; + + @GetMapping("/api/vocabularies") + public Map> ListVocabularies(final Authentication authentication) { + final Map> vocs = new HashMap<>(); + vocs.put("orgTypes", databaseUtils.listValuesOfVocabularyTable(VocabularyTable.org_types)); + vocs.put("idTypes", databaseUtils.listValuesOfVocabularyTable(VocabularyTable.id_types)); + vocs.put("languages", databaseUtils.listValuesOfVocabularyTable(VocabularyTable.languages)); + + vocs.put("relTypes", Arrays.stream(RelationType.values()).map(Object::toString).collect(Collectors.toList())); + vocs.put("similaritiesType", Arrays.stream(SimilarityType.values()).map(Object::toString).collect(Collectors.toList())); + + if (UserInfo.isSimpleUser(authentication) || UserInfo.isNationalAdmin(authentication)) { + vocs.put("countries", databaseUtils.listCountriesForUser(authentication.getName())); + } else if (UserInfo.isSuperAdmin(authentication)) { + vocs.put("countries", databaseUtils.listValuesOfVocabularyTable(VocabularyTable.countries)); + } else { + vocs.put("countries", new ArrayList()); + } + + return vocs; + } + + @GetMapping({ "/api/voc/allCountries", "/registration_api/voc/allCountries" }) + public List allCountries() { + return databaseUtils.listValuesOfVocabularyTable(VocabularyTable.countries); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Acronym.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Acronym.java new file mode 100644 index 00000000..19f4c4a1 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Acronym.java @@ -0,0 +1,52 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "acronyms") +@IdClass(AcronymPK.class) +public class Acronym implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 1521008848879976517L; + + @Id + @Column(name = "id") + private String orgId; + + @Id + @Column(name = "acronym") + private String acronym; + + public Acronym() {} + + public Acronym(final String orgId, final String acronym) { + this.orgId = orgId; + this.acronym = acronym; + } + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getAcronym() { + return acronym; + } + + public void setAcronym(final String acronym) { + this.acronym = acronym; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/AcronymPK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/AcronymPK.java new file mode 100644 index 00000000..47c52db0 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/AcronymPK.java @@ -0,0 +1,51 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class AcronymPK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -7771532658881429064L; + + private String orgId; + + private String acronym; + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getAcronym() { + return acronym; + } + + public void setAcronym(final String acronym) { + this.acronym = acronym; + } + + @Override + public int hashCode() { + return Objects.hash(acronym, orgId); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof AcronymPK)) { return false; } + final AcronymPK other = (AcronymPK) obj; + return Objects.equals(acronym, other.acronym) && Objects.equals(orgId, other.orgId); + } + + @Override + public String toString() { + return String.format("AcronymPK [orgId=%s, acronym=%s]", orgId, acronym); + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireConflict.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireConflict.java new file mode 100644 index 00000000..33f9a8a1 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireConflict.java @@ -0,0 +1,76 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "oa_conflicts") +@IdClass(OpenaireConflictPK.class) +public class OpenaireConflict implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -5143344657695218270L; + + @Id + @Column(name = "id1") + private String id1; + + @Id + @Column(name = "id2") + private String id2; + + @Column(name = "reltype") + private String relType; + + @Column(name = "idgroup") + private String group; + + public OpenaireConflict() {} + + public OpenaireConflict(final String id1, final String id2, final String relType, final String group) { + this.id1 = id1; + this.id2 = id2; + this.relType = relType; + this.group = group; + } + + public String getId1() { + return id1; + } + + public void setId1(final String id1) { + this.id1 = id1; + } + + public String getId2() { + return id2; + } + + public void setId2(final String id2) { + this.id2 = id2; + } + + public String getRelType() { + return relType; + } + + public void setRelType(final String relType) { + this.relType = relType; + } + + public String getGroup() { + return group; + } + + public void setGroup(final String group) { + this.group = group; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireConflictPK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireConflictPK.java new file mode 100644 index 00000000..59c565ad --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireConflictPK.java @@ -0,0 +1,59 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class OpenaireConflictPK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 6752695921988906962L; + + private String id1; + + private String id2; + + public OpenaireConflictPK() {} + + public OpenaireConflictPK(final String id1, final String id2) { + this.id1 = id1; + this.id2 = id2; + } + + public String getId1() { + return id1; + } + + public void setId1(final String id1) { + this.id1 = id1; + } + + public String getId2() { + return id2; + } + + public void setId2(final String id2) { + this.id2 = id2; + } + + @Override + public int hashCode() { + return Objects.hash(id1, id2); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OpenaireConflictPK)) { return false; } + final OpenaireConflictPK other = (OpenaireConflictPK) obj; + return Objects.equals(id1, other.id1) && Objects.equals(id2, other.id2); + } + + @Override + public String toString() { + return String.format("OpenaireConflictPK [id1=%s, id2=%s]", id1, id2); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicate.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicate.java new file mode 100644 index 00000000..ccd6ae7a --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicate.java @@ -0,0 +1,111 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "oa_duplicates") +@IdClass(OpenaireDuplicatePK.class) +public class OpenaireDuplicate implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -5656204073481770618L; + + @Id + @Column(name = "local_id") + private String localId; + + @Id + @Column(name = "oa_original_id") + private String oaOriginalId; + + @Column(name = "oa_name") + private String oaName; + + @Column(name = "oa_acronym") + private String oaAcronym; + + @Column(name = "oa_country") + private String oaCountry; + + @Column(name = "oa_url") + private String oaUrl; + + @Column(name = "oa_collectedfrom") + private String oaCollectedFrom; + + @Column(name = "reltype") + private String relType; + + public String getLocalId() { + return localId; + } + + public void setLocalId(final String localId) { + this.localId = localId; + } + + public String getOaOriginalId() { + return oaOriginalId; + } + + public void setOaOriginalId(final String oaOriginalId) { + this.oaOriginalId = oaOriginalId; + } + + public String getOaName() { + return oaName; + } + + public void setOaName(final String oaName) { + this.oaName = oaName; + } + + public String getOaAcronym() { + return oaAcronym; + } + + public void setOaAcronym(final String oaAcronym) { + this.oaAcronym = oaAcronym; + } + + public String getOaCountry() { + return oaCountry; + } + + public void setOaCountry(final String oaCountry) { + this.oaCountry = oaCountry; + } + + public String getOaUrl() { + return oaUrl; + } + + public void setOaUrl(final String oaUrl) { + this.oaUrl = oaUrl; + } + + public String getOaCollectedFrom() { + return oaCollectedFrom; + } + + public void setOaCollectedFrom(final String oaCollectedFrom) { + this.oaCollectedFrom = oaCollectedFrom; + } + + public String getRelType() { + return relType; + } + + public void setRelType(final String relType) { + this.relType = relType; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicatePK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicatePK.java new file mode 100644 index 00000000..8e5b7bab --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OpenaireDuplicatePK.java @@ -0,0 +1,51 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class OpenaireDuplicatePK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 2546257975404466712L; + + private String localId; + private String oaOriginalId; + + public String getLocalId() { + return localId; + } + + public void setLocalId(final String localId) { + this.localId = localId; + } + + public String getOaOriginalId() { + return oaOriginalId; + } + + public void setOaOriginalId(final String oaOriginalId) { + this.oaOriginalId = oaOriginalId; + }; + + @Override + public int hashCode() { + return Objects.hash(localId, oaOriginalId); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OpenaireDuplicatePK)) { return false; } + final OpenaireDuplicatePK other = (OpenaireDuplicatePK) obj; + return Objects.equals(localId, other.localId) && Objects.equals(oaOriginalId, other.oaOriginalId); + } + + @Override + public String toString() { + return String.format("OpenaireDuplicatePK [localId=%s, oaOriginalId=%s]", localId, oaOriginalId); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Organization.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Organization.java new file mode 100644 index 00000000..27c9496f --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Organization.java @@ -0,0 +1,112 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "organizations") +public class Organization implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 5563256467964495301L; + + @Id + @Column(name = "id") + @GeneratedValue(strategy = GenerationType.IDENTITY) + private String id; + + @Column(name = "name") + private String name; + + @Column(name = "type") + private String type; + + @Column(name = "lat") + private Double lat; + + @Column(name = "lng") + private Double lng; + + @Column(name = "city") + private String city; + + @Column(name = "country") + private String country; + + public Organization() {} + + public Organization(final String id, final String name, final String type, final Double lat, final Double lng, final String city, final String country) { + this.id = id; + this.name = name; + this.type = type; + this.lat = lat; + this.lng = lng; + this.city = city; + this.country = country; + } + + public String getId() { + return id; + } + + public void setId(final String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + + public Double getLat() { + return lat; + } + + public void setLat(final Double lat) { + this.lat = lat; + } + + public Double getLng() { + return lng; + } + + public void setLng(final Double lng) { + this.lng = lng; + } + + public String getCity() { + return city; + } + + public void setCity(final String city) { + this.city = city; + } + + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherIdentifier.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherIdentifier.java new file mode 100644 index 00000000..dc7a413b --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherIdentifier.java @@ -0,0 +1,65 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "other_ids") +@IdClass(OtherIdentifierPK.class) +public class OtherIdentifier implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -8290245353090885241L; + + @Id + @Column(name = "id") + private String orgId; + + @Id + @Column(name = "otherid") + private String otherId; + + @Id + @Column(name = "type") + private String type; + + public OtherIdentifier() {} + + public OtherIdentifier(final String orgId, final String otherId, final String type) { + this.orgId = orgId; + this.otherId = otherId; + this.type = type; + } + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getOtherId() { + return otherId; + } + + public void setOtherId(final String otherId) { + this.otherId = otherId; + } + + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherIdentifierPK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherIdentifierPK.java new file mode 100644 index 00000000..94234fa5 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherIdentifierPK.java @@ -0,0 +1,60 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class OtherIdentifierPK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -3525128185006173748L; + + private String orgId; + private String otherId; + private String type; + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getOtherId() { + return otherId; + } + + public void setOtherId(final String otherId) { + this.otherId = otherId; + } + + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + + @Override + public int hashCode() { + return Objects.hash(orgId, otherId, type); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OtherIdentifierPK)) { return false; } + final OtherIdentifierPK other = (OtherIdentifierPK) obj; + return Objects.equals(orgId, other.orgId) && Objects.equals(otherId, other.otherId) && Objects.equals(type, other.type); + } + + @Override + public String toString() { + return String.format("OtherIdentifierPK [orgId=%s, otherId=%s, type=%s]", orgId, otherId, type); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherName.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherName.java new file mode 100644 index 00000000..2ee43077 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherName.java @@ -0,0 +1,64 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "other_names") +@IdClass(OtherNamePK.class) +public class OtherName implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -5212012138309835912L; + + @Id + @Column(name = "id") + private String orgId; + + @Id + @Column(name = "name") + private String name; + + @Id + @Column(name = "lang") + private String lang; + + public OtherName() {} + + public OtherName(final String orgId, final String name, final String lang) { + this.orgId = orgId; + this.name = name; + this.lang = lang; + } + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getLang() { + return lang; + } + + public void setLang(final String lang) { + this.lang = lang; + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherNamePK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherNamePK.java new file mode 100644 index 00000000..8b74a947 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/OtherNamePK.java @@ -0,0 +1,62 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class OtherNamePK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 1225063182881256637L; + + private String orgId; + + private String name; + + private String lang; + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getLang() { + return lang; + } + + public void setLang(final String lang) { + this.lang = lang; + } + + @Override + public int hashCode() { + return Objects.hash(orgId, lang, name); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OtherNamePK)) { return false; } + final OtherNamePK other = (OtherNamePK) obj; + return Objects.equals(orgId, other.orgId) && Objects.equals(lang, other.lang) && Objects.equals(name, other.name); + } + + @Override + public String toString() { + return String.format("OtherNamePK [orgId=%s, name=%s, lang=%s]", orgId, name, lang); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Relationship.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Relationship.java new file mode 100644 index 00000000..5bac559f --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Relationship.java @@ -0,0 +1,65 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "relationships") +@IdClass(RelationshipPK.class) +public class Relationship implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -5700143694178113214L; + + @Id + @Column(name = "id1") + private String id1; + + @Id + @Column(name = "id2") + private String id2; + + @Id + @Column(name = "reltype") + private String relType; + + public Relationship() {} + + public Relationship(final String id1, final String id2, final String relType) { + this.id1 = id1; + this.id2 = id2; + this.relType = relType; + } + + public String getId1() { + return id1; + } + + public void setId1(final String id1) { + this.id1 = id1; + } + + public String getId2() { + return id2; + } + + public void setId2(final String id2) { + this.id2 = id2; + } + + public String getRelType() { + return relType; + } + + public void setRelType(final String relType) { + this.relType = relType; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/RelationshipPK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/RelationshipPK.java new file mode 100644 index 00000000..67fbcd0f --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/RelationshipPK.java @@ -0,0 +1,61 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class RelationshipPK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 6090016904833186505L; + + private String id1; + + private String id2; + + private String relType; + + public String getId1() { + return id1; + } + + public void setId1(final String id1) { + this.id1 = id1; + } + + public String getId2() { + return id2; + } + + public void setId2(final String id2) { + this.id2 = id2; + } + + public String getRelType() { + return relType; + } + + public void setRelType(final String relType) { + this.relType = relType; + } + + @Override + public int hashCode() { + return Objects.hash(id1, id2, relType); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof RelationshipPK)) { return false; } + final RelationshipPK other = (RelationshipPK) obj; + return Objects.equals(id1, other.id1) && Objects.equals(id2, other.id2) && Objects.equals(relType, other.relType); + } + + @Override + public String toString() { + return String.format("RelationshipPK [id1=%s, id2=%s, relType=%s]", id1, id2, relType); + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Url.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Url.java new file mode 100644 index 00000000..d76bc307 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/Url.java @@ -0,0 +1,52 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "urls") +@IdClass(UrlPK.class) +public class Url implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -5889020711423271565L; + + @Id + @Column(name = "id") + private String orgId; + + @Id + @Column(name = "url") + private String url; + + public Url() {} + + public Url(final String orgId, final String url) { + this.orgId = orgId; + this.url = url; + } + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getUrl() { + return url; + } + + public void setUrl(final String url) { + this.url = url; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UrlPK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UrlPK.java new file mode 100644 index 00000000..16c8bed4 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UrlPK.java @@ -0,0 +1,51 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class UrlPK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 6459755341474103359L; + + private String orgId; + + private String url; + + public String getOrgId() { + return orgId; + } + + public void setOrgId(final String orgId) { + this.orgId = orgId; + } + + public String getUrl() { + return url; + } + + public void setUrl(final String url) { + this.url = url; + } + + @Override + public int hashCode() { + return Objects.hash(orgId, url); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof UrlPK)) { return false; } + final UrlPK other = (UrlPK) obj; + return Objects.equals(orgId, other.orgId) && Objects.equals(url, other.url); + } + + @Override + public String toString() { + return String.format("UrlPK [orgId=%s, urls=%s]", orgId, url); + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/User.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/User.java new file mode 100644 index 00000000..8a6408bd --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/User.java @@ -0,0 +1,53 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "users") +public class User implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -9062674086098391604L; + + @Id + @Column(name = "email") + private String email; + + @Column(name = "valid") + private boolean valid; + + @Column(name = "role") + private String role; + + public String getEmail() { + return email; + } + + public void setEmail(final String email) { + this.email = email; + } + + public boolean isValid() { + return valid; + } + + public void setValid(final boolean valid) { + this.valid = valid; + } + + public String getRole() { + return role; + } + + public void setRole(final String role) { + this.role = role; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UserCountry.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UserCountry.java new file mode 100644 index 00000000..e5466fd1 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UserCountry.java @@ -0,0 +1,52 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "user_countries") +@IdClass(UserCountryPK.class) +public class UserCountry implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 3493897777214583701L; + + @Id + @Column(name = "email") + private String email; + + @Id + @Column(name = "country") + private String country; + + public UserCountry() {} + + public UserCountry(final String email, final String country) { + this.email = email; + this.country = country; + } + + public String getEmail() { + return email; + } + + public void setEmail(final String email) { + this.email = email; + } + + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UserCountryPK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UserCountryPK.java new file mode 100644 index 00000000..80baf43a --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/UserCountryPK.java @@ -0,0 +1,52 @@ +package eu.dnetlib.organizations.model; + +import java.io.Serializable; +import java.util.Objects; + +public class UserCountryPK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 2003686130380208901L; + + private String email; + + private String country; + + public String getEmail() { + return email; + } + + public void setEmail(final String email) { + this.email = email; + } + + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + + @Override + public int hashCode() { + return Objects.hash(country, email); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof UserCountryPK)) { return false; } + final UserCountryPK other = (UserCountryPK) obj; + return Objects.equals(country, other.country) && Objects.equals(email, other.email); + } + + @Override + public String toString() { + return String.format("UserCountryPK [email=%s, country=%s]", email, country); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/BrowseEntry.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/BrowseEntry.java new file mode 100644 index 00000000..d0f1fbdc --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/BrowseEntry.java @@ -0,0 +1,9 @@ +package eu.dnetlib.organizations.model.utils; + +public interface BrowseEntry { + + String getValue(); + + int getCount(); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/OrganizationConflict.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/OrganizationConflict.java new file mode 100644 index 00000000..65b8ea0b --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/OrganizationConflict.java @@ -0,0 +1,15 @@ +package eu.dnetlib.organizations.model.utils; + +public interface OrganizationConflict { + + String getId(); + + String getName(); + + String getType(); + + String getCity(); + + String getCountry(); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/OrganizationConflictImpl.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/OrganizationConflictImpl.java new file mode 100644 index 00000000..979aa179 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/utils/OrganizationConflictImpl.java @@ -0,0 +1,91 @@ +package eu.dnetlib.organizations.model.utils; + +import java.util.Objects; + +public class OrganizationConflictImpl implements OrganizationConflict, Comparable { + + private String id; + private String name; + private String type; + private String city; + private String country; + + public OrganizationConflictImpl() {} + + public OrganizationConflictImpl(final String id) { + this.id = id; + } + + public OrganizationConflictImpl(final String id, final String name, final String type, final String city, final String country) { + this.id = id; + this.name = name; + this.type = type; + this.city = city; + this.country = country; + } + + @Override + public String getId() { + return id; + } + + public void setId(final String id) { + this.id = id; + } + + @Override + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + @Override + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + + @Override + public String getCity() { + return city; + } + + public void setCity(final String city) { + this.city = city; + } + + @Override + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + + @Override + public int compareTo(final OrganizationConflict o) { + return getId().compareTo(o.getId()); + } + + @Override + public int hashCode() { + return Objects.hash(id); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OrganizationConflictImpl)) { return false; } + final OrganizationConflictImpl other = (OrganizationConflictImpl) obj; + return Objects.equals(id, other.id); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/ConflictGroupView.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/ConflictGroupView.java new file mode 100644 index 00000000..a8b314e9 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/ConflictGroupView.java @@ -0,0 +1,144 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.IdClass; +import javax.persistence.Table; + +@Entity +@Table(name = "conflict_groups_view") +@IdClass(ConflictGroupViewPK.class) +public class ConflictGroupView implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -6621501199394187765L; + + @Id + @Column(name = "id_1") + private String id1; + + @Id + @Column(name = "id_2") + private String id2; + + @Column(name = "name_1") + private String name1; + + @Column(name = "name_2") + private String name2; + + @Column(name = "type_1") + private String type1; + + @Column(name = "type_2") + private String type2; + + @Column(name = "city_1") + private String city1; + + @Column(name = "city_2") + private String city2; + + @Column(name = "country_1") + private String country1; + + @Column(name = "country_2") + private String country2; + + @Column(name = "idgroup") + private String group; + + public String getId1() { + return id1; + } + + public void setId1(final String id1) { + this.id1 = id1; + } + + public String getId2() { + return id2; + } + + public void setId2(final String id2) { + this.id2 = id2; + } + + public String getName1() { + return name1; + } + + public void setName1(final String name1) { + this.name1 = name1; + } + + public String getName2() { + return name2; + } + + public void setName2(final String name2) { + this.name2 = name2; + } + + public String getType1() { + return type1; + } + + public void setType1(final String type1) { + this.type1 = type1; + } + + public String getType2() { + return type2; + } + + public void setType2(final String type2) { + this.type2 = type2; + } + + public String getCity1() { + return city1; + } + + public void setCity1(final String city1) { + this.city1 = city1; + } + + public String getCity2() { + return city2; + } + + public void setCity2(final String city2) { + this.city2 = city2; + } + + public String getCountry1() { + return country1; + } + + public void setCountry1(final String country1) { + this.country1 = country1; + } + + public String getCountry2() { + return country2; + } + + public void setCountry2(final String country2) { + this.country2 = country2; + } + + public String getGroup() { + return group; + } + + public void setGroup(final String group) { + this.group = group; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/ConflictGroupViewPK.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/ConflictGroupViewPK.java new file mode 100644 index 00000000..6f3547fc --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/ConflictGroupViewPK.java @@ -0,0 +1,51 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; +import java.util.Objects; + +public class ConflictGroupViewPK implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -4702103726315884367L; + + private String id1; + + private String id2; + + public String getId1() { + return id1; + } + + public void setId1(final String id1) { + this.id1 = id1; + } + + public String getId2() { + return id2; + } + + public void setId2(final String id2) { + this.id2 = id2; + } + + @Override + public int hashCode() { + return Objects.hash(id1, id2); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof ConflictGroupViewPK)) { return false; } + final ConflictGroupViewPK other = (ConflictGroupViewPK) obj; + return Objects.equals(id1, other.id1) && Objects.equals(id2, other.id2); + } + + @Override + public String toString() { + return String.format("ConflictGroupViewPK [id1=%s, id2=%s]", id1, id2); + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/DuplicateGroupView.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/DuplicateGroupView.java new file mode 100644 index 00000000..647c86b6 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/DuplicateGroupView.java @@ -0,0 +1,75 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "duplicate_groups_view") +public class DuplicateGroupView implements Serializable { + + /** + * + */ + private static final long serialVersionUID = 8387253981112795514L; + + @Id + @Column(name = "id") + private String id; + + @Column(name = "name") + private String name; + + @Column(name = "city") + private String city; + + @Column(name = "country") + private String country; + + @Column(name = "n_duplicates") + private long numberOfDuplicates; + + public String getId() { + return id; + } + + public void setId(final String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getCity() { + return city; + } + + public void setCity(final String city) { + this.city = city; + } + + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + + public long getNumberOfDuplicates() { + return numberOfDuplicates; + } + + public void setNumberOfDuplicates(final long numberOfDuplicates) { + this.numberOfDuplicates = numberOfDuplicates; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationInfoView.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationInfoView.java new file mode 100644 index 00000000..9176b081 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationInfoView.java @@ -0,0 +1,109 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; +import java.time.OffsetDateTime; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "organizations_info_view") +public class OrganizationInfoView implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -6077637367923773598L; + + @Id + @Column(name = "id") + private String id; + + @Column(name = "name") + private String name; + + @Column(name = "created_by") + private String createdBy; + + @Column(name = "creation_date") + private OffsetDateTime creationDate; + + @Column(name = "modified_by") + private String modifiedBy; + + @Column(name = "modification_date") + private OffsetDateTime modificationDate; + + @Column(name = "n_duplicates") + private long nDuplicates; + + @Column(name = "n_conflicts") + private long nConflicts; + + public String getId() { + return id; + } + + public void setId(final String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getCreatedBy() { + return createdBy; + } + + public void setCreatedBy(final String createdBy) { + this.createdBy = createdBy; + } + + public OffsetDateTime getCreationDate() { + return creationDate; + } + + public void setCreationDate(final OffsetDateTime creationDate) { + this.creationDate = creationDate; + } + + public String getModifiedBy() { + return modifiedBy; + } + + public void setModifiedBy(final String modifiedBy) { + this.modifiedBy = modifiedBy; + } + + public OffsetDateTime getModificationDate() { + return modificationDate; + } + + public void setModificationDate(final OffsetDateTime modificationDate) { + this.modificationDate = modificationDate; + } + + public long getnDuplicates() { + return nDuplicates; + } + + public void setnDuplicates(final long nDuplicates) { + this.nDuplicates = nDuplicates; + } + + public long getnConflicts() { + return nConflicts; + } + + public void setnConflicts(final long nConflicts) { + this.nConflicts = nConflicts; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationSimpleView.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationSimpleView.java new file mode 100644 index 00000000..8c44b87f --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationSimpleView.java @@ -0,0 +1,131 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; +import java.util.Objects; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +import org.hibernate.annotations.Type; +import org.hibernate.annotations.TypeDef; +import org.hibernate.annotations.TypeDefs; + +import com.vladmihalcea.hibernate.type.array.StringArrayType; + +@Entity +@Table(name = "organizations_simple_view") +@TypeDefs({ + @TypeDef(name = "string-array", typeClass = StringArrayType.class) +}) +public class OrganizationSimpleView implements Serializable, Comparable { + + /** + * + */ + private static final long serialVersionUID = 417248897119259446L; + + @Id + @Column(name = "id") + private String id; + + @Column(name = "name") + private String name; + + @Column(name = "type") + private String type; + + @Column(name = "city") + private String city; + + @Column(name = "country") + private String country; + + @Type(type = "string-array") + @Column(name = "acronyms", columnDefinition = "text[]") + private String[] acronyms; + + public OrganizationSimpleView() {} + + public OrganizationSimpleView(final String id) { + this.id = id; + } + + public OrganizationSimpleView(final String id, final String name, final String type, final String city, final String country, final String[] acronyms) { + this.id = id; + this.name = name; + this.type = type; + this.city = city; + this.country = country; + this.acronyms = acronyms; + } + + public String getId() { + return id; + } + + public void setId(final String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + + public String getCity() { + return city; + } + + public void setCity(final String city) { + this.city = city; + } + + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + + public String[] getAcronyms() { + return acronyms; + } + + public void setAcronyms(final String[] acronyms) { + this.acronyms = acronyms; + } + + @Override + public int hashCode() { + return Objects.hash(id); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OrganizationSimpleView)) { return false; } + final OrganizationSimpleView other = (OrganizationSimpleView) obj; + return Objects.equals(id, other.id); + } + + @Override + public int compareTo(final OrganizationSimpleView o) { + return id.compareTo(o.getId()); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationView.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationView.java new file mode 100644 index 00000000..503f5594 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OrganizationView.java @@ -0,0 +1,169 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; +import java.util.Set; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +import org.hibernate.annotations.Type; +import org.hibernate.annotations.TypeDef; +import org.hibernate.annotations.TypeDefs; + +import com.vladmihalcea.hibernate.type.json.JsonBinaryType; +import com.vladmihalcea.hibernate.type.json.JsonStringType; + +@Entity +@Table(name = "organizations_view") +@TypeDefs({ + @TypeDef(name = "json", typeClass = JsonStringType.class), + @TypeDef(name = "jsonb", typeClass = JsonBinaryType.class) +}) +public class OrganizationView implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -7864607073631041868L; + + @Id + @Column(name = "id") + private String id; + + @Column(name = "name") + private String name; + + @Column(name = "type") + private String type; + + @Column(name = "lat") + private Double lat; + + @Column(name = "lng") + private Double lng; + + @Column(name = "city") + private String city; + + @Column(name = "country") + private String country; + + @Type(type = "jsonb") + @Column(name = "other_ids", columnDefinition = "jsonb") + private Set otherIdentifiers; + + @Type(type = "jsonb") + @Column(name = "other_names", columnDefinition = "jsonb") + private Set otherNames; + + @Type(type = "jsonb") + @Column(name = "acronyms", columnDefinition = "jsonb") + private Set acronyms; + + @Type(type = "jsonb") + @Column(name = "urls", columnDefinition = "jsonb") + private Set urls; + + @Type(type = "jsonb") + @Column(name = "relations", columnDefinition = "jsonb") + private Set relations; + + public String getId() { + return id; + } + + public void setId(final String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + + public Double getLat() { + return lat; + } + + public void setLat(final Double lat) { + this.lat = lat; + } + + public Double getLng() { + return lng; + } + + public void setLng(final Double lng) { + this.lng = lng; + } + + public String getCity() { + return city; + } + + public void setCity(final String city) { + this.city = city; + } + + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + + public Set getOtherIdentifiers() { + return otherIdentifiers; + } + + public void setOtherIdentifiers(final Set otherIdentifiers) { + this.otherIdentifiers = otherIdentifiers; + } + + public Set getOtherNames() { + return otherNames; + } + + public void setOtherNames(final Set otherNames) { + this.otherNames = otherNames; + } + + public Set getAcronyms() { + return acronyms; + } + + public void setAcronyms(final Set acronyms) { + this.acronyms = acronyms; + } + + public Set getUrls() { + return urls; + } + + public void setUrls(final Set urls) { + this.urls = urls; + } + + public Set getRelations() { + return relations; + } + + public void setRelations(final Set relations) { + this.relations = relations; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OtherIdentifier.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OtherIdentifier.java new file mode 100644 index 00000000..92d86cc4 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OtherIdentifier.java @@ -0,0 +1,46 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; +import java.util.Objects; + +public class OtherIdentifier implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -8290245353090885241L; + + private String id; + private String type; + + public String getId() { + return id; + } + + public void setId(final String id) { + this.id = id; + } + + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + + @Override + public int hashCode() { + return Objects.hash(id, type); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OtherIdentifier)) { return false; } + final OtherIdentifier other = (OtherIdentifier) obj; + return Objects.equals(id, other.id) && Objects.equals(type, other.type); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OtherName.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OtherName.java new file mode 100644 index 00000000..3bfe9f91 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/OtherName.java @@ -0,0 +1,47 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; +import java.util.Objects; + +public class OtherName implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -5212012138309835912L; + + private String name; + + private String lang; + + public String getName() { + return name; + } + + public void setName(final String name) { + this.name = name; + } + + public String getLang() { + return lang; + } + + public void setLang(final String lang) { + this.lang = lang; + } + + @Override + public int hashCode() { + return Objects.hash(lang, name); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof OtherName)) { return false; } + final OtherName other = (OtherName) obj; + return Objects.equals(lang, other.lang) && Objects.equals(name, other.name); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/RelationByOrg.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/RelationByOrg.java new file mode 100644 index 00000000..191e9140 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/RelationByOrg.java @@ -0,0 +1,55 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; +import java.util.Objects; + +public class RelationByOrg implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -659747760287666406L; + + private String relatedOrgId; + private String relatedOrgName; + private String type; + + public String getRelatedOrgId() { + return relatedOrgId; + } + + public void setRelatedOrgId(final String relatedOrgId) { + this.relatedOrgId = relatedOrgId; + } + + public String getRelatedOrgName() { + return relatedOrgName; + } + + public void setRelatedOrgName(final String relatedOrgName) { + this.relatedOrgName = relatedOrgName; + } + + public String getType() { + return type; + } + + public void setType(final String type) { + this.type = type; + } + + @Override + public int hashCode() { + return Objects.hash(relatedOrgId, relatedOrgName, type); + } + + @Override + public boolean equals(final Object obj) { + if (this == obj) { return true; } + if (obj == null) { return false; } + if (!(obj instanceof RelationByOrg)) { return false; } + final RelationByOrg other = (RelationByOrg) obj; + return Objects.equals(relatedOrgId, other.relatedOrgId) && Objects.equals(relatedOrgName, other.relatedOrgName) && Objects.equals(type, other.type); + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/SuggestionInfoViewByCountry.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/SuggestionInfoViewByCountry.java new file mode 100644 index 00000000..35ec70b4 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/SuggestionInfoViewByCountry.java @@ -0,0 +1,53 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "suggestions_info_by_country_view") +public class SuggestionInfoViewByCountry implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -6814272980951063075L; + + @Id + @Column(name = "country") + private String country; + + @Column(name = "n_duplicates") + private long nDuplicates; + + @Column(name = "n_conflicts") + private long nConflicts; + + public String getCountry() { + return country; + } + + public void setCountry(final String country) { + this.country = country; + } + + public long getnDuplicates() { + return nDuplicates; + } + + public void setnDuplicates(final long nDuplicates) { + this.nDuplicates = nDuplicates; + } + + public long getnConflicts() { + return nConflicts; + } + + public void setnConflicts(final long nConflicts) { + this.nConflicts = nConflicts; + } + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/UserView.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/UserView.java new file mode 100644 index 00000000..573f5a79 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/model/view/UserView.java @@ -0,0 +1,73 @@ +package eu.dnetlib.organizations.model.view; + +import java.io.Serializable; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +import org.hibernate.annotations.Type; +import org.hibernate.annotations.TypeDef; +import org.hibernate.annotations.TypeDefs; + +import com.vladmihalcea.hibernate.type.array.StringArrayType; + +@Entity +@Table(name = "users_view") +@TypeDefs({ + @TypeDef(name = "string-array", typeClass = StringArrayType.class) +}) +public class UserView implements Serializable { + + /** + * + */ + private static final long serialVersionUID = -3308680880727895075L; + + @Id + @Column(name = "email") + private String email; + + @Column(name = "valid") + private boolean valid; + + @Column(name = "role") + private String role; + + @Type(type = "string-array") + @Column(name = "countries", columnDefinition = "text[]") + private String[] countries; + + public String getEmail() { + return email; + } + + public void setEmail(final String email) { + this.email = email; + } + + public boolean isValid() { + return valid; + } + + public void setValid(final boolean valid) { + this.valid = valid; + } + + public String getRole() { + return role; + } + + public void setRole(final String role) { + this.role = role; + } + + public String[] getCountries() { + return countries; + } + + public void setCountries(final String[] countries) { + this.countries = countries; + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/AcronymRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/AcronymRepository.java new file mode 100644 index 00000000..13484314 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/AcronymRepository.java @@ -0,0 +1,12 @@ +package eu.dnetlib.organizations.repository; + +import org.springframework.data.jpa.repository.JpaRepository; + +import eu.dnetlib.organizations.model.Acronym; +import eu.dnetlib.organizations.model.AcronymPK; + +public interface AcronymRepository extends JpaRepository { + + void deleteByOrgId(String orgId); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OpenaireConflictRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OpenaireConflictRepository.java new file mode 100644 index 00000000..6ce1c87d --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OpenaireConflictRepository.java @@ -0,0 +1,30 @@ +package eu.dnetlib.organizations.repository; + +import java.util.List; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.data.jpa.repository.Query; +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.OpenaireConflict; +import eu.dnetlib.organizations.model.OpenaireConflictPK; +import eu.dnetlib.organizations.model.utils.OrganizationConflict; + +@Repository +public interface OpenaireConflictRepository extends JpaRepository { + + @Query(value = "select o.id, o.name, o.type, o.city, o.country from oa_conflicts c left outer join organizations o on (c.id2 = o.id) where o.id is not null and c.id1 = ?", nativeQuery = true) + List getConflictsForId(String id); + + Iterable findById1AndGroupIsNull(String id); + + Iterable findById2AndGroupIsNull(String id); + + @Modifying + @Query(value = "update oa_conflicts set idgroup = null", nativeQuery = true) + void resetGroupIds(); + + long countByGroupNull(); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OpenaireDuplicateRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OpenaireDuplicateRepository.java new file mode 100644 index 00000000..4d79ebd1 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OpenaireDuplicateRepository.java @@ -0,0 +1,15 @@ +package eu.dnetlib.organizations.repository; + +import java.util.List; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.OpenaireDuplicate; +import eu.dnetlib.organizations.model.OpenaireDuplicatePK; + +@Repository +public interface OpenaireDuplicateRepository extends JpaRepository { + + List findByLocalId(String localId); +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OrganizationRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OrganizationRepository.java new file mode 100644 index 00000000..33ada54a --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OrganizationRepository.java @@ -0,0 +1,21 @@ +package eu.dnetlib.organizations.repository; + +import java.time.OffsetDateTime; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Modifying; +import org.springframework.data.jpa.repository.Query; + +import eu.dnetlib.organizations.model.Organization; + +public interface OrganizationRepository extends JpaRepository { + + @Modifying + @Query("update Organization set created_by = ?2, creation_date = ?3 where id = ?1") + void updateCreationDate(String id, String user, OffsetDateTime now); + + @Modifying + @Query("update Organization set modified_by = ?2, modification_date = ?3 where id = ?1") + void updateModificationDate(String id, String user, OffsetDateTime now); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OtherIdentifierRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OtherIdentifierRepository.java new file mode 100644 index 00000000..f591e089 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OtherIdentifierRepository.java @@ -0,0 +1,11 @@ +package eu.dnetlib.organizations.repository; + +import org.springframework.data.jpa.repository.JpaRepository; + +import eu.dnetlib.organizations.model.OtherIdentifier; +import eu.dnetlib.organizations.model.OtherIdentifierPK; + +public interface OtherIdentifierRepository extends JpaRepository { + + void deleteByOrgId(String orgId); +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OtherNameRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OtherNameRepository.java new file mode 100644 index 00000000..56924da0 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/OtherNameRepository.java @@ -0,0 +1,11 @@ +package eu.dnetlib.organizations.repository; + +import org.springframework.data.jpa.repository.JpaRepository; + +import eu.dnetlib.organizations.model.OtherName; +import eu.dnetlib.organizations.model.OtherNamePK; + +public interface OtherNameRepository extends JpaRepository { + + void deleteByOrgId(String orgId); +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/RelationshipRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/RelationshipRepository.java new file mode 100644 index 00000000..9a5b848e --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/RelationshipRepository.java @@ -0,0 +1,13 @@ +package eu.dnetlib.organizations.repository; + +import org.springframework.data.jpa.repository.JpaRepository; + +import eu.dnetlib.organizations.model.Relationship; +import eu.dnetlib.organizations.model.RelationshipPK; + +public interface RelationshipRepository extends JpaRepository { + + void deleteById1(String id1); + + void deleteById2(String id2); +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UrlRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UrlRepository.java new file mode 100644 index 00000000..0314ffeb --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UrlRepository.java @@ -0,0 +1,11 @@ +package eu.dnetlib.organizations.repository; + +import org.springframework.data.jpa.repository.JpaRepository; + +import eu.dnetlib.organizations.model.Url; +import eu.dnetlib.organizations.model.UrlPK; + +public interface UrlRepository extends JpaRepository { + + void deleteByOrgId(String orgId); +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UserCountryRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UserCountryRepository.java new file mode 100644 index 00000000..d8344bf5 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UserCountryRepository.java @@ -0,0 +1,24 @@ +package eu.dnetlib.organizations.repository; + +import java.util.List; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; + +import eu.dnetlib.organizations.model.UserCountry; +import eu.dnetlib.organizations.model.UserCountryPK; + +public interface UserCountryRepository extends JpaRepository { + + void deleteByEmail(String email); + + @Query(value = "select country from user_countries where email = ?1", nativeQuery = true) + List getCountriesForUser(String email); + + @Query(value = "select count(o.country) > 0 from organizations o left outer join user_countries uc on (o.country = uc.country) where o.id = ?1 and uc.email = ?2", nativeQuery = true) + boolean verifyAuthorizationForId(String id, String user); + + @Query(value = "select count(country) > 0 from user_countries where country = ?1 and email = ?2", nativeQuery = true) + boolean verifyAuthorizationForCountry(String country, String user); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UserRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UserRepository.java new file mode 100644 index 00000000..0fb1188f --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/UserRepository.java @@ -0,0 +1,9 @@ +package eu.dnetlib.organizations.repository; + +import org.springframework.data.jpa.repository.JpaRepository; + +import eu.dnetlib.organizations.model.User; + +public interface UserRepository extends JpaRepository { + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/ConflictGroupViewRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/ConflictGroupViewRepository.java new file mode 100644 index 00000000..fc55f40a --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/ConflictGroupViewRepository.java @@ -0,0 +1,15 @@ +package eu.dnetlib.organizations.repository.readonly; + +import java.util.List; + +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.view.ConflictGroupView; +import eu.dnetlib.organizations.model.view.ConflictGroupViewPK; + +@Repository +public interface ConflictGroupViewRepository extends ReadOnlyRepository { + + List findByCountry1OrCountry2(String country1, String country2); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/DuplicateGroupViewRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/DuplicateGroupViewRepository.java new file mode 100644 index 00000000..caca5263 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/DuplicateGroupViewRepository.java @@ -0,0 +1,13 @@ +package eu.dnetlib.organizations.repository.readonly; + +import java.util.List; + +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.view.DuplicateGroupView; + +@Repository +public interface DuplicateGroupViewRepository extends ReadOnlyRepository { + + List findByCountry(String country); +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationInfoViewRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationInfoViewRepository.java new file mode 100644 index 00000000..3e7d504d --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationInfoViewRepository.java @@ -0,0 +1,10 @@ +package eu.dnetlib.organizations.repository.readonly; + +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.view.OrganizationInfoView; + +@Repository +public interface OrganizationInfoViewRepository extends ReadOnlyRepository { + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationSimpleViewRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationSimpleViewRepository.java new file mode 100644 index 00000000..7cefa051 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationSimpleViewRepository.java @@ -0,0 +1,51 @@ +package eu.dnetlib.organizations.repository.readonly; + +import java.util.List; + +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.data.jpa.repository.Query; +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.utils.BrowseEntry; +import eu.dnetlib.organizations.model.view.OrganizationSimpleView; + +@Repository +public interface OrganizationSimpleViewRepository extends ReadOnlyRepository { + + // SEARCH + Page findByNameContainingIgnoreCase(String name, Pageable pageable); + + // SEARCH FOR USER + @Query(value = "select o.* from organizations_simple_view o left outer join user_countries uc on (uc.country = o.country) where o.name ilike %:text% and uc.email = :email", nativeQuery = true) + Page findByNameForUser(String text, String email, Pageable pageable); + + // BROWSE BY COUNTRY + @Query(value = "select country as value, count(*) as count from organizations group by country order by count desc", nativeQuery = true) + List browseCountries(); + + // BROWSE BY COUNTRY FOR USER + @Query(value = "select o.country as value, count(o.country) as count from user_countries uc left outer join organizations o on (uc.country = o.country) where uc.email=?1 group by o.country order by count desc", nativeQuery = true) + List browseCountriesForUser(String email); + + Page findByCountry(String country, Pageable pageable); + + // BROWSE BY ORG TYPE + @Query(value = "select type as value, count(*) as count from organizations group by type order by count desc", nativeQuery = true) + List browseTypes(); + + // BROWSE BY ORG TYPE FOR USER + @Query(value = "select o.type as value, count(o.type) as count " + + "from organizations o " + + "left outer join user_countries uc on (uc.country = o.country) " + + "where uc.email=?1 " + + "group by o.type " + + "order by count desc;", nativeQuery = true) + List browseTypesForUser(String email); + + Page findByType(String type, Pageable pageable); + + @Query(value = "select o.* from organizations_simple_view o left outer join user_countries uc on (uc.country = o.country) where uc.email = ?2 and o.type = ?1", nativeQuery = true) + Page findByTypeForUser(String type, String name, Pageable pageable); + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationViewRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationViewRepository.java new file mode 100644 index 00000000..2ea10b64 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/OrganizationViewRepository.java @@ -0,0 +1,10 @@ +package eu.dnetlib.organizations.repository.readonly; + +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.view.OrganizationView; + +@Repository +public interface OrganizationViewRepository extends ReadOnlyRepository { + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/ReadOnlyRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/ReadOnlyRepository.java new file mode 100644 index 00000000..e81563da --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/ReadOnlyRepository.java @@ -0,0 +1,22 @@ +package eu.dnetlib.organizations.repository.readonly; + +import java.util.Optional; + +import org.springframework.data.domain.Page; +import org.springframework.data.domain.Pageable; +import org.springframework.data.repository.NoRepositoryBean; +import org.springframework.data.repository.Repository; + +@NoRepositoryBean +public interface ReadOnlyRepository extends Repository { + + Optional findById(ID id); + + boolean existsById(ID id); + + Page findAll(Pageable pageable); + + Iterable findAll(); + + long count(); +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/SuggestionInfoViewByCountryRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/SuggestionInfoViewByCountryRepository.java new file mode 100644 index 00000000..022a2a5e --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/SuggestionInfoViewByCountryRepository.java @@ -0,0 +1,10 @@ +package eu.dnetlib.organizations.repository.readonly; + +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.view.SuggestionInfoViewByCountry; + +@Repository +public interface SuggestionInfoViewByCountryRepository extends ReadOnlyRepository { + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/UserViewRepository.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/UserViewRepository.java new file mode 100644 index 00000000..1a9596dc --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/repository/readonly/UserViewRepository.java @@ -0,0 +1,10 @@ +package eu.dnetlib.organizations.repository.readonly; + +import org.springframework.stereotype.Repository; + +import eu.dnetlib.organizations.model.view.UserView; + +@Repository +public interface UserViewRepository extends ReadOnlyRepository { + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java new file mode 100644 index 00000000..c3ff772a --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/DatabaseUtils.java @@ -0,0 +1,239 @@ +package eu.dnetlib.organizations.utils; + +import java.time.OffsetDateTime; +import java.util.Arrays; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Set; +import java.util.TreeSet; +import java.util.UUID; +import java.util.stream.Collectors; + +import javax.transaction.Transactional; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.RequestBody; + +import eu.dnetlib.organizations.controller.UserRole; +import eu.dnetlib.organizations.model.Acronym; +import eu.dnetlib.organizations.model.OpenaireConflict; +import eu.dnetlib.organizations.model.OpenaireConflictPK; +import eu.dnetlib.organizations.model.Organization; +import eu.dnetlib.organizations.model.OtherIdentifier; +import eu.dnetlib.organizations.model.OtherName; +import eu.dnetlib.organizations.model.Relationship; +import eu.dnetlib.organizations.model.Url; +import eu.dnetlib.organizations.model.User; +import eu.dnetlib.organizations.model.UserCountry; +import eu.dnetlib.organizations.model.view.OrganizationView; +import eu.dnetlib.organizations.model.view.UserView; +import eu.dnetlib.organizations.repository.AcronymRepository; +import eu.dnetlib.organizations.repository.OpenaireConflictRepository; +import eu.dnetlib.organizations.repository.OrganizationRepository; +import eu.dnetlib.organizations.repository.OtherIdentifierRepository; +import eu.dnetlib.organizations.repository.OtherNameRepository; +import eu.dnetlib.organizations.repository.RelationshipRepository; +import eu.dnetlib.organizations.repository.UrlRepository; +import eu.dnetlib.organizations.repository.UserCountryRepository; +import eu.dnetlib.organizations.repository.UserRepository; + +@Component +public class DatabaseUtils { + + @Autowired + private AcronymRepository acronymRepository; + @Autowired + private OrganizationRepository organizationRepository; + @Autowired + private OtherIdentifierRepository otherIdentifierRepository; + @Autowired + private OtherNameRepository otherNameRepository; + @Autowired + private UrlRepository urlRepository; + @Autowired + private RelationshipRepository relationshipRepository; + @Autowired + private UserRepository userRepository; + @Autowired + private UserCountryRepository userCountryRepository; + @Autowired + private OpenaireConflictRepository openaireConflictRepository; + @Autowired + private JdbcTemplate jdbcTemplate; + + public enum VocabularyTable { + languages, countries, org_types, id_types, rel_types, simrel_types + } + + @Transactional + public String insertOrUpdateOrganization(final OrganizationView orgView, final String user, final boolean update) { + + if (update) { + cleanOldRelations(orgView.getId()); + } + + final Organization org = new Organization(update ? orgView.getId() : null, + orgView.getName(), + orgView.getType(), + orgView.getLat(), orgView.getLng(), + orgView.getCity(), orgView.getCountry()); + + final String orgId = organizationRepository.save(org).getId(); + + makeNewRelations(orgView, orgId); + + updateHistoryFields(orgId, user, update); + + return orgId; + } + + private void updateHistoryFields(final String id, final String user, final boolean update) { + final OffsetDateTime now = OffsetDateTime.now(); + if (update) { + organizationRepository.updateModificationDate(id, user, now); + } else { + organizationRepository.updateCreationDate(id, user, now); + organizationRepository.updateModificationDate(id, user, now); + } + } + + private void makeNewRelations(final OrganizationView orgView, final String orgId) { + orgView.getAcronyms().forEach(s -> acronymRepository.save(new Acronym(orgId, s))); + orgView.getOtherNames().forEach(n -> otherNameRepository.save(new OtherName(orgId, n.getName(), n.getLang()))); + orgView.getOtherIdentifiers().forEach(id -> otherIdentifierRepository.save(new OtherIdentifier(orgId, id.getId(), id.getType()))); + orgView.getUrls().forEach(u -> urlRepository.save(new Url(orgId, u))); + orgView.getRelations().forEach(r -> makeRelation(orgId, r.getRelatedOrgId(), RelationType.valueOf(r.getType()))); + } + + private void cleanOldRelations(final String id) { + acronymRepository.deleteByOrgId(id); + otherNameRepository.deleteByOrgId(id); + otherIdentifierRepository.deleteByOrgId(id); + urlRepository.deleteByOrgId(id); + relationshipRepository.deleteById1(id); + relationshipRepository.deleteById2(id); + } + + @Cacheable("vocs") + public List listValuesOfVocabularyTable(final VocabularyTable table) { + return jdbcTemplate.queryForList("select val from " + table, String.class); + } + + @Cacheable("countries_for_user") + public List listCountriesForUser(final String name) { + return jdbcTemplate.queryForList("select country from user_countries where email = ?", String.class, name); + } + + @Transactional + public void saveUser(@RequestBody final UserView userView) { + final User user = userRepository.findById(userView.getEmail()).orElseThrow(() -> new RuntimeException("User not found")); + user.setRole(userView.getRole()); + user.setValid(userView.isValid()); + userRepository.save(user); + userCountryRepository.deleteByEmail(userView.getEmail()); + if (userView.getCountries() != null) { + userCountryRepository + .saveAll(Arrays.stream(userView.getCountries()).map(c -> new UserCountry(userView.getEmail(), c)).collect(Collectors.toList())); + } + } + + @Transactional + public void deleteUser(final String email) { + userCountryRepository.deleteByEmail(email); + userRepository.deleteById(email); + } + + @Transactional + public void newUser(final String email, final List countries) { + final User user = new User(); + user.setEmail(email); + user.setRole(UserRole.PENDING.name()); + user.setValid(false); + userRepository.save(user); + if (countries != null) { + userCountryRepository.saveAll(countries.stream().map(c -> new UserCountry(email, c)).collect(Collectors.toList())); + } + } + + @Transactional + public void verifyConflictGroups(final boolean forceUpdate) { + + if (forceUpdate || openaireConflictRepository.countByGroupNull() > 0) { + + openaireConflictRepository.resetGroupIds(); + + final Map> groups = new HashMap<>(); + for (final OpenaireConflict w : openaireConflictRepository.findAll()) { + final List list = findExistingGroupsForRel(w, groups); + if (list.isEmpty()) { + final String idGroup = generateGroupId(); + groups.put(idGroup, new HashSet<>()); + addToGroup(groups, idGroup, w); + } else if (list.size() == 1) { + addToGroup(groups, list.get(0), w); + } else { + final String idGroup = generateGroupId(); + groups.put(idGroup, new TreeSet<>()); + list.forEach(id -> groups.get(idGroup).addAll(groups.get(id))); + list.forEach(id -> groups.remove(id)); + addToGroup(groups, idGroup, w); + } + } + + for (final Entry> e : groups.entrySet()) { + final String gid = e.getKey(); + for (final String orgId : e.getValue()) { + for (final OpenaireConflict oc : openaireConflictRepository.findById1AndGroupIsNull(orgId)) { + oc.setGroup(gid); + openaireConflictRepository.save(oc); + } + for (final OpenaireConflict oc : openaireConflictRepository.findById2AndGroupIsNull(orgId)) { + oc.setGroup(gid); + openaireConflictRepository.save(oc); + } + } + } + } + } + + private String generateGroupId() { + return "group::" + UUID.randomUUID(); + } + + private List findExistingGroupsForRel(final OpenaireConflict w, final Map> groups) { + return groups.entrySet() + .stream() + .filter(e -> { + return e.getValue().contains(w.getId1()) || e.getValue().contains(w.getId2()); + }) + .map(e -> e.getKey()) + .distinct() + .collect(Collectors.toList()); + } + + private void addToGroup(final Map> groups, final String gid, final OpenaireConflict w) { + groups.get(gid).add(w.getId1()); + groups.get(gid).add(w.getId2()); + } + + @Transactional + public List makeRelation(final String id1, final String id2, final RelationType type) { + final Relationship r1 = new Relationship(id1, id2, type.toString()); + final Relationship r2 = new Relationship(id2, id1, type.getInverse().toString()); + relationshipRepository.save(r1); + relationshipRepository.save(r2); + + if (type == RelationType.Merged_In || type == RelationType.Merges) { + openaireConflictRepository.findById(new OpenaireConflictPK(id1, id2)).ifPresent(openaireConflictRepository::delete); + openaireConflictRepository.findById(new OpenaireConflictPK(id2, id1)).ifPresent(openaireConflictRepository::delete); + } + + return Arrays.asList(r1, r2); + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/OpenOrgsConstants.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/OpenOrgsConstants.java new file mode 100644 index 00000000..9a59d83d --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/OpenOrgsConstants.java @@ -0,0 +1,8 @@ +package eu.dnetlib.organizations.utils; + +public class OpenOrgsConstants { + + public static final String OPENORGS_PREFIX = "openorgs____::"; + public static final String OPENORGS_MESH_PREFIX = "openorgsmesh::"; + +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/RelationType.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/RelationType.java new file mode 100644 index 00000000..3f70dd3e --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/RelationType.java @@ -0,0 +1,23 @@ +package eu.dnetlib.organizations.utils; + +public enum RelationType { + + Child, Parent, Related, Other, Merged_In, Merges; + + public RelationType getInverse() { + switch (this) { + case Child: + return Parent; + case Parent: + return Child; + case Related: + return Related; + case Merged_In: + return Merges; + case Merges: + return Merged_In; + default: + return Other; + } + } +} diff --git a/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/SimilarityType.java b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/SimilarityType.java new file mode 100644 index 00000000..29b65d82 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/java/eu/dnetlib/organizations/utils/SimilarityType.java @@ -0,0 +1,5 @@ +package eu.dnetlib.organizations.utils; + +public enum SimilarityType { + suggested, is_similar, is_different +} diff --git a/apps/dnet-orgs-database-application/src/main/resources/application.properties b/apps/dnet-orgs-database-application/src/main/resources/application.properties new file mode 100644 index 00000000..50afc9bb --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/application.properties @@ -0,0 +1,18 @@ +spring.main.banner-mode = off +logging.level.root = INFO + +spring.datasource.url=jdbc:postgresql://localhost:5432/dnet_orgs +spring.datasource.username= +spring.datasource.password= + +spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect + +# Hibernate ddl auto (create, create-drop, validate, update) +spring.jpa.hibernate.ddl-auto = validate +spring.jpa.properties.hibernate.hbm2dll.extra_physical_table_types = MATERIALIZED VIEW +spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true +spring.jpa.open-in-view=true + +spring.jpa.properties.hibernate.show_sql=true +spring.jpa.properties.hibernate.use_sql_comments=true +spring.jpa.properties.hibernate.format_sql=true diff --git a/apps/dnet-orgs-database-application/src/main/resources/sql/importNewRels.sql b/apps/dnet-orgs-database-application/src/main/resources/sql/importNewRels.sql new file mode 100644 index 00000000..cd6920dd --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/sql/importNewRels.sql @@ -0,0 +1,27 @@ +CREATE TEMPORARY TABLE tmp_simrels ( + local_id text NOT NULL, + oa_original_id text NOT NULL, + oa_name text NOT NULL, + oa_acronym text, + oa_country text, + oa_url text, + oa_collectedfrom text +); + +COPY tmp_simrels(local_id, oa_original_id, oa_name, oa_acronym, oa_country, oa_url, oa_collectedfrom) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/src/main/resources/tmp_data/rels.part-r-00000.tsv' DELIMITER E'\t';; + +DELETE FROM oa_duplicates WHERE reltype = 'suggested'; +DELETE FROM oa_conflicts WHERE reltype = 'suggested'; +UPDATE oa_conflicts SET idgroup = NULL; + +INSERT INTO oa_duplicates (local_id, oa_original_id, oa_name, oa_acronym, oa_country, oa_url, oa_collectedfrom) +SELECT local_id, oa_original_id, oa_name, oa_acronym, oa_country, oa_url, oa_collectedfrom +FROM tmp_simrels +WHERE oa_original_id NOT LIKE 'openorgs____::%' +ON CONFLICT DO NOTHING; + +INSERT INTO oa_conflicts (id1, id2) +SELECT local_id, oa_original_id +FROM tmp_simrels +WHERE oa_original_id LIKE 'openorgs____::%' +ON CONFLICT DO NOTHING; diff --git a/apps/dnet-orgs-database-application/src/main/resources/sql/import_grid_ac.sql b/apps/dnet-orgs-database-application/src/main/resources/sql/import_grid_ac.sql new file mode 100644 index 00000000..d8b160e2 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/sql/import_grid_ac.sql @@ -0,0 +1,103 @@ +CREATE TEMP TABLE grid_institutes ( + grid_id text, + name text, + wikipedia_url text, + email_address text, + established int +); + +CREATE TEMP TABLE grid_geonames ( + geonames_city_id text, + city text, + nuts_level1_code text, + nuts_level1_name text, + nuts_level2_code text, + nuts_level2_name text, + nuts_level3_code text, + nuts_level3_name text, + geonames_admin1_code text, + geonames_admin1_name text, + geonames_admin1_ascii_name text, + geonames_admin2_code text, + geonames_admin2_name text, + geonames_admin2_ascii_name text +); + +CREATE TEMP TABLE grid_addresses ( + grid_id text, + line_1 text, + line_2 text, + line_3 text, + lat double precision, + lng double precision, + postcode text, + is_primary boolean, + city text, + state text, + state_code text, + country text, + country_code text, + geonames_city_id int +); + +CREATE TEMP TABLE grid_external_ids ( + grid_id text, + external_id_type text, + external_id text +); + +CREATE TEMP TABLE grid_labels ( + grid_id text, + iso639 text, + label text +); + +CREATE TEMP TABLE grid_relationships ( + grid_id text, + relationship_type text, + related_grid_id text +); + +CREATE TEMP TABLE grid_types ( + grid_id text, + type text +); + +CREATE TEMP TABLE grid_links ( + grid_id text, + link text +); + +CREATE TEMP TABLE grid_acronyms ( + grid_id text, + acronym text +); + +CREATE TEMP TABLE grid_aliases ( + grid_id text, + alias text +); + +COPY grid_institutes (grid_id,name,wikipedia_url,email_address,established) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/institutes.csv' CSV HEADER; +COPY grid_geonames (geonames_city_id,city,nuts_level1_code,nuts_level1_name,nuts_level2_code,nuts_level2_name,nuts_level3_code,nuts_level3_name,geonames_admin1_code,geonames_admin1_name,geonames_admin1_ascii_name,geonames_admin2_code,geonames_admin2_name,geonames_admin2_ascii_name) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/geonames.csv' CSV HEADER; +COPY grid_addresses (grid_id,line_1,line_2,line_3,lat,lng,postcode,is_primary,city,state,state_code,country,country_code,geonames_city_id) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/addresses.csv' CSV HEADER; +COPY grid_external_ids (grid_id,external_id_type,external_id) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/external_ids.csv' CSV HEADER; +COPY grid_labels (grid_id,iso639,label) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/labels.csv' CSV HEADER; +COPY grid_relationships (grid_id,relationship_type,related_grid_id) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/relationships.csv' CSV HEADER; +COPY grid_types (grid_id,type) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/types.csv' CSV HEADER; +COPY grid_links (grid_id,link) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/links.csv' CSV HEADER; +COPY grid_acronyms (grid_id,acronym) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/acronyms.csv' CSV HEADER; +COPY grid_aliases (grid_id,alias) FROM '/Users/michele/Develop/dnet45/dnet-orgs-database-application/data/grid-2019-05-06/full_tables/aliases.csv' CSV HEADER; + + +INSERT INTO organizations(id, name, type, lat, lng, city, country, created_by, modified_by) (SELECT 'tmp::'||md5(o.grid_id), o.name, COALESCE(t.type, 'UNKNOWN'), a.lat, a.lng, a.city, a.country_code, 'import:grid.ac', 'import:grid.ac' FROM grid_institutes o LEFT OUTER JOIN grid_addresses a ON (o.grid_id=a.grid_id) LEFT OUTER JOIN grid_types t ON (o.grid_id=t.grid_id)) ON CONFLICT DO NOTHING; +INSERT INTO other_ids (id, otherid, type) (SELECT 'tmp::'||md5(grid_id), grid_id, 'grid.ac' FROM grid_institutes ) ON CONFLICT DO NOTHING; +INSERT INTO other_ids (id, otherid, type) (SELECT 'tmp::'||md5(grid_id), external_id, external_id_type FROM grid_external_ids ) ON CONFLICT DO NOTHING; +INSERT INTO other_names (id, lang, name) (SELECT 'tmp::'||md5(grid_id), 'en', name FROM grid_institutes ) ON CONFLICT DO NOTHING; +INSERT INTO other_names (id, lang, name) (SELECT 'tmp::'||md5(grid_id), iso639, label FROM grid_labels ) ON CONFLICT DO NOTHING; +INSERT INTO other_names (id, lang, name) (SELECT 'tmp::'||md5(grid_id), 'UNKNOWN', alias FROM grid_aliases ) ON CONFLICT DO NOTHING; +INSERT INTO acronyms (id, acronym) (SELECT 'tmp::'||md5(grid_id), acronym FROM grid_acronyms ) ON CONFLICT DO NOTHING; +INSERT INTO relationships(id1, reltype, id2) (SELECT 'tmp::'||md5(grid_id), relationship_type, 'tmp::'||md5(related_grid_id) FROM grid_relationships) ON CONFLICT DO NOTHING; +INSERT INTO urls (id, url) (SELECT 'tmp::'||md5(grid_id), link FROM grid_links ) ON CONFLICT DO NOTHING; + +update organizations set id = DEFAULT; diff --git a/apps/dnet-orgs-database-application/src/main/resources/sql/samples.sql b/apps/dnet-orgs-database-application/src/main/resources/sql/samples.sql new file mode 100644 index 00000000..d459e87b --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/sql/samples.sql @@ -0,0 +1 @@ +INSERT INTO users(email, valid, role) VALUES ('michele.artini@isti.cnr.it', true, 'ADMIN'); diff --git a/apps/dnet-orgs-database-application/src/main/resources/sql/schema.sql b/apps/dnet-orgs-database-application/src/main/resources/sql/schema.sql new file mode 100644 index 00000000..c2844536 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/sql/schema.sql @@ -0,0 +1,262 @@ +DROP VIEW organizations_view; +DROP VIEW organizations_info_view; +DROP VIEW organizations_simple_view; +DROP VIEW users_view; +DROP VIEW conflict_groups_view; +DROP VIEW suggestions_info_by_country_view; +DROP VIEW duplicate_groups_view + +DROP TABLE IF EXISTS other_ids; +DROP TABLE IF EXISTS other_names; +DROP TABLE IF EXISTS acronyms; +DROP TABLE IF EXISTS relationships; +DROP TABLE IF EXISTS urls; +DROP TABLE IF EXISTS oa_duplicates; +DROP TABLE IF EXISTS oa_conflicts; +DROP TABLE IF EXISTS organizations; +DROP TABLE IF EXISTS org_types; + +DROP TABLE IF EXISTS user_countries; +DROP TABLE IF EXISTS users; + +DROP TABLE IF EXISTS user_roles; +DROP TABLE IF EXISTS countries; +DROP TABLE IF EXISTS id_types; +DROP TABLE IF EXISTS languages; + +DROP SEQUENCE IF EXISTS organizations_id_seq; + +CREATE TABLE org_types (val text PRIMARY KEY); +INSERT INTO org_types VALUES ('Archive'), ('Company'), ('Education'), ('Facility'), ('Government'), ('Healthcare'), ('Nonprofit'), ('Other'), ('UNKNOWN'); + +CREATE TABLE id_types (val text PRIMARY KEY); +INSERT INTO id_types VALUES ('CNRS'), ('FundRef'), ('HESA'), ('ISNI'), ('OrgRef'), ('UCAS'), ('UKPRN'), ('Wikidata'), ('grid.ac'); + +CREATE TABLE languages (val text PRIMARY KEY); +INSERT INTO languages VALUES ('UNKNOWN'), ('aa'), ('af'), ('am'), ('ar'), ('as'), ('az'), ('ba'), ('be'), ('bg'), ('bn'), ('br'), ('bs'), ('ca'), ('ch'), ('co'), ('cs'), ('cy'), ('da'), + ('de'), ('dv'), ('dz'), ('el'), ('en'), ('eo'), ('es'), ('et'), ('eu'), ('fa'), ('fi'), ('fr'), ('fy'), ('ga'), ('gd'), ('gl'), ('gu'), ('he'), ('hi'), ('hr'), ('hu'), ('hy'), ('id'), ('is'), + ('it'), ('iu'), ('ja'), ('jv'), ('ka'), ('kk'), ('kl'), ('km'), ('kn'), ('ko'), ('ku'), ('ky'), ('la'), ('lb'), ('lo'), ('lt'), ('lv'), ('mg'), ('mi'), ('mk'), ('ml'), ('mn'), ('mr'), ('ms'), + ('mt'), ('my'), ('nb'), ('ne'), ('nl'), ('nn'), ('no'), ('oc'), ('or'), ('pa'), ('pl'), ('ps'), ('pt'), ('rm'), ('ro'), ('ru'), ('rw'), ('sa'), ('sd'), ('si'), ('sk'), ('sl'), ('so'), ('sq'), + ('sr'), ('sv'), ('sw'), ('ta'), ('te'), ('tg'), ('th'), ('tk'), ('tl'), ('tr'), ('tt'), ('ug'), ('uk'), ('ur'), ('uz'), ('vi'), ('xh'), ('yo'), ('zh'), ('zu'); + +CREATE TABLE countries (val text PRIMARY KEY); +INSERT INTO countries VALUES ('UNKNOWN'), ('AD'), ('AE'), ('AF'), ('AG'), ('AL'), ('AM'), ('AO'), ('AR'), ('AT'), ('AU'), ('AW'), ('AX'), ('AZ'), ('BA'), ('BB'), ('BD'), ('BE'), ('BF'), ('BG'), ('BH'), ('BI'), + ('BJ'), ('BM'), ('BN'), ('BO'), ('BQ'), ('BR'), ('BS'), ('BT'), ('BW'), ('BY'), ('BZ'), ('CA'), ('CD'), ('CF'), ('CG'), ('CH'), ('CI'), ('CL'), ('CM'), ('CN'), ('CO'), ('CR'), + ('CU'), ('CV'), ('CW'), ('CY'), ('CZ'), ('DE'), ('DJ'), ('DK'), ('DM'), ('DO'), ('DZ'), ('EC'), ('EE'), ('EG'), ('EH'), ('ER'), ('ES'), ('ET'), ('FI'), ('FJ'), ('FM'), ('FO'), + ('FR'), ('GA'), ('GB'), ('GD'), ('GE'), ('GF'), ('GH'), ('GI'), ('GL'), ('GM'), ('GN'), ('GP'), ('GQ'), ('GR'), ('GT'), ('GW'), ('GY'), ('HN'), ('HR'), ('HT'), ('HU'), ('ID'), + ('IE'), ('IL'), ('IM'), ('IN'), ('IQ'), ('IR'), ('IS'), ('IT'), ('JE'), ('JM'), ('JO'), ('JP'), ('KE'), ('KG'), ('KH'), ('KN'), ('KP'), ('KR'), ('KW'), ('KY'), ('KZ'), ('LA'), + ('LB'), ('LC'), ('LI'), ('LK'), ('LR'), ('LS'), ('LT'), ('LU'), ('LV'), ('LY'), ('MA'), ('MC'), ('MD'), ('ME'), ('MG'), ('MK'), ('ML'), ('MM'), ('MN'), ('MO'), ('MQ'), ('MR'), + ('MS'), ('MT'), ('MU'), ('MV'), ('MW'), ('MX'), ('MY'), ('MZ'), ('NA'), ('NC'), ('NE'), ('NG'), ('NI'), ('NL'), ('NO'), ('NP'), ('NU'), ('NZ'), ('OM'), ('PA'), ('PE'), ('PF'), + ('PG'), ('PH'), ('PK'), ('PL'), ('PS'), ('PT'), ('PW'), ('PY'), ('QA'), ('RE'), ('RO'), ('RS'), ('RU'), ('RW'), ('SA'), ('SB'), ('SC'), ('SD'), ('SE'), ('SG'), ('SI'), ('SJ'), + ('SK'), ('SL'), ('SM'), ('SN'), ('SO'), ('SR'), ('SS'), ('ST'), ('SV'), ('SX'), ('SY'), ('SZ'), ('TC'), ('TD'), ('TG'), ('TH'), ('TJ'), ('TL'), ('TM'), ('TN'), ('TO'), ('TR'), + ('TT'), ('TV'), ('TW'), ('TZ'), ('UA'), ('UG'), ('US'), ('UY'), ('UZ'), ('VA'), ('VC'), ('VE'), ('VG'), ('VN'), ('WS'), ('XK'), ('YE'), ('ZA'), ('ZM'), ('ZW'); + +CREATE TABLE user_roles(role text PRIMARY KEY); +INSERT INTO user_roles VALUES ('ADMIN'), ('NATIONAL_ADMIN'), ('USER'), ('PENDING'), ('NOT_AUTHORIZED'); + +CREATE TABLE users ( + email text PRIMARY KEY, + valid boolean DEFAULT true, + role text NOT NULL default 'USER' REFERENCES user_roles(role) +); + +CREATE TABLE user_countries ( + email text REFERENCES users(email), + country text REFERENCES countries(val), + PRIMARY KEY(email, country) +); + +CREATE SEQUENCE organizations_id_seq; + +CREATE TABLE organizations ( + id text PRIMARY KEY DEFAULT 'openorgs____::'||lpad(nextval('organizations_id_seq')::text,10,'0'), + name text, + type text NOT NULL DEFAULT 'UNKNOWN' REFERENCES org_types(val), + lat double precision, + lng double precision, + city text, + country text REFERENCES countries(val), + created_by text, + creation_date timestamp with time zone DEFAULT now(), + modified_by text, + modification_date timestamp with time zone DEFAULT now() +); +CREATE INDEX organizations_type_idx ON organizations(type); +CREATE INDEX organizations_country_idx ON organizations(country); + +CREATE TABLE other_ids ( + id text REFERENCES organizations(id) ON UPDATE CASCADE, + otherid text, + type text REFERENCES id_types(val), + PRIMARY KEY (id, otherid, type) +); +CREATE INDEX other_ids_id_idx ON other_ids(id); + +CREATE TABLE other_names ( + id text REFERENCES organizations(id) ON UPDATE CASCADE, + name text, + lang text REFERENCES languages(val), + PRIMARY KEY (id, name, lang) +); +CREATE INDEX other_names_id_idx ON other_names(id); + +CREATE TABLE acronyms ( + id text REFERENCES organizations(id) ON UPDATE CASCADE, + acronym text, + PRIMARY KEY (id, acronym) +); +CREATE INDEX acronyms_id_idx ON acronyms(id); + +CREATE TABLE relationships ( + id1 text REFERENCES organizations(id) ON UPDATE CASCADE, + reltype text, + id2 text REFERENCES organizations(id) ON UPDATE CASCADE, + PRIMARY KEY (id1, reltype, id2) +); +CREATE INDEX relationships_id1_idx ON relationships(id1); +CREATE INDEX relationships_id2_idx ON relationships(id2); + +CREATE TABLE urls ( + id text REFERENCES organizations(id) ON UPDATE CASCADE, + url text, + PRIMARY KEY (id, url) +); +CREATE INDEX urls_id_idx ON urls(id); + +CREATE TABLE oa_duplicates ( + local_id text REFERENCES organizations(id) ON UPDATE CASCADE, + oa_original_id text NOT NULL, + oa_name text NOT NULL, + oa_acronym text, + oa_country text, + oa_url text, + oa_collectedfrom text, + reltype text NOT NULL DEFAULT 'suggested', + PRIMARY KEY (local_id, oa_original_id) +); +CREATE INDEX oa_duplicates_local_id_idx ON oa_duplicates(local_id); + + +CREATE TABLE oa_conflicts ( + id1 text REFERENCES organizations(id) ON UPDATE CASCADE, + id2 text REFERENCES organizations(id) ON UPDATE CASCADE, + reltype text NOT NULL DEFAULT 'suggested', + idgroup text, + PRIMARY KEY (id1, id2) +); +CREATE INDEX oa_conflicts_id1_idx ON oa_conflicts(id1); +CREATE INDEX oa_conflicts_id2_idx ON oa_conflicts(id2); +CREATE INDEX oa_conflicts_idgroup_idx ON oa_conflicts(idgroup); + +CREATE VIEW organizations_view AS SELECT + org.id, + org.name, + org.type, + org.lat, + org.lng, + org.city, + org.country, + COALESCE(jsonb_agg(DISTINCT jsonb_build_object('id', oid.otherid, 'type', oid.type)) FILTER (WHERE oid.otherid IS NOT NULL), '[]') AS other_ids, + COALESCE(jsonb_agg(DISTINCT jsonb_build_object('name', n.name, 'lang', n.lang)) FILTER (WHERE n.name IS NOT NULL), '[]') AS other_names, + COALESCE(jsonb_agg(DISTINCT a.acronym) FILTER (WHERE a.acronym IS NOT NULL), '[]') AS acronyms, + COALESCE(jsonb_agg(DISTINCT u.url) FILTER (WHERE u.url IS NOT NULL), '[]') AS urls, + COALESCE(jsonb_agg(DISTINCT jsonb_build_object('relatedOrgId', relorg.id, 'relatedOrgName', relorg.name, 'type', r.reltype)) FILTER (WHERE relorg.id IS NOT NULL), '[]') AS relations +FROM + organizations org + LEFT OUTER JOIN other_ids oid ON (org.id = oid.id) + LEFT OUTER JOIN other_names n ON (org.id = n.id) + LEFT OUTER JOIN acronyms a ON (org.id = a.id) + LEFT OUTER JOIN urls u ON (org.id = u.id) + LEFT OUTER JOIN relationships r ON (org.id = r.id1) + LEFT OUTER JOIN organizations relorg ON (relorg.id = r.id2) +GROUP BY + org.id, + org.name, + org.type, + org.lat, + org.lng, + org.city, + org.country; + +CREATE VIEW organizations_info_view AS SELECT + org.id, + org.name, + org.created_by, + org.creation_date, + org.modified_by, + org.modification_date, + count(DISTINCT d.oa_original_id) as n_duplicates, + count(DISTINCT c.id2) as n_conflicts +FROM organizations org + LEFT OUTER JOIN oa_duplicates d ON (org.id = d.local_id AND d.reltype = 'suggested') + LEFT OUTER JOIN oa_conflicts c ON (org.id = c.id1 AND c.reltype = 'suggested') +GROUP BY org.id; + +CREATE VIEW organizations_simple_view AS SELECT + org.id, + org.name, + org.type, + org.city, + org.country, + array_agg(DISTINCT a.acronym) FILTER (WHERE a.acronym IS NOT NULL) AS acronyms +FROM + organizations org + LEFT OUTER JOIN acronyms a ON (org.id = a.id) +GROUP BY + org.id, + org.name, + org.type, + org.city, + org.country; + +CREATE VIEW users_view AS SELECT + u.email, + u.valid, + u.role, + array_agg(uc.country) FILTER (WHERE uc.country IS NOT NULL) AS countries +FROM + users u + LEFT OUTER JOIN user_countries uc ON (u.email = uc.email) +GROUP BY u.email, u.valid, u.role +ORDER BY u.email; + +CREATE VIEW suggestions_info_by_country_view AS SELECT c.val AS country, + coalesce(t1.n_duplicates, 0) AS n_duplicates, + coalesce(t2.n_conflicts, 0) AS n_conflicts +FROM countries c + LEFT OUTER JOIN (SELECT o.country AS country, count(DISTINCT d.*) AS n_duplicates FROM oa_duplicates d LEFT OUTER JOIN organizations o ON (d.local_id = o.id) GROUP BY o.country) AS t1 ON (t1.country = c.val) + LEFT OUTER JOIN (SELECT o.country AS country, count(DISTINCT c.idgroup) AS n_conflicts FROM oa_conflicts c LEFT OUTER JOIN organizations o ON (c.id1 = o.id) GROUP BY o.country) AS t2 ON (t2.country = c.val); + +CREATE VIEW conflict_groups_view AS SELECT + c.idgroup AS idgroup, + o1.id AS id_1, + o1.name AS name_1, + o1.type AS type_1, + o1.city AS city_1, + o1.country AS country_1, + o2.id AS id_2, + o2.name AS name_2, + o2.type AS type_2, + o2.city AS city_2, + o2.country AS country_2 +FROM + oa_conflicts c + LEFT OUTER JOIN organizations o1 ON (c.id1 = o1.id) + LEFT OUTER JOIN organizations o2 ON (c.id2 = o2.id) +WHERE + o1.id IS NOT NULL AND O2.id IS NOT NULL AND c.idgroup IS NOT NULL; + +CREATE VIEW duplicate_groups_view AS SELECT + o.id, + o.name, + o.city, + o.country, + count(d.*) as n_duplicates +FROM + oa_duplicates d + LEFT OUTER JOIN organizations o ON (o.id = d.local_id) +WHERE + d.reltype = 'suggested' +GROUP BY o.id, o.name, o.city, o.country +ORDER BY o.name; + \ No newline at end of file diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/css/bootstrap.min.css b/apps/dnet-orgs-database-application/src/main/resources/static/resources/css/bootstrap.min.css new file mode 100644 index 00000000..48f214d3 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/css/bootstrap.min.css @@ -0,0 +1,12 @@ +/*! + * Bootswatch v4.3.1 + * Homepage: https://bootswatch.com + * Copyright 2012-2019 Thomas Park + * Licensed under MIT + * Based on Bootstrap +*//*! + * Bootstrap v4.3.1 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */:root{--blue: #033C73;--indigo: #6610f2;--purple: #6f42c1;--pink: #e83e8c;--red: #C71C22;--orange: #fd7e14;--yellow: #DD5600;--green: #73A839;--teal: #20c997;--cyan: #2FA4E7;--white: #fff;--gray: #868e96;--gray-dark: #343a40;--primary: #2FA4E7;--secondary: #e9ecef;--success: #73A839;--info: #033C73;--warning: #DD5600;--danger: #C71C22;--light: #f8f9fa;--dark: #343a40;--breakpoint-xs: 0;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:left;background-color:#fff}[tabindex="-1"]:focus{outline:0 !important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:0.5rem}p{margin-top:0;margin-bottom:1rem}abbr[title],abbr[data-original-title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul,dl{margin-top:0;margin-bottom:1rem}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#2FA4E7;text-decoration:none;background-color:transparent}a:hover{color:#157ab5;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):hover,a:not([href]):not([tabindex]):focus{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}pre,code,kbd,samp{font-family:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:0.75rem;padding-bottom:0.75rem;color:#868e96;text-align:left;caption-side:bottom}th{text-align:inherit}label{display:inline-block;margin-bottom:0.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}select{word-wrap:normal}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button:not(:disabled),[type="button"]:not(:disabled),[type="reset"]:not(:disabled),[type="submit"]:not(:disabled){cursor:pointer}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{padding:0;border-style:none}input[type="radio"],input[type="checkbox"]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{outline-offset:-2px;-webkit-appearance:none}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none !important}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{margin-bottom:0.5rem;font-weight:500;line-height:1.2;color:#2FA4E7}h1,.h1{font-size:2.5rem}h2,.h2{font-size:2rem}h3,.h3{font-size:1.75rem}h4,.h4{font-size:1.5rem}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,0.1)}small,.small{font-size:80%;font-weight:400}mark,.mark{padding:0.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:0.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#868e96}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:0.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:0.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:0.5rem;line-height:1}.figure-caption{font-size:90%;color:#868e96}code{font-size:87.5%;color:#e83e8c;word-break:break-word}a>code{color:inherit}kbd{padding:0.2rem 0.4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:0.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width: 576px){.container{max-width:540px}}@media (min-width: 768px){.container{max-width:720px}}@media (min-width: 992px){.container{max-width:960px}}@media (min-width: 1200px){.container{max-width:1140px}}.container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*="col-"]{padding-right:0;padding-left:0}.col-1,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-10,.col-11,.col-12,.col,.col-auto,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm,.col-sm-auto,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-md,.col-md-auto,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg,.col-lg-auto,.col-xl-1,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-1{margin-left:8.3333333333%}.offset-2{margin-left:16.6666666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.3333333333%}.offset-5{margin-left:41.6666666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.3333333333%}.offset-8{margin-left:66.6666666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.3333333333%}.offset-11{margin-left:91.6666666667%}@media (min-width: 576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-sm-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-sm-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-sm-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-sm-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-sm-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-sm-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-sm-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-sm-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-sm-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-sm-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-sm-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-sm-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-sm-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-sm-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-sm-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-sm-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-sm-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-sm-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-sm-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.3333333333%}.offset-sm-2{margin-left:16.6666666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.3333333333%}.offset-sm-5{margin-left:41.6666666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.3333333333%}.offset-sm-8{margin-left:66.6666666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.3333333333%}.offset-sm-11{margin-left:91.6666666667%}}@media (min-width: 768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-md-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-md-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-md-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-md-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-md-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-md-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-md-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-md-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-md-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-md-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-md-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-md-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-md-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-md-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-md-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-md-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-md-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-md-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-md-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-md-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-md-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-md-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-md-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.3333333333%}.offset-md-2{margin-left:16.6666666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.3333333333%}.offset-md-5{margin-left:41.6666666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.3333333333%}.offset-md-8{margin-left:66.6666666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.3333333333%}.offset-md-11{margin-left:91.6666666667%}}@media (min-width: 992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-lg-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-lg-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-lg-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-lg-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-lg-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-lg-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-lg-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-lg-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-lg-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-lg-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-lg-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-lg-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-lg-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-lg-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-lg-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-lg-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-lg-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-lg-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-lg-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.3333333333%}.offset-lg-2{margin-left:16.6666666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.3333333333%}.offset-lg-5{margin-left:41.6666666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.3333333333%}.offset-lg-8{margin-left:66.6666666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.3333333333%}.offset-lg-11{margin-left:91.6666666667%}}@media (min-width: 1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.col-xl-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-webkit-box-flex:0;-ms-flex:0 0 8.3333333333%;flex:0 0 8.3333333333%;max-width:8.3333333333%}.col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 16.6666666667%;flex:0 0 16.6666666667%;max-width:16.6666666667%}.col-xl-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 33.3333333333%;flex:0 0 33.3333333333%;max-width:33.3333333333%}.col-xl-5{-webkit-box-flex:0;-ms-flex:0 0 41.6666666667%;flex:0 0 41.6666666667%;max-width:41.6666666667%}.col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-webkit-box-flex:0;-ms-flex:0 0 58.3333333333%;flex:0 0 58.3333333333%;max-width:58.3333333333%}.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 66.6666666667%;flex:0 0 66.6666666667%;max-width:66.6666666667%}.col-xl-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 83.3333333333%;flex:0 0 83.3333333333%;max-width:83.3333333333%}.col-xl-11{-webkit-box-flex:0;-ms-flex:0 0 91.6666666667%;flex:0 0 91.6666666667%;max-width:91.6666666667%}.col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-xl-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-xl-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-xl-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-xl-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-xl-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-xl-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-xl-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-xl-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-xl-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-xl-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-xl-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-xl-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-xl-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-xl-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.3333333333%}.offset-xl-2{margin-left:16.6666666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.3333333333%}.offset-xl-5{margin-left:41.6666666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.3333333333%}.offset-xl-8{margin-left:66.6666666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.3333333333%}.offset-xl-11{margin-left:91.6666666667%}}.table{width:100%;margin-bottom:1rem;color:#495057}.table th,.table td{padding:0.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm th,.table-sm td{padding:0.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered th,.table-bordered td{border:1px solid #dee2e6}.table-bordered thead th,.table-bordered thead td{border-bottom-width:2px}.table-borderless th,.table-borderless td,.table-borderless thead th,.table-borderless tbody+tbody{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,0.05)}.table-hover tbody tr:hover{color:#495057;background-color:rgba(0,0,0,0.075)}.table-primary,.table-primary>th,.table-primary>td{background-color:#c5e6f8}.table-primary th,.table-primary td,.table-primary thead th,.table-primary tbody+tbody{border-color:#93d0f3}.table-hover .table-primary:hover{background-color:#aedcf5}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#aedcf5}.table-secondary,.table-secondary>th,.table-secondary>td{background-color:#f9fafb}.table-secondary th,.table-secondary td,.table-secondary thead th,.table-secondary tbody+tbody{border-color:#f4f5f7}.table-hover .table-secondary:hover{background-color:#eaedf1}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#eaedf1}.table-success,.table-success>th,.table-success>td{background-color:#d8e7c8}.table-success th,.table-success td,.table-success thead th,.table-success tbody+tbody{border-color:#b6d298}.table-hover .table-success:hover{background-color:#cbdfb6}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#cbdfb6}.table-info,.table-info>th,.table-info>td{background-color:#b8c8d8}.table-info th,.table-info td,.table-info thead th,.table-info tbody+tbody{border-color:#7c9ab6}.table-hover .table-info:hover{background-color:#a8bbcf}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#a8bbcf}.table-warning,.table-warning>th,.table-warning>td{background-color:#f5d0b8}.table-warning th,.table-warning td,.table-warning thead th,.table-warning tbody+tbody{border-color:#eda77a}.table-hover .table-warning:hover{background-color:#f2c1a2}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#f2c1a2}.table-danger,.table-danger>th,.table-danger>td{background-color:#efbfc1}.table-danger th,.table-danger td,.table-danger thead th,.table-danger tbody+tbody{border-color:#e2898c}.table-hover .table-danger:hover{background-color:#eaabad}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#eaabad}.table-light,.table-light>th,.table-light>td{background-color:#fdfdfe}.table-light th,.table-light td,.table-light thead th,.table-light tbody+tbody{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>th,.table-dark>td{background-color:#c6c8ca}.table-dark th,.table-dark td,.table-dark thead th,.table-dark tbody+tbody{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>th,.table-active>td{background-color:rgba(0,0,0,0.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,0.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,0.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark th,.table-dark td,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,0.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,0.075)}@media (max-width: 575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width: 767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width: 991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width: 1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + 0.75rem + 2px);padding:0.375rem 0.75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:0.25rem;-webkit-transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.form-control{-webkit-transition:none;transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:focus{color:#495057;background-color:#fff;border-color:#a1d6f4;outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25)}.form-control::-webkit-input-placeholder{color:#868e96;opacity:1}.form-control::-ms-input-placeholder{color:#868e96;opacity:1}.form-control::placeholder{color:#868e96;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(0.375rem + 1px);padding-bottom:calc(0.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + 1px);padding-bottom:calc(0.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(0.25rem + 1px);padding-bottom:calc(0.25rem + 1px);font-size:0.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding-top:0.375rem;padding-bottom:0.375rem;margin-bottom:0;line-height:1.5;color:#495057;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-sm,.form-control-plaintext.form-control-lg{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + 0.5rem + 2px);padding:0.25rem 0.5rem;font-size:0.875rem;line-height:1.5;border-radius:0.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:0.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:0.3rem}select.form-control[size],select.form-control[multiple]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:0.25rem}.form-row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*="col-"]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:0.3rem;margin-left:-1.25rem}.form-check-input:disabled ~ .form-check-label{color:#868e96}.form-check-label{margin-bottom:0}.form-check-inline{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:0.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:0.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:0.25rem;font-size:80%;color:#73A839}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:0.25rem 0.5rem;margin-top:.1rem;font-size:0.875rem;line-height:1.5;color:#fff;background-color:rgba(115,168,57,0.9);border-radius:0.25rem}.was-validated .form-control:valid,.form-control.is-valid{border-color:#73A839;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2373A839' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:center right calc(0.375em + 0.1875rem);background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:valid:focus,.form-control.is-valid:focus{border-color:#73A839;-webkit-box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25);box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25)}.was-validated .form-control:valid ~ .valid-feedback,.was-validated .form-control:valid ~ .valid-tooltip,.form-control.is-valid ~ .valid-feedback,.form-control.is-valid ~ .valid-tooltip{display:block}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .custom-select:valid,.custom-select.is-valid{border-color:#73A839;padding-right:calc((1em + 0.75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2373A839' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .custom-select:valid:focus,.custom-select.is-valid:focus{border-color:#73A839;-webkit-box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25);box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25)}.was-validated .custom-select:valid ~ .valid-feedback,.was-validated .custom-select:valid ~ .valid-tooltip,.custom-select.is-valid ~ .valid-feedback,.custom-select.is-valid ~ .valid-tooltip{display:block}.was-validated .form-control-file:valid ~ .valid-feedback,.was-validated .form-control-file:valid ~ .valid-tooltip,.form-control-file.is-valid ~ .valid-feedback,.form-control-file.is-valid ~ .valid-tooltip{display:block}.was-validated .form-check-input:valid ~ .form-check-label,.form-check-input.is-valid ~ .form-check-label{color:#73A839}.was-validated .form-check-input:valid ~ .valid-feedback,.was-validated .form-check-input:valid ~ .valid-tooltip,.form-check-input.is-valid ~ .valid-feedback,.form-check-input.is-valid ~ .valid-tooltip{display:block}.was-validated .custom-control-input:valid ~ .custom-control-label,.custom-control-input.is-valid ~ .custom-control-label{color:#73A839}.was-validated .custom-control-input:valid ~ .custom-control-label::before,.custom-control-input.is-valid ~ .custom-control-label::before{border-color:#73A839}.was-validated .custom-control-input:valid ~ .valid-feedback,.was-validated .custom-control-input:valid ~ .valid-tooltip,.custom-control-input.is-valid ~ .valid-feedback,.custom-control-input.is-valid ~ .valid-tooltip{display:block}.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before,.custom-control-input.is-valid:checked ~ .custom-control-label::before{border-color:#8dc450;background-color:#8dc450}.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before,.custom-control-input.is-valid:focus ~ .custom-control-label::before{-webkit-box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25);box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25)}.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before,.custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before{border-color:#73A839}.was-validated .custom-file-input:valid ~ .custom-file-label,.custom-file-input.is-valid ~ .custom-file-label{border-color:#73A839}.was-validated .custom-file-input:valid ~ .valid-feedback,.was-validated .custom-file-input:valid ~ .valid-tooltip,.custom-file-input.is-valid ~ .valid-feedback,.custom-file-input.is-valid ~ .valid-tooltip{display:block}.was-validated .custom-file-input:valid:focus ~ .custom-file-label,.custom-file-input.is-valid:focus ~ .custom-file-label{border-color:#73A839;-webkit-box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25);box-shadow:0 0 0 0.2rem rgba(115,168,57,0.25)}.invalid-feedback{display:none;width:100%;margin-top:0.25rem;font-size:80%;color:#C71C22}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:0.25rem 0.5rem;margin-top:.1rem;font-size:0.875rem;line-height:1.5;color:#fff;background-color:rgba(199,28,34,0.9);border-radius:0.25rem}.was-validated .form-control:invalid,.form-control.is-invalid{border-color:#C71C22;padding-right:calc(1.5em + 0.75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23C71C22' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23C71C22' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");background-repeat:no-repeat;background-position:center right calc(0.375em + 0.1875rem);background-size:calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-control:invalid:focus,.form-control.is-invalid:focus{border-color:#C71C22;-webkit-box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25);box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25)}.was-validated .form-control:invalid ~ .invalid-feedback,.was-validated .form-control:invalid ~ .invalid-tooltip,.form-control.is-invalid ~ .invalid-feedback,.form-control.is-invalid ~ .invalid-tooltip{display:block}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + 0.75rem);background-position:top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem)}.was-validated .custom-select:invalid,.custom-select.is-invalid{border-color:#C71C22;padding-right:calc((1em + 0.75rem) * 3 / 4 + 1.75rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23C71C22' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23C71C22' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .custom-select:invalid:focus,.custom-select.is-invalid:focus{border-color:#C71C22;-webkit-box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25);box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25)}.was-validated .custom-select:invalid ~ .invalid-feedback,.was-validated .custom-select:invalid ~ .invalid-tooltip,.custom-select.is-invalid ~ .invalid-feedback,.custom-select.is-invalid ~ .invalid-tooltip{display:block}.was-validated .form-control-file:invalid ~ .invalid-feedback,.was-validated .form-control-file:invalid ~ .invalid-tooltip,.form-control-file.is-invalid ~ .invalid-feedback,.form-control-file.is-invalid ~ .invalid-tooltip{display:block}.was-validated .form-check-input:invalid ~ .form-check-label,.form-check-input.is-invalid ~ .form-check-label{color:#C71C22}.was-validated .form-check-input:invalid ~ .invalid-feedback,.was-validated .form-check-input:invalid ~ .invalid-tooltip,.form-check-input.is-invalid ~ .invalid-feedback,.form-check-input.is-invalid ~ .invalid-tooltip{display:block}.was-validated .custom-control-input:invalid ~ .custom-control-label,.custom-control-input.is-invalid ~ .custom-control-label{color:#C71C22}.was-validated .custom-control-input:invalid ~ .custom-control-label::before,.custom-control-input.is-invalid ~ .custom-control-label::before{border-color:#C71C22}.was-validated .custom-control-input:invalid ~ .invalid-feedback,.was-validated .custom-control-input:invalid ~ .invalid-tooltip,.custom-control-input.is-invalid ~ .invalid-feedback,.custom-control-input.is-invalid ~ .invalid-tooltip{display:block}.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before,.custom-control-input.is-invalid:checked ~ .custom-control-label::before{border-color:#e2343a;background-color:#e2343a}.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before,.custom-control-input.is-invalid:focus ~ .custom-control-label::before{-webkit-box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25);box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25)}.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before,.custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before{border-color:#C71C22}.was-validated .custom-file-input:invalid ~ .custom-file-label,.custom-file-input.is-invalid ~ .custom-file-label{border-color:#C71C22}.was-validated .custom-file-input:invalid ~ .invalid-feedback,.was-validated .custom-file-input:invalid ~ .invalid-tooltip,.custom-file-input.is-invalid ~ .invalid-feedback,.custom-file-input.is-invalid ~ .invalid-tooltip{display:block}.was-validated .custom-file-input:invalid:focus ~ .custom-file-label,.custom-file-input.is-invalid:focus ~ .custom-file-label{border-color:#C71C22;-webkit-box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25);box-shadow:0 0 0 0.2rem rgba(199,28,34,0.25)}.form-inline{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width: 576px){.form-inline label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .input-group,.form-inline .custom-select{width:auto}.form-inline .form-check{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:0.25rem;margin-left:0}.form-inline .custom-control{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#495057;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:0.375rem 0.75rem;font-size:1rem;line-height:1.5;border-radius:0.25rem;-webkit-transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.btn{-webkit-transition:none;transition:none}}.btn:hover{color:#495057;text-decoration:none}.btn:focus,.btn.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25)}.btn.disabled,.btn:disabled{opacity:0.65}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#2FA4E7;border-color:#2FA4E7}.btn-primary:hover{color:#fff;background-color:#1992d7;border-color:#178acc}.btn-primary:focus,.btn-primary.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(78,178,235,0.5);box-shadow:0 0 0 0.2rem rgba(78,178,235,0.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#2FA4E7;border-color:#2FA4E7}.btn-primary:not(:disabled):not(.disabled):active,.btn-primary:not(:disabled):not(.disabled).active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#178acc;border-color:#1682c0}.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-primary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(78,178,235,0.5);box-shadow:0 0 0 0.2rem rgba(78,178,235,0.5)}.btn-secondary{color:#212529;background-color:#e9ecef;border-color:#e9ecef}.btn-secondary:hover{color:#212529;background-color:#d3d9df;border-color:#cbd3da}.btn-secondary:focus,.btn-secondary.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(203,206,209,0.5);box-shadow:0 0 0 0.2rem rgba(203,206,209,0.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#212529;background-color:#e9ecef;border-color:#e9ecef}.btn-secondary:not(:disabled):not(.disabled):active,.btn-secondary:not(:disabled):not(.disabled).active,.show>.btn-secondary.dropdown-toggle{color:#212529;background-color:#cbd3da;border-color:#c4ccd4}.btn-secondary:not(:disabled):not(.disabled):active:focus,.btn-secondary:not(:disabled):not(.disabled).active:focus,.show>.btn-secondary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(203,206,209,0.5);box-shadow:0 0 0 0.2rem rgba(203,206,209,0.5)}.btn-success{color:#fff;background-color:#73A839;border-color:#73A839}.btn-success:hover{color:#fff;background-color:#5f8b2f;border-color:#59822c}.btn-success:focus,.btn-success.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(136,181,87,0.5);box-shadow:0 0 0 0.2rem rgba(136,181,87,0.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#73A839;border-color:#73A839}.btn-success:not(:disabled):not(.disabled):active,.btn-success:not(:disabled):not(.disabled).active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#59822c;border-color:#527829}.btn-success:not(:disabled):not(.disabled):active:focus,.btn-success:not(:disabled):not(.disabled).active:focus,.show>.btn-success.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(136,181,87,0.5);box-shadow:0 0 0 0.2rem rgba(136,181,87,0.5)}.btn-info{color:#fff;background-color:#033C73;border-color:#033C73}.btn-info:hover{color:#fff;background-color:#02294e;border-color:#022241}.btn-info:focus,.btn-info.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(41,89,136,0.5);box-shadow:0 0 0 0.2rem rgba(41,89,136,0.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#033C73;border-color:#033C73}.btn-info:not(:disabled):not(.disabled):active,.btn-info:not(:disabled):not(.disabled).active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#022241;border-color:#011c35}.btn-info:not(:disabled):not(.disabled):active:focus,.btn-info:not(:disabled):not(.disabled).active:focus,.show>.btn-info.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(41,89,136,0.5);box-shadow:0 0 0 0.2rem rgba(41,89,136,0.5)}.btn-warning{color:#fff;background-color:#DD5600;border-color:#DD5600}.btn-warning:hover{color:#fff;background-color:#b74700;border-color:#aa4200}.btn-warning:focus,.btn-warning.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(226,111,38,0.5);box-shadow:0 0 0 0.2rem rgba(226,111,38,0.5)}.btn-warning.disabled,.btn-warning:disabled{color:#fff;background-color:#DD5600;border-color:#DD5600}.btn-warning:not(:disabled):not(.disabled):active,.btn-warning:not(:disabled):not(.disabled).active,.show>.btn-warning.dropdown-toggle{color:#fff;background-color:#aa4200;border-color:#9d3d00}.btn-warning:not(:disabled):not(.disabled):active:focus,.btn-warning:not(:disabled):not(.disabled).active:focus,.show>.btn-warning.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(226,111,38,0.5);box-shadow:0 0 0 0.2rem rgba(226,111,38,0.5)}.btn-danger{color:#fff;background-color:#C71C22;border-color:#C71C22}.btn-danger:hover{color:#fff;background-color:#a5171c;border-color:#9a161a}.btn-danger:focus,.btn-danger.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(207,62,67,0.5);box-shadow:0 0 0 0.2rem rgba(207,62,67,0.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#C71C22;border-color:#C71C22}.btn-danger:not(:disabled):not(.disabled):active,.btn-danger:not(:disabled):not(.disabled).active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#9a161a;border-color:#8f1418}.btn-danger:not(:disabled):not(.disabled):active:focus,.btn-danger:not(:disabled):not(.disabled).active:focus,.show>.btn-danger.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(207,62,67,0.5);box-shadow:0 0 0 0.2rem rgba(207,62,67,0.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light:focus,.btn-light.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(216,217,219,0.5);box-shadow:0 0 0 0.2rem rgba(216,217,219,0.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled):active,.btn-light:not(:disabled):not(.disabled).active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled):active:focus,.btn-light:not(:disabled):not(.disabled).active:focus,.show>.btn-light.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(216,217,219,0.5);box-shadow:0 0 0 0.2rem rgba(216,217,219,0.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark:focus,.btn-dark.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(82,88,93,0.5);box-shadow:0 0 0 0.2rem rgba(82,88,93,0.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled):active,.btn-dark:not(:disabled):not(.disabled).active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled):active:focus,.btn-dark:not(:disabled):not(.disabled).active:focus,.show>.btn-dark.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(82,88,93,0.5);box-shadow:0 0 0 0.2rem rgba(82,88,93,0.5)}.btn-outline-primary{color:#2FA4E7;border-color:#2FA4E7}.btn-outline-primary:hover{color:#fff;background-color:#2FA4E7;border-color:#2FA4E7}.btn-outline-primary:focus,.btn-outline-primary.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.5);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#2FA4E7;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled):active,.btn-outline-primary:not(:disabled):not(.disabled).active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#2FA4E7;border-color:#2FA4E7}.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.5);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.5)}.btn-outline-secondary{color:#e9ecef;border-color:#e9ecef}.btn-outline-secondary:hover{color:#212529;background-color:#e9ecef;border-color:#e9ecef}.btn-outline-secondary:focus,.btn-outline-secondary.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5);box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#e9ecef;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled):active,.btn-outline-secondary:not(:disabled):not(.disabled).active,.show>.btn-outline-secondary.dropdown-toggle{color:#212529;background-color:#e9ecef;border-color:#e9ecef}.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5);box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5)}.btn-outline-success{color:#73A839;border-color:#73A839}.btn-outline-success:hover{color:#fff;background-color:#73A839;border-color:#73A839}.btn-outline-success:focus,.btn-outline-success.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(115,168,57,0.5);box-shadow:0 0 0 0.2rem rgba(115,168,57,0.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#73A839;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled):active,.btn-outline-success:not(:disabled):not(.disabled).active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#73A839;border-color:#73A839}.btn-outline-success:not(:disabled):not(.disabled):active:focus,.btn-outline-success:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-success.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(115,168,57,0.5);box-shadow:0 0 0 0.2rem rgba(115,168,57,0.5)}.btn-outline-info{color:#033C73;border-color:#033C73}.btn-outline-info:hover{color:#fff;background-color:#033C73;border-color:#033C73}.btn-outline-info:focus,.btn-outline-info.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(3,60,115,0.5);box-shadow:0 0 0 0.2rem rgba(3,60,115,0.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#033C73;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled):active,.btn-outline-info:not(:disabled):not(.disabled).active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#033C73;border-color:#033C73}.btn-outline-info:not(:disabled):not(.disabled):active:focus,.btn-outline-info:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-info.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(3,60,115,0.5);box-shadow:0 0 0 0.2rem rgba(3,60,115,0.5)}.btn-outline-warning{color:#DD5600;border-color:#DD5600}.btn-outline-warning:hover{color:#fff;background-color:#DD5600;border-color:#DD5600}.btn-outline-warning:focus,.btn-outline-warning.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(221,86,0,0.5);box-shadow:0 0 0 0.2rem rgba(221,86,0,0.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#DD5600;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled):active,.btn-outline-warning:not(:disabled):not(.disabled).active,.show>.btn-outline-warning.dropdown-toggle{color:#fff;background-color:#DD5600;border-color:#DD5600}.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(221,86,0,0.5);box-shadow:0 0 0 0.2rem rgba(221,86,0,0.5)}.btn-outline-danger{color:#C71C22;border-color:#C71C22}.btn-outline-danger:hover{color:#fff;background-color:#C71C22;border-color:#C71C22}.btn-outline-danger:focus,.btn-outline-danger.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(199,28,34,0.5);box-shadow:0 0 0 0.2rem rgba(199,28,34,0.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#C71C22;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled):active,.btn-outline-danger:not(:disabled):not(.disabled).active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#C71C22;border-color:#C71C22}.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(199,28,34,0.5);box-shadow:0 0 0 0.2rem rgba(199,28,34,0.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:focus,.btn-outline-light.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(248,249,250,0.5);box-shadow:0 0 0 0.2rem rgba(248,249,250,0.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled):active,.btn-outline-light:not(:disabled):not(.disabled).active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled):active:focus,.btn-outline-light:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-light.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(248,249,250,0.5);box-shadow:0 0 0 0.2rem rgba(248,249,250,0.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:focus,.btn-outline-dark.focus{-webkit-box-shadow:0 0 0 0.2rem rgba(52,58,64,0.5);box-shadow:0 0 0 0.2rem rgba(52,58,64,0.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled):active,.btn-outline-dark:not(:disabled):not(.disabled).active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{-webkit-box-shadow:0 0 0 0.2rem rgba(52,58,64,0.5);box-shadow:0 0 0 0.2rem rgba(52,58,64,0.5)}.btn-link{font-weight:400;color:#2FA4E7;text-decoration:none}.btn-link:hover{color:#157ab5;text-decoration:underline}.btn-link:focus,.btn-link.focus{text-decoration:underline;-webkit-box-shadow:none;box-shadow:none}.btn-link:disabled,.btn-link.disabled{color:#868e96;pointer-events:none}.btn-lg,.btn-group-lg>.btn{padding:0.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:0.3rem}.btn-sm,.btn-group-sm>.btn{padding:0.25rem 0.5rem;font-size:0.875rem;line-height:1.5;border-radius:0.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:0.5rem}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{-webkit-transition:opacity 0.15s linear;transition:opacity 0.15s linear}@media (prefers-reduced-motion: reduce){.fade{-webkit-transition:none;transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height 0.35s ease;transition:height 0.35s ease}@media (prefers-reduced-motion: reduce){.collapsing{-webkit-transition:none;transition:none}}.dropup,.dropright,.dropdown,.dropleft{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid;border-right:0.3em solid transparent;border-bottom:0;border-left:0.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:0.5rem 0;margin:0.125rem 0 0;font-size:1rem;color:#495057;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.15);border-radius:0.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width: 576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width: 768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width: 992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width: 1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:0.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0;border-right:0.3em solid transparent;border-bottom:0.3em solid;border-left:0.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:0.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid transparent;border-right:0;border-bottom:0.3em solid transparent;border-left:0.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:0.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:0.255em;vertical-align:0.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:0.255em;vertical-align:0.255em;content:"";border-top:0.3em solid transparent;border-right:0.3em solid;border-bottom:0.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^="top"],.dropdown-menu[x-placement^="right"],.dropdown-menu[x-placement^="bottom"],.dropdown-menu[x-placement^="left"]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:0.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:0.25rem 1.5rem;clear:both;font-weight:400;color:#495057;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:hover,.dropdown-item:focus{color:#fff;text-decoration:none;background-color:#2FA4E7}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#2FA4E7}.dropdown-item.disabled,.dropdown-item:disabled{color:#868e96;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:0.5rem 1.5rem;margin-bottom:0;font-size:0.875rem;color:#868e96;white-space:nowrap}.dropdown-item-text{display:block;padding:0.25rem 1.5rem;color:#495057}.btn-group,.btn-group-vertical{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover{z-index:1}.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn.active{z-index:1}.btn-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:not(:first-child),.btn-group>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:0.5625rem;padding-left:0.5625rem}.dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-sm+.dropdown-toggle-split,.btn-group-sm>.btn+.dropdown-toggle-split{padding-right:0.375rem;padding-left:0.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.dropdown-toggle-split{padding-right:0.75rem;padding-left:0.75rem}.btn-group-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle),.btn-group-vertical>.btn-group:not(:last-child)>.btn{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type="radio"],.btn-group-toggle>.btn input[type="checkbox"],.btn-group-toggle>.btn-group>.btn input[type="radio"],.btn-group-toggle>.btn-group>.btn input[type="checkbox"]{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.input-group{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-control-plaintext,.input-group>.custom-select,.input-group>.custom-file{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;margin-bottom:0}.input-group>.form-control+.form-control,.input-group>.form-control+.custom-select,.input-group>.form-control+.custom-file,.input-group>.form-control-plaintext+.form-control,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.custom-file,.input-group>.custom-select+.form-control,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.custom-file,.input-group>.custom-file+.form-control,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.custom-file{margin-left:-1px}.input-group>.form-control:focus,.input-group>.custom-select:focus,.input-group>.custom-file .custom-file-input:focus ~ .custom-file-label{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.form-control:not(:last-child),.input-group>.custom-select:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.form-control:not(:first-child),.input-group>.custom-select:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-prepend,.input-group-append{display:-webkit-box;display:-ms-flexbox;display:flex}.input-group-prepend .btn,.input-group-append .btn{position:relative;z-index:2}.input-group-prepend .btn:focus,.input-group-append .btn:focus{z-index:3}.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.input-group-text,.input-group-append .input-group-text+.btn{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0.375rem 0.75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:0.25rem}.input-group-text input[type="radio"],.input-group-text input[type="checkbox"]{margin-top:0}.input-group-lg>.form-control:not(textarea),.input-group-lg>.custom-select{height:calc(1.5em + 1rem + 2px)}.input-group-lg>.form-control,.input-group-lg>.custom-select,.input-group-lg>.input-group-prepend>.input-group-text,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-append>.btn{padding:0.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:0.3rem}.input-group-sm>.form-control:not(textarea),.input-group-sm>.custom-select{height:calc(1.5em + 0.5rem + 2px)}.input-group-sm>.form-control,.input-group-sm>.custom-select,.input-group-sm>.input-group-prepend>.input-group-text,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-append>.btn{padding:0.25rem 0.5rem;font-size:0.875rem;line-height:1.5;border-radius:0.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text,.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;display:block;min-height:1.5rem;padding-left:1.5rem}.custom-control-inline{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;z-index:-1;opacity:0}.custom-control-input:checked ~ .custom-control-label::before{color:#fff;border-color:#2FA4E7;background-color:#2FA4E7}.custom-control-input:focus ~ .custom-control-label::before{-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25)}.custom-control-input:focus:not(:checked) ~ .custom-control-label::before{border-color:#a1d6f4}.custom-control-input:not(:disabled):active ~ .custom-control-label::before{color:#fff;background-color:#cfeaf9;border-color:#cfeaf9}.custom-control-input:disabled ~ .custom-control-label{color:#868e96}.custom-control-input:disabled ~ .custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:0.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:#adb5bd solid 1px}.custom-control-label::after{position:absolute;top:0.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50% / 50% 50%}.custom-checkbox .custom-control-label::before{border-radius:0.25rem}.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before{border-color:#2FA4E7;background-color:#2FA4E7}.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(47,164,231,0.5)}.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before{background-color:rgba(47,164,231,0.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked ~ .custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(47,164,231,0.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:0.5rem}.custom-switch .custom-control-label::after{top:calc(0.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:0.5rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.custom-switch .custom-control-label::after{-webkit-transition:none;transition:none}}.custom-switch .custom-control-input:checked ~ .custom-control-label::after{background-color:#fff;-webkit-transform:translateX(0.75rem);transform:translateX(0.75rem)}.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before{background-color:rgba(47,164,231,0.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + 0.75rem + 2px);padding:0.375rem 1.75rem 0.375rem 0.75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;background-color:#fff;border:1px solid #ced4da;border-radius:0.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#a1d6f4;outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:0.75rem;background-image:none}.custom-select:disabled{color:#868e96;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select-sm{height:calc(1.5em + 0.5rem + 2px);padding-top:0.25rem;padding-bottom:0.25rem;padding-left:0.5rem;font-size:0.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:0.5rem;padding-bottom:0.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + 0.75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + 0.75rem + 2px);margin:0;opacity:0}.custom-file-input:focus ~ .custom-file-label{border-color:#a1d6f4;-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25)}.custom-file-input:disabled ~ .custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en) ~ .custom-file-label::after{content:"Browse"}.custom-file-input ~ .custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + 0.75rem + 2px);padding:0.375rem 0.75rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:0.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + 0.75rem);padding:0.375rem 0.75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 0.25rem 0.25rem 0}.custom-range{width:100%;height:calc(1rem + 0.4rem);padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:none}.custom-range:focus::-webkit-slider-thumb{-webkit-box-shadow:0 0 0 1px #fff,0 0 0 0.2rem rgba(47,164,231,0.25);box-shadow:0 0 0 1px #fff,0 0 0 0.2rem rgba(47,164,231,0.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 0.2rem rgba(47,164,231,0.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 0.2rem rgba(47,164,231,0.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-0.25rem;background-color:#2FA4E7;border:0;border-radius:1rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#cfeaf9}.custom-range::-webkit-slider-runnable-track{width:100%;height:0.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#2FA4E7;border:0;border-radius:1rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-moz-range-thumb{-webkit-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#cfeaf9}.custom-range::-moz-range-track{width:100%;height:0.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:0.2rem;margin-left:0.2rem;background-color:#2FA4E7;border:0;border-radius:1rem;-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;appearance:none}@media (prefers-reduced-motion: reduce){.custom-range::-ms-thumb{-webkit-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#cfeaf9}.custom-range::-ms-track{width:100%;height:0.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:0.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{-webkit-transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.custom-control-label::before,.custom-file-label,.custom-select{-webkit-transition:none;transition:none}}.nav{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:0.5rem 1rem}.nav-link:hover,.nav-link:focus{text-decoration:none}.nav-link.disabled{color:#868e96;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#868e96;background-color:transparent;border-color:transparent}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:0.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#2FA4E7}.nav-fill .nav-item{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:0.5rem 1rem}.navbar>.container,.navbar>.container-fluid{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:0.3125rem;padding-bottom:0.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}.navbar-nav{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:0.5rem;padding-bottom:0.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:0.25rem 0.75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:0.25rem}.navbar-toggler:hover,.navbar-toggler:focus{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width: 575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{padding-right:0;padding-left:0}}@media (min-width: 576px){.navbar-expand-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width: 767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{padding-right:0;padding-left:0}}@media (min-width: 768px){.navbar-expand-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width: 991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{padding-right:0;padding-left:0}}@media (min-width: 992px){.navbar-expand-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width: 1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{padding-right:0;padding-left:0}}@media (min-width: 1200px){.navbar-expand-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row nowrap;flex-flow:row nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:0.5rem;padding-left:0.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,0.9)}.navbar-light .navbar-brand:hover,.navbar-light .navbar-brand:focus{color:rgba(0,0,0,0.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,0.5)}.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link:focus{color:rgba(0,0,0,0.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,0.3)}.navbar-light .navbar-nav .show>.nav-link,.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .nav-link.active{color:rgba(0,0,0,0.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,0.5);border-color:rgba(0,0,0,0.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,0.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,0.9)}.navbar-light .navbar-text a:hover,.navbar-light .navbar-text a:focus{color:rgba(0,0,0,0.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:hover,.navbar-dark .navbar-brand:focus{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,0.8)}.navbar-dark .navbar-nav .nav-link:hover,.navbar-dark .navbar-nav .nav-link:focus{color:#fff}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,0.25)}.navbar-dark .navbar-nav .show>.nav-link,.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .nav-link.active{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,0.8);border-color:rgba(255,255,255,0.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,0.8)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:hover,.navbar-dark .navbar-text a:focus{color:#fff}.card{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,0.125);border-radius:0.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group:first-child .list-group-item:first-child{border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.card>.list-group:last-child .list-group-item:last-child{border-bottom-right-radius:0.25rem;border-bottom-left-radius:0.25rem}.card-body{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:1.25rem}.card-title{margin-bottom:0.75rem}.card-subtitle{margin-top:-0.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:0.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,0.03);border-bottom:1px solid rgba(0,0,0,0.125)}.card-header:first-child{border-radius:calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0}.card-header+.list-group .list-group-item:first-child{border-top:0}.card-footer{padding:0.75rem 1.25rem;background-color:rgba(0,0,0,0.03);border-top:1px solid rgba(0,0,0,0.125)}.card-footer:last-child{border-radius:0 0 calc(0.25rem - 1px) calc(0.25rem - 1px)}.card-header-tabs{margin-right:-0.625rem;margin-bottom:-0.75rem;margin-left:-0.625rem;border-bottom:0}.card-header-pills{margin-right:-0.625rem;margin-left:-0.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem}.card-img{width:100%;border-radius:calc(0.25rem - 1px)}.card-img-top{width:100%;border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.card-img-bottom{width:100%;border-bottom-right-radius:calc(0.25rem - 1px);border-bottom-left-radius:calc(0.25rem - 1px)}.card-deck{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card-deck .card{margin-bottom:15px}@media (min-width: 576px){.card-deck{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.card-group>.card{margin-bottom:15px}@media (min-width: 576px){.card-group{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-img-top,.card-group>.card:not(:last-child) .card-header{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-img-bottom,.card-group>.card:not(:last-child) .card-footer{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-img-top,.card-group>.card:not(:first-child) .card-header{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-img-bottom,.card-group>.card:not(:first-child) .card-footer{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:0.75rem}@media (min-width: 576px){.card-columns{-webkit-column-count:3;column-count:3;-webkit-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion>.card{overflow:hidden}.accordion>.card:not(:first-of-type) .card-header:first-child{border-radius:0}.accordion>.card:not(:first-of-type):not(:last-of-type){border-bottom:0;border-radius:0}.accordion>.card:first-of-type{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:last-of-type{border-top-left-radius:0;border-top-right-radius:0}.accordion>.card .card-header{margin-bottom:-1px}.breadcrumb{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:0.25rem}.breadcrumb-item+.breadcrumb-item{padding-left:0.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:0.5rem;color:#868e96;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#868e96}.pagination{display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:0.25rem}.page-link{position:relative;display:block;padding:0.5rem 0.75rem;margin-left:-1px;line-height:1.25;color:#2FA4E7;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#157ab5;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:2;outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem}.page-item:last-child .page-link{border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem}.page-item.active .page-link{z-index:1;color:#fff;background-color:#2FA4E7;border-color:#2FA4E7}.page-item.disabled .page-link{color:#868e96;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:0.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:0.3rem;border-bottom-left-radius:0.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:0.3rem;border-bottom-right-radius:0.3rem}.pagination-sm .page-link{padding:0.25rem 0.5rem;font-size:0.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:0.2rem;border-bottom-left-radius:0.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:0.2rem;border-bottom-right-radius:0.2rem}.badge{display:inline-block;padding:0.25em 0.4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:0.25rem;-webkit-transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;transition:color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out}@media (prefers-reduced-motion: reduce){.badge{-webkit-transition:none;transition:none}}a.badge:hover,a.badge:focus{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:0.6em;padding-left:0.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#2FA4E7}a.badge-primary:hover,a.badge-primary:focus{color:#fff;background-color:#178acc}a.badge-primary:focus,a.badge-primary.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(47,164,231,0.5);box-shadow:0 0 0 0.2rem rgba(47,164,231,0.5)}.badge-secondary{color:#212529;background-color:#e9ecef}a.badge-secondary:hover,a.badge-secondary:focus{color:#212529;background-color:#cbd3da}a.badge-secondary:focus,a.badge-secondary.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5);box-shadow:0 0 0 0.2rem rgba(233,236,239,0.5)}.badge-success{color:#fff;background-color:#73A839}a.badge-success:hover,a.badge-success:focus{color:#fff;background-color:#59822c}a.badge-success:focus,a.badge-success.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(115,168,57,0.5);box-shadow:0 0 0 0.2rem rgba(115,168,57,0.5)}.badge-info{color:#fff;background-color:#033C73}a.badge-info:hover,a.badge-info:focus{color:#fff;background-color:#022241}a.badge-info:focus,a.badge-info.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(3,60,115,0.5);box-shadow:0 0 0 0.2rem rgba(3,60,115,0.5)}.badge-warning{color:#fff;background-color:#DD5600}a.badge-warning:hover,a.badge-warning:focus{color:#fff;background-color:#aa4200}a.badge-warning:focus,a.badge-warning.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(221,86,0,0.5);box-shadow:0 0 0 0.2rem rgba(221,86,0,0.5)}.badge-danger{color:#fff;background-color:#C71C22}a.badge-danger:hover,a.badge-danger:focus{color:#fff;background-color:#9a161a}a.badge-danger:focus,a.badge-danger.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(199,28,34,0.5);box-shadow:0 0 0 0.2rem rgba(199,28,34,0.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:hover,a.badge-light:focus{color:#212529;background-color:#dae0e5}a.badge-light:focus,a.badge-light.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(248,249,250,0.5);box-shadow:0 0 0 0.2rem rgba(248,249,250,0.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:hover,a.badge-dark:focus{color:#fff;background-color:#1d2124}a.badge-dark:focus,a.badge-dark.focus{outline:0;-webkit-box-shadow:0 0 0 0.2rem rgba(52,58,64,0.5);box-shadow:0 0 0 0.2rem rgba(52,58,64,0.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:0.3rem}@media (min-width: 576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:0.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:0.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;padding:0.75rem 1.25rem;color:inherit}.alert-primary{color:#185578;background-color:#d5edfa;border-color:#c5e6f8}.alert-primary hr{border-top-color:#aedcf5}.alert-primary .alert-link{color:#10374e}.alert-secondary{color:#797b7c;background-color:#fbfbfc;border-color:#f9fafb}.alert-secondary hr{border-top-color:#eaedf1}.alert-secondary .alert-link{color:#606162}.alert-success{color:#3c571e;background-color:#e3eed7;border-color:#d8e7c8}.alert-success hr{border-top-color:#cbdfb6}.alert-success .alert-link{color:#223111}.alert-info{color:#021f3c;background-color:#cdd8e3;border-color:#b8c8d8}.alert-info hr{border-top-color:#a8bbcf}.alert-info .alert-link{color:#00060b}.alert-warning{color:#732d00;background-color:#f8ddcc;border-color:#f5d0b8}.alert-warning hr{border-top-color:#f2c1a2}.alert-warning .alert-link{color:#401900}.alert-danger{color:#670f12;background-color:#f4d2d3;border-color:#efbfc1}.alert-danger hr{border-top-color:#eaabad}.alert-danger .alert-link{color:#3a090a}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-webkit-box;display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;font-size:0.75rem;background-color:#e9ecef;border-radius:0.25rem}.progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:#fff;text-align:center;white-space:nowrap;background-color:#2FA4E7;-webkit-transition:width 0.6s ease;transition:width 0.6s ease}@media (prefers-reduced-motion: reduce){.progress-bar{-webkit-transition:none;transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion: reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.media-body{-webkit-box-flex:1;-ms-flex:1;flex:1}.list-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#495057;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:0.75rem 1.25rem;margin-bottom:-1px;background-color:#fff;border:1px solid rgba(0,0,0,0.125)}.list-group-item:first-child{border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:0.25rem;border-bottom-left-radius:0.25rem}.list-group-item.disabled,.list-group-item:disabled{color:#868e96;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#2FA4E7;border-color:#2FA4E7}.list-group-horizontal{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal .list-group-item:first-child{border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal .list-group-item:last-child{margin-right:0;border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem;border-bottom-left-radius:0}@media (min-width: 576px){.list-group-horizontal-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-sm .list-group-item:first-child{border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-sm .list-group-item:last-child{margin-right:0;border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem;border-bottom-left-radius:0}}@media (min-width: 768px){.list-group-horizontal-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-md .list-group-item:first-child{border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-md .list-group-item:last-child{margin-right:0;border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem;border-bottom-left-radius:0}}@media (min-width: 992px){.list-group-horizontal-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-lg .list-group-item:first-child{border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-lg .list-group-item:last-child{margin-right:0;border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem;border-bottom-left-radius:0}}@media (min-width: 1200px){.list-group-horizontal-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl .list-group-item{margin-right:-1px;margin-bottom:0}.list-group-horizontal-xl .list-group-item:first-child{border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem;border-top-right-radius:0}.list-group-horizontal-xl .list-group-item:last-child{margin-right:0;border-top-right-radius:0.25rem;border-bottom-right-radius:0.25rem;border-bottom-left-radius:0}}.list-group-flush .list-group-item{border-right:0;border-left:0;border-radius:0}.list-group-flush .list-group-item:last-child{margin-bottom:-1px}.list-group-flush:first-child .list-group-item:first-child{border-top:0}.list-group-flush:last-child .list-group-item:last-child{margin-bottom:0;border-bottom:0}.list-group-item-primary{color:#185578;background-color:#c5e6f8}.list-group-item-primary.list-group-item-action:hover,.list-group-item-primary.list-group-item-action:focus{color:#185578;background-color:#aedcf5}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#185578;border-color:#185578}.list-group-item-secondary{color:#797b7c;background-color:#f9fafb}.list-group-item-secondary.list-group-item-action:hover,.list-group-item-secondary.list-group-item-action:focus{color:#797b7c;background-color:#eaedf1}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#797b7c;border-color:#797b7c}.list-group-item-success{color:#3c571e;background-color:#d8e7c8}.list-group-item-success.list-group-item-action:hover,.list-group-item-success.list-group-item-action:focus{color:#3c571e;background-color:#cbdfb6}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#3c571e;border-color:#3c571e}.list-group-item-info{color:#021f3c;background-color:#b8c8d8}.list-group-item-info.list-group-item-action:hover,.list-group-item-info.list-group-item-action:focus{color:#021f3c;background-color:#a8bbcf}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#021f3c;border-color:#021f3c}.list-group-item-warning{color:#732d00;background-color:#f5d0b8}.list-group-item-warning.list-group-item-action:hover,.list-group-item-warning.list-group-item-action:focus{color:#732d00;background-color:#f2c1a2}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#732d00;border-color:#732d00}.list-group-item-danger{color:#670f12;background-color:#efbfc1}.list-group-item-danger.list-group-item-action:hover,.list-group-item-danger.list-group-item-action:focus{color:#670f12;background-color:#eaabad}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#670f12;border-color:#670f12}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):hover,.close:not(:disabled):not(.disabled):focus{opacity:.75}button.close{padding:0;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}a.close.disabled{pointer-events:none}.toast{max-width:350px;overflow:hidden;font-size:0.875rem;background-color:rgba(255,255,255,0.85);background-clip:padding-box;border:1px solid rgba(0,0,0,0.1);-webkit-box-shadow:0 0.25rem 0.75rem rgba(0,0,0,0.1);box-shadow:0 0.25rem 0.75rem rgba(0,0,0,0.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;border-radius:0.25rem}.toast:not(:last-child){margin-bottom:0.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0.25rem 0.75rem;color:#868e96;background-color:rgba(255,255,255,0.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,0.05)}.toast-body{padding:0.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:0.5rem;pointer-events:none}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform 0.3s ease-out;transition:-webkit-transform 0.3s ease-out;transition:transform 0.3s ease-out;transition:transform 0.3s ease-out, -webkit-transform 0.3s ease-out;-webkit-transform:translate(0, -50px);transform:translate(0, -50px)}@media (prefers-reduced-motion: reduce){.modal.fade .modal-dialog{-webkit-transition:none;transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal-dialog-scrollable{display:-webkit-box;display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-header,.modal-dialog-scrollable .modal-footer{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);content:""}.modal-dialog-centered.modal-dialog-scrollable{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:0.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:0.5}.modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:0.3rem;border-top-right-radius:0.3rem}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:1rem;border-top:1px solid #dee2e6;border-bottom-right-radius:0.3rem;border-bottom-left-radius:0.3rem}.modal-footer>:not(:first-child){margin-left:.25rem}.modal-footer>:not(:last-child){margin-right:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width: 576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width: 992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width: 1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:0.9}.tooltip .arrow{position:absolute;display:block;width:0.8rem;height:0.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-top,.bs-tooltip-auto[x-placement^="top"]{padding:0.4rem 0}.bs-tooltip-top .arrow,.bs-tooltip-auto[x-placement^="top"] .arrow{bottom:0}.bs-tooltip-top .arrow::before,.bs-tooltip-auto[x-placement^="top"] .arrow::before{top:0;border-width:0.4rem 0.4rem 0;border-top-color:#000}.bs-tooltip-right,.bs-tooltip-auto[x-placement^="right"]{padding:0 0.4rem}.bs-tooltip-right .arrow,.bs-tooltip-auto[x-placement^="right"] .arrow{left:0;width:0.4rem;height:0.8rem}.bs-tooltip-right .arrow::before,.bs-tooltip-auto[x-placement^="right"] .arrow::before{right:0;border-width:0.4rem 0.4rem 0.4rem 0;border-right-color:#000}.bs-tooltip-bottom,.bs-tooltip-auto[x-placement^="bottom"]{padding:0.4rem 0}.bs-tooltip-bottom .arrow,.bs-tooltip-auto[x-placement^="bottom"] .arrow{top:0}.bs-tooltip-bottom .arrow::before,.bs-tooltip-auto[x-placement^="bottom"] .arrow::before{bottom:0;border-width:0 0.4rem 0.4rem;border-bottom-color:#000}.bs-tooltip-left,.bs-tooltip-auto[x-placement^="left"]{padding:0 0.4rem}.bs-tooltip-left .arrow,.bs-tooltip-auto[x-placement^="left"] .arrow{right:0;width:0.4rem;height:0.8rem}.bs-tooltip-left .arrow::before,.bs-tooltip-auto[x-placement^="left"] .arrow::before{left:0;border-width:0.4rem 0 0.4rem 0.4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:0.25rem 0.5rem;color:#fff;text-align:center;background-color:#000;border-radius:0.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:0.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,0.2);border-radius:0.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:0.5rem;margin:0 0.3rem}.popover .arrow::before,.popover .arrow::after{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-top,.bs-popover-auto[x-placement^="top"]{margin-bottom:0.5rem}.bs-popover-top>.arrow,.bs-popover-auto[x-placement^="top"]>.arrow{bottom:calc((0.5rem + 1px) * -1)}.bs-popover-top>.arrow::before,.bs-popover-auto[x-placement^="top"]>.arrow::before{bottom:0;border-width:0.5rem 0.5rem 0;border-top-color:rgba(0,0,0,0.25)}.bs-popover-top>.arrow::after,.bs-popover-auto[x-placement^="top"]>.arrow::after{bottom:1px;border-width:0.5rem 0.5rem 0;border-top-color:#fff}.bs-popover-right,.bs-popover-auto[x-placement^="right"]{margin-left:0.5rem}.bs-popover-right>.arrow,.bs-popover-auto[x-placement^="right"]>.arrow{left:calc((0.5rem + 1px) * -1);width:0.5rem;height:1rem;margin:0.3rem 0}.bs-popover-right>.arrow::before,.bs-popover-auto[x-placement^="right"]>.arrow::before{left:0;border-width:0.5rem 0.5rem 0.5rem 0;border-right-color:rgba(0,0,0,0.25)}.bs-popover-right>.arrow::after,.bs-popover-auto[x-placement^="right"]>.arrow::after{left:1px;border-width:0.5rem 0.5rem 0.5rem 0;border-right-color:#fff}.bs-popover-bottom,.bs-popover-auto[x-placement^="bottom"]{margin-top:0.5rem}.bs-popover-bottom>.arrow,.bs-popover-auto[x-placement^="bottom"]>.arrow{top:calc((0.5rem + 1px) * -1)}.bs-popover-bottom>.arrow::before,.bs-popover-auto[x-placement^="bottom"]>.arrow::before{top:0;border-width:0 0.5rem 0.5rem 0.5rem;border-bottom-color:rgba(0,0,0,0.25)}.bs-popover-bottom>.arrow::after,.bs-popover-auto[x-placement^="bottom"]>.arrow::after{top:1px;border-width:0 0.5rem 0.5rem 0.5rem;border-bottom-color:#fff}.bs-popover-bottom .popover-header::before,.bs-popover-auto[x-placement^="bottom"] .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-0.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-left,.bs-popover-auto[x-placement^="left"]{margin-right:0.5rem}.bs-popover-left>.arrow,.bs-popover-auto[x-placement^="left"]>.arrow{right:calc((0.5rem + 1px) * -1);width:0.5rem;height:1rem;margin:0.3rem 0}.bs-popover-left>.arrow::before,.bs-popover-auto[x-placement^="left"]>.arrow::before{right:0;border-width:0.5rem 0 0.5rem 0.5rem;border-left-color:rgba(0,0,0,0.25)}.bs-popover-left>.arrow::after,.bs-popover-auto[x-placement^="left"]>.arrow::after{right:1px;border-width:0.5rem 0 0.5rem 0.5rem;border-left-color:#fff}.popover-header{padding:0.5rem 0.75rem;margin-bottom:0;font-size:1rem;color:#2FA4E7;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(0.3rem - 1px);border-top-right-radius:calc(0.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:0.5rem 0.75rem;color:#495057}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:-webkit-transform 0.6s ease-in-out;transition:-webkit-transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out;transition:transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out}@media (prefers-reduced-motion: reduce){.carousel-item{-webkit-transition:none;transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.carousel-item-next:not(.carousel-item-left),.active.carousel-item-right{-webkit-transform:translateX(100%);transform:translateX(100%)}.carousel-item-prev:not(.carousel-item-right),.active.carousel-item-left{-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item.active,.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;-webkit-transition:0s 0.6s opacity;transition:0s 0.6s opacity}@media (prefers-reduced-motion: reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{-webkit-transition:none;transition:none}}.carousel-control-prev,.carousel-control-next{position:absolute;top:0;bottom:0;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:0.5;-webkit-transition:opacity 0.15s ease;transition:opacity 0.15s ease}@media (prefers-reduced-motion: reduce){.carousel-control-prev,.carousel-control-next{-webkit-transition:none;transition:none}}.carousel-control-prev:hover,.carousel-control-prev:focus,.carousel-control-next:hover,.carousel-control-next:focus{color:#fff;text-decoration:none;outline:0;opacity:0.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-prev-icon,.carousel-control-next-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50% / 100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{-webkit-box-sizing:content-box;box-sizing:content-box;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;-webkit-transition:opacity 0.6s ease;transition:opacity 0.6s ease}@media (prefers-reduced-motion: reduce){.carousel-indicators li{-webkit-transition:none;transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:0.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:0.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.bg-primary{background-color:#2FA4E7 !important}a.bg-primary:hover,a.bg-primary:focus,button.bg-primary:hover,button.bg-primary:focus{background-color:#178acc !important}.bg-secondary{background-color:#e9ecef !important}a.bg-secondary:hover,a.bg-secondary:focus,button.bg-secondary:hover,button.bg-secondary:focus{background-color:#cbd3da !important}.bg-success{background-color:#73A839 !important}a.bg-success:hover,a.bg-success:focus,button.bg-success:hover,button.bg-success:focus{background-color:#59822c !important}.bg-info{background-color:#033C73 !important}a.bg-info:hover,a.bg-info:focus,button.bg-info:hover,button.bg-info:focus{background-color:#022241 !important}.bg-warning{background-color:#DD5600 !important}a.bg-warning:hover,a.bg-warning:focus,button.bg-warning:hover,button.bg-warning:focus{background-color:#aa4200 !important}.bg-danger{background-color:#C71C22 !important}a.bg-danger:hover,a.bg-danger:focus,button.bg-danger:hover,button.bg-danger:focus{background-color:#9a161a !important}.bg-light{background-color:#f8f9fa !important}a.bg-light:hover,a.bg-light:focus,button.bg-light:hover,button.bg-light:focus{background-color:#dae0e5 !important}.bg-dark{background-color:#343a40 !important}a.bg-dark:hover,a.bg-dark:focus,button.bg-dark:hover,button.bg-dark:focus{background-color:#1d2124 !important}.bg-white{background-color:#fff !important}.bg-transparent{background-color:transparent !important}.border{border:1px solid #dee2e6 !important}.border-top{border-top:1px solid #dee2e6 !important}.border-right{border-right:1px solid #dee2e6 !important}.border-bottom{border-bottom:1px solid #dee2e6 !important}.border-left{border-left:1px solid #dee2e6 !important}.border-0{border:0 !important}.border-top-0{border-top:0 !important}.border-right-0{border-right:0 !important}.border-bottom-0{border-bottom:0 !important}.border-left-0{border-left:0 !important}.border-primary{border-color:#2FA4E7 !important}.border-secondary{border-color:#e9ecef !important}.border-success{border-color:#73A839 !important}.border-info{border-color:#033C73 !important}.border-warning{border-color:#DD5600 !important}.border-danger{border-color:#C71C22 !important}.border-light{border-color:#f8f9fa !important}.border-dark{border-color:#343a40 !important}.border-white{border-color:#fff !important}.rounded-sm{border-radius:0.2rem !important}.rounded{border-radius:0.25rem !important}.rounded-top{border-top-left-radius:0.25rem !important;border-top-right-radius:0.25rem !important}.rounded-right{border-top-right-radius:0.25rem !important;border-bottom-right-radius:0.25rem !important}.rounded-bottom{border-bottom-right-radius:0.25rem !important;border-bottom-left-radius:0.25rem !important}.rounded-left{border-top-left-radius:0.25rem !important;border-bottom-left-radius:0.25rem !important}.rounded-lg{border-radius:0.3rem !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:50rem !important}.rounded-0{border-radius:0 !important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}@media (min-width: 576px){.d-sm-none{display:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-sm-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 768px){.d-md-none{display:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-md-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 992px){.d-lg-none{display:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-lg-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media (min-width: 1200px){.d-xl-none{display:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-xl-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}@media print{.d-print-none{display:none !important}.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:-webkit-box !important;display:-ms-flexbox !important;display:flex !important}.d-print-inline-flex{display:-webkit-inline-box !important;display:-ms-inline-flexbox !important;display:inline-flex !important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.8571428571%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}@media (min-width: 576px){.flex-sm-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-sm-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-sm-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-sm-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-sm-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-sm-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-sm-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-sm-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-sm-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-sm-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-sm-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-sm-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-sm-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-sm-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-sm-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-sm-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-sm-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-sm-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-sm-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-sm-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-sm-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-sm-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-sm-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-sm-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-sm-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-sm-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-sm-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-sm-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-sm-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-sm-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-sm-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-sm-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-sm-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}@media (min-width: 768px){.flex-md-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-md-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-md-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-md-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-md-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-md-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-md-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-md-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-md-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-md-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-md-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-md-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-md-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-md-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-md-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-md-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-md-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-md-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-md-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-md-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-md-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-md-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-md-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-md-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-md-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-md-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-md-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-md-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-md-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-md-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-md-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-md-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-md-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}@media (min-width: 992px){.flex-lg-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-lg-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-lg-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-lg-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-lg-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-lg-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-lg-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-lg-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-lg-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-lg-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-lg-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-lg-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-lg-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-lg-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-lg-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-lg-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-lg-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-lg-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-lg-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-lg-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-lg-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-lg-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-lg-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-lg-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-lg-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-lg-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-lg-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-lg-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-lg-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-lg-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-lg-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-lg-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-lg-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}@media (min-width: 1200px){.flex-xl-row{-webkit-box-orient:horizontal !important;-webkit-box-direction:normal !important;-ms-flex-direction:row !important;flex-direction:row !important}.flex-xl-column{-webkit-box-orient:vertical !important;-webkit-box-direction:normal !important;-ms-flex-direction:column !important;flex-direction:column !important}.flex-xl-row-reverse{-webkit-box-orient:horizontal !important;-webkit-box-direction:reverse !important;-ms-flex-direction:row-reverse !important;flex-direction:row-reverse !important}.flex-xl-column-reverse{-webkit-box-orient:vertical !important;-webkit-box-direction:reverse !important;-ms-flex-direction:column-reverse !important;flex-direction:column-reverse !important}.flex-xl-wrap{-ms-flex-wrap:wrap !important;flex-wrap:wrap !important}.flex-xl-nowrap{-ms-flex-wrap:nowrap !important;flex-wrap:nowrap !important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse !important;flex-wrap:wrap-reverse !important}.flex-xl-fill{-webkit-box-flex:1 !important;-ms-flex:1 1 auto !important;flex:1 1 auto !important}.flex-xl-grow-0{-webkit-box-flex:0 !important;-ms-flex-positive:0 !important;flex-grow:0 !important}.flex-xl-grow-1{-webkit-box-flex:1 !important;-ms-flex-positive:1 !important;flex-grow:1 !important}.flex-xl-shrink-0{-ms-flex-negative:0 !important;flex-shrink:0 !important}.flex-xl-shrink-1{-ms-flex-negative:1 !important;flex-shrink:1 !important}.justify-content-xl-start{-webkit-box-pack:start !important;-ms-flex-pack:start !important;justify-content:flex-start !important}.justify-content-xl-end{-webkit-box-pack:end !important;-ms-flex-pack:end !important;justify-content:flex-end !important}.justify-content-xl-center{-webkit-box-pack:center !important;-ms-flex-pack:center !important;justify-content:center !important}.justify-content-xl-between{-webkit-box-pack:justify !important;-ms-flex-pack:justify !important;justify-content:space-between !important}.justify-content-xl-around{-ms-flex-pack:distribute !important;justify-content:space-around !important}.align-items-xl-start{-webkit-box-align:start !important;-ms-flex-align:start !important;align-items:flex-start !important}.align-items-xl-end{-webkit-box-align:end !important;-ms-flex-align:end !important;align-items:flex-end !important}.align-items-xl-center{-webkit-box-align:center !important;-ms-flex-align:center !important;align-items:center !important}.align-items-xl-baseline{-webkit-box-align:baseline !important;-ms-flex-align:baseline !important;align-items:baseline !important}.align-items-xl-stretch{-webkit-box-align:stretch !important;-ms-flex-align:stretch !important;align-items:stretch !important}.align-content-xl-start{-ms-flex-line-pack:start !important;align-content:flex-start !important}.align-content-xl-end{-ms-flex-line-pack:end !important;align-content:flex-end !important}.align-content-xl-center{-ms-flex-line-pack:center !important;align-content:center !important}.align-content-xl-between{-ms-flex-line-pack:justify !important;align-content:space-between !important}.align-content-xl-around{-ms-flex-line-pack:distribute !important;align-content:space-around !important}.align-content-xl-stretch{-ms-flex-line-pack:stretch !important;align-content:stretch !important}.align-self-xl-auto{-ms-flex-item-align:auto !important;align-self:auto !important}.align-self-xl-start{-ms-flex-item-align:start !important;align-self:flex-start !important}.align-self-xl-end{-ms-flex-item-align:end !important;align-self:flex-end !important}.align-self-xl-center{-ms-flex-item-align:center !important;align-self:center !important}.align-self-xl-baseline{-ms-flex-item-align:baseline !important;align-self:baseline !important}.align-self-xl-stretch{-ms-flex-item-align:stretch !important;align-self:stretch !important}}.float-left{float:left !important}.float-right{float:right !important}.float-none{float:none !important}@media (min-width: 576px){.float-sm-left{float:left !important}.float-sm-right{float:right !important}.float-sm-none{float:none !important}}@media (min-width: 768px){.float-md-left{float:left !important}.float-md-right{float:right !important}.float-md-none{float:none !important}}@media (min-width: 992px){.float-lg-left{float:left !important}.float-lg-right{float:right !important}.float-lg-none{float:none !important}}@media (min-width: 1200px){.float-xl-left{float:left !important}.float-xl-right{float:right !important}.float-xl-none{float:none !important}}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:-webkit-sticky !important;position:sticky !important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports (position: -webkit-sticky) or (position: sticky){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{-webkit-box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important;box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075) !important}.shadow{-webkit-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important;box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15) !important}.shadow-lg{-webkit-box-shadow:0 1rem 3rem rgba(0,0,0,0.175) !important;box-shadow:0 1rem 3rem rgba(0,0,0,0.175) !important}.shadow-none{-webkit-box-shadow:none !important;box-shadow:none !important}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mw-100{max-width:100% !important}.mh-100{max-height:100% !important}.min-vw-100{min-width:100vw !important}.min-vh-100{min-height:100vh !important}.vw-100{width:100vw !important}.vh-100{height:100vh !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.m-0{margin:0 !important}.mt-0,.my-0{margin-top:0 !important}.mr-0,.mx-0{margin-right:0 !important}.mb-0,.my-0{margin-bottom:0 !important}.ml-0,.mx-0{margin-left:0 !important}.m-1{margin:0.25rem !important}.mt-1,.my-1{margin-top:0.25rem !important}.mr-1,.mx-1{margin-right:0.25rem !important}.mb-1,.my-1{margin-bottom:0.25rem !important}.ml-1,.mx-1{margin-left:0.25rem !important}.m-2{margin:0.5rem !important}.mt-2,.my-2{margin-top:0.5rem !important}.mr-2,.mx-2{margin-right:0.5rem !important}.mb-2,.my-2{margin-bottom:0.5rem !important}.ml-2,.mx-2{margin-left:0.5rem !important}.m-3{margin:1rem !important}.mt-3,.my-3{margin-top:1rem !important}.mr-3,.mx-3{margin-right:1rem !important}.mb-3,.my-3{margin-bottom:1rem !important}.ml-3,.mx-3{margin-left:1rem !important}.m-4{margin:1.5rem !important}.mt-4,.my-4{margin-top:1.5rem !important}.mr-4,.mx-4{margin-right:1.5rem !important}.mb-4,.my-4{margin-bottom:1.5rem !important}.ml-4,.mx-4{margin-left:1.5rem !important}.m-5{margin:3rem !important}.mt-5,.my-5{margin-top:3rem !important}.mr-5,.mx-5{margin-right:3rem !important}.mb-5,.my-5{margin-bottom:3rem !important}.ml-5,.mx-5{margin-left:3rem !important}.p-0{padding:0 !important}.pt-0,.py-0{padding-top:0 !important}.pr-0,.px-0{padding-right:0 !important}.pb-0,.py-0{padding-bottom:0 !important}.pl-0,.px-0{padding-left:0 !important}.p-1{padding:0.25rem !important}.pt-1,.py-1{padding-top:0.25rem !important}.pr-1,.px-1{padding-right:0.25rem !important}.pb-1,.py-1{padding-bottom:0.25rem !important}.pl-1,.px-1{padding-left:0.25rem !important}.p-2{padding:0.5rem !important}.pt-2,.py-2{padding-top:0.5rem !important}.pr-2,.px-2{padding-right:0.5rem !important}.pb-2,.py-2{padding-bottom:0.5rem !important}.pl-2,.px-2{padding-left:0.5rem !important}.p-3{padding:1rem !important}.pt-3,.py-3{padding-top:1rem !important}.pr-3,.px-3{padding-right:1rem !important}.pb-3,.py-3{padding-bottom:1rem !important}.pl-3,.px-3{padding-left:1rem !important}.p-4{padding:1.5rem !important}.pt-4,.py-4{padding-top:1.5rem !important}.pr-4,.px-4{padding-right:1.5rem !important}.pb-4,.py-4{padding-bottom:1.5rem !important}.pl-4,.px-4{padding-left:1.5rem !important}.p-5{padding:3rem !important}.pt-5,.py-5{padding-top:3rem !important}.pr-5,.px-5{padding-right:3rem !important}.pb-5,.py-5{padding-bottom:3rem !important}.pl-5,.px-5{padding-left:3rem !important}.m-n1{margin:-0.25rem !important}.mt-n1,.my-n1{margin-top:-0.25rem !important}.mr-n1,.mx-n1{margin-right:-0.25rem !important}.mb-n1,.my-n1{margin-bottom:-0.25rem !important}.ml-n1,.mx-n1{margin-left:-0.25rem !important}.m-n2{margin:-0.5rem !important}.mt-n2,.my-n2{margin-top:-0.5rem !important}.mr-n2,.mx-n2{margin-right:-0.5rem !important}.mb-n2,.my-n2{margin-bottom:-0.5rem !important}.ml-n2,.mx-n2{margin-left:-0.5rem !important}.m-n3{margin:-1rem !important}.mt-n3,.my-n3{margin-top:-1rem !important}.mr-n3,.mx-n3{margin-right:-1rem !important}.mb-n3,.my-n3{margin-bottom:-1rem !important}.ml-n3,.mx-n3{margin-left:-1rem !important}.m-n4{margin:-1.5rem !important}.mt-n4,.my-n4{margin-top:-1.5rem !important}.mr-n4,.mx-n4{margin-right:-1.5rem !important}.mb-n4,.my-n4{margin-bottom:-1.5rem !important}.ml-n4,.mx-n4{margin-left:-1.5rem !important}.m-n5{margin:-3rem !important}.mt-n5,.my-n5{margin-top:-3rem !important}.mr-n5,.mx-n5{margin-right:-3rem !important}.mb-n5,.my-n5{margin-bottom:-3rem !important}.ml-n5,.mx-n5{margin-left:-3rem !important}.m-auto{margin:auto !important}.mt-auto,.my-auto{margin-top:auto !important}.mr-auto,.mx-auto{margin-right:auto !important}.mb-auto,.my-auto{margin-bottom:auto !important}.ml-auto,.mx-auto{margin-left:auto !important}@media (min-width: 576px){.m-sm-0{margin:0 !important}.mt-sm-0,.my-sm-0{margin-top:0 !important}.mr-sm-0,.mx-sm-0{margin-right:0 !important}.mb-sm-0,.my-sm-0{margin-bottom:0 !important}.ml-sm-0,.mx-sm-0{margin-left:0 !important}.m-sm-1{margin:0.25rem !important}.mt-sm-1,.my-sm-1{margin-top:0.25rem !important}.mr-sm-1,.mx-sm-1{margin-right:0.25rem !important}.mb-sm-1,.my-sm-1{margin-bottom:0.25rem !important}.ml-sm-1,.mx-sm-1{margin-left:0.25rem !important}.m-sm-2{margin:0.5rem !important}.mt-sm-2,.my-sm-2{margin-top:0.5rem !important}.mr-sm-2,.mx-sm-2{margin-right:0.5rem !important}.mb-sm-2,.my-sm-2{margin-bottom:0.5rem !important}.ml-sm-2,.mx-sm-2{margin-left:0.5rem !important}.m-sm-3{margin:1rem !important}.mt-sm-3,.my-sm-3{margin-top:1rem !important}.mr-sm-3,.mx-sm-3{margin-right:1rem !important}.mb-sm-3,.my-sm-3{margin-bottom:1rem !important}.ml-sm-3,.mx-sm-3{margin-left:1rem !important}.m-sm-4{margin:1.5rem !important}.mt-sm-4,.my-sm-4{margin-top:1.5rem !important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem !important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem !important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem !important}.m-sm-5{margin:3rem !important}.mt-sm-5,.my-sm-5{margin-top:3rem !important}.mr-sm-5,.mx-sm-5{margin-right:3rem !important}.mb-sm-5,.my-sm-5{margin-bottom:3rem !important}.ml-sm-5,.mx-sm-5{margin-left:3rem !important}.p-sm-0{padding:0 !important}.pt-sm-0,.py-sm-0{padding-top:0 !important}.pr-sm-0,.px-sm-0{padding-right:0 !important}.pb-sm-0,.py-sm-0{padding-bottom:0 !important}.pl-sm-0,.px-sm-0{padding-left:0 !important}.p-sm-1{padding:0.25rem !important}.pt-sm-1,.py-sm-1{padding-top:0.25rem !important}.pr-sm-1,.px-sm-1{padding-right:0.25rem !important}.pb-sm-1,.py-sm-1{padding-bottom:0.25rem !important}.pl-sm-1,.px-sm-1{padding-left:0.25rem !important}.p-sm-2{padding:0.5rem !important}.pt-sm-2,.py-sm-2{padding-top:0.5rem !important}.pr-sm-2,.px-sm-2{padding-right:0.5rem !important}.pb-sm-2,.py-sm-2{padding-bottom:0.5rem !important}.pl-sm-2,.px-sm-2{padding-left:0.5rem !important}.p-sm-3{padding:1rem !important}.pt-sm-3,.py-sm-3{padding-top:1rem !important}.pr-sm-3,.px-sm-3{padding-right:1rem !important}.pb-sm-3,.py-sm-3{padding-bottom:1rem !important}.pl-sm-3,.px-sm-3{padding-left:1rem !important}.p-sm-4{padding:1.5rem !important}.pt-sm-4,.py-sm-4{padding-top:1.5rem !important}.pr-sm-4,.px-sm-4{padding-right:1.5rem !important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem !important}.pl-sm-4,.px-sm-4{padding-left:1.5rem !important}.p-sm-5{padding:3rem !important}.pt-sm-5,.py-sm-5{padding-top:3rem !important}.pr-sm-5,.px-sm-5{padding-right:3rem !important}.pb-sm-5,.py-sm-5{padding-bottom:3rem !important}.pl-sm-5,.px-sm-5{padding-left:3rem !important}.m-sm-n1{margin:-0.25rem !important}.mt-sm-n1,.my-sm-n1{margin-top:-0.25rem !important}.mr-sm-n1,.mx-sm-n1{margin-right:-0.25rem !important}.mb-sm-n1,.my-sm-n1{margin-bottom:-0.25rem !important}.ml-sm-n1,.mx-sm-n1{margin-left:-0.25rem !important}.m-sm-n2{margin:-0.5rem !important}.mt-sm-n2,.my-sm-n2{margin-top:-0.5rem !important}.mr-sm-n2,.mx-sm-n2{margin-right:-0.5rem !important}.mb-sm-n2,.my-sm-n2{margin-bottom:-0.5rem !important}.ml-sm-n2,.mx-sm-n2{margin-left:-0.5rem !important}.m-sm-n3{margin:-1rem !important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem !important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem !important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem !important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem !important}.m-sm-n4{margin:-1.5rem !important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem !important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem !important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem !important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem !important}.m-sm-n5{margin:-3rem !important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem !important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem !important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem !important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem !important}.m-sm-auto{margin:auto !important}.mt-sm-auto,.my-sm-auto{margin-top:auto !important}.mr-sm-auto,.mx-sm-auto{margin-right:auto !important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto !important}.ml-sm-auto,.mx-sm-auto{margin-left:auto !important}}@media (min-width: 768px){.m-md-0{margin:0 !important}.mt-md-0,.my-md-0{margin-top:0 !important}.mr-md-0,.mx-md-0{margin-right:0 !important}.mb-md-0,.my-md-0{margin-bottom:0 !important}.ml-md-0,.mx-md-0{margin-left:0 !important}.m-md-1{margin:0.25rem !important}.mt-md-1,.my-md-1{margin-top:0.25rem !important}.mr-md-1,.mx-md-1{margin-right:0.25rem !important}.mb-md-1,.my-md-1{margin-bottom:0.25rem !important}.ml-md-1,.mx-md-1{margin-left:0.25rem !important}.m-md-2{margin:0.5rem !important}.mt-md-2,.my-md-2{margin-top:0.5rem !important}.mr-md-2,.mx-md-2{margin-right:0.5rem !important}.mb-md-2,.my-md-2{margin-bottom:0.5rem !important}.ml-md-2,.mx-md-2{margin-left:0.5rem !important}.m-md-3{margin:1rem !important}.mt-md-3,.my-md-3{margin-top:1rem !important}.mr-md-3,.mx-md-3{margin-right:1rem !important}.mb-md-3,.my-md-3{margin-bottom:1rem !important}.ml-md-3,.mx-md-3{margin-left:1rem !important}.m-md-4{margin:1.5rem !important}.mt-md-4,.my-md-4{margin-top:1.5rem !important}.mr-md-4,.mx-md-4{margin-right:1.5rem !important}.mb-md-4,.my-md-4{margin-bottom:1.5rem !important}.ml-md-4,.mx-md-4{margin-left:1.5rem !important}.m-md-5{margin:3rem !important}.mt-md-5,.my-md-5{margin-top:3rem !important}.mr-md-5,.mx-md-5{margin-right:3rem !important}.mb-md-5,.my-md-5{margin-bottom:3rem !important}.ml-md-5,.mx-md-5{margin-left:3rem !important}.p-md-0{padding:0 !important}.pt-md-0,.py-md-0{padding-top:0 !important}.pr-md-0,.px-md-0{padding-right:0 !important}.pb-md-0,.py-md-0{padding-bottom:0 !important}.pl-md-0,.px-md-0{padding-left:0 !important}.p-md-1{padding:0.25rem !important}.pt-md-1,.py-md-1{padding-top:0.25rem !important}.pr-md-1,.px-md-1{padding-right:0.25rem !important}.pb-md-1,.py-md-1{padding-bottom:0.25rem !important}.pl-md-1,.px-md-1{padding-left:0.25rem !important}.p-md-2{padding:0.5rem !important}.pt-md-2,.py-md-2{padding-top:0.5rem !important}.pr-md-2,.px-md-2{padding-right:0.5rem !important}.pb-md-2,.py-md-2{padding-bottom:0.5rem !important}.pl-md-2,.px-md-2{padding-left:0.5rem !important}.p-md-3{padding:1rem !important}.pt-md-3,.py-md-3{padding-top:1rem !important}.pr-md-3,.px-md-3{padding-right:1rem !important}.pb-md-3,.py-md-3{padding-bottom:1rem !important}.pl-md-3,.px-md-3{padding-left:1rem !important}.p-md-4{padding:1.5rem !important}.pt-md-4,.py-md-4{padding-top:1.5rem !important}.pr-md-4,.px-md-4{padding-right:1.5rem !important}.pb-md-4,.py-md-4{padding-bottom:1.5rem !important}.pl-md-4,.px-md-4{padding-left:1.5rem !important}.p-md-5{padding:3rem !important}.pt-md-5,.py-md-5{padding-top:3rem !important}.pr-md-5,.px-md-5{padding-right:3rem !important}.pb-md-5,.py-md-5{padding-bottom:3rem !important}.pl-md-5,.px-md-5{padding-left:3rem !important}.m-md-n1{margin:-0.25rem !important}.mt-md-n1,.my-md-n1{margin-top:-0.25rem !important}.mr-md-n1,.mx-md-n1{margin-right:-0.25rem !important}.mb-md-n1,.my-md-n1{margin-bottom:-0.25rem !important}.ml-md-n1,.mx-md-n1{margin-left:-0.25rem !important}.m-md-n2{margin:-0.5rem !important}.mt-md-n2,.my-md-n2{margin-top:-0.5rem !important}.mr-md-n2,.mx-md-n2{margin-right:-0.5rem !important}.mb-md-n2,.my-md-n2{margin-bottom:-0.5rem !important}.ml-md-n2,.mx-md-n2{margin-left:-0.5rem !important}.m-md-n3{margin:-1rem !important}.mt-md-n3,.my-md-n3{margin-top:-1rem !important}.mr-md-n3,.mx-md-n3{margin-right:-1rem !important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem !important}.ml-md-n3,.mx-md-n3{margin-left:-1rem !important}.m-md-n4{margin:-1.5rem !important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem !important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem !important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem !important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem !important}.m-md-n5{margin:-3rem !important}.mt-md-n5,.my-md-n5{margin-top:-3rem !important}.mr-md-n5,.mx-md-n5{margin-right:-3rem !important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem !important}.ml-md-n5,.mx-md-n5{margin-left:-3rem !important}.m-md-auto{margin:auto !important}.mt-md-auto,.my-md-auto{margin-top:auto !important}.mr-md-auto,.mx-md-auto{margin-right:auto !important}.mb-md-auto,.my-md-auto{margin-bottom:auto !important}.ml-md-auto,.mx-md-auto{margin-left:auto !important}}@media (min-width: 992px){.m-lg-0{margin:0 !important}.mt-lg-0,.my-lg-0{margin-top:0 !important}.mr-lg-0,.mx-lg-0{margin-right:0 !important}.mb-lg-0,.my-lg-0{margin-bottom:0 !important}.ml-lg-0,.mx-lg-0{margin-left:0 !important}.m-lg-1{margin:0.25rem !important}.mt-lg-1,.my-lg-1{margin-top:0.25rem !important}.mr-lg-1,.mx-lg-1{margin-right:0.25rem !important}.mb-lg-1,.my-lg-1{margin-bottom:0.25rem !important}.ml-lg-1,.mx-lg-1{margin-left:0.25rem !important}.m-lg-2{margin:0.5rem !important}.mt-lg-2,.my-lg-2{margin-top:0.5rem !important}.mr-lg-2,.mx-lg-2{margin-right:0.5rem !important}.mb-lg-2,.my-lg-2{margin-bottom:0.5rem !important}.ml-lg-2,.mx-lg-2{margin-left:0.5rem !important}.m-lg-3{margin:1rem !important}.mt-lg-3,.my-lg-3{margin-top:1rem !important}.mr-lg-3,.mx-lg-3{margin-right:1rem !important}.mb-lg-3,.my-lg-3{margin-bottom:1rem !important}.ml-lg-3,.mx-lg-3{margin-left:1rem !important}.m-lg-4{margin:1.5rem !important}.mt-lg-4,.my-lg-4{margin-top:1.5rem !important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem !important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem !important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem !important}.m-lg-5{margin:3rem !important}.mt-lg-5,.my-lg-5{margin-top:3rem !important}.mr-lg-5,.mx-lg-5{margin-right:3rem !important}.mb-lg-5,.my-lg-5{margin-bottom:3rem !important}.ml-lg-5,.mx-lg-5{margin-left:3rem !important}.p-lg-0{padding:0 !important}.pt-lg-0,.py-lg-0{padding-top:0 !important}.pr-lg-0,.px-lg-0{padding-right:0 !important}.pb-lg-0,.py-lg-0{padding-bottom:0 !important}.pl-lg-0,.px-lg-0{padding-left:0 !important}.p-lg-1{padding:0.25rem !important}.pt-lg-1,.py-lg-1{padding-top:0.25rem !important}.pr-lg-1,.px-lg-1{padding-right:0.25rem !important}.pb-lg-1,.py-lg-1{padding-bottom:0.25rem !important}.pl-lg-1,.px-lg-1{padding-left:0.25rem !important}.p-lg-2{padding:0.5rem !important}.pt-lg-2,.py-lg-2{padding-top:0.5rem !important}.pr-lg-2,.px-lg-2{padding-right:0.5rem !important}.pb-lg-2,.py-lg-2{padding-bottom:0.5rem !important}.pl-lg-2,.px-lg-2{padding-left:0.5rem !important}.p-lg-3{padding:1rem !important}.pt-lg-3,.py-lg-3{padding-top:1rem !important}.pr-lg-3,.px-lg-3{padding-right:1rem !important}.pb-lg-3,.py-lg-3{padding-bottom:1rem !important}.pl-lg-3,.px-lg-3{padding-left:1rem !important}.p-lg-4{padding:1.5rem !important}.pt-lg-4,.py-lg-4{padding-top:1.5rem !important}.pr-lg-4,.px-lg-4{padding-right:1.5rem !important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem !important}.pl-lg-4,.px-lg-4{padding-left:1.5rem !important}.p-lg-5{padding:3rem !important}.pt-lg-5,.py-lg-5{padding-top:3rem !important}.pr-lg-5,.px-lg-5{padding-right:3rem !important}.pb-lg-5,.py-lg-5{padding-bottom:3rem !important}.pl-lg-5,.px-lg-5{padding-left:3rem !important}.m-lg-n1{margin:-0.25rem !important}.mt-lg-n1,.my-lg-n1{margin-top:-0.25rem !important}.mr-lg-n1,.mx-lg-n1{margin-right:-0.25rem !important}.mb-lg-n1,.my-lg-n1{margin-bottom:-0.25rem !important}.ml-lg-n1,.mx-lg-n1{margin-left:-0.25rem !important}.m-lg-n2{margin:-0.5rem !important}.mt-lg-n2,.my-lg-n2{margin-top:-0.5rem !important}.mr-lg-n2,.mx-lg-n2{margin-right:-0.5rem !important}.mb-lg-n2,.my-lg-n2{margin-bottom:-0.5rem !important}.ml-lg-n2,.mx-lg-n2{margin-left:-0.5rem !important}.m-lg-n3{margin:-1rem !important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem !important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem !important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem !important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem !important}.m-lg-n4{margin:-1.5rem !important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem !important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem !important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem !important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem !important}.m-lg-n5{margin:-3rem !important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem !important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem !important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem !important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem !important}.m-lg-auto{margin:auto !important}.mt-lg-auto,.my-lg-auto{margin-top:auto !important}.mr-lg-auto,.mx-lg-auto{margin-right:auto !important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto !important}.ml-lg-auto,.mx-lg-auto{margin-left:auto !important}}@media (min-width: 1200px){.m-xl-0{margin:0 !important}.mt-xl-0,.my-xl-0{margin-top:0 !important}.mr-xl-0,.mx-xl-0{margin-right:0 !important}.mb-xl-0,.my-xl-0{margin-bottom:0 !important}.ml-xl-0,.mx-xl-0{margin-left:0 !important}.m-xl-1{margin:0.25rem !important}.mt-xl-1,.my-xl-1{margin-top:0.25rem !important}.mr-xl-1,.mx-xl-1{margin-right:0.25rem !important}.mb-xl-1,.my-xl-1{margin-bottom:0.25rem !important}.ml-xl-1,.mx-xl-1{margin-left:0.25rem !important}.m-xl-2{margin:0.5rem !important}.mt-xl-2,.my-xl-2{margin-top:0.5rem !important}.mr-xl-2,.mx-xl-2{margin-right:0.5rem !important}.mb-xl-2,.my-xl-2{margin-bottom:0.5rem !important}.ml-xl-2,.mx-xl-2{margin-left:0.5rem !important}.m-xl-3{margin:1rem !important}.mt-xl-3,.my-xl-3{margin-top:1rem !important}.mr-xl-3,.mx-xl-3{margin-right:1rem !important}.mb-xl-3,.my-xl-3{margin-bottom:1rem !important}.ml-xl-3,.mx-xl-3{margin-left:1rem !important}.m-xl-4{margin:1.5rem !important}.mt-xl-4,.my-xl-4{margin-top:1.5rem !important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem !important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem !important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem !important}.m-xl-5{margin:3rem !important}.mt-xl-5,.my-xl-5{margin-top:3rem !important}.mr-xl-5,.mx-xl-5{margin-right:3rem !important}.mb-xl-5,.my-xl-5{margin-bottom:3rem !important}.ml-xl-5,.mx-xl-5{margin-left:3rem !important}.p-xl-0{padding:0 !important}.pt-xl-0,.py-xl-0{padding-top:0 !important}.pr-xl-0,.px-xl-0{padding-right:0 !important}.pb-xl-0,.py-xl-0{padding-bottom:0 !important}.pl-xl-0,.px-xl-0{padding-left:0 !important}.p-xl-1{padding:0.25rem !important}.pt-xl-1,.py-xl-1{padding-top:0.25rem !important}.pr-xl-1,.px-xl-1{padding-right:0.25rem !important}.pb-xl-1,.py-xl-1{padding-bottom:0.25rem !important}.pl-xl-1,.px-xl-1{padding-left:0.25rem !important}.p-xl-2{padding:0.5rem !important}.pt-xl-2,.py-xl-2{padding-top:0.5rem !important}.pr-xl-2,.px-xl-2{padding-right:0.5rem !important}.pb-xl-2,.py-xl-2{padding-bottom:0.5rem !important}.pl-xl-2,.px-xl-2{padding-left:0.5rem !important}.p-xl-3{padding:1rem !important}.pt-xl-3,.py-xl-3{padding-top:1rem !important}.pr-xl-3,.px-xl-3{padding-right:1rem !important}.pb-xl-3,.py-xl-3{padding-bottom:1rem !important}.pl-xl-3,.px-xl-3{padding-left:1rem !important}.p-xl-4{padding:1.5rem !important}.pt-xl-4,.py-xl-4{padding-top:1.5rem !important}.pr-xl-4,.px-xl-4{padding-right:1.5rem !important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem !important}.pl-xl-4,.px-xl-4{padding-left:1.5rem !important}.p-xl-5{padding:3rem !important}.pt-xl-5,.py-xl-5{padding-top:3rem !important}.pr-xl-5,.px-xl-5{padding-right:3rem !important}.pb-xl-5,.py-xl-5{padding-bottom:3rem !important}.pl-xl-5,.px-xl-5{padding-left:3rem !important}.m-xl-n1{margin:-0.25rem !important}.mt-xl-n1,.my-xl-n1{margin-top:-0.25rem !important}.mr-xl-n1,.mx-xl-n1{margin-right:-0.25rem !important}.mb-xl-n1,.my-xl-n1{margin-bottom:-0.25rem !important}.ml-xl-n1,.mx-xl-n1{margin-left:-0.25rem !important}.m-xl-n2{margin:-0.5rem !important}.mt-xl-n2,.my-xl-n2{margin-top:-0.5rem !important}.mr-xl-n2,.mx-xl-n2{margin-right:-0.5rem !important}.mb-xl-n2,.my-xl-n2{margin-bottom:-0.5rem !important}.ml-xl-n2,.mx-xl-n2{margin-left:-0.5rem !important}.m-xl-n3{margin:-1rem !important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem !important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem !important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem !important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem !important}.m-xl-n4{margin:-1.5rem !important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem !important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem !important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem !important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem !important}.m-xl-n5{margin:-3rem !important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem !important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem !important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem !important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem !important}.m-xl-auto{margin:auto !important}.mt-xl-auto,.my-xl-auto{margin-top:auto !important}.mr-xl-auto,.mx-xl-auto{margin-right:auto !important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto !important}.ml-xl-auto,.mx-xl-auto{margin-left:auto !important}}.text-monospace{font-family:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important}.text-justify{text-align:justify !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left !important}.text-right{text-align:right !important}.text-center{text-align:center !important}@media (min-width: 576px){.text-sm-left{text-align:left !important}.text-sm-right{text-align:right !important}.text-sm-center{text-align:center !important}}@media (min-width: 768px){.text-md-left{text-align:left !important}.text-md-right{text-align:right !important}.text-md-center{text-align:center !important}}@media (min-width: 992px){.text-lg-left{text-align:left !important}.text-lg-right{text-align:right !important}.text-lg-center{text-align:center !important}}@media (min-width: 1200px){.text-xl-left{text-align:left !important}.text-xl-right{text-align:right !important}.text-xl-center{text-align:center !important}}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.font-weight-light{font-weight:300 !important}.font-weight-lighter{font-weight:lighter !important}.font-weight-normal{font-weight:400 !important}.font-weight-bold{font-weight:700 !important}.font-weight-bolder{font-weight:bolder !important}.font-italic{font-style:italic !important}.text-white{color:#fff !important}.text-primary{color:#2FA4E7 !important}a.text-primary:hover,a.text-primary:focus{color:#157ab5 !important}.text-secondary{color:#e9ecef !important}a.text-secondary:hover,a.text-secondary:focus{color:#bdc6cf !important}.text-success{color:#73A839 !important}a.text-success:hover,a.text-success:focus{color:#4c6f26 !important}.text-info{color:#033C73 !important}a.text-info:hover,a.text-info:focus{color:#011528 !important}.text-warning{color:#DD5600 !important}a.text-warning:hover,a.text-warning:focus{color:#913800 !important}.text-danger{color:#C71C22 !important}a.text-danger:hover,a.text-danger:focus{color:#841317 !important}.text-light{color:#f8f9fa !important}a.text-light:hover,a.text-light:focus{color:#cbd3da !important}.text-dark{color:#343a40 !important}a.text-dark:hover,a.text-dark:focus{color:#121416 !important}.text-body{color:#495057 !important}.text-muted{color:#868e96 !important}.text-black-50{color:rgba(0,0,0,0.5) !important}.text-white-50{color:rgba(255,255,255,0.5) !important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none !important}.text-break{word-break:break-word !important;overflow-wrap:break-word !important}.text-reset{color:inherit !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media print{*,*::before,*::after{text-shadow:none !important;-webkit-box-shadow:none !important;box-shadow:none !important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap !important}pre,blockquote{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px !important}.container{min-width:992px !important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse !important}.table td,.table th{background-color:#fff !important}.table-bordered th,.table-bordered td{border:1px solid #dee2e6 !important}.table-dark{color:inherit}.table-dark th,.table-dark td,.table-dark thead th,.table-dark tbody+tbody{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}}.bg-primary{background-image:-webkit-gradient(linear, left top, left bottom, from(#54b4eb), color-stop(60%, #2FA4E7), to(#1d9ce5));background-image:linear-gradient(#54b4eb, #2FA4E7 60%, #1d9ce5);background-repeat:no-repeat}.bg-dark{background-image:-webkit-gradient(linear, left top, left bottom, from(#04519b), color-stop(60%, #033C73), to(#02325f));background-image:linear-gradient(#04519b, #033C73 60%, #02325f);background-repeat:no-repeat}.bg-light{background-image:-webkit-gradient(linear, left top, left bottom, from(white), color-stop(60%, #e9ecef), to(#e3e7eb));background-image:linear-gradient(white, #e9ecef 60%, #e3e7eb);background-repeat:no-repeat}.navbar-brand,.nav-link{text-shadow:0 1px 0 rgba(0,0,0,0.05)}.btn{text-shadow:0 1px 0 rgba(0,0,0,0.05)}.btn-primary{background-image:-webkit-gradient(linear, left top, left bottom, from(#54b4eb), color-stop(60%, #2FA4E7), to(#1d9ce5));background-image:linear-gradient(#54b4eb, #2FA4E7 60%, #1d9ce5);background-repeat:no-repeat}.btn-secondary{background-image:-webkit-gradient(linear, left top, left bottom, from(white), color-stop(60%, #e9ecef), to(#dde2e6));background-image:linear-gradient(white, #e9ecef 60%, #dde2e6);background-repeat:no-repeat;color:#495057}.btn-success{background-image:-webkit-gradient(linear, left top, left bottom, from(#88c149), color-stop(60%, #73A839), to(#699934));background-image:linear-gradient(#88c149, #73A839 60%, #699934);background-repeat:no-repeat}.btn-info{background-image:-webkit-gradient(linear, left top, left bottom, from(#04519b), color-stop(60%, #033C73), to(#02325f));background-image:linear-gradient(#04519b, #033C73 60%, #02325f);background-repeat:no-repeat}.btn-warning{background-image:-webkit-gradient(linear, left top, left bottom, from(#ff6707), color-stop(60%, #DD5600), to(#c94e00));background-image:linear-gradient(#ff6707, #DD5600 60%, #c94e00);background-repeat:no-repeat}.btn-danger{background-image:-webkit-gradient(linear, left top, left bottom, from(#e12b31), color-stop(60%, #C71C22), to(#b5191f));background-image:linear-gradient(#e12b31, #C71C22 60%, #b5191f);background-repeat:no-repeat}.btn-light{background-image:-webkit-gradient(linear, left top, left bottom, from(white), color-stop(60%, #f8f9fa), to(#eceff2));background-image:linear-gradient(white, #f8f9fa 60%, #eceff2);background-repeat:no-repeat}.btn-dark{background-image:-webkit-gradient(linear, left top, left bottom, from(#464e57), color-stop(60%, #343a40), to(#2b3035));background-image:linear-gradient(#464e57, #343a40 60%, #2b3035);background-repeat:no-repeat}.text-secondary{color:#adb5bd !important}.bg-primary h1,.bg-primary h2,.bg-primary h3,.bg-primary h4,.bg-primary h5,.bg-primary h6,.bg-success h1,.bg-success h2,.bg-success h3,.bg-success h4,.bg-success h5,.bg-success h6,.bg-info h1,.bg-info h2,.bg-info h3,.bg-info h4,.bg-info h5,.bg-info h6,.bg-warning h1,.bg-warning h2,.bg-warning h3,.bg-warning h4,.bg-warning h5,.bg-warning h6,.bg-danger h1,.bg-danger h2,.bg-danger h3,.bg-danger h4,.bg-danger h5,.bg-danger h6,.bg-dark h1,.bg-dark h2,.bg-dark h3,.bg-dark h4,.bg-dark h5,.bg-dark h6{color:#fff}.dropdown-menu .dropdown-header{color:#868e96} diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/css/bootstrap.min.css.map b/apps/dnet-orgs-database-application/src/main/resources/static/resources/css/bootstrap.min.css.map new file mode 100644 index 00000000..1e9cb78a --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/css/bootstrap.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../../scss/bootstrap.scss","../../scss/_root.scss","../../scss/_reboot.scss","dist/css/bootstrap.css","../../scss/vendor/_rfs.scss","bootstrap.css","../../scss/mixins/_hover.scss","../../scss/_type.scss","../../scss/mixins/_lists.scss","../../scss/_images.scss","../../scss/mixins/_image.scss","../../scss/mixins/_border-radius.scss","../../scss/_code.scss","../../scss/_grid.scss","../../scss/mixins/_grid.scss","../../scss/mixins/_breakpoints.scss","../../scss/mixins/_grid-framework.scss","../../scss/_tables.scss","../../scss/mixins/_table-row.scss","../../scss/_forms.scss","../../scss/mixins/_transition.scss","../../scss/mixins/_forms.scss","../../scss/mixins/_gradients.scss","../../scss/_buttons.scss","../../scss/mixins/_buttons.scss","../../scss/_transitions.scss","../../scss/_dropdown.scss","../../scss/mixins/_caret.scss","../../scss/mixins/_nav-divider.scss","../../scss/_button-group.scss","../../scss/_input-group.scss","../../scss/_custom-forms.scss","../../scss/_nav.scss","../../scss/_navbar.scss","../../scss/_card.scss","../../scss/_breadcrumb.scss","../../scss/_pagination.scss","../../scss/mixins/_pagination.scss","../../scss/_badge.scss","../../scss/mixins/_badge.scss","../../scss/_jumbotron.scss","../../scss/_alert.scss","../../scss/mixins/_alert.scss","../../scss/_progress.scss","../../scss/_media.scss","../../scss/_list-group.scss","../../scss/mixins/_list-group.scss","../../scss/_close.scss","../../scss/_toasts.scss","../../scss/_modal.scss","../../scss/_tooltip.scss","../../scss/mixins/_reset-text.scss","../../scss/_popover.scss","../../scss/_carousel.scss","../../scss/mixins/_clearfix.scss","../../scss/_spinners.scss","../../scss/utilities/_align.scss","../../scss/mixins/_background-variant.scss","../../scss/utilities/_background.scss","../../scss/utilities/_borders.scss","../../scss/utilities/_display.scss","../../scss/utilities/_embed.scss","../../scss/utilities/_flex.scss","../../scss/utilities/_float.scss","../../scss/utilities/_overflow.scss","../../scss/utilities/_position.scss","../../scss/utilities/_screenreaders.scss","../../scss/mixins/_screen-reader.scss","../../scss/utilities/_shadows.scss","../../scss/utilities/_sizing.scss","../../scss/utilities/_stretched-link.scss","../../scss/utilities/_spacing.scss","../../scss/utilities/_text.scss","../../scss/mixins/_text-truncate.scss","../../scss/mixins/_text-emphasis.scss","../../scss/mixins/_text-hide.scss","../../scss/utilities/_visibility.scss","../../scss/_print.scss"],"names":[],"mappings":"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","sourcesContent":["/*!\n * Bootstrap v4.3.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n@import \"functions\";\n@import \"variables\";\n@import \"mixins\";\n@import \"root\";\n@import \"reboot\";\n@import \"type\";\n@import \"images\";\n@import \"code\";\n@import \"grid\";\n@import \"tables\";\n@import \"forms\";\n@import \"buttons\";\n@import \"transitions\";\n@import \"dropdown\";\n@import \"button-group\";\n@import \"input-group\";\n@import \"custom-forms\";\n@import \"nav\";\n@import \"navbar\";\n@import \"card\";\n@import \"breadcrumb\";\n@import \"pagination\";\n@import \"badge\";\n@import \"jumbotron\";\n@import \"alert\";\n@import \"progress\";\n@import \"media\";\n@import \"list-group\";\n@import \"close\";\n@import \"toasts\";\n@import \"modal\";\n@import \"tooltip\";\n@import \"popover\";\n@import \"carousel\";\n@import \"spinners\";\n@import \"utilities\";\n@import \"print\";\n",":root {\n // Custom variable values only support SassScript inside `#{}`.\n @each $color, $value in $colors {\n --#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors {\n --#{$color}: #{$value};\n }\n\n @each $bp, $value in $grid-breakpoints {\n --breakpoint-#{$bp}: #{$value};\n }\n\n // Use `inspect` for lists so that quoted items keep the quotes.\n // See https://github.com/sass/sass/issues/2383#issuecomment-336349172\n --font-family-sans-serif: #{inspect($font-family-sans-serif)};\n --font-family-monospace: #{inspect($font-family-monospace)};\n}\n","// stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n// 2. Change the default font family in all browsers.\n// 3. Correct the line height in all browsers.\n// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.\n// 5. Change the default tap highlight to be completely transparent in iOS.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box; // 1\n}\n\nhtml {\n font-family: sans-serif; // 2\n line-height: 1.15; // 3\n -webkit-text-size-adjust: 100%; // 4\n -webkit-tap-highlight-color: rgba($black, 0); // 5\n}\n\n// Shim for \"new\" HTML5 structural elements to display correctly (IE10, older browsers)\n// TODO: remove in v5\n// stylelint-disable-next-line selector-list-comma-newline-after\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Set an explicit initial text-align value so that we can later use\n// the `inherit` value on things like `` elements.\n\nbody {\n margin: 0; // 1\n font-family: $font-family-base;\n @include font-size($font-size-base);\n font-weight: $font-weight-base;\n line-height: $line-height-base;\n color: $body-color;\n text-align: left; // 3\n background-color: $body-bg; // 2\n}\n\n// Suppress the focus outline on elements that cannot be accessed via keyboard.\n// This prevents an unwanted focus outline from appearing around elements that\n// might still respond to pointer events.\n//\n// Credit: https://github.com/suitcss/base\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\n\n// Content grouping\n//\n// 1. Add the correct box sizing in Firefox.\n// 2. Show the overflow in Edge and IE.\n\nhr {\n box-sizing: content-box; // 1\n height: 0; // 1\n overflow: visible; // 2\n}\n\n\n//\n// Typography\n//\n\n// Remove top margins from headings\n//\n// By default, `

`-`

` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n// stylelint-disable-next-line selector-list-comma-newline-after\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: $headings-margin-bottom;\n}\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

`s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n// Abbreviations\n//\n// 1. Duplicate behavior to the data-* attribute for our tooltip plugin\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n// 3. Add explicit cursor to indicate changed behavior.\n// 4. Remove the bottom border in Firefox 39-.\n// 5. Prevent the text-decoration to be skipped.\n\nabbr[title],\nabbr[data-original-title] { // 1\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n cursor: help; // 3\n border-bottom: 0; // 4\n text-decoration-skip-ink: none; // 5\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // Undo browser default\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: $font-weight-bolder; // Add the correct font weight in Chrome, Edge, and Safari\n}\n\nsmall {\n @include font-size(80%); // Add the correct font size in all browsers\n}\n\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n//\n\nsub,\nsup {\n position: relative;\n @include font-size(75%);\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n//\n// Links\n//\n\na {\n color: $link-color;\n text-decoration: $link-decoration;\n background-color: transparent; // Remove the gray background on active links in IE 10.\n\n @include hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href)\n// which have not been made explicitly keyboard-focusable (without tabindex).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n\n @include hover-focus {\n color: inherit;\n text-decoration: none;\n }\n\n &:focus {\n outline: 0;\n }\n}\n\n\n//\n// Code\n//\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-monospace;\n @include font-size(1em); // Correct the odd `em` font sizing in all browsers.\n}\n\npre {\n // Remove browser default top margin\n margin-top: 0;\n // Reset browser default of `1em` to use `rem`s\n margin-bottom: 1rem;\n // Don't allow content to break outside\n overflow: auto;\n}\n\n\n//\n// Figures\n//\n\nfigure {\n // Apply a consistent margin strategy (matches our type styles).\n margin: 0 0 1rem;\n}\n\n\n//\n// Images and content\n//\n\nimg {\n vertical-align: middle;\n border-style: none; // Remove the border on images inside links in IE 10-.\n}\n\nsvg {\n // Workaround for the SVG overflow bug in IE10/11 is still required.\n // See https://github.com/twbs/bootstrap/issues/26878\n overflow: hidden;\n vertical-align: middle;\n}\n\n\n//\n// Tables\n//\n\ntable {\n border-collapse: collapse; // Prevent double borders\n}\n\ncaption {\n padding-top: $table-cell-padding;\n padding-bottom: $table-cell-padding;\n color: $table-caption-color;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n // Matches default `` alignment by inheriting from the ``, or the\n // closest parent with a set `text-align`.\n text-align: inherit;\n}\n\n\n//\n// Forms\n//\n\nlabel {\n // Allow labels to use `margin` for spacing.\n display: inline-block;\n margin-bottom: $label-margin-bottom;\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n//\n// Details at https://github.com/twbs/bootstrap/issues/24093\nbutton {\n // stylelint-disable-next-line property-blacklist\n border-radius: 0;\n}\n\n// Work around a Firefox/IE bug where the transparent `button` background\n// results in a loss of the default `button` focus styles.\n//\n// Credit: https://github.com/suitcss/base/\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // Remove the margin in Firefox and Safari\n font-family: inherit;\n @include font-size(inherit);\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible; // Show the overflow in Edge\n}\n\nbutton,\nselect {\n text-transform: none; // Remove the inheritance of text transform in Firefox\n}\n\n// Remove the inheritance of word-wrap in Safari.\n//\n// Details at https://github.com/twbs/bootstrap/issues/24990\nselect {\n word-wrap: normal;\n}\n\n\n// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\n// controls in Android 4.\n// 2. Correct the inability to style clickable types in iOS and Safari.\nbutton,\n[type=\"button\"], // 1\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button; // 2\n}\n\n// Opinionated: add \"hand\" cursor to non-disabled button elements.\n@if $enable-pointer-cursor-for-buttons {\n button,\n [type=\"button\"],\n [type=\"reset\"],\n [type=\"submit\"] {\n &:not(:disabled) {\n cursor: pointer;\n }\n }\n}\n\n// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box; // 1. Add the correct box sizing in IE 10-\n padding: 0; // 2. Remove the padding in IE 10-\n}\n\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n // Remove the default appearance of temporal inputs to avoid a Mobile Safari\n // bug where setting a custom line-height prevents text from being vertically\n // centered within the input.\n // See https://bugs.webkit.org/show_bug.cgi?id=139848\n // and https://github.com/twbs/bootstrap/issues/11266\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto; // Remove the default vertical scrollbar in IE.\n // Textareas should really only resize vertically so they don't break their (horizontal) containers.\n resize: vertical;\n}\n\nfieldset {\n // Browsers set a default `min-width: min-content;` on fieldsets,\n // unlike e.g. `

`s, which have `min-width: 0;` by default.\n // So we reset that to ensure fieldsets behave more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359\n // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements\n min-width: 0;\n // Reset the default outline behavior of fieldsets so they don't affect page layout.\n padding: 0;\n margin: 0;\n border: 0;\n}\n\n// 1. Correct the text wrapping in Edge and IE.\n// 2. Correct the color inheritance from `fieldset` elements in IE.\nlegend {\n display: block;\n width: 100%;\n max-width: 100%; // 1\n padding: 0;\n margin-bottom: .5rem;\n @include font-size(1.5rem);\n line-height: inherit;\n color: inherit; // 2\n white-space: normal; // 1\n}\n\nprogress {\n vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.\n}\n\n// Correct the cursor style of increment and decrement buttons in Chrome.\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n outline-offset: -2px; // 2. Correct the outline style in Safari.\n -webkit-appearance: none;\n}\n\n//\n// Remove the inner padding in Chrome and Safari on macOS.\n//\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// 1. Correct the inability to style clickable types in iOS and Safari.\n// 2. Change font properties to `inherit` in Safari.\n//\n\n::-webkit-file-upload-button {\n font: inherit; // 2\n -webkit-appearance: button; // 1\n}\n\n//\n// Correct element displays\n//\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item; // Add the correct display in all browsers\n cursor: pointer;\n}\n\ntemplate {\n display: none; // Add the correct display in IE\n}\n\n// Always hide an element with the `hidden` HTML attribute (from PureCSS).\n// Needed for proper display in IE 10-.\n[hidden] {\n display: none !important;\n}\n","/*!\n * Bootstrap v4.3.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n:root {\n --blue: #007bff;\n --indigo: #6610f2;\n --purple: #6f42c1;\n --pink: #e83e8c;\n --red: #dc3545;\n --orange: #fd7e14;\n --yellow: #ffc107;\n --green: #28a745;\n --teal: #20c997;\n --cyan: #17a2b8;\n --white: #fff;\n --gray: #6c757d;\n --gray-dark: #343a40;\n --primary: #007bff;\n --secondary: #6c757d;\n --success: #28a745;\n --info: #17a2b8;\n --warning: #ffc107;\n --danger: #dc3545;\n --light: #f8f9fa;\n --dark: #343a40;\n --breakpoint-xs: 0;\n --breakpoint-sm: 576px;\n --breakpoint-md: 768px;\n --breakpoint-lg: 992px;\n --breakpoint-xl: 1200px;\n --font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n -webkit-text-decoration-skip-ink: none;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nselect {\n word-wrap: normal;\n}\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton:not(:disabled),\n[type=\"button\"]:not(:disabled),\n[type=\"reset\"]:not(:disabled),\n[type=\"submit\"]:not(:disabled) {\n cursor: pointer;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n}\n\nh1, .h1 {\n font-size: 2.5rem;\n}\n\nh2, .h2 {\n font-size: 2rem;\n}\n\nh3, .h3 {\n font-size: 1.75rem;\n}\n\nh4, .h4 {\n font-size: 1.5rem;\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: 6rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-2 {\n font-size: 5.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-3 {\n font-size: 4.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-4 {\n font-size: 3.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\nhr {\n margin-top: 1rem;\n margin-bottom: 1rem;\n border: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n}\n\nsmall,\n.small {\n font-size: 80%;\n font-weight: 400;\n}\n\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n\n.blockquote-footer {\n display: block;\n font-size: 80%;\n color: #6c757d;\n}\n\n.blockquote-footer::before {\n content: \"\\2014\\00A0\";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: #fff;\n border: 1px solid #dee2e6;\n border-radius: 0.25rem;\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 90%;\n color: #6c757d;\n}\n\ncode {\n font-size: 87.5%;\n color: #e83e8c;\n word-break: break-word;\n}\n\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.2rem 0.4rem;\n font-size: 87.5%;\n color: #fff;\n background-color: #212529;\n border-radius: 0.2rem;\n}\n\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n}\n\npre {\n display: block;\n font-size: 87.5%;\n color: #212529;\n}\n\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n}\n\n.col-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n -ms-flex-order: -1;\n order: -1;\n}\n\n.order-last {\n -ms-flex-order: 13;\n order: 13;\n}\n\n.order-0 {\n -ms-flex-order: 0;\n order: 0;\n}\n\n.order-1 {\n -ms-flex-order: 1;\n order: 1;\n}\n\n.order-2 {\n -ms-flex-order: 2;\n order: 2;\n}\n\n.order-3 {\n -ms-flex-order: 3;\n order: 3;\n}\n\n.order-4 {\n -ms-flex-order: 4;\n order: 4;\n}\n\n.order-5 {\n -ms-flex-order: 5;\n order: 5;\n}\n\n.order-6 {\n -ms-flex-order: 6;\n order: 6;\n}\n\n.order-7 {\n -ms-flex-order: 7;\n order: 7;\n}\n\n.order-8 {\n -ms-flex-order: 8;\n order: 8;\n}\n\n.order-9 {\n -ms-flex-order: 9;\n order: 9;\n}\n\n.order-10 {\n -ms-flex-order: 10;\n order: 10;\n}\n\n.order-11 {\n -ms-flex-order: 11;\n order: 11;\n}\n\n.order-12 {\n -ms-flex-order: 12;\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-sm-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-sm-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-sm-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-sm-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-sm-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-sm-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-sm-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-sm-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-sm-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-sm-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-sm-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-sm-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-sm-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-sm-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-sm-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-md-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-md-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-md-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-md-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-md-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-md-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-md-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-md-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-md-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-md-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-md-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-md-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-md-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-md-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-md-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-lg-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-lg-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-lg-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-lg-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-lg-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-lg-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-lg-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-lg-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-lg-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-lg-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-lg-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-lg-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-lg-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-lg-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-lg-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-xl-1 {\n -ms-flex: 0 0 8.333333%;\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n -ms-flex: 0 0 16.666667%;\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n -ms-flex: 0 0 25%;\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n -ms-flex: 0 0 33.333333%;\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n -ms-flex: 0 0 41.666667%;\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n -ms-flex: 0 0 50%;\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n -ms-flex: 0 0 58.333333%;\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n -ms-flex: 0 0 66.666667%;\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n -ms-flex: 0 0 75%;\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n -ms-flex: 0 0 83.333333%;\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n -ms-flex: 0 0 91.666667%;\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n -ms-flex: 0 0 100%;\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n -ms-flex-order: -1;\n order: -1;\n }\n .order-xl-last {\n -ms-flex-order: 13;\n order: 13;\n }\n .order-xl-0 {\n -ms-flex-order: 0;\n order: 0;\n }\n .order-xl-1 {\n -ms-flex-order: 1;\n order: 1;\n }\n .order-xl-2 {\n -ms-flex-order: 2;\n order: 2;\n }\n .order-xl-3 {\n -ms-flex-order: 3;\n order: 3;\n }\n .order-xl-4 {\n -ms-flex-order: 4;\n order: 4;\n }\n .order-xl-5 {\n -ms-flex-order: 5;\n order: 5;\n }\n .order-xl-6 {\n -ms-flex-order: 6;\n order: 6;\n }\n .order-xl-7 {\n -ms-flex-order: 7;\n order: 7;\n }\n .order-xl-8 {\n -ms-flex-order: 8;\n order: 8;\n }\n .order-xl-9 {\n -ms-flex-order: 9;\n order: 9;\n }\n .order-xl-10 {\n -ms-flex-order: 10;\n order: 10;\n }\n .order-xl-11 {\n -ms-flex-order: 11;\n order: 11;\n }\n .order-xl-12 {\n -ms-flex-order: 12;\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.table {\n width: 100%;\n margin-bottom: 1rem;\n color: #212529;\n}\n\n.table th,\n.table td {\n padding: 0.75rem;\n vertical-align: top;\n border-top: 1px solid #dee2e6;\n}\n\n.table thead th {\n vertical-align: bottom;\n border-bottom: 2px solid #dee2e6;\n}\n\n.table tbody + tbody {\n border-top: 2px solid #dee2e6;\n}\n\n.table-sm th,\n.table-sm td {\n padding: 0.3rem;\n}\n\n.table-bordered {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered th,\n.table-bordered td {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered thead th,\n.table-bordered thead td {\n border-bottom-width: 2px;\n}\n\n.table-borderless th,\n.table-borderless td,\n.table-borderless thead th,\n.table-borderless tbody + tbody {\n border: 0;\n}\n\n.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n.table-hover tbody tr:hover {\n color: #212529;\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-primary,\n.table-primary > th,\n.table-primary > td {\n background-color: #b8daff;\n}\n\n.table-primary th,\n.table-primary td,\n.table-primary thead th,\n.table-primary tbody + tbody {\n border-color: #7abaff;\n}\n\n.table-hover .table-primary:hover {\n background-color: #9fcdff;\n}\n\n.table-hover .table-primary:hover > td,\n.table-hover .table-primary:hover > th {\n background-color: #9fcdff;\n}\n\n.table-secondary,\n.table-secondary > th,\n.table-secondary > td {\n background-color: #d6d8db;\n}\n\n.table-secondary th,\n.table-secondary td,\n.table-secondary thead th,\n.table-secondary tbody + tbody {\n border-color: #b3b7bb;\n}\n\n.table-hover .table-secondary:hover {\n background-color: #c8cbcf;\n}\n\n.table-hover .table-secondary:hover > td,\n.table-hover .table-secondary:hover > th {\n background-color: #c8cbcf;\n}\n\n.table-success,\n.table-success > th,\n.table-success > td {\n background-color: #c3e6cb;\n}\n\n.table-success th,\n.table-success td,\n.table-success thead th,\n.table-success tbody + tbody {\n border-color: #8fd19e;\n}\n\n.table-hover .table-success:hover {\n background-color: #b1dfbb;\n}\n\n.table-hover .table-success:hover > td,\n.table-hover .table-success:hover > th {\n background-color: #b1dfbb;\n}\n\n.table-info,\n.table-info > th,\n.table-info > td {\n background-color: #bee5eb;\n}\n\n.table-info th,\n.table-info td,\n.table-info thead th,\n.table-info tbody + tbody {\n border-color: #86cfda;\n}\n\n.table-hover .table-info:hover {\n background-color: #abdde5;\n}\n\n.table-hover .table-info:hover > td,\n.table-hover .table-info:hover > th {\n background-color: #abdde5;\n}\n\n.table-warning,\n.table-warning > th,\n.table-warning > td {\n background-color: #ffeeba;\n}\n\n.table-warning th,\n.table-warning td,\n.table-warning thead th,\n.table-warning tbody + tbody {\n border-color: #ffdf7e;\n}\n\n.table-hover .table-warning:hover {\n background-color: #ffe8a1;\n}\n\n.table-hover .table-warning:hover > td,\n.table-hover .table-warning:hover > th {\n background-color: #ffe8a1;\n}\n\n.table-danger,\n.table-danger > th,\n.table-danger > td {\n background-color: #f5c6cb;\n}\n\n.table-danger th,\n.table-danger td,\n.table-danger thead th,\n.table-danger tbody + tbody {\n border-color: #ed969e;\n}\n\n.table-hover .table-danger:hover {\n background-color: #f1b0b7;\n}\n\n.table-hover .table-danger:hover > td,\n.table-hover .table-danger:hover > th {\n background-color: #f1b0b7;\n}\n\n.table-light,\n.table-light > th,\n.table-light > td {\n background-color: #fdfdfe;\n}\n\n.table-light th,\n.table-light td,\n.table-light thead th,\n.table-light tbody + tbody {\n border-color: #fbfcfc;\n}\n\n.table-hover .table-light:hover {\n background-color: #ececf6;\n}\n\n.table-hover .table-light:hover > td,\n.table-hover .table-light:hover > th {\n background-color: #ececf6;\n}\n\n.table-dark,\n.table-dark > th,\n.table-dark > td {\n background-color: #c6c8ca;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th,\n.table-dark tbody + tbody {\n border-color: #95999c;\n}\n\n.table-hover .table-dark:hover {\n background-color: #b9bbbe;\n}\n\n.table-hover .table-dark:hover > td,\n.table-hover .table-dark:hover > th {\n background-color: #b9bbbe;\n}\n\n.table-active,\n.table-active > th,\n.table-active > td {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover > td,\n.table-hover .table-active:hover > th {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table .thead-dark th {\n color: #fff;\n background-color: #343a40;\n border-color: #454d55;\n}\n\n.table .thead-light th {\n color: #495057;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.table-dark {\n color: #fff;\n background-color: #343a40;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th {\n border-color: #454d55;\n}\n\n.table-dark.table-bordered {\n border: 0;\n}\n\n.table-dark.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(255, 255, 255, 0.05);\n}\n\n.table-dark.table-hover tbody tr:hover {\n color: #fff;\n background-color: rgba(255, 255, 255, 0.075);\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-sm > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 767.98px) {\n .table-responsive-md {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-md > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-lg > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-xl > .table-bordered {\n border: 0;\n }\n}\n\n.table-responsive {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.table-responsive > .table-bordered {\n border: 0;\n}\n\n.form-control {\n display: block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n\n.form-control:focus {\n color: #495057;\n background-color: #fff;\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.form-control::-webkit-input-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control::-moz-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control:-ms-input-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control::-ms-input-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control::placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control:disabled, .form-control[readonly] {\n background-color: #e9ecef;\n opacity: 1;\n}\n\nselect.form-control:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + 1px);\n padding-bottom: calc(0.375rem + 1px);\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + 1px);\n padding-bottom: calc(0.5rem + 1px);\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + 1px);\n padding-bottom: calc(0.25rem + 1px);\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n margin-bottom: 0;\n line-height: 1.5;\n color: #212529;\n background-color: transparent;\n border: solid transparent;\n border-width: 1px 0;\n}\n\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.form-control-lg {\n height: calc(1.5em + 1rem + 2px);\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\nselect.form-control[size], select.form-control[multiple] {\n height: auto;\n}\n\ntextarea.form-control {\n height: auto;\n}\n\n.form-group {\n margin-bottom: 1rem;\n}\n\n.form-text {\n display: block;\n margin-top: 0.25rem;\n}\n\n.form-row {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-right: -5px;\n margin-left: -5px;\n}\n\n.form-row > .col,\n.form-row > [class*=\"col-\"] {\n padding-right: 5px;\n padding-left: 5px;\n}\n\n.form-check {\n position: relative;\n display: block;\n padding-left: 1.25rem;\n}\n\n.form-check-input {\n position: absolute;\n margin-top: 0.3rem;\n margin-left: -1.25rem;\n}\n\n.form-check-input:disabled ~ .form-check-label {\n color: #6c757d;\n}\n\n.form-check-label {\n margin-bottom: 0;\n}\n\n.form-check-inline {\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-align: center;\n align-items: center;\n padding-left: 0;\n margin-right: 0.75rem;\n}\n\n.form-check-inline .form-check-input {\n position: static;\n margin-top: 0;\n margin-right: 0.3125rem;\n margin-left: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #28a745;\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(40, 167, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: #28a745;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .form-control:valid ~ .valid-feedback,\n.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,\n.form-control.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:valid, .custom-select.is-valid {\n border-color: #28a745;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e\") no-repeat right 0.75rem center/8px 10px, url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-select:valid ~ .valid-feedback,\n.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,\n.custom-select.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:valid ~ .valid-feedback,\n.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,\n.form-control-file.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: #28a745;\n}\n\n.was-validated .form-check-input:valid ~ .valid-feedback,\n.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,\n.form-check-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {\n color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .valid-feedback,\n.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,\n.custom-control-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {\n border-color: #34ce57;\n background-color: #34ce57;\n}\n\n.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .valid-feedback,\n.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,\n.custom-file-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #dc3545;\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(220, 53, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: #dc3545;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E\");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .form-control:invalid ~ .invalid-feedback,\n.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,\n.form-control.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:invalid, .custom-select.is-invalid {\n border-color: #dc3545;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e\") no-repeat right 0.75rem center/8px 10px, url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E\") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-select:invalid ~ .invalid-feedback,\n.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,\n.custom-select.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:invalid ~ .invalid-feedback,\n.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,\n.form-control-file.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: #dc3545;\n}\n\n.was-validated .form-check-input:invalid ~ .invalid-feedback,\n.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,\n.form-check-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {\n color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .invalid-feedback,\n.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,\n.custom-control-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {\n border-color: #e4606d;\n background-color: #e4606d;\n}\n\n.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .invalid-feedback,\n.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,\n.custom-file-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.form-inline {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.form-inline .form-check {\n width: 100%;\n}\n\n@media (min-width: 576px) {\n .form-inline label {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n margin-bottom: 0;\n }\n .form-inline .form-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n -ms-flex-align: center;\n align-items: center;\n margin-bottom: 0;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-plaintext {\n display: inline-block;\n }\n .form-inline .input-group,\n .form-inline .custom-select {\n width: auto;\n }\n .form-inline .form-check {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: auto;\n padding-left: 0;\n }\n .form-inline .form-check-input {\n position: relative;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n margin-top: 0;\n margin-right: 0.25rem;\n margin-left: 0;\n }\n .form-inline .custom-control {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n }\n .form-inline .custom-control-label {\n margin-bottom: 0;\n }\n}\n\n.btn {\n display: inline-block;\n font-weight: 400;\n color: #212529;\n text-align: center;\n vertical-align: middle;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n background-color: transparent;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n\n.btn:hover {\n color: #212529;\n text-decoration: none;\n}\n\n.btn:focus, .btn.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.btn.disabled, .btn:disabled {\n opacity: 0.65;\n}\n\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:hover {\n color: #fff;\n background-color: #0069d9;\n border-color: #0062cc;\n}\n\n.btn-primary:focus, .btn-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-primary.disabled, .btn-primary:disabled {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,\n.show > .btn-primary.dropdown-toggle {\n color: #fff;\n background-color: #0062cc;\n border-color: #005cbf;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:hover {\n color: #fff;\n background-color: #5a6268;\n border-color: #545b62;\n}\n\n.btn-secondary:focus, .btn-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-secondary.disabled, .btn-secondary:disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-secondary.dropdown-toggle {\n color: #fff;\n background-color: #545b62;\n border-color: #4e555b;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-success {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:hover {\n color: #fff;\n background-color: #218838;\n border-color: #1e7e34;\n}\n\n.btn-success:focus, .btn-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-success.disabled, .btn-success:disabled {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,\n.show > .btn-success.dropdown-toggle {\n color: #fff;\n background-color: #1e7e34;\n border-color: #1c7430;\n}\n\n.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-info {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:hover {\n color: #fff;\n background-color: #138496;\n border-color: #117a8b;\n}\n\n.btn-info:focus, .btn-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-info.disabled, .btn-info:disabled {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,\n.show > .btn-info.dropdown-toggle {\n color: #fff;\n background-color: #117a8b;\n border-color: #10707f;\n}\n\n.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-warning {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:hover {\n color: #212529;\n background-color: #e0a800;\n border-color: #d39e00;\n}\n\n.btn-warning:focus, .btn-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-warning.disabled, .btn-warning:disabled {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,\n.show > .btn-warning.dropdown-toggle {\n color: #212529;\n background-color: #d39e00;\n border-color: #c69500;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:hover {\n color: #fff;\n background-color: #c82333;\n border-color: #bd2130;\n}\n\n.btn-danger:focus, .btn-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-danger.disabled, .btn-danger:disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,\n.show > .btn-danger.dropdown-toggle {\n color: #fff;\n background-color: #bd2130;\n border-color: #b21f2d;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-light {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:hover {\n color: #212529;\n background-color: #e2e6ea;\n border-color: #dae0e5;\n}\n\n.btn-light:focus, .btn-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-light.disabled, .btn-light:disabled {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,\n.show > .btn-light.dropdown-toggle {\n color: #212529;\n background-color: #dae0e5;\n border-color: #d3d9df;\n}\n\n.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-dark {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:hover {\n color: #fff;\n background-color: #23272b;\n border-color: #1d2124;\n}\n\n.btn-dark:focus, .btn-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-dark.disabled, .btn-dark:disabled {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,\n.show > .btn-dark.dropdown-toggle {\n color: #fff;\n background-color: #1d2124;\n border-color: #171a1d;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-outline-primary {\n color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:hover {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:focus, .btn-outline-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-primary.disabled, .btn-outline-primary:disabled {\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-primary.dropdown-toggle {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-secondary {\n color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:hover {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:focus, .btn-outline-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {\n color: #6c757d;\n background-color: transparent;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-secondary.dropdown-toggle {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-success {\n color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:hover {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:focus, .btn-outline-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-success.disabled, .btn-outline-success:disabled {\n color: #28a745;\n background-color: transparent;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,\n.show > .btn-outline-success.dropdown-toggle {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-info {\n color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:hover {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:focus, .btn-outline-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-info.disabled, .btn-outline-info:disabled {\n color: #17a2b8;\n background-color: transparent;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,\n.show > .btn-outline-info.dropdown-toggle {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-warning {\n color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:hover {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:focus, .btn-outline-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-warning.disabled, .btn-outline-warning:disabled {\n color: #ffc107;\n background-color: transparent;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,\n.show > .btn-outline-warning.dropdown-toggle {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-danger {\n color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:hover {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:focus, .btn-outline-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-danger.disabled, .btn-outline-danger:disabled {\n color: #dc3545;\n background-color: transparent;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,\n.show > .btn-outline-danger.dropdown-toggle {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-light {\n color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:hover {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:focus, .btn-outline-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-light.disabled, .btn-outline-light:disabled {\n color: #f8f9fa;\n background-color: transparent;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,\n.show > .btn-outline-light.dropdown-toggle {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-dark {\n color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:hover {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:focus, .btn-outline-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-outline-dark.disabled, .btn-outline-dark:disabled {\n color: #343a40;\n background-color: transparent;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,\n.show > .btn-outline-dark.dropdown-toggle {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-link {\n font-weight: 400;\n color: #007bff;\n text-decoration: none;\n}\n\n.btn-link:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\n.btn-link:focus, .btn-link.focus {\n text-decoration: underline;\n box-shadow: none;\n}\n\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n pointer-events: none;\n}\n\n.btn-lg, .btn-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.btn-sm, .btn-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n.btn-block + .btn-block {\n margin-top: 0.5rem;\n}\n\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n\n.dropup,\n.dropright,\n.dropdown,\n.dropleft {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 10rem;\n padding: 0.5rem 0;\n margin: 0.125rem 0 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.25rem;\n}\n\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 768px) {\n .dropdown-menu-md-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 992px) {\n .dropdown-menu-lg-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 1200px) {\n .dropdown-menu-xl-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-right {\n right: 0;\n left: auto;\n }\n}\n\n.dropup .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: 0.125rem;\n}\n\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-menu {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: 0.125rem;\n}\n\n.dropright .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n\n.dropright .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropleft .dropdown-menu {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: 0.125rem;\n}\n\n.dropleft .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n\n.dropleft .dropdown-toggle::after {\n display: none;\n}\n\n.dropleft .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n\n.dropleft .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-menu[x-placement^=\"top\"], .dropdown-menu[x-placement^=\"right\"], .dropdown-menu[x-placement^=\"bottom\"], .dropdown-menu[x-placement^=\"left\"] {\n right: auto;\n bottom: auto;\n}\n\n.dropdown-divider {\n height: 0;\n margin: 0.5rem 0;\n overflow: hidden;\n border-top: 1px solid #e9ecef;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: 0.25rem 1.5rem;\n clear: both;\n font-weight: 400;\n color: #212529;\n text-align: inherit;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n}\n\n.dropdown-item:hover, .dropdown-item:focus {\n color: #16181b;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.dropdown-item.active, .dropdown-item:active {\n color: #fff;\n text-decoration: none;\n background-color: #007bff;\n}\n\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: 0.5rem 1.5rem;\n margin-bottom: 0;\n font-size: 0.875rem;\n color: #6c757d;\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: 0.25rem 1.5rem;\n color: #212529;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: -ms-inline-flexbox;\n display: inline-flex;\n vertical-align: middle;\n}\n\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n}\n\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover {\n z-index: 1;\n}\n\n.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) {\n margin-left: -1px;\n}\n\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n\n.dropdown-toggle-split::after,\n.dropup .dropdown-toggle-split::after,\n.dropright .dropdown-toggle-split::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-align: start;\n align-items: flex-start;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: -1px;\n}\n\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.btn-group-toggle > .btn,\n.btn-group-toggle > .btn-group > .btn {\n margin-bottom: 0;\n}\n\n.btn-group-toggle > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn input[type=\"checkbox\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n\n.input-group {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: stretch;\n align-items: stretch;\n width: 100%;\n}\n\n.input-group > .form-control,\n.input-group > .form-control-plaintext,\n.input-group > .custom-select,\n.input-group > .custom-file {\n position: relative;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n width: 1%;\n margin-bottom: 0;\n}\n\n.input-group > .form-control + .form-control,\n.input-group > .form-control + .custom-select,\n.input-group > .form-control + .custom-file,\n.input-group > .form-control-plaintext + .form-control,\n.input-group > .form-control-plaintext + .custom-select,\n.input-group > .form-control-plaintext + .custom-file,\n.input-group > .custom-select + .form-control,\n.input-group > .custom-select + .custom-select,\n.input-group > .custom-select + .custom-file,\n.input-group > .custom-file + .form-control,\n.input-group > .custom-file + .custom-select,\n.input-group > .custom-file + .custom-file {\n margin-left: -1px;\n}\n\n.input-group > .form-control:focus,\n.input-group > .custom-select:focus,\n.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {\n z-index: 3;\n}\n\n.input-group > .custom-file .custom-file-input:focus {\n z-index: 4;\n}\n\n.input-group > .form-control:not(:last-child),\n.input-group > .custom-select:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .form-control:not(:first-child),\n.input-group > .custom-select:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group > .custom-file {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.input-group > .custom-file:not(:last-child) .custom-file-label,\n.input-group > .custom-file:not(:last-child) .custom-file-label::after {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .custom-file:not(:first-child) .custom-file-label {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group-prepend,\n.input-group-append {\n display: -ms-flexbox;\n display: flex;\n}\n\n.input-group-prepend .btn,\n.input-group-append .btn {\n position: relative;\n z-index: 2;\n}\n\n.input-group-prepend .btn:focus,\n.input-group-append .btn:focus {\n z-index: 3;\n}\n\n.input-group-prepend .btn + .btn,\n.input-group-prepend .btn + .input-group-text,\n.input-group-prepend .input-group-text + .input-group-text,\n.input-group-prepend .input-group-text + .btn,\n.input-group-append .btn + .btn,\n.input-group-append .btn + .input-group-text,\n.input-group-append .input-group-text + .input-group-text,\n.input-group-append .input-group-text + .btn {\n margin-left: -1px;\n}\n\n.input-group-prepend {\n margin-right: -1px;\n}\n\n.input-group-append {\n margin-left: -1px;\n}\n\n.input-group-text {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.375rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n text-align: center;\n white-space: nowrap;\n background-color: #e9ecef;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.input-group-text input[type=\"radio\"],\n.input-group-text input[type=\"checkbox\"] {\n margin-top: 0;\n}\n\n.input-group-lg > .form-control:not(textarea),\n.input-group-lg > .custom-select {\n height: calc(1.5em + 1rem + 2px);\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .custom-select,\n.input-group-lg > .input-group-prepend > .input-group-text,\n.input-group-lg > .input-group-append > .input-group-text,\n.input-group-lg > .input-group-prepend > .btn,\n.input-group-lg > .input-group-append > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.input-group-sm > .form-control:not(textarea),\n.input-group-sm > .custom-select {\n height: calc(1.5em + 0.5rem + 2px);\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .custom-select,\n.input-group-sm > .input-group-prepend > .input-group-text,\n.input-group-sm > .input-group-append > .input-group-text,\n.input-group-sm > .input-group-prepend > .btn,\n.input-group-sm > .input-group-append > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.input-group-lg > .custom-select,\n.input-group-sm > .custom-select {\n padding-right: 1.75rem;\n}\n\n.input-group > .input-group-prepend > .btn,\n.input-group > .input-group-prepend > .input-group-text,\n.input-group > .input-group-append:not(:last-child) > .btn,\n.input-group > .input-group-append:not(:last-child) > .input-group-text,\n.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .input-group-append > .btn,\n.input-group > .input-group-append > .input-group-text,\n.input-group > .input-group-prepend:not(:first-child) > .btn,\n.input-group > .input-group-prepend:not(:first-child) > .input-group-text,\n.input-group > .input-group-prepend:first-child > .btn:not(:first-child),\n.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.custom-control {\n position: relative;\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5rem;\n}\n\n.custom-control-inline {\n display: -ms-inline-flexbox;\n display: inline-flex;\n margin-right: 1rem;\n}\n\n.custom-control-input {\n position: absolute;\n z-index: -1;\n opacity: 0;\n}\n\n.custom-control-input:checked ~ .custom-control-label::before {\n color: #fff;\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-control-input:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #80bdff;\n}\n\n.custom-control-input:not(:disabled):active ~ .custom-control-label::before {\n color: #fff;\n background-color: #b3d7ff;\n border-color: #b3d7ff;\n}\n\n.custom-control-input:disabled ~ .custom-control-label {\n color: #6c757d;\n}\n\n.custom-control-input:disabled ~ .custom-control-label::before {\n background-color: #e9ecef;\n}\n\n.custom-control-label {\n position: relative;\n margin-bottom: 0;\n vertical-align: top;\n}\n\n.custom-control-label::before {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n pointer-events: none;\n content: \"\";\n background-color: #fff;\n border: #adb5bd solid 1px;\n}\n\n.custom-control-label::after {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n content: \"\";\n background: no-repeat 50% / 50% 50%;\n}\n\n.custom-checkbox .custom-control-label::before {\n border-radius: 0.25rem;\n}\n\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e\");\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e\");\n}\n\n.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-radio .custom-control-label::before {\n border-radius: 50%;\n}\n\n.custom-radio .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n\n.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-switch {\n padding-left: 2.25rem;\n}\n\n.custom-switch .custom-control-label::before {\n left: -2.25rem;\n width: 1.75rem;\n pointer-events: all;\n border-radius: 0.5rem;\n}\n\n.custom-switch .custom-control-label::after {\n top: calc(0.25rem + 2px);\n left: calc(-2.25rem + 2px);\n width: calc(1rem - 4px);\n height: calc(1rem - 4px);\n background-color: #adb5bd;\n border-radius: 0.5rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;\n transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-switch .custom-control-label::after {\n transition: none;\n }\n}\n\n.custom-switch .custom-control-input:checked ~ .custom-control-label::after {\n background-color: #fff;\n -webkit-transform: translateX(0.75rem);\n transform: translateX(0.75rem);\n}\n\n.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-select {\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 1.75rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n vertical-align: middle;\n background: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e\") no-repeat right 0.75rem center/8px 10px;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.custom-select:focus {\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-select:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.custom-select[multiple], .custom-select[size]:not([size=\"1\"]) {\n height: auto;\n padding-right: 0.75rem;\n background-image: none;\n}\n\n.custom-select:disabled {\n color: #6c757d;\n background-color: #e9ecef;\n}\n\n.custom-select::-ms-expand {\n display: none;\n}\n\n.custom-select-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n}\n\n.custom-select-lg {\n height: calc(1.5em + 1rem + 2px);\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n}\n\n.custom-file {\n position: relative;\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin-bottom: 0;\n}\n\n.custom-file-input {\n position: relative;\n z-index: 2;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin: 0;\n opacity: 0;\n}\n\n.custom-file-input:focus ~ .custom-file-label {\n border-color: #80bdff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-file-input:disabled ~ .custom-file-label {\n background-color: #e9ecef;\n}\n\n.custom-file-input:lang(en) ~ .custom-file-label::after {\n content: \"Browse\";\n}\n\n.custom-file-input ~ .custom-file-label[data-browse]::after {\n content: attr(data-browse);\n}\n\n.custom-file-label {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.custom-file-label::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n z-index: 3;\n display: block;\n height: calc(1.5em + 0.75rem);\n padding: 0.375rem 0.75rem;\n line-height: 1.5;\n color: #495057;\n content: \"Browse\";\n background-color: #e9ecef;\n border-left: inherit;\n border-radius: 0 0.25rem 0.25rem 0;\n}\n\n.custom-range {\n width: 100%;\n height: calc(1rem + 0.4rem);\n padding: 0;\n background-color: transparent;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.custom-range:focus {\n outline: none;\n}\n\n.custom-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-ms-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range::-moz-focus-outer {\n border: 0;\n}\n\n.custom-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-webkit-slider-thumb {\n transition: none;\n }\n}\n\n.custom-range::-webkit-slider-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -moz-appearance: none;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-moz-range-thumb {\n transition: none;\n }\n}\n\n.custom-range::-moz-range-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: 0;\n margin-right: 0.2rem;\n margin-left: 0.2rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-ms-thumb {\n transition: none;\n }\n}\n\n.custom-range::-ms-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-ms-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: transparent;\n border-color: transparent;\n border-width: 0.5rem;\n}\n\n.custom-range::-ms-fill-lower {\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-fill-upper {\n margin-right: 15px;\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range:disabled::-webkit-slider-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-webkit-slider-runnable-track {\n cursor: default;\n}\n\n.custom-range:disabled::-moz-range-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-moz-range-track {\n cursor: default;\n}\n\n.custom-range:disabled::-ms-thumb {\n background-color: #adb5bd;\n}\n\n.custom-control-label::before,\n.custom-file-label,\n.custom-select {\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-control-label::before,\n .custom-file-label,\n .custom-select {\n transition: none;\n }\n}\n\n.nav {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: 0.5rem 1rem;\n}\n\n.nav-link:hover, .nav-link:focus {\n text-decoration: none;\n}\n\n.nav-link.disabled {\n color: #6c757d;\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n border-bottom: 1px solid #dee2e6;\n}\n\n.nav-tabs .nav-item {\n margin-bottom: -1px;\n}\n\n.nav-tabs .nav-link {\n border: 1px solid transparent;\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n border-color: #e9ecef #e9ecef #dee2e6;\n}\n\n.nav-tabs .nav-link.disabled {\n color: #6c757d;\n background-color: transparent;\n border-color: transparent;\n}\n\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: #495057;\n background-color: #fff;\n border-color: #dee2e6 #dee2e6 #fff;\n}\n\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills .nav-link {\n border-radius: 0.25rem;\n}\n\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: #fff;\n background-color: #007bff;\n}\n\n.nav-fill .nav-item {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified .nav-item {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n text-align: center;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: 0.5rem 1rem;\n}\n\n.navbar > .container,\n.navbar > .container-fluid {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n\n.navbar-brand {\n display: inline-block;\n padding-top: 0.3125rem;\n padding-bottom: 0.3125rem;\n margin-right: 1rem;\n font-size: 1.25rem;\n line-height: inherit;\n white-space: nowrap;\n}\n\n.navbar-brand:hover, .navbar-brand:focus {\n text-decoration: none;\n}\n\n.navbar-nav {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.navbar-nav .nav-link {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-nav .dropdown-menu {\n position: static;\n float: none;\n}\n\n.navbar-text {\n display: inline-block;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navbar-collapse {\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: 0.25rem 0.75rem;\n font-size: 1.25rem;\n line-height: 1;\n background-color: transparent;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.navbar-toggler:hover, .navbar-toggler:focus {\n text-decoration: none;\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n content: \"\";\n background: no-repeat center center;\n background-size: 100% 100%;\n}\n\n@media (max-width: 575.98px) {\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-sm .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 767.98px) {\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 768px) {\n .navbar-expand-md {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-md .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 991.98px) {\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 992px) {\n .navbar-expand-lg {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-lg .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 1199.98px) {\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n }\n .navbar-expand-xl .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n}\n\n.navbar-expand {\n -ms-flex-flow: row nowrap;\n flex-flow: row nowrap;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-expand .navbar-nav {\n -ms-flex-direction: row;\n flex-direction: row;\n}\n\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n\n.navbar-expand .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n}\n\n.navbar-expand .navbar-collapse {\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n}\n\n.navbar-expand .navbar-toggler {\n display: none;\n}\n\n.navbar-light .navbar-brand {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-nav .nav-link {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {\n color: rgba(0, 0, 0, 0.7);\n}\n\n.navbar-light .navbar-nav .nav-link.disabled {\n color: rgba(0, 0, 0, 0.3);\n}\n\n.navbar-light .navbar-nav .show > .nav-link,\n.navbar-light .navbar-nav .active > .nav-link,\n.navbar-light .navbar-nav .nav-link.show,\n.navbar-light .navbar-nav .nav-link.active {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-toggler {\n color: rgba(0, 0, 0, 0.5);\n border-color: rgba(0, 0, 0, 0.1);\n}\n\n.navbar-light .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-light .navbar-text {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-text a {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-dark .navbar-brand {\n color: #fff;\n}\n\n.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {\n color: #fff;\n}\n\n.navbar-dark .navbar-nav .nav-link {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: rgba(255, 255, 255, 0.75);\n}\n\n.navbar-dark .navbar-nav .nav-link.disabled {\n color: rgba(255, 255, 255, 0.25);\n}\n\n.navbar-dark .navbar-nav .show > .nav-link,\n.navbar-dark .navbar-nav .active > .nav-link,\n.navbar-dark .navbar-nav .nav-link.show,\n.navbar-dark .navbar-nav .nav-link.active {\n color: #fff;\n}\n\n.navbar-dark .navbar-toggler {\n color: rgba(255, 255, 255, 0.5);\n border-color: rgba(255, 255, 255, 0.1);\n}\n\n.navbar-dark .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-dark .navbar-text {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-text a {\n color: #fff;\n}\n\n.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {\n color: #fff;\n}\n\n.card {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n\n.card > .list-group:first-child .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.card > .list-group:last-child .list-group-item:last-child {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.card-body {\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: 1.25rem;\n}\n\n.card-title {\n margin-bottom: 0.75rem;\n}\n\n.card-subtitle {\n margin-top: -0.375rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link:hover {\n text-decoration: none;\n}\n\n.card-link + .card-link {\n margin-left: 1.25rem;\n}\n\n.card-header {\n padding: 0.75rem 1.25rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-header + .list-group .list-group-item:first-child {\n border-top: 0;\n}\n\n.card-footer {\n padding: 0.75rem 1.25rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.625rem;\n margin-bottom: -0.75rem;\n margin-left: -0.625rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.625rem;\n margin-left: -0.625rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1.25rem;\n}\n\n.card-img {\n width: 100%;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img-top {\n width: 100%;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img-bottom {\n width: 100%;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n\n.card-deck {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-deck .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-deck {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n margin-right: -15px;\n margin-left: -15px;\n }\n .card-deck .card {\n display: -ms-flexbox;\n display: flex;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n -ms-flex-direction: column;\n flex-direction: column;\n margin-right: 15px;\n margin-bottom: 0;\n margin-left: 15px;\n }\n}\n\n.card-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n}\n\n.card-group > .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-group {\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n }\n .card-group > .card {\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n .card-group > .card:not(:last-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n .card-group > .card:not(:last-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n .card-group > .card:not(:first-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n .card-group > .card:not(:first-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n\n.card-columns .card {\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 576px) {\n .card-columns {\n -webkit-column-count: 3;\n -moz-column-count: 3;\n column-count: 3;\n -webkit-column-gap: 1.25rem;\n -moz-column-gap: 1.25rem;\n column-gap: 1.25rem;\n orphans: 1;\n widows: 1;\n }\n .card-columns .card {\n display: inline-block;\n width: 100%;\n }\n}\n\n.accordion > .card {\n overflow: hidden;\n}\n\n.accordion > .card:not(:first-of-type) .card-header:first-child {\n border-radius: 0;\n}\n\n.accordion > .card:not(:first-of-type):not(:last-of-type) {\n border-bottom: 0;\n border-radius: 0;\n}\n\n.accordion > .card:first-of-type {\n border-bottom: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.accordion > .card:last-of-type {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.accordion > .card .card-header {\n margin-bottom: -1px;\n}\n\n.breadcrumb {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding: 0.75rem 1rem;\n margin-bottom: 1rem;\n list-style: none;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: 0.5rem;\n}\n\n.breadcrumb-item + .breadcrumb-item::before {\n display: inline-block;\n padding-right: 0.5rem;\n color: #6c757d;\n content: \"/\";\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: underline;\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: none;\n}\n\n.breadcrumb-item.active {\n color: #6c757d;\n}\n\n.pagination {\n display: -ms-flexbox;\n display: flex;\n padding-left: 0;\n list-style: none;\n border-radius: 0.25rem;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: 0.5rem 0.75rem;\n margin-left: -1px;\n line-height: 1.25;\n color: #007bff;\n background-color: #fff;\n border: 1px solid #dee2e6;\n}\n\n.page-link:hover {\n z-index: 2;\n color: #0056b3;\n text-decoration: none;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.page-link:focus {\n z-index: 2;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.page-item:first-child .page-link {\n margin-left: 0;\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.page-item:last-child .page-link {\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n}\n\n.page-item.active .page-link {\n z-index: 1;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.page-item.disabled .page-link {\n color: #6c757d;\n pointer-events: none;\n cursor: auto;\n background-color: #fff;\n border-color: #dee2e6;\n}\n\n.pagination-lg .page-link {\n padding: 0.75rem 1.5rem;\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.pagination-lg .page-item:first-child .page-link {\n border-top-left-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.pagination-lg .page-item:last-child .page-link {\n border-top-right-radius: 0.3rem;\n border-bottom-right-radius: 0.3rem;\n}\n\n.pagination-sm .page-link {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.pagination-sm .page-item:first-child .page-link {\n border-top-left-radius: 0.2rem;\n border-bottom-left-radius: 0.2rem;\n}\n\n.pagination-sm .page-item:last-child .page-link {\n border-top-right-radius: 0.2rem;\n border-bottom-right-radius: 0.2rem;\n}\n\n.badge {\n display: inline-block;\n padding: 0.25em 0.4em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .badge {\n transition: none;\n }\n}\n\na.badge:hover, a.badge:focus {\n text-decoration: none;\n}\n\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.badge-pill {\n padding-right: 0.6em;\n padding-left: 0.6em;\n border-radius: 10rem;\n}\n\n.badge-primary {\n color: #fff;\n background-color: #007bff;\n}\n\na.badge-primary:hover, a.badge-primary:focus {\n color: #fff;\n background-color: #0062cc;\n}\n\na.badge-primary:focus, a.badge-primary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.badge-secondary {\n color: #fff;\n background-color: #6c757d;\n}\n\na.badge-secondary:hover, a.badge-secondary:focus {\n color: #fff;\n background-color: #545b62;\n}\n\na.badge-secondary:focus, a.badge-secondary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.badge-success {\n color: #fff;\n background-color: #28a745;\n}\n\na.badge-success:hover, a.badge-success:focus {\n color: #fff;\n background-color: #1e7e34;\n}\n\na.badge-success:focus, a.badge-success.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.badge-info {\n color: #fff;\n background-color: #17a2b8;\n}\n\na.badge-info:hover, a.badge-info:focus {\n color: #fff;\n background-color: #117a8b;\n}\n\na.badge-info:focus, a.badge-info.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.badge-warning {\n color: #212529;\n background-color: #ffc107;\n}\n\na.badge-warning:hover, a.badge-warning:focus {\n color: #212529;\n background-color: #d39e00;\n}\n\na.badge-warning:focus, a.badge-warning.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.badge-danger {\n color: #fff;\n background-color: #dc3545;\n}\n\na.badge-danger:hover, a.badge-danger:focus {\n color: #fff;\n background-color: #bd2130;\n}\n\na.badge-danger:focus, a.badge-danger.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.badge-light {\n color: #212529;\n background-color: #f8f9fa;\n}\n\na.badge-light:hover, a.badge-light:focus {\n color: #212529;\n background-color: #dae0e5;\n}\n\na.badge-light:focus, a.badge-light.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.badge-dark {\n color: #fff;\n background-color: #343a40;\n}\n\na.badge-dark:hover, a.badge-dark:focus {\n color: #fff;\n background-color: #1d2124;\n}\n\na.badge-dark:focus, a.badge-dark.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.jumbotron {\n padding: 2rem 1rem;\n margin-bottom: 2rem;\n background-color: #e9ecef;\n border-radius: 0.3rem;\n}\n\n@media (min-width: 576px) {\n .jumbotron {\n padding: 4rem 2rem;\n }\n}\n\n.jumbotron-fluid {\n padding-right: 0;\n padding-left: 0;\n border-radius: 0;\n}\n\n.alert {\n position: relative;\n padding: 0.75rem 1.25rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n}\n\n.alert-dismissible {\n padding-right: 4rem;\n}\n\n.alert-dismissible .close {\n position: absolute;\n top: 0;\n right: 0;\n padding: 0.75rem 1.25rem;\n color: inherit;\n}\n\n.alert-primary {\n color: #004085;\n background-color: #cce5ff;\n border-color: #b8daff;\n}\n\n.alert-primary hr {\n border-top-color: #9fcdff;\n}\n\n.alert-primary .alert-link {\n color: #002752;\n}\n\n.alert-secondary {\n color: #383d41;\n background-color: #e2e3e5;\n border-color: #d6d8db;\n}\n\n.alert-secondary hr {\n border-top-color: #c8cbcf;\n}\n\n.alert-secondary .alert-link {\n color: #202326;\n}\n\n.alert-success {\n color: #155724;\n background-color: #d4edda;\n border-color: #c3e6cb;\n}\n\n.alert-success hr {\n border-top-color: #b1dfbb;\n}\n\n.alert-success .alert-link {\n color: #0b2e13;\n}\n\n.alert-info {\n color: #0c5460;\n background-color: #d1ecf1;\n border-color: #bee5eb;\n}\n\n.alert-info hr {\n border-top-color: #abdde5;\n}\n\n.alert-info .alert-link {\n color: #062c33;\n}\n\n.alert-warning {\n color: #856404;\n background-color: #fff3cd;\n border-color: #ffeeba;\n}\n\n.alert-warning hr {\n border-top-color: #ffe8a1;\n}\n\n.alert-warning .alert-link {\n color: #533f03;\n}\n\n.alert-danger {\n color: #721c24;\n background-color: #f8d7da;\n border-color: #f5c6cb;\n}\n\n.alert-danger hr {\n border-top-color: #f1b0b7;\n}\n\n.alert-danger .alert-link {\n color: #491217;\n}\n\n.alert-light {\n color: #818182;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n\n.alert-light hr {\n border-top-color: #ececf6;\n}\n\n.alert-light .alert-link {\n color: #686868;\n}\n\n.alert-dark {\n color: #1b1e21;\n background-color: #d6d8d9;\n border-color: #c6c8ca;\n}\n\n.alert-dark hr {\n border-top-color: #b9bbbe;\n}\n\n.alert-dark .alert-link {\n color: #040505;\n}\n\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 1rem 0;\n }\n to {\n background-position: 0 0;\n }\n}\n\n@keyframes progress-bar-stripes {\n from {\n background-position: 1rem 0;\n }\n to {\n background-position: 0 0;\n }\n}\n\n.progress {\n display: -ms-flexbox;\n display: flex;\n height: 1rem;\n overflow: hidden;\n font-size: 0.75rem;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.progress-bar {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: center;\n justify-content: center;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n background-color: #007bff;\n transition: width 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 1rem 1rem;\n}\n\n.progress-bar-animated {\n -webkit-animation: progress-bar-stripes 1s linear infinite;\n animation: progress-bar-stripes 1s linear infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n -webkit-animation: none;\n animation: none;\n }\n}\n\n.media {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: start;\n align-items: flex-start;\n}\n\n.media-body {\n -ms-flex: 1;\n flex: 1;\n}\n\n.list-group {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n}\n\n.list-group-item-action {\n width: 100%;\n color: #495057;\n text-align: inherit;\n}\n\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: #495057;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.list-group-item-action:active {\n color: #212529;\n background-color: #e9ecef;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 0.75rem 1.25rem;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.list-group-item.disabled, .list-group-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: #fff;\n}\n\n.list-group-item.active {\n z-index: 2;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.list-group-horizontal {\n -ms-flex-direction: row;\n flex-direction: row;\n}\n\n.list-group-horizontal .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n}\n\n.list-group-horizontal .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n}\n\n.list-group-horizontal .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-sm .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-sm .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-md .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-md .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-lg .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-lg .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xl .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-xl .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n.list-group-flush .list-group-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n\n.list-group-flush .list-group-item:last-child {\n margin-bottom: -1px;\n}\n\n.list-group-flush:first-child .list-group-item:first-child {\n border-top: 0;\n}\n\n.list-group-flush:last-child .list-group-item:last-child {\n margin-bottom: 0;\n border-bottom: 0;\n}\n\n.list-group-item-primary {\n color: #004085;\n background-color: #b8daff;\n}\n\n.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {\n color: #004085;\n background-color: #9fcdff;\n}\n\n.list-group-item-primary.list-group-item-action.active {\n color: #fff;\n background-color: #004085;\n border-color: #004085;\n}\n\n.list-group-item-secondary {\n color: #383d41;\n background-color: #d6d8db;\n}\n\n.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {\n color: #383d41;\n background-color: #c8cbcf;\n}\n\n.list-group-item-secondary.list-group-item-action.active {\n color: #fff;\n background-color: #383d41;\n border-color: #383d41;\n}\n\n.list-group-item-success {\n color: #155724;\n background-color: #c3e6cb;\n}\n\n.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {\n color: #155724;\n background-color: #b1dfbb;\n}\n\n.list-group-item-success.list-group-item-action.active {\n color: #fff;\n background-color: #155724;\n border-color: #155724;\n}\n\n.list-group-item-info {\n color: #0c5460;\n background-color: #bee5eb;\n}\n\n.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {\n color: #0c5460;\n background-color: #abdde5;\n}\n\n.list-group-item-info.list-group-item-action.active {\n color: #fff;\n background-color: #0c5460;\n border-color: #0c5460;\n}\n\n.list-group-item-warning {\n color: #856404;\n background-color: #ffeeba;\n}\n\n.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {\n color: #856404;\n background-color: #ffe8a1;\n}\n\n.list-group-item-warning.list-group-item-action.active {\n color: #fff;\n background-color: #856404;\n border-color: #856404;\n}\n\n.list-group-item-danger {\n color: #721c24;\n background-color: #f5c6cb;\n}\n\n.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {\n color: #721c24;\n background-color: #f1b0b7;\n}\n\n.list-group-item-danger.list-group-item-action.active {\n color: #fff;\n background-color: #721c24;\n border-color: #721c24;\n}\n\n.list-group-item-light {\n color: #818182;\n background-color: #fdfdfe;\n}\n\n.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {\n color: #818182;\n background-color: #ececf6;\n}\n\n.list-group-item-light.list-group-item-action.active {\n color: #fff;\n background-color: #818182;\n border-color: #818182;\n}\n\n.list-group-item-dark {\n color: #1b1e21;\n background-color: #c6c8ca;\n}\n\n.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {\n color: #1b1e21;\n background-color: #b9bbbe;\n}\n\n.list-group-item-dark.list-group-item-action.active {\n color: #fff;\n background-color: #1b1e21;\n border-color: #1b1e21;\n}\n\n.close {\n float: right;\n font-size: 1.5rem;\n font-weight: 700;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: .5;\n}\n\n.close:hover {\n color: #000;\n text-decoration: none;\n}\n\n.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {\n opacity: .75;\n}\n\nbutton.close {\n padding: 0;\n background-color: transparent;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\na.close.disabled {\n pointer-events: none;\n}\n\n.toast {\n max-width: 350px;\n overflow: hidden;\n font-size: 0.875rem;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.1);\n box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);\n -webkit-backdrop-filter: blur(10px);\n backdrop-filter: blur(10px);\n opacity: 0;\n border-radius: 0.25rem;\n}\n\n.toast:not(:last-child) {\n margin-bottom: 0.75rem;\n}\n\n.toast.showing {\n opacity: 1;\n}\n\n.toast.show {\n display: block;\n opacity: 1;\n}\n\n.toast.hide {\n display: none;\n}\n\n.toast-header {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.25rem 0.75rem;\n color: #6c757d;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\n}\n\n.toast-body {\n padding: 0.75rem;\n}\n\n.modal-open {\n overflow: hidden;\n}\n\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.modal {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1050;\n display: none;\n width: 100%;\n height: 100%;\n overflow: hidden;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 0.5rem;\n pointer-events: none;\n}\n\n.modal.fade .modal-dialog {\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;\n -webkit-transform: translate(0, -50px);\n transform: translate(0, -50px);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n\n.modal.show .modal-dialog {\n -webkit-transform: none;\n transform: none;\n}\n\n.modal-dialog-scrollable {\n display: -ms-flexbox;\n display: flex;\n max-height: calc(100% - 1rem);\n}\n\n.modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 1rem);\n overflow: hidden;\n}\n\n.modal-dialog-scrollable .modal-header,\n.modal-dialog-scrollable .modal-footer {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n}\n\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n min-height: calc(100% - 1rem);\n}\n\n.modal-dialog-centered::before {\n display: block;\n height: calc(100vh - 1rem);\n content: \"\";\n}\n\n.modal-dialog-centered.modal-dialog-scrollable {\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: center;\n justify-content: center;\n height: 100%;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable .modal-content {\n max-height: none;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable::before {\n content: none;\n}\n\n.modal-content {\n position: relative;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n width: 100%;\n pointer-events: auto;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n outline: 0;\n}\n\n.modal-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n\n.modal-backdrop.fade {\n opacity: 0;\n}\n\n.modal-backdrop.show {\n opacity: 0.5;\n}\n\n.modal-header {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: start;\n align-items: flex-start;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: 1rem 1rem;\n border-bottom: 1px solid #dee2e6;\n border-top-left-radius: 0.3rem;\n border-top-right-radius: 0.3rem;\n}\n\n.modal-header .close {\n padding: 1rem 1rem;\n margin: -1rem -1rem -1rem auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: 1.5;\n}\n\n.modal-body {\n position: relative;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: 1rem;\n}\n\n.modal-footer {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: end;\n justify-content: flex-end;\n padding: 1rem;\n border-top: 1px solid #dee2e6;\n border-bottom-right-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.modal-footer > :not(:first-child) {\n margin-left: .25rem;\n}\n\n.modal-footer > :not(:last-child) {\n margin-right: .25rem;\n}\n\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n\n@media (min-width: 576px) {\n .modal-dialog {\n max-width: 500px;\n margin: 1.75rem auto;\n }\n .modal-dialog-scrollable {\n max-height: calc(100% - 3.5rem);\n }\n .modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 3.5rem);\n }\n .modal-dialog-centered {\n min-height: calc(100% - 3.5rem);\n }\n .modal-dialog-centered::before {\n height: calc(100vh - 3.5rem);\n }\n .modal-sm {\n max-width: 300px;\n }\n}\n\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n max-width: 800px;\n }\n}\n\n@media (min-width: 1200px) {\n .modal-xl {\n max-width: 1140px;\n }\n}\n\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n opacity: 0;\n}\n\n.tooltip.show {\n opacity: 0.9;\n}\n\n.tooltip .arrow {\n position: absolute;\n display: block;\n width: 0.8rem;\n height: 0.4rem;\n}\n\n.tooltip .arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top, .bs-tooltip-auto[x-placement^=\"top\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=\"top\"] .arrow {\n bottom: 0;\n}\n\n.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=\"top\"] .arrow::before {\n top: 0;\n border-width: 0.4rem 0.4rem 0;\n border-top-color: #000;\n}\n\n.bs-tooltip-right, .bs-tooltip-auto[x-placement^=\"right\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=\"right\"] .arrow {\n left: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=\"right\"] .arrow::before {\n right: 0;\n border-width: 0.4rem 0.4rem 0.4rem 0;\n border-right-color: #000;\n}\n\n.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=\"bottom\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow {\n top: 0;\n}\n\n.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow::before {\n bottom: 0;\n border-width: 0 0.4rem 0.4rem;\n border-bottom-color: #000;\n}\n\n.bs-tooltip-left, .bs-tooltip-auto[x-placement^=\"left\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=\"left\"] .arrow {\n right: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=\"left\"] .arrow::before {\n left: 0;\n border-width: 0.4rem 0 0.4rem 0.4rem;\n border-left-color: #000;\n}\n\n.tooltip-inner {\n max-width: 200px;\n padding: 0.25rem 0.5rem;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 0.25rem;\n}\n\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: block;\n max-width: 276px;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n}\n\n.popover .arrow {\n position: absolute;\n display: block;\n width: 1rem;\n height: 0.5rem;\n margin: 0 0.3rem;\n}\n\n.popover .arrow::before, .popover .arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-popover-top, .bs-popover-auto[x-placement^=\"top\"] {\n margin-bottom: 0.5rem;\n}\n\n.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=\"top\"] > .arrow {\n bottom: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=\"top\"] > .arrow::before {\n bottom: 0;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=\"top\"] > .arrow::after {\n bottom: 1px;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: #fff;\n}\n\n.bs-popover-right, .bs-popover-auto[x-placement^=\"right\"] {\n margin-left: 0.5rem;\n}\n\n.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=\"right\"] > .arrow {\n left: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=\"right\"] > .arrow::before {\n left: 0;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=\"right\"] > .arrow::after {\n left: 1px;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: #fff;\n}\n\n.bs-popover-bottom, .bs-popover-auto[x-placement^=\"bottom\"] {\n margin-top: 0.5rem;\n}\n\n.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow {\n top: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::before {\n top: 0;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::after {\n top: 1px;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: #fff;\n}\n\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=\"bottom\"] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: 1rem;\n margin-left: -0.5rem;\n content: \"\";\n border-bottom: 1px solid #f7f7f7;\n}\n\n.bs-popover-left, .bs-popover-auto[x-placement^=\"left\"] {\n margin-right: 0.5rem;\n}\n\n.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=\"left\"] > .arrow {\n right: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=\"left\"] > .arrow::before {\n right: 0;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=\"left\"] > .arrow::after {\n right: 1px;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: #fff;\n}\n\n.popover-header {\n padding: 0.5rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-top-left-radius: calc(0.3rem - 1px);\n border-top-right-radius: calc(0.3rem - 1px);\n}\n\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: 0.5rem 0.75rem;\n color: #212529;\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n -ms-touch-action: pan-y;\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-left),\n.active.carousel-item-right {\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-right),\n.active.carousel-item-left {\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n -webkit-transform: none;\n transform: none;\n}\n\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-left,\n.carousel-fade .carousel-item-prev.carousel-item-right {\n z-index: 1;\n opacity: 1;\n}\n\n.carousel-fade .active.carousel-item-left,\n.carousel-fade .active.carousel-item-right {\n z-index: 0;\n opacity: 0;\n transition: 0s 0.6s opacity;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-left,\n .carousel-fade .active.carousel-item-right {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 15%;\n color: #fff;\n text-align: center;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n transition: none;\n }\n}\n\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 20px;\n height: 20px;\n background: no-repeat 50% / 100% 100%;\n}\n\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e\");\n}\n\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e\");\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 15;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n padding-left: 0;\n margin-right: 15%;\n margin-left: 15%;\n list-style: none;\n}\n\n.carousel-indicators li {\n box-sizing: content-box;\n -ms-flex: 0 1 auto;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: .5;\n transition: opacity 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators li {\n transition: none;\n }\n}\n\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n}\n\n@-webkit-keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n.spinner-border {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n border: 0.25em solid currentColor;\n border-right-color: transparent;\n border-radius: 50%;\n -webkit-animation: spinner-border .75s linear infinite;\n animation: spinner-border .75s linear infinite;\n}\n\n.spinner-border-sm {\n width: 1rem;\n height: 1rem;\n border-width: 0.2em;\n}\n\n@-webkit-keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n }\n}\n\n@keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n }\n}\n\n.spinner-grow {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n background-color: currentColor;\n border-radius: 50%;\n opacity: 0;\n -webkit-animation: spinner-grow .75s linear infinite;\n animation: spinner-grow .75s linear infinite;\n}\n\n.spinner-grow-sm {\n width: 1rem;\n height: 1rem;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.bg-primary {\n background-color: #007bff !important;\n}\n\na.bg-primary:hover, a.bg-primary:focus,\nbutton.bg-primary:hover,\nbutton.bg-primary:focus {\n background-color: #0062cc !important;\n}\n\n.bg-secondary {\n background-color: #6c757d !important;\n}\n\na.bg-secondary:hover, a.bg-secondary:focus,\nbutton.bg-secondary:hover,\nbutton.bg-secondary:focus {\n background-color: #545b62 !important;\n}\n\n.bg-success {\n background-color: #28a745 !important;\n}\n\na.bg-success:hover, a.bg-success:focus,\nbutton.bg-success:hover,\nbutton.bg-success:focus {\n background-color: #1e7e34 !important;\n}\n\n.bg-info {\n background-color: #17a2b8 !important;\n}\n\na.bg-info:hover, a.bg-info:focus,\nbutton.bg-info:hover,\nbutton.bg-info:focus {\n background-color: #117a8b !important;\n}\n\n.bg-warning {\n background-color: #ffc107 !important;\n}\n\na.bg-warning:hover, a.bg-warning:focus,\nbutton.bg-warning:hover,\nbutton.bg-warning:focus {\n background-color: #d39e00 !important;\n}\n\n.bg-danger {\n background-color: #dc3545 !important;\n}\n\na.bg-danger:hover, a.bg-danger:focus,\nbutton.bg-danger:hover,\nbutton.bg-danger:focus {\n background-color: #bd2130 !important;\n}\n\n.bg-light {\n background-color: #f8f9fa !important;\n}\n\na.bg-light:hover, a.bg-light:focus,\nbutton.bg-light:hover,\nbutton.bg-light:focus {\n background-color: #dae0e5 !important;\n}\n\n.bg-dark {\n background-color: #343a40 !important;\n}\n\na.bg-dark:hover, a.bg-dark:focus,\nbutton.bg-dark:hover,\nbutton.bg-dark:focus {\n background-color: #1d2124 !important;\n}\n\n.bg-white {\n background-color: #fff !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}\n\n.border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-right {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-left {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #007bff !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #28a745 !important;\n}\n\n.border-info {\n border-color: #17a2b8 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #343a40 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.rounded-sm {\n border-radius: 0.2rem !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-right {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-left {\n border-top-left-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-lg {\n border-radius: 0.3rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: 50rem !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n}\n\n.d-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-md-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-print-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n}\n\n.embed-responsive {\n position: relative;\n display: block;\n width: 100%;\n padding: 0;\n overflow: hidden;\n}\n\n.embed-responsive::before {\n display: block;\n content: \"\";\n}\n\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n\n.embed-responsive-21by9::before {\n padding-top: 42.857143%;\n}\n\n.embed-responsive-16by9::before {\n padding-top: 56.25%;\n}\n\n.embed-responsive-4by3::before {\n padding-top: 75%;\n}\n\n.embed-responsive-1by1::before {\n padding-top: 100%;\n}\n\n.flex-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n}\n\n.flex-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n}\n\n.justify-content-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n}\n\n.align-items-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n}\n\n.align-items-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n}\n\n.align-items-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n}\n\n.align-items-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n}\n\n.align-content-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n}\n\n.align-content-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n}\n\n.align-content-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n}\n\n.align-content-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n}\n\n.align-content-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n}\n\n.align-self-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n}\n\n.align-self-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n}\n\n.align-self-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n}\n\n.align-self-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n}\n\n.align-self-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-sm-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-sm-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-sm-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-sm-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-sm-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-sm-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-sm-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-sm-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-md-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-md-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-md-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-md-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-md-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-md-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-md-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-md-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-md-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-md-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-md-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-md-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-md-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-md-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-md-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-md-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-lg-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-lg-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-lg-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-lg-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-lg-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-lg-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-lg-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-lg-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xl-column {\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xl-between {\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xl-baseline {\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n}\n\n.float-left {\n float: left !important;\n}\n\n.float-right {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-left {\n float: left !important;\n }\n .float-sm-right {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n}\n\n@media (min-width: 768px) {\n .float-md-left {\n float: left !important;\n }\n .float-md-right {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n}\n\n@media (min-width: 992px) {\n .float-lg-left {\n float: left !important;\n }\n .float-lg-right {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n}\n\n@media (min-width: 1200px) {\n .float-xl-left {\n float: left !important;\n }\n .float-xl-right {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n@supports ((position: -webkit-sticky) or (position: sticky)) {\n .sticky-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.sr-only-focusable:active, .sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n overflow: visible;\n clip: auto;\n white-space: normal;\n}\n\n.shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n pointer-events: auto;\n content: \"\";\n background-color: rgba(0, 0, 0, 0);\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-n1 {\n margin: -0.25rem !important;\n}\n\n.mt-n1,\n.my-n1 {\n margin-top: -0.25rem !important;\n}\n\n.mr-n1,\n.mx-n1 {\n margin-right: -0.25rem !important;\n}\n\n.mb-n1,\n.my-n1 {\n margin-bottom: -0.25rem !important;\n}\n\n.ml-n1,\n.mx-n1 {\n margin-left: -0.25rem !important;\n}\n\n.m-n2 {\n margin: -0.5rem !important;\n}\n\n.mt-n2,\n.my-n2 {\n margin-top: -0.5rem !important;\n}\n\n.mr-n2,\n.mx-n2 {\n margin-right: -0.5rem !important;\n}\n\n.mb-n2,\n.my-n2 {\n margin-bottom: -0.5rem !important;\n}\n\n.ml-n2,\n.mx-n2 {\n margin-left: -0.5rem !important;\n}\n\n.m-n3 {\n margin: -1rem !important;\n}\n\n.mt-n3,\n.my-n3 {\n margin-top: -1rem !important;\n}\n\n.mr-n3,\n.mx-n3 {\n margin-right: -1rem !important;\n}\n\n.mb-n3,\n.my-n3 {\n margin-bottom: -1rem !important;\n}\n\n.ml-n3,\n.mx-n3 {\n margin-left: -1rem !important;\n}\n\n.m-n4 {\n margin: -1.5rem !important;\n}\n\n.mt-n4,\n.my-n4 {\n margin-top: -1.5rem !important;\n}\n\n.mr-n4,\n.mx-n4 {\n margin-right: -1.5rem !important;\n}\n\n.mb-n4,\n.my-n4 {\n margin-bottom: -1.5rem !important;\n}\n\n.ml-n4,\n.mx-n4 {\n margin-left: -1.5rem !important;\n}\n\n.m-n5 {\n margin: -3rem !important;\n}\n\n.mt-n5,\n.my-n5 {\n margin-top: -3rem !important;\n}\n\n.mr-n5,\n.mx-n5 {\n margin-right: -3rem !important;\n}\n\n.mb-n5,\n.my-n5 {\n margin-bottom: -3rem !important;\n}\n\n.ml-n5,\n.mx-n5 {\n margin-left: -3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n\n@media (min-width: 576px) {\n .m-sm-0 {\n margin: 0 !important;\n }\n .mt-sm-0,\n .my-sm-0 {\n margin-top: 0 !important;\n }\n .mr-sm-0,\n .mx-sm-0 {\n margin-right: 0 !important;\n }\n .mb-sm-0,\n .my-sm-0 {\n margin-bottom: 0 !important;\n }\n .ml-sm-0,\n .mx-sm-0 {\n margin-left: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .mt-sm-1,\n .my-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mr-sm-1,\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n }\n .mb-sm-1,\n .my-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-sm-1,\n .mx-sm-1 {\n margin-left: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .mt-sm-2,\n .my-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mr-sm-2,\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n }\n .mb-sm-2,\n .my-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-sm-2,\n .mx-sm-2 {\n margin-left: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .mt-sm-3,\n .my-sm-3 {\n margin-top: 1rem !important;\n }\n .mr-sm-3,\n .mx-sm-3 {\n margin-right: 1rem !important;\n }\n .mb-sm-3,\n .my-sm-3 {\n margin-bottom: 1rem !important;\n }\n .ml-sm-3,\n .mx-sm-3 {\n margin-left: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .mt-sm-4,\n .my-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mr-sm-4,\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n }\n .mb-sm-4,\n .my-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-sm-4,\n .mx-sm-4 {\n margin-left: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .mt-sm-5,\n .my-sm-5 {\n margin-top: 3rem !important;\n }\n .mr-sm-5,\n .mx-sm-5 {\n margin-right: 3rem !important;\n }\n .mb-sm-5,\n .my-sm-5 {\n margin-bottom: 3rem !important;\n }\n .ml-sm-5,\n .mx-sm-5 {\n margin-left: 3rem !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .pt-sm-0,\n .py-sm-0 {\n padding-top: 0 !important;\n }\n .pr-sm-0,\n .px-sm-0 {\n padding-right: 0 !important;\n }\n .pb-sm-0,\n .py-sm-0 {\n padding-bottom: 0 !important;\n }\n .pl-sm-0,\n .px-sm-0 {\n padding-left: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .pt-sm-1,\n .py-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pr-sm-1,\n .px-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pb-sm-1,\n .py-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-sm-1,\n .px-sm-1 {\n padding-left: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .pt-sm-2,\n .py-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pr-sm-2,\n .px-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pb-sm-2,\n .py-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-sm-2,\n .px-sm-2 {\n padding-left: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .pt-sm-3,\n .py-sm-3 {\n padding-top: 1rem !important;\n }\n .pr-sm-3,\n .px-sm-3 {\n padding-right: 1rem !important;\n }\n .pb-sm-3,\n .py-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pl-sm-3,\n .px-sm-3 {\n padding-left: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .pt-sm-4,\n .py-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pr-sm-4,\n .px-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pb-sm-4,\n .py-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-sm-4,\n .px-sm-4 {\n padding-left: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .pt-sm-5,\n .py-sm-5 {\n padding-top: 3rem !important;\n }\n .pr-sm-5,\n .px-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-5,\n .py-sm-5 {\n padding-bottom: 3rem !important;\n }\n .pl-sm-5,\n .px-sm-5 {\n padding-left: 3rem !important;\n }\n .m-sm-n1 {\n margin: -0.25rem !important;\n }\n .mt-sm-n1,\n .my-sm-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-sm-n1,\n .mx-sm-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-sm-n1,\n .my-sm-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-sm-n1,\n .mx-sm-n1 {\n margin-left: -0.25rem !important;\n }\n .m-sm-n2 {\n margin: -0.5rem !important;\n }\n .mt-sm-n2,\n .my-sm-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-sm-n2,\n .mx-sm-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-sm-n2,\n .my-sm-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-sm-n2,\n .mx-sm-n2 {\n margin-left: -0.5rem !important;\n }\n .m-sm-n3 {\n margin: -1rem !important;\n }\n .mt-sm-n3,\n .my-sm-n3 {\n margin-top: -1rem !important;\n }\n .mr-sm-n3,\n .mx-sm-n3 {\n margin-right: -1rem !important;\n }\n .mb-sm-n3,\n .my-sm-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-sm-n3,\n .mx-sm-n3 {\n margin-left: -1rem !important;\n }\n .m-sm-n4 {\n margin: -1.5rem !important;\n }\n .mt-sm-n4,\n .my-sm-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-sm-n4,\n .mx-sm-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-sm-n4,\n .my-sm-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-sm-n4,\n .mx-sm-n4 {\n margin-left: -1.5rem !important;\n }\n .m-sm-n5 {\n margin: -3rem !important;\n }\n .mt-sm-n5,\n .my-sm-n5 {\n margin-top: -3rem !important;\n }\n .mr-sm-n5,\n .mx-sm-n5 {\n margin-right: -3rem !important;\n }\n .mb-sm-n5,\n .my-sm-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-sm-n5,\n .mx-sm-n5 {\n margin-left: -3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mt-sm-auto,\n .my-sm-auto {\n margin-top: auto !important;\n }\n .mr-sm-auto,\n .mx-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-auto,\n .my-sm-auto {\n margin-bottom: auto !important;\n }\n .ml-sm-auto,\n .mx-sm-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 768px) {\n .m-md-0 {\n margin: 0 !important;\n }\n .mt-md-0,\n .my-md-0 {\n margin-top: 0 !important;\n }\n .mr-md-0,\n .mx-md-0 {\n margin-right: 0 !important;\n }\n .mb-md-0,\n .my-md-0 {\n margin-bottom: 0 !important;\n }\n .ml-md-0,\n .mx-md-0 {\n margin-left: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .mt-md-1,\n .my-md-1 {\n margin-top: 0.25rem !important;\n }\n .mr-md-1,\n .mx-md-1 {\n margin-right: 0.25rem !important;\n }\n .mb-md-1,\n .my-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-md-1,\n .mx-md-1 {\n margin-left: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .mt-md-2,\n .my-md-2 {\n margin-top: 0.5rem !important;\n }\n .mr-md-2,\n .mx-md-2 {\n margin-right: 0.5rem !important;\n }\n .mb-md-2,\n .my-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-md-2,\n .mx-md-2 {\n margin-left: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .mt-md-3,\n .my-md-3 {\n margin-top: 1rem !important;\n }\n .mr-md-3,\n .mx-md-3 {\n margin-right: 1rem !important;\n }\n .mb-md-3,\n .my-md-3 {\n margin-bottom: 1rem !important;\n }\n .ml-md-3,\n .mx-md-3 {\n margin-left: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .mt-md-4,\n .my-md-4 {\n margin-top: 1.5rem !important;\n }\n .mr-md-4,\n .mx-md-4 {\n margin-right: 1.5rem !important;\n }\n .mb-md-4,\n .my-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-md-4,\n .mx-md-4 {\n margin-left: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .mt-md-5,\n .my-md-5 {\n margin-top: 3rem !important;\n }\n .mr-md-5,\n .mx-md-5 {\n margin-right: 3rem !important;\n }\n .mb-md-5,\n .my-md-5 {\n margin-bottom: 3rem !important;\n }\n .ml-md-5,\n .mx-md-5 {\n margin-left: 3rem !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .pt-md-0,\n .py-md-0 {\n padding-top: 0 !important;\n }\n .pr-md-0,\n .px-md-0 {\n padding-right: 0 !important;\n }\n .pb-md-0,\n .py-md-0 {\n padding-bottom: 0 !important;\n }\n .pl-md-0,\n .px-md-0 {\n padding-left: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .pt-md-1,\n .py-md-1 {\n padding-top: 0.25rem !important;\n }\n .pr-md-1,\n .px-md-1 {\n padding-right: 0.25rem !important;\n }\n .pb-md-1,\n .py-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-md-1,\n .px-md-1 {\n padding-left: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .pt-md-2,\n .py-md-2 {\n padding-top: 0.5rem !important;\n }\n .pr-md-2,\n .px-md-2 {\n padding-right: 0.5rem !important;\n }\n .pb-md-2,\n .py-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-md-2,\n .px-md-2 {\n padding-left: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .pt-md-3,\n .py-md-3 {\n padding-top: 1rem !important;\n }\n .pr-md-3,\n .px-md-3 {\n padding-right: 1rem !important;\n }\n .pb-md-3,\n .py-md-3 {\n padding-bottom: 1rem !important;\n }\n .pl-md-3,\n .px-md-3 {\n padding-left: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .pt-md-4,\n .py-md-4 {\n padding-top: 1.5rem !important;\n }\n .pr-md-4,\n .px-md-4 {\n padding-right: 1.5rem !important;\n }\n .pb-md-4,\n .py-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-md-4,\n .px-md-4 {\n padding-left: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .pt-md-5,\n .py-md-5 {\n padding-top: 3rem !important;\n }\n .pr-md-5,\n .px-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-5,\n .py-md-5 {\n padding-bottom: 3rem !important;\n }\n .pl-md-5,\n .px-md-5 {\n padding-left: 3rem !important;\n }\n .m-md-n1 {\n margin: -0.25rem !important;\n }\n .mt-md-n1,\n .my-md-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-md-n1,\n .mx-md-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-md-n1,\n .my-md-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-md-n1,\n .mx-md-n1 {\n margin-left: -0.25rem !important;\n }\n .m-md-n2 {\n margin: -0.5rem !important;\n }\n .mt-md-n2,\n .my-md-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-md-n2,\n .mx-md-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-md-n2,\n .my-md-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-md-n2,\n .mx-md-n2 {\n margin-left: -0.5rem !important;\n }\n .m-md-n3 {\n margin: -1rem !important;\n }\n .mt-md-n3,\n .my-md-n3 {\n margin-top: -1rem !important;\n }\n .mr-md-n3,\n .mx-md-n3 {\n margin-right: -1rem !important;\n }\n .mb-md-n3,\n .my-md-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-md-n3,\n .mx-md-n3 {\n margin-left: -1rem !important;\n }\n .m-md-n4 {\n margin: -1.5rem !important;\n }\n .mt-md-n4,\n .my-md-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-md-n4,\n .mx-md-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-md-n4,\n .my-md-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-md-n4,\n .mx-md-n4 {\n margin-left: -1.5rem !important;\n }\n .m-md-n5 {\n margin: -3rem !important;\n }\n .mt-md-n5,\n .my-md-n5 {\n margin-top: -3rem !important;\n }\n .mr-md-n5,\n .mx-md-n5 {\n margin-right: -3rem !important;\n }\n .mb-md-n5,\n .my-md-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-md-n5,\n .mx-md-n5 {\n margin-left: -3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mt-md-auto,\n .my-md-auto {\n margin-top: auto !important;\n }\n .mr-md-auto,\n .mx-md-auto {\n margin-right: auto !important;\n }\n .mb-md-auto,\n .my-md-auto {\n margin-bottom: auto !important;\n }\n .ml-md-auto,\n .mx-md-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 992px) {\n .m-lg-0 {\n margin: 0 !important;\n }\n .mt-lg-0,\n .my-lg-0 {\n margin-top: 0 !important;\n }\n .mr-lg-0,\n .mx-lg-0 {\n margin-right: 0 !important;\n }\n .mb-lg-0,\n .my-lg-0 {\n margin-bottom: 0 !important;\n }\n .ml-lg-0,\n .mx-lg-0 {\n margin-left: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .mt-lg-1,\n .my-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mr-lg-1,\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n }\n .mb-lg-1,\n .my-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-lg-1,\n .mx-lg-1 {\n margin-left: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .mt-lg-2,\n .my-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mr-lg-2,\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n }\n .mb-lg-2,\n .my-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-lg-2,\n .mx-lg-2 {\n margin-left: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .mt-lg-3,\n .my-lg-3 {\n margin-top: 1rem !important;\n }\n .mr-lg-3,\n .mx-lg-3 {\n margin-right: 1rem !important;\n }\n .mb-lg-3,\n .my-lg-3 {\n margin-bottom: 1rem !important;\n }\n .ml-lg-3,\n .mx-lg-3 {\n margin-left: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .mt-lg-4,\n .my-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mr-lg-4,\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n }\n .mb-lg-4,\n .my-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-lg-4,\n .mx-lg-4 {\n margin-left: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .mt-lg-5,\n .my-lg-5 {\n margin-top: 3rem !important;\n }\n .mr-lg-5,\n .mx-lg-5 {\n margin-right: 3rem !important;\n }\n .mb-lg-5,\n .my-lg-5 {\n margin-bottom: 3rem !important;\n }\n .ml-lg-5,\n .mx-lg-5 {\n margin-left: 3rem !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .pt-lg-0,\n .py-lg-0 {\n padding-top: 0 !important;\n }\n .pr-lg-0,\n .px-lg-0 {\n padding-right: 0 !important;\n }\n .pb-lg-0,\n .py-lg-0 {\n padding-bottom: 0 !important;\n }\n .pl-lg-0,\n .px-lg-0 {\n padding-left: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .pt-lg-1,\n .py-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pr-lg-1,\n .px-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pb-lg-1,\n .py-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-lg-1,\n .px-lg-1 {\n padding-left: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .pt-lg-2,\n .py-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pr-lg-2,\n .px-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pb-lg-2,\n .py-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-lg-2,\n .px-lg-2 {\n padding-left: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .pt-lg-3,\n .py-lg-3 {\n padding-top: 1rem !important;\n }\n .pr-lg-3,\n .px-lg-3 {\n padding-right: 1rem !important;\n }\n .pb-lg-3,\n .py-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pl-lg-3,\n .px-lg-3 {\n padding-left: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .pt-lg-4,\n .py-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pr-lg-4,\n .px-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pb-lg-4,\n .py-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-lg-4,\n .px-lg-4 {\n padding-left: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .pt-lg-5,\n .py-lg-5 {\n padding-top: 3rem !important;\n }\n .pr-lg-5,\n .px-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-5,\n .py-lg-5 {\n padding-bottom: 3rem !important;\n }\n .pl-lg-5,\n .px-lg-5 {\n padding-left: 3rem !important;\n }\n .m-lg-n1 {\n margin: -0.25rem !important;\n }\n .mt-lg-n1,\n .my-lg-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-lg-n1,\n .mx-lg-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-lg-n1,\n .my-lg-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-lg-n1,\n .mx-lg-n1 {\n margin-left: -0.25rem !important;\n }\n .m-lg-n2 {\n margin: -0.5rem !important;\n }\n .mt-lg-n2,\n .my-lg-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-lg-n2,\n .mx-lg-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-lg-n2,\n .my-lg-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-lg-n2,\n .mx-lg-n2 {\n margin-left: -0.5rem !important;\n }\n .m-lg-n3 {\n margin: -1rem !important;\n }\n .mt-lg-n3,\n .my-lg-n3 {\n margin-top: -1rem !important;\n }\n .mr-lg-n3,\n .mx-lg-n3 {\n margin-right: -1rem !important;\n }\n .mb-lg-n3,\n .my-lg-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-lg-n3,\n .mx-lg-n3 {\n margin-left: -1rem !important;\n }\n .m-lg-n4 {\n margin: -1.5rem !important;\n }\n .mt-lg-n4,\n .my-lg-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-lg-n4,\n .mx-lg-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-lg-n4,\n .my-lg-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-lg-n4,\n .mx-lg-n4 {\n margin-left: -1.5rem !important;\n }\n .m-lg-n5 {\n margin: -3rem !important;\n }\n .mt-lg-n5,\n .my-lg-n5 {\n margin-top: -3rem !important;\n }\n .mr-lg-n5,\n .mx-lg-n5 {\n margin-right: -3rem !important;\n }\n .mb-lg-n5,\n .my-lg-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-lg-n5,\n .mx-lg-n5 {\n margin-left: -3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mt-lg-auto,\n .my-lg-auto {\n margin-top: auto !important;\n }\n .mr-lg-auto,\n .mx-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-auto,\n .my-lg-auto {\n margin-bottom: auto !important;\n }\n .ml-lg-auto,\n .mx-lg-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 1200px) {\n .m-xl-0 {\n margin: 0 !important;\n }\n .mt-xl-0,\n .my-xl-0 {\n margin-top: 0 !important;\n }\n .mr-xl-0,\n .mx-xl-0 {\n margin-right: 0 !important;\n }\n .mb-xl-0,\n .my-xl-0 {\n margin-bottom: 0 !important;\n }\n .ml-xl-0,\n .mx-xl-0 {\n margin-left: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .mt-xl-1,\n .my-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mr-xl-1,\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n }\n .mb-xl-1,\n .my-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-xl-1,\n .mx-xl-1 {\n margin-left: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .mt-xl-2,\n .my-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mr-xl-2,\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n }\n .mb-xl-2,\n .my-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-xl-2,\n .mx-xl-2 {\n margin-left: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .mt-xl-3,\n .my-xl-3 {\n margin-top: 1rem !important;\n }\n .mr-xl-3,\n .mx-xl-3 {\n margin-right: 1rem !important;\n }\n .mb-xl-3,\n .my-xl-3 {\n margin-bottom: 1rem !important;\n }\n .ml-xl-3,\n .mx-xl-3 {\n margin-left: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .mt-xl-4,\n .my-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mr-xl-4,\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n }\n .mb-xl-4,\n .my-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-xl-4,\n .mx-xl-4 {\n margin-left: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .mt-xl-5,\n .my-xl-5 {\n margin-top: 3rem !important;\n }\n .mr-xl-5,\n .mx-xl-5 {\n margin-right: 3rem !important;\n }\n .mb-xl-5,\n .my-xl-5 {\n margin-bottom: 3rem !important;\n }\n .ml-xl-5,\n .mx-xl-5 {\n margin-left: 3rem !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .pt-xl-0,\n .py-xl-0 {\n padding-top: 0 !important;\n }\n .pr-xl-0,\n .px-xl-0 {\n padding-right: 0 !important;\n }\n .pb-xl-0,\n .py-xl-0 {\n padding-bottom: 0 !important;\n }\n .pl-xl-0,\n .px-xl-0 {\n padding-left: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .pt-xl-1,\n .py-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pr-xl-1,\n .px-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pb-xl-1,\n .py-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-xl-1,\n .px-xl-1 {\n padding-left: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .pt-xl-2,\n .py-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pr-xl-2,\n .px-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pb-xl-2,\n .py-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-xl-2,\n .px-xl-2 {\n padding-left: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .pt-xl-3,\n .py-xl-3 {\n padding-top: 1rem !important;\n }\n .pr-xl-3,\n .px-xl-3 {\n padding-right: 1rem !important;\n }\n .pb-xl-3,\n .py-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pl-xl-3,\n .px-xl-3 {\n padding-left: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .pt-xl-4,\n .py-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pr-xl-4,\n .px-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pb-xl-4,\n .py-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-xl-4,\n .px-xl-4 {\n padding-left: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .pt-xl-5,\n .py-xl-5 {\n padding-top: 3rem !important;\n }\n .pr-xl-5,\n .px-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-5,\n .py-xl-5 {\n padding-bottom: 3rem !important;\n }\n .pl-xl-5,\n .px-xl-5 {\n padding-left: 3rem !important;\n }\n .m-xl-n1 {\n margin: -0.25rem !important;\n }\n .mt-xl-n1,\n .my-xl-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-xl-n1,\n .mx-xl-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-xl-n1,\n .my-xl-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-xl-n1,\n .mx-xl-n1 {\n margin-left: -0.25rem !important;\n }\n .m-xl-n2 {\n margin: -0.5rem !important;\n }\n .mt-xl-n2,\n .my-xl-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-xl-n2,\n .mx-xl-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-xl-n2,\n .my-xl-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-xl-n2,\n .mx-xl-n2 {\n margin-left: -0.5rem !important;\n }\n .m-xl-n3 {\n margin: -1rem !important;\n }\n .mt-xl-n3,\n .my-xl-n3 {\n margin-top: -1rem !important;\n }\n .mr-xl-n3,\n .mx-xl-n3 {\n margin-right: -1rem !important;\n }\n .mb-xl-n3,\n .my-xl-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-xl-n3,\n .mx-xl-n3 {\n margin-left: -1rem !important;\n }\n .m-xl-n4 {\n margin: -1.5rem !important;\n }\n .mt-xl-n4,\n .my-xl-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-xl-n4,\n .mx-xl-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-xl-n4,\n .my-xl-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-xl-n4,\n .mx-xl-n4 {\n margin-left: -1.5rem !important;\n }\n .m-xl-n5 {\n margin: -3rem !important;\n }\n .mt-xl-n5,\n .my-xl-n5 {\n margin-top: -3rem !important;\n }\n .mr-xl-n5,\n .mx-xl-n5 {\n margin-right: -3rem !important;\n }\n .mb-xl-n5,\n .my-xl-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-xl-n5,\n .mx-xl-n5 {\n margin-left: -3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mt-xl-auto,\n .my-xl-auto {\n margin-top: auto !important;\n }\n .mr-xl-auto,\n .mx-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-auto,\n .my-xl-auto {\n margin-bottom: auto !important;\n }\n .ml-xl-auto,\n .mx-xl-auto {\n margin-left: auto !important;\n }\n}\n\n.text-monospace {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !important;\n}\n\n.text-justify {\n text-align: justify !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.text-left {\n text-align: left !important;\n}\n\n.text-right {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n@media (min-width: 576px) {\n .text-sm-left {\n text-align: left !important;\n }\n .text-sm-right {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 768px) {\n .text-md-left {\n text-align: left !important;\n }\n .text-md-right {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 992px) {\n .text-lg-left {\n text-align: left !important;\n }\n .text-lg-right {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 1200px) {\n .text-xl-left {\n text-align: left !important;\n }\n .text-xl-right {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.font-weight-light {\n font-weight: 300 !important;\n}\n\n.font-weight-lighter {\n font-weight: lighter !important;\n}\n\n.font-weight-normal {\n font-weight: 400 !important;\n}\n\n.font-weight-bold {\n font-weight: 700 !important;\n}\n\n.font-weight-bolder {\n font-weight: bolder !important;\n}\n\n.font-italic {\n font-style: italic !important;\n}\n\n.text-white {\n color: #fff !important;\n}\n\n.text-primary {\n color: #007bff !important;\n}\n\na.text-primary:hover, a.text-primary:focus {\n color: #0056b3 !important;\n}\n\n.text-secondary {\n color: #6c757d !important;\n}\n\na.text-secondary:hover, a.text-secondary:focus {\n color: #494f54 !important;\n}\n\n.text-success {\n color: #28a745 !important;\n}\n\na.text-success:hover, a.text-success:focus {\n color: #19692c !important;\n}\n\n.text-info {\n color: #17a2b8 !important;\n}\n\na.text-info:hover, a.text-info:focus {\n color: #0f6674 !important;\n}\n\n.text-warning {\n color: #ffc107 !important;\n}\n\na.text-warning:hover, a.text-warning:focus {\n color: #ba8b00 !important;\n}\n\n.text-danger {\n color: #dc3545 !important;\n}\n\na.text-danger:hover, a.text-danger:focus {\n color: #a71d2a !important;\n}\n\n.text-light {\n color: #f8f9fa !important;\n}\n\na.text-light:hover, a.text-light:focus {\n color: #cbd3da !important;\n}\n\n.text-dark {\n color: #343a40 !important;\n}\n\na.text-dark:hover, a.text-dark:focus {\n color: #121416 !important;\n}\n\n.text-body {\n color: #212529 !important;\n}\n\n.text-muted {\n color: #6c757d !important;\n}\n\n.text-black-50 {\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-break {\n word-break: break-word !important;\n overflow-wrap: break-word !important;\n}\n\n.text-reset {\n color: inherit !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n@media print {\n *,\n *::before,\n *::after {\n text-shadow: none !important;\n box-shadow: none !important;\n }\n a:not(.btn) {\n text-decoration: underline;\n }\n abbr[title]::after {\n content: \" (\" attr(title) \")\";\n }\n pre {\n white-space: pre-wrap !important;\n }\n pre,\n blockquote {\n border: 1px solid #adb5bd;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n @page {\n size: a3;\n }\n body {\n min-width: 992px !important;\n }\n .container {\n min-width: 992px !important;\n }\n .navbar {\n display: none;\n }\n .badge {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #dee2e6 !important;\n }\n .table-dark {\n color: inherit;\n }\n .table-dark th,\n .table-dark td,\n .table-dark thead th,\n .table-dark tbody + tbody {\n border-color: #dee2e6;\n }\n .table .thead-dark th {\n color: inherit;\n border-color: #dee2e6;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","// stylelint-disable property-blacklist, scss/dollar-variable-default\n\n// SCSS RFS mixin\n//\n// Automated font-resizing\n//\n// See https://github.com/twbs/rfs\n\n// Configuration\n\n// Base font size\n$rfs-base-font-size: 1.25rem !default;\n$rfs-font-size-unit: rem !default;\n\n// Breakpoint at where font-size starts decreasing if screen width is smaller\n$rfs-breakpoint: 1200px !default;\n$rfs-breakpoint-unit: px !default;\n\n// Resize font-size based on screen height and width\n$rfs-two-dimensional: false !default;\n\n// Factor of decrease\n$rfs-factor: 10 !default;\n\n@if type-of($rfs-factor) != \"number\" or $rfs-factor <= 1 {\n @error \"`#{$rfs-factor}` is not a valid $rfs-factor, it must be greater than 1.\";\n}\n\n// Generate enable or disable classes. Possibilities: false, \"enable\" or \"disable\"\n$rfs-class: false !default;\n\n// 1 rem = $rfs-rem-value px\n$rfs-rem-value: 16 !default;\n\n// Safari iframe resize bug: https://github.com/twbs/rfs/issues/14\n$rfs-safari-iframe-resize-bug-fix: false !default;\n\n// Disable RFS by setting $enable-responsive-font-sizes to false\n$enable-responsive-font-sizes: true !default;\n\n// Cache $rfs-base-font-size unit\n$rfs-base-font-size-unit: unit($rfs-base-font-size);\n\n// Remove px-unit from $rfs-base-font-size for calculations\n@if $rfs-base-font-size-unit == \"px\" {\n $rfs-base-font-size: $rfs-base-font-size / ($rfs-base-font-size * 0 + 1);\n}\n@else if $rfs-base-font-size-unit == \"rem\" {\n $rfs-base-font-size: $rfs-base-font-size / ($rfs-base-font-size * 0 + 1 / $rfs-rem-value);\n}\n\n// Cache $rfs-breakpoint unit to prevent multiple calls\n$rfs-breakpoint-unit-cache: unit($rfs-breakpoint);\n\n// Remove unit from $rfs-breakpoint for calculations\n@if $rfs-breakpoint-unit-cache == \"px\" {\n $rfs-breakpoint: $rfs-breakpoint / ($rfs-breakpoint * 0 + 1);\n}\n@else if $rfs-breakpoint-unit-cache == \"rem\" or $rfs-breakpoint-unit-cache == \"em\" {\n $rfs-breakpoint: $rfs-breakpoint / ($rfs-breakpoint * 0 + 1 / $rfs-rem-value);\n}\n\n// Responsive font-size mixin\n@mixin rfs($fs, $important: false) {\n // Cache $fs unit\n $fs-unit: if(type-of($fs) == \"number\", unit($fs), false);\n\n // Add !important suffix if needed\n $rfs-suffix: if($important, \" !important\", \"\");\n\n // If $fs isn't a number (like inherit) or $fs has a unit (not px or rem, like 1.5em) or $ is 0, just print the value\n @if not $fs-unit or $fs-unit != \"\" and $fs-unit != \"px\" and $fs-unit != \"rem\" or $fs == 0 {\n font-size: #{$fs}#{$rfs-suffix};\n }\n @else {\n // Variables for storing static and fluid rescaling\n $rfs-static: null;\n $rfs-fluid: null;\n\n // Remove px-unit from $fs for calculations\n @if $fs-unit == \"px\" {\n $fs: $fs / ($fs * 0 + 1);\n }\n @else if $fs-unit == \"rem\" {\n $fs: $fs / ($fs * 0 + 1 / $rfs-rem-value);\n }\n\n // Set default font-size\n @if $rfs-font-size-unit == rem {\n $rfs-static: #{$fs / $rfs-rem-value}rem#{$rfs-suffix};\n }\n @else if $rfs-font-size-unit == px {\n $rfs-static: #{$fs}px#{$rfs-suffix};\n }\n @else {\n @error \"`#{$rfs-font-size-unit}` is not a valid unit for $rfs-font-size-unit. Use `px` or `rem`.\";\n }\n\n // Only add media query if font-size is bigger as the minimum font-size\n // If $rfs-factor == 1, no rescaling will take place\n @if $fs > $rfs-base-font-size and $enable-responsive-font-sizes {\n $min-width: null;\n $variable-unit: null;\n\n // Calculate minimum font-size for given font-size\n $fs-min: $rfs-base-font-size + ($fs - $rfs-base-font-size) / $rfs-factor;\n\n // Calculate difference between given font-size and minimum font-size for given font-size\n $fs-diff: $fs - $fs-min;\n\n // Base font-size formatting\n // No need to check if the unit is valid, because we did that before\n $min-width: if($rfs-font-size-unit == rem, #{$fs-min / $rfs-rem-value}rem, #{$fs-min}px);\n\n // If two-dimensional, use smallest of screen width and height\n $variable-unit: if($rfs-two-dimensional, vmin, vw);\n\n // Calculate the variable width between 0 and $rfs-breakpoint\n $variable-width: #{$fs-diff * 100 / $rfs-breakpoint}#{$variable-unit};\n\n // Set the calculated font-size.\n $rfs-fluid: calc(#{$min-width} + #{$variable-width}) #{$rfs-suffix};\n }\n\n // Rendering\n @if $rfs-fluid == null {\n // Only render static font-size if no fluid font-size is available\n font-size: $rfs-static;\n }\n @else {\n $mq-value: null;\n\n // RFS breakpoint formatting\n @if $rfs-breakpoint-unit == em or $rfs-breakpoint-unit == rem {\n $mq-value: #{$rfs-breakpoint / $rfs-rem-value}#{$rfs-breakpoint-unit};\n }\n @else if $rfs-breakpoint-unit == px {\n $mq-value: #{$rfs-breakpoint}px;\n }\n @else {\n @error \"`#{$rfs-breakpoint-unit}` is not a valid unit for $rfs-breakpoint-unit. Use `px`, `em` or `rem`.\";\n }\n\n @if $rfs-class == \"disable\" {\n // Adding an extra class increases specificity,\n // which prevents the media query to override the font size\n &,\n .disable-responsive-font-size &,\n &.disable-responsive-font-size {\n font-size: $rfs-static;\n }\n }\n @else {\n font-size: $rfs-static;\n }\n\n @if $rfs-two-dimensional {\n @media (max-width: #{$mq-value}), (max-height: #{$mq-value}) {\n @if $rfs-class == \"enable\" {\n .enable-responsive-font-size &,\n &.enable-responsive-font-size {\n font-size: $rfs-fluid;\n }\n }\n @else {\n font-size: $rfs-fluid;\n }\n\n @if $rfs-safari-iframe-resize-bug-fix {\n // stylelint-disable-next-line length-zero-no-unit\n min-width: 0vw;\n }\n }\n }\n @else {\n @media (max-width: #{$mq-value}) {\n @if $rfs-class == \"enable\" {\n .enable-responsive-font-size &,\n &.enable-responsive-font-size {\n font-size: $rfs-fluid;\n }\n }\n @else {\n font-size: $rfs-fluid;\n }\n\n @if $rfs-safari-iframe-resize-bug-fix {\n // stylelint-disable-next-line length-zero-no-unit\n min-width: 0vw;\n }\n }\n }\n }\n }\n}\n\n// The font-size & responsive-font-size mixin uses RFS to rescale font sizes\n@mixin font-size($fs, $important: false) {\n @include rfs($fs, $important);\n}\n\n@mixin responsive-font-size($fs, $important: false) {\n @include rfs($fs, $important);\n}\n","/*!\n * Bootstrap v4.3.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 The Bootstrap Authors\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n:root {\n --blue: #007bff;\n --indigo: #6610f2;\n --purple: #6f42c1;\n --pink: #e83e8c;\n --red: #dc3545;\n --orange: #fd7e14;\n --yellow: #ffc107;\n --green: #28a745;\n --teal: #20c997;\n --cyan: #17a2b8;\n --white: #fff;\n --gray: #6c757d;\n --gray-dark: #343a40;\n --primary: #007bff;\n --secondary: #6c757d;\n --success: #28a745;\n --info: #17a2b8;\n --warning: #ffc107;\n --danger: #dc3545;\n --light: #f8f9fa;\n --dark: #343a40;\n --breakpoint-xs: 0;\n --breakpoint-sm: 576px;\n --breakpoint-md: 768px;\n --breakpoint-lg: 992px;\n --breakpoint-xl: 1200px;\n --font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml {\n font-family: sans-serif;\n line-height: 1.15;\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\narticle, aside, figcaption, figure, footer, header, hgroup, main, nav, section {\n display: block;\n}\n\nbody {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: left;\n background-color: #fff;\n}\n\n[tabindex=\"-1\"]:focus {\n outline: 0 !important;\n}\n\nhr {\n box-sizing: content-box;\n height: 0;\n overflow: visible;\n}\n\nh1, h2, h3, h4, h5, h6 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-original-title] {\n text-decoration: underline;\n text-decoration: underline dotted;\n cursor: help;\n border-bottom: 0;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall {\n font-size: 80%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -.25em;\n}\n\nsup {\n top: -.5em;\n}\n\na {\n color: #007bff;\n text-decoration: none;\n background-color: transparent;\n}\n\na:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\na:not([href]):not([tabindex]) {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {\n color: inherit;\n text-decoration: none;\n}\n\na:not([href]):not([tabindex]):focus {\n outline: 0;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 1em;\n}\n\npre {\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg {\n vertical-align: middle;\n border-style: none;\n}\n\nsvg {\n overflow: hidden;\n vertical-align: middle;\n}\n\ntable {\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: #6c757d;\n text-align: left;\n caption-side: bottom;\n}\n\nth {\n text-align: inherit;\n}\n\nlabel {\n display: inline-block;\n margin-bottom: 0.5rem;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\ninput {\n overflow: visible;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\nselect {\n word-wrap: normal;\n}\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\nbutton:not(:disabled),\n[type=\"button\"]:not(:disabled),\n[type=\"reset\"]:not(:disabled),\n[type=\"submit\"]:not(:disabled) {\n cursor: pointer;\n}\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n box-sizing: border-box;\n padding: 0;\n}\n\ninput[type=\"date\"],\ninput[type=\"time\"],\ninput[type=\"datetime-local\"],\ninput[type=\"month\"] {\n -webkit-appearance: listbox;\n}\n\ntextarea {\n overflow: auto;\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n max-width: 100%;\n padding: 0;\n margin-bottom: .5rem;\n font-size: 1.5rem;\n line-height: inherit;\n color: inherit;\n white-space: normal;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n[type=\"search\"] {\n outline-offset: -2px;\n -webkit-appearance: none;\n}\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\ntemplate {\n display: none;\n}\n\n[hidden] {\n display: none !important;\n}\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n}\n\nh1, .h1 {\n font-size: 2.5rem;\n}\n\nh2, .h2 {\n font-size: 2rem;\n}\n\nh3, .h3 {\n font-size: 1.75rem;\n}\n\nh4, .h4 {\n font-size: 1.5rem;\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: 6rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-2 {\n font-size: 5.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-3 {\n font-size: 4.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-4 {\n font-size: 3.5rem;\n font-weight: 300;\n line-height: 1.2;\n}\n\nhr {\n margin-top: 1rem;\n margin-bottom: 1rem;\n border: 0;\n border-top: 1px solid rgba(0, 0, 0, 0.1);\n}\n\nsmall,\n.small {\n font-size: 80%;\n font-weight: 400;\n}\n\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n\n.blockquote-footer {\n display: block;\n font-size: 80%;\n color: #6c757d;\n}\n\n.blockquote-footer::before {\n content: \"\\2014\\00A0\";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: #fff;\n border: 1px solid #dee2e6;\n border-radius: 0.25rem;\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 90%;\n color: #6c757d;\n}\n\ncode {\n font-size: 87.5%;\n color: #e83e8c;\n word-break: break-word;\n}\n\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.2rem 0.4rem;\n font-size: 87.5%;\n color: #fff;\n background-color: #212529;\n border-radius: 0.2rem;\n}\n\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n}\n\npre {\n display: block;\n font-size: 87.5%;\n color: #212529;\n}\n\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n}\n\n.col-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n order: -1;\n}\n\n.order-last {\n order: 13;\n}\n\n.order-0 {\n order: 0;\n}\n\n.order-1 {\n order: 1;\n}\n\n.order-2 {\n order: 2;\n}\n\n.order-3 {\n order: 3;\n}\n\n.order-4 {\n order: 4;\n}\n\n.order-5 {\n order: 5;\n}\n\n.order-6 {\n order: 6;\n}\n\n.order-7 {\n order: 7;\n}\n\n.order-8 {\n order: 8;\n}\n\n.order-9 {\n order: 9;\n}\n\n.order-10 {\n order: 10;\n}\n\n.order-11 {\n order: 11;\n}\n\n.order-12 {\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-sm-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n order: -1;\n }\n .order-sm-last {\n order: 13;\n }\n .order-sm-0 {\n order: 0;\n }\n .order-sm-1 {\n order: 1;\n }\n .order-sm-2 {\n order: 2;\n }\n .order-sm-3 {\n order: 3;\n }\n .order-sm-4 {\n order: 4;\n }\n .order-sm-5 {\n order: 5;\n }\n .order-sm-6 {\n order: 6;\n }\n .order-sm-7 {\n order: 7;\n }\n .order-sm-8 {\n order: 8;\n }\n .order-sm-9 {\n order: 9;\n }\n .order-sm-10 {\n order: 10;\n }\n .order-sm-11 {\n order: 11;\n }\n .order-sm-12 {\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-md-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n order: -1;\n }\n .order-md-last {\n order: 13;\n }\n .order-md-0 {\n order: 0;\n }\n .order-md-1 {\n order: 1;\n }\n .order-md-2 {\n order: 2;\n }\n .order-md-3 {\n order: 3;\n }\n .order-md-4 {\n order: 4;\n }\n .order-md-5 {\n order: 5;\n }\n .order-md-6 {\n order: 6;\n }\n .order-md-7 {\n order: 7;\n }\n .order-md-8 {\n order: 8;\n }\n .order-md-9 {\n order: 9;\n }\n .order-md-10 {\n order: 10;\n }\n .order-md-11 {\n order: 11;\n }\n .order-md-12 {\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-lg-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n order: -1;\n }\n .order-lg-last {\n order: 13;\n }\n .order-lg-0 {\n order: 0;\n }\n .order-lg-1 {\n order: 1;\n }\n .order-lg-2 {\n order: 2;\n }\n .order-lg-3 {\n order: 3;\n }\n .order-lg-4 {\n order: 4;\n }\n .order-lg-5 {\n order: 5;\n }\n .order-lg-6 {\n order: 6;\n }\n .order-lg-7 {\n order: 7;\n }\n .order-lg-8 {\n order: 8;\n }\n .order-lg-9 {\n order: 9;\n }\n .order-lg-10 {\n order: 10;\n }\n .order-lg-11 {\n order: 11;\n }\n .order-lg-12 {\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%;\n }\n .col-xl-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n order: -1;\n }\n .order-xl-last {\n order: 13;\n }\n .order-xl-0 {\n order: 0;\n }\n .order-xl-1 {\n order: 1;\n }\n .order-xl-2 {\n order: 2;\n }\n .order-xl-3 {\n order: 3;\n }\n .order-xl-4 {\n order: 4;\n }\n .order-xl-5 {\n order: 5;\n }\n .order-xl-6 {\n order: 6;\n }\n .order-xl-7 {\n order: 7;\n }\n .order-xl-8 {\n order: 8;\n }\n .order-xl-9 {\n order: 9;\n }\n .order-xl-10 {\n order: 10;\n }\n .order-xl-11 {\n order: 11;\n }\n .order-xl-12 {\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.table {\n width: 100%;\n margin-bottom: 1rem;\n color: #212529;\n}\n\n.table th,\n.table td {\n padding: 0.75rem;\n vertical-align: top;\n border-top: 1px solid #dee2e6;\n}\n\n.table thead th {\n vertical-align: bottom;\n border-bottom: 2px solid #dee2e6;\n}\n\n.table tbody + tbody {\n border-top: 2px solid #dee2e6;\n}\n\n.table-sm th,\n.table-sm td {\n padding: 0.3rem;\n}\n\n.table-bordered {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered th,\n.table-bordered td {\n border: 1px solid #dee2e6;\n}\n\n.table-bordered thead th,\n.table-bordered thead td {\n border-bottom-width: 2px;\n}\n\n.table-borderless th,\n.table-borderless td,\n.table-borderless thead th,\n.table-borderless tbody + tbody {\n border: 0;\n}\n\n.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(0, 0, 0, 0.05);\n}\n\n.table-hover tbody tr:hover {\n color: #212529;\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-primary,\n.table-primary > th,\n.table-primary > td {\n background-color: #b8daff;\n}\n\n.table-primary th,\n.table-primary td,\n.table-primary thead th,\n.table-primary tbody + tbody {\n border-color: #7abaff;\n}\n\n.table-hover .table-primary:hover {\n background-color: #9fcdff;\n}\n\n.table-hover .table-primary:hover > td,\n.table-hover .table-primary:hover > th {\n background-color: #9fcdff;\n}\n\n.table-secondary,\n.table-secondary > th,\n.table-secondary > td {\n background-color: #d6d8db;\n}\n\n.table-secondary th,\n.table-secondary td,\n.table-secondary thead th,\n.table-secondary tbody + tbody {\n border-color: #b3b7bb;\n}\n\n.table-hover .table-secondary:hover {\n background-color: #c8cbcf;\n}\n\n.table-hover .table-secondary:hover > td,\n.table-hover .table-secondary:hover > th {\n background-color: #c8cbcf;\n}\n\n.table-success,\n.table-success > th,\n.table-success > td {\n background-color: #c3e6cb;\n}\n\n.table-success th,\n.table-success td,\n.table-success thead th,\n.table-success tbody + tbody {\n border-color: #8fd19e;\n}\n\n.table-hover .table-success:hover {\n background-color: #b1dfbb;\n}\n\n.table-hover .table-success:hover > td,\n.table-hover .table-success:hover > th {\n background-color: #b1dfbb;\n}\n\n.table-info,\n.table-info > th,\n.table-info > td {\n background-color: #bee5eb;\n}\n\n.table-info th,\n.table-info td,\n.table-info thead th,\n.table-info tbody + tbody {\n border-color: #86cfda;\n}\n\n.table-hover .table-info:hover {\n background-color: #abdde5;\n}\n\n.table-hover .table-info:hover > td,\n.table-hover .table-info:hover > th {\n background-color: #abdde5;\n}\n\n.table-warning,\n.table-warning > th,\n.table-warning > td {\n background-color: #ffeeba;\n}\n\n.table-warning th,\n.table-warning td,\n.table-warning thead th,\n.table-warning tbody + tbody {\n border-color: #ffdf7e;\n}\n\n.table-hover .table-warning:hover {\n background-color: #ffe8a1;\n}\n\n.table-hover .table-warning:hover > td,\n.table-hover .table-warning:hover > th {\n background-color: #ffe8a1;\n}\n\n.table-danger,\n.table-danger > th,\n.table-danger > td {\n background-color: #f5c6cb;\n}\n\n.table-danger th,\n.table-danger td,\n.table-danger thead th,\n.table-danger tbody + tbody {\n border-color: #ed969e;\n}\n\n.table-hover .table-danger:hover {\n background-color: #f1b0b7;\n}\n\n.table-hover .table-danger:hover > td,\n.table-hover .table-danger:hover > th {\n background-color: #f1b0b7;\n}\n\n.table-light,\n.table-light > th,\n.table-light > td {\n background-color: #fdfdfe;\n}\n\n.table-light th,\n.table-light td,\n.table-light thead th,\n.table-light tbody + tbody {\n border-color: #fbfcfc;\n}\n\n.table-hover .table-light:hover {\n background-color: #ececf6;\n}\n\n.table-hover .table-light:hover > td,\n.table-hover .table-light:hover > th {\n background-color: #ececf6;\n}\n\n.table-dark,\n.table-dark > th,\n.table-dark > td {\n background-color: #c6c8ca;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th,\n.table-dark tbody + tbody {\n border-color: #95999c;\n}\n\n.table-hover .table-dark:hover {\n background-color: #b9bbbe;\n}\n\n.table-hover .table-dark:hover > td,\n.table-hover .table-dark:hover > th {\n background-color: #b9bbbe;\n}\n\n.table-active,\n.table-active > th,\n.table-active > td {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table-hover .table-active:hover > td,\n.table-hover .table-active:hover > th {\n background-color: rgba(0, 0, 0, 0.075);\n}\n\n.table .thead-dark th {\n color: #fff;\n background-color: #343a40;\n border-color: #454d55;\n}\n\n.table .thead-light th {\n color: #495057;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.table-dark {\n color: #fff;\n background-color: #343a40;\n}\n\n.table-dark th,\n.table-dark td,\n.table-dark thead th {\n border-color: #454d55;\n}\n\n.table-dark.table-bordered {\n border: 0;\n}\n\n.table-dark.table-striped tbody tr:nth-of-type(odd) {\n background-color: rgba(255, 255, 255, 0.05);\n}\n\n.table-dark.table-hover tbody tr:hover {\n color: #fff;\n background-color: rgba(255, 255, 255, 0.075);\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-sm > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 767.98px) {\n .table-responsive-md {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-md > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-lg > .table-bordered {\n border: 0;\n }\n}\n\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n .table-responsive-xl > .table-bordered {\n border: 0;\n }\n}\n\n.table-responsive {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n.table-responsive > .table-bordered {\n border: 0;\n}\n\n.form-control {\n display: block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n\n.form-control:focus {\n color: #495057;\n background-color: #fff;\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.form-control::placeholder {\n color: #6c757d;\n opacity: 1;\n}\n\n.form-control:disabled, .form-control[readonly] {\n background-color: #e9ecef;\n opacity: 1;\n}\n\nselect.form-control:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + 1px);\n padding-bottom: calc(0.375rem + 1px);\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + 1px);\n padding-bottom: calc(0.5rem + 1px);\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + 1px);\n padding-bottom: calc(0.25rem + 1px);\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding-top: 0.375rem;\n padding-bottom: 0.375rem;\n margin-bottom: 0;\n line-height: 1.5;\n color: #212529;\n background-color: transparent;\n border: solid transparent;\n border-width: 1px 0;\n}\n\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.form-control-lg {\n height: calc(1.5em + 1rem + 2px);\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\nselect.form-control[size], select.form-control[multiple] {\n height: auto;\n}\n\ntextarea.form-control {\n height: auto;\n}\n\n.form-group {\n margin-bottom: 1rem;\n}\n\n.form-text {\n display: block;\n margin-top: 0.25rem;\n}\n\n.form-row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -5px;\n margin-left: -5px;\n}\n\n.form-row > .col,\n.form-row > [class*=\"col-\"] {\n padding-right: 5px;\n padding-left: 5px;\n}\n\n.form-check {\n position: relative;\n display: block;\n padding-left: 1.25rem;\n}\n\n.form-check-input {\n position: absolute;\n margin-top: 0.3rem;\n margin-left: -1.25rem;\n}\n\n.form-check-input:disabled ~ .form-check-label {\n color: #6c757d;\n}\n\n.form-check-label {\n margin-bottom: 0;\n}\n\n.form-check-inline {\n display: inline-flex;\n align-items: center;\n padding-left: 0;\n margin-right: 0.75rem;\n}\n\n.form-check-inline .form-check-input {\n position: static;\n margin-top: 0;\n margin-right: 0.3125rem;\n margin-left: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #28a745;\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(40, 167, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: #28a745;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .form-control:valid ~ .valid-feedback,\n.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,\n.form-control.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:valid, .custom-select.is-valid {\n border-color: #28a745;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e\") no-repeat right 0.75rem center/8px 10px, url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-select:valid ~ .valid-feedback,\n.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,\n.custom-select.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:valid ~ .valid-feedback,\n.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,\n.form-control-file.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: #28a745;\n}\n\n.was-validated .form-check-input:valid ~ .valid-feedback,\n.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,\n.form-check-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {\n color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-control-input:valid ~ .valid-feedback,\n.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,\n.custom-control-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {\n border-color: #34ce57;\n background-color: #34ce57;\n}\n\n.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {\n border-color: #28a745;\n}\n\n.was-validated .custom-file-input:valid ~ .valid-feedback,\n.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,\n.custom-file-input.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {\n border-color: #28a745;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 80%;\n color: #dc3545;\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: .1rem;\n font-size: 0.875rem;\n line-height: 1.5;\n color: #fff;\n background-color: rgba(220, 53, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: #dc3545;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E\");\n background-repeat: no-repeat;\n background-position: center right calc(0.375em + 0.1875rem);\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .form-control:invalid ~ .invalid-feedback,\n.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,\n.form-control.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .custom-select:invalid, .custom-select.is-invalid {\n border-color: #dc3545;\n padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);\n background: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e\") no-repeat right 0.75rem center/8px 10px, url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E\") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n\n.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-select:invalid ~ .invalid-feedback,\n.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,\n.custom-select.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control-file:invalid ~ .invalid-feedback,\n.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,\n.form-control-file.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: #dc3545;\n}\n\n.was-validated .form-check-input:invalid ~ .invalid-feedback,\n.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,\n.form-check-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {\n color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-control-input:invalid ~ .invalid-feedback,\n.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,\n.custom-control-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {\n border-color: #e4606d;\n background-color: #e4606d;\n}\n\n.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {\n border-color: #dc3545;\n}\n\n.was-validated .custom-file-input:invalid ~ .invalid-feedback,\n.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,\n.custom-file-input.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);\n}\n\n.form-inline {\n display: flex;\n flex-flow: row wrap;\n align-items: center;\n}\n\n.form-inline .form-check {\n width: 100%;\n}\n\n@media (min-width: 576px) {\n .form-inline label {\n display: flex;\n align-items: center;\n justify-content: center;\n margin-bottom: 0;\n }\n .form-inline .form-group {\n display: flex;\n flex: 0 0 auto;\n flex-flow: row wrap;\n align-items: center;\n margin-bottom: 0;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-plaintext {\n display: inline-block;\n }\n .form-inline .input-group,\n .form-inline .custom-select {\n width: auto;\n }\n .form-inline .form-check {\n display: flex;\n align-items: center;\n justify-content: center;\n width: auto;\n padding-left: 0;\n }\n .form-inline .form-check-input {\n position: relative;\n flex-shrink: 0;\n margin-top: 0;\n margin-right: 0.25rem;\n margin-left: 0;\n }\n .form-inline .custom-control {\n align-items: center;\n justify-content: center;\n }\n .form-inline .custom-control-label {\n margin-bottom: 0;\n }\n}\n\n.btn {\n display: inline-block;\n font-weight: 400;\n color: #212529;\n text-align: center;\n vertical-align: middle;\n user-select: none;\n background-color: transparent;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n line-height: 1.5;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n\n.btn:hover {\n color: #212529;\n text-decoration: none;\n}\n\n.btn:focus, .btn.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.btn.disabled, .btn:disabled {\n opacity: 0.65;\n}\n\na.btn.disabled,\nfieldset:disabled a.btn {\n pointer-events: none;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:hover {\n color: #fff;\n background-color: #0069d9;\n border-color: #0062cc;\n}\n\n.btn-primary:focus, .btn-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-primary.disabled, .btn-primary:disabled {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,\n.show > .btn-primary.dropdown-toggle {\n color: #fff;\n background-color: #0062cc;\n border-color: #005cbf;\n}\n\n.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:hover {\n color: #fff;\n background-color: #5a6268;\n border-color: #545b62;\n}\n\n.btn-secondary:focus, .btn-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-secondary.disabled, .btn-secondary:disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-secondary.dropdown-toggle {\n color: #fff;\n background-color: #545b62;\n border-color: #4e555b;\n}\n\n.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);\n}\n\n.btn-success {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:hover {\n color: #fff;\n background-color: #218838;\n border-color: #1e7e34;\n}\n\n.btn-success:focus, .btn-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-success.disabled, .btn-success:disabled {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,\n.show > .btn-success.dropdown-toggle {\n color: #fff;\n background-color: #1e7e34;\n border-color: #1c7430;\n}\n\n.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);\n}\n\n.btn-info {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:hover {\n color: #fff;\n background-color: #138496;\n border-color: #117a8b;\n}\n\n.btn-info:focus, .btn-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-info.disabled, .btn-info:disabled {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,\n.show > .btn-info.dropdown-toggle {\n color: #fff;\n background-color: #117a8b;\n border-color: #10707f;\n}\n\n.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);\n}\n\n.btn-warning {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:hover {\n color: #212529;\n background-color: #e0a800;\n border-color: #d39e00;\n}\n\n.btn-warning:focus, .btn-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-warning.disabled, .btn-warning:disabled {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,\n.show > .btn-warning.dropdown-toggle {\n color: #212529;\n background-color: #d39e00;\n border-color: #c69500;\n}\n\n.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:hover {\n color: #fff;\n background-color: #c82333;\n border-color: #bd2130;\n}\n\n.btn-danger:focus, .btn-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-danger.disabled, .btn-danger:disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,\n.show > .btn-danger.dropdown-toggle {\n color: #fff;\n background-color: #bd2130;\n border-color: #b21f2d;\n}\n\n.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);\n}\n\n.btn-light {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:hover {\n color: #212529;\n background-color: #e2e6ea;\n border-color: #dae0e5;\n}\n\n.btn-light:focus, .btn-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-light.disabled, .btn-light:disabled {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,\n.show > .btn-light.dropdown-toggle {\n color: #212529;\n background-color: #dae0e5;\n border-color: #d3d9df;\n}\n\n.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);\n}\n\n.btn-dark {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:hover {\n color: #fff;\n background-color: #23272b;\n border-color: #1d2124;\n}\n\n.btn-dark:focus, .btn-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-dark.disabled, .btn-dark:disabled {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,\n.show > .btn-dark.dropdown-toggle {\n color: #fff;\n background-color: #1d2124;\n border-color: #171a1d;\n}\n\n.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);\n}\n\n.btn-outline-primary {\n color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:hover {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:focus, .btn-outline-primary.focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-primary.disabled, .btn-outline-primary:disabled {\n color: #007bff;\n background-color: transparent;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-primary.dropdown-toggle {\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.btn-outline-secondary {\n color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:hover {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:focus, .btn-outline-secondary.focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {\n color: #6c757d;\n background-color: transparent;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,\n.show > .btn-outline-secondary.dropdown-toggle {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.btn-outline-success {\n color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:hover {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:focus, .btn-outline-success.focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-success.disabled, .btn-outline-success:disabled {\n color: #28a745;\n background-color: transparent;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,\n.show > .btn-outline-success.dropdown-toggle {\n color: #fff;\n background-color: #28a745;\n border-color: #28a745;\n}\n\n.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.btn-outline-info {\n color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:hover {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:focus, .btn-outline-info.focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-info.disabled, .btn-outline-info:disabled {\n color: #17a2b8;\n background-color: transparent;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,\n.show > .btn-outline-info.dropdown-toggle {\n color: #fff;\n background-color: #17a2b8;\n border-color: #17a2b8;\n}\n\n.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.btn-outline-warning {\n color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:hover {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:focus, .btn-outline-warning.focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-warning.disabled, .btn-outline-warning:disabled {\n color: #ffc107;\n background-color: transparent;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,\n.show > .btn-outline-warning.dropdown-toggle {\n color: #212529;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.btn-outline-danger {\n color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:hover {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:focus, .btn-outline-danger.focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-danger.disabled, .btn-outline-danger:disabled {\n color: #dc3545;\n background-color: transparent;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,\n.show > .btn-outline-danger.dropdown-toggle {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.btn-outline-light {\n color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:hover {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:focus, .btn-outline-light.focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-light.disabled, .btn-outline-light:disabled {\n color: #f8f9fa;\n background-color: transparent;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,\n.show > .btn-outline-light.dropdown-toggle {\n color: #212529;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.btn-outline-dark {\n color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:hover {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:focus, .btn-outline-dark.focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-outline-dark.disabled, .btn-outline-dark:disabled {\n color: #343a40;\n background-color: transparent;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,\n.show > .btn-outline-dark.dropdown-toggle {\n color: #fff;\n background-color: #343a40;\n border-color: #343a40;\n}\n\n.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,\n.show > .btn-outline-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.btn-link {\n font-weight: 400;\n color: #007bff;\n text-decoration: none;\n}\n\n.btn-link:hover {\n color: #0056b3;\n text-decoration: underline;\n}\n\n.btn-link:focus, .btn-link.focus {\n text-decoration: underline;\n box-shadow: none;\n}\n\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n pointer-events: none;\n}\n\n.btn-lg, .btn-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.btn-sm, .btn-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.btn-block {\n display: block;\n width: 100%;\n}\n\n.btn-block + .btn-block {\n margin-top: 0.5rem;\n}\n\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n\n.dropup,\n.dropright,\n.dropdown,\n.dropleft {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 10rem;\n padding: 0.5rem 0;\n margin: 0.125rem 0 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.25rem;\n}\n\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 768px) {\n .dropdown-menu-md-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 992px) {\n .dropdown-menu-lg-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-right {\n right: 0;\n left: auto;\n }\n}\n\n@media (min-width: 1200px) {\n .dropdown-menu-xl-left {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-right {\n right: 0;\n left: auto;\n }\n}\n\n.dropup .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: 0.125rem;\n}\n\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-menu {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: 0.125rem;\n}\n\n.dropright .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n\n.dropright .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropright .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropleft .dropdown-menu {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: 0.125rem;\n}\n\n.dropleft .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n\n.dropleft .dropdown-toggle::after {\n display: none;\n}\n\n.dropleft .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n\n.dropleft .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-menu[x-placement^=\"top\"], .dropdown-menu[x-placement^=\"right\"], .dropdown-menu[x-placement^=\"bottom\"], .dropdown-menu[x-placement^=\"left\"] {\n right: auto;\n bottom: auto;\n}\n\n.dropdown-divider {\n height: 0;\n margin: 0.5rem 0;\n overflow: hidden;\n border-top: 1px solid #e9ecef;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: 0.25rem 1.5rem;\n clear: both;\n font-weight: 400;\n color: #212529;\n text-align: inherit;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n}\n\n.dropdown-item:hover, .dropdown-item:focus {\n color: #16181b;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.dropdown-item.active, .dropdown-item:active {\n color: #fff;\n text-decoration: none;\n background-color: #007bff;\n}\n\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: 0.5rem 1.5rem;\n margin-bottom: 0;\n font-size: 0.875rem;\n color: #6c757d;\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: 0.25rem 1.5rem;\n color: #212529;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n vertical-align: middle;\n}\n\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n flex: 1 1 auto;\n}\n\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover {\n z-index: 1;\n}\n\n.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n}\n\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) {\n margin-left: -1px;\n}\n\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n\n.dropdown-toggle-split::after,\n.dropup .dropdown-toggle-split::after,\n.dropright .dropdown-toggle-split::after {\n margin-left: 0;\n}\n\n.dropleft .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n}\n\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: -1px;\n}\n\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.btn-group-toggle > .btn,\n.btn-group-toggle > .btn-group > .btn {\n margin-bottom: 0;\n}\n\n.btn-group-toggle > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn input[type=\"checkbox\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"radio\"],\n.btn-group-toggle > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n width: 100%;\n}\n\n.input-group > .form-control,\n.input-group > .form-control-plaintext,\n.input-group > .custom-select,\n.input-group > .custom-file {\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n margin-bottom: 0;\n}\n\n.input-group > .form-control + .form-control,\n.input-group > .form-control + .custom-select,\n.input-group > .form-control + .custom-file,\n.input-group > .form-control-plaintext + .form-control,\n.input-group > .form-control-plaintext + .custom-select,\n.input-group > .form-control-plaintext + .custom-file,\n.input-group > .custom-select + .form-control,\n.input-group > .custom-select + .custom-select,\n.input-group > .custom-select + .custom-file,\n.input-group > .custom-file + .form-control,\n.input-group > .custom-file + .custom-select,\n.input-group > .custom-file + .custom-file {\n margin-left: -1px;\n}\n\n.input-group > .form-control:focus,\n.input-group > .custom-select:focus,\n.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {\n z-index: 3;\n}\n\n.input-group > .custom-file .custom-file-input:focus {\n z-index: 4;\n}\n\n.input-group > .form-control:not(:last-child),\n.input-group > .custom-select:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .form-control:not(:first-child),\n.input-group > .custom-select:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group > .custom-file {\n display: flex;\n align-items: center;\n}\n\n.input-group > .custom-file:not(:last-child) .custom-file-label,\n.input-group > .custom-file:not(:last-child) .custom-file-label::after {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .custom-file:not(:first-child) .custom-file-label {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.input-group-prepend,\n.input-group-append {\n display: flex;\n}\n\n.input-group-prepend .btn,\n.input-group-append .btn {\n position: relative;\n z-index: 2;\n}\n\n.input-group-prepend .btn:focus,\n.input-group-append .btn:focus {\n z-index: 3;\n}\n\n.input-group-prepend .btn + .btn,\n.input-group-prepend .btn + .input-group-text,\n.input-group-prepend .input-group-text + .input-group-text,\n.input-group-prepend .input-group-text + .btn,\n.input-group-append .btn + .btn,\n.input-group-append .btn + .input-group-text,\n.input-group-append .input-group-text + .input-group-text,\n.input-group-append .input-group-text + .btn {\n margin-left: -1px;\n}\n\n.input-group-prepend {\n margin-right: -1px;\n}\n\n.input-group-append {\n margin-left: -1px;\n}\n\n.input-group-text {\n display: flex;\n align-items: center;\n padding: 0.375rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n text-align: center;\n white-space: nowrap;\n background-color: #e9ecef;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.input-group-text input[type=\"radio\"],\n.input-group-text input[type=\"checkbox\"] {\n margin-top: 0;\n}\n\n.input-group-lg > .form-control:not(textarea),\n.input-group-lg > .custom-select {\n height: calc(1.5em + 1rem + 2px);\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .custom-select,\n.input-group-lg > .input-group-prepend > .input-group-text,\n.input-group-lg > .input-group-append > .input-group-text,\n.input-group-lg > .input-group-prepend > .btn,\n.input-group-lg > .input-group-append > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n line-height: 1.5;\n border-radius: 0.3rem;\n}\n\n.input-group-sm > .form-control:not(textarea),\n.input-group-sm > .custom-select {\n height: calc(1.5em + 0.5rem + 2px);\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .custom-select,\n.input-group-sm > .input-group-prepend > .input-group-text,\n.input-group-sm > .input-group-append > .input-group-text,\n.input-group-sm > .input-group-prepend > .btn,\n.input-group-sm > .input-group-append > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n border-radius: 0.2rem;\n}\n\n.input-group-lg > .custom-select,\n.input-group-sm > .custom-select {\n padding-right: 1.75rem;\n}\n\n.input-group > .input-group-prepend > .btn,\n.input-group > .input-group-prepend > .input-group-text,\n.input-group > .input-group-append:not(:last-child) > .btn,\n.input-group > .input-group-append:not(:last-child) > .input-group-text,\n.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.input-group > .input-group-append > .btn,\n.input-group > .input-group-append > .input-group-text,\n.input-group > .input-group-prepend:not(:first-child) > .btn,\n.input-group > .input-group-prepend:not(:first-child) > .input-group-text,\n.input-group > .input-group-prepend:first-child > .btn:not(:first-child),\n.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.custom-control {\n position: relative;\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5rem;\n}\n\n.custom-control-inline {\n display: inline-flex;\n margin-right: 1rem;\n}\n\n.custom-control-input {\n position: absolute;\n z-index: -1;\n opacity: 0;\n}\n\n.custom-control-input:checked ~ .custom-control-label::before {\n color: #fff;\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-control-input:focus ~ .custom-control-label::before {\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {\n border-color: #80bdff;\n}\n\n.custom-control-input:not(:disabled):active ~ .custom-control-label::before {\n color: #fff;\n background-color: #b3d7ff;\n border-color: #b3d7ff;\n}\n\n.custom-control-input:disabled ~ .custom-control-label {\n color: #6c757d;\n}\n\n.custom-control-input:disabled ~ .custom-control-label::before {\n background-color: #e9ecef;\n}\n\n.custom-control-label {\n position: relative;\n margin-bottom: 0;\n vertical-align: top;\n}\n\n.custom-control-label::before {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n pointer-events: none;\n content: \"\";\n background-color: #fff;\n border: #adb5bd solid 1px;\n}\n\n.custom-control-label::after {\n position: absolute;\n top: 0.25rem;\n left: -1.5rem;\n display: block;\n width: 1rem;\n height: 1rem;\n content: \"\";\n background: no-repeat 50% / 50% 50%;\n}\n\n.custom-checkbox .custom-control-label::before {\n border-radius: 0.25rem;\n}\n\n.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e\");\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {\n border-color: #007bff;\n background-color: #007bff;\n}\n\n.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e\");\n}\n\n.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-radio .custom-control-label::before {\n border-radius: 50%;\n}\n\n.custom-radio .custom-control-input:checked ~ .custom-control-label::after {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n\n.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-switch {\n padding-left: 2.25rem;\n}\n\n.custom-switch .custom-control-label::before {\n left: -2.25rem;\n width: 1.75rem;\n pointer-events: all;\n border-radius: 0.5rem;\n}\n\n.custom-switch .custom-control-label::after {\n top: calc(0.25rem + 2px);\n left: calc(-2.25rem + 2px);\n width: calc(1rem - 4px);\n height: calc(1rem - 4px);\n background-color: #adb5bd;\n border-radius: 0.5rem;\n transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-switch .custom-control-label::after {\n transition: none;\n }\n}\n\n.custom-switch .custom-control-input:checked ~ .custom-control-label::after {\n background-color: #fff;\n transform: translateX(0.75rem);\n}\n\n.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {\n background-color: rgba(0, 123, 255, 0.5);\n}\n\n.custom-select {\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 1.75rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n vertical-align: middle;\n background: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e\") no-repeat right 0.75rem center/8px 10px;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n appearance: none;\n}\n\n.custom-select:focus {\n border-color: #80bdff;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-select:focus::-ms-value {\n color: #495057;\n background-color: #fff;\n}\n\n.custom-select[multiple], .custom-select[size]:not([size=\"1\"]) {\n height: auto;\n padding-right: 0.75rem;\n background-image: none;\n}\n\n.custom-select:disabled {\n color: #6c757d;\n background-color: #e9ecef;\n}\n\n.custom-select::-ms-expand {\n display: none;\n}\n\n.custom-select-sm {\n height: calc(1.5em + 0.5rem + 2px);\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n}\n\n.custom-select-lg {\n height: calc(1.5em + 1rem + 2px);\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n}\n\n.custom-file {\n position: relative;\n display: inline-block;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin-bottom: 0;\n}\n\n.custom-file-input {\n position: relative;\n z-index: 2;\n width: 100%;\n height: calc(1.5em + 0.75rem + 2px);\n margin: 0;\n opacity: 0;\n}\n\n.custom-file-input:focus ~ .custom-file-label {\n border-color: #80bdff;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-file-input:disabled ~ .custom-file-label {\n background-color: #e9ecef;\n}\n\n.custom-file-input:lang(en) ~ .custom-file-label::after {\n content: \"Browse\";\n}\n\n.custom-file-input ~ .custom-file-label[data-browse]::after {\n content: attr(data-browse);\n}\n\n.custom-file-label {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1;\n height: calc(1.5em + 0.75rem + 2px);\n padding: 0.375rem 0.75rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n background-color: #fff;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.custom-file-label::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n z-index: 3;\n display: block;\n height: calc(1.5em + 0.75rem);\n padding: 0.375rem 0.75rem;\n line-height: 1.5;\n color: #495057;\n content: \"Browse\";\n background-color: #e9ecef;\n border-left: inherit;\n border-radius: 0 0.25rem 0.25rem 0;\n}\n\n.custom-range {\n width: 100%;\n height: calc(1rem + 0.4rem);\n padding: 0;\n background-color: transparent;\n appearance: none;\n}\n\n.custom-range:focus {\n outline: none;\n}\n\n.custom-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range:focus::-ms-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.custom-range::-moz-focus-outer {\n border: 0;\n}\n\n.custom-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-webkit-slider-thumb {\n transition: none;\n }\n}\n\n.custom-range::-webkit-slider-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-moz-range-thumb {\n transition: none;\n }\n}\n\n.custom-range::-moz-range-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: 0;\n margin-right: 0.2rem;\n margin-left: 0.2rem;\n background-color: #007bff;\n border: 0;\n border-radius: 1rem;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-range::-ms-thumb {\n transition: none;\n }\n}\n\n.custom-range::-ms-thumb:active {\n background-color: #b3d7ff;\n}\n\n.custom-range::-ms-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: transparent;\n border-color: transparent;\n border-width: 0.5rem;\n}\n\n.custom-range::-ms-fill-lower {\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range::-ms-fill-upper {\n margin-right: 15px;\n background-color: #dee2e6;\n border-radius: 1rem;\n}\n\n.custom-range:disabled::-webkit-slider-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-webkit-slider-runnable-track {\n cursor: default;\n}\n\n.custom-range:disabled::-moz-range-thumb {\n background-color: #adb5bd;\n}\n\n.custom-range:disabled::-moz-range-track {\n cursor: default;\n}\n\n.custom-range:disabled::-ms-thumb {\n background-color: #adb5bd;\n}\n\n.custom-control-label::before,\n.custom-file-label,\n.custom-select {\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .custom-control-label::before,\n .custom-file-label,\n .custom-select {\n transition: none;\n }\n}\n\n.nav {\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: 0.5rem 1rem;\n}\n\n.nav-link:hover, .nav-link:focus {\n text-decoration: none;\n}\n\n.nav-link.disabled {\n color: #6c757d;\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n border-bottom: 1px solid #dee2e6;\n}\n\n.nav-tabs .nav-item {\n margin-bottom: -1px;\n}\n\n.nav-tabs .nav-link {\n border: 1px solid transparent;\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n border-color: #e9ecef #e9ecef #dee2e6;\n}\n\n.nav-tabs .nav-link.disabled {\n color: #6c757d;\n background-color: transparent;\n border-color: transparent;\n}\n\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: #495057;\n background-color: #fff;\n border-color: #dee2e6 #dee2e6 #fff;\n}\n\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills .nav-link {\n border-radius: 0.25rem;\n}\n\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: #fff;\n background-color: #007bff;\n}\n\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified .nav-item {\n flex-basis: 0;\n flex-grow: 1;\n text-align: center;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n padding: 0.5rem 1rem;\n}\n\n.navbar > .container,\n.navbar > .container-fluid {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n}\n\n.navbar-brand {\n display: inline-block;\n padding-top: 0.3125rem;\n padding-bottom: 0.3125rem;\n margin-right: 1rem;\n font-size: 1.25rem;\n line-height: inherit;\n white-space: nowrap;\n}\n\n.navbar-brand:hover, .navbar-brand:focus {\n text-decoration: none;\n}\n\n.navbar-nav {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.navbar-nav .nav-link {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-nav .dropdown-menu {\n position: static;\n float: none;\n}\n\n.navbar-text {\n display: inline-block;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navbar-collapse {\n flex-basis: 100%;\n flex-grow: 1;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: 0.25rem 0.75rem;\n font-size: 1.25rem;\n line-height: 1;\n background-color: transparent;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.navbar-toggler:hover, .navbar-toggler:focus {\n text-decoration: none;\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n content: \"\";\n background: no-repeat center center;\n background-size: 100% 100%;\n}\n\n@media (max-width: 575.98px) {\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-sm > .container,\n .navbar-expand-sm > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-sm .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 767.98px) {\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 768px) {\n .navbar-expand-md {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-md > .container,\n .navbar-expand-md > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-md .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 991.98px) {\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 992px) {\n .navbar-expand-lg {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-lg > .container,\n .navbar-expand-lg > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-lg .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n}\n\n@media (max-width: 1199.98px) {\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n flex-flow: row nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-xl > .container,\n .navbar-expand-xl > .container-fluid {\n flex-wrap: nowrap;\n }\n .navbar-expand-xl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n}\n\n.navbar-expand {\n flex-flow: row nowrap;\n justify-content: flex-start;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n padding-right: 0;\n padding-left: 0;\n}\n\n.navbar-expand .navbar-nav {\n flex-direction: row;\n}\n\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n\n.navbar-expand .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n}\n\n.navbar-expand > .container,\n.navbar-expand > .container-fluid {\n flex-wrap: nowrap;\n}\n\n.navbar-expand .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n}\n\n.navbar-expand .navbar-toggler {\n display: none;\n}\n\n.navbar-light .navbar-brand {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-nav .nav-link {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {\n color: rgba(0, 0, 0, 0.7);\n}\n\n.navbar-light .navbar-nav .nav-link.disabled {\n color: rgba(0, 0, 0, 0.3);\n}\n\n.navbar-light .navbar-nav .show > .nav-link,\n.navbar-light .navbar-nav .active > .nav-link,\n.navbar-light .navbar-nav .nav-link.show,\n.navbar-light .navbar-nav .nav-link.active {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-toggler {\n color: rgba(0, 0, 0, 0.5);\n border-color: rgba(0, 0, 0, 0.1);\n}\n\n.navbar-light .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-light .navbar-text {\n color: rgba(0, 0, 0, 0.5);\n}\n\n.navbar-light .navbar-text a {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-dark .navbar-brand {\n color: #fff;\n}\n\n.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {\n color: #fff;\n}\n\n.navbar-dark .navbar-nav .nav-link {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: rgba(255, 255, 255, 0.75);\n}\n\n.navbar-dark .navbar-nav .nav-link.disabled {\n color: rgba(255, 255, 255, 0.25);\n}\n\n.navbar-dark .navbar-nav .show > .nav-link,\n.navbar-dark .navbar-nav .active > .nav-link,\n.navbar-dark .navbar-nav .nav-link.show,\n.navbar-dark .navbar-nav .nav-link.active {\n color: #fff;\n}\n\n.navbar-dark .navbar-toggler {\n color: rgba(255, 255, 255, 0.5);\n border-color: rgba(255, 255, 255, 0.1);\n}\n\n.navbar-dark .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.navbar-dark .navbar-text {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.navbar-dark .navbar-text a {\n color: #fff;\n}\n\n.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {\n color: #fff;\n}\n\n.card {\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n\n.card > .list-group:first-child .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.card > .list-group:last-child .list-group-item:last-child {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.card-body {\n flex: 1 1 auto;\n padding: 1.25rem;\n}\n\n.card-title {\n margin-bottom: 0.75rem;\n}\n\n.card-subtitle {\n margin-top: -0.375rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link:hover {\n text-decoration: none;\n}\n\n.card-link + .card-link {\n margin-left: 1.25rem;\n}\n\n.card-header {\n padding: 0.75rem 1.25rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-header + .list-group .list-group-item:first-child {\n border-top: 0;\n}\n\n.card-footer {\n padding: 0.75rem 1.25rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.625rem;\n margin-bottom: -0.75rem;\n margin-left: -0.625rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.625rem;\n margin-left: -0.625rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1.25rem;\n}\n\n.card-img {\n width: 100%;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img-top {\n width: 100%;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img-bottom {\n width: 100%;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n\n.card-deck {\n display: flex;\n flex-direction: column;\n}\n\n.card-deck .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-deck {\n flex-flow: row wrap;\n margin-right: -15px;\n margin-left: -15px;\n }\n .card-deck .card {\n display: flex;\n flex: 1 0 0%;\n flex-direction: column;\n margin-right: 15px;\n margin-bottom: 0;\n margin-left: 15px;\n }\n}\n\n.card-group {\n display: flex;\n flex-direction: column;\n}\n\n.card-group > .card {\n margin-bottom: 15px;\n}\n\n@media (min-width: 576px) {\n .card-group {\n flex-flow: row wrap;\n }\n .card-group > .card {\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n .card-group > .card:not(:last-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n .card-group > .card:not(:last-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n .card-group > .card:not(:first-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n .card-group > .card:not(:first-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n\n.card-columns .card {\n margin-bottom: 0.75rem;\n}\n\n@media (min-width: 576px) {\n .card-columns {\n column-count: 3;\n column-gap: 1.25rem;\n orphans: 1;\n widows: 1;\n }\n .card-columns .card {\n display: inline-block;\n width: 100%;\n }\n}\n\n.accordion > .card {\n overflow: hidden;\n}\n\n.accordion > .card:not(:first-of-type) .card-header:first-child {\n border-radius: 0;\n}\n\n.accordion > .card:not(:first-of-type):not(:last-of-type) {\n border-bottom: 0;\n border-radius: 0;\n}\n\n.accordion > .card:first-of-type {\n border-bottom: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.accordion > .card:last-of-type {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.accordion > .card .card-header {\n margin-bottom: -1px;\n}\n\n.breadcrumb {\n display: flex;\n flex-wrap: wrap;\n padding: 0.75rem 1rem;\n margin-bottom: 1rem;\n list-style: none;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: 0.5rem;\n}\n\n.breadcrumb-item + .breadcrumb-item::before {\n display: inline-block;\n padding-right: 0.5rem;\n color: #6c757d;\n content: \"/\";\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: underline;\n}\n\n.breadcrumb-item + .breadcrumb-item:hover::before {\n text-decoration: none;\n}\n\n.breadcrumb-item.active {\n color: #6c757d;\n}\n\n.pagination {\n display: flex;\n padding-left: 0;\n list-style: none;\n border-radius: 0.25rem;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: 0.5rem 0.75rem;\n margin-left: -1px;\n line-height: 1.25;\n color: #007bff;\n background-color: #fff;\n border: 1px solid #dee2e6;\n}\n\n.page-link:hover {\n z-index: 2;\n color: #0056b3;\n text-decoration: none;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n\n.page-link:focus {\n z-index: 2;\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);\n}\n\n.page-item:first-child .page-link {\n margin-left: 0;\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.page-item:last-child .page-link {\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n}\n\n.page-item.active .page-link {\n z-index: 1;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.page-item.disabled .page-link {\n color: #6c757d;\n pointer-events: none;\n cursor: auto;\n background-color: #fff;\n border-color: #dee2e6;\n}\n\n.pagination-lg .page-link {\n padding: 0.75rem 1.5rem;\n font-size: 1.25rem;\n line-height: 1.5;\n}\n\n.pagination-lg .page-item:first-child .page-link {\n border-top-left-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.pagination-lg .page-item:last-child .page-link {\n border-top-right-radius: 0.3rem;\n border-bottom-right-radius: 0.3rem;\n}\n\n.pagination-sm .page-link {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n line-height: 1.5;\n}\n\n.pagination-sm .page-item:first-child .page-link {\n border-top-left-radius: 0.2rem;\n border-bottom-left-radius: 0.2rem;\n}\n\n.pagination-sm .page-item:last-child .page-link {\n border-top-right-radius: 0.2rem;\n border-bottom-right-radius: 0.2rem;\n}\n\n.badge {\n display: inline-block;\n padding: 0.25em 0.4em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .badge {\n transition: none;\n }\n}\n\na.badge:hover, a.badge:focus {\n text-decoration: none;\n}\n\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.badge-pill {\n padding-right: 0.6em;\n padding-left: 0.6em;\n border-radius: 10rem;\n}\n\n.badge-primary {\n color: #fff;\n background-color: #007bff;\n}\n\na.badge-primary:hover, a.badge-primary:focus {\n color: #fff;\n background-color: #0062cc;\n}\n\na.badge-primary:focus, a.badge-primary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);\n}\n\n.badge-secondary {\n color: #fff;\n background-color: #6c757d;\n}\n\na.badge-secondary:hover, a.badge-secondary:focus {\n color: #fff;\n background-color: #545b62;\n}\n\na.badge-secondary:focus, a.badge-secondary.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);\n}\n\n.badge-success {\n color: #fff;\n background-color: #28a745;\n}\n\na.badge-success:hover, a.badge-success:focus {\n color: #fff;\n background-color: #1e7e34;\n}\n\na.badge-success:focus, a.badge-success.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);\n}\n\n.badge-info {\n color: #fff;\n background-color: #17a2b8;\n}\n\na.badge-info:hover, a.badge-info:focus {\n color: #fff;\n background-color: #117a8b;\n}\n\na.badge-info:focus, a.badge-info.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);\n}\n\n.badge-warning {\n color: #212529;\n background-color: #ffc107;\n}\n\na.badge-warning:hover, a.badge-warning:focus {\n color: #212529;\n background-color: #d39e00;\n}\n\na.badge-warning:focus, a.badge-warning.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);\n}\n\n.badge-danger {\n color: #fff;\n background-color: #dc3545;\n}\n\na.badge-danger:hover, a.badge-danger:focus {\n color: #fff;\n background-color: #bd2130;\n}\n\na.badge-danger:focus, a.badge-danger.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);\n}\n\n.badge-light {\n color: #212529;\n background-color: #f8f9fa;\n}\n\na.badge-light:hover, a.badge-light:focus {\n color: #212529;\n background-color: #dae0e5;\n}\n\na.badge-light:focus, a.badge-light.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);\n}\n\n.badge-dark {\n color: #fff;\n background-color: #343a40;\n}\n\na.badge-dark:hover, a.badge-dark:focus {\n color: #fff;\n background-color: #1d2124;\n}\n\na.badge-dark:focus, a.badge-dark.focus {\n outline: 0;\n box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);\n}\n\n.jumbotron {\n padding: 2rem 1rem;\n margin-bottom: 2rem;\n background-color: #e9ecef;\n border-radius: 0.3rem;\n}\n\n@media (min-width: 576px) {\n .jumbotron {\n padding: 4rem 2rem;\n }\n}\n\n.jumbotron-fluid {\n padding-right: 0;\n padding-left: 0;\n border-radius: 0;\n}\n\n.alert {\n position: relative;\n padding: 0.75rem 1.25rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n}\n\n.alert-dismissible {\n padding-right: 4rem;\n}\n\n.alert-dismissible .close {\n position: absolute;\n top: 0;\n right: 0;\n padding: 0.75rem 1.25rem;\n color: inherit;\n}\n\n.alert-primary {\n color: #004085;\n background-color: #cce5ff;\n border-color: #b8daff;\n}\n\n.alert-primary hr {\n border-top-color: #9fcdff;\n}\n\n.alert-primary .alert-link {\n color: #002752;\n}\n\n.alert-secondary {\n color: #383d41;\n background-color: #e2e3e5;\n border-color: #d6d8db;\n}\n\n.alert-secondary hr {\n border-top-color: #c8cbcf;\n}\n\n.alert-secondary .alert-link {\n color: #202326;\n}\n\n.alert-success {\n color: #155724;\n background-color: #d4edda;\n border-color: #c3e6cb;\n}\n\n.alert-success hr {\n border-top-color: #b1dfbb;\n}\n\n.alert-success .alert-link {\n color: #0b2e13;\n}\n\n.alert-info {\n color: #0c5460;\n background-color: #d1ecf1;\n border-color: #bee5eb;\n}\n\n.alert-info hr {\n border-top-color: #abdde5;\n}\n\n.alert-info .alert-link {\n color: #062c33;\n}\n\n.alert-warning {\n color: #856404;\n background-color: #fff3cd;\n border-color: #ffeeba;\n}\n\n.alert-warning hr {\n border-top-color: #ffe8a1;\n}\n\n.alert-warning .alert-link {\n color: #533f03;\n}\n\n.alert-danger {\n color: #721c24;\n background-color: #f8d7da;\n border-color: #f5c6cb;\n}\n\n.alert-danger hr {\n border-top-color: #f1b0b7;\n}\n\n.alert-danger .alert-link {\n color: #491217;\n}\n\n.alert-light {\n color: #818182;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n\n.alert-light hr {\n border-top-color: #ececf6;\n}\n\n.alert-light .alert-link {\n color: #686868;\n}\n\n.alert-dark {\n color: #1b1e21;\n background-color: #d6d8d9;\n border-color: #c6c8ca;\n}\n\n.alert-dark hr {\n border-top-color: #b9bbbe;\n}\n\n.alert-dark .alert-link {\n color: #040505;\n}\n\n@keyframes progress-bar-stripes {\n from {\n background-position: 1rem 0;\n }\n to {\n background-position: 0 0;\n }\n}\n\n.progress {\n display: flex;\n height: 1rem;\n overflow: hidden;\n font-size: 0.75rem;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.progress-bar {\n display: flex;\n flex-direction: column;\n justify-content: center;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n background-color: #007bff;\n transition: width 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 1rem 1rem;\n}\n\n.progress-bar-animated {\n animation: progress-bar-stripes 1s linear infinite;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n animation: none;\n }\n}\n\n.media {\n display: flex;\n align-items: flex-start;\n}\n\n.media-body {\n flex: 1;\n}\n\n.list-group {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n}\n\n.list-group-item-action {\n width: 100%;\n color: #495057;\n text-align: inherit;\n}\n\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: #495057;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n\n.list-group-item-action:active {\n color: #212529;\n background-color: #e9ecef;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 0.75rem 1.25rem;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n\n.list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.list-group-item.disabled, .list-group-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: #fff;\n}\n\n.list-group-item.active {\n z-index: 2;\n color: #fff;\n background-color: #007bff;\n border-color: #007bff;\n}\n\n.list-group-horizontal {\n flex-direction: row;\n}\n\n.list-group-horizontal .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n}\n\n.list-group-horizontal .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n}\n\n.list-group-horizontal .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n flex-direction: row;\n }\n .list-group-horizontal-sm .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-sm .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n flex-direction: row;\n }\n .list-group-horizontal-md .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-md .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n flex-direction: row;\n }\n .list-group-horizontal-lg .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-lg .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n flex-direction: row;\n }\n .list-group-horizontal-xl .list-group-item {\n margin-right: -1px;\n margin-bottom: 0;\n }\n .list-group-horizontal-xl .list-group-item:first-child {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl .list-group-item:last-child {\n margin-right: 0;\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n}\n\n.list-group-flush .list-group-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n\n.list-group-flush .list-group-item:last-child {\n margin-bottom: -1px;\n}\n\n.list-group-flush:first-child .list-group-item:first-child {\n border-top: 0;\n}\n\n.list-group-flush:last-child .list-group-item:last-child {\n margin-bottom: 0;\n border-bottom: 0;\n}\n\n.list-group-item-primary {\n color: #004085;\n background-color: #b8daff;\n}\n\n.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {\n color: #004085;\n background-color: #9fcdff;\n}\n\n.list-group-item-primary.list-group-item-action.active {\n color: #fff;\n background-color: #004085;\n border-color: #004085;\n}\n\n.list-group-item-secondary {\n color: #383d41;\n background-color: #d6d8db;\n}\n\n.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {\n color: #383d41;\n background-color: #c8cbcf;\n}\n\n.list-group-item-secondary.list-group-item-action.active {\n color: #fff;\n background-color: #383d41;\n border-color: #383d41;\n}\n\n.list-group-item-success {\n color: #155724;\n background-color: #c3e6cb;\n}\n\n.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {\n color: #155724;\n background-color: #b1dfbb;\n}\n\n.list-group-item-success.list-group-item-action.active {\n color: #fff;\n background-color: #155724;\n border-color: #155724;\n}\n\n.list-group-item-info {\n color: #0c5460;\n background-color: #bee5eb;\n}\n\n.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {\n color: #0c5460;\n background-color: #abdde5;\n}\n\n.list-group-item-info.list-group-item-action.active {\n color: #fff;\n background-color: #0c5460;\n border-color: #0c5460;\n}\n\n.list-group-item-warning {\n color: #856404;\n background-color: #ffeeba;\n}\n\n.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {\n color: #856404;\n background-color: #ffe8a1;\n}\n\n.list-group-item-warning.list-group-item-action.active {\n color: #fff;\n background-color: #856404;\n border-color: #856404;\n}\n\n.list-group-item-danger {\n color: #721c24;\n background-color: #f5c6cb;\n}\n\n.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {\n color: #721c24;\n background-color: #f1b0b7;\n}\n\n.list-group-item-danger.list-group-item-action.active {\n color: #fff;\n background-color: #721c24;\n border-color: #721c24;\n}\n\n.list-group-item-light {\n color: #818182;\n background-color: #fdfdfe;\n}\n\n.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {\n color: #818182;\n background-color: #ececf6;\n}\n\n.list-group-item-light.list-group-item-action.active {\n color: #fff;\n background-color: #818182;\n border-color: #818182;\n}\n\n.list-group-item-dark {\n color: #1b1e21;\n background-color: #c6c8ca;\n}\n\n.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {\n color: #1b1e21;\n background-color: #b9bbbe;\n}\n\n.list-group-item-dark.list-group-item-action.active {\n color: #fff;\n background-color: #1b1e21;\n border-color: #1b1e21;\n}\n\n.close {\n float: right;\n font-size: 1.5rem;\n font-weight: 700;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n opacity: .5;\n}\n\n.close:hover {\n color: #000;\n text-decoration: none;\n}\n\n.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {\n opacity: .75;\n}\n\nbutton.close {\n padding: 0;\n background-color: transparent;\n border: 0;\n appearance: none;\n}\n\na.close.disabled {\n pointer-events: none;\n}\n\n.toast {\n max-width: 350px;\n overflow: hidden;\n font-size: 0.875rem;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.1);\n box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);\n backdrop-filter: blur(10px);\n opacity: 0;\n border-radius: 0.25rem;\n}\n\n.toast:not(:last-child) {\n margin-bottom: 0.75rem;\n}\n\n.toast.showing {\n opacity: 1;\n}\n\n.toast.show {\n display: block;\n opacity: 1;\n}\n\n.toast.hide {\n display: none;\n}\n\n.toast-header {\n display: flex;\n align-items: center;\n padding: 0.25rem 0.75rem;\n color: #6c757d;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\n}\n\n.toast-body {\n padding: 0.75rem;\n}\n\n.modal-open {\n overflow: hidden;\n}\n\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.modal {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1050;\n display: none;\n width: 100%;\n height: 100%;\n overflow: hidden;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 0.5rem;\n pointer-events: none;\n}\n\n.modal.fade .modal-dialog {\n transition: transform 0.3s ease-out;\n transform: translate(0, -50px);\n}\n\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n\n.modal.show .modal-dialog {\n transform: none;\n}\n\n.modal-dialog-scrollable {\n display: flex;\n max-height: calc(100% - 1rem);\n}\n\n.modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 1rem);\n overflow: hidden;\n}\n\n.modal-dialog-scrollable .modal-header,\n.modal-dialog-scrollable .modal-footer {\n flex-shrink: 0;\n}\n\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: flex;\n align-items: center;\n min-height: calc(100% - 1rem);\n}\n\n.modal-dialog-centered::before {\n display: block;\n height: calc(100vh - 1rem);\n content: \"\";\n}\n\n.modal-dialog-centered.modal-dialog-scrollable {\n flex-direction: column;\n justify-content: center;\n height: 100%;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable .modal-content {\n max-height: none;\n}\n\n.modal-dialog-centered.modal-dialog-scrollable::before {\n content: none;\n}\n\n.modal-content {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n pointer-events: auto;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n outline: 0;\n}\n\n.modal-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n\n.modal-backdrop.fade {\n opacity: 0;\n}\n\n.modal-backdrop.show {\n opacity: 0.5;\n}\n\n.modal-header {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n padding: 1rem 1rem;\n border-bottom: 1px solid #dee2e6;\n border-top-left-radius: 0.3rem;\n border-top-right-radius: 0.3rem;\n}\n\n.modal-header .close {\n padding: 1rem 1rem;\n margin: -1rem -1rem -1rem auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: 1.5;\n}\n\n.modal-body {\n position: relative;\n flex: 1 1 auto;\n padding: 1rem;\n}\n\n.modal-footer {\n display: flex;\n align-items: center;\n justify-content: flex-end;\n padding: 1rem;\n border-top: 1px solid #dee2e6;\n border-bottom-right-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n\n.modal-footer > :not(:first-child) {\n margin-left: .25rem;\n}\n\n.modal-footer > :not(:last-child) {\n margin-right: .25rem;\n}\n\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n\n@media (min-width: 576px) {\n .modal-dialog {\n max-width: 500px;\n margin: 1.75rem auto;\n }\n .modal-dialog-scrollable {\n max-height: calc(100% - 3.5rem);\n }\n .modal-dialog-scrollable .modal-content {\n max-height: calc(100vh - 3.5rem);\n }\n .modal-dialog-centered {\n min-height: calc(100% - 3.5rem);\n }\n .modal-dialog-centered::before {\n height: calc(100vh - 3.5rem);\n }\n .modal-sm {\n max-width: 300px;\n }\n}\n\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n max-width: 800px;\n }\n}\n\n@media (min-width: 1200px) {\n .modal-xl {\n max-width: 1140px;\n }\n}\n\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n opacity: 0;\n}\n\n.tooltip.show {\n opacity: 0.9;\n}\n\n.tooltip .arrow {\n position: absolute;\n display: block;\n width: 0.8rem;\n height: 0.4rem;\n}\n\n.tooltip .arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top, .bs-tooltip-auto[x-placement^=\"top\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=\"top\"] .arrow {\n bottom: 0;\n}\n\n.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=\"top\"] .arrow::before {\n top: 0;\n border-width: 0.4rem 0.4rem 0;\n border-top-color: #000;\n}\n\n.bs-tooltip-right, .bs-tooltip-auto[x-placement^=\"right\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=\"right\"] .arrow {\n left: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=\"right\"] .arrow::before {\n right: 0;\n border-width: 0.4rem 0.4rem 0.4rem 0;\n border-right-color: #000;\n}\n\n.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=\"bottom\"] {\n padding: 0.4rem 0;\n}\n\n.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow {\n top: 0;\n}\n\n.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=\"bottom\"] .arrow::before {\n bottom: 0;\n border-width: 0 0.4rem 0.4rem;\n border-bottom-color: #000;\n}\n\n.bs-tooltip-left, .bs-tooltip-auto[x-placement^=\"left\"] {\n padding: 0 0.4rem;\n}\n\n.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=\"left\"] .arrow {\n right: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n\n.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=\"left\"] .arrow::before {\n left: 0;\n border-width: 0.4rem 0 0.4rem 0.4rem;\n border-left-color: #000;\n}\n\n.tooltip-inner {\n max-width: 200px;\n padding: 0.25rem 0.5rem;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 0.25rem;\n}\n\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: block;\n max-width: 276px;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n}\n\n.popover .arrow {\n position: absolute;\n display: block;\n width: 1rem;\n height: 0.5rem;\n margin: 0 0.3rem;\n}\n\n.popover .arrow::before, .popover .arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-popover-top, .bs-popover-auto[x-placement^=\"top\"] {\n margin-bottom: 0.5rem;\n}\n\n.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=\"top\"] > .arrow {\n bottom: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=\"top\"] > .arrow::before {\n bottom: 0;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=\"top\"] > .arrow::after {\n bottom: 1px;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: #fff;\n}\n\n.bs-popover-right, .bs-popover-auto[x-placement^=\"right\"] {\n margin-left: 0.5rem;\n}\n\n.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=\"right\"] > .arrow {\n left: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=\"right\"] > .arrow::before {\n left: 0;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=\"right\"] > .arrow::after {\n left: 1px;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: #fff;\n}\n\n.bs-popover-bottom, .bs-popover-auto[x-placement^=\"bottom\"] {\n margin-top: 0.5rem;\n}\n\n.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow {\n top: calc((0.5rem + 1px) * -1);\n}\n\n.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::before {\n top: 0;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=\"bottom\"] > .arrow::after {\n top: 1px;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: #fff;\n}\n\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=\"bottom\"] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: 1rem;\n margin-left: -0.5rem;\n content: \"\";\n border-bottom: 1px solid #f7f7f7;\n}\n\n.bs-popover-left, .bs-popover-auto[x-placement^=\"left\"] {\n margin-right: 0.5rem;\n}\n\n.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=\"left\"] > .arrow {\n right: calc((0.5rem + 1px) * -1);\n width: 0.5rem;\n height: 1rem;\n margin: 0.3rem 0;\n}\n\n.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=\"left\"] > .arrow::before {\n right: 0;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n\n.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=\"left\"] > .arrow::after {\n right: 1px;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: #fff;\n}\n\n.popover-header {\n padding: 0.5rem 0.75rem;\n margin-bottom: 0;\n font-size: 1rem;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-top-left-radius: calc(0.3rem - 1px);\n border-top-right-radius: calc(0.3rem - 1px);\n}\n\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: 0.5rem 0.75rem;\n color: #212529;\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n backface-visibility: hidden;\n transition: transform 0.6s ease-in-out;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-left),\n.active.carousel-item-right {\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-right),\n.active.carousel-item-left {\n transform: translateX(-100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n transform: none;\n}\n\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-left,\n.carousel-fade .carousel-item-prev.carousel-item-right {\n z-index: 1;\n opacity: 1;\n}\n\n.carousel-fade .active.carousel-item-left,\n.carousel-fade .active.carousel-item-right {\n z-index: 0;\n opacity: 0;\n transition: 0s 0.6s opacity;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-left,\n .carousel-fade .active.carousel-item-right {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15%;\n color: #fff;\n text-align: center;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n transition: none;\n }\n}\n\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 20px;\n height: 20px;\n background: no-repeat 50% / 100% 100%;\n}\n\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e\");\n}\n\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e\");\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 15;\n display: flex;\n justify-content: center;\n padding-left: 0;\n margin-right: 15%;\n margin-left: 15%;\n list-style: none;\n}\n\n.carousel-indicators li {\n box-sizing: content-box;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: .5;\n transition: opacity 0.6s ease;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators li {\n transition: none;\n }\n}\n\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n}\n\n@keyframes spinner-border {\n to {\n transform: rotate(360deg);\n }\n}\n\n.spinner-border {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n border: 0.25em solid currentColor;\n border-right-color: transparent;\n border-radius: 50%;\n animation: spinner-border .75s linear infinite;\n}\n\n.spinner-border-sm {\n width: 1rem;\n height: 1rem;\n border-width: 0.2em;\n}\n\n@keyframes spinner-grow {\n 0% {\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n }\n}\n\n.spinner-grow {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: text-bottom;\n background-color: currentColor;\n border-radius: 50%;\n opacity: 0;\n animation: spinner-grow .75s linear infinite;\n}\n\n.spinner-grow-sm {\n width: 1rem;\n height: 1rem;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.bg-primary {\n background-color: #007bff !important;\n}\n\na.bg-primary:hover, a.bg-primary:focus,\nbutton.bg-primary:hover,\nbutton.bg-primary:focus {\n background-color: #0062cc !important;\n}\n\n.bg-secondary {\n background-color: #6c757d !important;\n}\n\na.bg-secondary:hover, a.bg-secondary:focus,\nbutton.bg-secondary:hover,\nbutton.bg-secondary:focus {\n background-color: #545b62 !important;\n}\n\n.bg-success {\n background-color: #28a745 !important;\n}\n\na.bg-success:hover, a.bg-success:focus,\nbutton.bg-success:hover,\nbutton.bg-success:focus {\n background-color: #1e7e34 !important;\n}\n\n.bg-info {\n background-color: #17a2b8 !important;\n}\n\na.bg-info:hover, a.bg-info:focus,\nbutton.bg-info:hover,\nbutton.bg-info:focus {\n background-color: #117a8b !important;\n}\n\n.bg-warning {\n background-color: #ffc107 !important;\n}\n\na.bg-warning:hover, a.bg-warning:focus,\nbutton.bg-warning:hover,\nbutton.bg-warning:focus {\n background-color: #d39e00 !important;\n}\n\n.bg-danger {\n background-color: #dc3545 !important;\n}\n\na.bg-danger:hover, a.bg-danger:focus,\nbutton.bg-danger:hover,\nbutton.bg-danger:focus {\n background-color: #bd2130 !important;\n}\n\n.bg-light {\n background-color: #f8f9fa !important;\n}\n\na.bg-light:hover, a.bg-light:focus,\nbutton.bg-light:hover,\nbutton.bg-light:focus {\n background-color: #dae0e5 !important;\n}\n\n.bg-dark {\n background-color: #343a40 !important;\n}\n\na.bg-dark:hover, a.bg-dark:focus,\nbutton.bg-dark:hover,\nbutton.bg-dark:focus {\n background-color: #1d2124 !important;\n}\n\n.bg-white {\n background-color: #fff !important;\n}\n\n.bg-transparent {\n background-color: transparent !important;\n}\n\n.border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-right {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-left {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-right-0 {\n border-right: 0 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-left-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #007bff !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #28a745 !important;\n}\n\n.border-info {\n border-color: #17a2b8 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #343a40 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.rounded-sm {\n border-radius: 0.2rem !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-right {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-left {\n border-top-left-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-lg {\n border-radius: 0.3rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: 50rem !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n}\n\n.embed-responsive {\n position: relative;\n display: block;\n width: 100%;\n padding: 0;\n overflow: hidden;\n}\n\n.embed-responsive::before {\n display: block;\n content: \"\";\n}\n\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n\n.embed-responsive-21by9::before {\n padding-top: 42.857143%;\n}\n\n.embed-responsive-16by9::before {\n padding-top: 56.25%;\n}\n\n.embed-responsive-4by3::before {\n padding-top: 75%;\n}\n\n.embed-responsive-1by1::before {\n padding-top: 100%;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n}\n\n.float-left {\n float: left !important;\n}\n\n.float-right {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-left {\n float: left !important;\n }\n .float-sm-right {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n}\n\n@media (min-width: 768px) {\n .float-md-left {\n float: left !important;\n }\n .float-md-right {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n}\n\n@media (min-width: 992px) {\n .float-lg-left {\n float: left !important;\n }\n .float-lg-right {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n}\n\n@media (min-width: 1200px) {\n .float-xl-left {\n float: left !important;\n }\n .float-xl-right {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: sticky !important;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n@supports (position: sticky) {\n .sticky-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n\n.sr-only-focusable:active, .sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n overflow: visible;\n clip: auto;\n white-space: normal;\n}\n\n.shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n pointer-events: auto;\n content: \"\";\n background-color: rgba(0, 0, 0, 0);\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.mt-0,\n.my-0 {\n margin-top: 0 !important;\n}\n\n.mr-0,\n.mx-0 {\n margin-right: 0 !important;\n}\n\n.mb-0,\n.my-0 {\n margin-bottom: 0 !important;\n}\n\n.ml-0,\n.mx-0 {\n margin-left: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.mt-1,\n.my-1 {\n margin-top: 0.25rem !important;\n}\n\n.mr-1,\n.mx-1 {\n margin-right: 0.25rem !important;\n}\n\n.mb-1,\n.my-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.ml-1,\n.mx-1 {\n margin-left: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.mt-2,\n.my-2 {\n margin-top: 0.5rem !important;\n}\n\n.mr-2,\n.mx-2 {\n margin-right: 0.5rem !important;\n}\n\n.mb-2,\n.my-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.ml-2,\n.mx-2 {\n margin-left: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.mt-3,\n.my-3 {\n margin-top: 1rem !important;\n}\n\n.mr-3,\n.mx-3 {\n margin-right: 1rem !important;\n}\n\n.mb-3,\n.my-3 {\n margin-bottom: 1rem !important;\n}\n\n.ml-3,\n.mx-3 {\n margin-left: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.mt-4,\n.my-4 {\n margin-top: 1.5rem !important;\n}\n\n.mr-4,\n.mx-4 {\n margin-right: 1.5rem !important;\n}\n\n.mb-4,\n.my-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.ml-4,\n.mx-4 {\n margin-left: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.mt-5,\n.my-5 {\n margin-top: 3rem !important;\n}\n\n.mr-5,\n.mx-5 {\n margin-right: 3rem !important;\n}\n\n.mb-5,\n.my-5 {\n margin-bottom: 3rem !important;\n}\n\n.ml-5,\n.mx-5 {\n margin-left: 3rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.pt-0,\n.py-0 {\n padding-top: 0 !important;\n}\n\n.pr-0,\n.px-0 {\n padding-right: 0 !important;\n}\n\n.pb-0,\n.py-0 {\n padding-bottom: 0 !important;\n}\n\n.pl-0,\n.px-0 {\n padding-left: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.pt-1,\n.py-1 {\n padding-top: 0.25rem !important;\n}\n\n.pr-1,\n.px-1 {\n padding-right: 0.25rem !important;\n}\n\n.pb-1,\n.py-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pl-1,\n.px-1 {\n padding-left: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.pt-2,\n.py-2 {\n padding-top: 0.5rem !important;\n}\n\n.pr-2,\n.px-2 {\n padding-right: 0.5rem !important;\n}\n\n.pb-2,\n.py-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pl-2,\n.px-2 {\n padding-left: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.pt-3,\n.py-3 {\n padding-top: 1rem !important;\n}\n\n.pr-3,\n.px-3 {\n padding-right: 1rem !important;\n}\n\n.pb-3,\n.py-3 {\n padding-bottom: 1rem !important;\n}\n\n.pl-3,\n.px-3 {\n padding-left: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.pt-4,\n.py-4 {\n padding-top: 1.5rem !important;\n}\n\n.pr-4,\n.px-4 {\n padding-right: 1.5rem !important;\n}\n\n.pb-4,\n.py-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pl-4,\n.px-4 {\n padding-left: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.pt-5,\n.py-5 {\n padding-top: 3rem !important;\n}\n\n.pr-5,\n.px-5 {\n padding-right: 3rem !important;\n}\n\n.pb-5,\n.py-5 {\n padding-bottom: 3rem !important;\n}\n\n.pl-5,\n.px-5 {\n padding-left: 3rem !important;\n}\n\n.m-n1 {\n margin: -0.25rem !important;\n}\n\n.mt-n1,\n.my-n1 {\n margin-top: -0.25rem !important;\n}\n\n.mr-n1,\n.mx-n1 {\n margin-right: -0.25rem !important;\n}\n\n.mb-n1,\n.my-n1 {\n margin-bottom: -0.25rem !important;\n}\n\n.ml-n1,\n.mx-n1 {\n margin-left: -0.25rem !important;\n}\n\n.m-n2 {\n margin: -0.5rem !important;\n}\n\n.mt-n2,\n.my-n2 {\n margin-top: -0.5rem !important;\n}\n\n.mr-n2,\n.mx-n2 {\n margin-right: -0.5rem !important;\n}\n\n.mb-n2,\n.my-n2 {\n margin-bottom: -0.5rem !important;\n}\n\n.ml-n2,\n.mx-n2 {\n margin-left: -0.5rem !important;\n}\n\n.m-n3 {\n margin: -1rem !important;\n}\n\n.mt-n3,\n.my-n3 {\n margin-top: -1rem !important;\n}\n\n.mr-n3,\n.mx-n3 {\n margin-right: -1rem !important;\n}\n\n.mb-n3,\n.my-n3 {\n margin-bottom: -1rem !important;\n}\n\n.ml-n3,\n.mx-n3 {\n margin-left: -1rem !important;\n}\n\n.m-n4 {\n margin: -1.5rem !important;\n}\n\n.mt-n4,\n.my-n4 {\n margin-top: -1.5rem !important;\n}\n\n.mr-n4,\n.mx-n4 {\n margin-right: -1.5rem !important;\n}\n\n.mb-n4,\n.my-n4 {\n margin-bottom: -1.5rem !important;\n}\n\n.ml-n4,\n.mx-n4 {\n margin-left: -1.5rem !important;\n}\n\n.m-n5 {\n margin: -3rem !important;\n}\n\n.mt-n5,\n.my-n5 {\n margin-top: -3rem !important;\n}\n\n.mr-n5,\n.mx-n5 {\n margin-right: -3rem !important;\n}\n\n.mb-n5,\n.my-n5 {\n margin-bottom: -3rem !important;\n}\n\n.ml-n5,\n.mx-n5 {\n margin-left: -3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mt-auto,\n.my-auto {\n margin-top: auto !important;\n}\n\n.mr-auto,\n.mx-auto {\n margin-right: auto !important;\n}\n\n.mb-auto,\n.my-auto {\n margin-bottom: auto !important;\n}\n\n.ml-auto,\n.mx-auto {\n margin-left: auto !important;\n}\n\n@media (min-width: 576px) {\n .m-sm-0 {\n margin: 0 !important;\n }\n .mt-sm-0,\n .my-sm-0 {\n margin-top: 0 !important;\n }\n .mr-sm-0,\n .mx-sm-0 {\n margin-right: 0 !important;\n }\n .mb-sm-0,\n .my-sm-0 {\n margin-bottom: 0 !important;\n }\n .ml-sm-0,\n .mx-sm-0 {\n margin-left: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .mt-sm-1,\n .my-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mr-sm-1,\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n }\n .mb-sm-1,\n .my-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-sm-1,\n .mx-sm-1 {\n margin-left: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .mt-sm-2,\n .my-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mr-sm-2,\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n }\n .mb-sm-2,\n .my-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-sm-2,\n .mx-sm-2 {\n margin-left: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .mt-sm-3,\n .my-sm-3 {\n margin-top: 1rem !important;\n }\n .mr-sm-3,\n .mx-sm-3 {\n margin-right: 1rem !important;\n }\n .mb-sm-3,\n .my-sm-3 {\n margin-bottom: 1rem !important;\n }\n .ml-sm-3,\n .mx-sm-3 {\n margin-left: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .mt-sm-4,\n .my-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mr-sm-4,\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n }\n .mb-sm-4,\n .my-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-sm-4,\n .mx-sm-4 {\n margin-left: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .mt-sm-5,\n .my-sm-5 {\n margin-top: 3rem !important;\n }\n .mr-sm-5,\n .mx-sm-5 {\n margin-right: 3rem !important;\n }\n .mb-sm-5,\n .my-sm-5 {\n margin-bottom: 3rem !important;\n }\n .ml-sm-5,\n .mx-sm-5 {\n margin-left: 3rem !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .pt-sm-0,\n .py-sm-0 {\n padding-top: 0 !important;\n }\n .pr-sm-0,\n .px-sm-0 {\n padding-right: 0 !important;\n }\n .pb-sm-0,\n .py-sm-0 {\n padding-bottom: 0 !important;\n }\n .pl-sm-0,\n .px-sm-0 {\n padding-left: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .pt-sm-1,\n .py-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pr-sm-1,\n .px-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pb-sm-1,\n .py-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-sm-1,\n .px-sm-1 {\n padding-left: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .pt-sm-2,\n .py-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pr-sm-2,\n .px-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pb-sm-2,\n .py-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-sm-2,\n .px-sm-2 {\n padding-left: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .pt-sm-3,\n .py-sm-3 {\n padding-top: 1rem !important;\n }\n .pr-sm-3,\n .px-sm-3 {\n padding-right: 1rem !important;\n }\n .pb-sm-3,\n .py-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pl-sm-3,\n .px-sm-3 {\n padding-left: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .pt-sm-4,\n .py-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pr-sm-4,\n .px-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pb-sm-4,\n .py-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-sm-4,\n .px-sm-4 {\n padding-left: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .pt-sm-5,\n .py-sm-5 {\n padding-top: 3rem !important;\n }\n .pr-sm-5,\n .px-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-5,\n .py-sm-5 {\n padding-bottom: 3rem !important;\n }\n .pl-sm-5,\n .px-sm-5 {\n padding-left: 3rem !important;\n }\n .m-sm-n1 {\n margin: -0.25rem !important;\n }\n .mt-sm-n1,\n .my-sm-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-sm-n1,\n .mx-sm-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-sm-n1,\n .my-sm-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-sm-n1,\n .mx-sm-n1 {\n margin-left: -0.25rem !important;\n }\n .m-sm-n2 {\n margin: -0.5rem !important;\n }\n .mt-sm-n2,\n .my-sm-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-sm-n2,\n .mx-sm-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-sm-n2,\n .my-sm-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-sm-n2,\n .mx-sm-n2 {\n margin-left: -0.5rem !important;\n }\n .m-sm-n3 {\n margin: -1rem !important;\n }\n .mt-sm-n3,\n .my-sm-n3 {\n margin-top: -1rem !important;\n }\n .mr-sm-n3,\n .mx-sm-n3 {\n margin-right: -1rem !important;\n }\n .mb-sm-n3,\n .my-sm-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-sm-n3,\n .mx-sm-n3 {\n margin-left: -1rem !important;\n }\n .m-sm-n4 {\n margin: -1.5rem !important;\n }\n .mt-sm-n4,\n .my-sm-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-sm-n4,\n .mx-sm-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-sm-n4,\n .my-sm-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-sm-n4,\n .mx-sm-n4 {\n margin-left: -1.5rem !important;\n }\n .m-sm-n5 {\n margin: -3rem !important;\n }\n .mt-sm-n5,\n .my-sm-n5 {\n margin-top: -3rem !important;\n }\n .mr-sm-n5,\n .mx-sm-n5 {\n margin-right: -3rem !important;\n }\n .mb-sm-n5,\n .my-sm-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-sm-n5,\n .mx-sm-n5 {\n margin-left: -3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mt-sm-auto,\n .my-sm-auto {\n margin-top: auto !important;\n }\n .mr-sm-auto,\n .mx-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-auto,\n .my-sm-auto {\n margin-bottom: auto !important;\n }\n .ml-sm-auto,\n .mx-sm-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 768px) {\n .m-md-0 {\n margin: 0 !important;\n }\n .mt-md-0,\n .my-md-0 {\n margin-top: 0 !important;\n }\n .mr-md-0,\n .mx-md-0 {\n margin-right: 0 !important;\n }\n .mb-md-0,\n .my-md-0 {\n margin-bottom: 0 !important;\n }\n .ml-md-0,\n .mx-md-0 {\n margin-left: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .mt-md-1,\n .my-md-1 {\n margin-top: 0.25rem !important;\n }\n .mr-md-1,\n .mx-md-1 {\n margin-right: 0.25rem !important;\n }\n .mb-md-1,\n .my-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-md-1,\n .mx-md-1 {\n margin-left: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .mt-md-2,\n .my-md-2 {\n margin-top: 0.5rem !important;\n }\n .mr-md-2,\n .mx-md-2 {\n margin-right: 0.5rem !important;\n }\n .mb-md-2,\n .my-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-md-2,\n .mx-md-2 {\n margin-left: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .mt-md-3,\n .my-md-3 {\n margin-top: 1rem !important;\n }\n .mr-md-3,\n .mx-md-3 {\n margin-right: 1rem !important;\n }\n .mb-md-3,\n .my-md-3 {\n margin-bottom: 1rem !important;\n }\n .ml-md-3,\n .mx-md-3 {\n margin-left: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .mt-md-4,\n .my-md-4 {\n margin-top: 1.5rem !important;\n }\n .mr-md-4,\n .mx-md-4 {\n margin-right: 1.5rem !important;\n }\n .mb-md-4,\n .my-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-md-4,\n .mx-md-4 {\n margin-left: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .mt-md-5,\n .my-md-5 {\n margin-top: 3rem !important;\n }\n .mr-md-5,\n .mx-md-5 {\n margin-right: 3rem !important;\n }\n .mb-md-5,\n .my-md-5 {\n margin-bottom: 3rem !important;\n }\n .ml-md-5,\n .mx-md-5 {\n margin-left: 3rem !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .pt-md-0,\n .py-md-0 {\n padding-top: 0 !important;\n }\n .pr-md-0,\n .px-md-0 {\n padding-right: 0 !important;\n }\n .pb-md-0,\n .py-md-0 {\n padding-bottom: 0 !important;\n }\n .pl-md-0,\n .px-md-0 {\n padding-left: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .pt-md-1,\n .py-md-1 {\n padding-top: 0.25rem !important;\n }\n .pr-md-1,\n .px-md-1 {\n padding-right: 0.25rem !important;\n }\n .pb-md-1,\n .py-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-md-1,\n .px-md-1 {\n padding-left: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .pt-md-2,\n .py-md-2 {\n padding-top: 0.5rem !important;\n }\n .pr-md-2,\n .px-md-2 {\n padding-right: 0.5rem !important;\n }\n .pb-md-2,\n .py-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-md-2,\n .px-md-2 {\n padding-left: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .pt-md-3,\n .py-md-3 {\n padding-top: 1rem !important;\n }\n .pr-md-3,\n .px-md-3 {\n padding-right: 1rem !important;\n }\n .pb-md-3,\n .py-md-3 {\n padding-bottom: 1rem !important;\n }\n .pl-md-3,\n .px-md-3 {\n padding-left: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .pt-md-4,\n .py-md-4 {\n padding-top: 1.5rem !important;\n }\n .pr-md-4,\n .px-md-4 {\n padding-right: 1.5rem !important;\n }\n .pb-md-4,\n .py-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-md-4,\n .px-md-4 {\n padding-left: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .pt-md-5,\n .py-md-5 {\n padding-top: 3rem !important;\n }\n .pr-md-5,\n .px-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-5,\n .py-md-5 {\n padding-bottom: 3rem !important;\n }\n .pl-md-5,\n .px-md-5 {\n padding-left: 3rem !important;\n }\n .m-md-n1 {\n margin: -0.25rem !important;\n }\n .mt-md-n1,\n .my-md-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-md-n1,\n .mx-md-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-md-n1,\n .my-md-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-md-n1,\n .mx-md-n1 {\n margin-left: -0.25rem !important;\n }\n .m-md-n2 {\n margin: -0.5rem !important;\n }\n .mt-md-n2,\n .my-md-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-md-n2,\n .mx-md-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-md-n2,\n .my-md-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-md-n2,\n .mx-md-n2 {\n margin-left: -0.5rem !important;\n }\n .m-md-n3 {\n margin: -1rem !important;\n }\n .mt-md-n3,\n .my-md-n3 {\n margin-top: -1rem !important;\n }\n .mr-md-n3,\n .mx-md-n3 {\n margin-right: -1rem !important;\n }\n .mb-md-n3,\n .my-md-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-md-n3,\n .mx-md-n3 {\n margin-left: -1rem !important;\n }\n .m-md-n4 {\n margin: -1.5rem !important;\n }\n .mt-md-n4,\n .my-md-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-md-n4,\n .mx-md-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-md-n4,\n .my-md-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-md-n4,\n .mx-md-n4 {\n margin-left: -1.5rem !important;\n }\n .m-md-n5 {\n margin: -3rem !important;\n }\n .mt-md-n5,\n .my-md-n5 {\n margin-top: -3rem !important;\n }\n .mr-md-n5,\n .mx-md-n5 {\n margin-right: -3rem !important;\n }\n .mb-md-n5,\n .my-md-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-md-n5,\n .mx-md-n5 {\n margin-left: -3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mt-md-auto,\n .my-md-auto {\n margin-top: auto !important;\n }\n .mr-md-auto,\n .mx-md-auto {\n margin-right: auto !important;\n }\n .mb-md-auto,\n .my-md-auto {\n margin-bottom: auto !important;\n }\n .ml-md-auto,\n .mx-md-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 992px) {\n .m-lg-0 {\n margin: 0 !important;\n }\n .mt-lg-0,\n .my-lg-0 {\n margin-top: 0 !important;\n }\n .mr-lg-0,\n .mx-lg-0 {\n margin-right: 0 !important;\n }\n .mb-lg-0,\n .my-lg-0 {\n margin-bottom: 0 !important;\n }\n .ml-lg-0,\n .mx-lg-0 {\n margin-left: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .mt-lg-1,\n .my-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mr-lg-1,\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n }\n .mb-lg-1,\n .my-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-lg-1,\n .mx-lg-1 {\n margin-left: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .mt-lg-2,\n .my-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mr-lg-2,\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n }\n .mb-lg-2,\n .my-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-lg-2,\n .mx-lg-2 {\n margin-left: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .mt-lg-3,\n .my-lg-3 {\n margin-top: 1rem !important;\n }\n .mr-lg-3,\n .mx-lg-3 {\n margin-right: 1rem !important;\n }\n .mb-lg-3,\n .my-lg-3 {\n margin-bottom: 1rem !important;\n }\n .ml-lg-3,\n .mx-lg-3 {\n margin-left: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .mt-lg-4,\n .my-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mr-lg-4,\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n }\n .mb-lg-4,\n .my-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-lg-4,\n .mx-lg-4 {\n margin-left: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .mt-lg-5,\n .my-lg-5 {\n margin-top: 3rem !important;\n }\n .mr-lg-5,\n .mx-lg-5 {\n margin-right: 3rem !important;\n }\n .mb-lg-5,\n .my-lg-5 {\n margin-bottom: 3rem !important;\n }\n .ml-lg-5,\n .mx-lg-5 {\n margin-left: 3rem !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .pt-lg-0,\n .py-lg-0 {\n padding-top: 0 !important;\n }\n .pr-lg-0,\n .px-lg-0 {\n padding-right: 0 !important;\n }\n .pb-lg-0,\n .py-lg-0 {\n padding-bottom: 0 !important;\n }\n .pl-lg-0,\n .px-lg-0 {\n padding-left: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .pt-lg-1,\n .py-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pr-lg-1,\n .px-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pb-lg-1,\n .py-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-lg-1,\n .px-lg-1 {\n padding-left: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .pt-lg-2,\n .py-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pr-lg-2,\n .px-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pb-lg-2,\n .py-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-lg-2,\n .px-lg-2 {\n padding-left: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .pt-lg-3,\n .py-lg-3 {\n padding-top: 1rem !important;\n }\n .pr-lg-3,\n .px-lg-3 {\n padding-right: 1rem !important;\n }\n .pb-lg-3,\n .py-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pl-lg-3,\n .px-lg-3 {\n padding-left: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .pt-lg-4,\n .py-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pr-lg-4,\n .px-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pb-lg-4,\n .py-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-lg-4,\n .px-lg-4 {\n padding-left: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .pt-lg-5,\n .py-lg-5 {\n padding-top: 3rem !important;\n }\n .pr-lg-5,\n .px-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-5,\n .py-lg-5 {\n padding-bottom: 3rem !important;\n }\n .pl-lg-5,\n .px-lg-5 {\n padding-left: 3rem !important;\n }\n .m-lg-n1 {\n margin: -0.25rem !important;\n }\n .mt-lg-n1,\n .my-lg-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-lg-n1,\n .mx-lg-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-lg-n1,\n .my-lg-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-lg-n1,\n .mx-lg-n1 {\n margin-left: -0.25rem !important;\n }\n .m-lg-n2 {\n margin: -0.5rem !important;\n }\n .mt-lg-n2,\n .my-lg-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-lg-n2,\n .mx-lg-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-lg-n2,\n .my-lg-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-lg-n2,\n .mx-lg-n2 {\n margin-left: -0.5rem !important;\n }\n .m-lg-n3 {\n margin: -1rem !important;\n }\n .mt-lg-n3,\n .my-lg-n3 {\n margin-top: -1rem !important;\n }\n .mr-lg-n3,\n .mx-lg-n3 {\n margin-right: -1rem !important;\n }\n .mb-lg-n3,\n .my-lg-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-lg-n3,\n .mx-lg-n3 {\n margin-left: -1rem !important;\n }\n .m-lg-n4 {\n margin: -1.5rem !important;\n }\n .mt-lg-n4,\n .my-lg-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-lg-n4,\n .mx-lg-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-lg-n4,\n .my-lg-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-lg-n4,\n .mx-lg-n4 {\n margin-left: -1.5rem !important;\n }\n .m-lg-n5 {\n margin: -3rem !important;\n }\n .mt-lg-n5,\n .my-lg-n5 {\n margin-top: -3rem !important;\n }\n .mr-lg-n5,\n .mx-lg-n5 {\n margin-right: -3rem !important;\n }\n .mb-lg-n5,\n .my-lg-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-lg-n5,\n .mx-lg-n5 {\n margin-left: -3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mt-lg-auto,\n .my-lg-auto {\n margin-top: auto !important;\n }\n .mr-lg-auto,\n .mx-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-auto,\n .my-lg-auto {\n margin-bottom: auto !important;\n }\n .ml-lg-auto,\n .mx-lg-auto {\n margin-left: auto !important;\n }\n}\n\n@media (min-width: 1200px) {\n .m-xl-0 {\n margin: 0 !important;\n }\n .mt-xl-0,\n .my-xl-0 {\n margin-top: 0 !important;\n }\n .mr-xl-0,\n .mx-xl-0 {\n margin-right: 0 !important;\n }\n .mb-xl-0,\n .my-xl-0 {\n margin-bottom: 0 !important;\n }\n .ml-xl-0,\n .mx-xl-0 {\n margin-left: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .mt-xl-1,\n .my-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mr-xl-1,\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n }\n .mb-xl-1,\n .my-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .ml-xl-1,\n .mx-xl-1 {\n margin-left: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .mt-xl-2,\n .my-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mr-xl-2,\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n }\n .mb-xl-2,\n .my-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .ml-xl-2,\n .mx-xl-2 {\n margin-left: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .mt-xl-3,\n .my-xl-3 {\n margin-top: 1rem !important;\n }\n .mr-xl-3,\n .mx-xl-3 {\n margin-right: 1rem !important;\n }\n .mb-xl-3,\n .my-xl-3 {\n margin-bottom: 1rem !important;\n }\n .ml-xl-3,\n .mx-xl-3 {\n margin-left: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .mt-xl-4,\n .my-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mr-xl-4,\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n }\n .mb-xl-4,\n .my-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .ml-xl-4,\n .mx-xl-4 {\n margin-left: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .mt-xl-5,\n .my-xl-5 {\n margin-top: 3rem !important;\n }\n .mr-xl-5,\n .mx-xl-5 {\n margin-right: 3rem !important;\n }\n .mb-xl-5,\n .my-xl-5 {\n margin-bottom: 3rem !important;\n }\n .ml-xl-5,\n .mx-xl-5 {\n margin-left: 3rem !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .pt-xl-0,\n .py-xl-0 {\n padding-top: 0 !important;\n }\n .pr-xl-0,\n .px-xl-0 {\n padding-right: 0 !important;\n }\n .pb-xl-0,\n .py-xl-0 {\n padding-bottom: 0 !important;\n }\n .pl-xl-0,\n .px-xl-0 {\n padding-left: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .pt-xl-1,\n .py-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pr-xl-1,\n .px-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pb-xl-1,\n .py-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pl-xl-1,\n .px-xl-1 {\n padding-left: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .pt-xl-2,\n .py-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pr-xl-2,\n .px-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pb-xl-2,\n .py-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pl-xl-2,\n .px-xl-2 {\n padding-left: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .pt-xl-3,\n .py-xl-3 {\n padding-top: 1rem !important;\n }\n .pr-xl-3,\n .px-xl-3 {\n padding-right: 1rem !important;\n }\n .pb-xl-3,\n .py-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pl-xl-3,\n .px-xl-3 {\n padding-left: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .pt-xl-4,\n .py-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pr-xl-4,\n .px-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pb-xl-4,\n .py-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pl-xl-4,\n .px-xl-4 {\n padding-left: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .pt-xl-5,\n .py-xl-5 {\n padding-top: 3rem !important;\n }\n .pr-xl-5,\n .px-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-5,\n .py-xl-5 {\n padding-bottom: 3rem !important;\n }\n .pl-xl-5,\n .px-xl-5 {\n padding-left: 3rem !important;\n }\n .m-xl-n1 {\n margin: -0.25rem !important;\n }\n .mt-xl-n1,\n .my-xl-n1 {\n margin-top: -0.25rem !important;\n }\n .mr-xl-n1,\n .mx-xl-n1 {\n margin-right: -0.25rem !important;\n }\n .mb-xl-n1,\n .my-xl-n1 {\n margin-bottom: -0.25rem !important;\n }\n .ml-xl-n1,\n .mx-xl-n1 {\n margin-left: -0.25rem !important;\n }\n .m-xl-n2 {\n margin: -0.5rem !important;\n }\n .mt-xl-n2,\n .my-xl-n2 {\n margin-top: -0.5rem !important;\n }\n .mr-xl-n2,\n .mx-xl-n2 {\n margin-right: -0.5rem !important;\n }\n .mb-xl-n2,\n .my-xl-n2 {\n margin-bottom: -0.5rem !important;\n }\n .ml-xl-n2,\n .mx-xl-n2 {\n margin-left: -0.5rem !important;\n }\n .m-xl-n3 {\n margin: -1rem !important;\n }\n .mt-xl-n3,\n .my-xl-n3 {\n margin-top: -1rem !important;\n }\n .mr-xl-n3,\n .mx-xl-n3 {\n margin-right: -1rem !important;\n }\n .mb-xl-n3,\n .my-xl-n3 {\n margin-bottom: -1rem !important;\n }\n .ml-xl-n3,\n .mx-xl-n3 {\n margin-left: -1rem !important;\n }\n .m-xl-n4 {\n margin: -1.5rem !important;\n }\n .mt-xl-n4,\n .my-xl-n4 {\n margin-top: -1.5rem !important;\n }\n .mr-xl-n4,\n .mx-xl-n4 {\n margin-right: -1.5rem !important;\n }\n .mb-xl-n4,\n .my-xl-n4 {\n margin-bottom: -1.5rem !important;\n }\n .ml-xl-n4,\n .mx-xl-n4 {\n margin-left: -1.5rem !important;\n }\n .m-xl-n5 {\n margin: -3rem !important;\n }\n .mt-xl-n5,\n .my-xl-n5 {\n margin-top: -3rem !important;\n }\n .mr-xl-n5,\n .mx-xl-n5 {\n margin-right: -3rem !important;\n }\n .mb-xl-n5,\n .my-xl-n5 {\n margin-bottom: -3rem !important;\n }\n .ml-xl-n5,\n .mx-xl-n5 {\n margin-left: -3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mt-xl-auto,\n .my-xl-auto {\n margin-top: auto !important;\n }\n .mr-xl-auto,\n .mx-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-auto,\n .my-xl-auto {\n margin-bottom: auto !important;\n }\n .ml-xl-auto,\n .mx-xl-auto {\n margin-left: auto !important;\n }\n}\n\n.text-monospace {\n font-family: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !important;\n}\n\n.text-justify {\n text-align: justify !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.text-left {\n text-align: left !important;\n}\n\n.text-right {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n@media (min-width: 576px) {\n .text-sm-left {\n text-align: left !important;\n }\n .text-sm-right {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 768px) {\n .text-md-left {\n text-align: left !important;\n }\n .text-md-right {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 992px) {\n .text-lg-left {\n text-align: left !important;\n }\n .text-lg-right {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n\n@media (min-width: 1200px) {\n .text-xl-left {\n text-align: left !important;\n }\n .text-xl-right {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.font-weight-light {\n font-weight: 300 !important;\n}\n\n.font-weight-lighter {\n font-weight: lighter !important;\n}\n\n.font-weight-normal {\n font-weight: 400 !important;\n}\n\n.font-weight-bold {\n font-weight: 700 !important;\n}\n\n.font-weight-bolder {\n font-weight: bolder !important;\n}\n\n.font-italic {\n font-style: italic !important;\n}\n\n.text-white {\n color: #fff !important;\n}\n\n.text-primary {\n color: #007bff !important;\n}\n\na.text-primary:hover, a.text-primary:focus {\n color: #0056b3 !important;\n}\n\n.text-secondary {\n color: #6c757d !important;\n}\n\na.text-secondary:hover, a.text-secondary:focus {\n color: #494f54 !important;\n}\n\n.text-success {\n color: #28a745 !important;\n}\n\na.text-success:hover, a.text-success:focus {\n color: #19692c !important;\n}\n\n.text-info {\n color: #17a2b8 !important;\n}\n\na.text-info:hover, a.text-info:focus {\n color: #0f6674 !important;\n}\n\n.text-warning {\n color: #ffc107 !important;\n}\n\na.text-warning:hover, a.text-warning:focus {\n color: #ba8b00 !important;\n}\n\n.text-danger {\n color: #dc3545 !important;\n}\n\na.text-danger:hover, a.text-danger:focus {\n color: #a71d2a !important;\n}\n\n.text-light {\n color: #f8f9fa !important;\n}\n\na.text-light:hover, a.text-light:focus {\n color: #cbd3da !important;\n}\n\n.text-dark {\n color: #343a40 !important;\n}\n\na.text-dark:hover, a.text-dark:focus {\n color: #121416 !important;\n}\n\n.text-body {\n color: #212529 !important;\n}\n\n.text-muted {\n color: #6c757d !important;\n}\n\n.text-black-50 {\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-break {\n word-break: break-word !important;\n overflow-wrap: break-word !important;\n}\n\n.text-reset {\n color: inherit !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n@media print {\n *,\n *::before,\n *::after {\n text-shadow: none !important;\n box-shadow: none !important;\n }\n a:not(.btn) {\n text-decoration: underline;\n }\n abbr[title]::after {\n content: \" (\" attr(title) \")\";\n }\n pre {\n white-space: pre-wrap !important;\n }\n pre,\n blockquote {\n border: 1px solid #adb5bd;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n @page {\n size: a3;\n }\n body {\n min-width: 992px !important;\n }\n .container {\n min-width: 992px !important;\n }\n .navbar {\n display: none;\n }\n .badge {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #dee2e6 !important;\n }\n .table-dark {\n color: inherit;\n }\n .table-dark th,\n .table-dark td,\n .table-dark thead th,\n .table-dark tbody + tbody {\n border-color: #dee2e6;\n }\n .table .thead-dark th {\n color: inherit;\n border-color: #dee2e6;\n }\n}\n\n/*# sourceMappingURL=bootstrap.css.map */","// Hover mixin and `$enable-hover-media-query` are deprecated.\n//\n// Originally added during our alphas and maintained during betas, this mixin was\n// designed to prevent `:hover` stickiness on iOS-an issue where hover styles\n// would persist after initial touch.\n//\n// For backward compatibility, we've kept these mixins and updated them to\n// always return their regular pseudo-classes instead of a shimmed media query.\n//\n// Issue: https://github.com/twbs/bootstrap/issues/25195\n\n@mixin hover {\n &:hover { @content; }\n}\n\n@mixin hover-focus {\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin plain-hover-focus {\n &,\n &:hover,\n &:focus {\n @content;\n }\n}\n\n@mixin hover-focus-active {\n &:hover,\n &:focus,\n &:active {\n @content;\n }\n}\n","// stylelint-disable declaration-no-important, selector-list-comma-newline-after\n\n//\n// Headings\n//\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n margin-bottom: $headings-margin-bottom;\n font-family: $headings-font-family;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n color: $headings-color;\n}\n\nh1, .h1 { @include font-size($h1-font-size); }\nh2, .h2 { @include font-size($h2-font-size); }\nh3, .h3 { @include font-size($h3-font-size); }\nh4, .h4 { @include font-size($h4-font-size); }\nh5, .h5 { @include font-size($h5-font-size); }\nh6, .h6 { @include font-size($h6-font-size); }\n\n.lead {\n @include font-size($lead-font-size);\n font-weight: $lead-font-weight;\n}\n\n// Type display classes\n.display-1 {\n @include font-size($display1-size);\n font-weight: $display1-weight;\n line-height: $display-line-height;\n}\n.display-2 {\n @include font-size($display2-size);\n font-weight: $display2-weight;\n line-height: $display-line-height;\n}\n.display-3 {\n @include font-size($display3-size);\n font-weight: $display3-weight;\n line-height: $display-line-height;\n}\n.display-4 {\n @include font-size($display4-size);\n font-weight: $display4-weight;\n line-height: $display-line-height;\n}\n\n\n//\n// Horizontal rules\n//\n\nhr {\n margin-top: $hr-margin-y;\n margin-bottom: $hr-margin-y;\n border: 0;\n border-top: $hr-border-width solid $hr-border-color;\n}\n\n\n//\n// Emphasis\n//\n\nsmall,\n.small {\n @include font-size($small-font-size);\n font-weight: $font-weight-normal;\n}\n\nmark,\n.mark {\n padding: $mark-padding;\n background-color: $mark-bg;\n}\n\n\n//\n// Lists\n//\n\n.list-unstyled {\n @include list-unstyled;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n @include list-unstyled;\n}\n.list-inline-item {\n display: inline-block;\n\n &:not(:last-child) {\n margin-right: $list-inline-padding;\n }\n}\n\n\n//\n// Misc\n//\n\n// Builds on `abbr`\n.initialism {\n @include font-size(90%);\n text-transform: uppercase;\n}\n\n// Blockquotes\n.blockquote {\n margin-bottom: $spacer;\n @include font-size($blockquote-font-size);\n}\n\n.blockquote-footer {\n display: block;\n @include font-size($blockquote-small-font-size);\n color: $blockquote-small-color;\n\n &::before {\n content: \"\\2014\\00A0\"; // em dash, nbsp\n }\n}\n","// Lists\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n@mixin list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n","// Responsive images (ensure images don't scale beyond their parents)\n//\n// This is purposefully opt-in via an explicit class rather than being the default for all ``s.\n// We previously tried the \"images are responsive by default\" approach in Bootstrap v2,\n// and abandoned it in Bootstrap v3 because it breaks lots of third-party widgets (including Google Maps)\n// which weren't expecting the images within themselves to be involuntarily resized.\n// See also https://github.com/twbs/bootstrap/issues/18178\n.img-fluid {\n @include img-fluid;\n}\n\n\n// Image thumbnails\n.img-thumbnail {\n padding: $thumbnail-padding;\n background-color: $thumbnail-bg;\n border: $thumbnail-border-width solid $thumbnail-border-color;\n @include border-radius($thumbnail-border-radius);\n @include box-shadow($thumbnail-box-shadow);\n\n // Keep them at most 100% wide\n @include img-fluid;\n}\n\n//\n// Figures\n//\n\n.figure {\n // Ensures the caption's text aligns with the image.\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: $spacer / 2;\n line-height: 1;\n}\n\n.figure-caption {\n @include font-size($figure-caption-font-size);\n color: $figure-caption-color;\n}\n","// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n\n@mixin img-fluid {\n // Part 1: Set a maximum relative to the parent\n max-width: 100%;\n // Part 2: Override the height to auto, otherwise images will be stretched\n // when setting a width and height attribute on the img element.\n height: auto;\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size.\n\n@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {\n background-image: url($file-1x);\n\n // Autoprefixer takes care of adding -webkit-min-device-pixel-ratio and -o-min-device-pixel-ratio,\n // but doesn't convert dppx=>dpi.\n // There's no such thing as unprefixed min-device-pixel-ratio since it's nonstandard.\n // Compatibility info: https://caniuse.com/#feat=css-media-resolution\n @media only screen and (min-resolution: 192dpi), // IE9-11 don't support dppx\n only screen and (min-resolution: 2dppx) { // Standardized\n background-image: url($file-2x);\n background-size: $width-1x $height-1x;\n }\n @include deprecate(\"`img-retina()`\", \"v4.3.0\", \"v5\");\n}\n","// stylelint-disable property-blacklist\n// Single side border-radius\n\n@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {\n @if $enable-rounded {\n border-radius: $radius;\n }\n @else if $fallback-border-radius != false {\n border-radius: $fallback-border-radius;\n }\n}\n\n@mixin border-top-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n border-top-right-radius: $radius;\n }\n}\n\n@mixin border-right-radius($radius) {\n @if $enable-rounded {\n border-top-right-radius: $radius;\n border-bottom-right-radius: $radius;\n }\n}\n\n@mixin border-bottom-radius($radius) {\n @if $enable-rounded {\n border-bottom-right-radius: $radius;\n border-bottom-left-radius: $radius;\n }\n}\n\n@mixin border-left-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n border-bottom-left-radius: $radius;\n }\n}\n\n@mixin border-top-left-radius($radius) {\n @if $enable-rounded {\n border-top-left-radius: $radius;\n }\n}\n\n@mixin border-top-right-radius($radius) {\n @if $enable-rounded {\n border-top-right-radius: $radius;\n }\n}\n\n@mixin border-bottom-right-radius($radius) {\n @if $enable-rounded {\n border-bottom-right-radius: $radius;\n }\n}\n\n@mixin border-bottom-left-radius($radius) {\n @if $enable-rounded {\n border-bottom-left-radius: $radius;\n }\n}\n","// Inline code\ncode {\n @include font-size($code-font-size);\n color: $code-color;\n word-break: break-word;\n\n // Streamline the style when inside anchors to avoid broken underline and more\n a > & {\n color: inherit;\n }\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: $kbd-padding-y $kbd-padding-x;\n @include font-size($kbd-font-size);\n color: $kbd-color;\n background-color: $kbd-bg;\n @include border-radius($border-radius-sm);\n @include box-shadow($kbd-box-shadow);\n\n kbd {\n padding: 0;\n @include font-size(100%);\n font-weight: $nested-kbd-font-weight;\n @include box-shadow(none);\n }\n}\n\n// Blocks of code\npre {\n display: block;\n @include font-size($code-font-size);\n color: $pre-color;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n @include font-size(inherit);\n color: inherit;\n word-break: normal;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: $pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid-classes {\n .container {\n @include make-container();\n @include make-container-max-widths();\n }\n}\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but with 100% width for\n// fluid, full width layouts.\n\n@if $enable-grid-classes {\n .container-fluid {\n @include make-container();\n }\n}\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n }\n\n // Remove the negative margin from default .row, then the horizontal padding\n // from all immediate children columns (to prevent runaway style inheritance).\n .no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n > .col,\n > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","/// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-container($gutter: $grid-gutter-width) {\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n margin-right: auto;\n margin-left: auto;\n}\n\n\n// For each breakpoint, define the maximum width of the container in a media query\n@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {\n @each $breakpoint, $container-max-width in $max-widths {\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n max-width: $container-max-width;\n }\n }\n}\n\n@mixin make-row($gutter: $grid-gutter-width) {\n display: flex;\n flex-wrap: wrap;\n margin-right: -$gutter / 2;\n margin-left: -$gutter / 2;\n}\n\n@mixin make-col-ready($gutter: $grid-gutter-width) {\n position: relative;\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we use `flex` values\n // later on to override this initial width.\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n}\n\n@mixin make-col($size, $columns: $grid-columns) {\n flex: 0 0 percentage($size / $columns);\n // Add a `max-width` to ensure content within each column does not blow out\n // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari\n // do not appear to require this.\n max-width: percentage($size / $columns);\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: $size / $columns;\n margin-left: if($num == 0, 0, percentage($num));\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n != null and $n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width. Null for the largest (last) breakpoint.\n// The maximum value is calculated as the minimum of the next one less 0.02px\n// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $next: breakpoint-next($name, $breakpoints);\n @return if($next, breakpoint-min($next, $breakpoints) - .02, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $max: breakpoint-max($name, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($name, $breakpoints) {\n @content;\n }\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n // Common properties for all breakpoints\n %grid-column {\n position: relative;\n width: 100%;\n padding-right: $gutter / 2;\n padding-left: $gutter / 2;\n }\n\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n // Allow columns to stretch full width below their breakpoints\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @extend %grid-column;\n }\n }\n .col#{$infix},\n .col#{$infix}-auto {\n @extend %grid-column;\n }\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: 100%; // Reset earlier grid tiers\n }\n\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n .order#{$infix}-first { order: -1; }\n\n .order#{$infix}-last { order: $columns + 1; }\n\n @for $i from 0 through $columns {\n .order#{$infix}-#{$i} { order: $i; }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n }\n}\n","//\n// Basic Bootstrap table\n//\n\n.table {\n width: 100%;\n margin-bottom: $spacer;\n color: $table-color;\n background-color: $table-bg; // Reset for nesting within parents with `background-color`.\n\n th,\n td {\n padding: $table-cell-padding;\n vertical-align: top;\n border-top: $table-border-width solid $table-border-color;\n }\n\n thead th {\n vertical-align: bottom;\n border-bottom: (2 * $table-border-width) solid $table-border-color;\n }\n\n tbody + tbody {\n border-top: (2 * $table-border-width) solid $table-border-color;\n }\n}\n\n\n//\n// Condensed table w/ half padding\n//\n\n.table-sm {\n th,\n td {\n padding: $table-cell-padding-sm;\n }\n}\n\n\n// Border versions\n//\n// Add or remove borders all around the table and between all the columns.\n\n.table-bordered {\n border: $table-border-width solid $table-border-color;\n\n th,\n td {\n border: $table-border-width solid $table-border-color;\n }\n\n thead {\n th,\n td {\n border-bottom-width: 2 * $table-border-width;\n }\n }\n}\n\n.table-borderless {\n th,\n td,\n thead th,\n tbody + tbody {\n border: 0;\n }\n}\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n tbody tr:nth-of-type(#{$table-striped-order}) {\n background-color: $table-accent-bg;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n tbody tr {\n @include hover {\n color: $table-hover-color;\n background-color: $table-hover-bg;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n@each $color, $value in $theme-colors {\n @include table-row-variant($color, theme-color-level($color, $table-bg-level), theme-color-level($color, $table-border-level));\n}\n\n@include table-row-variant(active, $table-active-bg);\n\n\n// Dark styles\n//\n// Same table markup, but inverted color scheme: dark background and light text.\n\n// stylelint-disable-next-line no-duplicate-selectors\n.table {\n .thead-dark {\n th {\n color: $table-dark-color;\n background-color: $table-dark-bg;\n border-color: $table-dark-border-color;\n }\n }\n\n .thead-light {\n th {\n color: $table-head-color;\n background-color: $table-head-bg;\n border-color: $table-border-color;\n }\n }\n}\n\n.table-dark {\n color: $table-dark-color;\n background-color: $table-dark-bg;\n\n th,\n td,\n thead th {\n border-color: $table-dark-border-color;\n }\n\n &.table-bordered {\n border: 0;\n }\n\n &.table-striped {\n tbody tr:nth-of-type(odd) {\n background-color: $table-dark-accent-bg;\n }\n }\n\n &.table-hover {\n tbody tr {\n @include hover {\n color: $table-dark-hover-color;\n background-color: $table-dark-hover-bg;\n }\n }\n }\n}\n\n\n// Responsive tables\n//\n// Generate series of `.table-responsive-*` classes for configuring the screen\n// size of where your table will overflow.\n\n.table-responsive {\n @each $breakpoint in map-keys($grid-breakpoints) {\n $next: breakpoint-next($breakpoint, $grid-breakpoints);\n $infix: breakpoint-infix($next, $grid-breakpoints);\n\n &#{$infix} {\n @include media-breakpoint-down($breakpoint) {\n display: block;\n width: 100%;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n\n // Prevent double border on horizontal scroll due to use of `display: block;`\n > .table-bordered {\n border: 0;\n }\n }\n }\n }\n}\n","// Tables\n\n@mixin table-row-variant($state, $background, $border: null) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table-#{$state} {\n &,\n > th,\n > td {\n background-color: $background;\n }\n\n @if $border != null {\n th,\n td,\n thead th,\n tbody + tbody {\n border-color: $border;\n }\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover {\n $hover-background: darken($background, 5%);\n\n .table-#{$state} {\n @include hover {\n background-color: $hover-background;\n\n > td,\n > th {\n background-color: $hover-background;\n }\n }\n }\n }\n}\n","// stylelint-disable selector-no-qualifying-type\n\n//\n// Textual form controls\n//\n\n.form-control {\n display: block;\n width: 100%;\n height: $input-height;\n padding: $input-padding-y $input-padding-x;\n font-family: $input-font-family;\n @include font-size($input-font-size);\n font-weight: $input-font-weight;\n line-height: $input-line-height;\n color: $input-color;\n background-color: $input-bg;\n background-clip: padding-box;\n border: $input-border-width solid $input-border-color;\n\n // Note: This has no effect on `s in CSS.\n @include border-radius($input-border-radius, 0);\n\n @include box-shadow($input-box-shadow);\n @include transition($input-transition);\n\n // Unstyle the caret on ` receives focus\n // in IE and (under certain conditions) Edge, as it looks bad and cannot be made to\n // match the appearance of the native widget.\n // See https://github.com/twbs/bootstrap/issues/19398.\n color: $input-color;\n background-color: $input-bg;\n }\n}\n\n// Make file inputs better match text inputs by forcing them to new lines.\n.form-control-file,\n.form-control-range {\n display: block;\n width: 100%;\n}\n\n\n//\n// Labels\n//\n\n// For use with horizontal and inline forms, when you need the label (or legend)\n// text to align with the form controls.\n.col-form-label {\n padding-top: calc(#{$input-padding-y} + #{$input-border-width});\n padding-bottom: calc(#{$input-padding-y} + #{$input-border-width});\n margin-bottom: 0; // Override the `
+ +
+
Group {{$index+1}}
+ + + + + + + +
#{{$index+1}}{{o.name}} {{o.city}}, {{o.country}}{{o.type}}
+ +
+ + + + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/all_duplicates.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/all_duplicates.html new file mode 100644 index 00000000..16862876 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/all_duplicates.html @@ -0,0 +1,59 @@ +
+ +
+ +
+ Country: + + +
+
+ + + + + + + + + + + + + + + + +
OrganizationPlace# pending duplicates
+ {{d.name}} + + {{d.city}}, {{d.country}}{{d.numberOfDuplicates}}
+
+ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_conflicts.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_conflicts.html new file mode 100644 index 00000000..99dd8eff --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_conflicts.html @@ -0,0 +1,28 @@ +
+
Conflicts
+ +
No conflicts
+ + + + + + + + + + + + + + + + +
Related organizationTypePlace
{{sr.name}}
{{sr.id}}
{{sr.type}} {{sr.city}}, {{sr.country}}
+ + +
+ + \ No newline at end of file diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_duplicates.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_duplicates.html new file mode 100644 index 00000000..bbc6a5fc --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_duplicates.html @@ -0,0 +1,45 @@ +
+
Duplicates
+ +
No duplicates
+ + + + + + + + + + + + + + + + + + + + +
Related organizationAcronymCountrySource
{{sr.oaName}}
+ URL: {{sr.oaUrl}}
+
{{sr.oaAcronym}} {{sr.oaCountry}}Collected from: {{sr.oaCollectedFrom}}
Original Id: {{sr.oaOriginalId}}
+
+ + + +
+
+ + + +
diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_metadata.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_metadata.html new file mode 100644 index 00000000..b5483d08 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/forms/org_metadata.html @@ -0,0 +1,282 @@ +
+
+
+ Official name and type + +
+
+
+
name
+
+ +
+
type
+
+ +
+
+
+
+ Geographical location + +
+
+
+
city
+
+ +
+
country
+
+ +
+
lat
+
+ +
+
lng
+
+ +
+
+
+ +
+ Other names and identifiers + +
+
+
+
Acronyms
+ + + + + + + + + + + + + +
{{a}} + +
+ +
+
+
+
+ +
+
+
+
Aliases
+ + + + + + + + + + + + + + + + + + + + + + +
namelanguage
{{n.name}}{{n.lang}} + +
+ +
+
+
+
+ +
+
+
+
Identifiers
+ + + + + + + + + + + + + + + + + + + + + + +
idtype
{{id.id}}{{id.type}} + +
+ +
+
+
+
+ +
+
+
+
Urls
+ + + + + + + + + + + + + +
{{u}} + +
+ +
+
+
+
+
+ +
+ Relations +
+
+
+
Relations
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Related organizationType
No relations
{{r.relatedOrgName}}{{r.type}} + +
+ + + + + +
+
+
+
+
+ + + +
+
+ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/menu/org_tabs_menu.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/menu/org_tabs_menu.html new file mode 100644 index 00000000..8bde2804 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/menu/org_tabs_menu.html @@ -0,0 +1,10 @@ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/modals/resolve_conflicts.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/modals/resolve_conflicts.html new file mode 100644 index 00000000..29d5a9d0 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/modals/resolve_conflicts.html @@ -0,0 +1,51 @@ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/modals/select_org.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/modals/select_org.html new file mode 100644 index 00000000..9d18be46 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/modals/select_org.html @@ -0,0 +1,27 @@ + \ No newline at end of file diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/new.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/new.html new file mode 100644 index 00000000..31f8a1b7 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/new.html @@ -0,0 +1,8 @@ +
+
+ +
+ +
diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_dedup_events.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_dedup_events.html new file mode 100644 index 00000000..e35c6531 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_dedup_events.html @@ -0,0 +1,11 @@ +
+ + + + + + + +
+ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_details.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_details.html new file mode 100644 index 00000000..fa229fd3 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_details.html @@ -0,0 +1,34 @@ +
+
{{orgTitle}}
+ + + + + + + + + + + + + + + + + + + + + + + + + +
Name{{org.name}}
Type{{org.type}}
Place{{org.city}}, {{org.country}}
Acronyms{{org.acronyms.join(', ')}}
Also known as{{n.name}}
Urls{{u}}
+
diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_results.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_results.html new file mode 100644 index 00000000..5ea9857d --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/parts/org_results.html @@ -0,0 +1,49 @@ +

+ Page: {{orgs.number + 1}} / {{orgs.totalPages}}
Total elements: {{orgs.totalElements}}
{{searchMessage}}
+ Page: -
Total elements: 0
{{searchMessage}}
+ Page:
Total elements:
{{searchMessage}}
+

+ +

+ Page: {{orgs.number + 1}} / {{orgs.totalPages}} - Total elements: {{orgs.totalElements}} + Total elements: 0 +

+ +

+ No results +

+ +
+ + + + + + + + + + + + + + + + + + + +
Organization namePlaceAcronymsType
+ {{o.name}} + {{o.name}} + {{o.city}}, {{o.country}}{{o.acronyms.join()}}{{o.type}}
+
diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/resultsByCountry.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/resultsByCountry.html new file mode 100644 index 00000000..552b68e8 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/resultsByCountry.html @@ -0,0 +1,4 @@ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/resultsByType.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/resultsByType.html new file mode 100644 index 00000000..62dde646 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/resultsByType.html @@ -0,0 +1,4 @@ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/search.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/search.html new file mode 100644 index 00000000..163e6114 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/search.html @@ -0,0 +1,13 @@ +
+
+
+
+ +
+ +
+
+
+
+
+ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/searchResults.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/searchResults.html new file mode 100644 index 00000000..f93bd142 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/searchResults.html @@ -0,0 +1,4 @@ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/suggestions.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/suggestions.html new file mode 100644 index 00000000..7d1eb477 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/suggestions.html @@ -0,0 +1,19 @@ + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/users.html b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/users.html new file mode 100644 index 00000000..0443b9e6 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/html/users.html @@ -0,0 +1,116 @@ +

Users

+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + +
UserEnabledSuper AdminNational AdminCountries
{{u.email}} + + not configured + disabled + + + + + + + + no countries + + All countries + + + + +
+
+
+ + + + + + diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/-.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/-.gif new file mode 100644 index 00000000..5f76a883 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/-.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AD.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AD.gif new file mode 100644 index 00000000..1b35b81f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AD.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AE.gif new file mode 100644 index 00000000..57c05512 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AF.gif new file mode 100644 index 00000000..a346b273 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AG.gif new file mode 100644 index 00000000..e3149672 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AI.gif new file mode 100644 index 00000000..474a4f18 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AL.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AL.gif new file mode 100644 index 00000000..96be1ade Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AL.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AM.gif new file mode 100644 index 00000000..1ba4423a Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AN.gif new file mode 100644 index 00000000..3a0f4d92 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AO.gif new file mode 100644 index 00000000..dc05e9ec Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AQ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AQ.gif new file mode 100644 index 00000000..46efd18b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AQ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AR.gif new file mode 100644 index 00000000..6d86a4c1 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AS.gif new file mode 100644 index 00000000..d8856e4b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AT.gif new file mode 100644 index 00000000..284e42af Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AU.gif new file mode 100644 index 00000000..6b3c09bd Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AW.gif new file mode 100644 index 00000000..457ce16c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AX.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AX.gif new file mode 100644 index 00000000..5e650389 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AX.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AZ.gif new file mode 100644 index 00000000..f8827a82 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/AZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BA.gif new file mode 100644 index 00000000..3fc70ead Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BB.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BB.gif new file mode 100644 index 00000000..c37a61fa Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BB.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BD.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BD.gif new file mode 100644 index 00000000..1b20dac0 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BD.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BE.gif new file mode 100644 index 00000000..21b0c697 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BF.gif new file mode 100644 index 00000000..1b4b1d48 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BG.gif new file mode 100644 index 00000000..a620896a Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BH.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BH.gif new file mode 100644 index 00000000..6da72149 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BH.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BI.gif new file mode 100644 index 00000000..b91c9e31 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BJ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BJ.gif new file mode 100644 index 00000000..184b5a4c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BJ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BM.gif new file mode 100644 index 00000000..7faceb0f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BN.gif new file mode 100644 index 00000000..7d330a41 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BO.gif new file mode 100644 index 00000000..626649ea Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BR.gif new file mode 100644 index 00000000..361fe5e3 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BS.gif new file mode 100644 index 00000000..2969ce8f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BT.gif new file mode 100644 index 00000000..0e644201 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BV.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BV.gif new file mode 100644 index 00000000..47faddbd Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BV.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BW.gif new file mode 100644 index 00000000..849349a9 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BY.gif new file mode 100644 index 00000000..6712ad11 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BZ.gif new file mode 100644 index 00000000..fab38e83 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/BZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CA.gif new file mode 100644 index 00000000..777c3b77 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CD.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CD.gif new file mode 100644 index 00000000..86b95ff5 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CD.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CF.gif new file mode 100644 index 00000000..ddc219cd Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CG.gif new file mode 100644 index 00000000..8096c949 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CH.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CH.gif new file mode 100644 index 00000000..894a333e Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CH.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CI.gif new file mode 100644 index 00000000..1aa43fd9 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CK.gif new file mode 100644 index 00000000..6e704f3b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CL.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CL.gif new file mode 100644 index 00000000..e4902b0d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CL.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CM.gif new file mode 100644 index 00000000..0f579d58 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CN.gif new file mode 100644 index 00000000..d1c350b0 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CO.gif new file mode 100644 index 00000000..0ff4ad21 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CR.gif new file mode 100644 index 00000000..2e3626da Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CS.gif new file mode 100644 index 00000000..c9d918da Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CU.gif new file mode 100644 index 00000000..545fa217 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CV.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CV.gif new file mode 100644 index 00000000..7645ad85 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CV.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CY.gif new file mode 100644 index 00000000..9b33f3ac Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CZ.gif new file mode 100644 index 00000000..334c528d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/CZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DE.gif new file mode 100644 index 00000000..4a7cff42 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DJ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DJ.gif new file mode 100644 index 00000000..0abcbfbd Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DJ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DK.gif new file mode 100644 index 00000000..1d200354 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DM.gif new file mode 100644 index 00000000..bec1869c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DO.gif new file mode 100644 index 00000000..4df385e4 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DZ.gif new file mode 100644 index 00000000..3ff23179 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/DZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EC.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EC.gif new file mode 100644 index 00000000..a555bf49 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EC.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EE.gif new file mode 100644 index 00000000..95c3e98f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EG.gif new file mode 100644 index 00000000..55463ded Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ER.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ER.gif new file mode 100644 index 00000000..23350fd4 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ER.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ES.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ES.gif new file mode 100644 index 00000000..83c3019c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ES.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ET.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ET.gif new file mode 100644 index 00000000..6b5ff0c0 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ET.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EU.gif new file mode 100644 index 00000000..d70a7207 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/EU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FI.gif new file mode 100644 index 00000000..e3d9574d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FJ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FJ.gif new file mode 100644 index 00000000..6db8bead Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FJ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FK.gif new file mode 100644 index 00000000..c94c5643 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FM.gif new file mode 100644 index 00000000..bfa9e310 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FO.gif new file mode 100644 index 00000000..3301bc26 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FR.gif new file mode 100644 index 00000000..75a23455 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/FR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GA.gif new file mode 100644 index 00000000..a10762f0 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GB.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GB.gif new file mode 100644 index 00000000..b44b08f6 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GB.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GD.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GD.gif new file mode 100644 index 00000000..17fc449c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GD.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GE.gif new file mode 100644 index 00000000..edb73568 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GF.gif new file mode 100644 index 00000000..265c25a6 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GH.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GH.gif new file mode 100644 index 00000000..417962ae Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GH.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GI.gif new file mode 100644 index 00000000..94073d73 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GL.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GL.gif new file mode 100644 index 00000000..686983fa Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GL.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GM.gif new file mode 100644 index 00000000..eabd5256 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GN.gif new file mode 100644 index 00000000..328a1fc7 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GP.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GP.gif new file mode 100644 index 00000000..0324f5bf Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GP.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GQ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GQ.gif new file mode 100644 index 00000000..4c7b300b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GQ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GR.gif new file mode 100644 index 00000000..b20ce210 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GT.gif new file mode 100644 index 00000000..214d2d51 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GU.gif new file mode 100644 index 00000000..cf2431e5 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GW.gif new file mode 100644 index 00000000..f8662e7b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GY.gif new file mode 100644 index 00000000..63f9da94 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/GY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HK.gif new file mode 100644 index 00000000..aab5f679 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HM.gif new file mode 100644 index 00000000..4413ba1f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HN.gif new file mode 100644 index 00000000..7641d5d3 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HR.gif new file mode 100644 index 00000000..b4cc4700 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HT.gif new file mode 100644 index 00000000..f1b9609a Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HU.gif new file mode 100644 index 00000000..78a5724d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/HU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ID.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ID.gif new file mode 100644 index 00000000..8b288fa2 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ID.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IE.gif new file mode 100644 index 00000000..4ec0ae2b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IL.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IL.gif new file mode 100644 index 00000000..c6dc6b57 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IL.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IM.gif new file mode 100644 index 00000000..d78f92fc Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IN.gif new file mode 100644 index 00000000..a1c16ee4 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IO.gif new file mode 100644 index 00000000..2bd6e5df Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IQ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IQ.gif new file mode 100644 index 00000000..c6283c23 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IQ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IR.gif new file mode 100644 index 00000000..f1e66af7 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IS.gif new file mode 100644 index 00000000..23e9c6f6 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IT.gif new file mode 100644 index 00000000..a6c51739 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/IT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JE.gif new file mode 100644 index 00000000..e629d8df Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JM.gif new file mode 100644 index 00000000..f56aebf5 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JO.gif new file mode 100644 index 00000000..aef7cb9b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JP.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JP.gif new file mode 100644 index 00000000..b645bc8d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/JP.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KE.gif new file mode 100644 index 00000000..657c5312 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KG.gif new file mode 100644 index 00000000..7c433f13 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KH.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KH.gif new file mode 100644 index 00000000..9149a67f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KH.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KI.gif new file mode 100644 index 00000000..a805123d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KM.gif new file mode 100644 index 00000000..1e192185 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KN.gif new file mode 100644 index 00000000..ef7042d4 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KP.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KP.gif new file mode 100644 index 00000000..ede846a8 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KP.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KR.gif new file mode 100644 index 00000000..fb33719c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KW.gif new file mode 100644 index 00000000..9c5980b1 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KY.gif new file mode 100644 index 00000000..04941c94 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KZ.gif new file mode 100644 index 00000000..8ff39eb6 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/KZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LA.gif new file mode 100644 index 00000000..5c94b9be Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LB.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LB.gif new file mode 100644 index 00000000..fe9916c4 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LB.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LC.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LC.gif new file mode 100644 index 00000000..9a0f59c7 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LC.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LI.gif new file mode 100644 index 00000000..365a2d4b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LK.gif new file mode 100644 index 00000000..ceb8ea72 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LR.gif new file mode 100644 index 00000000..47c27dba Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LS.gif new file mode 100644 index 00000000..e3d6715e Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LT.gif new file mode 100644 index 00000000..f710d581 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LU.gif new file mode 100644 index 00000000..a59189bb Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LV.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LV.gif new file mode 100644 index 00000000..9fd82863 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LV.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LY.gif new file mode 100644 index 00000000..a0c2593c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/LY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MA.gif new file mode 100644 index 00000000..8db59084 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MC.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MC.gif new file mode 100644 index 00000000..8793e789 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MC.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MD.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MD.gif new file mode 100644 index 00000000..786b52b4 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MD.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ME.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ME.gif new file mode 100644 index 00000000..64b76441 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ME.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MG.gif new file mode 100644 index 00000000..3395a60c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MH.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MH.gif new file mode 100644 index 00000000..4c8c8098 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MH.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MK.gif new file mode 100644 index 00000000..a8320ba5 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ML.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ML.gif new file mode 100644 index 00000000..e7455520 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ML.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MM.gif new file mode 100644 index 00000000..ede84e6f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MN.gif new file mode 100644 index 00000000..efa313cf Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MO.gif new file mode 100644 index 00000000..0f126629 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MP.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MP.gif new file mode 100644 index 00000000..c030d424 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MP.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MQ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MQ.gif new file mode 100644 index 00000000..64ae2fe4 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MQ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MR.gif new file mode 100644 index 00000000..1f734375 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MS.gif new file mode 100644 index 00000000..02cf19d2 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MT.gif new file mode 100644 index 00000000..f96e2e48 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MU.gif new file mode 100644 index 00000000..e025a965 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MV.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MV.gif new file mode 100644 index 00000000..40dec6fc Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MV.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MW.gif new file mode 100644 index 00000000..f87faa76 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MX.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MX.gif new file mode 100644 index 00000000..3e7700fa Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MX.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MY.gif new file mode 100644 index 00000000..91ae0166 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MZ.gif new file mode 100644 index 00000000..fc223205 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/MZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NA.gif new file mode 100644 index 00000000..4bd510fe Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NC.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NC.gif new file mode 100644 index 00000000..cdd13a9c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NC.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NE.gif new file mode 100644 index 00000000..27e2fc25 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NF.gif new file mode 100644 index 00000000..ebf68d81 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NG.gif new file mode 100644 index 00000000..7a145203 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NI.gif new file mode 100644 index 00000000..64261312 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NL.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NL.gif new file mode 100644 index 00000000..14694620 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NL.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NO.gif new file mode 100644 index 00000000..dbd2cbe7 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NP.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NP.gif new file mode 100644 index 00000000..8f288fbe Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NP.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NR.gif new file mode 100644 index 00000000..626775d3 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NU.gif new file mode 100644 index 00000000..73becaa6 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NZ.gif new file mode 100644 index 00000000..e151943d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/NZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/OM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/OM.gif new file mode 100644 index 00000000..a7e0fca2 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/OM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PA.gif new file mode 100644 index 00000000..814280ba Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PE.gif new file mode 100644 index 00000000..19a02199 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PF.gif new file mode 100644 index 00000000..b1e1b954 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PG.gif new file mode 100644 index 00000000..14a65184 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PH.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PH.gif new file mode 100644 index 00000000..eb38107e Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PH.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PK.gif new file mode 100644 index 00000000..6b64562f Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PL.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PL.gif new file mode 100644 index 00000000..08397c12 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PL.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PM.gif new file mode 100644 index 00000000..38556aab Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PR.gif new file mode 100644 index 00000000..14c2bcc1 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PS.gif new file mode 100644 index 00000000..0c8bfbe2 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PT.gif new file mode 100644 index 00000000..5704a0ce Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PW.gif new file mode 100644 index 00000000..ca903378 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PY.gif new file mode 100644 index 00000000..414916d9 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/PY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/QA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/QA.gif new file mode 100644 index 00000000..b1c4c092 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/QA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RE.gif new file mode 100644 index 00000000..b9e39b8a Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RO.gif new file mode 100644 index 00000000..5fdc82c1 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RS.gif new file mode 100644 index 00000000..80fc7976 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RU.gif new file mode 100644 index 00000000..81c864f0 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RW.gif new file mode 100644 index 00000000..61b24dfe Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/RW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SA.gif new file mode 100644 index 00000000..cc9c0304 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SB.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SB.gif new file mode 100644 index 00000000..20a3df26 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SB.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SC.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SC.gif new file mode 100644 index 00000000..b1895461 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SC.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SD.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SD.gif new file mode 100644 index 00000000..1f7ca278 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SD.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SE.gif new file mode 100644 index 00000000..4096b9a3 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SG.gif new file mode 100644 index 00000000..b4d4f13c Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SI.gif new file mode 100644 index 00000000..7401d6df Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SK.gif new file mode 100644 index 00000000..ea8da1e0 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SL.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SL.gif new file mode 100644 index 00000000..474ddc31 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SL.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SM.gif new file mode 100644 index 00000000..5035b7de Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SN.gif new file mode 100644 index 00000000..27094f66 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SO.gif new file mode 100644 index 00000000..472e0770 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SR.gif new file mode 100644 index 00000000..9ed12993 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ST.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ST.gif new file mode 100644 index 00000000..1a2888c1 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ST.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SV.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SV.gif new file mode 100644 index 00000000..ea8925c8 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SV.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SY.gif new file mode 100644 index 00000000..b6212f67 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SZ.gif new file mode 100644 index 00000000..548740aa Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/SZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TC.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TC.gif new file mode 100644 index 00000000..b80c5d34 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TC.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TD.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TD.gif new file mode 100644 index 00000000..728c9e35 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TD.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TF.gif new file mode 100644 index 00000000..fe3ee3d6 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TG.gif new file mode 100644 index 00000000..07dfe687 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TH.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TH.gif new file mode 100644 index 00000000..82e55c07 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TH.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TJ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TJ.gif new file mode 100644 index 00000000..46a9552a Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TJ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TK.gif new file mode 100644 index 00000000..87789f79 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TM.gif new file mode 100644 index 00000000..ac548827 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TN.gif new file mode 100644 index 00000000..2d0851c9 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TO.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TO.gif new file mode 100644 index 00000000..162a66fa Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TO.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TP.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TP.gif new file mode 100644 index 00000000..a16be207 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TP.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TR.gif new file mode 100644 index 00000000..7c4926e0 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TT.gif new file mode 100644 index 00000000..e5190e13 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TV.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TV.gif new file mode 100644 index 00000000..304ba6f8 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TV.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TW.gif new file mode 100644 index 00000000..0833aba5 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TZ.gif new file mode 100644 index 00000000..ac0d6976 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/TZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UA.gif new file mode 100644 index 00000000..04a9dd1d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UG.gif new file mode 100644 index 00000000..6fb4451d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UK.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UK.gif new file mode 100644 index 00000000..b44b08f6 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UK.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UM.gif new file mode 100644 index 00000000..903d9d9e Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/US.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/US.gif new file mode 100644 index 00000000..130052f3 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/US.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UY.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UY.gif new file mode 100644 index 00000000..b0284f81 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UY.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UZ.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UZ.gif new file mode 100644 index 00000000..76c24b29 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/UZ.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VA.gif new file mode 100644 index 00000000..0bfc62a7 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VC.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VC.gif new file mode 100644 index 00000000..89cbca3b Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VC.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VE.gif new file mode 100644 index 00000000..0b80760d Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VG.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VG.gif new file mode 100644 index 00000000..7a003c83 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VG.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VI.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VI.gif new file mode 100644 index 00000000..1f14ed1e Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VI.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VN.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VN.gif new file mode 100644 index 00000000..a48c1135 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VN.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VU.gif new file mode 100644 index 00000000..1ba27152 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/VU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/WF.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/WF.gif new file mode 100644 index 00000000..c47e1a83 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/WF.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/WS.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/WS.gif new file mode 100644 index 00000000..6440bd21 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/WS.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YE.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YE.gif new file mode 100644 index 00000000..ea105b61 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YE.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YT.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YT.gif new file mode 100644 index 00000000..9e05e8e8 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YT.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YU.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YU.gif new file mode 100644 index 00000000..e43f9053 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/YU.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZA.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZA.gif new file mode 100644 index 00000000..ad0d7a06 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZA.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZM.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZM.gif new file mode 100644 index 00000000..85414287 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZM.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZR.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZR.gif new file mode 100644 index 00000000..6b98ee26 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZR.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZW.gif b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZW.gif new file mode 100644 index 00000000..9369ae09 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/flags/ZW.gif differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/openaire_logo.png b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/openaire_logo.png new file mode 100644 index 00000000..b58e78dc Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/openaire_logo.png differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/openaire_logo_small.png b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/openaire_logo_small.png new file mode 100644 index 00000000..5ddf8163 Binary files /dev/null and b/apps/dnet-orgs-database-application/src/main/resources/static/resources/images/openaire_logo_small.png differ diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/angular-route.min.js b/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/angular-route.min.js new file mode 100644 index 00000000..cb5ebe70 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/angular-route.min.js @@ -0,0 +1,17 @@ +/* + AngularJS v1.7.8 + (c) 2010-2018 Google, Inc. http://angularjs.org + License: MIT +*/ +(function(I,b){'use strict';function z(b,h){var d=[],c=b.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)(\*\?|[?*])?/g,function(b,c,h,k){b="?"===k||"*?"===k;k="*"===k||"*?"===k;d.push({name:h,optional:b});c=c||"";return(b?"(?:"+c:c+"(?:")+(k?"(.+?)":"([^/]+)")+(b?"?)?":")")}).replace(/([/$*])/g,"\\$1");h.ignoreTrailingSlashes&&(c=c.replace(/\/+$/,"")+"/*");return{keys:d,regexp:new RegExp("^"+c+"(?:[?#]|$)",h.caseInsensitiveMatch?"i":"")}}function A(b){p&&b.get("$route")}function v(u,h,d){return{restrict:"ECA", +terminal:!0,priority:400,transclude:"element",link:function(c,f,g,l,k){function q(){r&&(d.cancel(r),r=null);m&&(m.$destroy(),m=null);s&&(r=d.leave(s),r.done(function(b){!1!==b&&(r=null)}),s=null)}function C(){var g=u.current&&u.current.locals;if(b.isDefined(g&&g.$template)){var g=c.$new(),l=u.current;s=k(g,function(g){d.enter(g,null,s||f).done(function(d){!1===d||!b.isDefined(w)||w&&!c.$eval(w)||h()});q()});m=l.scope=g;m.$emit("$viewContentLoaded");m.$eval(p)}else q()}var m,s,r,w=g.autoscroll,p=g.onload|| +"";c.$on("$routeChangeSuccess",C);C()}}}function x(b,h,d){return{restrict:"ECA",priority:-400,link:function(c,f){var g=d.current,l=g.locals;f.html(l.$template);var k=b(f.contents());if(g.controller){l.$scope=c;var q=h(g.controller,l);g.controllerAs&&(c[g.controllerAs]=q);f.data("$ngControllerController",q);f.children().data("$ngControllerController",q)}c[g.resolveAs||"$resolve"]=l;k(c)}}}var D,E,F,G,y=b.module("ngRoute",[]).info({angularVersion:"1.7.8"}).provider("$route",function(){function u(d, +c){return b.extend(Object.create(d),c)}D=b.isArray;E=b.isObject;F=b.isDefined;G=b.noop;var h={};this.when=function(d,c){var f;f=void 0;if(D(c)){f=f||[];for(var g=0,l=c.length;gc)return"...";var d=b.$$hashKey,f;if(H(a)){f=0;for(var g=a.length;f").append(a).html();try{return a[0].nodeType===Pa?K(b):b.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/,function(a,b){return"<"+K(b)})}catch(d){return K(b)}}function Tc(a){try{return decodeURIComponent(a)}catch(b){}}function gc(a){var b={};r((a||"").split("&"), +function(a){var c,e,f;a&&(e=a=a.replace(/\+/g,"%20"),c=a.indexOf("="),-1!==c&&(e=a.substring(0,c),f=a.substring(c+1)),e=Tc(e),w(e)&&(f=w(f)?Tc(f):!0,ta.call(b,e)?H(b[e])?b[e].push(f):b[e]=[b[e],f]:b[e]=f))});return b}function ye(a){var b=[];r(a,function(a,c){H(a)?r(a,function(a){b.push(ba(c,!0)+(!0===a?"":"="+ba(a,!0)))}):b.push(ba(c,!0)+(!0===a?"":"="+ba(a,!0)))});return b.length?b.join("&"):""}function hc(a){return ba(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ba(a, +b){return encodeURIComponent(a).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,b?"%20":"+")}function ze(a,b){var d,c,e=Qa.length;for(c=0;c protocol indicates an extension, document.location.href does not match."))}function Uc(a,b,d){D(d)||(d={});d=S({strictDi:!1},d);var c=function(){a=x(a);if(a.injector()){var c=a[0]===C.document?"document":za(a);throw pa("btstrpd",c.replace(//,">"));}b=b||[];b.unshift(["$provide",function(b){b.value("$rootElement",a)}]);d.debugInfoEnabled&&b.push(["$compileProvider", +function(a){a.debugInfoEnabled(!0)}]);b.unshift("ng");c=fb(b,d.strictDi);c.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector",d);c(b)(a)})}]);return c},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;C&&e.test(C.name)&&(d.debugInfoEnabled=!0,C.name=C.name.replace(e,""));if(C&&!f.test(C.name))return c();C.name=C.name.replace(f,"");ca.resumeBootstrap=function(a){r(a,function(a){b.push(a)});return c()};B(ca.resumeDeferredBootstrap)&& +ca.resumeDeferredBootstrap()}function Ce(){C.name="NG_ENABLE_DEBUG_INFO!"+C.name;C.location.reload()}function De(a){a=ca.element(a).injector();if(!a)throw pa("test");return a.get("$$testability")}function Vc(a,b){b=b||"_";return a.replace(Ee,function(a,c){return(c?b:"")+a.toLowerCase()})}function Fe(){var a;if(!Wc){var b=qb();(rb=z(b)?C.jQuery:b?C[b]:void 0)&&rb.fn.on?(x=rb,S(rb.fn,{scope:Wa.scope,isolateScope:Wa.isolateScope,controller:Wa.controller,injector:Wa.injector,inheritedData:Wa.inheritedData})): +x=Y;a=x.cleanData;x.cleanData=function(b){for(var c,e=0,f;null!=(f=b[e]);e++)(c=(x._data(f)||{}).events)&&c.$destroy&&x(f).triggerHandler("$destroy");a(b)};ca.element=x;Wc=!0}}function gb(a,b,d){if(!a)throw pa("areq",b||"?",d||"required");return a}function sb(a,b,d){d&&H(a)&&(a=a[a.length-1]);gb(B(a),b,"not a function, got "+(a&&"object"===typeof a?a.constructor.name||"Object":typeof a));return a}function Ja(a,b){if("hasOwnProperty"===a)throw pa("badname",b);}function Ge(a,b,d){if(!b)return a;b=b.split("."); +for(var c,e=a,f=b.length,g=0;g")+c[2];for(c=c[0];c--;)d=d.lastChild;f=db(f,d.childNodes);d=e.firstChild;d.textContent=""}else f.push(b.createTextNode(a));e.textContent="";e.innerHTML="";r(f,function(a){e.appendChild(a)});return e}function Y(a){if(a instanceof Y)return a;var b;A(a)&&(a=U(a),b=!0);if(!(this instanceof Y)){if(b&&"<"!==a.charAt(0))throw nc("nosel");return new Y(a)}if(b){b= +C.document;var d;a=(d=og.exec(a))?[b.createElement(d[1])]:(d=ed(a,b))?d.childNodes:[];oc(this,a)}else B(a)?fd(a):oc(this,a)}function pc(a){return a.cloneNode(!0)}function yb(a,b){!b&&lc(a)&&x.cleanData([a]);a.querySelectorAll&&x.cleanData(a.querySelectorAll("*"))}function gd(a){for(var b in a)return!1;return!0}function hd(a){var b=a.ng339,d=b&&Ka[b],c=d&&d.events,d=d&&d.data;d&&!gd(d)||c&&!gd(c)||(delete Ka[b],a.ng339=void 0)}function id(a,b,d,c){if(w(c))throw nc("offargs");var e=(c=zb(a))&&c.events, +f=c&&c.handle;if(f){if(b){var g=function(b){var c=e[b];w(d)&&cb(c||[],d);w(d)&&c&&0l&&this.remove(n.key);return b}},get:function(a){if(l";b=Fa.firstChild.attributes;var d=b[0];b.removeNamedItem(d.name);d.value=c;a.attributes.setNamedItem(d)}function sa(a,b){try{a.addClass(b)}catch(c){}} +function da(a,b,c,d,e){a instanceof x||(a=x(a));var f=Xa(a,b,a,c,d,e);da.$$addScopeClass(a);var g=null;return function(b,c,d){if(!a)throw $("multilink");gb(b,"scope");e&&e.needsNewScope&&(b=b.$parent.$new());d=d||{};var h=d.parentBoundTranscludeFn,k=d.transcludeControllers;d=d.futureParentElement;h&&h.$$boundTransclude&&(h=h.$$boundTransclude);g||(g=(d=d&&d[0])?"foreignobject"!==ua(d)&&la.call(d).match(/SVG/)?"svg":"html":"html");d="html"!==g?x(ja(g,x("
").append(a).html())):c?Wa.clone.call(a): +a;if(k)for(var l in k)d.data("$"+l+"Controller",k[l].instance);da.$$addScopeInfo(d,b);c&&c(d,b);f&&f(b,d,d,h);c||(a=f=null);return d}}function Xa(a,b,c,d,e,f){function g(a,c,d,e){var f,k,l,m,p,I,t;if(n)for(t=Array(c.length),m=0;mu.priority)break;if(O=u.scope)u.templateUrl||(D(O)?(ba("new/isolated scope",s||t,u,y),s=u):ba("new/isolated scope",s,u,y)),t=t||u;Q=u.name;if(!ma&&(u.replace&&(u.templateUrl||u.template)||u.transclude&&!u.$$tlb)){for(O=sa+1;ma=a[O++];)if(ma.transclude&&!ma.$$tlb||ma.replace&&(ma.templateUrl||ma.template)){Ib=!0;break}ma=!0}!u.templateUrl&&u.controller&&(J=J||T(),ba("'"+Q+"' controller", +J[Q],u,y),J[Q]=u);if(O=u.transclude)if(G=!0,u.$$tlb||(ba("transclusion",L,u,y),L=u),"element"===O)N=!0,n=u.priority,M=y,y=d.$$element=x(da.$$createComment(Q,d[Q])),b=y[0],pa(f,Ha.call(M,0),b),R=Z(Ib,M,e,n,g&&g.name,{nonTlbTranscludeDirective:L});else{var ka=T();if(D(O)){M=C.document.createDocumentFragment();var Xa=T(),F=T();r(O,function(a,b){var c="?"===a.charAt(0);a=c?a.substring(1):a;Xa[a]=b;ka[b]=null;F[b]=c});r(y.contents(),function(a){var b=Xa[wa(ua(a))];b?(F[b]=!0,ka[b]=ka[b]||C.document.createDocumentFragment(), +ka[b].appendChild(a)):M.appendChild(a)});r(F,function(a,b){if(!a)throw $("reqslot",b);});for(var K in ka)ka[K]&&(R=x(ka[K].childNodes),ka[K]=Z(Ib,R,e));M=x(M.childNodes)}else M=x(pc(b)).contents();y.empty();R=Z(Ib,M,e,void 0,void 0,{needsNewScope:u.$$isolateScope||u.$$newScope});R.$$slots=ka}if(u.template)if(P=!0,ba("template",v,u,y),v=u,O=B(u.template)?u.template(y,d):u.template,O=Na(O),u.replace){g=u;M=mc.test(O)?rd(ja(u.templateNamespace,U(O))):[];b=M[0];if(1!==M.length||1!==b.nodeType)throw $("tplrt", +Q,"");pa(f,y,b);A={$attr:{}};O=sc(b,[],A);var Dg=a.splice(sa+1,a.length-(sa+1));(s||t)&&fa(O,s,t);a=a.concat(O).concat(Dg);ga(d,A);A=a.length}else y.html(O);if(u.templateUrl)P=!0,ba("template",v,u,y),v=u,u.replace&&(g=u),p=ha(a.splice(sa,a.length-sa),y,d,f,G&&R,h,k,{controllerDirectives:J,newScopeDirective:t!==u&&t,newIsolateScopeDirective:s,templateDirective:v,nonTlbTranscludeDirective:L}),A=a.length;else if(u.compile)try{q=u.compile(y,d,R);var X=u.$$originalDirective||u;B(q)?m(null,Va(X,q),E,ib): +q&&m(Va(X,q.pre),Va(X,q.post),E,ib)}catch(ca){c(ca,za(y))}u.terminal&&(p.terminal=!0,n=Math.max(n,u.priority))}p.scope=t&&!0===t.scope;p.transcludeOnThisElement=G;p.templateOnThisElement=P;p.transclude=R;l.hasElementTranscludeDirective=N;return p}function W(a,b,c,d){var e;if(A(b)){var f=b.match(l);b=b.substring(f[0].length);var g=f[1]||f[3],f="?"===f[2];"^^"===g?c=c.parent():e=(e=d&&d[b])&&e.instance;if(!e){var h="$"+b+"Controller";e="^^"===g&&c[0]&&9===c[0].nodeType?null:g?c.inheritedData(h):c.data(h)}if(!e&& +!f)throw $("ctreq",b,a);}else if(H(b))for(e=[],g=0,f=b.length;gc.priority)&&-1!==c.restrict.indexOf(e)){k&&(c=ac(c,{$$start:k,$$end:l}));if(!c.$$bindings){var I=m=c,t=c.name,u={isolateScope:null,bindToController:null};D(I.scope)&&(!0===I.bindToController?(u.bindToController=d(I.scope,t,!0),u.isolateScope={}):u.isolateScope=d(I.scope,t,!1));D(I.bindToController)&&(u.bindToController=d(I.bindToController, +t,!0));if(u.bindToController&&!I.controller)throw $("noctrl",t);m=m.$$bindings=u;D(m.isolateScope)&&(c.$$isolateBindings=m.isolateScope)}b.push(c);m=c}}return m}function ca(b){if(f.hasOwnProperty(b))for(var c=a.get(b+"Directive"),d=0,e=c.length;d"+b+"";return c.childNodes[0].childNodes;default:return b}}function oa(a,b){if("srcdoc"===b)return u.HTML;if("src"===b||"ngSrc"===b)return-1===["img","video","audio","source","track"].indexOf(a)?u.RESOURCE_URL:u.MEDIA_URL;if("xlinkHref"===b)return"image"===a?u.MEDIA_URL: +"a"===a?u.URL:u.RESOURCE_URL;if("form"===a&&"action"===b||"base"===a&&"href"===b||"link"===a&&"href"===b)return u.RESOURCE_URL;if("a"===a&&("href"===b||"ngHref"===b))return u.URL}function xa(a,b){var c=b.toLowerCase();return v[a+"|"+c]||v["*|"+c]}function ya(a){return ma(u.valueOf(a),"ng-prop-srcset")}function Ea(a,b,c,d){if(m.test(d))throw $("nodomevents");a=ua(a);var e=xa(a,d),f=Ta;"srcset"!==d||"img"!==a&&"source"!==a?e&&(f=u.getTrusted.bind(u,e)):f=ya;b.push({priority:100,compile:function(a,b){var e= +p(b[c]),g=p(b[c],function(a){return u.valueOf(a)});return{pre:function(a,b){function c(){var g=e(a);b[0][d]=f(g)}c();a.$watch(g,c)}}}})}function Ia(a,c,d,e,f){var g=ua(a),k=oa(g,e),l=h[e]||f,p=b(d,!f,k,l);if(p){if("multiple"===e&&"select"===g)throw $("selmulti",za(a));if(m.test(e))throw $("nodomevents");c.push({priority:100,compile:function(){return{pre:function(a,c,f){c=f.$$observers||(f.$$observers=T());var g=f[e];g!==d&&(p=g&&b(g,!0,k,l),d=g);p&&(f[e]=p(a),(c[e]||(c[e]=[])).$$inter=!0,(f.$$observers&& +f.$$observers[e].$$scope||a).$watch(p,function(a,b){"class"===e&&a!==b?f.$updateClass(a,b):f.$set(e,a)}))}}}})}}function pa(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g=b)return a;for(;b--;){var d=a[b];(8===d.nodeType||d.nodeType===Pa&&""===d.nodeValue.trim())&&Fg.call(a,b,1)}return a}function Bg(a,b){if(b&&A(b))return b;if(A(a)){var d=ud.exec(a);if(d)return d[3]}}function Ff(){var a={};this.has=function(b){return a.hasOwnProperty(b)};this.register=function(b,d){Ja(b, +"controller");D(b)?S(a,b):a[b]=d};this.$get=["$injector",function(b){function d(a,b,d,g){if(!a||!D(a.$scope))throw F("$controller")("noscp",g,b);a.$scope[b]=d}return function(c,e,f,g){var k,h,l;f=!0===f;g&&A(g)&&(l=g);if(A(c)){g=c.match(ud);if(!g)throw vd("ctrlfmt",c);h=g[1];l=l||g[3];c=a.hasOwnProperty(h)?a[h]:Ge(e.$scope,h,!0);if(!c)throw vd("ctrlreg",h);sb(c,h,!0)}if(f)return f=(H(c)?c[c.length-1]:c).prototype,k=Object.create(f||null),l&&d(e,l,k,h||c.name),S(function(){var a=b.invoke(c,k,e,h); +a!==k&&(D(a)||B(a))&&(k=a,l&&d(e,l,k,h||c.name));return k},{instance:k,identifier:l});k=b.instantiate(c,e,h);l&&d(e,l,k,h||c.name);return k}}]}function Gf(){this.$get=["$window",function(a){return x(a.document)}]}function Hf(){this.$get=["$document","$rootScope",function(a,b){function d(){e=c.hidden}var c=a[0],e=c&&c.hidden;a.on("visibilitychange",d);b.$on("$destroy",function(){a.off("visibilitychange",d)});return function(){return e}}]}function If(){this.$get=["$log",function(a){return function(b, +d){a.error.apply(a,arguments)}}]}function uc(a){return D(a)?ha(a)?a.toISOString():eb(a):a}function Of(){this.$get=function(){return function(a){if(!a)return"";var b=[];Oc(a,function(a,c){null===a||z(a)||B(a)||(H(a)?r(a,function(a){b.push(ba(c)+"="+ba(uc(a)))}):b.push(ba(c)+"="+ba(uc(a))))});return b.join("&")}}}function Pf(){this.$get=function(){return function(a){function b(a,e,f){H(a)?r(a,function(a,c){b(a,e+"["+(D(a)?c:"")+"]")}):D(a)&&!ha(a)?Oc(a,function(a,c){b(a,e+(f?"":"[")+c+(f?"":"]"))}): +(B(a)&&(a=a()),d.push(ba(e)+"="+(null==a?"":ba(uc(a)))))}if(!a)return"";var d=[];b(a,"",!0);return d.join("&")}}}function vc(a,b){if(A(a)){var d=a.replace(Gg,"").trim();if(d){var c=b("Content-Type"),c=c&&0===c.indexOf(wd),e;(e=c)||(e=(e=d.match(Hg))&&Ig[e[0]].test(d));if(e)try{a=Rc(d)}catch(f){if(!c)return a;throw Kb("baddata",a,f);}}}return a}function xd(a){var b=T(),d;A(a)?r(a.split("\n"),function(a){d=a.indexOf(":");var e=K(U(a.substr(0,d)));a=U(a.substr(d+1));e&&(b[e]=b[e]?b[e]+", "+a:a)}):D(a)&& +r(a,function(a,d){var f=K(d),g=U(a);f&&(b[f]=b[f]?b[f]+", "+g:g)});return b}function yd(a){var b;return function(d){b||(b=xd(a));return d?(d=b[K(d)],void 0===d&&(d=null),d):b}}function zd(a,b,d,c){if(B(c))return c(a,b,d);r(c,function(c){a=c(a,b,d)});return a}function Nf(){var a=this.defaults={transformResponse:[vc],transformRequest:[function(a){return D(a)&&"[object File]"!==la.call(a)&&"[object Blob]"!==la.call(a)&&"[object FormData]"!==la.call(a)?eb(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"}, +post:ja(wc),put:ja(wc),patch:ja(wc)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer",jsonpCallbackParam:"callback"},b=!1;this.useApplyAsync=function(a){return w(a)?(b=!!a,this):b};var d=this.interceptors=[],c=this.xsrfWhitelistedOrigins=[];this.$get=["$browser","$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector","$sce",function(e,f,g,k,h,l,m,p){function n(b){function c(a,b){for(var d=0,e=b.length;da?b:l.reject(b)}if(!D(b))throw F("$http")("badreq",b);if(!A(p.valueOf(b.url)))throw F("$http")("badreq",b.url);var g=S({method:"get",transformRequest:a.transformRequest,transformResponse:a.transformResponse,paramSerializer:a.paramSerializer,jsonpCallbackParam:a.jsonpCallbackParam}, +b);g.headers=function(b){var c=a.headers,e=S({},b.headers),f,g,h,c=S({},c.common,c[K(b.method)]);a:for(f in c){g=K(f);for(h in e)if(K(h)===g)continue a;e[f]=c[f]}return d(e,ja(b))}(b);g.method=ub(g.method);g.paramSerializer=A(g.paramSerializer)?m.get(g.paramSerializer):g.paramSerializer;e.$$incOutstandingRequestCount("$http");var h=[],k=[];b=l.resolve(g);r(v,function(a){(a.request||a.requestError)&&h.unshift(a.request,a.requestError);(a.response||a.responseError)&&k.push(a.response,a.responseError)}); +b=c(b,h);b=b.then(function(b){var c=b.headers,d=zd(b.data,yd(c),void 0,b.transformRequest);z(d)&&r(c,function(a,b){"content-type"===K(b)&&delete c[b]});z(b.withCredentials)&&!z(a.withCredentials)&&(b.withCredentials=a.withCredentials);return s(b,d).then(f,f)});b=c(b,k);return b=b.finally(function(){e.$$completeOutstandingRequest(E,"$http")})}function s(c,d){function e(a){if(a){var c={};r(a,function(a,d){c[d]=function(c){function d(){a(c)}b?h.$applyAsync(d):h.$$phase?d():h.$apply(d)}});return c}}function k(a, +c,d,e,f){function g(){m(c,a,d,e,f)}R&&(200<=a&&300>a?R.put(O,[a,c,xd(d),e,f]):R.remove(O));b?h.$applyAsync(g):(g(),h.$$phase||h.$apply())}function m(a,b,d,e,f){b=-1<=b?b:0;(200<=b&&300>b?L.resolve:L.reject)({data:a,status:b,headers:yd(d),config:c,statusText:e,xhrStatus:f})}function s(a){m(a.data,a.status,ja(a.headers()),a.statusText,a.xhrStatus)}function v(){var a=n.pendingRequests.indexOf(c);-1!==a&&n.pendingRequests.splice(a,1)}var L=l.defer(),u=L.promise,R,q,ma=c.headers,x="jsonp"===K(c.method), +O=c.url;x?O=p.getTrustedResourceUrl(O):A(O)||(O=p.valueOf(O));O=G(O,c.paramSerializer(c.params));x&&(O=t(O,c.jsonpCallbackParam));n.pendingRequests.push(c);u.then(v,v);!c.cache&&!a.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(R=D(c.cache)?c.cache:D(a.cache)?a.cache:N);R&&(q=R.get(O),w(q)?q&&B(q.then)?q.then(s,s):H(q)?m(q[1],q[0],ja(q[2]),q[3],q[4]):m(q,200,{},"OK","complete"):R.put(O,u));z(q)&&((q=jc(c.url)?g()[c.xsrfCookieName||a.xsrfCookieName]:void 0)&&(ma[c.xsrfHeaderName||a.xsrfHeaderName]= +q),f(c.method,O,d,k,ma,c.timeout,c.withCredentials,c.responseType,e(c.eventHandlers),e(c.uploadEventHandlers)));return u}function G(a,b){0=h&&(t.resolve(s),f(r.$$intervalId));G||c.$apply()},k,t,G);return r}}}]}function Ad(a,b){var d=ga(a);b.$$protocol=d.protocol;b.$$host=d.hostname;b.$$port=fa(d.port)||Mg[d.protocol]||null}function Bd(a,b,d){if(Ng.test(a))throw jb("badpath",a);var c="/"!==a.charAt(0);c&&(a="/"+a);a=ga(a);for(var c=(c&&"/"===a.pathname.charAt(0)?a.pathname.substring(1):a.pathname).split("/"),e=c.length;e--;)c[e]=decodeURIComponent(c[e]),d&&(c[e]=c[e].replace(/\//g,"%2F"));d=c.join("/");b.$$path=d;b.$$search=gc(a.search); +b.$$hash=decodeURIComponent(a.hash);b.$$path&&"/"!==b.$$path.charAt(0)&&(b.$$path="/"+b.$$path)}function xc(a,b){return a.slice(0,b.length)===b}function xa(a,b){if(xc(b,a))return b.substr(a.length)}function Da(a){var b=a.indexOf("#");return-1===b?a:a.substr(0,b)}function yc(a,b,d){this.$$html5=!0;d=d||"";Ad(a,this);this.$$parse=function(a){var d=xa(b,a);if(!A(d))throw jb("ipthprfx",a,b);Bd(d,this,!0);this.$$path||(this.$$path="/");this.$$compose()};this.$$normalizeUrl=function(a){return b+a.substr(1)}; +this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;w(f=xa(a,c))?(g=f,g=d&&w(f=xa(d,f))?b+(xa("/",f)||f):a+g):w(f=xa(b,c))?g=b+f:b===c+"/"&&(g=b);g&&this.$$parse(g);return!!g}}function zc(a,b,d){Ad(a,this);this.$$parse=function(c){var e=xa(a,c)||xa(b,c),f;z(e)||"#"!==e.charAt(0)?this.$$html5?f=e:(f="",z(e)&&(a=c,this.replace())):(f=xa(d,e),z(f)&&(f=e));Bd(f,this,!1);c=this.$$path;var e=a,g=/^\/[A-Z]:(\/.*)/;xc(f,e)&&(f=f.replace(e,""));g.exec(f)||(c=(f=g.exec(c))? +f[1]:c);this.$$path=c;this.$$compose()};this.$$normalizeUrl=function(b){return a+(b?d+b:"")};this.$$parseLinkUrl=function(b,d){return Da(a)===Da(b)?(this.$$parse(b),!0):!1}}function Cd(a,b,d){this.$$html5=!0;zc.apply(this,arguments);this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;a===Da(c)?f=c:(g=xa(b,c))?f=a+d+g:b===c+"/"&&(f=b);f&&this.$$parse(f);return!!f};this.$$normalizeUrl=function(b){return a+d+b}}function Lb(a){return function(){return this[a]}}function Dd(a, +b){return function(d){if(z(d))return this[a];this[a]=b(d);this.$$compose();return this}}function Tf(){var a="!",b={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(b){return w(b)?(a=b,this):a};this.html5Mode=function(a){if(Ga(a))return b.enabled=a,this;if(D(a)){Ga(a.enabled)&&(b.enabled=a.enabled);Ga(a.requireBase)&&(b.requireBase=a.requireBase);if(Ga(a.rewriteLinks)||A(a.rewriteLinks))b.rewriteLinks=a.rewriteLinks;return this}return b};this.$get=["$rootScope","$browser","$sniffer", +"$rootElement","$window",function(d,c,e,f,g){function k(a,b){return a===b||ga(a).href===ga(b).href}function h(a,b,d){var e=m.url(),f=m.$$state;try{c.url(a,b,d),m.$$state=c.state()}catch(g){throw m.url(e),m.$$state=f,g;}}function l(a,b){d.$broadcast("$locationChangeSuccess",m.absUrl(),a,m.$$state,b)}var m,p;p=c.baseHref();var n=c.url(),s;if(b.enabled){if(!p&&b.requireBase)throw jb("nobase");s=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(p||"/");p=e.history?yc:Cd}else s=Da(n),p=zc;var r=s.substr(0, +Da(s).lastIndexOf("/")+1);m=new p(s,r,"#"+a);m.$$parseLinkUrl(n,n);m.$$state=c.state();var t=/^\s*(javascript|mailto):/i;f.on("click",function(a){var e=b.rewriteLinks;if(e&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&2!==a.which&&2!==a.button){for(var g=x(a.target);"a"!==ua(g[0]);)if(g[0]===f[0]||!(g=g.parent())[0])return;if(!A(e)||!z(g.attr(e))){var e=g.prop("href"),h=g.attr("href")||g.attr("xlink:href");D(e)&&"[object SVGAnimatedString]"===e.toString()&&(e=ga(e.animVal).href);t.test(e)||!e||g.attr("target")|| +a.isDefaultPrevented()||!m.$$parseLinkUrl(e,h)||(a.preventDefault(),m.absUrl()!==c.url()&&d.$apply())}}});m.absUrl()!==n&&c.url(m.absUrl(),!0);var N=!0;c.onUrlChange(function(a,b){xc(a,r)?(d.$evalAsync(function(){var c=m.absUrl(),e=m.$$state,f;m.$$parse(a);m.$$state=b;f=d.$broadcast("$locationChangeStart",a,c,b,e).defaultPrevented;m.absUrl()===a&&(f?(m.$$parse(c),m.$$state=e,h(c,!1,e)):(N=!1,l(c,e)))}),d.$$phase||d.$digest()):g.location.href=a});d.$watch(function(){if(N||m.$$urlUpdatedByLocation){m.$$urlUpdatedByLocation= +!1;var a=c.url(),b=m.absUrl(),f=c.state(),g=m.$$replace,n=!k(a,b)||m.$$html5&&e.history&&f!==m.$$state;if(N||n)N=!1,d.$evalAsync(function(){var b=m.absUrl(),c=d.$broadcast("$locationChangeStart",b,a,m.$$state,f).defaultPrevented;m.absUrl()===b&&(c?(m.$$parse(a),m.$$state=f):(n&&h(b,g,f===m.$$state?null:m.$$state),l(a,f)))})}m.$$replace=!1});return m}]}function Uf(){var a=!0,b=this;this.debugEnabled=function(b){return w(b)?(a=b,this):a};this.$get=["$window",function(d){function c(a){cc(a)&&(a.stack&& +f?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function e(a){var b=d.console||{},e=b[a]||b.log||E;return function(){var a=[];r(arguments,function(b){a.push(c(b))});return Function.prototype.apply.call(e,b,a)}}var f=Ca||/\bEdge\//.test(d.navigator&&d.navigator.userAgent);return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){a&&c.apply(b, +arguments)}}()}}]}function Og(a){return a+""}function Pg(a,b){return"undefined"!==typeof a?a:b}function Ed(a,b){return"undefined"===typeof a?b:"undefined"===typeof b?a:a+b}function Qg(a,b){switch(a.type){case q.MemberExpression:if(a.computed)return!1;break;case q.UnaryExpression:return 1;case q.BinaryExpression:return"+"!==a.operator?1:!1;case q.CallExpression:return!1}return void 0===b?Fd:b}function Z(a,b,d){var c,e,f=a.isPure=Qg(a,d);switch(a.type){case q.Program:c=!0;r(a.body,function(a){Z(a.expression, +b,f);c=c&&a.expression.constant});a.constant=c;break;case q.Literal:a.constant=!0;a.toWatch=[];break;case q.UnaryExpression:Z(a.argument,b,f);a.constant=a.argument.constant;a.toWatch=a.argument.toWatch;break;case q.BinaryExpression:Z(a.left,b,f);Z(a.right,b,f);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.left.toWatch.concat(a.right.toWatch);break;case q.LogicalExpression:Z(a.left,b,f);Z(a.right,b,f);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.constant?[]:[a];break;case q.ConditionalExpression:Z(a.test, +b,f);Z(a.alternate,b,f);Z(a.consequent,b,f);a.constant=a.test.constant&&a.alternate.constant&&a.consequent.constant;a.toWatch=a.constant?[]:[a];break;case q.Identifier:a.constant=!1;a.toWatch=[a];break;case q.MemberExpression:Z(a.object,b,f);a.computed&&Z(a.property,b,f);a.constant=a.object.constant&&(!a.computed||a.property.constant);a.toWatch=a.constant?[]:[a];break;case q.CallExpression:c=d=a.filter?!b(a.callee.name).$stateful:!1;e=[];r(a.arguments,function(a){Z(a,b,f);c=c&&a.constant;e.push.apply(e, +a.toWatch)});a.constant=c;a.toWatch=d?e:[a];break;case q.AssignmentExpression:Z(a.left,b,f);Z(a.right,b,f);a.constant=a.left.constant&&a.right.constant;a.toWatch=[a];break;case q.ArrayExpression:c=!0;e=[];r(a.elements,function(a){Z(a,b,f);c=c&&a.constant;e.push.apply(e,a.toWatch)});a.constant=c;a.toWatch=e;break;case q.ObjectExpression:c=!0;e=[];r(a.properties,function(a){Z(a.value,b,f);c=c&&a.value.constant;e.push.apply(e,a.value.toWatch);a.computed&&(Z(a.key,b,!1),c=c&&a.key.constant,e.push.apply(e, +a.key.toWatch))});a.constant=c;a.toWatch=e;break;case q.ThisExpression:a.constant=!1;a.toWatch=[];break;case q.LocalsExpression:a.constant=!1,a.toWatch=[]}}function Gd(a){if(1===a.length){a=a[0].expression;var b=a.toWatch;return 1!==b.length?b:b[0]!==a?b:void 0}}function Hd(a){return a.type===q.Identifier||a.type===q.MemberExpression}function Id(a){if(1===a.body.length&&Hd(a.body[0].expression))return{type:q.AssignmentExpression,left:a.body[0].expression,right:{type:q.NGValueParameter},operator:"="}} +function Jd(a){this.$filter=a}function Kd(a){this.$filter=a}function Mb(a,b,d){this.ast=new q(a,d);this.astCompiler=d.csp?new Kd(b):new Jd(b)}function Ac(a){return B(a.valueOf)?a.valueOf():Rg.call(a)}function Vf(){var a=T(),b={"true":!0,"false":!1,"null":null,undefined:void 0},d,c;this.addLiteral=function(a,c){b[a]=c};this.setIdentifierFns=function(a,b){d=a;c=b;return this};this.$get=["$filter",function(e){function f(b,c){var d,f;switch(typeof b){case "string":return f=b=b.trim(),d=a[f],d||(d=new Nb(G), +d=(new Mb(d,e,G)).parse(b),a[f]=p(d)),s(d,c);case "function":return s(b,c);default:return s(E,c)}}function g(a,b,c){return null==a||null==b?a===b:"object"!==typeof a||(a=Ac(a),"object"!==typeof a||c)?a===b||a!==a&&b!==b:!1}function k(a,b,c,d,e){var f=d.inputs,h;if(1===f.length){var k=g,f=f[0];return a.$watch(function(a){var b=f(a);g(b,k,f.isPure)||(h=d(a,void 0,void 0,[b]),k=b&&Ac(b));return h},b,c,e)}for(var l=[],m=[],n=0,p=f.length;n=c.$$state.status&&e&&e.length&&a(function(){for(var a,c,f=0,g=e.length;fa)for(b in l++,f)ta.call(e,b)||(t--,delete f[b])}else f!==e&&(f=e,l++);return l}}c.$$pure=g(a).literal;c.$stateful=!c.$$pure;var d=this,e,f,h,k=1r&&(z=4-r,N[z]|| +(N[z]=[]),N[z].push({msg:B(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,newVal:g,oldVal:h}));else if(a===c){s=!1;break a}}catch(E){f(E)}if(!(n=!q.$$suspended&&q.$$watchersCount&&q.$$childHead||q!==y&&q.$$nextSibling))for(;q!==y&&!(n=q.$$nextSibling);)q=q.$parent}while(q=n);if((s||w.length)&&!r--)throw v.$$phase=null,d("infdig",b,N);}while(s||w.length);for(v.$$phase=null;JCa)throw Ea("iequirks");var c=ja(V);c.isEnabled=function(){return a}; +c.trustAs=d.trustAs;c.getTrusted=d.getTrusted;c.valueOf=d.valueOf;a||(c.trustAs=c.getTrusted=function(a,b){return b},c.valueOf=Ta);c.parseAs=function(a,d){var e=b(d);return e.literal&&e.constant?e:b(d,function(b){return c.getTrusted(a,b)})};var e=c.parseAs,f=c.getTrusted,g=c.trustAs;r(V,function(a,b){var d=K(b);c[("parse_as_"+d).replace(Cc,wb)]=function(b){return e(a,b)};c[("get_trusted_"+d).replace(Cc,wb)]=function(b){return f(a,b)};c[("trust_as_"+d).replace(Cc,wb)]=function(b){return g(a,b)}}); +return c}]}function ag(){this.$get=["$window","$document",function(a,b){var d={},c=!((!a.nw||!a.nw.process)&&a.chrome&&(a.chrome.app&&a.chrome.app.runtime||!a.chrome.app&&a.chrome.runtime&&a.chrome.runtime.id))&&a.history&&a.history.pushState,e=fa((/android (\d+)/.exec(K((a.navigator||{}).userAgent))||[])[1]),f=/Boxee/i.test((a.navigator||{}).userAgent),g=b[0]||{},k=g.body&&g.body.style,h=!1,l=!1;k&&(h=!!("transition"in k||"webkitTransition"in k),l=!!("animation"in k||"webkitAnimation"in k));return{history:!(!c|| +4>e||f),hasEvent:function(a){if("input"===a&&Ca)return!1;if(z(d[a])){var b=g.createElement("div");d[a]="on"+a in b}return d[a]},csp:Aa(),transitions:h,animations:l,android:e}}]}function bg(){this.$get=ia(function(a){return new Tg(a)})}function Tg(a){function b(){var a=e.pop();return a&&a.cb}function d(a){for(var b=e.length-1;0<=b;--b){var c=e[b];if(c.type===a)return e.splice(b,1),c.cb}}var c={},e=[],f=this.ALL_TASKS_TYPE="$$all$$",g=this.DEFAULT_TASK_TYPE="$$default$$";this.completeTask=function(e, +h){h=h||g;try{e()}finally{var l;l=h||g;c[l]&&(c[l]--,c[f]--);l=c[h];var m=c[f];if(!m||!l)for(l=m?d:b;m=l(h);)try{m()}catch(p){a.error(p)}}};this.incTaskCount=function(a){a=a||g;c[a]=(c[a]||0)+1;c[f]=(c[f]||0)+1};this.notifyWhenNoPendingTasks=function(a,b){b=b||f;c[b]?e.push({type:b,cb:a}):a()}}function dg(){var a;this.httpOptions=function(b){return b?(a=b,this):a};this.$get=["$exceptionHandler","$templateCache","$http","$q","$sce",function(b,d,c,e,f){function g(k,h){g.totalPendingRequests++;if(!A(k)|| +z(d.get(k)))k=f.getTrustedResourceUrl(k);var l=c.defaults&&c.defaults.transformResponse;H(l)?l=l.filter(function(a){return a!==vc}):l===vc&&(l=null);return c.get(k,S({cache:d,transformResponse:l},a)).finally(function(){g.totalPendingRequests--}).then(function(a){return d.put(k,a.data)},function(a){h||(a=Ug("tpload",k,a.status,a.statusText),b(a));return e.reject(a)})}g.totalPendingRequests=0;return g}]}function eg(){this.$get=["$rootScope","$browser","$location",function(a,b,d){return{findBindings:function(a, +b,d){a=a.getElementsByClassName("ng-binding");var g=[];r(a,function(a){var c=ca.element(a).data("$binding");c&&r(c,function(c){d?(new RegExp("(^|\\s)"+Md(b)+"(\\s|\\||$)")).test(c)&&g.push(a):-1!==c.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,d){for(var g=["ng-","data-ng-","ng\\:"],k=0;kc&&(c=e),c+=+a.slice(e+1),a=a.substring(0,e)):0>c&&(c=a.length);for(e=0;a.charAt(e)===Ec;e++);if(e===(g=a.length))d=[0],c=1;else{for(g--;a.charAt(g)===Ec;)g--;c-=e;d=[];for(f=0;e<=g;e++,f++)d[f]=+a.charAt(e)}c>Wd&&(d=d.splice(0,Wd-1),b=c-1,c=1);return{d:d,e:b,i:c}}function dh(a,b,d,c){var e=a.d,f=e.length-a.i;b=z(b)?Math.min(Math.max(d,f),c):+b;d=b+a.i;c=e[d];if(0d-1){for(c=0;c>d;c--)e.unshift(0),a.i++;e.unshift(1);a.i++}else e[d-1]++;for(;fk;)h.unshift(0),k++;0=b.lgSize&&k.unshift(h.splice(-b.lgSize,h.length).join(""));h.length>b.gSize;)k.unshift(h.splice(-b.gSize,h.length).join(""));h.length&&k.unshift(h.join(""));h=k.join(d);f.length&&(h+=c+f.join(""));e&&(h+="e+"+e)}return 0>a&&!g?b.negPre+h+b.negSuf:b.posPre+h+b.posSuf}function Ob(a,b,d,c){var e="";if(0>a||c&&0>=a)c?a=-a+1:(a=-a,e="-");for(a=""+a;a.length-d)f+=d;0===f&&-12===d&&(f=12);return Ob(f,b,c,e)}}function kb(a,b,d){return function(c,e){var f=c["get"+a](),g=ub((d?"STANDALONE":"")+(b?"SHORT":"")+a);return e[g][f]}}function Xd(a){var b=(new Date(a,0,1)).getDay();return new Date(a,0,(4>=b?5:12)-b)}function Yd(a){return function(b){var d=Xd(b.getFullYear());b=+new Date(b.getFullYear(),b.getMonth(),b.getDate()+(4-b.getDay()))-+d;b=1+Math.round(b/6048E5);return Ob(b,a)}}function Fc(a,b){return 0>= +a.getFullYear()?b.ERAS[0]:b.ERAS[1]}function Rd(a){function b(a){var b;if(b=a.match(d)){a=new Date(0);var f=0,g=0,k=b[8]?a.setUTCFullYear:a.setFullYear,h=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=fa(b[9]+b[10]),g=fa(b[9]+b[11]));k.call(a,fa(b[1]),fa(b[2])-1,fa(b[3]));f=fa(b[4]||0)-f;g=fa(b[5]||0)-g;k=fa(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));h.call(a,f,g,k,b)}return a}var d=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c, +d,f){var g="",k=[],h,l;d=d||"mediumDate";d=a.DATETIME_FORMATS[d]||d;A(c)&&(c=eh.test(c)?fa(c):b(c));W(c)&&(c=new Date(c));if(!ha(c)||!isFinite(c.getTime()))return c;for(;d;)(l=fh.exec(d))?(k=db(k,l,1),d=k.pop()):(k.push(d),d=null);var m=c.getTimezoneOffset();f&&(m=ec(f,m),c=fc(c,f,!0));r(k,function(b){h=gh[b];g+=h?h(c,a.DATETIME_FORMATS,m):"''"===b?"'":b.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function Yg(){return function(a,b){z(b)&&(b=2);return eb(a,b)}}function Zg(){return function(a, +b,d){b=Infinity===Math.abs(Number(b))?Number(b):fa(b);if(X(b))return a;W(a)&&(a=a.toString());if(!ya(a))return a;d=!d||isNaN(d)?0:fa(d);d=0>d?Math.max(0,a.length+d):d;return 0<=b?Gc(a,d,d+b):0===d?Gc(a,b,a.length):Gc(a,Math.max(0,d+b),d)}}function Gc(a,b,d){return A(a)?a.slice(b,d):Ha.call(a,b,d)}function Td(a){function b(b){return b.map(function(b){var c=1,d=Ta;if(B(b))d=b;else if(A(b)){if("+"===b.charAt(0)||"-"===b.charAt(0))c="-"===b.charAt(0)?-1:1,b=b.substring(1);if(""!==b&&(d=a(b),d.constant))var e= +d(),d=function(a){return a[e]}}return{get:d,descending:c}})}function d(a){switch(typeof a){case "number":case "boolean":case "string":return!0;default:return!1}}function c(a,b){var c=0,d=a.type,h=b.type;if(d===h){var h=a.value,l=b.value;"string"===d?(h=h.toLowerCase(),l=l.toLowerCase()):"object"===d&&(D(h)&&(h=a.index),D(l)&&(l=b.index));h!==l&&(c=hb||37<=b&&40>=b||m(a,this,this.value)});if(e.hasEvent("paste"))b.on("paste cut drop",m)}b.on("change",l);if(ce[g]&&c.$$hasNativeValidators&&g===d.type)b.on("keydown wheel mousedown",function(a){if(!h){var b=this.validity, +c=b.badInput,d=b.typeMismatch;h=f.defer(function(){h=null;b.badInput===c&&b.typeMismatch===d||l(a)})}});c.$render=function(){var a=c.$isEmpty(c.$viewValue)?"":c.$viewValue;b.val()!==a&&b.val(a)}}function Qb(a,b){return function(d,c){var e,f;if(ha(d))return d;if(A(d)){'"'===d.charAt(0)&&'"'===d.charAt(d.length-1)&&(d=d.substring(1,d.length-1));if(hh.test(d))return new Date(d);a.lastIndex=0;if(e=a.exec(d))return e.shift(),f=c?{yyyy:c.getFullYear(),MM:c.getMonth()+1,dd:c.getDate(),HH:c.getHours(),mm:c.getMinutes(), +ss:c.getSeconds(),sss:c.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},r(e,function(a,c){cf.yyyy&&e.setFullYear(f.yyyy),e}return NaN}}function nb(a,b,d,c){return function(e,f,g,k,h,l,m,p){function n(a){return a&&!(a.getTime&&a.getTime()!==a.getTime())}function s(a){return w(a)&&!ha(a)?r(a)||void 0:a}function r(a,b){var c=k.$options.getOption("timezone");v&&v!==c&&(b=Sc(b,ec(v)));var e=d(a, +b);!isNaN(e)&&c&&(e=fc(e,c));return e}Ic(e,f,g,k,a);Sa(e,f,g,k,h,l);var t="time"===a||"datetimelocal"===a,q,v;k.$parsers.push(function(c){if(k.$isEmpty(c))return null;if(b.test(c))return r(c,q);k.$$parserName=a});k.$formatters.push(function(a){if(a&&!ha(a))throw ob("datefmt",a);if(n(a)){q=a;var b=k.$options.getOption("timezone");b&&(v=b,q=fc(q,b,!0));var d=c;t&&A(k.$options.getOption("timeSecondsFormat"))&&(d=c.replace("ss.sss",k.$options.getOption("timeSecondsFormat")).replace(/:$/,""));a=m("date")(a, +d,b);t&&k.$options.getOption("timeStripZeroSeconds")&&(a=a.replace(/(?::00)?(?:\.000)?$/,""));return a}v=q=null;return""});if(w(g.min)||g.ngMin){var x=g.min||p(g.ngMin)(e),B=s(x);k.$validators.min=function(a){return!n(a)||z(B)||d(a)>=B};g.$observe("min",function(a){a!==x&&(B=s(a),x=a,k.$validate())})}if(w(g.max)||g.ngMax){var y=g.max||p(g.ngMax)(e),J=s(y);k.$validators.max=function(a){return!n(a)||z(J)||d(a)<=J};g.$observe("max",function(a){a!==y&&(J=s(a),y=a,k.$validate())})}}}function Ic(a,b,d, +c,e){(c.$$hasNativeValidators=D(b[0].validity))&&c.$parsers.push(function(a){var d=b.prop("validity")||{};if(d.badInput||d.typeMismatch)c.$$parserName=e;else return a})}function de(a){a.$parsers.push(function(b){if(a.$isEmpty(b))return null;if(ih.test(b))return parseFloat(b);a.$$parserName="number"});a.$formatters.push(function(b){if(!a.$isEmpty(b)){if(!W(b))throw ob("numfmt",b);b=b.toString()}return b})}function na(a){w(a)&&!W(a)&&(a=parseFloat(a));return X(a)?void 0:a}function Jc(a){var b=a.toString(), +d=b.indexOf(".");return-1===d?-1a&&(a=/e-(\d+)$/.exec(b))?Number(a[1]):0:b.length-d-1}function ee(a,b,d){a=Number(a);var c=(a|0)!==a,e=(b|0)!==b,f=(d|0)!==d;if(c||e||f){var g=c?Jc(a):0,k=e?Jc(b):0,h=f?Jc(d):0,g=Math.max(g,k,h),g=Math.pow(10,g);a*=g;b*=g;d*=g;c&&(a=Math.round(a));e&&(b=Math.round(b));f&&(d=Math.round(d))}return 0===(a-b)%d}function fe(a,b,d,c,e){if(w(c)){a=a(c);if(!a.constant)throw ob("constexpr",d,c);return a(b)}return e}function Kc(a,b){function d(a,b){if(!a||!a.length)return[]; +if(!b||!b.length)return a;var c=[],d=0;a:for(;d(?:<\/\1>|)$/,mc=/<|&#?\w+;/,mg=/<([\w:-]+)/,ng=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,oa={option:[1,'"],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"", +"
"],_default:[0,"",""]};oa.optgroup=oa.option;oa.tbody=oa.tfoot=oa.colgroup=oa.caption=oa.thead;oa.th=oa.td;var ug=C.Node.prototype.contains||function(a){return!!(this.compareDocumentPosition(a)&16)},Wa=Y.prototype={ready:fd,toString:function(){var a=[];r(this,function(b){a.push(""+b)});return"["+a.join(", ")+"]"},eq:function(a){return 0<=a?x(this[a]):x(this[this.length+a])},length:0,push:kh,sort:[].sort,splice:[].splice},Gb={};r("multiple selected checked disabled readOnly required open".split(" "), +function(a){Gb[K(a)]=a});var md={};r("input select option textarea button form details".split(" "),function(a){md[a]=!0});var td={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"};r({data:rc,removeData:qc,hasData:function(a){for(var b in Ka[a.ng339])return!0;return!1},cleanData:function(a){for(var b=0,d=a.length;b/,xg=/^[^(]*\(\s*([^)]*)\)/m,nh=/,/,oh=/^\s*(_?)(\S+?)\1\s*$/,vg=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,Ba=F("$injector"); +fb.$$annotate=function(a,b,d){var c;if("function"===typeof a){if(!(c=a.$inject)){c=[];if(a.length){if(b)throw A(d)&&d||(d=a.name||yg(a)),Ba("strictdi",d);b=od(a);r(b[1].split(nh),function(a){a.replace(oh,function(a,b,d){c.push(d)})})}a.$inject=c}}else H(a)?(b=a.length-1,sb(a[b],"fn"),c=a.slice(0,b)):sb(a,"fn",!0);return c};var je=F("$animate"),zf=function(){this.$get=E},Af=function(){var a=new Hb,b=[];this.$get=["$$AnimateRunner","$rootScope",function(d,c){function e(a,b,c){var d=!1;b&&(b=A(b)?b.split(" "): +H(b)?b:[],r(b,function(b){b&&(d=!0,a[b]=c)}));return d}function f(){r(b,function(b){var c=a.get(b);if(c){var d=zg(b.attr("class")),e="",f="";r(c,function(a,b){a!==!!d[b]&&(a?e+=(e.length?" ":"")+b:f+=(f.length?" ":"")+b)});r(b,function(a){e&&Db(a,e);f&&Cb(a,f)});a.delete(b)}});b.length=0}return{enabled:E,on:E,off:E,pin:E,push:function(g,k,h,l){l&&l();h=h||{};h.from&&g.css(h.from);h.to&&g.css(h.to);if(h.addClass||h.removeClass)if(k=h.addClass,l=h.removeClass,h=a.get(g)||{},k=e(h,k,!0),l=e(h,l,!1), +k||l)a.set(g,h),b.push(g),1===b.length&&c.$$postDigest(f);g=new d;g.complete();return g}}}]},xf=["$provide",function(a){var b=this,d=null,c=null;this.$$registeredAnimations=Object.create(null);this.register=function(c,d){if(c&&"."!==c.charAt(0))throw je("notcsel",c);var g=c+"-animation";b.$$registeredAnimations[c.substr(1)]=g;a.factory(g,d)};this.customFilter=function(a){1===arguments.length&&(c=B(a)?a:null);return c};this.classNameFilter=function(a){if(1===arguments.length&&(d=a instanceof RegExp? +a:null)&&/[(\s|\/)]ng-animate[(\s|\/)]/.test(d.toString()))throw d=null,je("nongcls","ng-animate");return d};this.$get=["$$animateQueue",function(a){function b(a,c,d){if(d){var e;a:{for(e=0;e <= >= && || ! = |".split(" "),function(a){Ub[a]=!0});var rh={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},Nb=function(a){this.options=a};Nb.prototype={constructor:Nb, +lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index=a&&"string"===typeof a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdentifierStart:function(a){return this.options.isIdentifierStart? +this.options.isIdentifierStart(a,this.codePointAt(a)):this.isValidIdentifierStart(a)},isValidIdentifierStart:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isIdentifierContinue:function(a){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(a,this.codePointAt(a)):this.isValidIdentifierContinue(a)},isValidIdentifierContinue:function(a,b){return this.isValidIdentifierStart(a,b)||this.isNumber(a)},codePointAt:function(a){return 1===a.length?a.charCodeAt(0): +(a.charCodeAt(0)<<10)+a.charCodeAt(1)-56613888},peekMultichar:function(){var a=this.text.charAt(this.index),b=this.peek();if(!b)return a;var d=a.charCodeAt(0),c=b.charCodeAt(0);return 55296<=d&&56319>=d&&56320<=c&&57343>=c?a+b:a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,b,d){d=d||this.index;b=w(b)?"s "+b+"-"+this.index+" ["+this.text.substring(b,d)+"]":" "+d;throw Ya("lexerr",a,b,this.text);},readNumber:function(){for(var a="",b=this.index;this.index< +this.text.length;){var d=K(this.text.charAt(this.index));if("."===d||this.isNumber(d))a+=d;else{var c=this.peek();if("e"===d&&this.isExpOperator(c))a+=d;else if(this.isExpOperator(d)&&c&&this.isNumber(c)&&"e"===a.charAt(a.length-1))a+=d;else if(!this.isExpOperator(d)||c&&this.isNumber(c)||"e"!==a.charAt(a.length-1))break;else this.throwError("Invalid exponent")}this.index++}this.tokens.push({index:b,text:a,constant:!0,value:Number(a)})},readIdent:function(){var a=this.index;for(this.index+=this.peekMultichar().length;this.index< +this.text.length;){var b=this.peekMultichar();if(!this.isIdentifierContinue(b))break;this.index+=b.length}this.tokens.push({index:a,text:this.text.slice(a,this.index),identifier:!0})},readString:function(a){var b=this.index;this.index++;for(var d="",c=a,e=!1;this.index","<=",">=");)a={type:q.BinaryExpression,operator:b.text,left:a,right:this.additive()};return a},additive:function(){for(var a=this.multiplicative(),b;b=this.expect("+","-");)a={type:q.BinaryExpression, +operator:b.text,left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var a=this.unary(),b;b=this.expect("*","/","%");)a={type:q.BinaryExpression,operator:b.text,left:a,right:this.unary()};return a},unary:function(){var a;return(a=this.expect("+","-","!"))?{type:q.UnaryExpression,operator:a.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var a;this.expect("(")?(a=this.filterChain(),this.consume(")")):this.expect("[")?a=this.arrayDeclaration():this.expect("{")? +a=this.object():this.selfReferential.hasOwnProperty(this.peek().text)?a=Ia(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?a={type:q.Literal,value:this.options.literals[this.consume().text]}:this.peek().identifier?a=this.identifier():this.peek().constant?a=this.constant():this.throwError("not a primary expression",this.peek());for(var b;b=this.expect("(","[",".");)"("===b.text?(a={type:q.CallExpression,callee:a,arguments:this.parseArguments()},this.consume(")")): +"["===b.text?(a={type:q.MemberExpression,object:a,property:this.expression(),computed:!0},this.consume("]")):"."===b.text?a={type:q.MemberExpression,object:a,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return a},filter:function(a){a=[a];for(var b={type:q.CallExpression,callee:this.identifier(),arguments:a,filter:!0};this.expect(":");)a.push(this.expression());return b},parseArguments:function(){var a=[];if(")"!==this.peekToken().text){do a.push(this.filterChain());while(this.expect(",")) +}return a},identifier:function(){var a=this.consume();a.identifier||this.throwError("is not a valid identifier",a);return{type:q.Identifier,name:a.text}},constant:function(){return{type:q.Literal,value:this.consume().value}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(","))}this.consume("]");return{type:q.ArrayExpression,elements:a}},object:function(){var a=[],b;if("}"!==this.peekToken().text){do{if(this.peek("}"))break; +b={type:q.Property,kind:"init"};this.peek().constant?(b.key=this.constant(),b.computed=!1,this.consume(":"),b.value=this.expression()):this.peek().identifier?(b.key=this.identifier(),b.computed=!1,this.peek(":")?(this.consume(":"),b.value=this.expression()):b.value=b.key):this.peek("[")?(this.consume("["),b.key=this.expression(),this.consume("]"),b.computed=!0,this.consume(":"),b.value=this.expression()):this.throwError("invalid key",this.peek());a.push(b)}while(this.expect(","))}this.consume("}"); +return{type:q.ObjectExpression,properties:a}},throwError:function(a,b){throw Ya("syntax",b.text,a,b.index+1,this.text,this.text.substring(b.index));},consume:function(a){if(0===this.tokens.length)throw Ya("ueoe",this.text);var b=this.expect(a);b||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return b},peekToken:function(){if(0===this.tokens.length)throw Ya("ueoe",this.text);return this.tokens[0]},peek:function(a,b,d,c){return this.peekAhead(0,a,b,d,c)},peekAhead:function(a,b,d,c, +e){if(this.tokens.length>a){a=this.tokens[a];var f=a.text;if(f===b||f===d||f===c||f===e||!(b||d||c||e))return a}return!1},expect:function(a,b,d,c){return(a=this.peek(a,b,d,c))?(this.tokens.shift(),a):!1},selfReferential:{"this":{type:q.ThisExpression},$locals:{type:q.LocalsExpression}}};var Fd=2;Jd.prototype={compile:function(a){var b=this;this.state={nextId:0,filters:{},fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]};Z(a,b.$filter);var d="",c;this.stage="assign";if(c=Id(a))this.state.computing= +"assign",d=this.nextId(),this.recurse(c,d),this.return_(d),d="fn.assign="+this.generateFunction("assign","s,v,l");c=Gd(a.body);b.stage="inputs";r(c,function(a,c){var d="fn"+c;b.state[d]={vars:[],body:[],own:{}};b.state.computing=d;var k=b.nextId();b.recurse(a,k);b.return_(k);b.state.inputs.push({name:d,isPure:a.isPure});a.watchId=c});this.state.computing="fn";this.stage="main";this.recurse(a);a='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+ +d+this.watchFns()+"return fn;";a=(new Function("$filter","getStringValue","ifDefined","plus",a))(this.$filter,Og,Pg,Ed);this.state=this.stage=void 0;return a},USE:"use",STRICT:"strict",watchFns:function(){var a=[],b=this.state.inputs,d=this;r(b,function(b){a.push("var "+b.name+"="+d.generateFunction(b.name,"s"));b.isPure&&a.push(b.name,".isPure="+JSON.stringify(b.isPure)+";")});b.length&&a.push("fn.inputs=["+b.map(function(a){return a.name}).join(",")+"];");return a.join("")},generateFunction:function(a, +b){return"function("+b+"){"+this.varsPrefix(a)+this.body(a)+"};"},filterPrefix:function(){var a=[],b=this;r(this.state.filters,function(d,c){a.push(d+"=$filter("+b.escape(c)+")")});return a.length?"var "+a.join(",")+";":""},varsPrefix:function(a){return this.state[a].vars.length?"var "+this.state[a].vars.join(",")+";":""},body:function(a){return this.state[a].body.join("")},recurse:function(a,b,d,c,e,f){var g,k,h=this,l,m,p;c=c||E;if(!f&&w(a.watchId))b=b||this.nextId(),this.if_("i",this.lazyAssign(b, +this.computedMember("i",a.watchId)),this.lazyRecurse(a,b,d,c,e,!0));else switch(a.type){case q.Program:r(a.body,function(b,c){h.recurse(b.expression,void 0,void 0,function(a){k=a});c!==a.body.length-1?h.current().body.push(k,";"):h.return_(k)});break;case q.Literal:m=this.escape(a.value);this.assign(b,m);c(b||m);break;case q.UnaryExpression:this.recurse(a.argument,void 0,void 0,function(a){k=a});m=a.operator+"("+this.ifDefined(k,0)+")";this.assign(b,m);c(m);break;case q.BinaryExpression:this.recurse(a.left, +void 0,void 0,function(a){g=a});this.recurse(a.right,void 0,void 0,function(a){k=a});m="+"===a.operator?this.plus(g,k):"-"===a.operator?this.ifDefined(g,0)+a.operator+this.ifDefined(k,0):"("+g+")"+a.operator+"("+k+")";this.assign(b,m);c(m);break;case q.LogicalExpression:b=b||this.nextId();h.recurse(a.left,b);h.if_("&&"===a.operator?b:h.not(b),h.lazyRecurse(a.right,b));c(b);break;case q.ConditionalExpression:b=b||this.nextId();h.recurse(a.test,b);h.if_(b,h.lazyRecurse(a.alternate,b),h.lazyRecurse(a.consequent, +b));c(b);break;case q.Identifier:b=b||this.nextId();d&&(d.context="inputs"===h.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",a.name)+"?l:s"),d.computed=!1,d.name=a.name);h.if_("inputs"===h.stage||h.not(h.getHasOwnProperty("l",a.name)),function(){h.if_("inputs"===h.stage||"s",function(){e&&1!==e&&h.if_(h.isNull(h.nonComputedMember("s",a.name)),h.lazyAssign(h.nonComputedMember("s",a.name),"{}"));h.assign(b,h.nonComputedMember("s",a.name))})},b&&h.lazyAssign(b,h.nonComputedMember("l", +a.name)));c(b);break;case q.MemberExpression:g=d&&(d.context=this.nextId())||this.nextId();b=b||this.nextId();h.recurse(a.object,g,void 0,function(){h.if_(h.notNull(g),function(){a.computed?(k=h.nextId(),h.recurse(a.property,k),h.getStringValue(k),e&&1!==e&&h.if_(h.not(h.computedMember(g,k)),h.lazyAssign(h.computedMember(g,k),"{}")),m=h.computedMember(g,k),h.assign(b,m),d&&(d.computed=!0,d.name=k)):(e&&1!==e&&h.if_(h.isNull(h.nonComputedMember(g,a.property.name)),h.lazyAssign(h.nonComputedMember(g, +a.property.name),"{}")),m=h.nonComputedMember(g,a.property.name),h.assign(b,m),d&&(d.computed=!1,d.name=a.property.name))},function(){h.assign(b,"undefined")});c(b)},!!e);break;case q.CallExpression:b=b||this.nextId();a.filter?(k=h.filter(a.callee.name),l=[],r(a.arguments,function(a){var b=h.nextId();h.recurse(a,b);l.push(b)}),m=k+"("+l.join(",")+")",h.assign(b,m),c(b)):(k=h.nextId(),g={},l=[],h.recurse(a.callee,k,g,function(){h.if_(h.notNull(k),function(){r(a.arguments,function(b){h.recurse(b,a.constant? +void 0:h.nextId(),void 0,function(a){l.push(a)})});m=g.name?h.member(g.context,g.name,g.computed)+"("+l.join(",")+")":k+"("+l.join(",")+")";h.assign(b,m)},function(){h.assign(b,"undefined")});c(b)}));break;case q.AssignmentExpression:k=this.nextId();g={};this.recurse(a.left,void 0,g,function(){h.if_(h.notNull(g.context),function(){h.recurse(a.right,k);m=h.member(g.context,g.name,g.computed)+a.operator+k;h.assign(b,m);c(b||m)})},1);break;case q.ArrayExpression:l=[];r(a.elements,function(b){h.recurse(b, +a.constant?void 0:h.nextId(),void 0,function(a){l.push(a)})});m="["+l.join(",")+"]";this.assign(b,m);c(b||m);break;case q.ObjectExpression:l=[];p=!1;r(a.properties,function(a){a.computed&&(p=!0)});p?(b=b||this.nextId(),this.assign(b,"{}"),r(a.properties,function(a){a.computed?(g=h.nextId(),h.recurse(a.key,g)):g=a.key.type===q.Identifier?a.key.name:""+a.key.value;k=h.nextId();h.recurse(a.value,k);h.assign(h.member(b,g,a.computed),k)})):(r(a.properties,function(b){h.recurse(b.value,a.constant?void 0: +h.nextId(),void 0,function(a){l.push(h.escape(b.key.type===q.Identifier?b.key.name:""+b.key.value)+":"+a)})}),m="{"+l.join(",")+"}",this.assign(b,m));c(b||m);break;case q.ThisExpression:this.assign(b,"s");c(b||"s");break;case q.LocalsExpression:this.assign(b,"l");c(b||"l");break;case q.NGValueParameter:this.assign(b,"v"),c(b||"v")}},getHasOwnProperty:function(a,b){var d=a+"."+b,c=this.current().own;c.hasOwnProperty(d)||(c[d]=this.nextId(!1,a+"&&("+this.escape(b)+" in "+a+")"));return c[d]},assign:function(a, +b){if(a)return this.current().body.push(a,"=",b,";"),a},filter:function(a){this.state.filters.hasOwnProperty(a)||(this.state.filters[a]=this.nextId(!0));return this.state.filters[a]},ifDefined:function(a,b){return"ifDefined("+a+","+this.escape(b)+")"},plus:function(a,b){return"plus("+a+","+b+")"},return_:function(a){this.current().body.push("return ",a,";")},if_:function(a,b,d){if(!0===a)b();else{var c=this.current().body;c.push("if(",a,"){");b();c.push("}");d&&(c.push("else{"),d(),c.push("}"))}}, +not:function(a){return"!("+a+")"},isNull:function(a){return a+"==null"},notNull:function(a){return a+"!=null"},nonComputedMember:function(a,b){var d=/[^$_a-zA-Z0-9]/g;return/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(b)?a+"."+b:a+'["'+b.replace(d,this.stringEscapeFn)+'"]'},computedMember:function(a,b){return a+"["+b+"]"},member:function(a,b,d){return d?this.computedMember(a,b):this.nonComputedMember(a,b)},getStringValue:function(a){this.assign(a,"getStringValue("+a+")")},lazyRecurse:function(a,b,d,c,e,f){var g= +this;return function(){g.recurse(a,b,d,c,e,f)}},lazyAssign:function(a,b){var d=this;return function(){d.assign(a,b)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)},escape:function(a){if(A(a))return"'"+a.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(W(a))return a.toString();if(!0===a)return"true";if(!1===a)return"false";if(null===a)return"null";if("undefined"===typeof a)return"undefined";throw Ya("esc");},nextId:function(a, +b){var d="v"+this.state.nextId++;a||this.current().vars.push(d+(b?"="+b:""));return d},current:function(){return this.state[this.state.computing]}};Kd.prototype={compile:function(a){var b=this;Z(a,b.$filter);var d,c;if(d=Id(a))c=this.recurse(d);d=Gd(a.body);var e;d&&(e=[],r(d,function(a,c){var d=b.recurse(a);d.isPure=a.isPure;a.input=d;e.push(d);a.watchId=c}));var f=[];r(a.body,function(a){f.push(b.recurse(a.expression))});a=0===a.body.length?E:1===a.body.length?f[0]:function(a,b){var c;r(f,function(d){c= +d(a,b)});return c};c&&(a.assign=function(a,b,d){return c(a,d,b)});e&&(a.inputs=e);return a},recurse:function(a,b,d){var c,e,f=this,g;if(a.input)return this.inputs(a.input,a.watchId);switch(a.type){case q.Literal:return this.value(a.value,b);case q.UnaryExpression:return e=this.recurse(a.argument),this["unary"+a.operator](e,b);case q.BinaryExpression:return c=this.recurse(a.left),e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case q.LogicalExpression:return c=this.recurse(a.left),e=this.recurse(a.right), +this["binary"+a.operator](c,e,b);case q.ConditionalExpression:return this["ternary?:"](this.recurse(a.test),this.recurse(a.alternate),this.recurse(a.consequent),b);case q.Identifier:return f.identifier(a.name,b,d);case q.MemberExpression:return c=this.recurse(a.object,!1,!!d),a.computed||(e=a.property.name),a.computed&&(e=this.recurse(a.property)),a.computed?this.computedMember(c,e,b,d):this.nonComputedMember(c,e,b,d);case q.CallExpression:return g=[],r(a.arguments,function(a){g.push(f.recurse(a))}), +a.filter&&(e=this.$filter(a.callee.name)),a.filter||(e=this.recurse(a.callee,!0)),a.filter?function(a,c,d,f){for(var p=[],n=0;n":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>b(c,e,f,g);return d?{value:c}:c}},"binary<=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)<=b(c,e,f,g);return d?{value:c}:c}},"binary>=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>=b(c,e,f,g);return d?{value:c}:c}},"binary&&":function(a,b,d){return function(c,e,f,g){c= +a(c,e,f,g)&&b(c,e,f,g);return d?{value:c}:c}},"binary||":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)||b(c,e,f,g);return d?{value:c}:c}},"ternary?:":function(a,b,d,c){return function(e,f,g,k){e=a(e,f,g,k)?b(e,f,g,k):d(e,f,g,k);return c?{value:e}:e}},value:function(a,b){return function(){return b?{context:void 0,name:void 0,value:a}:a}},identifier:function(a,b,d){return function(c,e,f,g){c=e&&a in e?e:c;d&&1!==d&&c&&null==c[a]&&(c[a]={});e=c?c[a]:void 0;return b?{context:c,name:a,value:e}: +e}},computedMember:function(a,b,d,c){return function(e,f,g,k){var h=a(e,f,g,k),l,m;null!=h&&(l=b(e,f,g,k),l+="",c&&1!==c&&h&&!h[l]&&(h[l]={}),m=h[l]);return d?{context:h,name:l,value:m}:m}},nonComputedMember:function(a,b,d,c){return function(e,f,g,k){e=a(e,f,g,k);c&&1!==c&&e&&null==e[b]&&(e[b]={});f=null!=e?e[b]:void 0;return d?{context:e,name:b,value:f}:f}},inputs:function(a,b){return function(d,c,e,f){return f?f[b]:a(d,c,e)}}};Mb.prototype={constructor:Mb,parse:function(a){a=this.getAst(a);var b= +this.astCompiler.compile(a.ast),d=a.ast;b.literal=0===d.body.length||1===d.body.length&&(d.body[0].expression.type===q.Literal||d.body[0].expression.type===q.ArrayExpression||d.body[0].expression.type===q.ObjectExpression);b.constant=a.ast.constant;b.oneTime=a.oneTime;return b},getAst:function(a){var b=!1;a=a.trim();":"===a.charAt(0)&&":"===a.charAt(1)&&(b=!0,a=a.substring(2));return{ast:this.ast.ast(a),oneTime:b}}};var Ea=F("$sce"),V={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl", +JS:"js"},Cc=/_([a-z])/g,Ug=F("$templateRequest"),Vg=F("$timeout"),aa=C.document.createElement("a"),Od=ga(C.location.href),Na;aa.href="http://[::1]";var Wg="[::1]"===aa.hostname;Pd.$inject=["$document"];dd.$inject=["$provide"];var Wd=22,Vd=".",Ec="0";Qd.$inject=["$locale"];Sd.$inject=["$locale"];var gh={yyyy:ea("FullYear",4,0,!1,!0),yy:ea("FullYear",2,0,!0,!0),y:ea("FullYear",1,0,!1,!0),MMMM:kb("Month"),MMM:kb("Month",!0),MM:ea("Month",2,1),M:ea("Month",1,1),LLLL:kb("Month",!1,!0),dd:ea("Date",2), +d:ea("Date",1),HH:ea("Hours",2),H:ea("Hours",1),hh:ea("Hours",2,-12),h:ea("Hours",1,-12),mm:ea("Minutes",2),m:ea("Minutes",1),ss:ea("Seconds",2),s:ea("Seconds",1),sss:ea("Milliseconds",3),EEEE:kb("Day"),EEE:kb("Day",!0),a:function(a,b){return 12>a.getHours()?b.AMPMS[0]:b.AMPMS[1]},Z:function(a,b,d){a=-1*d;return a=(0<=a?"+":"")+(Ob(Math[0=a.getFullYear()?b.ERANAMES[0]:b.ERANAMES[1]}}, +fh=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))([\s\S]*)/,eh=/^-?\d+$/;Rd.$inject=["$locale"];var $g=ia(K),ah=ia(ub);Td.$inject=["$parse"];var Me=ia({restrict:"E",compile:function(a,b){if(!b.href&&!b.xlinkHref)return function(a,b){if("a"===b[0].nodeName.toLowerCase()){var e="[object SVGAnimatedString]"===la.call(b.prop("href"))?"xlink:href":"href";b.on("click",function(a){b.attr(e)||a.preventDefault()})}}}}),vb={};r(Gb,function(a,b){function d(a,d,e){a.$watch(e[c], +function(a){e.$set(b,!!a)})}if("multiple"!==a){var c=wa("ng-"+b),e=d;"checked"===a&&(e=function(a,b,e){e.ngModel!==e[c]&&d(a,b,e)});vb[c]=function(){return{restrict:"A",priority:100,link:e}}}});r(td,function(a,b){vb[b]=function(){return{priority:100,link:function(a,c,e){if("ngPattern"===b&&"/"===e.ngPattern.charAt(0)&&(c=e.ngPattern.match(ie))){e.$set("ngPattern",new RegExp(c[1],c[2]));return}a.$watch(e[b],function(a){e.$set(b,a)})}}}});r(["src","srcset","href"],function(a){var b=wa("ng-"+a);vb[b]= +["$sce",function(d){return{priority:99,link:function(c,e,f){var g=a,k=a;"href"===a&&"[object SVGAnimatedString]"===la.call(e.prop("href"))&&(k="xlinkHref",f.$attr[k]="xlink:href",g=null);f.$set(b,d.getTrustedMediaUrl(f[b]));f.$observe(b,function(b){b?(f.$set(k,b),Ca&&g&&e.prop(g,f[k])):"href"===a&&f.$set(k,null)})}}}]});var lb={$addControl:E,$getControls:ia([]),$$renameControl:function(a,b){a.$name=b},$removeControl:E,$setValidity:E,$setDirty:E,$setPristine:E,$setSubmitted:E,$$setSubmitted:E};Pb.$inject= +["$element","$attrs","$scope","$animate","$interpolate"];Pb.prototype={$rollbackViewValue:function(){r(this.$$controls,function(a){a.$rollbackViewValue()})},$commitViewValue:function(){r(this.$$controls,function(a){a.$commitViewValue()})},$addControl:function(a){Ja(a.$name,"input");this.$$controls.push(a);a.$name&&(this[a.$name]=a);a.$$parentForm=this},$getControls:function(){return ja(this.$$controls)},$$renameControl:function(a,b){var d=a.$name;this[d]===a&&delete this[d];this[b]=a;a.$name=b},$removeControl:function(a){a.$name&& +this[a.$name]===a&&delete this[a.$name];r(this.$pending,function(b,d){this.$setValidity(d,null,a)},this);r(this.$error,function(b,d){this.$setValidity(d,null,a)},this);r(this.$$success,function(b,d){this.$setValidity(d,null,a)},this);cb(this.$$controls,a);a.$$parentForm=lb},$setDirty:function(){this.$$animate.removeClass(this.$$element,Za);this.$$animate.addClass(this.$$element,Vb);this.$dirty=!0;this.$pristine=!1;this.$$parentForm.$setDirty()},$setPristine:function(){this.$$animate.setClass(this.$$element, +Za,Vb+" ng-submitted");this.$dirty=!1;this.$pristine=!0;this.$submitted=!1;r(this.$$controls,function(a){a.$setPristine()})},$setUntouched:function(){r(this.$$controls,function(a){a.$setUntouched()})},$setSubmitted:function(){for(var a=this;a.$$parentForm&&a.$$parentForm!==lb;)a=a.$$parentForm;a.$$setSubmitted()},$$setSubmitted:function(){this.$$animate.addClass(this.$$element,"ng-submitted");this.$submitted=!0;r(this.$$controls,function(a){a.$$setSubmitted&&a.$$setSubmitted()})}};ae({clazz:Pb,set:function(a, +b,d){var c=a[b];c?-1===c.indexOf(d)&&c.push(d):a[b]=[d]},unset:function(a,b,d){var c=a[b];c&&(cb(c,d),0===c.length&&delete a[b])}});var ke=function(a){return["$timeout","$parse",function(b,d){function c(a){return""===a?d('this[""]').assign:d(a).assign||E}return{name:"form",restrict:a?"EAC":"E",require:["form","^^?form"],controller:Pb,compile:function(d,f){d.addClass(Za).addClass(mb);var g=f.name?"name":a&&f.ngForm?"ngForm":!1;return{pre:function(a,d,e,f){var p=f[0];if(!("action"in e)){var n=function(b){a.$apply(function(){p.$commitViewValue(); +p.$setSubmitted()});b.preventDefault()};d[0].addEventListener("submit",n);d.on("$destroy",function(){b(function(){d[0].removeEventListener("submit",n)},0,!1)})}(f[1]||p.$$parentForm).$addControl(p);var s=g?c(p.$name):E;g&&(s(a,p),e.$observe(g,function(b){p.$name!==b&&(s(a,void 0),p.$$parentForm.$$renameControl(p,b),s=c(p.$name),s(a,p))}));d.on("$destroy",function(){p.$$parentForm.$removeControl(p);s(a,void 0);S(p,lb)})}}}}}]},Ne=ke(),Ze=ke(!0),hh=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/, +sh=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,th=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,ih=/^\s*(-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,le=/^(\d{4,})-(\d{2})-(\d{2})$/,me=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Mc=/^(\d{4,})-W(\d\d)$/,ne=/^(\d{4,})-(\d\d)$/, +oe=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,ce=T();r(["date","datetime-local","month","time","week"],function(a){ce[a]=!0});var pe={text:function(a,b,d,c,e,f){Sa(a,b,d,c,e,f);Hc(c)},date:nb("date",le,Qb(le,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":nb("datetimelocal",me,Qb(me,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:nb("time",oe,Qb(oe,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:nb("week",Mc,function(a,b){if(ha(a))return a;if(A(a)){Mc.lastIndex=0;var d=Mc.exec(a); +if(d){var c=+d[1],e=+d[2],f=d=0,g=0,k=0,h=Xd(c),e=7*(e-1);b&&(d=b.getHours(),f=b.getMinutes(),g=b.getSeconds(),k=b.getMilliseconds());return new Date(c,0,h.getDate()+e,d,f,g,k)}}return NaN},"yyyy-Www"),month:nb("month",ne,Qb(ne,["yyyy","MM"]),"yyyy-MM"),number:function(a,b,d,c,e,f,g,k){Ic(a,b,d,c,"number");de(c);Sa(a,b,d,c,e,f);var h;if(w(d.min)||d.ngMin){var l=d.min||k(d.ngMin)(a);h=na(l);c.$validators.min=function(a,b){return c.$isEmpty(b)||z(h)||b>=h};d.$observe("min",function(a){a!==l&&(h=na(a), +l=a,c.$validate())})}if(w(d.max)||d.ngMax){var m=d.max||k(d.ngMax)(a),p=na(m);c.$validators.max=function(a,b){return c.$isEmpty(b)||z(p)||b<=p};d.$observe("max",function(a){a!==m&&(p=na(a),m=a,c.$validate())})}if(w(d.step)||d.ngStep){var n=d.step||k(d.ngStep)(a),s=na(n);c.$validators.step=function(a,b){return c.$isEmpty(b)||z(s)||ee(b,h||0,s)};d.$observe("step",function(a){a!==n&&(s=na(a),n=a,c.$validate())})}},url:function(a,b,d,c,e,f){Sa(a,b,d,c,e,f);Hc(c);c.$validators.url=function(a,b){var d= +a||b;return c.$isEmpty(d)||sh.test(d)}},email:function(a,b,d,c,e,f){Sa(a,b,d,c,e,f);Hc(c);c.$validators.email=function(a,b){var d=a||b;return c.$isEmpty(d)||th.test(d)}},radio:function(a,b,d,c){var e=!d.ngTrim||"false"!==U(d.ngTrim);z(d.name)&&b.attr("name",++pb);b.on("change",function(a){var g;b[0].checked&&(g=d.value,e&&(g=U(g)),c.$setViewValue(g,a&&a.type))});c.$render=function(){var a=d.value;e&&(a=U(a));b[0].checked=a===c.$viewValue};d.$observe("value",c.$render)},range:function(a,b,d,c,e,f){function g(a, +c){b.attr(a,d[a]);var e=d[a];d.$observe(a,function(a){a!==e&&(e=a,c(a))})}function k(a){p=na(a);X(c.$modelValue)||(m?(a=b.val(),p>a&&(a=p,b.val(a)),c.$setViewValue(a)):c.$validate())}function h(a){n=na(a);X(c.$modelValue)||(m?(a=b.val(),n=p},g("min",k));e&&(n=na(d.max),c.$validators.max=m?function(){return!0}:function(a,b){return c.$isEmpty(b)||z(n)||b<=n},g("max",h));f&&(s=na(d.step),c.$validators.step=m?function(){return!r.stepMismatch}: +function(a,b){return c.$isEmpty(b)||z(s)||ee(b,p||0,s)},g("step",l))},checkbox:function(a,b,d,c,e,f,g,k){var h=fe(k,a,"ngTrueValue",d.ngTrueValue,!0),l=fe(k,a,"ngFalseValue",d.ngFalseValue,!1);b.on("change",function(a){c.$setViewValue(b[0].checked,a&&a.type)});c.$render=function(){b[0].checked=c.$viewValue};c.$isEmpty=function(a){return!1===a};c.$formatters.push(function(a){return va(a,h)});c.$parsers.push(function(a){return a?h:l})},hidden:E,button:E,submit:E,reset:E,file:E},Yc=["$browser","$sniffer", +"$filter","$parse",function(a,b,d,c){return{restrict:"E",require:["?ngModel"],link:{pre:function(e,f,g,k){k[0]&&(pe[K(g.type)]||pe.text)(e,f,g,k[0],b,a,d,c)}}}}],vf=function(){var a={configurable:!0,enumerable:!1,get:function(){return this.getAttribute("value")||""},set:function(a){this.setAttribute("value",a)}};return{restrict:"E",priority:200,compile:function(b,d){if("hidden"===K(d.type))return{pre:function(b,d,f,g){b=d[0];b.parentNode&&b.parentNode.insertBefore(b,b.nextSibling);Object.defineProperty&& +Object.defineProperty(b,"value",a)}}}}},uh=/^(true|false|\d+)$/,sf=function(){function a(a,d,c){var e=w(c)?c:9===Ca?"":null;a.prop("value",e);d.$set("value",c)}return{restrict:"A",priority:100,compile:function(b,d){return uh.test(d.ngValue)?function(b,d,f){b=b.$eval(f.ngValue);a(d,f,b)}:function(b,d,f){b.$watch(f.ngValue,function(b){a(d,f,b)})}}}},Re=["$compile",function(a){return{restrict:"AC",compile:function(b){a.$$addBindingClass(b);return function(b,c,e){a.$$addBindingInfo(c,e.ngBind);c=c[0]; +b.$watch(e.ngBind,function(a){c.textContent=ic(a)})}}}}],Te=["$interpolate","$compile",function(a,b){return{compile:function(d){b.$$addBindingClass(d);return function(c,d,f){c=a(d.attr(f.$attr.ngBindTemplate));b.$$addBindingInfo(d,c.expressions);d=d[0];f.$observe("ngBindTemplate",function(a){d.textContent=z(a)?"":a})}}}}],Se=["$sce","$parse","$compile",function(a,b,d){return{restrict:"A",compile:function(c,e){var f=b(e.ngBindHtml),g=b(e.ngBindHtml,function(b){return a.valueOf(b)});d.$$addBindingClass(c); +return function(b,c,e){d.$$addBindingInfo(c,e.ngBindHtml);b.$watch(g,function(){var d=f(b);c.html(a.getTrustedHtml(d)||"")})}}}}],rf=ia({restrict:"A",require:"ngModel",link:function(a,b,d,c){c.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),Ue=Kc("",!0),We=Kc("Odd",0),Ve=Kc("Even",1),Xe=Ra({compile:function(a,b){b.$set("ngCloak",void 0);a.removeClass("ng-cloak")}}),Ye=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],cd={},vh={blur:!0,focus:!0};r("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "), +function(a){var b=wa("ng-"+a);cd[b]=["$parse","$rootScope","$exceptionHandler",function(d,c,e){return qd(d,c,e,b,a,vh[a])}]});var af=["$animate","$compile",function(a,b){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(d,c,e,f,g){var k,h,l;d.$watch(e.ngIf,function(d){d?h||g(function(d,f){h=f;d[d.length++]=b.$$createComment("end ngIf",e.ngIf);k={clone:d};a.enter(d,c.parent(),c)}):(l&&(l.remove(),l=null),h&&(h.$destroy(),h=null),k&&(l=tb(k.clone), +a.leave(l).done(function(a){!1!==a&&(l=null)}),k=null))})}}}],bf=["$templateRequest","$anchorScroll","$animate",function(a,b,d){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ca.noop,compile:function(c,e){var f=e.ngInclude||e.src,g=e.onload||"",k=e.autoscroll;return function(c,e,m,p,n){var r=0,q,t,x,v=function(){t&&(t.remove(),t=null);q&&(q.$destroy(),q=null);x&&(d.leave(x).done(function(a){!1!==a&&(t=null)}),t=x,x=null)};c.$watch(f,function(f){var m=function(a){!1=== +a||!w(k)||k&&!c.$eval(k)||b()},t=++r;f?(a(f,!0).then(function(a){if(!c.$$destroyed&&t===r){var b=c.$new();p.template=a;a=n(b,function(a){v();d.enter(a,null,e).done(m)});q=b;x=a;q.$emit("$includeContentLoaded",f);c.$eval(g)}},function(){c.$$destroyed||t!==r||(v(),c.$emit("$includeContentError",f))}),c.$emit("$includeContentRequested",f)):(v(),p.template=null)})}}}}],uf=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(b,d,c,e){la.call(d[0]).match(/SVG/)? +(d.empty(),a(ed(e.template,C.document).childNodes)(b,function(a){d.append(a)},{futureParentElement:d})):(d.html(e.template),a(d.contents())(b))}}}],cf=Ra({priority:450,compile:function(){return{pre:function(a,b,d){a.$eval(d.ngInit)}}}}),qf=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,b,d,c){var e=d.ngList||", ",f="false"!==d.ngTrim,g=f?U(e):e;c.$parsers.push(function(a){if(!z(a)){var b=[];a&&r(a.split(g),function(a){a&&b.push(f?U(a):a)});return b}});c.$formatters.push(function(a){if(H(a))return a.join(e)}); +c.$isEmpty=function(a){return!a||!a.length}}}},mb="ng-valid",$d="ng-invalid",Za="ng-pristine",Vb="ng-dirty",ob=F("ngModel");Rb.$inject="$scope $exceptionHandler $attrs $element $parse $animate $timeout $q $interpolate".split(" ");Rb.prototype={$$initGetterSetters:function(){if(this.$options.getOption("getterSetter")){var a=this.$$parse(this.$$attr.ngModel+"()"),b=this.$$parse(this.$$attr.ngModel+"($$$p)");this.$$ngModelGet=function(b){var c=this.$$parsedNgModel(b);B(c)&&(c=a(b));return c};this.$$ngModelSet= +function(a,c){B(this.$$parsedNgModel(a))?b(a,{$$$p:c}):this.$$parsedNgModelAssign(a,c)}}else if(!this.$$parsedNgModel.assign)throw ob("nonassign",this.$$attr.ngModel,za(this.$$element));},$render:E,$isEmpty:function(a){return z(a)||""===a||null===a||a!==a},$$updateEmptyClasses:function(a){this.$isEmpty(a)?(this.$$animate.removeClass(this.$$element,"ng-not-empty"),this.$$animate.addClass(this.$$element,"ng-empty")):(this.$$animate.removeClass(this.$$element,"ng-empty"),this.$$animate.addClass(this.$$element, +"ng-not-empty"))},$setPristine:function(){this.$dirty=!1;this.$pristine=!0;this.$$animate.removeClass(this.$$element,Vb);this.$$animate.addClass(this.$$element,Za)},$setDirty:function(){this.$dirty=!0;this.$pristine=!1;this.$$animate.removeClass(this.$$element,Za);this.$$animate.addClass(this.$$element,Vb);this.$$parentForm.$setDirty()},$setUntouched:function(){this.$touched=!1;this.$untouched=!0;this.$$animate.setClass(this.$$element,"ng-untouched","ng-touched")},$setTouched:function(){this.$touched= +!0;this.$untouched=!1;this.$$animate.setClass(this.$$element,"ng-touched","ng-untouched")},$rollbackViewValue:function(){this.$$timeout.cancel(this.$$pendingDebounce);this.$viewValue=this.$$lastCommittedViewValue;this.$render()},$validate:function(){if(!X(this.$modelValue)){var a=this.$$lastCommittedViewValue,b=this.$$rawModelValue,d=this.$valid,c=this.$modelValue,e=this.$options.getOption("allowInvalid"),f=this;this.$$runValidators(b,a,function(a){e||d===a||(f.$modelValue=a?b:void 0,f.$modelValue!== +c&&f.$$writeModelToScope())})}},$$runValidators:function(a,b,d){function c(){var c=!0;r(h.$validators,function(d,e){var g=Boolean(d(a,b));c=c&&g;f(e,g)});return c?!0:(r(h.$asyncValidators,function(a,b){f(b,null)}),!1)}function e(){var c=[],d=!0;r(h.$asyncValidators,function(e,g){var h=e(a,b);if(!h||!B(h.then))throw ob("nopromise",h);f(g,void 0);c.push(h.then(function(){f(g,!0)},function(){d=!1;f(g,!1)}))});c.length?h.$$q.all(c).then(function(){g(d)},E):g(!0)}function f(a,b){k===h.$$currentValidationRunId&& +h.$setValidity(a,b)}function g(a){k===h.$$currentValidationRunId&&d(a)}this.$$currentValidationRunId++;var k=this.$$currentValidationRunId,h=this;(function(){var a=h.$$parserName;if(z(h.$$parserValid))f(a,null);else return h.$$parserValid||(r(h.$validators,function(a,b){f(b,null)}),r(h.$asyncValidators,function(a,b){f(b,null)})),f(a,h.$$parserValid),h.$$parserValid;return!0})()?c()?e():g(!1):g(!1)},$commitViewValue:function(){var a=this.$viewValue;this.$$timeout.cancel(this.$$pendingDebounce);if(this.$$lastCommittedViewValue!== +a||""===a&&this.$$hasNativeValidators)this.$$updateEmptyClasses(a),this.$$lastCommittedViewValue=a,this.$pristine&&this.$setDirty(),this.$$parseAndValidate()},$$parseAndValidate:function(){var a=this.$$lastCommittedViewValue,b=this;this.$$parserValid=z(a)?void 0:!0;this.$setValidity(this.$$parserName,null);this.$$parserName="parse";if(this.$$parserValid)for(var d=0;dg||e.$isEmpty(b)||b.length<=g}}}}}],ad=["$parse",function(a){return{restrict:"A",require:"?ngModel",link:function(b,d,c,e){if(e){var f=c.minlength||a(c.ngMinlength)(b),g=Tb(f)||-1;c.$observe("minlength",function(a){f!== +a&&(g=Tb(a)||-1,f=a,e.$validate())});e.$validators.minlength=function(a,b){return e.$isEmpty(b)||b.length>=g}}}}}];C.angular.bootstrap?C.console&&console.log("WARNING: Tried to load AngularJS more than once."):(Fe(),Je(ca),ca.module("ngLocale",[],["$provide",function(a){function b(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1}a.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"], +ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),STANDALONEMONTH:"January February March April May June July August September October November December".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a", +"short":"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-\u00a4",negSuf:"",posPre:"\u00a4",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(a,c){var e=a|0,f=c;void 0===f&&(f=Math.min(b(a),3));Math.pow(10,f);return 1==e&&0==f?"one":"other"}})}]),x(function(){Ae(C.document, +Uc)}))})(window);!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend(''); +//# sourceMappingURL=angular.min.js.map diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/angular.min.js.map b/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/angular.min.js.map new file mode 100644 index 00000000..970cb91d --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/angular.min.js.map @@ -0,0 +1,8 @@ +{ +"version":3, +"file":"angular.min.js", +"lineCount":349, +"mappings":"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", +"sources":["angular.js"], +"names":["window","errorHandlingConfig","config","isObject","isDefined","objectMaxDepth","minErrConfig","isValidObjectMaxDepth","NaN","urlErrorParamsEnabled","isBoolean","maxDepth","isNumber","minErr","isArrayLike","obj","isWindow","isArray","isString","jqLite","length","Object","item","forEach","iterator","context","key","isFunction","hasOwnProperty","call","isPrimitive","isBlankObject","forEachSorted","keys","sort","i","reverseParams","iteratorFn","value","nextUid","uid","baseExtend","dst","objs","deep","h","$$hashKey","ii","j","jj","src","isDate","Date","valueOf","isRegExp","RegExp","nodeName","cloneNode","isElement","clone","extend","slice","arguments","merge","toInt","str","parseInt","inherit","parent","extra","create","noop","identity","$","valueFn","valueRef","hasCustomToString","toString","isUndefined","getPrototypeOf","arr","Array","isError","tag","Error","isScope","$evalAsync","$watch","isTypedArray","TYPED_ARRAY_REGEXP","test","node","prop","attr","find","makeMap","items","split","nodeName_","element","lowercase","arrayRemove","array","index","indexOf","splice","copy","source","destination","copyRecurse","push","copyElement","stackSource","stackDest","ngMinErr","needsRecurse","copyType","undefined","constructor","buffer","byteOffset","copied","ArrayBuffer","byteLength","set","Uint8Array","re","match","lastIndex","type","simpleCompare","a","b","equals","o1","o2","t1","t2","getTime","keySet","createMap","charAt","concat","array1","array2","bind","self","fn","curryArgs","startIndex","apply","toJsonReplacer","val","document","toJson","pretty","JSON","stringify","fromJson","json","parse","timezoneToOffset","timezone","fallback","replace","ALL_COLONS","requestedTimezoneOffset","isNumberNaN","addDateMinutes","date","minutes","setMinutes","getMinutes","convertTimezoneToLocal","reverse","dateTimezoneOffset","getTimezoneOffset","timezoneOffset","startingTag","empty","elemHtml","append","html","nodeType","NODE_TYPE_TEXT","e","tryDecodeURIComponent","decodeURIComponent","parseKeyValue","keyValue","splitPoint","substring","toKeyValue","parts","arrayValue","encodeUriQuery","join","encodeUriSegment","pctEncodeSpaces","encodeURIComponent","getNgAttribute","ngAttr","ngAttrPrefixes","getAttribute","angularInit","bootstrap","appElement","module","prefix","name","hasAttribute","candidate","querySelector","isAutoBootstrapAllowed","strictDi","console","error","modules","defaultConfig","doBootstrap","injector","unshift","$provide","debugInfoEnabled","$compileProvider","createInjector","invoke","bootstrapApply","scope","compile","$apply","data","NG_ENABLE_DEBUG_INFO","NG_DEFER_BOOTSTRAP","angular","resumeBootstrap","angular.resumeBootstrap","extraModules","resumeDeferredBootstrap","reloadWithDebugInfo","location","reload","getTestability","rootElement","get","snake_case","separator","SNAKE_CASE_REGEXP","letter","pos","toLowerCase","bindJQuery","originalCleanData","bindJQueryFired","jqName","jq","jQuery","on","JQLitePrototype","isolateScope","controller","inheritedData","JQLite","cleanData","jqLite.cleanData","elems","events","elem","_data","$destroy","triggerHandler","assertArg","arg","reason","assertArgFn","acceptArrayAnnotation","assertNotHasOwnProperty","getter","path","bindFnToScope","lastInstance","len","getBlockNodes","nodes","endNode","blockNodes","nextSibling","setupModuleLoader","ensure","factory","$injectorMinErr","$$minErr","requires","configFn","info","invokeLater","provider","method","insertMethod","queue","invokeQueue","moduleInstance","invokeLaterAndSetModuleName","recipeName","factoryFunction","$$moduleName","configBlocks","runBlocks","_invokeQueue","_configBlocks","_runBlocks","service","constant","decorator","animation","filter","directive","component","run","block","shallowCopy","serializeObject","seen","publishExternalAPI","version","$$counter","csp","uppercase","angularModule","ngModule","$$sanitizeUri","$$SanitizeUriProvider","$CompileProvider","htmlAnchorDirective","input","inputDirective","textarea","form","formDirective","script","scriptDirective","select","selectDirective","option","optionDirective","ngBind","ngBindDirective","ngBindHtml","ngBindHtmlDirective","ngBindTemplate","ngBindTemplateDirective","ngClass","ngClassDirective","ngClassEven","ngClassEvenDirective","ngClassOdd","ngClassOddDirective","ngCloak","ngCloakDirective","ngController","ngControllerDirective","ngForm","ngFormDirective","ngHide","ngHideDirective","ngIf","ngIfDirective","ngInclude","ngIncludeDirective","ngInit","ngInitDirective","ngNonBindable","ngNonBindableDirective","ngPluralize","ngPluralizeDirective","ngRef","ngRefDirective","ngRepeat","ngRepeatDirective","ngShow","ngShowDirective","ngStyle","ngStyleDirective","ngSwitch","ngSwitchDirective","ngSwitchWhen","ngSwitchWhenDirective","ngSwitchDefault","ngSwitchDefaultDirective","ngOptions","ngOptionsDirective","ngTransclude","ngTranscludeDirective","ngModel","ngModelDirective","ngList","ngListDirective","ngChange","ngChangeDirective","pattern","patternDirective","ngPattern","required","requiredDirective","ngRequired","minlength","minlengthDirective","ngMinlength","maxlength","maxlengthDirective","ngMaxlength","ngValue","ngValueDirective","ngModelOptions","ngModelOptionsDirective","ngIncludeFillContentDirective","hiddenInputBrowserCacheDirective","ngAttributeAliasDirectives","ngEventDirectives","$anchorScroll","$AnchorScrollProvider","$animate","$AnimateProvider","$animateCss","$CoreAnimateCssProvider","$$animateJs","$$CoreAnimateJsProvider","$$animateQueue","$$CoreAnimateQueueProvider","$$AnimateRunner","$$AnimateRunnerFactoryProvider","$$animateAsyncRun","$$AnimateAsyncRunFactoryProvider","$browser","$BrowserProvider","$cacheFactory","$CacheFactoryProvider","$controller","$ControllerProvider","$document","$DocumentProvider","$$isDocumentHidden","$$IsDocumentHiddenProvider","$exceptionHandler","$ExceptionHandlerProvider","$filter","$FilterProvider","$$forceReflow","$$ForceReflowProvider","$interpolate","$InterpolateProvider","$interval","$IntervalProvider","$$intervalFactory","$$IntervalFactoryProvider","$http","$HttpProvider","$httpParamSerializer","$HttpParamSerializerProvider","$httpParamSerializerJQLike","$HttpParamSerializerJQLikeProvider","$httpBackend","$HttpBackendProvider","$xhrFactory","$xhrFactoryProvider","$jsonpCallbacks","$jsonpCallbacksProvider","$location","$LocationProvider","$log","$LogProvider","$parse","$ParseProvider","$rootScope","$RootScopeProvider","$q","$QProvider","$$q","$$QProvider","$sce","$SceProvider","$sceDelegate","$SceDelegateProvider","$sniffer","$SnifferProvider","$$taskTrackerFactory","$$TaskTrackerFactoryProvider","$templateCache","$TemplateCacheProvider","$templateRequest","$TemplateRequestProvider","$$testability","$$TestabilityProvider","$timeout","$TimeoutProvider","$window","$WindowProvider","$$rAF","$$RAFProvider","$$jqLite","$$jqLiteProvider","$$Map","$$MapProvider","$$cookieReader","$$CookieReaderProvider","angularVersion","fnCamelCaseReplace","all","toUpperCase","kebabToCamel","DASH_LOWERCASE_REGEXP","jqLiteAcceptsData","NODE_TYPE_ELEMENT","NODE_TYPE_DOCUMENT","jqLiteBuildFragment","tmp","fragment","createDocumentFragment","HTML_REGEXP","appendChild","createElement","TAG_NAME_REGEXP","exec","wrap","wrapMap","_default","innerHTML","XHTML_TAG_REGEXP","lastChild","childNodes","firstChild","textContent","createTextNode","argIsString","trim","jqLiteMinErr","parsed","SINGLE_TAG_REGEXP","jqLiteAddNodes","jqLiteReady","jqLiteClone","jqLiteDealoc","onlyDescendants","querySelectorAll","isEmptyObject","removeIfEmptyData","expandoId","ng339","expandoStore","jqCache","jqLiteOff","unsupported","jqLiteExpandoStore","handle","removeHandler","listenerFns","removeEventListener","MOUSE_EVENT_MAP","jqLiteRemoveData","createIfNecessary","jqId","jqLiteData","isSimpleSetter","isSimpleGetter","massGetter","jqLiteHasClass","selector","jqLiteRemoveClass","cssClasses","setAttribute","existingClasses","newClasses","cssClass","jqLiteAddClass","root","elements","jqLiteController","jqLiteInheritedData","documentElement","names","parentNode","NODE_TYPE_DOCUMENT_FRAGMENT","host","jqLiteEmpty","removeChild","jqLiteRemove","keepData","jqLiteDocumentLoaded","action","win","readyState","setTimeout","trigger","addEventListener","getBooleanAttrName","booleanAttr","BOOLEAN_ATTR","BOOLEAN_ELEMENTS","createEventHandler","eventHandler","event","isDefaultPrevented","event.isDefaultPrevented","defaultPrevented","eventFns","eventFnsLength","immediatePropagationStopped","originalStopImmediatePropagation","stopImmediatePropagation","event.stopImmediatePropagation","stopPropagation","isImmediatePropagationStopped","event.isImmediatePropagationStopped","handlerWrapper","specialHandlerWrapper","defaultHandlerWrapper","handler","specialMouseHandlerWrapper","target","related","relatedTarget","jqLiteContains","$get","this.$get","hasClass","classes","addClass","removeClass","hashKey","nextUidFn","objType","NgMapShim","_keys","_values","_lastKey","_lastIndex","extractArgs","fnText","Function","prototype","STRIP_COMMENTS","ARROW_ARG","FN_ARGS","anonFn","args","modulesToLoad","supportObject","delegate","provider_","providerInjector","instantiate","providerCache","providerSuffix","enforceReturnValue","enforcedReturnValue","result","instanceInjector","factoryFn","enforce","loadModules","moduleFn","runInvokeQueue","invokeArgs","loadedModules","message","stack","createInternalInjector","cache","getService","serviceName","caller","INSTANTIATING","err","shift","injectionArgs","locals","$inject","$$annotate","msie","func","$$ngIsClass","Type","ctor","annotate","has","NgMap","$injector","instanceCache","decorFn","origProvider","orig$get","origProvider.$get","origInstance","$delegate","protoInstanceInjector","loadNewModules","instanceInjector.loadNewModules","mods","autoScrollingEnabled","disableAutoScrolling","this.disableAutoScrolling","getFirstAnchor","list","some","scrollTo","scrollIntoView","offset","scroll","yOffset","getComputedStyle","style","position","getBoundingClientRect","bottom","elemTop","top","scrollBy","hash","elm","getElementById","getElementsByName","autoScrollWatch","autoScrollWatchAction","newVal","oldVal","mergeClasses","splitClasses","klass","prepareAnimateOptions","options","Browser","cacheStateAndFireUrlChange","pendingLocation","fireStateOrUrlChange","cacheState","cachedState","getCurrentState","lastCachedState","lastHistoryState","prevLastHistoryState","lastBrowserUrl","url","urlChangeListeners","listener","history","clearTimeout","pendingDeferIds","taskTracker","isMock","$$completeOutstandingRequest","completeTask","$$incOutstandingRequestCount","incTaskCount","notifyWhenNoOutstandingRequests","notifyWhenNoPendingTasks","href","baseElement","state","self.url","sameState","urlResolve","sameBase","stripHash","substr","self.state","urlChangeInit","onUrlChange","self.onUrlChange","callback","$$applicationDestroyed","self.$$applicationDestroyed","off","$$checkUrlChange","baseHref","self.baseHref","defer","self.defer","delay","taskType","timeoutId","DEFAULT_TASK_TYPE","cancel","self.defer.cancel","deferId","cacheFactory","cacheId","refresh","entry","freshEnd","staleEnd","n","link","p","nextEntry","prevEntry","caches","size","stats","id","capacity","Number","MAX_VALUE","lruHash","put","lruEntry","remove","removeAll","destroy","cacheFactory.info","cacheFactory.get","$$sanitizeUriProvider","parseIsolateBindings","directiveName","isController","LOCAL_REGEXP","bindings","definition","scopeName","bindingCache","$compileMinErr","mode","collection","optional","attrName","assertValidDirectiveName","getDirectiveRequire","require","REQUIRE_PREFIX_REGEXP","hasDirectives","COMMENT_DIRECTIVE_REGEXP","CLASS_DIRECTIVE_REGEXP","ALL_OR_NOTHING_ATTRS","EVENT_HANDLER_ATTR_REGEXP","this.directive","registerDirective","directiveFactory","Suffix","directives","priority","restrict","this.component","registerComponent","makeInjectable","tElement","tAttrs","$element","$attrs","template","templateUrl","ddo","controllerAs","identifierForController","transclude","bindToController","aHrefSanitizationWhitelist","this.aHrefSanitizationWhitelist","regexp","imgSrcSanitizationWhitelist","this.imgSrcSanitizationWhitelist","this.debugInfoEnabled","enabled","strictComponentBindingsEnabled","this.strictComponentBindingsEnabled","TTL","onChangesTtl","this.onChangesTtl","commentDirectivesEnabledConfig","commentDirectivesEnabled","this.commentDirectivesEnabled","cssClassDirectivesEnabledConfig","cssClassDirectivesEnabled","this.cssClassDirectivesEnabled","PROP_CONTEXTS","addPropertySecurityContext","this.addPropertySecurityContext","elementName","propertyName","ctx","registerNativePropertyContexts","registerContext","values","v","SCE_CONTEXTS","HTML","CSS","URL","MEDIA_URL","RESOURCE_URL","flushOnChangesQueue","onChangesQueue","sanitizeSrcset","invokeType","trimmedSrcset","srcPattern","rawUris","nbrUrisWith2parts","Math","floor","innerIdx","getTrustedMediaUrl","lastTuple","Attributes","attributesToCopy","l","$attr","$$element","setSpecialAttr","specialAttrHolder","attributes","attribute","removeNamedItem","setNamedItem","safeAddClass","className","$compileNodes","transcludeFn","maxPriority","ignoreDirective","previousCompileContext","compositeLinkFn","compileNodes","$$addScopeClass","namespace","publicLinkFn","cloneConnectFn","needsNewScope","$parent","$new","parentBoundTranscludeFn","transcludeControllers","futureParentElement","$$boundTransclude","$linkNode","wrapTemplate","controllerName","instance","$$addScopeInfo","nodeList","$rootElement","childLinkFn","childScope","childBoundTranscludeFn","stableNodeList","nodeLinkFnFound","linkFns","idx","nodeLinkFn","transcludeOnThisElement","createBoundTranscludeFn","templateOnThisElement","notLiveList","attrs","linkFnFound","mergeConsecutiveTextNodes","collectDirectives","applyDirectivesToNode","terminal","sibling","nodeValue","previousBoundTranscludeFn","boundTranscludeFn","transcludedScope","cloneFn","controllers","containingScope","$$transcluded","boundSlots","$$slots","slotName","attrsMap","addDirective","directiveNormalize","nName","ngPrefixMatch","nAttrs","attrStartName","attrEndName","isNgAttr","isNgProp","isNgEvent","multiElementMatch","NG_PREFIX_BINDING","PREFIX_REGEXP","MULTI_ELEMENT_DIR_RE","directiveIsMultiElement","addPropertyDirective","createEventDirective","addAttrInterpolateDirective","animVal","addTextInterpolateDirective","NODE_TYPE_COMMENT","collectCommentDirectives","byPriority","groupScan","attrStart","attrEnd","depth","groupElementsLinkFnWrapper","linkFn","groupedElementsLink","compilationGenerator","eager","compiled","lazyCompilation","compileNode","templateAttrs","jqCollection","originalReplaceDirective","preLinkFns","postLinkFns","addLinkFns","pre","post","newIsolateScopeDirective","$$isolateScope","cloneAndAnnotateFn","linkNode","controllersBoundTransclude","cloneAttachFn","hasElementTranscludeDirective","elementControllers","slotTranscludeFn","scopeToChild","controllerScope","newScopeDirective","isSlotFilled","transcludeFn.isSlotFilled","controllerDirectives","setupControllers","templateDirective","$$originalDirective","$$isolateBindings","scopeBindingInfo","initializeDirectiveBindings","removeWatches","$on","controllerDirective","$$bindings","bindingInfo","getControllers","controllerInstance","$onChanges","initialChanges","$onInit","$doCheck","$onDestroy","callOnDestroyHook","invokeLinkFn","$postLink","terminalPriority","nonTlbTranscludeDirective","hasTranscludeDirective","hasTemplate","$compileNode","$template","childTranscludeFn","didScanForMultipleTransclusion","mightHaveMultipleTransclusionError","directiveValue","$$start","$$end","assertNoDuplicate","$$tlb","scanningIndex","candidateDirective","$$createComment","replaceWith","replaceDirective","slots","slotMap","filledSlots","elementSelector","contents","filled","slotCompileNodes","$$newScope","denormalizeTemplate","removeComments","templateNamespace","newTemplateAttrs","templateDirectives","unprocessedDirectives","markDirectiveScope","mergeTemplateAttributes","compileTemplateUrl","max","inheritType","dataName","property","controllerKey","$scope","$transclude","newScope","tDirectives","startAttrName","endAttrName","multiElement","srcAttr","dstAttr","$set","linkQueue","afterTemplateNodeLinkFn","afterTemplateChildLinkFn","beforeTemplateCompileNode","origAsyncDirective","derivedSyncDirective","then","content","tempTemplateAttrs","beforeTemplateLinkNode","linkRootElement","$$destroyed","oldClasses","catch","delayedNodeLinkFn","ignoreChildLinkFn","diff","what","previousDirective","wrapModuleNameIfDefined","moduleName","text","interpolateFn","textInterpolateCompileFn","templateNode","templateNodeParent","hasCompileParent","$$addBindingClass","textInterpolateLinkFn","$$addBindingInfo","expressions","interpolateFnWatchAction","wrapper","getTrustedAttrContext","attrNormalizedName","getTrustedPropContext","propNormalizedName","sanitizeSrcsetPropertyValue","propName","trustedContext","sanitizer","getTrusted","ngPropCompileFn","_","ngPropGetter","ngPropWatch","sceValueOf","ngPropPreLinkFn","applyPropValue","propValue","allOrNothing","mustHaveExpression","attrInterpolatePreLinkFn","$$observers","newValue","$$inter","$$scope","oldValue","$updateClass","elementsToRemove","newNode","firstElementToRemove","removeCount","j2","replaceChild","hasData","annotation","strictBindingsCheck","recordChanges","currentValue","previousValue","$$postDigest","changes","triggerOnChangesHook","SimpleChange","removeWatchCollection","initializeBinding","lastValue","parentGet","parentSet","compare","removeWatch","$observe","_UNINITIALIZED_VALUE","literal","assign","parentValueWatch","parentValue","$stateful","$watchCollection","isLiteral","initialValue","parentValueWatchAction","SIMPLE_ATTR_NAME","$normalize","$addClass","classVal","$removeClass","toAdd","tokenDifference","toRemove","writeAttr","booleanKey","aliasedKey","ALIASED_ATTR","observer","removeAttr","listeners","startSymbol","endSymbol","binding","isolated","noTemplate","compile.$$createComment","comment","createComment","previous","current","SPECIAL_CHARS_REGEXP","str1","str2","tokens1","tokens2","token","jqNodes","ident","CNTRL_REG","this.has","register","this.register","addIdentifier","identifier","expression","later","$controllerMinErr","controllerPrototype","$controllerInit","changeListener","hidden","doc","exception","cause","serializeValue","toISOString","ngParamSerializer","params","jQueryLikeParamSerializer","serialize","toSerialize","topLevel","defaultHttpResponseTransform","headers","tempData","JSON_PROTECTION_PREFIX","contentType","hasJsonContentType","APPLICATION_JSON","jsonStart","JSON_START","JSON_ENDS","$httpMinErr","parseHeaders","line","headerVal","headerKey","headersGetter","headersObj","transformData","status","fns","defaults","transformResponse","transformRequest","d","common","CONTENT_TYPE_APPLICATION_JSON","patch","xsrfCookieName","xsrfHeaderName","paramSerializer","jsonpCallbackParam","useApplyAsync","this.useApplyAsync","interceptorFactories","interceptors","xsrfWhitelistedOrigins","requestConfig","chainInterceptors","promise","thenFn","rejectFn","executeHeaderFns","headerContent","processedHeaders","headerFn","header","response","resp","reject","mergeHeaders","defHeaders","reqHeaders","defHeaderName","lowercaseDefHeaderName","reqHeaderName","requestInterceptors","responseInterceptors","resolve","reversedInterceptors","interceptor","request","requestError","responseError","serverRequest","reqData","withCredentials","sendReq","finally","completeOutstandingRequest","createApplyHandlers","eventHandlers","applyHandlers","callEventHandler","$applyAsync","$$phase","done","headersString","statusText","xhrStatus","resolveHttpPromise","resolvePromise","deferred","resolvePromiseWithResult","removePendingReq","pendingRequests","cachedResp","isJsonp","getTrustedResourceUrl","buildUrl","sanitizeJsonpCallbackParam","defaultCache","xsrfValue","urlIsAllowedOrigin","timeout","responseType","uploadEventHandlers","serializedParams","cbKey","interceptorFactory","urlIsAllowedOriginFactory","createShortMethods","createShortMethodsWithData","createXhr","XMLHttpRequest","createHttpBackend","$browserDefer","callbacks","rawDocument","jsonpReq","callbackPath","async","body","wasCalled","timeoutRequest","abortedByTimeout","jsonpDone","xhr","abort","completeRequest","createCallback","getResponse","removeCallback","open","setRequestHeader","onload","xhr.onload","responseText","protocol","getAllResponseHeaders","onerror","ontimeout","requestTimeout","onabort","requestAborted","upload","send","$$timeoutId","this.startSymbol","this.endSymbol","escape","ch","unescapeText","escapedStartRegexp","escapedEndRegexp","constantWatchDelegate","objectEquality","constantInterp","unwatch","constantInterpolateWatch","parseStringifyInterceptor","contextAllowsConcatenation","$interpolateMinErr","interr","unescapedText","exp","$$watchDelegate","endIndex","parseFns","textLength","expressionPositions","singleExpression","startSymbolLength","endSymbolLength","map","compute","throwNoconcat","interpolationFn","$watchGroup","interpolateFnWatcher","oldValues","currValue","$interpolate.startSymbol","$interpolate.endSymbol","intervals","clearIntervalFn","clearInterval","interval","setIntervalFn","tick","setInterval","interval.cancel","$intervalMinErr","$$intervalId","q","$$state","pur","intervalFactory","intervalFn","count","invokeApply","hasParams","iteration","skipApply","notify","parseAbsoluteUrl","absoluteUrl","locationObj","parsedUrl","$$protocol","$$host","hostname","$$port","port","DEFAULT_PORTS","parseAppUrl","html5Mode","DOUBLE_SLASH_REGEX","$locationMinErr","prefixed","segments","pathname","$$path","$$search","search","$$hash","startsWith","stripBaseUrl","base","LocationHtml5Url","appBase","appBaseNoFile","basePrefix","$$html5","$$parse","this.$$parse","pathUrl","$$compose","$$normalizeUrl","this.$$normalizeUrl","$$parseLinkUrl","this.$$parseLinkUrl","relHref","appUrl","prevAppUrl","rewrittenUrl","LocationHashbangUrl","hashPrefix","withoutBaseUrl","withoutHashUrl","windowsFilePathExp","firstPathSegmentMatch","LocationHashbangInHtml5Url","locationGetter","locationGetterSetter","preprocess","requireBase","rewriteLinks","this.hashPrefix","this.html5Mode","urlsEqual","setBrowserUrlWithFallback","oldUrl","oldState","afterLocationChange","$broadcast","absUrl","LocationMode","initialUrl","lastIndexOf","IGNORE_URI_REGEXP","ctrlKey","metaKey","shiftKey","which","button","absHref","preventDefault","initializing","newUrl","newState","$digest","$locationWatch","$$urlUpdatedByLocation","currentReplace","$$replace","urlOrStateChanged","debug","debugEnabled","this.debugEnabled","flag","formatError","formatStackTrace","sourceURL","consoleLog","logFn","log","navigator","userAgent","warn","getStringValue","ifDefined","plusFn","r","isPure","parentIsPure","AST","MemberExpression","computed","UnaryExpression","PURITY_ABSOLUTE","BinaryExpression","operator","CallExpression","PURITY_RELATIVE","findConstantAndWatchExpressions","ast","allConstants","argsToWatch","astIsPure","Program","expr","Literal","toWatch","argument","left","right","LogicalExpression","ConditionalExpression","alternate","consequent","Identifier","object","isStatelessFilter","callee","AssignmentExpression","ArrayExpression","ObjectExpression","properties","ThisExpression","LocalsExpression","getInputs","lastExpression","isAssignable","assignableAST","NGValueParameter","ASTCompiler","ASTInterpreter","Parser","lexer","astCompiler","getValueOf","objectValueOf","literals","identStart","identContinue","addLiteral","this.addLiteral","literalName","literalValue","setIdentifierFns","this.setIdentifierFns","identifierStart","identifierContinue","interceptorFn","parsedExpression","cacheKey","Lexer","$parseOptions","parser","addWatchDelegate","addInterceptor","expressionInputDirtyCheck","oldValueOfValue","compareObjectIdentity","inputsWatchDelegate","prettyPrintExpression","inputExpressions","inputs","lastResult","oldInputValueOf","expressionInputWatch","newInputValue","oldInputValueOfValues","oldInputValues","expressionInputsWatch","changed","oneTimeWatchDelegate","unwatchIfDone","isDone","oneTimeWatch","useInputs","isAllDefined","$$intercepted","$$interceptor","allDefined","constantWatch","oneTime","first","second","chainedInterceptor","$$pure","depurifier","s","noUnsafeEval","isIdentifierStart","isIdentifierContinue","$$getAst","getAst","errorOnUnhandledRejections","qFactory","this.errorOnUnhandledRejections","nextTick","exceptionHandler","Deferred","Promise","this.resolve","this.reject","rejectPromise","this.notify","progress","notifyPromise","processChecks","queueSize","checkQueue","toCheck","errorMessage","scheduleProcessQueue","pending","processScheduled","$$passToExceptionHandler","$$reject","$qMinErr","$$resolve","doResolve","doReject","doNotify","handleCallback","resolver","callbackOutput","when","errback","progressBack","$Q","resolveFn","TypeError","onFulfilled","onRejected","promises","counter","results","race","requestAnimationFrame","webkitRequestAnimationFrame","cancelAnimationFrame","webkitCancelAnimationFrame","webkitCancelRequestAnimationFrame","rafSupported","raf","timer","supported","createChildScopeClass","ChildScope","$$watchers","$$nextSibling","$$childHead","$$childTail","$$listeners","$$listenerCount","$$watchersCount","$id","$$ChildScope","$$suspended","$rootScopeMinErr","lastDirtyWatch","applyAsyncId","digestTtl","this.digestTtl","destroyChildScope","$event","currentScope","cleanUpScope","$$prevSibling","$root","Scope","beginPhase","phase","incrementWatchersCount","decrementListenerCount","initWatchVal","flushApplyAsync","applyAsyncQueue","scheduleApplyAsync","isolate","child","watchExp","watcher","last","eq","$$digestWatchIndex","deregisterWatch","watchExpressions","watchGroupAction","changeReactionScheduled","firstRun","newValues","deregisterFns","shouldCall","deregisterWatchGroup","unwatchFn","watchGroupSubAction","$watchCollectionInterceptor","_value","bothNaN","newItem","oldItem","internalArray","oldLength","changeDetected","newLength","internalObject","veryOldValue","trackVeryOldValue","changeDetector","initRun","$watchCollectionAction","watch","watchers","dirty","ttl","asyncQueue","watchLog","logIdx","asyncTask","asyncQueuePosition","msg","next","postDigestQueuePosition","postDigestQueue","$suspend","$isSuspended","$resume","eventName","this.$watchGroup","$eval","$applyAsyncExpression","namedListeners","indexOfListener","$emit","targetScope","listenerArgs","$$asyncQueue","$$postDigestQueue","$$applyAsyncQueue","sanitizeUri","uri","isMediaUrl","regex","normalizedVal","adjustMatcher","matcher","$sceMinErr","escapeForRegexp","adjustMatchers","matchers","adjustedMatchers","resourceUrlWhitelist","resourceUrlBlacklist","this.resourceUrlWhitelist","this.resourceUrlBlacklist","matchUrl","baseURI","baseUrlParsingNode","generateHolderType","Base","holderType","trustedValue","$$unwrapTrustedValue","this.$$unwrapTrustedValue","holderType.prototype.valueOf","holderType.prototype.toString","htmlSanitizer","trustedValueHolderBase","byType","JS","trustAs","Constructor","maybeTrusted","allowed","this.enabled","sce","isEnabled","sce.isEnabled","sce.getTrusted","parseAs","sce.parseAs","enumValue","lName","UNDERSCORE_LOWERCASE_REGEXP","eventSupport","hasHistoryPushState","nw","process","chrome","app","runtime","pushState","android","boxee","bodyStyle","transitions","animations","hasEvent","divElm","TaskTracker","getLastCallback","cbInfo","taskCallbacks","pop","cb","getLastCallbackForType","taskCounts","ALL_TASKS_TYPE","countForType","countForAll","getNextCallback","nextCb","httpOptions","this.httpOptions","handleRequestFn","tpl","ignoreRequestError","totalPendingRequests","transformer","handleError","$templateRequestMinErr","testability","testability.findBindings","opt_exactMatch","getElementsByClassName","matches","dataBinding","bindingName","testability.findModels","prefixes","attributeEquals","testability.getLocation","testability.setLocation","testability.whenStable","deferreds","timeout.cancel","$timeoutMinErr","urlParsingNode","ipv6InBrackets","whitelistedOriginUrls","parsedAllowedOriginUrls","originUrl","requestUrl","urlsAreSameOrigin","url1","url2","$$CookieReader","safeDecodeURIComponent","lastCookies","lastCookieString","cookieArray","cookie","currentCookieString","filters","suffix","currencyFilter","dateFilter","filterFilter","jsonFilter","limitToFilter","lowercaseFilter","numberFilter","orderByFilter","uppercaseFilter","comparator","anyPropertyKey","matchAgainstAnyProp","getTypeForFilter","expressionType","predicateFn","createPredicateFn","shouldMatchPrimitives","actual","expected","deepCompare","dontMatchWholeObject","actualType","expectedType","expectedVal","matchAnyProperty","actualVal","$locale","formats","NUMBER_FORMATS","amount","currencySymbol","fractionSize","CURRENCY_SYM","PATTERNS","maxFrac","currencySymbolRe","formatNumber","GROUP_SEP","DECIMAL_SEP","number","numStr","exponent","digits","numberOfIntegerDigits","zeros","ZERO_CHAR","MAX_DIGITS","roundNumber","parsedNumber","minFrac","fractionLen","min","roundAt","digit","k","carry","reduceRight","groupSep","decimalSep","isNaN","isInfinity","isFinite","isZero","abs","formattedText","integerLen","decimals","reduce","groups","lgSize","gSize","negPre","negSuf","posPre","posSuf","padNumber","num","negWrap","neg","dateGetter","dateStrGetter","shortForm","standAlone","getFirstThursdayOfYear","year","dayOfWeekOnFirst","getDay","weekGetter","firstThurs","getFullYear","thisThurs","getMonth","getDate","round","eraGetter","ERAS","jsonStringToDate","string","R_ISO8601_STR","tzHour","tzMin","dateSetter","setUTCFullYear","setFullYear","timeSetter","setUTCHours","setHours","m","ms","parseFloat","format","DATETIME_FORMATS","NUMBER_STRING","DATE_FORMATS_SPLIT","DATE_FORMATS","spacing","limit","begin","Infinity","sliceFn","end","processPredicates","sortPredicates","predicate","descending","defaultCompare","v1","v2","type1","type2","value1","value2","sortPredicate","reverseOrder","compareFn","predicates","compareValues","getComparisonObject","tieBreaker","predicateValues","doComparison","ngDirective","FormController","$$controls","$error","$$success","$pending","$name","$dirty","$valid","$pristine","$submitted","$invalid","$$parentForm","nullFormCtrl","$$animate","setupValidity","$$classCache","INVALID_CLASS","VALID_CLASS","addSetValidityMethod","cachedToggleClass","ctrl","switchValue","toggleValidationCss","validationErrorKey","isValid","unset","clazz","$setValidity","clazz.prototype.$setValidity","isObjectEmpty","PENDING_CLASS","combinedState","stringBasedInputType","$formatters","$isEmpty","baseInputType","composing","ev","ngTrim","$viewValue","$$hasNativeValidators","$setViewValue","deferListener","origValue","keyCode","PARTIAL_VALIDATION_TYPES","PARTIAL_VALIDATION_EVENTS","validity","origBadInput","badInput","origTypeMismatch","typeMismatch","$render","ctrl.$render","createDateParser","mapping","iso","previousDate","ISO_DATE_REGEXP","yyyy","MM","dd","HH","getHours","mm","ss","getSeconds","sss","getMilliseconds","part","createDateInputType","parseDate","dynamicDateInputType","isValidDate","parseObservedDateValue","parseDateAndConvertTimeZoneToLocal","$options","getOption","previousTimezone","parsedDate","badInputChecker","isTimeType","$parsers","$$parserName","ngModelMinErr","targetFormat","formatted","ngMin","minVal","parsedMinVal","$validators","ctrl.$validators.min","$validate","ngMax","maxVal","parsedMaxVal","ctrl.$validators.max","parserName","VALIDITY_STATE_PROPERTY","numberFormatterParser","NUMBER_REGEXP","parseNumberAttrVal","countDecimals","numString","decimalSymbolIndex","isValidForStep","viewValue","stepBase","step","isNonIntegerValue","isNonIntegerStepBase","isNonIntegerStep","valueDecimals","stepBaseDecimals","stepDecimals","decimalCount","multiplier","pow","parseConstantExpr","parseFn","classDirective","arrayDifference","toClassString","classValue","classString","indexWatchExpression","digestClassCounts","classArray","classesToUpdate","classCounts","ngClassIndexWatchAction","newModulo","oldClassString","oldModulo","moduloTwo","$index","ngClassWatchAction","newClassString","oldClassArray","newClassArray","toRemoveArray","toAddArray","toRemoveString","toAddString","forceAsync","ngEventHandler","NgModelController","$modelValue","$$rawModelValue","$asyncValidators","$viewChangeListeners","$untouched","$touched","defaultModelOptions","$$updateEvents","$$updateEventHandler","$$parsedNgModel","$$parsedNgModelAssign","$$ngModelGet","$$ngModelSet","$$pendingDebounce","$$parserValid","$$currentValidationRunId","$$rootScope","$$attr","$$timeout","$$exceptionHandler","setupModelWatcher","ngModelWatch","modelValue","$$setModelValue","ModelOptions","$$options","setOptionSelectedStatus","optionEl","parsePatternAttr","patternExp","parseLength","intVal","REGEX_STRING_REGEXP","documentMode","rules","ngCspElement","ngCspAttribute","noInlineStyle","name_","el","allowAutoBootstrap","currentScript","HTMLScriptElement","SVGScriptElement","srcs","getNamedItem","every","origin","full","major","minor","dot","codeName","expando","JQLite._data","MS_HACK_REGEXP","mouseleave","mouseenter","optgroup","tbody","tfoot","colgroup","caption","thead","th","td","Node","contains","compareDocumentPosition","ready","removeData","jqLiteHasData","jqLiteCleanData","removeAttribute","css","NODE_TYPE_ATTRIBUTE","lowercasedName","isBooleanAttr","ret","getText","$dv","multiple","selected","arg1","arg2","nodeCount","jqLiteOn","types","addHandler","noEventListener","one","onFn","replaceNode","insertBefore","children","contentDocument","prepend","wrapNode","detach","after","newElement","toggleClass","condition","classCondition","nextElementSibling","getElementsByTagName","extraParameters","dummyEvent","handlerArgs","eventFnsCopy","arg3","unbind","nanKey","_idx","_transformKey","delete","FN_ARG_SPLIT","FN_ARG","argDecl","underscore","$animateMinErr","postDigestElements","updateData","handleCSSClassChanges","existing","pin","domOperation","from","to","classesAdded","add","classesRemoved","runner","complete","classNameFilter","customFilter","$$registeredAnimations","this.customFilter","filterFn","this.classNameFilter","reservedRegex","NG_ANIMATE_CLASSNAME","domInsert","parentElement","afterElement","afterNode","ELEMENT_NODE","previousElementSibling","enter","move","leave","addclass","setClass","animate","tempClasses","waitForTick","waitQueue","passed","AnimateRunner","setHost","rafTick","_doneCallbacks","_tick","this._tick","_state","chain","AnimateRunner.chain","AnimateRunner.all","runners","onProgress","DONE_COMPLETE_STATE","getPromise","resolveHandler","rejectHandler","pause","resume","_resolve","INITIAL_STATE","DONE_PENDING_STATE","initialOptions","closed","$$prepared","cleanupStyles","start","UNINITIALIZED_VALUE","isFirstChange","SimpleChange.prototype.isFirstChange","domNode","offsetWidth","$interpolateMinErr.throwNoconcat","$interpolateMinErr.interr","callbackId","called","callbackMap","PATH_MATCH","locationPrototype","$$absUrl","hashValue","pathValue","$$url","paramValue","Location","Location.prototype.state","$parseMinErr","OPERATORS","ESCAPE","lex","tokens","readString","peek","readNumber","peekMultichar","readIdent","is","isWhitespace","ch2","ch3","op2","op3","op1","throwError","chars","codePointAt","isValidIdentifierStart","isValidIdentifierContinue","cp","charCodeAt","cp1","cp2","isExpOperator","colStr","peekCh","quote","rawString","hex","String","fromCharCode","rep","ExpressionStatement","Property","program","expressionStatement","expect","filterChain","assignment","ternary","logicalOR","consume","logicalAND","equality","relational","additive","multiplicative","unary","primary","arrayDeclaration","selfReferential","parseArguments","baseExpression","peekToken","kind","e1","e2","e3","e4","peekAhead","t","nextId","vars","own","assignable","stage","computing","recurse","return_","generateFunction","fnKey","intoId","watchId","fnString","USE","STRICT","filterPrefix","watchFns","varsPrefix","section","nameId","recursionFn","skipWatchIdCheck","if_","lazyAssign","computedMember","lazyRecurse","plus","not","getHasOwnProperty","isNull","nonComputedMember","notNull","member","filterName","defaultValue","UNSAFE_CHARACTERS","SAFE_IDENTIFIER","stringEscapeFn","stringEscapeRegex","c","skip","init","fn.assign","rhs","lhs","unary+","unary-","unary!","binary+","binary-","binary*","binary/","binary%","binary===","binary!==","binary==","binary!=","binary<","binary>","binary<=","binary>=","binary&&","binary||","ternary?:","yy","y","MMMM","MMM","M","LLLL","H","hh","EEEE","EEE","ampmGetter","AMPMS","Z","timeZoneGetter","zone","paddedZone","ww","w","G","GG","GGG","GGGG","longEraGetter","ERANAMES","xlinkHref","defaultLinkFn","normalized","ngBooleanAttrWatchAction","htmlAttr","ngAttrAliasWatchAction","$addControl","$getControls","$$renameControl","nullFormRenameControl","control","$removeControl","$setDirty","$setPristine","$setSubmitted","$$setSubmitted","$rollbackViewValue","$commitViewValue","newName","oldName","PRISTINE_CLASS","DIRTY_CLASS","SUBMITTED_CLASS","$setUntouched","rootForm","formDirectiveFactory","isNgForm","getSetter","ngFormCompile","formElement","nameAttr","ngFormPreLink","ctrls","handleFormSubmission","setter","URL_REGEXP","EMAIL_REGEXP","DATE_REGEXP","DATETIMELOCAL_REGEXP","WEEK_REGEXP","MONTH_REGEXP","TIME_REGEXP","inputType","textInputType","weekParser","isoWeek","existingDate","week","hours","seconds","milliseconds","addDays","numberInputType","ngStep","stepVal","parsedStepVal","ctrl.$validators.step","urlInputType","ctrl.$validators.url","emailInputType","email","ctrl.$validators.email","radioInputType","doTrim","checked","rangeInputType","setInitialValueAndObserver","htmlAttrName","changeFn","wrappedObserver","minChange","supportsRange","elVal","maxChange","stepChange","hasMinAttr","hasMaxAttr","hasStepAttr","originalRender","rangeUnderflow","rangeOverflow","rangeRender","noopMinValidator","minValidator","noopMaxValidator","maxValidator","nativeStepValidator","stepMismatch","stepValidator","checkboxInputType","trueValue","ngTrueValue","falseValue","ngFalseValue","ctrl.$isEmpty","valueProperty","configurable","enumerable","defineProperty","CONSTANT_VALUE_REGEXP","updateElementValue","tplAttr","ngValueConstantLink","ngValueLink","valueWatchAction","$compile","ngBindCompile","templateElement","ngBindLink","ngBindWatchAction","ngBindTemplateCompile","ngBindTemplateLink","ngBindHtmlCompile","ngBindHtmlGetter","ngBindHtmlWatch","ngBindHtmlLink","ngBindHtmlWatchAction","getTrustedHtml","forceAsyncEvents","previousElements","ngIfWatchAction","srcExp","onloadExp","autoScrollExp","autoscroll","changeCounter","previousElement","currentElement","cleanupLastIncludeContent","ngIncludeWatchAction","afterAnimation","thisChangeId","namespaceAdaptedClone","trimValues","$$initGetterSetters","invokeModelGetter","invokeModelSetter","this.$$ngModelGet","this.$$ngModelSet","$$$p","$$updateEmptyClasses","NOT_EMPTY_CLASS","EMPTY_CLASS","UNTOUCHED_CLASS","TOUCHED_CLASS","$setTouched","$$lastCommittedViewValue","prevValid","prevModelValue","allowInvalid","that","$$runValidators","allValid","$$writeModelToScope","doneCallback","processSyncValidators","syncValidatorsValid","validator","Boolean","setValidity","processAsyncValidators","validatorPromises","validationDone","localValidationRunId","processParseErrors","errorKey","$$parseAndValidate","$$debounceViewValueCommit","debounceDelay","$overrideModelOptions","createChild","$$setUpdateOnEvents","$processModelValue","$$format","formatters","ngModelCompile","ngModelPreLink","modelCtrl","formCtrl","optionsCtrl","ngModelPostLink","setTouched","DEFAULT_REGEXP","inheritAll","updateOnDefault","updateOn","debounce","getterSetter","NgModelOptionsController","$$attrs","parentOptions","parentCtrl","modelOptionsDefinition","ngOptionsMinErr","NG_OPTIONS_REGEXP","parseOptionsExpression","optionsExp","selectElement","Option","selectValue","label","group","disabled","getOptionValuesKeys","optionValues","optionValuesKeys","keyName","itemKey","valueName","selectAs","trackBy","viewValueFn","trackByFn","getTrackByValueFn","getHashOfValue","getTrackByValue","getLocals","displayFn","groupByFn","disableWhenFn","valuesFn","getWatchables","watchedArray","optionValuesLength","disableWhen","getOptions","optionItems","selectValueMap","optionItem","getOptionFromViewValue","getViewValueFromOption","optionTemplate","optGroupTemplate","ngOptionsPreLink","registerOption","ngOptionsPostLink","getAndUpdateSelectedOption","updateOptionElement","selectCtrl","ngModelCtrl","hasEmptyOption","emptyOption","providedEmptyOption","unknownOption","listFragment","generateUnknownOptionValue","selectCtrl.generateUnknownOptionValue","writeValue","selectCtrl.writeValue","selectedOptions","readValue","selectCtrl.readValue","selectedValues","selections","selectedOption","selectedIndex","removeUnknownOption","selectUnknownOrEmptyOption","unselectEmptyOption","selectCtrl.registerOption","optionScope","needsRerender","$isEmptyOptionSelected","updateOptions","groupElementMap","addOption","groupElement","optionElement","nextValue","BRACE","IS_WHEN","updateElementText","newText","numberExp","whenExp","whens","whensExpFns","braceReplacement","watchRemover","lastCount","attributeName","tmpMatch","whenKey","ngPluralizeWatchAction","countIsNaN","pluralCat","whenExpFn","ngRefMinErr","refValue","ngRefRead","ngRepeatMinErr","updateScope","valueIdentifier","keyIdentifier","arrayLength","$first","$last","$middle","$odd","$even","trackByIdArrayFn","trackByIdObjFn","ngRepeatCompile","ngRepeatEndComment","aliasAs","trackByExp","trackByIdExpFn","hashFnLocals","trackByExpGetter","ngRepeatLink","lastBlockMap","ngRepeatAction","previousNode","nextNode","nextBlockMap","collectionLength","trackById","collectionKeys","nextBlockOrder","trackByIdFn","blockKey","ngRepeatTransclude","ngShowWatchAction","NG_HIDE_CLASS","NG_HIDE_IN_PROGRESS_CLASS","ngHideWatchAction","ngStyleWatchAction","newStyles","oldStyles","NgSwitchController","cases","ngSwitchController","selectedTranscludes","selectedElements","previousLeaveAnimations","selectedScopes","spliceFactory","ngSwitchWatchAction","selectedTransclude","caseElement","selectedScope","anchor","ngSwitchWhenSeparator","whenCase","ngTranscludeMinErr","ngTranscludeCompile","fallbackLinkFn","ngTranscludePostLink","useFallbackContent","ngTranscludeSlot","ngTranscludeCloneAttachFn","noopNgModelController","SelectController","scheduleRender","renderScheduled","scheduleViewValueUpdate","renderAfter","updateScheduled","optionsMap","renderUnknownOption","self.renderUnknownOption","unknownVal","updateUnknownOption","self.updateUnknownOption","self.generateUnknownOptionValue","self.removeUnknownOption","selectEmptyOption","self.selectEmptyOption","self.unselectEmptyOption","self.readValue","realVal","hasOption","self.writeValue","currentlySelectedOption","hashedVal","self.addOption","removeOption","self.removeOption","self.hasOption","$hasEmptyOption","self.$hasEmptyOption","$isUnknownOptionSelected","self.$isUnknownOptionSelected","self.$isEmptyOptionSelected","self.selectUnknownOrEmptyOption","self.registerOption","optionAttrs","interpolateValueFn","interpolateTextFn","valueAttributeObserveAction","removal","previouslySelected","interpolateWatchAction","removeValue","selectPreLink","shouldBeSelected","lastView","lastViewRef","selectMultipleWatch","ngModelCtrl.$isEmpty","selectPostLink","ngModelCtrl.$render","selectCtrlName","ctrl.$validators.required","tElm","tAttr","attrVal","oldRegexp","ctrl.$validators.pattern","maxlengthParsed","ctrl.$validators.maxlength","minlengthParsed","ctrl.$validators.minlength","getDecimals","opt_precision","ONE","OTHER","$$csp","head"] +} diff --git a/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/bootstrap.min.js b/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/bootstrap.min.js new file mode 100644 index 00000000..c4c0d1f9 --- /dev/null +++ b/apps/dnet-orgs-database-application/src/main/resources/static/resources/js/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v4.3.1 (https://getbootstrap.com/) + * Copyright 2011-2019 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery"),require("popper.js")):"function"==typeof define&&define.amd?define(["exports","jquery","popper.js"],e):e((t=t||self).bootstrap={},t.jQuery,t.Popper)}(this,function(t,g,u){"use strict";function i(t,e){for(var n=0;nthis._items.length-1||t<0))if(this._isSliding)g(this._element).one(Q.SLID,function(){return e.to(t)});else{if(n===t)return this.pause(),void this.cycle();var i=ndocument.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},t._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},t._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=t.left+t.right
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Ee},je="show",He="out",Re={HIDE:"hide"+De,HIDDEN:"hidden"+De,SHOW:"show"+De,SHOWN:"shown"+De,INSERTED:"inserted"+De,CLICK:"click"+De,FOCUSIN:"focusin"+De,FOCUSOUT:"focusout"+De,MOUSEENTER:"mouseenter"+De,MOUSELEAVE:"mouseleave"+De},xe="fade",Fe="show",Ue=".tooltip-inner",We=".arrow",qe="hover",Me="focus",Ke="click",Qe="manual",Be=function(){function i(t,e){if("undefined"==typeof u)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var t=i.prototype;return t.enable=function(){this._isEnabled=!0},t.disable=function(){this._isEnabled=!1},t.toggleEnabled=function(){this._isEnabled=!this._isEnabled},t.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=g(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(g(this.getTipElement()).hasClass(Fe))return void this._leave(null,this);this._enter(null,this)}},t.dispose=function(){clearTimeout(this._timeout),g.removeData(this.element,this.constructor.DATA_KEY),g(this.element).off(this.constructor.EVENT_KEY),g(this.element).closest(".modal").off("hide.bs.modal"),this.tip&&g(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,(this._activeTrigger=null)!==this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},t.show=function(){var e=this;if("none"===g(this.element).css("display"))throw new Error("Please use show on visible elements");var t=g.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){g(this.element).trigger(t);var n=_.findShadowRoot(this.element),i=g.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(t.isDefaultPrevented()||!i)return;var o=this.getTipElement(),r=_.getUID(this.constructor.NAME);o.setAttribute("id",r),this.element.setAttribute("aria-describedby",r),this.setContent(),this.config.animation&&g(o).addClass(xe);var s="function"==typeof this.config.placement?this.config.placement.call(this,o,this.element):this.config.placement,a=this._getAttachment(s);this.addAttachmentClass(a);var l=this._getContainer();g(o).data(this.constructor.DATA_KEY,this),g.contains(this.element.ownerDocument.documentElement,this.tip)||g(o).appendTo(l),g(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new u(this.element,o,{placement:a,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:We},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}}),g(o).addClass(Fe),"ontouchstart"in document.documentElement&&g(document.body).children().on("mouseover",null,g.noop);var c=function(){e.config.animation&&e._fixTransition();var t=e._hoverState;e._hoverState=null,g(e.element).trigger(e.constructor.Event.SHOWN),t===He&&e._leave(null,e)};if(g(this.tip).hasClass(xe)){var h=_.getTransitionDurationFromElement(this.tip);g(this.tip).one(_.TRANSITION_END,c).emulateTransitionEnd(h)}else c()}},t.hide=function(t){var e=this,n=this.getTipElement(),i=g.Event(this.constructor.Event.HIDE),o=function(){e._hoverState!==je&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),g(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(g(this.element).trigger(i),!i.isDefaultPrevented()){if(g(n).removeClass(Fe),"ontouchstart"in document.documentElement&&g(document.body).children().off("mouseover",null,g.noop),this._activeTrigger[Ke]=!1,this._activeTrigger[Me]=!1,this._activeTrigger[qe]=!1,g(this.tip).hasClass(xe)){var r=_.getTransitionDurationFromElement(n);g(n).one(_.TRANSITION_END,o).emulateTransitionEnd(r)}else o();this._hoverState=""}},t.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},t.isWithContent=function(){return Boolean(this.getTitle())},t.addAttachmentClass=function(t){g(this.getTipElement()).addClass(Ae+"-"+t)},t.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},t.setContent=function(){var t=this.getTipElement();this.setElementContent(g(t.querySelectorAll(Ue)),this.getTitle()),g(t).removeClass(xe+" "+Fe)},t.setElementContent=function(t,e){"object"!=typeof e||!e.nodeType&&!e.jquery?this.config.html?(this.config.sanitize&&(e=Se(e,this.config.whiteList,this.config.sanitizeFn)),t.html(e)):t.text(e):this.config.html?g(e).parent().is(t)||t.empty().append(e):t.text(g(e).text())},t.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},t._getOffset=function(){var e=this,t={};return"function"==typeof this.config.offset?t.fn=function(t){return t.offsets=l({},t.offsets,e.config.offset(t.offsets,e.element)||{}),t}:t.offset=this.config.offset,t},t._getContainer=function(){return!1===this.config.container?document.body:_.isElement(this.config.container)?g(this.config.container):g(document).find(this.config.container)},t._getAttachment=function(t){return Pe[t.toUpperCase()]},t._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(t){if("click"===t)g(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(t){return i.toggle(t)});else if(t!==Qe){var e=t===qe?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=t===qe?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;g(i.element).on(e,i.config.selector,function(t){return i._enter(t)}).on(n,i.config.selector,function(t){return i._leave(t)})}}),g(this.element).closest(".modal").on("hide.bs.modal",function(){i.element&&i.hide()}),this.config.selector?this.config=l({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},t._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},t._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?Me:qe]=!0),g(e.getTipElement()).hasClass(Fe)||e._hoverState===je?e._hoverState=je:(clearTimeout(e._timeout),e._hoverState=je,e.config.delay&&e.config.delay.show?e._timeout=setTimeout(function(){e._hoverState===je&&e.show()},e.config.delay.show):e.show())},t._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||g(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),g(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?Me:qe]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=He,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout(function(){e._hoverState===He&&e.hide()},e.config.delay.hide):e.hide())},t._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},t._getConfig=function(t){var e=g(this.element).data();return Object.keys(e).forEach(function(t){-1!==Oe.indexOf(t)&&delete e[t]}),"number"==typeof(t=l({},this.constructor.Default,e,"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),_.typeCheckConfig(be,t,this.constructor.DefaultType),t.sanitize&&(t.template=Se(t.template,t.whiteList,t.sanitizeFn)),t},t._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},t._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Ne);null!==e&&e.length&&t.removeClass(e.join(""))},t._handlePopperPlacementChange=function(t){var e=t.instance;this.tip=e.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},t._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(g(t).removeClass(xe),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},i._jQueryInterface=function(n){return this.each(function(){var t=g(this).data(Ie),e="object"==typeof n&&n;if((t||!/dispose|hide/.test(n))&&(t||(t=new i(this,e),g(this).data(Ie,t)),"string"==typeof n)){if("undefined"==typeof t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},s(i,null,[{key:"VERSION",get:function(){return"4.3.1"}},{key:"Default",get:function(){return Le}},{key:"NAME",get:function(){return be}},{key:"DATA_KEY",get:function(){return Ie}},{key:"Event",get:function(){return Re}},{key:"EVENT_KEY",get:function(){return De}},{key:"DefaultType",get:function(){return ke}}]),i}();g.fn[be]=Be._jQueryInterface,g.fn[be].Constructor=Be,g.fn[be].noConflict=function(){return g.fn[be]=we,Be._jQueryInterface};var Ve="popover",Ye="bs.popover",ze="."+Ye,Xe=g.fn[Ve],$e="bs-popover",Ge=new RegExp("(^|\\s)"+$e+"\\S+","g"),Je=l({},Be.Default,{placement:"right",trigger:"click",content:"",template:''}),Ze=l({},Be.DefaultType,{content:"(string|element|function)"}),tn="fade",en="show",nn=".popover-header",on=".popover-body",rn={HIDE:"hide"+ze,HIDDEN:"hidden"+ze,SHOW:"show"+ze,SHOWN:"shown"+ze,INSERTED:"inserted"+ze,CLICK:"click"+ze,FOCUSIN:"focusin"+ze,FOCUSOUT:"focusout"+ze,MOUSEENTER:"mouseenter"+ze,MOUSELEAVE:"mouseleave"+ze},sn=function(t){var e,n;function i(){return t.apply(this,arguments)||this}n=t,(e=i).prototype=Object.create(n.prototype),(e.prototype.constructor=e).__proto__=n;var o=i.prototype;return o.isWithContent=function(){return this.getTitle()||this._getContent()},o.addAttachmentClass=function(t){g(this.getTipElement()).addClass($e+"-"+t)},o.getTipElement=function(){return this.tip=this.tip||g(this.config.template)[0],this.tip},o.setContent=function(){var t=g(this.getTipElement());this.setElementContent(t.find(nn),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(on),e),t.removeClass(tn+" "+en)},o._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},o._cleanTipClass=function(){var t=g(this.getTipElement()),e=t.attr("class").match(Ge);null!==e&&0=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t {\n called = true\n })\n\n setTimeout(() => {\n if (!called) {\n Util.triggerTransitionEnd(this)\n }\n }, duration)\n\n return this\n}\n\nfunction setTransitionEndSupport() {\n $.fn.emulateTransitionEnd = transitionEndEmulator\n $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst Util = {\n\n TRANSITION_END: 'bsTransitionEnd',\n\n getUID(prefix) {\n do {\n // eslint-disable-next-line no-bitwise\n prefix += ~~(Math.random() * MAX_UID) // \"~~\" acts like a faster Math.floor() here\n } while (document.getElementById(prefix))\n return prefix\n },\n\n getSelectorFromElement(element) {\n let selector = element.getAttribute('data-target')\n\n if (!selector || selector === '#') {\n const hrefAttr = element.getAttribute('href')\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : ''\n }\n\n try {\n return document.querySelector(selector) ? selector : null\n } catch (err) {\n return null\n }\n },\n\n getTransitionDurationFromElement(element) {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let transitionDuration = $(element).css('transition-duration')\n let transitionDelay = $(element).css('transition-delay')\n\n const floatTransitionDuration = parseFloat(transitionDuration)\n const floatTransitionDelay = parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (parseFloat(transitionDuration) + parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n },\n\n reflow(element) {\n return element.offsetHeight\n },\n\n triggerTransitionEnd(element) {\n $(element).trigger(TRANSITION_END)\n },\n\n // TODO: Remove in v5\n supportsTransitionEnd() {\n return Boolean(TRANSITION_END)\n },\n\n isElement(obj) {\n return (obj[0] || obj).nodeType\n },\n\n typeCheckConfig(componentName, config, configTypes) {\n for (const property in configTypes) {\n if (Object.prototype.hasOwnProperty.call(configTypes, property)) {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && Util.isElement(value)\n ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new Error(\n `${componentName.toUpperCase()}: ` +\n `Option \"${property}\" provided type \"${valueType}\" ` +\n `but expected type \"${expectedTypes}\".`)\n }\n }\n }\n },\n\n findShadowRoot(element) {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return Util.findShadowRoot(element.parentNode)\n }\n}\n\nsetTransitionEndSupport()\n\nexport default Util\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Selector = {\n DISMISS : '[data-dismiss=\"alert\"]'\n}\n\nconst Event = {\n CLOSE : `close${EVENT_KEY}`,\n CLOSED : `closed${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n ALERT : 'alert',\n FADE : 'fade',\n SHOW : 'show'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n close(element) {\n let rootElement = this._element\n if (element) {\n rootElement = this._getRootElement(element)\n }\n\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent.isDefaultPrevented()) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Private\n\n _getRootElement(element) {\n const selector = Util.getSelectorFromElement(element)\n let parent = false\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n if (!parent) {\n parent = $(element).closest(`.${ClassName.ALERT}`)[0]\n }\n\n return parent\n }\n\n _triggerCloseEvent(element) {\n const closeEvent = $.Event(Event.CLOSE)\n\n $(element).trigger(closeEvent)\n return closeEvent\n }\n\n _removeElement(element) {\n $(element).removeClass(ClassName.SHOW)\n\n if (!$(element).hasClass(ClassName.FADE)) {\n this._destroyElement(element)\n return\n }\n\n const transitionDuration = Util.getTransitionDurationFromElement(element)\n\n $(element)\n .one(Util.TRANSITION_END, (event) => this._destroyElement(element, event))\n .emulateTransitionEnd(transitionDuration)\n }\n\n _destroyElement(element) {\n $(element)\n .detach()\n .trigger(Event.CLOSED)\n .remove()\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $element = $(this)\n let data = $element.data(DATA_KEY)\n\n if (!data) {\n data = new Alert(this)\n $element.data(DATA_KEY, data)\n }\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static _handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(\n Event.CLICK_DATA_API,\n Selector.DISMISS,\n Alert._handleDismiss(new Alert())\n)\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Alert._jQueryInterface\n$.fn[NAME].Constructor = Alert\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Alert._jQueryInterface\n}\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst ClassName = {\n ACTIVE : 'active',\n BUTTON : 'btn',\n FOCUS : 'focus'\n}\n\nconst Selector = {\n DATA_TOGGLE_CARROT : '[data-toggle^=\"button\"]',\n DATA_TOGGLE : '[data-toggle=\"buttons\"]',\n INPUT : 'input:not([type=\"hidden\"])',\n ACTIVE : '.active',\n BUTTON : '.btn'\n}\n\nconst Event = {\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n FOCUS_BLUR_DATA_API : `focus${EVENT_KEY}${DATA_API_KEY} ` +\n `blur${EVENT_KEY}${DATA_API_KEY}`\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button {\n constructor(element) {\n this._element = element\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n // Public\n\n toggle() {\n let triggerChangeEvent = true\n let addAriaPressed = true\n const rootElement = $(this._element).closest(\n Selector.DATA_TOGGLE\n )[0]\n\n if (rootElement) {\n const input = this._element.querySelector(Selector.INPUT)\n\n if (input) {\n if (input.type === 'radio') {\n if (input.checked &&\n this._element.classList.contains(ClassName.ACTIVE)) {\n triggerChangeEvent = false\n } else {\n const activeElement = rootElement.querySelector(Selector.ACTIVE)\n\n if (activeElement) {\n $(activeElement).removeClass(ClassName.ACTIVE)\n }\n }\n }\n\n if (triggerChangeEvent) {\n if (input.hasAttribute('disabled') ||\n rootElement.hasAttribute('disabled') ||\n input.classList.contains('disabled') ||\n rootElement.classList.contains('disabled')) {\n return\n }\n input.checked = !this._element.classList.contains(ClassName.ACTIVE)\n $(input).trigger('change')\n }\n\n input.focus()\n addAriaPressed = false\n }\n }\n\n if (addAriaPressed) {\n this._element.setAttribute('aria-pressed',\n !this._element.classList.contains(ClassName.ACTIVE))\n }\n\n if (triggerChangeEvent) {\n $(this._element).toggleClass(ClassName.ACTIVE)\n }\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n this._element = null\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n\n if (!data) {\n data = new Button(this)\n $(this).data(DATA_KEY, data)\n }\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n event.preventDefault()\n\n let button = event.target\n\n if (!$(button).hasClass(ClassName.BUTTON)) {\n button = $(button).closest(Selector.BUTTON)\n }\n\n Button._jQueryInterface.call($(button), 'toggle')\n })\n .on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, (event) => {\n const button = $(event.target).closest(Selector.BUTTON)[0]\n $(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type))\n })\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Button._jQueryInterface\n$.fn[NAME].Constructor = Button\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Button._jQueryInterface\n}\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ARROW_LEFT_KEYCODE = 37 // KeyboardEvent.which value for left arrow key\nconst ARROW_RIGHT_KEYCODE = 39 // KeyboardEvent.which value for right arrow key\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval : 5000,\n keyboard : true,\n slide : false,\n pause : 'hover',\n wrap : true,\n touch : true\n}\n\nconst DefaultType = {\n interval : '(number|boolean)',\n keyboard : 'boolean',\n slide : '(boolean|string)',\n pause : '(string|boolean)',\n wrap : 'boolean',\n touch : 'boolean'\n}\n\nconst Direction = {\n NEXT : 'next',\n PREV : 'prev',\n LEFT : 'left',\n RIGHT : 'right'\n}\n\nconst Event = {\n SLIDE : `slide${EVENT_KEY}`,\n SLID : `slid${EVENT_KEY}`,\n KEYDOWN : `keydown${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`,\n TOUCHSTART : `touchstart${EVENT_KEY}`,\n TOUCHMOVE : `touchmove${EVENT_KEY}`,\n TOUCHEND : `touchend${EVENT_KEY}`,\n POINTERDOWN : `pointerdown${EVENT_KEY}`,\n POINTERUP : `pointerup${EVENT_KEY}`,\n DRAG_START : `dragstart${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n CAROUSEL : 'carousel',\n ACTIVE : 'active',\n SLIDE : 'slide',\n RIGHT : 'carousel-item-right',\n LEFT : 'carousel-item-left',\n NEXT : 'carousel-item-next',\n PREV : 'carousel-item-prev',\n ITEM : 'carousel-item',\n POINTER_EVENT : 'pointer-event'\n}\n\nconst Selector = {\n ACTIVE : '.active',\n ACTIVE_ITEM : '.active.carousel-item',\n ITEM : '.carousel-item',\n ITEM_IMG : '.carousel-item img',\n NEXT_PREV : '.carousel-item-next, .carousel-item-prev',\n INDICATORS : '.carousel-indicators',\n DATA_SLIDE : '[data-slide], [data-slide-to]',\n DATA_RIDE : '[data-ride=\"carousel\"]'\n}\n\nconst PointerType = {\n TOUCH : 'touch',\n PEN : 'pen'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel {\n constructor(element, config) {\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._element = element\n this._indicatorsElement = this._element.querySelector(Selector.INDICATORS)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent || window.MSPointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n next() {\n if (!this._isSliding) {\n this._slide(Direction.NEXT)\n }\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden &&\n ($(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden')) {\n this.next()\n }\n }\n\n prev() {\n if (!this._isSliding) {\n this._slide(Direction.PREV)\n }\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (this._element.querySelector(Selector.NEXT_PREV)) {\n Util.triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config.interval && !this._isPaused) {\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n $(this._element).one(Event.SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const direction = index > activeIndex\n ? Direction.NEXT\n : Direction.PREV\n\n this._slide(direction, this._items[index])\n }\n\n dispose() {\n $(this._element).off(EVENT_KEY)\n $.removeData(this._element, DATA_KEY)\n\n this._items = null\n this._config = null\n this._element = null\n this._interval = null\n this._isPaused = null\n this._isSliding = null\n this._activeElement = null\n this._indicatorsElement = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n // swipe left\n if (direction > 0) {\n this.prev()\n }\n\n // swipe right\n if (direction < 0) {\n this.next()\n }\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n $(this._element)\n .on(Event.KEYDOWN, (event) => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n $(this._element)\n .on(Event.MOUSEENTER, (event) => this.pause(event))\n .on(Event.MOUSELEAVE, (event) => this.cycle(event))\n }\n\n if (this._config.touch) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n if (!this._touchSupported) {\n return\n }\n\n const start = (event) => {\n if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n this.touchStartX = event.originalEvent.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.originalEvent.touches[0].clientX\n }\n }\n\n const move = (event) => {\n // ensure swiping with one touch and not pinching\n if (event.originalEvent.touches && event.originalEvent.touches.length > 1) {\n this.touchDeltaX = 0\n } else {\n this.touchDeltaX = event.originalEvent.touches[0].clientX - this.touchStartX\n }\n }\n\n const end = (event) => {\n if (this._pointerEvent && PointerType[event.originalEvent.pointerType.toUpperCase()]) {\n this.touchDeltaX = event.originalEvent.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n this.touchTimeout = setTimeout((event) => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n $(this._element.querySelectorAll(Selector.ITEM_IMG)).on(Event.DRAG_START, (e) => e.preventDefault())\n if (this._pointerEvent) {\n $(this._element).on(Event.POINTERDOWN, (event) => start(event))\n $(this._element).on(Event.POINTERUP, (event) => end(event))\n\n this._element.classList.add(ClassName.POINTER_EVENT)\n } else {\n $(this._element).on(Event.TOUCHSTART, (event) => start(event))\n $(this._element).on(Event.TOUCHMOVE, (event) => move(event))\n $(this._element).on(Event.TOUCHEND, (event) => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n switch (event.which) {\n case ARROW_LEFT_KEYCODE:\n event.preventDefault()\n this.prev()\n break\n case ARROW_RIGHT_KEYCODE:\n event.preventDefault()\n this.next()\n break\n default:\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode\n ? [].slice.call(element.parentNode.querySelectorAll(Selector.ITEM))\n : []\n return this._items.indexOf(element)\n }\n\n _getItemByDirection(direction, activeElement) {\n const isNextDirection = direction === Direction.NEXT\n const isPrevDirection = direction === Direction.PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._items.length - 1\n const isGoingToWrap = isPrevDirection && activeIndex === 0 ||\n isNextDirection && activeIndex === lastItemIndex\n\n if (isGoingToWrap && !this._config.wrap) {\n return activeElement\n }\n\n const delta = direction === Direction.PREV ? -1 : 1\n const itemIndex = (activeIndex + delta) % this._items.length\n\n return itemIndex === -1\n ? this._items[this._items.length - 1] : this._items[itemIndex]\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(this._element.querySelector(Selector.ACTIVE_ITEM))\n const slideEvent = $.Event(Event.SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n\n $(this._element).trigger(slideEvent)\n\n return slideEvent\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const indicators = [].slice.call(this._indicatorsElement.querySelectorAll(Selector.ACTIVE))\n $(indicators)\n .removeClass(ClassName.ACTIVE)\n\n const nextIndicator = this._indicatorsElement.children[\n this._getItemIndex(element)\n ]\n\n if (nextIndicator) {\n $(nextIndicator).addClass(ClassName.ACTIVE)\n }\n }\n }\n\n _slide(direction, element) {\n const activeElement = this._element.querySelector(Selector.ACTIVE_ITEM)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || activeElement &&\n this._getItemByDirection(direction, activeElement)\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n let directionalClassName\n let orderClassName\n let eventDirectionName\n\n if (direction === Direction.NEXT) {\n directionalClassName = ClassName.LEFT\n orderClassName = ClassName.NEXT\n eventDirectionName = Direction.LEFT\n } else {\n directionalClassName = ClassName.RIGHT\n orderClassName = ClassName.PREV\n eventDirectionName = Direction.RIGHT\n }\n\n if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {\n this._isSliding = false\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.isDefaultPrevented()) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n\n const slidEvent = $.Event(Event.SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n\n if ($(this._element).hasClass(ClassName.SLIDE)) {\n $(nextElement).addClass(orderClassName)\n\n Util.reflow(nextElement)\n\n $(activeElement).addClass(directionalClassName)\n $(nextElement).addClass(directionalClassName)\n\n const nextElementInterval = parseInt(nextElement.getAttribute('data-interval'), 10)\n if (nextElementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = nextElementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n\n const transitionDuration = Util.getTransitionDurationFromElement(activeElement)\n\n $(activeElement)\n .one(Util.TRANSITION_END, () => {\n $(nextElement)\n .removeClass(`${directionalClassName} ${orderClassName}`)\n .addClass(ClassName.ACTIVE)\n\n $(activeElement).removeClass(`${ClassName.ACTIVE} ${orderClassName} ${directionalClassName}`)\n\n this._isSliding = false\n\n setTimeout(() => $(this._element).trigger(slidEvent), 0)\n })\n .emulateTransitionEnd(transitionDuration)\n } else {\n $(activeElement).removeClass(ClassName.ACTIVE)\n $(nextElement).addClass(ClassName.ACTIVE)\n\n this._isSliding = false\n $(this._element).trigger(slidEvent)\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n let _config = {\n ...Default,\n ...$(this).data()\n }\n\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (!data) {\n data = new Carousel(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n })\n }\n\n static _dataApiClickHandler(event) {\n const selector = Util.getSelectorFromElement(this)\n\n if (!selector) {\n return\n }\n\n const target = $(selector)[0]\n\n if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {\n return\n }\n\n const config = {\n ...$(target).data(),\n ...$(this).data()\n }\n const slideIndex = this.getAttribute('data-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel._jQueryInterface.call($(target), config)\n\n if (slideIndex) {\n $(target).data(DATA_KEY).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler)\n\n$(window).on(Event.LOAD_DATA_API, () => {\n const carousels = [].slice.call(document.querySelectorAll(Selector.DATA_RIDE))\n for (let i = 0, len = carousels.length; i < len; i++) {\n const $carousel = $(carousels[i])\n Carousel._jQueryInterface.call($carousel, $carousel.data())\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Carousel._jQueryInterface\n$.fn[NAME].Constructor = Carousel\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Carousel._jQueryInterface\n}\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Default = {\n toggle : true,\n parent : ''\n}\n\nconst DefaultType = {\n toggle : 'boolean',\n parent : '(string|element)'\n}\n\nconst Event = {\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n SHOW : 'show',\n COLLAPSE : 'collapse',\n COLLAPSING : 'collapsing',\n COLLAPSED : 'collapsed'\n}\n\nconst Dimension = {\n WIDTH : 'width',\n HEIGHT : 'height'\n}\n\nconst Selector = {\n ACTIVES : '.show, .collapsing',\n DATA_TOGGLE : '[data-toggle=\"collapse\"]'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse {\n constructor(element, config) {\n this._isTransitioning = false\n this._element = element\n this._config = this._getConfig(config)\n this._triggerArray = [].slice.call(document.querySelectorAll(\n `[data-toggle=\"collapse\"][href=\"#${element.id}\"],` +\n `[data-toggle=\"collapse\"][data-target=\"#${element.id}\"]`\n ))\n\n const toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = Util.getSelectorFromElement(elem)\n const filterElement = [].slice.call(document.querySelectorAll(selector))\n .filter((foundElem) => foundElem === element)\n\n if (selector !== null && filterElement.length > 0) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle() {\n if ($(this._element).hasClass(ClassName.SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning ||\n $(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES))\n .filter((elem) => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-parent') === this._config.parent\n }\n\n return elem.classList.contains(ClassName.COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n if (actives) {\n activesData = $(actives).not(this._selector).data(DATA_KEY)\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = $.Event(Event.SHOW)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n if (actives) {\n Collapse._jQueryInterface.call($(actives).not(this._selector), 'hide')\n if (!activesData) {\n $(actives).data(DATA_KEY, null)\n }\n }\n\n const dimension = this._getDimension()\n\n $(this._element)\n .removeClass(ClassName.COLLAPSE)\n .addClass(ClassName.COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n $(this._triggerArray)\n .removeClass(ClassName.COLLAPSED)\n .attr('aria-expanded', true)\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .addClass(ClassName.SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n $(this._element).trigger(Event.SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning ||\n !$(this._element).hasClass(ClassName.SHOW)) {\n return\n }\n\n const startEvent = $.Event(Event.HIDE)\n $(this._element).trigger(startEvent)\n if (startEvent.isDefaultPrevented()) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n Util.reflow(this._element)\n\n $(this._element)\n .addClass(ClassName.COLLAPSING)\n .removeClass(ClassName.COLLAPSE)\n .removeClass(ClassName.SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const selector = Util.getSelectorFromElement(trigger)\n\n if (selector !== null) {\n const $elem = $([].slice.call(document.querySelectorAll(selector)))\n if (!$elem.hasClass(ClassName.SHOW)) {\n $(trigger).addClass(ClassName.COLLAPSED)\n .attr('aria-expanded', false)\n }\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n $(this._element)\n .removeClass(ClassName.COLLAPSING)\n .addClass(ClassName.COLLAPSE)\n .trigger(Event.HIDDEN)\n }\n\n this._element.style[dimension] = ''\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._parent = null\n this._element = null\n this._triggerArray = null\n this._isTransitioning = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n const hasWidth = $(this._element).hasClass(Dimension.WIDTH)\n return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT\n }\n\n _getParent() {\n let parent\n\n if (Util.isElement(this._config.parent)) {\n parent = this._config.parent\n\n // It's a jQuery object\n if (typeof this._config.parent.jquery !== 'undefined') {\n parent = this._config.parent[0]\n }\n } else {\n parent = document.querySelector(this._config.parent)\n }\n\n const selector =\n `[data-toggle=\"collapse\"][data-parent=\"${this._config.parent}\"]`\n\n const children = [].slice.call(parent.querySelectorAll(selector))\n $(children).each((i, element) => {\n this._addAriaAndCollapsedClass(\n Collapse._getTargetFromElement(element),\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n const isOpen = $(element).hasClass(ClassName.SHOW)\n\n if (triggerArray.length) {\n $(triggerArray)\n .toggleClass(ClassName.COLLAPSED, !isOpen)\n .attr('aria-expanded', isOpen)\n }\n }\n\n // Static\n\n static _getTargetFromElement(element) {\n const selector = Util.getSelectorFromElement(element)\n return selector ? document.querySelector(selector) : null\n }\n\n static _jQueryInterface(config) {\n return this.each(function () {\n const $this = $(this)\n let data = $this.data(DATA_KEY)\n const _config = {\n ...Default,\n ...$this.data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data && _config.toggle && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(this, _config)\n $this.data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n // preventDefault only for elements (which change the URL) not inside the collapsible element\n if (event.currentTarget.tagName === 'A') {\n event.preventDefault()\n }\n\n const $trigger = $(this)\n const selector = Util.getSelectorFromElement(this)\n const selectors = [].slice.call(document.querySelectorAll(selector))\n\n $(selectors).each(function () {\n const $target = $(this)\n const data = $target.data(DATA_KEY)\n const config = data ? 'toggle' : $trigger.data()\n Collapse._jQueryInterface.call($target, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Collapse._jQueryInterface\n$.fn[NAME].Constructor = Collapse\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Collapse._jQueryInterface\n}\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\nconst SPACE_KEYCODE = 32 // KeyboardEvent.which value for space key\nconst TAB_KEYCODE = 9 // KeyboardEvent.which value for tab key\nconst ARROW_UP_KEYCODE = 38 // KeyboardEvent.which value for up arrow key\nconst ARROW_DOWN_KEYCODE = 40 // KeyboardEvent.which value for down arrow key\nconst RIGHT_MOUSE_BUTTON_WHICH = 3 // MouseEvent.which value for the right button (assuming a right-handed mouse)\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEYCODE}|${ARROW_DOWN_KEYCODE}|${ESCAPE_KEYCODE}`)\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`,\n KEYDOWN_DATA_API : `keydown${EVENT_KEY}${DATA_API_KEY}`,\n KEYUP_DATA_API : `keyup${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n DISABLED : 'disabled',\n SHOW : 'show',\n DROPUP : 'dropup',\n DROPRIGHT : 'dropright',\n DROPLEFT : 'dropleft',\n MENURIGHT : 'dropdown-menu-right',\n MENULEFT : 'dropdown-menu-left',\n POSITION_STATIC : 'position-static'\n}\n\nconst Selector = {\n DATA_TOGGLE : '[data-toggle=\"dropdown\"]',\n FORM_CHILD : '.dropdown form',\n MENU : '.dropdown-menu',\n NAVBAR_NAV : '.navbar-nav',\n VISIBLE_ITEMS : '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n}\n\nconst AttachmentMap = {\n TOP : 'top-start',\n TOPEND : 'top-end',\n BOTTOM : 'bottom-start',\n BOTTOMEND : 'bottom-end',\n RIGHT : 'right-start',\n RIGHTEND : 'right-end',\n LEFT : 'left-start',\n LEFTEND : 'left-end'\n}\n\nconst Default = {\n offset : 0,\n flip : true,\n boundary : 'scrollParent',\n reference : 'toggle',\n display : 'dynamic'\n}\n\nconst DefaultType = {\n offset : '(number|string|function)',\n flip : 'boolean',\n boundary : '(string|element)',\n reference : '(string|element)',\n display : 'string'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown {\n constructor(element, config) {\n this._element = element\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n toggle() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this._element)\n const isActive = $(this._menu).hasClass(ClassName.SHOW)\n\n Dropdown._clearMenus()\n\n if (isActive) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const showEvent = $.Event(Event.SHOW, relatedTarget)\n\n $(parent).trigger(showEvent)\n\n if (showEvent.isDefaultPrevented()) {\n return\n }\n\n // Disable totally Popper.js for Dropdown in Navbar\n if (!this._inNavbar) {\n /**\n * Check for Popper dependency\n * Popper - https://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper.js (https://popper.js.org/)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (Util.isElement(this._config.reference)) {\n referenceElement = this._config.reference\n\n // Check if it's jQuery element\n if (typeof this._config.reference.jquery !== 'undefined') {\n referenceElement = this._config.reference[0]\n }\n }\n\n // If boundary is not `scrollParent`, then set position to `static`\n // to allow the menu to \"escape\" the scroll parent's boundaries\n // https://github.com/twbs/bootstrap/issues/24251\n if (this._config.boundary !== 'scrollParent') {\n $(parent).addClass(ClassName.POSITION_STATIC)\n }\n this._popper = new Popper(referenceElement, this._menu, this._getPopperConfig())\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n $(parent).closest(Selector.NAVBAR_NAV).length === 0) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.SHOWN, relatedTarget))\n }\n\n show() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED) || $(this._menu).hasClass(ClassName.SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const showEvent = $.Event(Event.SHOW, relatedTarget)\n const parent = Dropdown._getParentFromElement(this._element)\n\n $(parent).trigger(showEvent)\n\n if (showEvent.isDefaultPrevented()) {\n return\n }\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.SHOWN, relatedTarget))\n }\n\n hide() {\n if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED) || !$(this._menu).hasClass(ClassName.SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n const hideEvent = $.Event(Event.HIDE, relatedTarget)\n const parent = Dropdown._getParentFromElement(this._element)\n\n $(parent).trigger(hideEvent)\n\n if (hideEvent.isDefaultPrevented()) {\n return\n }\n\n $(this._menu).toggleClass(ClassName.SHOW)\n $(parent)\n .toggleClass(ClassName.SHOW)\n .trigger($.Event(Event.HIDDEN, relatedTarget))\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._element).off(EVENT_KEY)\n this._element = null\n this._menu = null\n if (this._popper !== null) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Private\n\n _addEventListeners() {\n $(this._element).on(Event.CLICK, (event) => {\n event.preventDefault()\n event.stopPropagation()\n this.toggle()\n })\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...$(this._element).data(),\n ...config\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n return config\n }\n\n _getMenuElement() {\n if (!this._menu) {\n const parent = Dropdown._getParentFromElement(this._element)\n\n if (parent) {\n this._menu = parent.querySelector(Selector.MENU)\n }\n }\n return this._menu\n }\n\n _getPlacement() {\n const $parentDropdown = $(this._element.parentNode)\n let placement = AttachmentMap.BOTTOM\n\n // Handle dropup\n if ($parentDropdown.hasClass(ClassName.DROPUP)) {\n placement = AttachmentMap.TOP\n if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.TOPEND\n }\n } else if ($parentDropdown.hasClass(ClassName.DROPRIGHT)) {\n placement = AttachmentMap.RIGHT\n } else if ($parentDropdown.hasClass(ClassName.DROPLEFT)) {\n placement = AttachmentMap.LEFT\n } else if ($(this._menu).hasClass(ClassName.MENURIGHT)) {\n placement = AttachmentMap.BOTTOMEND\n }\n return placement\n }\n\n _detectNavbar() {\n return $(this._element).closest('.navbar').length > 0\n }\n\n _getOffset() {\n const offset = {}\n\n if (typeof this._config.offset === 'function') {\n offset.fn = (data) => {\n data.offsets = {\n ...data.offsets,\n ...this._config.offset(data.offsets, this._element) || {}\n }\n\n return data\n }\n } else {\n offset.offset = this._config.offset\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const popperConfig = {\n placement: this._getPlacement(),\n modifiers: {\n offset: this._getOffset(),\n flip: {\n enabled: this._config.flip\n },\n preventOverflow: {\n boundariesElement: this._config.boundary\n }\n }\n }\n\n // Disable Popper.js if we have a static display\n if (this._config.display === 'static') {\n popperConfig.modifiers.applyStyle = {\n enabled: false\n }\n }\n\n return popperConfig\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data) {\n data = new Dropdown(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n\n static _clearMenus(event) {\n if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH ||\n event.type === 'keyup' && event.which !== TAB_KEYCODE)) {\n return\n }\n\n const toggles = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE))\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const parent = Dropdown._getParentFromElement(toggles[i])\n const context = $(toggles[i]).data(DATA_KEY)\n const relatedTarget = {\n relatedTarget: toggles[i]\n }\n\n if (event && event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n\n if (!context) {\n continue\n }\n\n const dropdownMenu = context._menu\n if (!$(parent).hasClass(ClassName.SHOW)) {\n continue\n }\n\n if (event && (event.type === 'click' &&\n /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) &&\n $.contains(parent, event.target)) {\n continue\n }\n\n const hideEvent = $.Event(Event.HIDE, relatedTarget)\n $(parent).trigger(hideEvent)\n if (hideEvent.isDefaultPrevented()) {\n continue\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n toggles[i].setAttribute('aria-expanded', 'false')\n\n $(dropdownMenu).removeClass(ClassName.SHOW)\n $(parent)\n .removeClass(ClassName.SHOW)\n .trigger($.Event(Event.HIDDEN, relatedTarget))\n }\n }\n\n static _getParentFromElement(element) {\n let parent\n const selector = Util.getSelectorFromElement(element)\n\n if (selector) {\n parent = document.querySelector(selector)\n }\n\n return parent || element.parentNode\n }\n\n // eslint-disable-next-line complexity\n static _dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName)\n ? event.which === SPACE_KEYCODE || event.which !== ESCAPE_KEYCODE &&\n (event.which !== ARROW_DOWN_KEYCODE && event.which !== ARROW_UP_KEYCODE ||\n $(event.target).closest(Selector.MENU).length) : !REGEXP_KEYDOWN.test(event.which)) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {\n return\n }\n\n const parent = Dropdown._getParentFromElement(this)\n const isActive = $(parent).hasClass(ClassName.SHOW)\n\n if (!isActive || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {\n if (event.which === ESCAPE_KEYCODE) {\n const toggle = parent.querySelector(Selector.DATA_TOGGLE)\n $(toggle).trigger('focus')\n }\n\n $(this).trigger('click')\n return\n }\n\n const items = [].slice.call(parent.querySelectorAll(Selector.VISIBLE_ITEMS))\n\n if (items.length === 0) {\n return\n }\n\n let index = items.indexOf(event.target)\n\n if (event.which === ARROW_UP_KEYCODE && index > 0) { // Up\n index--\n }\n\n if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) { // Down\n index++\n }\n\n if (index < 0) {\n index = 0\n }\n\n items[index].focus()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document)\n .on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler)\n .on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler)\n .on(`${Event.CLICK_DATA_API} ${Event.KEYUP_DATA_API}`, Dropdown._clearMenus)\n .on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n event.preventDefault()\n event.stopPropagation()\n Dropdown._jQueryInterface.call($(this), 'toggle')\n })\n .on(Event.CLICK_DATA_API, Selector.FORM_CHILD, (e) => {\n e.stopPropagation()\n })\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Dropdown._jQueryInterface\n$.fn[NAME].Constructor = Dropdown\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Dropdown._jQueryInterface\n}\n\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst ESCAPE_KEYCODE = 27 // KeyboardEvent.which value for Escape (Esc) key\n\nconst Default = {\n backdrop : true,\n keyboard : true,\n focus : true,\n show : true\n}\n\nconst DefaultType = {\n backdrop : '(boolean|string)',\n keyboard : 'boolean',\n focus : 'boolean',\n show : 'boolean'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n RESIZE : `resize${EVENT_KEY}`,\n CLICK_DISMISS : `click.dismiss${EVENT_KEY}`,\n KEYDOWN_DISMISS : `keydown.dismiss${EVENT_KEY}`,\n MOUSEUP_DISMISS : `mouseup.dismiss${EVENT_KEY}`,\n MOUSEDOWN_DISMISS : `mousedown.dismiss${EVENT_KEY}`,\n CLICK_DATA_API : `click${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n SCROLLABLE : 'modal-dialog-scrollable',\n SCROLLBAR_MEASURER : 'modal-scrollbar-measure',\n BACKDROP : 'modal-backdrop',\n OPEN : 'modal-open',\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n DIALOG : '.modal-dialog',\n MODAL_BODY : '.modal-body',\n DATA_TOGGLE : '[data-toggle=\"modal\"]',\n DATA_DISMISS : '[data-dismiss=\"modal\"]',\n FIXED_CONTENT : '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',\n STICKY_CONTENT : '.sticky-top'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal {\n constructor(element, config) {\n this._config = this._getConfig(config)\n this._element = element\n this._dialog = element.querySelector(Selector.DIALOG)\n this._backdrop = null\n this._isShown = false\n this._isBodyOverflowing = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n this._scrollbarWidth = 0\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n this._isTransitioning = true\n }\n\n const showEvent = $.Event(Event.SHOW, {\n relatedTarget\n })\n\n $(this._element).trigger(showEvent)\n\n if (this._isShown || showEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = true\n\n this._checkScrollbar()\n this._setScrollbar()\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(this._element).on(\n Event.CLICK_DISMISS,\n Selector.DATA_DISMISS,\n (event) => this.hide(event)\n )\n\n $(this._dialog).on(Event.MOUSEDOWN_DISMISS, () => {\n $(this._element).one(Event.MOUSEUP_DISMISS, (event) => {\n if ($(event.target).is(this._element)) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = $.Event(Event.HIDE)\n\n $(this._element).trigger(hideEvent)\n\n if (!this._isShown || hideEvent.isDefaultPrevented()) {\n return\n }\n\n this._isShown = false\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (transition) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n $(document).off(Event.FOCUSIN)\n\n $(this._element).removeClass(ClassName.SHOW)\n\n $(this._element).off(Event.CLICK_DISMISS)\n $(this._dialog).off(Event.MOUSEDOWN_DISMISS)\n\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._element)\n\n $(this._element)\n .one(Util.TRANSITION_END, (event) => this._hideModal(event))\n .emulateTransitionEnd(transitionDuration)\n } else {\n this._hideModal()\n }\n }\n\n dispose() {\n [window, this._element, this._dialog]\n .forEach((htmlElement) => $(htmlElement).off(EVENT_KEY))\n\n /**\n * `document` has 2 events `Event.FOCUSIN` and `Event.CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `Event.CLICK_DATA_API` event that should remain\n */\n $(document).off(Event.FOCUSIN)\n\n $.removeData(this._element, DATA_KEY)\n\n this._config = null\n this._element = null\n this._dialog = null\n this._backdrop = null\n this._isShown = null\n this._isBodyOverflowing = null\n this._ignoreBackdropClick = null\n this._isTransitioning = null\n this._scrollbarWidth = null\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n Util.typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const transition = $(this._element).hasClass(ClassName.FADE)\n\n if (!this._element.parentNode ||\n this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n\n if ($(this._dialog).hasClass(ClassName.SCROLLABLE)) {\n this._dialog.querySelector(Selector.MODAL_BODY).scrollTop = 0\n } else {\n this._element.scrollTop = 0\n }\n\n if (transition) {\n Util.reflow(this._element)\n }\n\n $(this._element).addClass(ClassName.SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const shownEvent = $.Event(Event.SHOWN, {\n relatedTarget\n })\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n this._isTransitioning = false\n $(this._element).trigger(shownEvent)\n }\n\n if (transition) {\n const transitionDuration = Util.getTransitionDurationFromElement(this._dialog)\n\n $(this._dialog)\n .one(Util.TRANSITION_END, transitionComplete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n transitionComplete()\n }\n }\n\n _enforceFocus() {\n $(document)\n .off(Event.FOCUSIN) // Guard against infinite focus loop\n .on(Event.FOCUSIN, (event) => {\n if (document !== event.target &&\n this._element !== event.target &&\n $(this._element).has(event.target).length === 0) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown && this._config.keyboard) {\n $(this._element).on(Event.KEYDOWN_DISMISS, (event) => {\n if (event.which === ESCAPE_KEYCODE) {\n event.preventDefault()\n this.hide()\n }\n })\n } else if (!this._isShown) {\n $(this._element).off(Event.KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n $(window).on(Event.RESIZE, (event) => this.handleUpdate(event))\n } else {\n $(window).off(Event.RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._isTransitioning = false\n this._showBackdrop(() => {\n $(document.body).removeClass(ClassName.OPEN)\n this._resetAdjustments()\n this._resetScrollbar()\n $(this._element).trigger(Event.HIDDEN)\n })\n }\n\n _removeBackdrop() {\n if (this._backdrop) {\n $(this._backdrop).remove()\n this._backdrop = null\n }\n }\n\n _showBackdrop(callback) {\n const animate = $(this._element).hasClass(ClassName.FADE)\n ? ClassName.FADE : ''\n\n if (this._isShown && this._config.backdrop) {\n this._backdrop = document.createElement('div')\n this._backdrop.className = ClassName.BACKDROP\n\n if (animate) {\n this._backdrop.classList.add(animate)\n }\n\n $(this._backdrop).appendTo(document.body)\n\n $(this._element).on(Event.CLICK_DISMISS, (event) => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n if (event.target !== event.currentTarget) {\n return\n }\n if (this._config.backdrop === 'static') {\n this._element.focus()\n } else {\n this.hide()\n }\n })\n\n if (animate) {\n Util.reflow(this._backdrop)\n }\n\n $(this._backdrop).addClass(ClassName.SHOW)\n\n if (!callback) {\n return\n }\n\n if (!animate) {\n callback()\n return\n }\n\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callback)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else if (!this._isShown && this._backdrop) {\n $(this._backdrop).removeClass(ClassName.SHOW)\n\n const callbackRemove = () => {\n this._removeBackdrop()\n if (callback) {\n callback()\n }\n }\n\n if ($(this._element).hasClass(ClassName.FADE)) {\n const backdropTransitionDuration = Util.getTransitionDurationFromElement(this._backdrop)\n\n $(this._backdrop)\n .one(Util.TRANSITION_END, callbackRemove)\n .emulateTransitionEnd(backdropTransitionDuration)\n } else {\n callbackRemove()\n }\n } else if (callback) {\n callback()\n }\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // todo (fat): these should probably be refactored out of modal.js\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing =\n this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!this._isBodyOverflowing && isModalOverflowing) {\n this._element.style.paddingLeft = `${this._scrollbarWidth}px`\n }\n\n if (this._isBodyOverflowing && !isModalOverflowing) {\n this._element.style.paddingRight = `${this._scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n _checkScrollbar() {\n const rect = document.body.getBoundingClientRect()\n this._isBodyOverflowing = rect.left + rect.right < window.innerWidth\n this._scrollbarWidth = this._getScrollbarWidth()\n }\n\n _setScrollbar() {\n if (this._isBodyOverflowing) {\n // Note: DOMNode.style.paddingRight returns the actual value or '' if not set\n // while $(DOMNode).css('padding-right') returns the calculated value or 0 if not set\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n const stickyContent = [].slice.call(document.querySelectorAll(Selector.STICKY_CONTENT))\n\n // Adjust fixed content padding\n $(fixedContent).each((index, element) => {\n const actualPadding = element.style.paddingRight\n const calculatedPadding = $(element).css('padding-right')\n $(element)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n })\n\n // Adjust sticky content margin\n $(stickyContent).each((index, element) => {\n const actualMargin = element.style.marginRight\n const calculatedMargin = $(element).css('margin-right')\n $(element)\n .data('margin-right', actualMargin)\n .css('margin-right', `${parseFloat(calculatedMargin) - this._scrollbarWidth}px`)\n })\n\n // Adjust body padding\n const actualPadding = document.body.style.paddingRight\n const calculatedPadding = $(document.body).css('padding-right')\n $(document.body)\n .data('padding-right', actualPadding)\n .css('padding-right', `${parseFloat(calculatedPadding) + this._scrollbarWidth}px`)\n }\n\n $(document.body).addClass(ClassName.OPEN)\n }\n\n _resetScrollbar() {\n // Restore fixed content padding\n const fixedContent = [].slice.call(document.querySelectorAll(Selector.FIXED_CONTENT))\n $(fixedContent).each((index, element) => {\n const padding = $(element).data('padding-right')\n $(element).removeData('padding-right')\n element.style.paddingRight = padding ? padding : ''\n })\n\n // Restore sticky content\n const elements = [].slice.call(document.querySelectorAll(`${Selector.STICKY_CONTENT}`))\n $(elements).each((index, element) => {\n const margin = $(element).data('margin-right')\n if (typeof margin !== 'undefined') {\n $(element).css('margin-right', margin).removeData('margin-right')\n }\n })\n\n // Restore body padding\n const padding = $(document.body).data('padding-right')\n $(document.body).removeData('padding-right')\n document.body.style.paddingRight = padding ? padding : ''\n }\n\n _getScrollbarWidth() { // thx d.walsh\n const scrollDiv = document.createElement('div')\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER\n document.body.appendChild(scrollDiv)\n const scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth\n document.body.removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n // Static\n\n static _jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = {\n ...Default,\n ...$(this).data(),\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (!data) {\n data = new Modal(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config](relatedTarget)\n } else if (_config.show) {\n data.show(relatedTarget)\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\n$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {\n let target\n const selector = Util.getSelectorFromElement(this)\n\n if (selector) {\n target = document.querySelector(selector)\n }\n\n const config = $(target).data(DATA_KEY)\n ? 'toggle' : {\n ...$(target).data(),\n ...$(this).data()\n }\n\n if (this.tagName === 'A' || this.tagName === 'AREA') {\n event.preventDefault()\n }\n\n const $target = $(target).one(Event.SHOW, (showEvent) => {\n if (showEvent.isDefaultPrevented()) {\n // Only register focus restorer if modal will actually get shown\n return\n }\n\n $target.one(Event.HIDDEN, () => {\n if ($(this).is(':visible')) {\n this.focus()\n }\n })\n })\n\n Modal._jQueryInterface.call($(target), config, this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Modal._jQueryInterface\n$.fn[NAME].Constructor = Modal\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Modal._jQueryInterface\n}\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): tools/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = [\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n]\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\nexport const DefaultWhitelist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i\n\nfunction allowedAttribute(attr, allowedAttributeList) {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.indexOf(attrName) !== -1) {\n if (uriAttrs.indexOf(attrName) !== -1) {\n return Boolean(attr.nodeValue.match(SAFE_URL_PATTERN) || attr.nodeValue.match(DATA_URL_PATTERN))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter((attrRegex) => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, l = regExp.length; i < l; i++) {\n if (attrName.match(regExp[i])) {\n return true\n }\n }\n\n return false\n}\n\nexport function sanitizeHtml(unsafeHtml, whiteList, sanitizeFn) {\n if (unsafeHtml.length === 0) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const whitelistKeys = Object.keys(whiteList)\n const elements = [].slice.call(createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (whitelistKeys.indexOf(el.nodeName.toLowerCase()) === -1) {\n el.parentNode.removeChild(el)\n\n continue\n }\n\n const attributeList = [].slice.call(el.attributes)\n const whitelistedAttributes = [].concat(whiteList['*'] || [], whiteList[elName] || [])\n\n attributeList.forEach((attr) => {\n if (!allowedAttribute(attr, whitelistedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n DefaultWhitelist,\n sanitizeHtml\n} from './tools/sanitizer'\nimport $ from 'jquery'\nimport Popper from 'popper.js'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = ['sanitize', 'whiteList', 'sanitizeFn']\n\nconst DefaultType = {\n animation : 'boolean',\n template : 'string',\n title : '(string|element|function)',\n trigger : 'string',\n delay : '(number|object)',\n html : 'boolean',\n selector : '(string|boolean)',\n placement : '(string|function)',\n offset : '(number|string|function)',\n container : '(string|element|boolean)',\n fallbackPlacement : '(string|array)',\n boundary : '(string|element)',\n sanitize : 'boolean',\n sanitizeFn : '(null|function)',\n whiteList : 'object'\n}\n\nconst AttachmentMap = {\n AUTO : 'auto',\n TOP : 'top',\n RIGHT : 'right',\n BOTTOM : 'bottom',\n LEFT : 'left'\n}\n\nconst Default = {\n animation : true,\n template : '
' +\n '
' +\n '
',\n trigger : 'hover focus',\n title : '',\n delay : 0,\n html : false,\n selector : false,\n placement : 'top',\n offset : 0,\n container : false,\n fallbackPlacement : 'flip',\n boundary : 'scrollParent',\n sanitize : true,\n sanitizeFn : null,\n whiteList : DefaultWhitelist\n}\n\nconst HoverState = {\n SHOW : 'show',\n OUT : 'out'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n}\n\nconst ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n TOOLTIP : '.tooltip',\n TOOLTIP_INNER : '.tooltip-inner',\n ARROW : '.arrow'\n}\n\nconst Trigger = {\n HOVER : 'hover',\n FOCUS : 'focus',\n CLICK : 'click',\n MANUAL : 'manual'\n}\n\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip {\n constructor(element, config) {\n /**\n * Check for Popper dependency\n * Popper - https://popper.js.org\n */\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper.js (https://popper.js.org/)')\n }\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this.element = element\n this.config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const dataKey = this.constructor.DATA_KEY\n let context = $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if ($(this.getTipElement()).hasClass(ClassName.SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n $.removeData(this.element, this.constructor.DATA_KEY)\n\n $(this.element).off(this.constructor.EVENT_KEY)\n $(this.element).closest('.modal').off('hide.bs.modal')\n\n if (this.tip) {\n $(this.tip).remove()\n }\n\n this._isEnabled = null\n this._timeout = null\n this._hoverState = null\n this._activeTrigger = null\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n this._popper = null\n this.element = null\n this.config = null\n this.tip = null\n }\n\n show() {\n if ($(this.element).css('display') === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n const showEvent = $.Event(this.constructor.Event.SHOW)\n if (this.isWithContent() && this._isEnabled) {\n $(this.element).trigger(showEvent)\n\n const shadowRoot = Util.findShadowRoot(this.element)\n const isInTheDom = $.contains(\n shadowRoot !== null ? shadowRoot : this.element.ownerDocument.documentElement,\n this.element\n )\n\n if (showEvent.isDefaultPrevented() || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = Util.getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this.element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this.config.animation) {\n $(tip).addClass(ClassName.FADE)\n }\n\n const placement = typeof this.config.placement === 'function'\n ? this.config.placement.call(this, tip, this.element)\n : this.config.placement\n\n const attachment = this._getAttachment(placement)\n this.addAttachmentClass(attachment)\n\n const container = this._getContainer()\n $(tip).data(this.constructor.DATA_KEY, this)\n\n if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) {\n $(tip).appendTo(container)\n }\n\n $(this.element).trigger(this.constructor.Event.INSERTED)\n\n this._popper = new Popper(this.element, tip, {\n placement: attachment,\n modifiers: {\n offset: this._getOffset(),\n flip: {\n behavior: this.config.fallbackPlacement\n },\n arrow: {\n element: Selector.ARROW\n },\n preventOverflow: {\n boundariesElement: this.config.boundary\n }\n },\n onCreate: (data) => {\n if (data.originalPlacement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n },\n onUpdate: (data) => this._handlePopperPlacementChange(data)\n })\n\n $(tip).addClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().on('mouseover', null, $.noop)\n }\n\n const complete = () => {\n if (this.config.animation) {\n this._fixTransition()\n }\n const prevHoverState = this._hoverState\n this._hoverState = null\n\n $(this.element).trigger(this.constructor.Event.SHOWN)\n\n if (prevHoverState === HoverState.OUT) {\n this._leave(null, this)\n }\n }\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(this.tip)\n\n $(this.tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n }\n }\n\n hide(callback) {\n const tip = this.getTipElement()\n const hideEvent = $.Event(this.constructor.Event.HIDE)\n const complete = () => {\n if (this._hoverState !== HoverState.SHOW && tip.parentNode) {\n tip.parentNode.removeChild(tip)\n }\n\n this._cleanTipClass()\n this.element.removeAttribute('aria-describedby')\n $(this.element).trigger(this.constructor.Event.HIDDEN)\n if (this._popper !== null) {\n this._popper.destroy()\n }\n\n if (callback) {\n callback()\n }\n }\n\n $(this.element).trigger(hideEvent)\n\n if (hideEvent.isDefaultPrevented()) {\n return\n }\n\n $(tip).removeClass(ClassName.SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n $(document.body).children().off('mouseover', null, $.noop)\n }\n\n this._activeTrigger[Trigger.CLICK] = false\n this._activeTrigger[Trigger.FOCUS] = false\n this._activeTrigger[Trigger.HOVER] = false\n\n if ($(this.tip).hasClass(ClassName.FADE)) {\n const transitionDuration = Util.getTransitionDurationFromElement(tip)\n\n $(tip)\n .one(Util.TRANSITION_END, complete)\n .emulateTransitionEnd(transitionDuration)\n } else {\n complete()\n }\n\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.scheduleUpdate()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent($(tip.querySelectorAll(Selector.TOOLTIP_INNER)), this.getTitle())\n $(tip).removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n setElementContent($element, content) {\n if (typeof content === 'object' && (content.nodeType || content.jquery)) {\n // Content is a DOM node or a jQuery\n if (this.config.html) {\n if (!$(content).parent().is($element)) {\n $element.empty().append(content)\n }\n } else {\n $element.text($(content).text())\n }\n\n return\n }\n\n if (this.config.html) {\n if (this.config.sanitize) {\n content = sanitizeHtml(content, this.config.whiteList, this.config.sanitizeFn)\n }\n\n $element.html(content)\n } else {\n $element.text(content)\n }\n }\n\n getTitle() {\n let title = this.element.getAttribute('data-original-title')\n\n if (!title) {\n title = typeof this.config.title === 'function'\n ? this.config.title.call(this.element)\n : this.config.title\n }\n\n return title\n }\n\n // Private\n\n _getOffset() {\n const offset = {}\n\n if (typeof this.config.offset === 'function') {\n offset.fn = (data) => {\n data.offsets = {\n ...data.offsets,\n ...this.config.offset(data.offsets, this.element) || {}\n }\n\n return data\n }\n } else {\n offset.offset = this.config.offset\n }\n\n return offset\n }\n\n _getContainer() {\n if (this.config.container === false) {\n return document.body\n }\n\n if (Util.isElement(this.config.container)) {\n return $(this.config.container)\n }\n\n return $(document).find(this.config.container)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this.config.trigger.split(' ')\n\n triggers.forEach((trigger) => {\n if (trigger === 'click') {\n $(this.element).on(\n this.constructor.Event.CLICK,\n this.config.selector,\n (event) => this.toggle(event)\n )\n } else if (trigger !== Trigger.MANUAL) {\n const eventIn = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSEENTER\n : this.constructor.Event.FOCUSIN\n const eventOut = trigger === Trigger.HOVER\n ? this.constructor.Event.MOUSELEAVE\n : this.constructor.Event.FOCUSOUT\n\n $(this.element)\n .on(\n eventIn,\n this.config.selector,\n (event) => this._enter(event)\n )\n .on(\n eventOut,\n this.config.selector,\n (event) => this._leave(event)\n )\n }\n })\n\n $(this.element).closest('.modal').on(\n 'hide.bs.modal',\n () => {\n if (this.element) {\n this.hide()\n }\n }\n )\n\n if (this.config.selector) {\n this.config = {\n ...this.config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const titleType = typeof this.element.getAttribute('data-original-title')\n\n if (this.element.getAttribute('title') || titleType !== 'string') {\n this.element.setAttribute(\n 'data-original-title',\n this.element.getAttribute('title') || ''\n )\n\n this.element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER\n ] = true\n }\n\n if ($(context.getTipElement()).hasClass(ClassName.SHOW) || context._hoverState === HoverState.SHOW) {\n context._hoverState = HoverState.SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HoverState.SHOW\n\n if (!context.config.delay || !context.config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HoverState.SHOW) {\n context.show()\n }\n }, context.config.delay.show)\n }\n\n _leave(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || $(event.currentTarget).data(dataKey)\n\n if (!context) {\n context = new this.constructor(\n event.currentTarget,\n this._getDelegateConfig()\n )\n $(event.currentTarget).data(dataKey, context)\n }\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER\n ] = false\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HoverState.OUT\n\n if (!context.config.delay || !context.config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HoverState.OUT) {\n context.hide()\n }\n }, context.config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = $(this.element).data()\n\n Object.keys(dataAttributes)\n .forEach((dataAttr) => {\n if (DISALLOWED_ATTRIBUTES.indexOf(dataAttr) !== -1) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n Util.typeCheckConfig(\n NAME,\n config,\n this.constructor.DefaultType\n )\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.whiteList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this.config) {\n for (const key in this.config) {\n if (this.constructor.Default[key] !== this.config[key]) {\n config[key] = this.config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const popperInstance = popperData.instance\n this.tip = popperInstance.popper\n this._cleanTipClass()\n this.addAttachmentClass(this._getAttachment(popperData.placement))\n }\n\n _fixTransition() {\n const tip = this.getTipElement()\n const initConfigAnimation = this.config.animation\n\n if (tip.getAttribute('x-placement') !== null) {\n return\n }\n\n $(tip).removeClass(ClassName.FADE)\n this.config.animation = false\n this.hide()\n this.show()\n this.config.animation = initConfigAnimation\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Tooltip(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Tooltip._jQueryInterface\n$.fn[NAME].Constructor = Tooltip\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Tooltip._jQueryInterface\n}\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement : 'right',\n trigger : 'click',\n content : '',\n template : '
' +\n '
' +\n '

' +\n '
'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content : '(string|element|function)'\n}\n\nconst ClassName = {\n FADE : 'fade',\n SHOW : 'show'\n}\n\nconst Selector = {\n TITLE : '.popover-header',\n CONTENT : '.popover-body'\n}\n\nconst Event = {\n HIDE : `hide${EVENT_KEY}`,\n HIDDEN : `hidden${EVENT_KEY}`,\n SHOW : `show${EVENT_KEY}`,\n SHOWN : `shown${EVENT_KEY}`,\n INSERTED : `inserted${EVENT_KEY}`,\n CLICK : `click${EVENT_KEY}`,\n FOCUSIN : `focusin${EVENT_KEY}`,\n FOCUSOUT : `focusout${EVENT_KEY}`,\n MOUSEENTER : `mouseenter${EVENT_KEY}`,\n MOUSELEAVE : `mouseleave${EVENT_KEY}`\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get Event() {\n return Event\n }\n\n static get EVENT_KEY() {\n return EVENT_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n addAttachmentClass(attachment) {\n $(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)\n }\n\n getTipElement() {\n this.tip = this.tip || $(this.config.template)[0]\n return this.tip\n }\n\n setContent() {\n const $tip = $(this.getTipElement())\n\n // We use append for html objects to maintain js events\n this.setElementContent($tip.find(Selector.TITLE), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this.element)\n }\n this.setElementContent($tip.find(Selector.CONTENT), content)\n\n $tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)\n }\n\n // Private\n\n _getContent() {\n return this.element.getAttribute('data-content') ||\n this.config.content\n }\n\n _cleanTipClass() {\n const $tip = $(this.getTipElement())\n const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n $tip.removeClass(tabClass.join(''))\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n return this.each(function () {\n let data = $(this).data(DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Popover(this, _config)\n $(this).data(DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\n$.fn[NAME] = Popover._jQueryInterface\n$.fn[NAME].Constructor = Popover\n$.fn[NAME].noConflict = () => {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return Popover._jQueryInterface\n}\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v4.3.1): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport $ from 'jquery'\nimport Util from './util'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst VERSION = '4.3.1'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst Default = {\n offset : 10,\n method : 'auto',\n target : ''\n}\n\nconst DefaultType = {\n offset : 'number',\n method : 'string',\n target : '(string|element)'\n}\n\nconst Event = {\n ACTIVATE : `activate${EVENT_KEY}`,\n SCROLL : `scroll${EVENT_KEY}`,\n LOAD_DATA_API : `load${EVENT_KEY}${DATA_API_KEY}`\n}\n\nconst ClassName = {\n DROPDOWN_ITEM : 'dropdown-item',\n DROPDOWN_MENU : 'dropdown-menu',\n ACTIVE : 'active'\n}\n\nconst Selector = {\n DATA_SPY : '[data-spy=\"scroll\"]',\n ACTIVE : '.active',\n NAV_LIST_GROUP : '.nav, .list-group',\n NAV_LINKS : '.nav-link',\n NAV_ITEMS : '.nav-item',\n LIST_ITEMS : '.list-group-item',\n DROPDOWN : '.dropdown',\n DROPDOWN_ITEMS : '.dropdown-item',\n DROPDOWN_TOGGLE : '.dropdown-toggle'\n}\n\nconst OffsetMethod = {\n OFFSET : 'offset',\n POSITION : 'position'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass ScrollSpy {\n constructor(element, config) {\n this._element = element\n this._scrollElement = element.tagName === 'BODY' ? window : element\n this._config = this._getConfig(config)\n this._selector = `${this._config.target} ${Selector.NAV_LINKS},` +\n `${this._config.target} ${Selector.LIST_ITEMS},` +\n `${this._config.target} ${Selector.DROPDOWN_ITEMS}`\n this._offsets = []\n this._targets = []\n this._activeTarget = null\n this._scrollHeight = 0\n\n $(this._scrollElement).on(Event.SCROLL, (event) => this._process(event))\n\n this.refresh()\n this._process()\n }\n\n // Getters\n\n static get VERSION() {\n return VERSION\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n refresh() {\n const autoMethod = this._scrollElement === this._scrollElement.window\n ? OffsetMethod.OFFSET : OffsetMethod.POSITION\n\n const offsetMethod = this._config.method === 'auto'\n ? autoMethod : this._config.method\n\n const offsetBase = offsetMethod === OffsetMethod.POSITION\n ? this._getScrollTop() : 0\n\n this._offsets = []\n this._targets = []\n\n this._scrollHeight = this._getScrollHeight()\n\n const targets = [].slice.call(document.querySelectorAll(this._selector))\n\n targets\n .map((element) => {\n let target\n const targetSelector = Util.getSelectorFromElement(element)\n\n if (targetSelector) {\n target = document.querySelector(targetSelector)\n }\n\n if (target) {\n const targetBCR = target.getBoundingClientRect()\n if (targetBCR.width || targetBCR.height) {\n // TODO (fat): remove sketch reliance on jQuery position/offset\n return [\n $(target)[offsetMethod]().top + offsetBase,\n targetSelector\n ]\n }\n }\n return null\n })\n .filter((item) => item)\n .sort((a, b) => a[0] - b[0])\n .forEach((item) => {\n this._offsets.push(item[0])\n this._targets.push(item[1])\n })\n }\n\n dispose() {\n $.removeData(this._element, DATA_KEY)\n $(this._scrollElement).off(EVENT_KEY)\n\n this._element = null\n this._scrollElement = null\n this._config = null\n this._selector = null\n this._offsets = null\n this._targets = null\n this._activeTarget = null\n this._scrollHeight = null\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...typeof config === 'object' && config ? config : {}\n }\n\n if (typeof config.target !== 'string') {\n let id = $(config.target).attr('id')\n if (!id) {\n id = Util.getUID(NAME)\n $(config.target).attr('id', id)\n }\n config.target = `#${id}`\n }\n\n Util.typeCheckConfig(NAME, config, DefaultType)\n\n return config\n }\n\n _getScrollTop() {\n return this._scrollElement === window\n ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop\n }\n\n _getScrollHeight() {\n return this._scrollElement.scrollHeight || Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight\n )\n }\n\n _getOffsetHeight() {\n return this._scrollElement === window\n ? window.innerHeight : this._scrollElement.getBoundingClientRect().height\n }\n\n _process() {\n const scrollTop = this._getScrollTop() + this._config.offset\n const scrollHeight = this._getScrollHeight()\n const maxScroll = this._config.offset +\n scrollHeight -\n this._getOffsetHeight()\n\n if (this._scrollHeight !== scrollHeight) {\n this.refresh()\n }\n\n if (scrollTop >= maxScroll) {\n const target = this._targets[this._targets.length - 1]\n\n if (this._activeTarget !== target) {\n this._activate(target)\n }\n return\n }\n\n if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {\n this._activeTarget = null\n this._clear()\n return\n }\n\n const offsetLength = this._offsets.length\n for (let i = offsetLength; i--;) {\n const isActiveTarget = this._activeTarget !== this._targets[i] &&\n scrollTop >= this._offsets[i] &&\n (typeof this._offsets[i + 1] === 'undefined' ||\n scrollTop < this._offsets[i + 1])\n\n if (isActiveTarget) {\n this._activate(this._targets[i])\n }\n }\n }\n\n _activate(target) {\n this._activeTarget = target\n\n this._clear()\n\n const queries = this._selector\n .split(',')\n .map((selector) => `${selector}[data-target=\"${target}\"],${selector}[href=\"${target}\"]`)\n\n const $link = $([].slice.call(document.querySelectorAll(queries.join(','))))\n\n if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {\n $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE)\n $link.addClass(ClassName.ACTIVE)\n } else {\n // Set triggered link as active\n $link.addClass(ClassName.ACTIVE)\n // Set triggered links parents as active\n // With both
    and